2021-04-09 14:09:55

by Srinivas Neeli

[permalink] [raw]
Subject: [PATCH 1/3] gpio: zynq: use module_platform_driver to simplify the code

module_platform_driver() makes the code simpler by eliminating
boilerplate code.

Signed-off-by: Srinivas Neeli <[email protected]>
---
drivers/gpio/gpio-zynq.c | 17 +----------------
1 file changed, 1 insertion(+), 16 deletions(-)

diff --git a/drivers/gpio/gpio-zynq.c b/drivers/gpio/gpio-zynq.c
index 3521c1dc3ac0..bb1ac0c5cf26 100644
--- a/drivers/gpio/gpio-zynq.c
+++ b/drivers/gpio/gpio-zynq.c
@@ -1020,22 +1020,7 @@ static struct platform_driver zynq_gpio_driver = {
.remove = zynq_gpio_remove,
};

-/**
- * zynq_gpio_init - Initial driver registration call
- *
- * Return: value from platform_driver_register
- */
-static int __init zynq_gpio_init(void)
-{
- return platform_driver_register(&zynq_gpio_driver);
-}
-postcore_initcall(zynq_gpio_init);
-
-static void __exit zynq_gpio_exit(void)
-{
- platform_driver_unregister(&zynq_gpio_driver);
-}
-module_exit(zynq_gpio_exit);
+module_platform_driver(zynq_gpio_driver);

MODULE_AUTHOR("Xilinx Inc.");
MODULE_DESCRIPTION("Zynq GPIO driver");
--
2.9.1


2021-04-13 17:28:04

by Bartosz Golaszewski

[permalink] [raw]
Subject: Re: [PATCH 1/3] gpio: zynq: use module_platform_driver to simplify the code

On Sat, Apr 10, 2021 at 12:08 AM Andy Shevchenko
<[email protected]> wrote:
>
>
>
> On Friday, April 9, 2021, Srinivas Neeli <[email protected]> wrote:
>>
>> module_platform_driver() makes the code simpler by eliminating
>> boilerplate code.
>>
>> Signed-off-by: Srinivas Neeli <[email protected]>
>> ---
>> drivers/gpio/gpio-zynq.c | 17 +----------------
>> 1 file changed, 1 insertion(+), 16 deletions(-)
>>
>> diff --git a/drivers/gpio/gpio-zynq.c b/drivers/gpio/gpio-zynq.c
>> index 3521c1dc3ac0..bb1ac0c5cf26 100644
>> --- a/drivers/gpio/gpio-zynq.c
>> +++ b/drivers/gpio/gpio-zynq.c
>> @@ -1020,22 +1020,7 @@ static struct platform_driver zynq_gpio_driver = {
>> .remove = zynq_gpio_remove,
>> };
>>
>> -/**
>> - * zynq_gpio_init - Initial driver registration call
>> - *
>> - * Return: value from platform_driver_register
>> - */
>> -static int __init zynq_gpio_init(void)
>> -{
>> - return platform_driver_register(&zynq_gpio_driver);
>> -}
>> -postcore_initcall(zynq_gpio_init);
>
>
>
> It’s not an equivalent. Have you tested on actual hardware? If no, there is no go for this change.
>

Yep, this has been like this since the initial introduction of this
driver. Unfortunately there's no documented reason so unless we can
test it, it has to stay this way.

Bartosz

2021-04-14 16:45:14

by Srinivas Neeli

[permalink] [raw]
Subject: RE: [PATCH 1/3] gpio: zynq: use module_platform_driver to simplify the code

HI baratosz and Andy,

> -----Original Message-----
> From: Bartosz Golaszewski <[email protected]>
> Sent: Tuesday, April 13, 2021 4:14 PM
> To: Andy Shevchenko <[email protected]>
> Cc: Srinivas Neeli <[email protected]>; [email protected]; Michal Simek
> <[email protected]>; Shubhrajyoti Datta <[email protected]>; Srinivas
> Goud <[email protected]>; [email protected]; linux-arm-
> [email protected]; [email protected]; git
> <[email protected]>
> Subject: Re: [PATCH 1/3] gpio: zynq: use module_platform_driver to simplify
> the code
>
> On Sat, Apr 10, 2021 at 12:08 AM Andy Shevchenko
> <[email protected]> wrote:
> >
> >
> >
> > On Friday, April 9, 2021, Srinivas Neeli <[email protected]> wrote:
> >>
> >> module_platform_driver() makes the code simpler by eliminating
> >> boilerplate code.
> >>
> >> Signed-off-by: Srinivas Neeli <[email protected]>
> >> ---
> >> drivers/gpio/gpio-zynq.c | 17 +----------------
> >> 1 file changed, 1 insertion(+), 16 deletions(-)
> >>
> >> diff --git a/drivers/gpio/gpio-zynq.c b/drivers/gpio/gpio-zynq.c
> >> index 3521c1dc3ac0..bb1ac0c5cf26 100644
> >> --- a/drivers/gpio/gpio-zynq.c
> >> +++ b/drivers/gpio/gpio-zynq.c
> >> @@ -1020,22 +1020,7 @@ static struct platform_driver zynq_gpio_driver
> = {
> >> .remove = zynq_gpio_remove,
> >> };
> >>
> >> -/**
> >> - * zynq_gpio_init - Initial driver registration call
> >> - *
> >> - * Return: value from platform_driver_register
> >> - */
> >> -static int __init zynq_gpio_init(void) -{
> >> - return platform_driver_register(&zynq_gpio_driver);
> >> -}
> >> -postcore_initcall(zynq_gpio_init);
> >
> >
> >
> > It’s not an equivalent. Have you tested on actual hardware? If no, there is
> no go for this change.
> >
>
> Yep, this has been like this since the initial introduction of this driver.
> Unfortunately there's no documented reason so unless we can test it, it has
> to stay this way.
>
I tested driver, functionality wise everything working fine.
Based on below conversation, I moved driver to module driver.
https://lore.kernel.org/patchwork/patch/818202/

