[PATCH 2/3] spi: cadence_qspi: Call read_setup for STIG_READ

Ashok Reddy Soma ashok.reddy.soma at xilinx.com
Wed Aug 24 13:38:46 CEST 2022


In cadence_spi_read_id we are using STIG mode to read flash id's.
Call cadence_qspi_apb_command_read_setup() to setup cmd, addr and data
bus width properly before cadence_qspi_apb_command_read().

Signed-off-by: Ashok Reddy Soma <ashok.reddy.soma at xilinx.com>
---

 drivers/spi/cadence_qspi.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/drivers/spi/cadence_qspi.c b/drivers/spi/cadence_qspi.c
index 907f5dadc4..6e50b94e14 100644
--- a/drivers/spi/cadence_qspi.c
+++ b/drivers/spi/cadence_qspi.c
@@ -59,12 +59,17 @@ static int cadence_spi_write_speed(struct udevice *bus, uint hz)
 static int cadence_spi_read_id(struct cadence_spi_plat *plat, u8 len,
 			       u8 *idcode)
 {
+	int err;
 	struct spi_mem_op op = SPI_MEM_OP(SPI_MEM_OP_CMD(0x9F, 1),
 					  SPI_MEM_OP_NO_ADDR,
 					  SPI_MEM_OP_NO_DUMMY,
 					  SPI_MEM_OP_DATA_IN(len, idcode, 1));
 
-	return cadence_qspi_apb_command_read(plat, &op);
+	err = cadence_qspi_apb_command_read_setup(plat, &op);
+	if (!err)
+		err = cadence_qspi_apb_command_read(plat, &op);
+
+	return err;
 }
 
 /* Calibration sequence to determine the read data capture delay register */
-- 
2.17.1



More information about the U-Boot mailing list