Re: [PATCH 02/10] mach-u300: rewrite gpio driver, move to drivers/gpio

From: Linus Walleij
Date: Thu May 19 2011 - 09:17:40 EST


On Thu, May 19, 2011 at 2:35 PM, Barry Song <21cnbao@xxxxxxxxx> wrote:
> 2011/5/19 Linus Walleij <linus.walleij@xxxxxxxxxx>:
>> On Thu, May 19, 2011 at 1:38 PM, Barry Song <21cnbao@xxxxxxxxx> wrote:
>>>
>>> looks like the driver can't be a real module, is the module_exit
>>> suitable? it looks strange module_exit plays together with
>>> arch_initcall.
>>
>> It's a rather common design pattern in the kernel for early
>> platform drivers. Either the dependencies are resolved by the
>> different initlevels or they are resolved in probe order with
>> loadable modules. Module load will call all initlevels in order.
>>
>> It is not elegant but it is common.
>
> Linus, thanks for your reply. module_exit and related functions are
> really useless codes. but people have done that before, then we have
> no way except following.
> u300_gpio_exit never gets chance to run and when we disassemble
> vmlinux, u300_gpio_exit()  function should be not in the final binary
> at all, just a symbol name is left.

I know. I can make the Kconfig options tristate if it makes you feel
better...

Linus Walleij
--
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/