[PATCH] spi: pl022: Only use DT-specified DMA channels

Dhruva Gole d-gole at ti.com
Tue Jan 3 00:57:47 PST 2023


Hey Vincent,

On 02/01/23 21:38, Vincent Whitchurch wrote:
> When a platform is booted with devicetree and does not provide a
> platform data structure, the driver creates one internally.  enable_dma
> should not be set in this structure when creating it; the probe function
> will set it later if DMA channels are specified via the devicetree.

Yeah, I agree.

> 
> Setting enable_dma = 1 when creating this internal platform data can
> lead to pl022_dma_probe() finding bogus DMA channels (since there is no
> channel filter specified) when no DMA channels are specified in the
> devicetree.
> 
> Signed-off-by: Vincent Whitchurch <vincent.whitchurch at axis.com>
> ---

Acked-by: Dhruva Gole <d-gole at ti.com>

>   drivers/spi/spi-pl022.c | 1 -
>   1 file changed, 1 deletion(-)
> 
> diff --git a/drivers/spi/spi-pl022.c b/drivers/spi/spi-pl022.c
> index e4484ace584e..a17ff839117f 100644
> --- a/drivers/spi/spi-pl022.c
> +++ b/drivers/spi/spi-pl022.c
> @@ -2091,7 +2091,6 @@ pl022_platform_data_dt_get(struct device *dev)
>   		return NULL;
>   
>   	pd->bus_id = -1;
> -	pd->enable_dma = 1;
>   	of_property_read_u32(np, "pl022,autosuspend-delay",
>   			     &pd->autosuspend_delay);
>   	pd->rt = of_property_read_bool(np, "pl022,rt");

-- 
Thanks and Regards,
Dhruva Gole



More information about the linux-arm-kernel mailing list