Message ID | 1354671267-19277-7-git-send-email-wenyou.yang@atmel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Hello. On 12/05/2012 04:34 AM, Wenyou Yang wrote: > Using module_platform_driver() replaces module_init() and module_exit() > and makes the code simpler. > Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com> > Cc: wim@iguana.be > Cc: linux-watchdog@vger.kernel.org > Cc: linux-kernel@vger.kernel.org > --- > drivers/watchdog/at91sam9_wdt.c | 14 ++------------ > 1 file changed, 2 insertions(+), 12 deletions(-) > > diff --git a/drivers/watchdog/at91sam9_wdt.c b/drivers/watchdog/at91sam9_wdt.c > index 5afd3fb..a7c0881 100644 > --- a/drivers/watchdog/at91sam9_wdt.c > +++ b/drivers/watchdog/at91sam9_wdt.c > @@ -278,6 +278,7 @@ MODULE_DEVICE_TABLE(of, at91_wdt_dt_ids); > #endif > > static struct platform_driver at91wdt_driver = { > + .probe = at91wdt_probe, You also need to remove '__init' annotation from that function since the driver becomes hot-plug aware now. WBR, Sergei
Hi, > -----Original Message----- > From: Sergei Shtylyov [mailto:sshtylyov@mvista.com] > Sent: 2012?12?7? 2:16 > To: Yang, Wenyou > Cc: linux-arm-kernel@lists.infradead.org; linux-watchdog@vger.kernel.org; Lin, JM; > Ferre, Nicolas; linux-kernel@vger.kernel.org; wim@iguana.be; > plagnioj@jcrosoft.com > Subject: Re: [v2 PATCH 6/8] watchdog/at91sam9_wdt: Use > module_platform_driver() > > Hello. > > On 12/05/2012 04:34 AM, Wenyou Yang wrote: > > > Using module_platform_driver() replaces module_init() and module_exit() > > and makes the code simpler. > > > Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com> > > Cc: wim@iguana.be > > Cc: linux-watchdog@vger.kernel.org > > Cc: linux-kernel@vger.kernel.org > > --- > > drivers/watchdog/at91sam9_wdt.c | 14 ++------------ > > 1 file changed, 2 insertions(+), 12 deletions(-) > > > > diff --git a/drivers/watchdog/at91sam9_wdt.c b/drivers/watchdog/at91sam9_wdt.c > > index 5afd3fb..a7c0881 100644 > > --- a/drivers/watchdog/at91sam9_wdt.c > > +++ b/drivers/watchdog/at91sam9_wdt.c > > @@ -278,6 +278,7 @@ MODULE_DEVICE_TABLE(of, at91_wdt_dt_ids); > > #endif > > > > static struct platform_driver at91wdt_driver = { > > + .probe = at91wdt_probe, > > You also need to remove '__init' annotation from that function since the > driver becomes hot-plug aware now. Thanks, I got it. > > WBR, Sergei Best Regards, Wenyou Yang
diff --git a/drivers/watchdog/at91sam9_wdt.c b/drivers/watchdog/at91sam9_wdt.c index 5afd3fb..a7c0881 100644 --- a/drivers/watchdog/at91sam9_wdt.c +++ b/drivers/watchdog/at91sam9_wdt.c @@ -278,6 +278,7 @@ MODULE_DEVICE_TABLE(of, at91_wdt_dt_ids); #endif static struct platform_driver at91wdt_driver = { + .probe = at91wdt_probe, .remove = __exit_p(at91wdt_remove), .driver = { .name = "at91_wdt", @@ -286,18 +287,7 @@ static struct platform_driver at91wdt_driver = { }, }; -static int __init at91sam_wdt_init(void) -{ - return platform_driver_probe(&at91wdt_driver, at91wdt_probe); -} - -static void __exit at91sam_wdt_exit(void) -{ - platform_driver_unregister(&at91wdt_driver); -} - -module_init(at91sam_wdt_init); -module_exit(at91sam_wdt_exit); +module_platform_driver(at91wdt_driver); MODULE_AUTHOR("Renaud CERRATO <r.cerrato@til-technologies.fr>"); MODULE_DESCRIPTION("Watchdog driver for Atmel AT91SAM9x processors");
Using module_platform_driver() replaces module_init() and module_exit() and makes the code simpler. Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com> Cc: wim@iguana.be Cc: linux-watchdog@vger.kernel.org Cc: linux-kernel@vger.kernel.org --- drivers/watchdog/at91sam9_wdt.c | 14 ++------------ 1 file changed, 2 insertions(+), 12 deletions(-)