Linux-GPIO Archive on lore.kernel.org
 help / color / Atom feed
* [PATCH V6 0/9] Support i.MX8 SoCs pinctrl drivers built as module
@ 2020-06-24  6:23 Anson Huang
  2020-06-24  6:23 ` [PATCH V6 1/9] pinctrl: imx: Support i.MX8 SoCs pinctrl driver " Anson Huang
                   ` (9 more replies)
  0 siblings, 10 replies; 11+ messages in thread
From: Anson Huang @ 2020-06-24  6:23 UTC (permalink / raw)
  To: aisheng.dong, festevam, shawnguo, stefan, kernel, linus.walleij,
	s.hauer, linux-gpio, linux-kernel, linux-arm-kernel
  Cc: Linux-imx

There are more and mroe requirements that SoC specific modules should be built
as module in order to support generic kernel image, such as Android GKI concept.

This patch series supports i.MX8 SoCs pinctrl drivers to be built as module,
including i.MX8MQ/MM/MN/MP/QXP/QM/DXL SoCs, i.MX common pinctrl driver and i.MX
SCU common pinctrl driver as still built-in.

Compared to V5, the changes are as below:
        - Keep i.MX common pinctrl libary built in, ONLY i.MX SoC pinctrl driver
          support built as module.

Anson Huang (9):
  pinctrl: imx: Support i.MX8 SoCs pinctrl driver built as module
  pinctrl: imx: scu: Support i.MX8 SCU SoCs pinctrl driver built as
    module
  pinctrl: imx8mm: Support building as module
  pinctrl: imx8mn: Support building as module
  pinctrl: imx8mq: Support building as module
  pinctrl: imx8mp: Support building as module
  pinctrl: imx8qxp: Support building as module
  pinctrl: imx8qm: Support building as module
  pinctrl: imx8dxl: Support building as module

 drivers/pinctrl/freescale/Kconfig           | 14 +++++++-------
 drivers/pinctrl/freescale/pinctrl-imx.c     |  2 ++
 drivers/pinctrl/freescale/pinctrl-imx8dxl.c |  5 +++++
 drivers/pinctrl/freescale/pinctrl-imx8mm.c  |  6 ++++++
 drivers/pinctrl/freescale/pinctrl-imx8mn.c  |  6 ++++++
 drivers/pinctrl/freescale/pinctrl-imx8mp.c  |  6 ++++++
 drivers/pinctrl/freescale/pinctrl-imx8mq.c  |  6 ++++++
 drivers/pinctrl/freescale/pinctrl-imx8qm.c  |  5 +++++
 drivers/pinctrl/freescale/pinctrl-imx8qxp.c |  5 +++++
 drivers/pinctrl/freescale/pinctrl-scu.c     |  4 ++++
 10 files changed, 52 insertions(+), 7 deletions(-)

-- 
2.7.4


^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH V6 1/9] pinctrl: imx: Support i.MX8 SoCs pinctrl driver built as module
  2020-06-24  6:23 [PATCH V6 0/9] Support i.MX8 SoCs pinctrl drivers built as module Anson Huang
@ 2020-06-24  6:23 ` Anson Huang
  2020-06-24  6:23 ` [PATCH V6 2/9] pinctrl: imx: scu: Support i.MX8 SCU " Anson Huang
                   ` (8 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: Anson Huang @ 2020-06-24  6:23 UTC (permalink / raw)
  To: aisheng.dong, festevam, shawnguo, stefan, kernel, linus.walleij,
	s.hauer, linux-gpio, linux-kernel, linux-arm-kernel
  Cc: Linux-imx

Export necessary APIs to support i.MX8 SoCs pinctrl driver to be
built as module.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
---
Changes since V5:
	- keep it still built in, ONLY export APIs for SoCs pinctrl driver;
---
 drivers/pinctrl/freescale/pinctrl-imx.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/pinctrl/freescale/pinctrl-imx.c b/drivers/pinctrl/freescale/pinctrl-imx.c
index 1f81569..507e4af 100644
--- a/drivers/pinctrl/freescale/pinctrl-imx.c
+++ b/drivers/pinctrl/freescale/pinctrl-imx.c
@@ -877,6 +877,7 @@ int imx_pinctrl_probe(struct platform_device *pdev,
 
 	return pinctrl_enable(ipctl->pctl);
 }
+EXPORT_SYMBOL_GPL(imx_pinctrl_probe);
 
 static int __maybe_unused imx_pinctrl_suspend(struct device *dev)
 {
@@ -896,3 +897,4 @@ const struct dev_pm_ops imx_pinctrl_pm_ops = {
 	SET_LATE_SYSTEM_SLEEP_PM_OPS(imx_pinctrl_suspend,
 					imx_pinctrl_resume)
 };
+EXPORT_SYMBOL_GPL(imx_pinctrl_pm_ops);
-- 
2.7.4


^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH V6 2/9] pinctrl: imx: scu: Support i.MX8 SCU SoCs pinctrl driver built as module
  2020-06-24  6:23 [PATCH V6 0/9] Support i.MX8 SoCs pinctrl drivers built as module Anson Huang
  2020-06-24  6:23 ` [PATCH V6 1/9] pinctrl: imx: Support i.MX8 SoCs pinctrl driver " Anson Huang
