[PATCH 1/2] mmc: slot-gpio: use devm_* managed functions to ease users
Chris Ball
cjb at laptop.org
Mon Dec 10 20:58:09 EST 2012
Hi Shawn, Guennadi,
On Fri, Dec 07 2012, Shawn Guo wrote:
>> > Use devm_* managed functions, so that slot-gpio users do not have to
>> > call mmc_gpio_free_ro/cd to free up resources requested in
>> > mmc_gpio_request_ro/cd.
>> >
>> > Signed-off-by: Shawn Guo <shawn.guo at linaro.org>
>>
>> Thanks for the patch, but I'm not sure this is a good idea. Firstly, using
>> devm_* allocation functions means, that normally you don't have to free
>> these resources explicitly any more. So, actually you would have to remove
>> free_irq() and gpio_free() calls completely from the API instead of
>> replacing them with devm_* analogs.
>
> With the changes, most of the slot-gpio users will only need to call
> mmc_gpio_request_* functions at probe time, nothing else. That said,
> they will not call mmc_gpio_free_* functions at all. I patched
> mmc_gpio_free_* functions replacing free_irq() and gpio_free() with
> devm_* versions to 1) ease the migration of exiting users calling
> mmc_gpio_free_*; 2) provide a mean for users to manually free resources
> for whatever reasons.
I'd like to find a way to merge this -- maybe we can compromise by
adding a comment or some documentation that explains that you need to be
careful (and use _request_* and _free_*) to avoid allocating more than
once if you're doing something odd like runtime switching between CD
methods?
Thanks!
- Chris.
--
Chris Ball <cjb at laptop.org> <http://printf.net/>
One Laptop Per Child
More information about the linux-arm-kernel
mailing list