Re: [PATCH] gpio: davinci: add support of module build
From: Bartosz Golaszewski
Date: Mon Nov 07 2022 - 04:14:48 EST
On Wed, Oct 26, 2022 at 10:35 PM Nicolas Frayer <nfrayer@xxxxxxxxxxxx> wrote:
>
> From: Guillaume La Roque <glaroque@xxxxxxxxxxxx>
>
> Added module build support for the davinci gpio driver
>
> Signed-off-by: Guillaume La Roque <glaroque@xxxxxxxxxxxx>
> Signed-off-by: Nicolas Frayer <nfrayer@xxxxxxxxxxxx>
> ---
> drivers/gpio/Kconfig | 2 +-
> drivers/gpio/gpio-davinci.c | 15 ++++++---------
> 2 files changed, 7 insertions(+), 10 deletions(-)
>
> diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig
> index a01af1180616..f8bace51c2d0 100644
> --- a/drivers/gpio/Kconfig
> +++ b/drivers/gpio/Kconfig
> @@ -219,7 +219,7 @@ config GPIO_CLPS711X
> Say yes here to support GPIO on CLPS711X SoCs.
>
> config GPIO_DAVINCI
> - bool "TI Davinci/Keystone GPIO support"
> + tristate "TI Davinci/Keystone GPIO support"
> default y if ARCH_DAVINCI
> depends on (ARM || ARM64) && (ARCH_DAVINCI || ARCH_KEYSTONE || ARCH_K3)
> help
> diff --git a/drivers/gpio/gpio-davinci.c b/drivers/gpio/gpio-davinci.c
> index 59c4c48d8296..def87b99691f 100644
> --- a/drivers/gpio/gpio-davinci.c
> +++ b/drivers/gpio/gpio-davinci.c
> @@ -721,12 +721,9 @@ static struct platform_driver davinci_gpio_driver = {
> },
> };
>
> -/**
> - * GPIO driver registration needs to be done before machine_init functions
> - * access GPIO. Hence davinci_gpio_drv_reg() is a postcore_initcall.
> - */
> -static int __init davinci_gpio_drv_reg(void)
> -{
> - return platform_driver_register(&davinci_gpio_driver);
> -}
> -postcore_initcall(davinci_gpio_drv_reg);
> +module_platform_driver(davinci_gpio_driver);
I'm sure there was a reason to register the driver early (at postcore)
for some platforms. This moves the registration to module_init which
is the last initcall to call. What HW did you test this on?
Bart
> +
> +MODULE_AUTHOR("Jan Kotas <jank@xxxxxxxxxxx>");
> +MODULE_DESCRIPTION("DAVINCI GPIO driver");
> +MODULE_LICENSE("GPL");
> +MODULE_ALIAS("platform:gpio-davinci");
> --
> 2.25.1
>