@ 2020-06-24  6:23 ` Anson Huang
  2020-06-24  6:23 ` [PATCH V6 3/9] pinctrl: imx8mm: Support building " Anson Huang
                   ` (7 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: Anson Huang @ 2020-06-24  6:23 UTC (permalink / raw)
  To: aisheng.dong, festevam, shawnguo, stefan, kernel, linus.walleij,
	s.hauer, linux-gpio, linux-kernel, linux-arm-kernel
  Cc: Linux-imx

Export necessary APIs to support i.MX8 SCU SoCs pinctrl driver to be
built as module.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
---
Changes since V5:
	- keep it still built in, ONLY export APIs for SoCs pinctrl driver;
---
 drivers/pinctrl/freescale/pinctrl-scu.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/pinctrl/freescale/pinctrl-scu.c b/drivers/pinctrl/freescale/pinctrl-scu.c
index 23cf04b..9df45d3 100644
--- a/drivers/pinctrl/freescale/pinctrl-scu.c
+++ b/drivers/pinctrl/freescale/pinctrl-scu.c
@@ -41,6 +41,7 @@ int imx_pinctrl_sc_ipc_init(struct platform_device *pdev)
 {
 	return imx_scu_get_handle(&pinctrl_ipc_handle);
 }
+EXPORT_SYMBOL_GPL(imx_pinctrl_sc_ipc_init);
 
 int imx_pinconf_get_scu(struct pinctrl_dev *pctldev, unsigned pin_id,
 			unsigned long *config)
@@ -66,6 +67,7 @@ int imx_pinconf_get_scu(struct pinctrl_dev *pctldev, unsigned pin_id,
 
 	return 0;
 }
+EXPORT_SYMBOL_GPL(imx_pinconf_get_scu);
 
 int imx_pinconf_set_scu(struct pinctrl_dev *pctldev, unsigned pin_id,
 			unsigned long *configs, unsigned num_configs)
@@ -101,6 +103,7 @@ int imx_pinconf_set_scu(struct pinctrl_dev *pctldev, unsigned pin_id,
 
 	return ret;
 }
+EXPORT_SYMBOL_GPL(imx_pinconf_set_scu);
 
 void imx_pinctrl_parse_pin_scu(struct imx_pinctrl *ipctl,
 			       unsigned int *pin_id, struct imx_pin *pin,
@@ -119,3 +122,4 @@ void imx_pinctrl_parse_pin_scu(struct imx_pinctrl *ipctl,
 	dev_dbg(ipctl->dev, "%s: 0x%x 0x%08lx", info->pins[pin->pin].name,
 		pin_scu->mux_mode, pin_scu->config);
 }
+EXPORT_SYMBOL_GPL(imx_pinctrl_parse_pin_scu);
-- 
2.7.4


^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH V6 3/9] pinctrl: imx8mm: Support building as module
  2020-06-24  6:23 [PATCH V6 0/9] Support i.MX8 SoCs pinctrl drivers built as module Anson Huang
  2020-06-24  6:23 ` [PATCH V6 1/9] pinctrl: imx: Support i.MX8 SoCs pinctrl driver " Anson Huang
  2020-06-24  6:23 ` [PATCH V6 2/9] pinctrl: imx: scu: Support i.MX8 SCU " Anson Huang
@ 2020-06-24  6:23 ` Anson Huang
  2020-06-24  6:23 ` [PATCH V6 4/9] pinctrl: imx8mn: " Anson Huang
                   ` (6 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: Anson Huang @ 2020-06-24  6:23 UTC (permalink / raw)
  To: aisheng.dong, festevam, shawnguo, stefan, kernel, linus.walleij,
	s.hauer, linux-gpio, linux-kernel, linux-arm-kernel
  Cc: Linux-imx

Change configuration to "tristate", add module device table,
author, description and license to support building i.MX8MM
pinctrl driver as module.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
---
No change.
---
 drivers/pinctrl/freescale/Kconfig          | 2 +-
 drivers/pinctrl/freescale/pinctrl-imx8mm.c | 6 ++++++
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/drivers/pinctrl/freescale/Kconfig b/drivers/pinctrl/freescale/Kconfig
index 4ca44dd..3681c4d 100644
--- a/drivers/pinctrl/freescale/Kconfig
+++ b/drivers/pinctrl/freescale/Kconfig
@@ -124,7 +124,7 @@ config PINCTRL_IMX7ULP
 	  Say Y here to enable the imx7ulp pinctrl driver
 
 config PINCTRL_IMX8MM
-	bool "IMX8MM pinctrl driver"
+	tristate "IMX8MM pinctrl driver"
 	depends on ARCH_MXC
 	select PINCTRL_IMX
 	help
diff --git a/drivers/pinctrl/freescale/pinctrl-imx8mm.c b/drivers/pinctrl/freescale/pinctrl-imx8mm.c
index 6d1038a..31c5d88 100644
--- a/drivers/pinctrl/freescale/pinctrl-imx8mm.c
+++ b/drivers/pinctrl/freescale/pinctrl-imx8mm.c
@@ -5,6 +5,7 @@
 
 #include <linux/err.h>
 #include <linux/init.h>
+#include <linux/module.h>
 #include <linux/of_device.h>
 #include <linux/pinctrl/pinctrl.h>
 #include <linux/platform_device.h>
@@ -326,6 +327,7 @@ static const struct of_device_id imx8mm_pinctrl_of_match[] = {
 	{ .compatible = "fsl,imx8mm-iomuxc", .data = &imx8mm_pinctrl_info, },
 	{ /* sentinel */ }
 };
+MODULE_DEVICE_TABLE(of, imx8mm_pinctrl_of_match);
 
 static int imx8mm_pinctrl_probe(struct platform_device *pdev)
 {
@@ -346,3 +348,7 @@ static int __init imx8mm_pinctrl_init(void)
 	return platform_driver_register(&imx8mm_pinctrl_driver);
 }
 arch_initcall(imx8mm_pinctrl_init);
+
+MODULE_AUTHOR("Bai Ping <ping.bai@nxp.com>");
+MODULE_DESCRIPTION("NXP i.MX8MM pinctrl driver");
+MODULE_LICENSE("GPL v2");
-- 
2.7.4


^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH V6 4/9] pinctrl: imx8mn: Support building as module
  2020-06-24  6:23 [PATCH V6 0/9] Support i.MX8 SoCs pinctrl drivers built as module Anson Huang
                   ` (2 preceding siblings ...)
  2020-06-24  6:23 ` [PATCH V6 3/9] pinctrl: imx8mm: Support building " Anson Huang
