Message ID | 1362852588-13362-4-git-send-email-ldewangan@nvidia.com |
---|---|
State | Superseded |
Headers | show |
On Sat, Mar 09, 2013 at 11:39:47PM +0530, Laxman Dewangan wrote: > Use macro module_platform_driver_probe() to reduce some of the > boilerplate code in the driver. > > Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com> > --- > drivers/rtc/rtc-tegra.c | 12 +----------- > 1 files changed, 1 insertions(+), 11 deletions(-) Reviewed-by: Thierry Reding <thierry.reding@avionic-design.de>
On 03/09/2013 11:09 AM, Laxman Dewangan wrote: > Use macro module_platform_driver_probe() to reduce some of the > boilerplate code in the driver. > > Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com> > --- > drivers/rtc/rtc-tegra.c | 12 +----------- > 1 files changed, 1 insertions(+), 11 deletions(-) > > diff --git a/drivers/rtc/rtc-tegra.c b/drivers/rtc/rtc-tegra.c > index f7718de..4cba10d 100644 > --- a/drivers/rtc/rtc-tegra.c > +++ b/drivers/rtc/rtc-tegra.c > @@ -451,17 +451,7 @@ static struct platform_driver tegra_rtc_driver = { > }, > }; > > -static int __init tegra_rtc_init(void) > -{ > - return platform_driver_probe(&tegra_rtc_driver, tegra_rtc_probe); > -} > -module_init(tegra_rtc_init); > - > -static void __exit tegra_rtc_exit(void) > -{ > - platform_driver_unregister(&tegra_rtc_driver); > -} > -module_exit(tegra_rtc_exit); > +module_platform_driver_probe(tegra_rtc_driver, tegra_rtc_probe); Out of curiosity here, why not just module_platform_driver(); can't the instantiation of the RTC device be driven by the presence of the DT node, and hence the creation of the platform device object, just like any other driver/device?
On Monday 11 March 2013 10:46 PM, Stephen Warren wrote: > On 03/09/2013 11:09 AM, Laxman Dewangan wrote: >> Use macro module_platform_driver_probe() to reduce some of the >> boilerplate code in the driver. >> >> Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com> >> --- >> drivers/rtc/rtc-tegra.c | 12 +----------- >> 1 files changed, 1 insertions(+), 11 deletions(-) >> >> diff --git a/drivers/rtc/rtc-tegra.c b/drivers/rtc/rtc-tegra.c >> index f7718de..4cba10d 100644 >> --- a/drivers/rtc/rtc-tegra.c >> +++ b/drivers/rtc/rtc-tegra.c >> @@ -451,17 +451,7 @@ static struct platform_driver tegra_rtc_driver = { >> }, >> }; >> >> -static int __init tegra_rtc_init(void) >> -{ >> - return platform_driver_probe(&tegra_rtc_driver, tegra_rtc_probe); >> -} >> -module_init(tegra_rtc_init); >> - >> -static void __exit tegra_rtc_exit(void) >> -{ >> - platform_driver_unregister(&tegra_rtc_driver); >> -} >> -module_exit(tegra_rtc_exit); >> +module_platform_driver_probe(tegra_rtc_driver, tegra_rtc_probe); > Out of curiosity here, why not just module_platform_driver(); can't the > instantiation of the RTC device be driven by the presence of the DT > node, and hence the creation of the platform device object, just like > any other driver/device? Theoretically it should work but I will work with John (original author) about using the platform_driver_probe(). If he agrees then I will send patch to convert it to module_platform_driver().
On 03/11/2013 01:29 PM, Laxman Dewangan wrote: > On Monday 11 March 2013 10:46 PM, Stephen Warren wrote: >> On 03/09/2013 11:09 AM, Laxman Dewangan wrote: >>> Use macro module_platform_driver_probe() to reduce some of the >>> boilerplate code in the driver. >>> diff --git a/drivers/rtc/rtc-tegra.c b/drivers/rtc/rtc-tegra.c >>> -static int __init tegra_rtc_init(void) >>> -{ >>> - return platform_driver_probe(&tegra_rtc_driver, tegra_rtc_probe); >>> -} >>> -module_init(tegra_rtc_init); >>> - >>> -static void __exit tegra_rtc_exit(void) >>> -{ >>> - platform_driver_unregister(&tegra_rtc_driver); >>> -} >>> -module_exit(tegra_rtc_exit); >>> +module_platform_driver_probe(tegra_rtc_driver, tegra_rtc_probe); >> >> Out of curiosity here, why not just module_platform_driver(); can't the >> instantiation of the RTC device be driven by the presence of the DT >> node, and hence the creation of the platform device object, just like >> any other driver/device? > > Theoretically it should work but I will work with John (original author) > about using the platform_driver_probe(). > If he agrees then I will send patch to convert it to > module_platform_driver(). OK, sounds good. Thanks.
diff --git a/drivers/rtc/rtc-tegra.c b/drivers/rtc/rtc-tegra.c index f7718de..4cba10d 100644 --- a/drivers/rtc/rtc-tegra.c +++ b/drivers/rtc/rtc-tegra.c @@ -451,17 +451,7 @@ static struct platform_driver tegra_rtc_driver = { }, }; -static int __init tegra_rtc_init(void) -{ - return platform_driver_probe(&tegra_rtc_driver, tegra_rtc_probe); -} -module_init(tegra_rtc_init); - -static void __exit tegra_rtc_exit(void) -{ - platform_driver_unregister(&tegra_rtc_driver); -} -module_exit(tegra_rtc_exit); +module_platform_driver_probe(tegra_rtc_driver, tegra_rtc_probe); MODULE_AUTHOR("Jon Mayo <jmayo@nvidia.com>"); MODULE_DESCRIPTION("driver for Tegra internal RTC");
Use macro module_platform_driver_probe() to reduce some of the boilerplate code in the driver. Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com> --- drivers/rtc/rtc-tegra.c | 12 +----------- 1 files changed, 1 insertions(+), 11 deletions(-)