diff --git a/drivers/spi/cadence_qspi.h b/drivers/spi/cadence_qspi.h index ae79f98f75..ebe81c69fe 100644 --- a/drivers/spi/cadence_qspi.h +++ b/drivers/spi/cadence_qspi.h @@ -84,6 +84,7 @@ #define CQSPI_REG_RD_DATA_CAPTURE 0x10 #define CQSPI_REG_RD_DATA_CAPTURE_BYPASS BIT(0) +#define CQSPI_REG_RD_DATA_CAPTURE_SMPL_EDGE BIT(5) #define CQSPI_REG_READCAPTURE_DQS_ENABLE BIT(8) #define CQSPI_REG_RD_DATA_CAPTURE_DELAY_LSB 1 #define CQSPI_REG_RD_DATA_CAPTURE_DELAY_MASK 0xF diff --git a/drivers/spi/cadence_qspi_apb.c b/drivers/spi/cadence_qspi_apb.c index e4014ce31c..44c42e598d 100644 --- a/drivers/spi/cadence_qspi_apb.c +++ b/drivers/spi/cadence_qspi_apb.c @@ -238,6 +238,9 @@ void cadence_qspi_apb_readdata_capture(void *reg_base, reg = readl(reg_base + CQSPI_REG_RD_DATA_CAPTURE); + /* Disable Rising edge sampling */ + reg &= ~CQSPI_REG_RD_DATA_CAPTURE_SMPL_EDGE; + if (bypass) reg |= CQSPI_REG_RD_DATA_CAPTURE_BYPASS; else