Messages in this thread | | | Subject | Re: [PATCH 3/3] pinctrl: bcm: clean up modular vs. non-modular distinctions | From | Scott Branden <> | Date | Tue, 23 May 2017 17:37:35 -0700 |
| |
On 17-05-23 05:25 PM, Florian Fainelli wrote: > On 05/23/2017 05:12 PM, Paul Gortmaker wrote: >> [Re: [PATCH 3/3] pinctrl: bcm: clean up modular vs. non-modular distinctions] On 23/05/2017 (Tue 15:15) Scott Branden wrote: >> >>> Hi Paul, >>> >>> Some comments - leave our file headers intact. If you want to add a new >>> comment do so after the existing file header in another comment. But, I >>> don't think any of that information is needed by us. >> OK, no problem, if that is what is desired for your driver. I just >> normally move the author information from the bottom of the file to the >> top of the file. As a lot of the linux driver work was (is?) done for >> kudos and not for career, I can't just delete author information. That >> would not be fair to most of those contributors. >> >> It hasn't been a problem before in all of the other similar commits I've >> made, but I can imagine a tool that does a check on the comment block on >> the top of a file and complains if it changes, or similar. >> >> Would you prefer something like this instead? It leaves your header >> completely untouched, and still gives credit to the original author, >> and those lines are also untouched. > This looks horrible, sorry. Scott, what's the matter with moving the > authors listed in MODULE_AUTHOR() into the header? We have tools for scanning headers. Mucking with the headers is not desirable as tools may need to change. Just place additional comments in new comments blocks. > > If it was up to me, I would just remove the MODULE_* parts and if I need > to look up the author, git log is my friend. > >> I've not re-done build coverage on this yet, but let me know if this is >> what you'd prefer. >> >> Thanks, >> Paul >> -- >> >> From 3f8bf38bcdbf38484182222965aac2748cc1d5cd Mon Sep 17 00:00:00 2001 >> From: Paul Gortmaker <paul.gortmaker@windriver.com> >> Date: Mon, 31 Aug 2015 17:35:47 -0400 >> Subject: [PATCH] pinctrl: bcm: clean up modular vs. non-modular distinctions >> >> Fixups here tend to be more of a conglomerate of some of the other >> repeated/systematic ones we've seen in the earlier pinctrl cleanups. >> >> We remove module.h from code that isn't doing anything modular at >> all; if they have __init sections, then replace it with init.h >> >> One driver has a .remove that would be dispatched on module_exit, >> and as that code is essentially orphaned, so we remove it. In case >> anyone was previously doing the (pointless) unbind to get to that >> function, we disable unbind for this one driver as well. >> >> A couple bool drivers (hence non-modular) are converted over to >> to builtin_platform_driver(). >> >> Since module_platform_driver() uses the same init level priority as >> builtin_platform_driver() the init ordering remains unchanged with >> this commit. >> >> Also note that MODULE_DEVICE_TABLE is a no-op for non-modular code. >> >> We leave the MODULE_AUTHOR and MODULE_LICENSE tag etc. at the bottom >> of the file since Broadcom would prefer the comment block at the top >> of the file remain unchanged. We just use CPP to take it out of the >> picture with an #if 0 / #endif instead. >> >> Cc: Eric Anholt <eric@anholt.net> >> Cc: Florian Fainelli <f.fainelli@gmail.com> >> Cc: Jon Mason <jonmason@broadcom.com> >> Cc: Linus Walleij <linus.walleij@linaro.org> >> Cc: Ray Jui <rjui@broadcom.com> >> Cc: Scott Branden <sbranden@broadcom.com> >> Cc: Stefan Wahren <stefan.wahren@i2se.com> >> Cc: Sherman Yin <syin@broadcom.com> >> Cc: bcm-kernel-feedback-list@broadcom.com >> Cc: linux-gpio@vger.kernel.org >> Cc: linux-rpi-kernel@lists.infradead.org >> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> >> --- >> drivers/pinctrl/bcm/pinctrl-bcm281xx.c | 7 ++++--- >> drivers/pinctrl/bcm/pinctrl-bcm2835.c | 18 +++++------------- >> drivers/pinctrl/bcm/pinctrl-cygnus-mux.c | 3 ++- >> 3 files changed, 11 insertions(+), 17 deletions(-) >> >> diff --git a/drivers/pinctrl/bcm/pinctrl-bcm281xx.c b/drivers/pinctrl/bcm/pinctrl-bcm281xx.c >> index 810a81786f62..cc01acc988d0 100644 >> --- a/drivers/pinctrl/bcm/pinctrl-bcm281xx.c >> +++ b/drivers/pinctrl/bcm/pinctrl-bcm281xx.c >> @@ -12,7 +12,7 @@ >> */ >> #include <linux/err.h> >> #include <linux/io.h> >> -#include <linux/module.h> >> +#include <linux/init.h> >> #include <linux/of.h> >> #include <linux/platform_device.h> >> #include <linux/pinctrl/pinctrl.h> >> @@ -1444,10 +1444,11 @@ static struct platform_driver bcm281xx_pinctrl_driver = { >> .of_match_table = bcm281xx_pinctrl_of_match, >> }, >> }; >> +builtin_platform_driver_probe(bcm281xx_pinctrl_driver, bcm281xx_pinctrl_probe); >> >> -module_platform_driver_probe(bcm281xx_pinctrl_driver, bcm281xx_pinctrl_probe); >> - >> +#if 0 /* ...def MODULE ; never supported as such; kept for documentation. */ >> MODULE_AUTHOR("Broadcom Corporation <bcm-kernel-feedback-list@broadcom.com>"); >> MODULE_AUTHOR("Sherman Yin <syin@broadcom.com>"); >> MODULE_DESCRIPTION("Broadcom BCM281xx pinctrl driver"); >> MODULE_LICENSE("GPL v2"); >> +#endif >> diff --git a/drivers/pinctrl/bcm/pinctrl-bcm2835.c b/drivers/pinctrl/bcm/pinctrl-bcm2835.c >> index 85d009112864..3924ff17e955 100644 >> --- a/drivers/pinctrl/bcm/pinctrl-bcm2835.c >> +++ b/drivers/pinctrl/bcm/pinctrl-bcm2835.c >> @@ -27,7 +27,7 @@ >> #include <linux/io.h> >> #include <linux/irq.h> >> #include <linux/irqdesc.h> >> -#include <linux/module.h> >> +#include <linux/init.h> >> #include <linux/of_address.h> >> #include <linux/of.h> >> #include <linux/of_irq.h> >> @@ -1075,31 +1075,23 @@ static int bcm2835_pinctrl_probe(struct platform_device *pdev) >> return 0; >> } >> >> -static int bcm2835_pinctrl_remove(struct platform_device *pdev) >> -{ >> - struct bcm2835_pinctrl *pc = platform_get_drvdata(pdev); >> - >> - gpiochip_remove(&pc->gpio_chip); >> - >> - return 0; >> -} >> - >> static const struct of_device_id bcm2835_pinctrl_match[] = { >> { .compatible = "brcm,bcm2835-gpio" }, >> {} >> }; >> -MODULE_DEVICE_TABLE(of, bcm2835_pinctrl_match); >> >> static struct platform_driver bcm2835_pinctrl_driver = { >> .probe = bcm2835_pinctrl_probe, >> - .remove = bcm2835_pinctrl_remove, >> .driver = { >> .name = MODULE_NAME, >> .of_match_table = bcm2835_pinctrl_match, >> + .suppress_bind_attrs = true, >> }, >> }; >> -module_platform_driver(bcm2835_pinctrl_driver); >> +builtin_platform_driver(bcm2835_pinctrl_driver); >> >> +#if 0 /* ...def MODULE ; never supported as such; kept for documentation. */ >> MODULE_AUTHOR("Chris Boot, Simon Arlott, Stephen Warren"); >> MODULE_DESCRIPTION("BCM2835 Pin control driver"); >> MODULE_LICENSE("GPL"); >> +#endif >> diff --git a/drivers/pinctrl/bcm/pinctrl-cygnus-mux.c b/drivers/pinctrl/bcm/pinctrl-cygnus-mux.c >> index d31c95701a92..84c2a182a5b7 100644 >> --- a/drivers/pinctrl/bcm/pinctrl-cygnus-mux.c >> +++ b/drivers/pinctrl/bcm/pinctrl-cygnus-mux.c >> @@ -17,7 +17,6 @@ >> >> #include <linux/err.h> >> #include <linux/io.h> >> -#include <linux/module.h> >> #include <linux/of.h> >> #include <linux/slab.h> >> #include <linux/platform_device.h> >> @@ -1017,6 +1016,8 @@ static int __init cygnus_pinmux_init(void) >> } >> arch_initcall(cygnus_pinmux_init); >> >> +#if 0 /* ...def MODULE ; never supported as such; kept for documentation. */ >> MODULE_AUTHOR("Ray Jui <rjui@broadcom.com>"); >> MODULE_DESCRIPTION("Broadcom Cygnus IOMUX driver"); >> MODULE_LICENSE("GPL v2"); >> +#endif >> >
| |