Thanks
Srinivas Neeli

> Bartosz

2021-04-16 20:51:47

by Bartosz Golaszewski

[permalink] [raw]
Subject: Re: [PATCH 1/3] gpio: zynq: use module_platform_driver to simplify the code

On Wed, Apr 14, 2021 at 4:45 PM Srinivas Neeli <[email protected]> wrote:
>
> HI baratosz and Andy,
>

It's Bartosz. You literally just need to copy & paste the name from my email...

> > -----Original Message-----
> > From: Bartosz Golaszewski <[email protected]>
> > Sent: Tuesday, April 13, 2021 4:14 PM
> > To: Andy Shevchenko <[email protected]>
> > Cc: Srinivas Neeli <[email protected]>; [email protected]; Michal Simek
> > <[email protected]>; Shubhrajyoti Datta <[email protected]>; Srinivas
> > Goud <[email protected]>; [email protected]; linux-arm-
> > [email protected]; [email protected]; git
> > <[email protected]>
> > Subject: Re: [PATCH 1/3] gpio: zynq: use module_platform_driver to simplify
> > the code
> >
> > On Sat, Apr 10, 2021 at 12:08 AM Andy Shevchenko
> > <[email protected]> wrote:
> > >
> > >
> > >
> > > On Friday, April 9, 2021, Srinivas Neeli <[email protected]> wrote:
> > >>
> > >> module_platform_driver() makes the code simpler by eliminating
> > >> boilerplate code.
> > >>
> > >> Signed-off-by: Srinivas Neeli <[email protected]>
> > >> ---
> > >> drivers/gpio/gpio-zynq.c | 17 +----------------
> > >> 1 file changed, 1 insertion(+), 16 deletions(-)
> > >>
> > >> diff --git a/drivers/gpio/gpio-zynq.c b/drivers/gpio/gpio-zynq.c
> > >> index 3521c1dc3ac0..bb1ac0c5cf26 100644
> > >> --- a/drivers/gpio/gpio-zynq.c
> > >> +++ b/drivers/gpio/gpio-zynq.c
> > >> @@ -1020,22 +1020,7 @@ static struct platform_driver zynq_gpio_driver
> > = {
> > >> .remove = zynq_gpio_remove,
> > >> };
> > >>
> > >> -/**
> > >> - * zynq_gpio_init - Initial driver registration call
> > >> - *
> > >> - * Return: value from platform_driver_register
> > >> - */
> > >> -static int __init zynq_gpio_init(void) -{
> > >> - return platform_driver_register(&zynq_gpio_driver);
> > >> -}
> > >> -postcore_initcall(zynq_gpio_init);
> > >
> > >
> > >
> > > It’s not an equivalent. Have you tested on actual hardware? If no, there is
> > no go for this change.
> > >
> >
> > Yep, this has been like this since the initial introduction of this driver.
> > Unfortunately there's no documented reason so unless we can test it, it has
> > to stay this way.
> >
> I tested driver, functionality wise everything working fine.
> Based on below conversation, I moved driver to module driver.
> https://lore.kernel.org/patchwork/patch/818202/
>

Andy: How about we give it a try then? If anyone yells, we'll just revert it.

> Thanks
> Srinivas Neeli
>
> > Bartosz

Bartosz

2021-04-17 11:09:59

by Andy Shevchenko

[permalink] [raw]
Subject: Re: [PATCH 1/3] gpio: zynq: use module_platform_driver to simplify the code

On Fri, Apr 16, 2021 at 9:28 PM Bartosz Golaszewski
<[email protected]> wrote:
> On Wed, Apr 14, 2021 at 4:45 PM Srinivas Neeli <[email protected]> wrote:
> > > From: Bartosz Golaszewski <[email protected]>
> > > Sent: Tuesday, April 13, 2021 4:14 PM
> > > On Sat, Apr 10, 2021 at 12:08 AM Andy Shevchenko
> > > <[email protected]> wrote:

...