@ 2020-06-24  6:23 ` Anson Huang
  2020-06-24  6:24 ` [PATCH V6 5/9] pinctrl: imx8mq: " Anson Huang
                   ` (5 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: Anson Huang @ 2020-06-24  6:23 UTC (permalink / raw)
  To: aisheng.dong, festevam, shawnguo, stefan, kernel, linus.walleij,
	s.hauer, linux-gpio, linux-kernel, linux-arm-kernel
  Cc: Linux-imx

Change configuration to "tristate", add module device table,
author, description and license to support building i.MX8MN
pinctrl driver as module.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
---
No change.
---
 drivers/pinctrl/freescale/Kconfig          | 2 +-
 drivers/pinctrl/freescale/pinctrl-imx8mn.c | 6 ++++++
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/drivers/pinctrl/freescale/Kconfig b/drivers/pinctrl/freescale/Kconfig
index 3681c4d..b909719 100644
--- a/drivers/pinctrl/freescale/Kconfig
+++ b/drivers/pinctrl/freescale/Kconfig
@@ -131,7 +131,7 @@ config PINCTRL_IMX8MM
 	  Say Y here to enable the imx8mm pinctrl driver
 
 config PINCTRL_IMX8MN
-	bool "IMX8MN pinctrl driver"
+	tristate "IMX8MN pinctrl driver"
 	depends on ARCH_MXC
 	select PINCTRL_IMX
 	help
diff --git a/drivers/pinctrl/freescale/pinctrl-imx8mn.c b/drivers/pinctrl/freescale/pinctrl-imx8mn.c
index 100ed8c..14c9deb 100644
--- a/drivers/pinctrl/freescale/pinctrl-imx8mn.c
+++ b/drivers/pinctrl/freescale/pinctrl-imx8mn.c
@@ -5,6 +5,7 @@
 
 #include <linux/err.h>
 #include <linux/init.h>
+#include <linux/module.h>
 #include <linux/of.h>
 #include <linux/pinctrl/pinctrl.h>
 #include <linux/platform_device.h>
@@ -326,6 +327,7 @@ static const struct of_device_id imx8mn_pinctrl_of_match[] = {
 	{ .compatible = "fsl,imx8mn-iomuxc", .data = &imx8mn_pinctrl_info, },
 	{ /* sentinel */ }
 };
+MODULE_DEVICE_TABLE(of, imx8mn_pinctrl_of_match);
 
 static int imx8mn_pinctrl_probe(struct platform_device *pdev)
 {
@@ -346,3 +348,7 @@ static int __init imx8mn_pinctrl_init(void)
 	return platform_driver_register(&imx8mn_pinctrl_driver);
 }
 arch_initcall(imx8mn_pinctrl_init);
+
+MODULE_AUTHOR("Anson Huang <Anson.Huang@nxp.com>");
+MODULE_DESCRIPTION("NXP i.MX8MN pinctrl driver");
+MODULE_LICENSE("GPL v2");
-- 
2.7.4


^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH V6 5/9] pinctrl: imx8mq: Support building as module
  2020-06-24  6:23 [PATCH V6 0/9] Support i.MX8 SoCs pinctrl drivers built as module Anson Huang
                   ` (3 preceding siblings ...)
  2020-06-24  6:23 ` [PATCH V6 4/9] pinctrl: imx8mn: " Anson Huang
@ 2020-06-24  6:24 ` Anson Huang
  2020-06-24  6:24 ` [PATCH V6 6/9] pinctrl: imx8mp: " Anson Huang
                   ` (4 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: Anson Huang @ 2020-06-24  6:24 UTC (permalink / raw)
  To: aisheng.dong, festevam, shawnguo, stefan, kernel, linus.walleij,
	s.hauer, linux-gpio, linux-kernel, linux-arm-kernel
  Cc: Linux-imx

Change configuration to "tristate", add module device table,
author, description and license to support building i.MX8MQ
pinctrl driver as module.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
---
No change.
---
 drivers/pinctrl/freescale/Kconfig          | 2 +-
 drivers/pinctrl/freescale/pinctrl-imx8mq.c | 6 ++++++
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/drivers/pinctrl/freescale/Kconfig b/drivers/pinctrl/freescale/Kconfig
index b909719..df77e752 100644
--- a/drivers/pinctrl/freescale/Kconfig
+++ b/drivers/pinctrl/freescale/Kconfig
@@ -145,7 +145,7 @@ config PINCTRL_IMX8MP
 	  Say Y here to enable the imx8mp pinctrl driver
 
 config PINCTRL_IMX8MQ
-	bool "IMX8MQ pinctrl driver"
+	tristate "IMX8MQ pinctrl driver"
 	depends on ARCH_MXC
 	select PINCTRL_IMX
 	help
diff --git a/drivers/pinctrl/freescale/pinctrl-imx8mq.c b/drivers/pinctrl/freescale/pinctrl-imx8mq.c
index 50aa1c0..ae3ea5b 100644
--- a/drivers/pinctrl/freescale/pinctrl-imx8mq.c
+++ b/drivers/pinctrl/freescale/pinctrl-imx8mq.c
@@ -8,6 +8,7 @@
 #include <linux/err.h>
 #include <linux/init.h>
 #include <linux/io.h>
+#include <linux/module.h>
 #include <linux/of.h>
 #include <linux/of_device.h>
 #include <linux/pinctrl/pinctrl.h>
@@ -329,6 +330,7 @@ static const struct of_device_id imx8mq_pinctrl_of_match[] = {
 	{ .compatible = "fsl,imx8mq-iomuxc", .data = &imx8mq_pinctrl_info, },
 	{ /* sentinel */ }
 };
+MODULE_DEVICE_TABLE(of, imx8mq_pinctrl_of_match);
 
 static int imx8mq_pinctrl_probe(struct platform_device *pdev)
 {
@@ -350,3 +352,7 @@ static int __init imx8mq_pinctrl_init(void)
 	return platform_driver_register(&imx8mq_pinctrl_driver);
 }
 arch_initcall(imx8mq_pinctrl_init);
+
+MODULE_AUTHOR("Lucas Stach <l.stach@pengutronix.de>");
+MODULE_DESCRIPTION("NXP i.MX8MQ pinctrl driver");
+MODULE_LICENSE("GPL v2");
-- 
2.7.4


^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH V6 6/9] pinctrl: imx8mp: Support building as module
  2020-06-24  6:23 [PATCH V6 0/9] Support i.MX8 SoCs pinctrl drivers built as module Anson Huang
                   ` (4 preceding siblings ...)
  2020-06-24  6:24 ` [PATCH V6 5/9] pinctrl: imx8mq: " Anson Huang
