Re: [PATCH v2] mmc: davinci: Fix and simplify probe failure path

From: Pramod Gurav
Date: Thu Oct 30 2014 - 07:45:47 EST


Thanks Ulf,

On Thu, Oct 30, 2014 at 4:38 PM, Ulf Hansson <ulf.hansson@xxxxxxxxxx> wrote:
> On 30 October 2014 08:46, Pramod Gurav <pramod.gurav@xxxxxxxxxxxxxxx> wrote:
>> The sequence of resource release in probe failure path in this
>> driver was wrong and needed fixes to cleanly unload the driver.
>> This changes does the same by switching to managed resources and
>> fixes return path to release resource in proper sequence.
>>
>> Cc: Chris Ball <chris@xxxxxxxxxx>
>> Cc: Ulf Hansson <ulf.hansson@xxxxxxxxxx>
>> Cc: linux-mmc@xxxxxxxxxxxxxxx
>
> Please remove these Ccs above from the commit message. It's not needed
> when you anyway need to send the patches directly to these addresses.
Will remove Cc.

>
>> Signed-off-by: Pramod Gurav <pramod.gurav@xxxxxxxxxxxxxxx>
>> ---
..

>>
>> host = mmc_priv(mmc);
>> host->mmc = mmc; /* Important */
>> @@ -1275,15 +1273,16 @@ static int __init davinci_mmcsd_probe(struct platform_device *pdev)
>> host->txdma = r->start;
>>
>> host->mem_res = mem;
>> - host->base = ioremap(mem->start, mem_size);
>> - if (!host->base)
>> - goto out;
>> + host->base = devm_ioremap(&pdev->dev, mem->start, mem_size);
>
> I realized that you should use devm_ioremap_resource() instead. That
> would simplify the code even more.
>
Yes, we could have used devm_ioremap_resource() but this driver stores
the return from devm_request_mem_region() in host->mem_res and uses
the same in the other part of drivers. Is there a way to work this
around?

> [...]
>
> Kind regards
> Uffe
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/



--
Thanks and Regards
Pramod
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/