[PATCH v3] mtd: rawnand: qcom: unmap dma address during probe failure

Miquel Raynal miquel.raynal at bootlin.com
Tue Sep 12 03:26:40 PDT 2023


Hi Bibek,

quic_bibekkum at quicinc.com wrote on Tue, 12 Sep 2023 15:48:14 +0530:

Title: s/during/upon/?

> Fix address argument of nand controller currently being
> passed to dma_unmap_resource() in probe error path.

What about:

	Unmap the right resource upon probe failure: we currently
	provide the physical address of the DMA region rather than the
	output of dma_map_resource() which is obviously wrong.

> This address argument should be the dma address returned by
> dma_map_resource() instead of the physical address of nand controller.
>
> 
> Fixes: 7330fc505af4 ("mtd: rawnand: qcom: stop using phys_to_dma()")
> Signed-off-by: Bibek Kumar Patro <quic_bibekkum at quicinc.com>
> ---
> v3: Incorporated comments from Miquel
>     - Modified the commit message and title as per suggestions.
> 
> v2: Incorporated comments from Pavan/Mani.
>     https://lore.kernel.org/all/20230911133026.29868-1-quic_bibekkum@quicinc.com/
> 
> v1: https://lore.kernel.org/all/20230907092854.11408-1-quic_bibekkum@quicinc.com/
> 
>  drivers/mtd/nand/raw/qcom_nandc.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/mtd/nand/raw/qcom_nandc.c b/drivers/mtd/nand/raw/qcom_nandc.c
> index 64499c1b3603..b079605c84d3 100644
> --- a/drivers/mtd/nand/raw/qcom_nandc.c
> +++ b/drivers/mtd/nand/raw/qcom_nandc.c
> @@ -3444,7 +3444,7 @@ static int qcom_nandc_probe(struct platform_device *pdev)
>  err_aon_clk:
>  	clk_disable_unprepare(nandc->core_clk);
>  err_core_clk:
> -	dma_unmap_resource(dev, res->start, resource_size(res),
> +	dma_unmap_resource(dev, nandc->base_dma, resource_size(res),
>  			   DMA_BIDIRECTIONAL, 0);
>  	return ret;
>  }
> --
> 2.17.1
> 


Thanks,
Miquèl



More information about the linux-mtd mailing list