@ 2020-06-24  6:24 ` Anson Huang
  2020-06-24  6:24 ` [PATCH V6 7/9] pinctrl: imx8qxp: " Anson Huang
                   ` (3 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: Anson Huang @ 2020-06-24  6:24 UTC (permalink / raw)
  To: aisheng.dong, festevam, shawnguo, stefan, kernel, linus.walleij,
	s.hauer, linux-gpio, linux-kernel, linux-arm-kernel
  Cc: Linux-imx

Change configuration to "tristate", add module device table,
author, description and license to support building i.MX8MP
pinctrl driver as module.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
---
No change.
---
 drivers/pinctrl/freescale/Kconfig          | 2 +-
 drivers/pinctrl/freescale/pinctrl-imx8mp.c | 6 ++++++
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/drivers/pinctrl/freescale/Kconfig b/drivers/pinctrl/freescale/Kconfig
index df77e752..2bf90b3 100644
--- a/drivers/pinctrl/freescale/Kconfig
+++ b/drivers/pinctrl/freescale/Kconfig
@@ -138,7 +138,7 @@ config PINCTRL_IMX8MN
 	  Say Y here to enable the imx8mn pinctrl driver
 
 config PINCTRL_IMX8MP
-	bool "IMX8MP pinctrl driver"
+	tristate "IMX8MP pinctrl driver"
 	depends on ARCH_MXC
 	select PINCTRL_IMX
 	help
diff --git a/drivers/pinctrl/freescale/pinctrl-imx8mp.c b/drivers/pinctrl/freescale/pinctrl-imx8mp.c
index e3f644c..bf4bbb5 100644
--- a/drivers/pinctrl/freescale/pinctrl-imx8mp.c
+++ b/drivers/pinctrl/freescale/pinctrl-imx8mp.c
@@ -5,6 +5,7 @@
 
 #include <linux/err.h>
 #include <linux/init.h>
+#include <linux/module.h>
 #include <linux/of.h>
 #include <linux/pinctrl/pinctrl.h>
 #include <linux/platform_device.h>
@@ -324,6 +325,7 @@ static const struct of_device_id imx8mp_pinctrl_of_match[] = {
 	{ .compatible = "fsl,imx8mp-iomuxc", .data = &imx8mp_pinctrl_info, },
 	{ /* sentinel */ }
 };
+MODULE_DEVICE_TABLE(of, imx8mp_pinctrl_of_match);
 
 static int imx8mp_pinctrl_probe(struct platform_device *pdev)
 {
@@ -343,3 +345,7 @@ static int __init imx8mp_pinctrl_init(void)
 	return platform_driver_register(&imx8mp_pinctrl_driver);
 }
 arch_initcall(imx8mp_pinctrl_init);
+
+MODULE_AUTHOR("Anson Huang <Anson.Huang@nxp.com>");
+MODULE_DESCRIPTION("NXP i.MX8MP pinctrl driver");
+MODULE_LICENSE("GPL v2");
-- 
2.7.4


^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH V6 7/9] pinctrl: imx8qxp: Support building as module
  2020-06-24  6:23 [PATCH V6 0/9] Support i.MX8 SoCs pinctrl drivers built as module Anson Huang
                   ` (5 preceding siblings ...)
  2020-06-24  6:24 ` [PATCH V6 6/9] pinctrl: imx8mp: " Anson Huang
@ 2020-06-24  6:24 ` Anson Huang
  2020-06-24  6:24 ` [PATCH V6 8/9] pinctrl: imx8qm: " Anson Huang
                   ` (2 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: Anson Huang @ 2020-06-24  6:24 UTC (permalink / raw)
  To: aisheng.dong, festevam, shawnguo, stefan, kernel, linus.walleij,
	s.hauer, linux-gpio, linux-kernel, linux-arm-kernel
  Cc: Linux-imx

Change configuration to "tristate", add module device table,
author, description and license to support building i.MX8QXP
pinctrl driver as module.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
---
No change.
---
 drivers/pinctrl/freescale/Kconfig           | 2 +-
 drivers/pinctrl/freescale/pinctrl-imx8qxp.c | 5 +++++
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/drivers/pinctrl/freescale/Kconfig b/drivers/pinctrl/freescale/Kconfig
index 2bf90b3..0a728bb 100644
--- a/drivers/pinctrl/freescale/Kconfig
+++ b/drivers/pinctrl/freescale/Kconfig
@@ -159,7 +159,7 @@ config PINCTRL_IMX8QM
 	  Say Y here to enable the imx8qm pinctrl driver
 
 config PINCTRL_IMX8QXP
-	bool "IMX8QXP pinctrl driver"
+	tristate "IMX8QXP pinctrl driver"
 	depends on IMX_SCU && ARCH_MXC && ARM64
 	select PINCTRL_IMX_SCU
 	help
diff --git a/drivers/pinctrl/freescale/pinctrl-imx8qxp.c b/drivers/pinctrl/freescale/pinctrl-imx8qxp.c
index 1131dc3..81ebd4c 100644
--- a/drivers/pinctrl/freescale/pinctrl-imx8qxp.c
+++ b/drivers/pinctrl/freescale/pinctrl-imx8qxp.c
@@ -204,6 +204,7 @@ static const struct of_device_id imx8qxp_pinctrl_of_match[] = {
 	{ .compatible = "fsl,imx8qxp-iomuxc", },
 	{ /* sentinel */ }
 };
+MODULE_DEVICE_TABLE(of, imx8qxp_pinctrl_of_match);
 
 static int imx8qxp_pinctrl_probe(struct platform_device *pdev)
 {
@@ -230,3 +231,7 @@ static int __init imx8qxp_pinctrl_init(void)
 	return platform_driver_register(&imx8qxp_pinctrl_driver);
 }
 arch_initcall(imx8qxp_pinctrl_init);
+
+MODULE_AUTHOR("Aisheng Dong <aisheng.dong@nxp.com>");
+MODULE_DESCRIPTION("NXP i.MX8QXP pinctrl driver");
+MODULE_LICENSE("GPL v2");
-- 
2.7.4


^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH V6 8/9] pinctrl: imx8qm: Support building as module
  2020-06-24  6:23 [PATCH V6 0/9] Support i.MX8 SoCs pinctrl drivers built as module Anson Huang
                   ` (6 preceding siblings ...)
  2020-06-24  6:24 ` [PATCH V6 7/9] pinctrl: imx8qxp: " Anson Huang
