[PATCH v1] spi: cadence_xspi: enable automatic platform data allocation

Chen Huei Lok chen.huei.lok at altera.com
Mon Feb 9 09:10:07 CET 2026


Enable automatic allocation of platform data for the Cadence XSPI
controller by setting .plat_auto.

Without this, dev_get_plat() may return invalid or uninitialized
platform data when multiple XSPI controllers are present, leading
to incorrect IOBASE/SDMABASE/AUXBASE values and causing SPI flash
probe failures.

Setting .plat_auto ensures each controller instance receives a
properly sized cdns_xspi_plat structure, allowing SF probe to work
correctly.

Tested on an Altera Simics platform with multiple XSPI controllers.

Signed-off-by: Chen Huei Lok <chen.huei.lok at altera.com>
---
 drivers/spi/cadence_xspi.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/spi/cadence_xspi.c b/drivers/spi/cadence_xspi.c
index 717f226b709..8a894025d02 100644
--- a/drivers/spi/cadence_xspi.c
+++ b/drivers/spi/cadence_xspi.c
@@ -441,6 +441,7 @@ static const struct udevice_id cdns_xspi_of_match[] = {
 U_BOOT_DRIVER(cadence_xspi) = {
 	.name = CDNS_XSPI_NAME,
 	.id = UCLASS_SPI,
+	.plat_auto = sizeof(struct cdns_xspi_plat),
 	.of_match = cdns_xspi_of_match,
 	.ops = &cdns_xspi_ops,
 	.probe = cdns_xspi_probe,
-- 
2.19.0



More information about the U-Boot mailing list