diff mbox series

[v15,mfd,5/9] pinctrl: microchip-sgpio: allow sgpio driver to be used as a module

Message ID 20220803054728.1541104-6-colin.foster@in-advantage.com (mailing list archive)
State New, archived
Headers show
Series add support for VSC7512 control over SPI | expand

Commit Message

Colin Foster Aug. 3, 2022, 5:47 a.m. UTC
As the commit message suggests, this simply adds the ability to select
SGPIO pinctrl as a module. This becomes more practical when the SGPIO
hardware exists on an external chip, controlled indirectly by I2C or SPI.
This commit enables that level of control.

Signed-off-by: Colin Foster <colin.foster@in-advantage.com>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Reviewed-by: Vladimir Oltean <vladimir.oltean@nxp.com>
---

(No changes since before v14)

v14
    * No changes

---
 drivers/pinctrl/Kconfig                   | 5 ++++-
 drivers/pinctrl/pinctrl-microchip-sgpio.c | 6 +++++-
 2 files changed, 9 insertions(+), 2 deletions(-)

Comments

Andy Shevchenko Aug. 3, 2022, 11:32 a.m. UTC | #1
On Wed, Aug 3, 2022 at 7:47 AM Colin Foster
<colin.foster@in-advantage.com> wrote:
>
> As the commit message suggests, this simply adds the ability to select
> SGPIO pinctrl as a module. This becomes more practical when the SGPIO
> hardware exists on an external chip, controlled indirectly by I2C or SPI.
> This commit enables that level of control.

FWIW,
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>

> Signed-off-by: Colin Foster <colin.foster@in-advantage.com>
> Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
> Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
> Reviewed-by: Vladimir Oltean <vladimir.oltean@nxp.com>
> ---
>
> (No changes since before v14)
>
> v14
>     * No changes
>
> ---
>  drivers/pinctrl/Kconfig                   | 5 ++++-
>  drivers/pinctrl/pinctrl-microchip-sgpio.c | 6 +++++-
>  2 files changed, 9 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/pinctrl/Kconfig b/drivers/pinctrl/Kconfig
> index ba48ff8be6e2..4e8d0ae6c81e 100644
> --- a/drivers/pinctrl/Kconfig
> +++ b/drivers/pinctrl/Kconfig
> @@ -292,7 +292,7 @@ config PINCTRL_MCP23S08
>           corresponding interrupt-controller.
>
>  config PINCTRL_MICROCHIP_SGPIO
> -       bool "Pinctrl driver for Microsemi/Microchip Serial GPIO"
> +       tristate "Pinctrl driver for Microsemi/Microchip Serial GPIO"
>         depends on OF
>         depends on HAS_IOMEM
>         select GPIOLIB
> @@ -310,6 +310,9 @@ config PINCTRL_MICROCHIP_SGPIO
>           connect control signals from SFP modules and to act as an
>           LED controller.
>
> +         If compiled as a module, the module name will be
> +         pinctrl-microchip-sgpio.
> +
>  config PINCTRL_OCELOT
>         tristate "Pinctrl driver for the Microsemi Ocelot and Jaguar2 SoCs"
>         depends on OF
> diff --git a/drivers/pinctrl/pinctrl-microchip-sgpio.c b/drivers/pinctrl/pinctrl-microchip-sgpio.c
> index 6f55bf7d5e05..e56074b7e659 100644
> --- a/drivers/pinctrl/pinctrl-microchip-sgpio.c
> +++ b/drivers/pinctrl/pinctrl-microchip-sgpio.c
> @@ -999,6 +999,7 @@ static const struct of_device_id microchip_sgpio_gpio_of_match[] = {
>                 /* sentinel */
>         }
>  };
> +MODULE_DEVICE_TABLE(of, microchip_sgpio_gpio_of_match);
>
>  static struct platform_driver microchip_sgpio_pinctrl_driver = {
>         .driver = {
> @@ -1008,4 +1009,7 @@ static struct platform_driver microchip_sgpio_pinctrl_driver = {
>         },
>         .probe = microchip_sgpio_probe,
>  };
> -builtin_platform_driver(microchip_sgpio_pinctrl_driver);
> +module_platform_driver(microchip_sgpio_pinctrl_driver);
> +
> +MODULE_DESCRIPTION("Microchip SGPIO Pinctrl Driver");
> +MODULE_LICENSE("GPL");
> --
> 2.25.1
>
diff mbox series

Patch

diff --git a/drivers/pinctrl/Kconfig b/drivers/pinctrl/Kconfig
index ba48ff8be6e2..4e8d0ae6c81e 100644
--- a/drivers/pinctrl/Kconfig
+++ b/drivers/pinctrl/Kconfig
@@ -292,7 +292,7 @@  config PINCTRL_MCP23S08
 	  corresponding interrupt-controller.
 
 config PINCTRL_MICROCHIP_SGPIO
-	bool "Pinctrl driver for Microsemi/Microchip Serial GPIO"
+	tristate "Pinctrl driver for Microsemi/Microchip Serial GPIO"
 	depends on OF
 	depends on HAS_IOMEM
 	select GPIOLIB
@@ -310,6 +310,9 @@  config PINCTRL_MICROCHIP_SGPIO
 	  connect control signals from SFP modules and to act as an
 	  LED controller.
 
+	  If compiled as a module, the module name will be
+	  pinctrl-microchip-sgpio.
+
 config PINCTRL_OCELOT
 	tristate "Pinctrl driver for the Microsemi Ocelot and Jaguar2 SoCs"
 	depends on OF
diff --git a/drivers/pinctrl/pinctrl-microchip-sgpio.c b/drivers/pinctrl/pinctrl-microchip-sgpio.c
index 6f55bf7d5e05..e56074b7e659 100644
--- a/drivers/pinctrl/pinctrl-microchip-sgpio.c
+++ b/drivers/pinctrl/pinctrl-microchip-sgpio.c
@@ -999,6 +999,7 @@  static const struct of_device_id microchip_sgpio_gpio_of_match[] = {
 		/* sentinel */
 	}
 };
+MODULE_DEVICE_TABLE(of, microchip_sgpio_gpio_of_match);
 
 static struct platform_driver microchip_sgpio_pinctrl_driver = {
 	.driver = {
@@ -1008,4 +1009,7 @@  static struct platform_driver microchip_sgpio_pinctrl_driver = {
 	},
 	.probe = microchip_sgpio_probe,
 };
-builtin_platform_driver(microchip_sgpio_pinctrl_driver);
+module_platform_driver(microchip_sgpio_pinctrl_driver);
+
+MODULE_DESCRIPTION("Microchip SGPIO Pinctrl Driver");
+MODULE_LICENSE("GPL");