@ 2020-06-24  6:24 ` Anson Huang
  2020-06-24  6:24 ` [PATCH V6 9/9] pinctrl: imx8dxl: " Anson Huang
  2020-06-24  7:18 ` [PATCH V6 0/9] Support i.MX8 SoCs pinctrl drivers built " Aisheng Dong
  9 siblings, 0 replies; 11+ messages in thread
From: Anson Huang @ 2020-06-24  6:24 UTC (permalink / raw)
  To: aisheng.dong, festevam, shawnguo, stefan, kernel, linus.walleij,
	s.hauer, linux-gpio, linux-kernel, linux-arm-kernel
  Cc: Linux-imx

Change configuration to "tristate", add module device table,
author, description and license to support building i.MX8QM
pinctrl driver as module.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
---
No change.
---
 drivers/pinctrl/freescale/Kconfig          | 2 +-
 drivers/pinctrl/freescale/pinctrl-imx8qm.c | 5 +++++
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/drivers/pinctrl/freescale/Kconfig b/drivers/pinctrl/freescale/Kconfig
index 0a728bb..d9fb5f2 100644
--- a/drivers/pinctrl/freescale/Kconfig
+++ b/drivers/pinctrl/freescale/Kconfig
@@ -152,7 +152,7 @@ config PINCTRL_IMX8MQ
 	  Say Y here to enable the imx8mq pinctrl driver
 
 config PINCTRL_IMX8QM
-	bool "IMX8QM pinctrl driver"
+	tristate "IMX8QM pinctrl driver"
 	depends on IMX_SCU && ARCH_MXC && ARM64
 	select PINCTRL_IMX_SCU
 	help
diff --git a/drivers/pinctrl/freescale/pinctrl-imx8qm.c b/drivers/pinctrl/freescale/pinctrl-imx8qm.c
index 0b6029b..095acf4 100644
--- a/drivers/pinctrl/freescale/pinctrl-imx8qm.c
+++ b/drivers/pinctrl/freescale/pinctrl-imx8qm.c
@@ -298,6 +298,7 @@ static const struct of_device_id imx8qm_pinctrl_of_match[] = {
 	{ .compatible = "fsl,imx8qm-iomuxc", },
 	{ /* sentinel */ }
 };
+MODULE_DEVICE_TABLE(of, imx8qm_pinctrl_of_match);
 
 static int imx8qm_pinctrl_probe(struct platform_device *pdev)
 {
@@ -324,3 +325,7 @@ static int __init imx8qm_pinctrl_init(void)
 	return platform_driver_register(&imx8qm_pinctrl_driver);
 }
 arch_initcall(imx8qm_pinctrl_init);
+
+MODULE_AUTHOR("Aisheng Dong <aisheng.dong@nxp.com>");
+MODULE_DESCRIPTION("NXP i.MX8QM pinctrl driver");
+MODULE_LICENSE("GPL v2");
-- 
2.7.4


^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH V6 9/9] pinctrl: imx8dxl: Support building as module
  2020-06-24  6:23 [PATCH V6 0/9] Support i.MX8 SoCs pinctrl drivers built as module Anson Huang
                   ` (7 preceding siblings ...)
  2020-06-24  6:24 ` [PATCH V6 8/9] pinctrl: imx8qm: " Anson Huang
@ 2020-06-24  6:24 ` Anson Huang
  2020-06-24  7:18 ` [PATCH V6 0/9] Support i.MX8 SoCs pinctrl drivers built " Aisheng Dong
  9 siblings, 0 replies; 11+ messages in thread
From: Anson Huang @ 2020-06-24  6:24 UTC (permalink / raw)
  To: aisheng.dong, festevam, shawnguo, stefan, kernel, linus.walleij,
	s.hauer, linux-gpio, linux-kernel, linux-arm-kernel
  Cc: Linux-imx

Change configuration to "tristate", add module device table,
author, description and license to support building i.MX8DXL
pinctrl driver as module.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
---
No change.
---
 drivers/pinctrl/freescale/Kconfig           | 2 +-
 drivers/pinctrl/freescale/pinctrl-imx8dxl.c | 5 +++++
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/drivers/pinctrl/freescale/Kconfig b/drivers/pinctrl/freescale/Kconfig
index d9fb5f2..08fcf5c 100644
--- a/drivers/pinctrl/freescale/Kconfig
+++ b/drivers/pinctrl/freescale/Kconfig
@@ -166,7 +166,7 @@ config PINCTRL_IMX8QXP
 	  Say Y here to enable the imx8qxp pinctrl driver
 
 config PINCTRL_IMX8DXL
-	bool "IMX8DXL pinctrl driver"
+	tristate "IMX8DXL pinctrl driver"
 	depends on IMX_SCU && ARCH_MXC && ARM64
 	select PINCTRL_IMX_SCU
 	help
diff --git a/drivers/pinctrl/freescale/pinctrl-imx8dxl.c b/drivers/pinctrl/freescale/pinctrl-imx8dxl.c
index 7f32e57..12b97da 100644
--- a/drivers/pinctrl/freescale/pinctrl-imx8dxl.c
+++ b/drivers/pinctrl/freescale/pinctrl-imx8dxl.c
@@ -165,6 +165,7 @@ static const struct of_device_id imx8dxl_pinctrl_of_match[] = {
 	{ .compatible = "fsl,imx8dxl-iomuxc", },
 	{ /* sentinel */ }
 };
+MODULE_DEVICE_TABLE(of, imx8dxl_pinctrl_of_match);
 
 static int imx8dxl_pinctrl_probe(struct platform_device *pdev)
 {
@@ -191,3 +192,7 @@ static int __init imx8dxl_pinctrl_init(void)
 	return platform_driver_register(&imx8dxl_pinctrl_driver);
 }
 arch_initcall(imx8dxl_pinctrl_init);
+
+MODULE_AUTHOR("Anson Huang <Anson.Huang@nxp.com>");
+MODULE_DESCRIPTION("NXP i.MX8DXL pinctrl driver");
+MODULE_LICENSE("GPL v2");
-- 
2.7.4


^ permalink raw reply	[flat|nested] 11+ messages in thread

* RE: [PATCH V6 0/9] Support i.MX8 SoCs pinctrl drivers built as module
  2020-06-24  6:23 [PATCH V6 0/9] Support i.MX8 SoCs pinctrl drivers built as module Anson Huang
                   ` (8 preceding siblings ...)
  2020-06-24  6:24 ` [PATCH V6 9/9] pinctrl: imx8dxl: " Anson Huang
@ 2020-06-24  7:18 ` Aisheng Dong
  9 siblings, 0 replies; 11+ messages in thread
