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

Lok, Chen Huei chen.huei.lok at altera.com
Wed Apr 15 05:20:14 CEST 2026


Hi Jagan, Tom,

I wanted to follow up to see if there are any comments.
If there are no concerns, would it be possible to consider this for 
inclusion?
Thanks for your time.

Best Regards,
Lok

On 9/2/2026 4:10 pm, Chen Huei Lok wrote:
> 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,


More information about the U-Boot mailing list