> > > Yep, this has been like this since the initial introduction of this driver.
> > > Unfortunately there's no documented reason so unless we can test it, it has
> > > to stay this way.
> > >
> > I tested driver, functionality wise everything working fine.
> > Based on below conversation, I moved driver to module driver.
> > https://lore.kernel.org/patchwork/patch/818202/
> >
>
> Andy: How about we give it a try then? If anyone yells, we'll just revert it.

Sounds like a plan!

--
With Best Regards,
Andy Shevchenko

2021-06-14 10:51:19

by Srinivas Neeli

[permalink] [raw]
Subject: RE: [PATCH 1/3] gpio: zynq: use module_platform_driver to simplify the code

Hi,

> -----Original Message-----
> From: Bartosz Golaszewski <[email protected]>
> Sent: Friday, April 16, 2021 11:58 PM
> To: Srinivas Neeli <[email protected]>
> Cc: Andy Shevchenko <[email protected]>;
> [email protected]; Michal Simek <[email protected]>; Shubhrajyoti
> Datta <[email protected]>; Srinivas Goud <[email protected]>; linux-
> [email protected]; [email protected]; linux-
> [email protected]; git <[email protected]>
> Subject: Re: [PATCH 1/3] gpio: zynq: use module_platform_driver to simplify
> the code
>
> On Wed, Apr 14, 2021 at 4:45 PM Srinivas Neeli <[email protected]> wrote:
> >
> > HI baratosz and Andy,
> >
>
> It's Bartosz. You literally just need to copy & paste the name from my email...
>
> > > -----Original Message-----
> > > From: Bartosz Golaszewski <[email protected]>
> > > Sent: Tuesday, April 13, 2021 4:14 PM
> > > To: Andy Shevchenko <[email protected]>
> > > Cc: Srinivas Neeli <[email protected]>; [email protected];
> > > Michal Simek <[email protected]>; Shubhrajyoti Datta
> > > <[email protected]>; Srinivas Goud <[email protected]>;
> > > [email protected]; linux-arm- [email protected];
> > > [email protected]; git <[email protected]>
> > > Subject: Re: [PATCH 1/3] gpio: zynq: use module_platform_driver to
> > > simplify the code
> > >
> > > On Sat, Apr 10, 2021 at 12:08 AM Andy Shevchenko
> > > <[email protected]> wrote:
> > > >
> > > >
> > > >
> > > > On Friday, April 9, 2021, Srinivas Neeli <[email protected]>
> wrote:
> > > >>
> > > >> module_platform_driver() makes the code simpler by eliminating
> > > >> boilerplate code.
> > > >>
> > > >> Signed-off-by: Srinivas Neeli <[email protected]>
> > > >> ---
> > > >> drivers/gpio/gpio-zynq.c | 17 +----------------
> > > >> 1 file changed, 1 insertion(+), 16 deletions(-)
> > > >>
> > > >> diff --git a/drivers/gpio/gpio-zynq.c b/drivers/gpio/gpio-zynq.c
> > > >> index 3521c1dc3ac0..bb1ac0c5cf26 100644
> > > >> --- a/drivers/gpio/gpio-zynq.c
> > > >> +++ b/drivers/gpio/gpio-zynq.c
> > > >> @@ -1020,22 +1020,7 @@ static struct platform_driver
> > > >> zynq_gpio_driver
> > > = {
> > > >> .remove = zynq_gpio_remove, };
> > > >>
> > > >> -/**
> > > >> - * zynq_gpio_init - Initial driver registration call
> > > >> - *
> > > >> - * Return: value from platform_driver_register
> > > >> - */
> > > >> -static int __init zynq_gpio_init(void) -{
> > > >> - return platform_driver_register(&zynq_gpio_driver);
> > > >> -}
> > > >> -postcore_initcall(zynq_gpio_init);
> > > >
> > > >
> > > >
> > > > It’s not an equivalent. Have you tested on actual hardware? If no,
> > > > there is
> > > no go for this change.
> > > >
> > >
> > > Yep, this has been like this since the initial introduction of this driver.
> > > Unfortunately there's no documented reason so unless we can test it,
> > > it has to stay this way.
> > >
> > I tested driver, functionality wise everything working fine.
> > Based on below conversation, I moved driver to module driver.
> > https://lore.kernel.org/patchwork/patch/818202/
> >
>
> Andy: How about we give it a try then? If anyone yells, we'll just revert it.

Could you please apply this series to gpio for-next branch if there are no issues .

>
> > Thanks
> > Srinivas Neeli
> >
> > > Bartosz
>
> Bartosz

Thanks
Srinivas Neeli

2021-06-14 18:27:11

by Bartosz Golaszewski

[permalink] [raw]
Subject: Re: [PATCH 1/3] gpio: zynq: use module_platform_driver to simplify the code

On Mon, Jun 14, 2021 at 12:39 PM Srinivas Neeli <[email protected]> wrote:
>
> >
> > Andy: How about we give it a try then? If anyone yells, we'll just revert it.
>
> Could you please apply this series to gpio for-next branch if there are no issues .
>

Applied, thanks!

Bart