From: Aisheng Dong @ 2020-06-24  7:18 UTC (permalink / raw)
  To: Anson Huang, festevam, shawnguo, stefan, kernel, linus.walleij,
	s.hauer, linux-gpio, linux-kernel, linux-arm-kernel
  Cc: dl-linux-imx

> From: Anson Huang <Anson.Huang@nxp.com>
> Sent: Wednesday, June 24, 2020 2:24 PM
> 
> There are more and mroe requirements that SoC specific modules should be
> built as module in order to support generic kernel image, such as Android GKI
> concept.
> 
> This patch series supports i.MX8 SoCs pinctrl drivers to be built as module,
> including i.MX8MQ/MM/MN/MP/QXP/QM/DXL SoCs, i.MX common pinctrl
> driver and i.MX SCU common pinctrl driver as still built-in.
> 
> Compared to V5, the changes are as below:
>         - Keep i.MX common pinctrl libary built in, ONLY i.MX SoC pinctrl
> driver
>           support built as module.
> 
> Anson Huang (9):
>   pinctrl: imx: Support i.MX8 SoCs pinctrl driver built as module
>   pinctrl: imx: scu: Support i.MX8 SCU SoCs pinctrl driver built as
>     module
>   pinctrl: imx8mm: Support building as module
>   pinctrl: imx8mn: Support building as module
>   pinctrl: imx8mq: Support building as module
>   pinctrl: imx8mp: Support building as module
>   pinctrl: imx8qxp: Support building as module
>   pinctrl: imx8qm: Support building as module
>   pinctrl: imx8dxl: Support building as module

For this patch series:
Reviewed-by: Dong Aisheng <aisheng.dong@nxp.com>

Regards
Aisheng

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, back to index

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-06-24  6:23 [PATCH V6 0/9] Support i.MX8 SoCs pinctrl drivers built as module Anson Huang
2020-06-24  6:23 ` [PATCH V6 1/9] pinctrl: imx: Support i.MX8 SoCs pinctrl driver " Anson Huang
2020-06-24  6:23 ` [PATCH V6 2/9] pinctrl: imx: scu: Support i.MX8 SCU " Anson Huang
2020-06-24  6:23 ` [PATCH V6 3/9] pinctrl: imx8mm: Support building " Anson Huang
2020-06-24  6:23 ` [PATCH V6 4/9] pinctrl: imx8mn: " Anson Huang
2020-06-24  6:24 ` [PATCH V6 5/9] pinctrl: imx8mq: " Anson Huang
2020-06-24  6:24 ` [PATCH V6 6/9] pinctrl: imx8mp: " Anson Huang
2020-06-24  6:24 ` [PATCH V6 7/9] pinctrl: imx8qxp: " Anson Huang
2020-06-24  6:24 ` [PATCH V6 8/9] pinctrl: imx8qm: " Anson Huang
2020-06-24  6:24 ` [PATCH V6 9/9] pinctrl: imx8dxl: " Anson Huang
2020-06-24  7:18 ` [PATCH V6 0/9] Support i.MX8 SoCs pinctrl drivers built " Aisheng Dong

Linux-GPIO Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linux-gpio/0 linux-gpio/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-gpio linux-gpio/ https://lore.kernel.org/linux-gpio \
		linux-gpio@vger.kernel.org
	public-inbox-index linux-gpio

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.linux-gpio


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git