* [PATCH v3 00/17] pinctrl: intel: Use NOIRQ PM helper
@ 2023-10-30 12:07 Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 01/17] pinctrl: intel: Provide Intel pin control wide PM ops structure Andy Shevchenko
` (18 more replies)
0 siblings, 19 replies; 24+ messages in thread
From: Andy Shevchenko @ 2023-10-30 12:07 UTC (permalink / raw)
To: Andy Shevchenko, Mika Westerberg, linux-gpio, linux-kernel
Cc: Andy Shevchenko, Linus Walleij, Paul Cercueil, Jonathan Cameron
Intel pin control drivers use NOIRQ variant of the PM callbacks.
To make them smaller and less error prone against different
kernel configurations (with possible defined but not used variables)
switch to use NOIRQ PM helper.
Changelog v3:
- dropped applied patches
- dropped MediaTek patch for now
- split Intel patch to the series using suggection by Paul
Changelog v2:
- rewritten commit message in patch 1 (Rafael)
- converted non-Intel pin control drivers as well
- added couple of kinda related patches to use pm_ptr()
Andy Shevchenko (17):
pinctrl: intel: Provide Intel pin control wide PM ops structure
pinctrl: alderlake: Switch to use Intel pin control PM ops
pinctrl: broxton: Switch to use Intel pin control PM ops
pinctrl: cannonlake: Switch to use Intel pin control PM ops
pinctrl: cedarfork: Switch to use Intel pin control PM ops
pinctrl: denverton: Switch to use Intel pin control PM ops
pinctrl: elkhartlake: Switch to use Intel pin control PM ops
pinctrl: emmitsburg: Switch to use Intel pin control PM ops
pinctrl: geminilake: Switch to use Intel pin control PM ops
pinctrl: icelake: Switch to use Intel pin control PM ops
pinctrl: jasperlake: Switch to use Intel pin control PM ops
pinctrl: lakefield: Switch to use Intel pin control PM ops
pinctrl: lewisburg: Switch to use Intel pin control PM ops
pinctrl: meteorlake: Switch to use Intel pin control PM ops
pinctrl: sunrisepoint: Switch to use Intel pin control PM ops
pinctrl: tigerlake: Switch to use Intel pin control PM ops
pinctrl: intel: Make PM ops functions static
drivers/pinctrl/intel/pinctrl-alderlake.c | 5 ++---
drivers/pinctrl/intel/pinctrl-broxton.c | 5 ++---
drivers/pinctrl/intel/pinctrl-cannonlake.c | 5 ++---
drivers/pinctrl/intel/pinctrl-cedarfork.c | 5 ++---
drivers/pinctrl/intel/pinctrl-denverton.c | 5 ++---
drivers/pinctrl/intel/pinctrl-elkhartlake.c | 5 ++---
drivers/pinctrl/intel/pinctrl-emmitsburg.c | 5 ++---
drivers/pinctrl/intel/pinctrl-geminilake.c | 5 ++---
drivers/pinctrl/intel/pinctrl-icelake.c | 5 ++---
drivers/pinctrl/intel/pinctrl-intel.c | 14 +++++++-------
drivers/pinctrl/intel/pinctrl-intel.h | 11 +----------
drivers/pinctrl/intel/pinctrl-jasperlake.c | 5 ++---
drivers/pinctrl/intel/pinctrl-lakefield.c | 5 ++---
drivers/pinctrl/intel/pinctrl-lewisburg.c | 5 ++---
drivers/pinctrl/intel/pinctrl-meteorlake.c | 5 ++---
drivers/pinctrl/intel/pinctrl-sunrisepoint.c | 5 ++---
drivers/pinctrl/intel/pinctrl-tigerlake.c | 5 ++---
17 files changed, 38 insertions(+), 62 deletions(-)
--
2.40.0.1.gaa8946217a0b
^ permalink raw reply [flat|nested] 24+ messages in thread
* [PATCH v3 01/17] pinctrl: intel: Provide Intel pin control wide PM ops structure
2023-10-30 12:07 [PATCH v3 00/17] pinctrl: intel: Use NOIRQ PM helper Andy Shevchenko
@ 2023-10-30 12:07 ` Andy Shevchenko
2023-10-30 19:41 ` Jonathan Cameron
2023-10-30 12:07 ` [PATCH v3 02/17] pinctrl: alderlake: Switch to use Intel pin control PM ops Andy Shevchenko
` (17 subsequent siblings)
18 siblings, 1 reply; 24+ messages in thread
From: Andy Shevchenko @ 2023-10-30 12:07 UTC (permalink / raw)
To: Andy Shevchenko, Mika Westerberg, linux-gpio, linux-kernel
Cc: Andy Shevchenko, Linus Walleij, Paul Cercueil, Jonathan Cameron
With the help of EXPORT_NS_GPL_DEV_PM_OPS() and
NOIRQ_SYSTEM_SLEEP_PM_OPS() we may convert PM ops functions to become
static. This also takes into account the PM configuration options such
as CONFIG_PM and CONFIG_PM_SLEEP. Hence the first step is to provide
a generic PM ops structure that can be used by drivers directly.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
drivers/pinctrl/intel/pinctrl-intel.c | 8 +++++---
drivers/pinctrl/intel/pinctrl-intel.h | 4 ++--
2 files changed, 7 insertions(+), 5 deletions(-)
diff --git a/drivers/pinctrl/intel/pinctrl-intel.c b/drivers/pinctrl/intel/pinctrl-intel.c
index b19527a8728e..9fbdc7bfa65c 100644
--- a/drivers/pinctrl/intel/pinctrl-intel.c
+++ b/drivers/pinctrl/intel/pinctrl-intel.c
@@ -899,7 +899,7 @@ static int intel_gpio_to_pin(struct intel_pinctrl *pctrl, unsigned int offset,
*
* Return: a GPIO offset, or negative error code if translation can't be done.
*/
-static __maybe_unused int intel_pin_to_gpio(struct intel_pinctrl *pctrl, int pin)
+static int intel_pin_to_gpio(struct intel_pinctrl *pctrl, int pin)
{
const struct intel_community *community;
const struct intel_padgroup *padgrp;
@@ -1682,7 +1682,6 @@ const struct intel_pinctrl_soc_data *intel_pinctrl_get_soc_data(struct platform_
}
EXPORT_SYMBOL_NS_GPL(intel_pinctrl_get_soc_data, PINCTRL_INTEL);
-#ifdef CONFIG_PM_SLEEP
static bool __intel_gpio_is_direct_irq(u32 value)
{
return (value & PADCFG0_GPIROUTIOXAPIC) && (value & PADCFG0_GPIOTXDIS) &&
@@ -1883,7 +1882,10 @@ int intel_pinctrl_resume_noirq(struct device *dev)
return 0;
}
EXPORT_SYMBOL_GPL(intel_pinctrl_resume_noirq);
-#endif
+
+EXPORT_NS_GPL_DEV_PM_OPS(intel_pinctrl_pm_ops, PINCTRL_INTEL) = {
+ NOIRQ_SYSTEM_SLEEP_PM_OPS(intel_pinctrl_suspend_noirq, intel_pinctrl_resume_noirq)
+};
MODULE_AUTHOR("Mathias Nyman <mathias.nyman@linux.intel.com>");
MODULE_AUTHOR("Mika Westerberg <mika.westerberg@linux.intel.com>");
diff --git a/drivers/pinctrl/intel/pinctrl-intel.h b/drivers/pinctrl/intel/pinctrl-intel.h
index 2bb553598e8b..d3f511f97ed9 100644
--- a/drivers/pinctrl/intel/pinctrl-intel.h
+++ b/drivers/pinctrl/intel/pinctrl-intel.h
@@ -255,10 +255,8 @@ struct intel_pinctrl {
int intel_pinctrl_probe_by_hid(struct platform_device *pdev);
int intel_pinctrl_probe_by_uid(struct platform_device *pdev);
-#ifdef CONFIG_PM_SLEEP
int intel_pinctrl_suspend_noirq(struct device *dev);
int intel_pinctrl_resume_noirq(struct device *dev);
-#endif
#define INTEL_PINCTRL_PM_OPS(_name) \
const struct dev_pm_ops _name = { \
@@ -266,6 +264,8 @@ const struct dev_pm_ops _name = { \
intel_pinctrl_resume_noirq) \
}
+extern const struct dev_pm_ops intel_pinctrl_pm_ops;
+
struct intel_community *intel_get_community(struct intel_pinctrl *pctrl, unsigned int pin);
int intel_get_groups_count(struct pinctrl_dev *pctldev);
--
2.40.0.1.gaa8946217a0b
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [PATCH v3 02/17] pinctrl: alderlake: Switch to use Intel pin control PM ops
2023-10-30 12:07 [PATCH v3 00/17] pinctrl: intel: Use NOIRQ PM helper Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 01/17] pinctrl: intel: Provide Intel pin control wide PM ops structure Andy Shevchenko
@ 2023-10-30 12:07 ` Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 03/17] pinctrl: broxton: " Andy Shevchenko
` (16 subsequent siblings)
18 siblings, 0 replies; 24+ messages in thread
From: Andy Shevchenko @ 2023-10-30 12:07 UTC (permalink / raw)
To: Andy Shevchenko, Mika Westerberg, linux-gpio, linux-kernel
Cc: Andy Shevchenko, Linus Walleij, Paul Cercueil, Jonathan Cameron
The main driver conditionally exports the PM ops structure.
Switch this driver to use it instead of customly wrapped one.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
drivers/pinctrl/intel/pinctrl-alderlake.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/drivers/pinctrl/intel/pinctrl-alderlake.c b/drivers/pinctrl/intel/pinctrl-alderlake.c
index 4a37dc273d63..7d9948e5f422 100644
--- a/drivers/pinctrl/intel/pinctrl-alderlake.c
+++ b/drivers/pinctrl/intel/pinctrl-alderlake.c
@@ -9,6 +9,7 @@
#include <linux/mod_devicetable.h>
#include <linux/module.h>
#include <linux/platform_device.h>
+#include <linux/pm.h>
#include <linux/pinctrl/pinctrl.h>
@@ -733,14 +734,12 @@ static const struct acpi_device_id adl_pinctrl_acpi_match[] = {
};
MODULE_DEVICE_TABLE(acpi, adl_pinctrl_acpi_match);
-static INTEL_PINCTRL_PM_OPS(adl_pinctrl_pm_ops);
-
static struct platform_driver adl_pinctrl_driver = {
.probe = intel_pinctrl_probe_by_hid,
.driver = {
.name = "alderlake-pinctrl",
.acpi_match_table = adl_pinctrl_acpi_match,
- .pm = &adl_pinctrl_pm_ops,
+ .pm = pm_sleep_ptr(&intel_pinctrl_pm_ops),
},
};
module_platform_driver(adl_pinctrl_driver);
--
2.40.0.1.gaa8946217a0b
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [PATCH v3 03/17] pinctrl: broxton: Switch to use Intel pin control PM ops
2023-10-30 12:07 [PATCH v3 00/17] pinctrl: intel: Use NOIRQ PM helper Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 01/17] pinctrl: intel: Provide Intel pin control wide PM ops structure Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 02/17] pinctrl: alderlake: Switch to use Intel pin control PM ops Andy Shevchenko
@ 2023-10-30 12:07 ` Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 04/17] pinctrl: cannonlake: " Andy Shevchenko
` (15 subsequent siblings)
18 siblings, 0 replies; 24+ messages in thread
From: Andy Shevchenko @ 2023-10-30 12:07 UTC (permalink / raw)
To: Andy Shevchenko, Mika Westerberg, linux-gpio, linux-kernel
Cc: Andy Shevchenko, Linus Walleij, Paul Cercueil, Jonathan Cameron
The main driver conditionally exports the PM ops structure.
Switch this driver to use it instead of customly wrapped one.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
drivers/pinctrl/intel/pinctrl-broxton.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/drivers/pinctrl/intel/pinctrl-broxton.c b/drivers/pinctrl/intel/pinctrl-broxton.c
index 3118c7c8842f..d99541676630 100644
--- a/drivers/pinctrl/intel/pinctrl-broxton.c
+++ b/drivers/pinctrl/intel/pinctrl-broxton.c
@@ -9,6 +9,7 @@
#include <linux/mod_devicetable.h>
#include <linux/module.h>
#include <linux/platform_device.h>
+#include <linux/pm.h>
#include <linux/pinctrl/pinctrl.h>
@@ -1000,14 +1001,12 @@ static const struct platform_device_id bxt_pinctrl_platform_ids[] = {
};
MODULE_DEVICE_TABLE(platform, bxt_pinctrl_platform_ids);
-static INTEL_PINCTRL_PM_OPS(bxt_pinctrl_pm_ops);
-
static struct platform_driver bxt_pinctrl_driver = {
.probe = intel_pinctrl_probe_by_uid,
.driver = {
.name = "broxton-pinctrl",
.acpi_match_table = bxt_pinctrl_acpi_match,
- .pm = &bxt_pinctrl_pm_ops,
+ .pm = pm_sleep_ptr(&intel_pinctrl_pm_ops),
},
.id_table = bxt_pinctrl_platform_ids,
};
--
2.40.0.1.gaa8946217a0b
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [PATCH v3 04/17] pinctrl: cannonlake: Switch to use Intel pin control PM ops
2023-10-30 12:07 [PATCH v3 00/17] pinctrl: intel: Use NOIRQ PM helper Andy Shevchenko
` (2 preceding siblings ...)
2023-10-30 12:07 ` [PATCH v3 03/17] pinctrl: broxton: " Andy Shevchenko
@ 2023-10-30 12:07 ` Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 05/17] pinctrl: cedarfork: " Andy Shevchenko
` (14 subsequent siblings)
18 siblings, 0 replies; 24+ messages in thread
From: Andy Shevchenko @ 2023-10-30 12:07 UTC (permalink / raw)
To: Andy Shevchenko, Mika Westerberg, linux-gpio, linux-kernel
Cc: Andy Shevchenko, Linus Walleij, Paul Cercueil, Jonathan Cameron
The main driver conditionally exports the PM ops structure.
Switch this driver to use it instead of customly wrapped one.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
drivers/pinctrl/intel/pinctrl-cannonlake.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/drivers/pinctrl/intel/pinctrl-cannonlake.c b/drivers/pinctrl/intel/pinctrl-cannonlake.c
index 95976abfb785..1aa09f950be1 100644
--- a/drivers/pinctrl/intel/pinctrl-cannonlake.c
+++ b/drivers/pinctrl/intel/pinctrl-cannonlake.c
@@ -10,6 +10,7 @@
#include <linux/mod_devicetable.h>
#include <linux/module.h>
#include <linux/platform_device.h>
+#include <linux/pm.h>
#include <linux/pinctrl/pinctrl.h>
@@ -824,14 +825,12 @@ static const struct acpi_device_id cnl_pinctrl_acpi_match[] = {
};
MODULE_DEVICE_TABLE(acpi, cnl_pinctrl_acpi_match);
-static INTEL_PINCTRL_PM_OPS(cnl_pinctrl_pm_ops);
-
static struct platform_driver cnl_pinctrl_driver = {
.probe = intel_pinctrl_probe_by_hid,
.driver = {
.name = "cannonlake-pinctrl",
.acpi_match_table = cnl_pinctrl_acpi_match,
- .pm = &cnl_pinctrl_pm_ops,
+ .pm = pm_sleep_ptr(&intel_pinctrl_pm_ops),
},
};
module_platform_driver(cnl_pinctrl_driver);
--
2.40.0.1.gaa8946217a0b
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [PATCH v3 05/17] pinctrl: cedarfork: Switch to use Intel pin control PM ops
2023-10-30 12:07 [PATCH v3 00/17] pinctrl: intel: Use NOIRQ PM helper Andy Shevchenko
` (3 preceding siblings ...)
2023-10-30 12:07 ` [PATCH v3 04/17] pinctrl: cannonlake: " Andy Shevchenko
@ 2023-10-30 12:07 ` Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 06/17] pinctrl: denverton: " Andy Shevchenko
` (13 subsequent siblings)
18 siblings, 0 replies; 24+ messages in thread
From: Andy Shevchenko @ 2023-10-30 12:07 UTC (permalink / raw)
To: Andy Shevchenko, Mika Westerberg, linux-gpio, linux-kernel
Cc: Andy Shevchenko, Linus Walleij, Paul Cercueil, Jonathan Cameron
The main driver conditionally exports the PM ops structure.
Switch this driver to use it instead of customly wrapped one.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
drivers/pinctrl/intel/pinctrl-cedarfork.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/drivers/pinctrl/intel/pinctrl-cedarfork.c b/drivers/pinctrl/intel/pinctrl-cedarfork.c
index a20465eb2dc6..48af8930dd1f 100644
--- a/drivers/pinctrl/intel/pinctrl-cedarfork.c
+++ b/drivers/pinctrl/intel/pinctrl-cedarfork.c
@@ -9,6 +9,7 @@
#include <linux/mod_devicetable.h>
#include <linux/module.h>
#include <linux/platform_device.h>
+#include <linux/pm.h>
#include <linux/pinctrl/pinctrl.h>
@@ -319,8 +320,6 @@ static const struct intel_pinctrl_soc_data cdf_soc_data = {
.ncommunities = ARRAY_SIZE(cdf_communities),
};
-static INTEL_PINCTRL_PM_OPS(cdf_pinctrl_pm_ops);
-
static const struct acpi_device_id cdf_pinctrl_acpi_match[] = {
{ "INTC3001", (kernel_ulong_t)&cdf_soc_data },
{ }
@@ -332,7 +331,7 @@ static struct platform_driver cdf_pinctrl_driver = {
.driver = {
.name = "cedarfork-pinctrl",
.acpi_match_table = cdf_pinctrl_acpi_match,
- .pm = &cdf_pinctrl_pm_ops,
+ .pm = pm_sleep_ptr(&intel_pinctrl_pm_ops),
},
};
--
2.40.0.1.gaa8946217a0b
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [PATCH v3 06/17] pinctrl: denverton: Switch to use Intel pin control PM ops
2023-10-30 12:07 [PATCH v3 00/17] pinctrl: intel: Use NOIRQ PM helper Andy Shevchenko
` (4 preceding siblings ...)
2023-10-30 12:07 ` [PATCH v3 05/17] pinctrl: cedarfork: " Andy Shevchenko
@ 2023-10-30 12:07 ` Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 07/17] pinctrl: elkhartlake: " Andy Shevchenko
` (12 subsequent siblings)
18 siblings, 0 replies; 24+ messages in thread
From: Andy Shevchenko @ 2023-10-30 12:07 UTC (permalink / raw)
To: Andy Shevchenko, Mika Westerberg, linux-gpio, linux-kernel
Cc: Andy Shevchenko, Linus Walleij, Paul Cercueil, Jonathan Cameron
The main driver conditionally exports the PM ops structure.
Switch this driver to use it instead of customly wrapped one.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
drivers/pinctrl/intel/pinctrl-denverton.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/drivers/pinctrl/intel/pinctrl-denverton.c b/drivers/pinctrl/intel/pinctrl-denverton.c
index 562a4f9188e4..666507f54f27 100644
--- a/drivers/pinctrl/intel/pinctrl-denverton.c
+++ b/drivers/pinctrl/intel/pinctrl-denverton.c
@@ -9,6 +9,7 @@
#include <linux/mod_devicetable.h>
#include <linux/module.h>
#include <linux/platform_device.h>
+#include <linux/pm.h>
#include <linux/pinctrl/pinctrl.h>
@@ -249,8 +250,6 @@ static const struct intel_pinctrl_soc_data dnv_soc_data = {
.ncommunities = ARRAY_SIZE(dnv_communities),
};
-static INTEL_PINCTRL_PM_OPS(dnv_pinctrl_pm_ops);
-
static const struct acpi_device_id dnv_pinctrl_acpi_match[] = {
{ "INTC3000", (kernel_ulong_t)&dnv_soc_data },
{ }
@@ -268,7 +267,7 @@ static struct platform_driver dnv_pinctrl_driver = {
.driver = {
.name = "denverton-pinctrl",
.acpi_match_table = dnv_pinctrl_acpi_match,
- .pm = &dnv_pinctrl_pm_ops,
+ .pm = pm_sleep_ptr(&intel_pinctrl_pm_ops),
},
.id_table = dnv_pinctrl_platform_ids,
};
--
2.40.0.1.gaa8946217a0b
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [PATCH v3 07/17] pinctrl: elkhartlake: Switch to use Intel pin control PM ops
2023-10-30 12:07 [PATCH v3 00/17] pinctrl: intel: Use NOIRQ PM helper Andy Shevchenko
` (5 preceding siblings ...)
2023-10-30 12:07 ` [PATCH v3 06/17] pinctrl: denverton: " Andy Shevchenko
@ 2023-10-30 12:07 ` Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 08/17] pinctrl: emmitsburg: " Andy Shevchenko
` (11 subsequent siblings)
18 siblings, 0 replies; 24+ messages in thread
From: Andy Shevchenko @ 2023-10-30 12:07 UTC (permalink / raw)
To: Andy Shevchenko, Mika Westerberg, linux-gpio, linux-kernel
Cc: Andy Shevchenko, Linus Walleij, Paul Cercueil, Jonathan Cameron
The main driver conditionally exports the PM ops structure.
Switch this driver to use it instead of customly wrapped one.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
drivers/pinctrl/intel/pinctrl-elkhartlake.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/drivers/pinctrl/intel/pinctrl-elkhartlake.c b/drivers/pinctrl/intel/pinctrl-elkhartlake.c
index 81581ab85316..1678634ebc06 100644
--- a/drivers/pinctrl/intel/pinctrl-elkhartlake.c
+++ b/drivers/pinctrl/intel/pinctrl-elkhartlake.c
@@ -9,6 +9,7 @@
#include <linux/mod_devicetable.h>
#include <linux/module.h>
#include <linux/platform_device.h>
+#include <linux/pm.h>
#include <linux/pinctrl/pinctrl.h>
@@ -485,14 +486,12 @@ static const struct acpi_device_id ehl_pinctrl_acpi_match[] = {
};
MODULE_DEVICE_TABLE(acpi, ehl_pinctrl_acpi_match);
-static INTEL_PINCTRL_PM_OPS(ehl_pinctrl_pm_ops);
-
static struct platform_driver ehl_pinctrl_driver = {
.probe = intel_pinctrl_probe_by_uid,
.driver = {
.name = "elkhartlake-pinctrl",
.acpi_match_table = ehl_pinctrl_acpi_match,
- .pm = &ehl_pinctrl_pm_ops,
+ .pm = pm_sleep_ptr(&intel_pinctrl_pm_ops),
},
};
module_platform_driver(ehl_pinctrl_driver);
--
2.40.0.1.gaa8946217a0b
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [PATCH v3 08/17] pinctrl: emmitsburg: Switch to use Intel pin control PM ops
2023-10-30 12:07 [PATCH v3 00/17] pinctrl: intel: Use NOIRQ PM helper Andy Shevchenko
` (6 preceding siblings ...)
2023-10-30 12:07 ` [PATCH v3 07/17] pinctrl: elkhartlake: " Andy Shevchenko
@ 2023-10-30 12:07 ` Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 09/17] pinctrl: geminilake: " Andy Shevchenko
` (10 subsequent siblings)
18 siblings, 0 replies; 24+ messages in thread
From: Andy Shevchenko @ 2023-10-30 12:07 UTC (permalink / raw)
To: Andy Shevchenko, Mika Westerberg, linux-gpio, linux-kernel
Cc: Andy Shevchenko, Linus Walleij, Paul Cercueil, Jonathan Cameron
The main driver conditionally exports the PM ops structure.
Switch this driver to use it instead of customly wrapped one.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
drivers/pinctrl/intel/pinctrl-emmitsburg.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/drivers/pinctrl/intel/pinctrl-emmitsburg.c b/drivers/pinctrl/intel/pinctrl-emmitsburg.c
index 099ec8351d5f..e4798d32492c 100644
--- a/drivers/pinctrl/intel/pinctrl-emmitsburg.c
+++ b/drivers/pinctrl/intel/pinctrl-emmitsburg.c
@@ -9,6 +9,7 @@
#include <linux/mod_devicetable.h>
#include <linux/module.h>
#include <linux/platform_device.h>
+#include <linux/pm.h>
#include <linux/pinctrl/pinctrl.h>
@@ -358,14 +359,12 @@ static const struct acpi_device_id ebg_pinctrl_acpi_match[] = {
};
MODULE_DEVICE_TABLE(acpi, ebg_pinctrl_acpi_match);
-static INTEL_PINCTRL_PM_OPS(ebg_pinctrl_pm_ops);
-
static struct platform_driver ebg_pinctrl_driver = {
.probe = intel_pinctrl_probe_by_hid,
.driver = {
.name = "emmitsburg-pinctrl",
.acpi_match_table = ebg_pinctrl_acpi_match,
- .pm = &ebg_pinctrl_pm_ops,
+ .pm = pm_sleep_ptr(&intel_pinctrl_pm_ops),
},
};
module_platform_driver(ebg_pinctrl_driver);
--
2.40.0.1.gaa8946217a0b
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [PATCH v3 09/17] pinctrl: geminilake: Switch to use Intel pin control PM ops
2023-10-30 12:07 [PATCH v3 00/17] pinctrl: intel: Use NOIRQ PM helper Andy Shevchenko
` (7 preceding siblings ...)
2023-10-30 12:07 ` [PATCH v3 08/17] pinctrl: emmitsburg: " Andy Shevchenko
@ 2023-10-30 12:07 ` Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 10/17] pinctrl: icelake: " Andy Shevchenko
` (9 subsequent siblings)
18 siblings, 0 replies; 24+ messages in thread
From: Andy Shevchenko @ 2023-10-30 12:07 UTC (permalink / raw)
To: Andy Shevchenko, Mika Westerberg, linux-gpio, linux-kernel
Cc: Andy Shevchenko, Linus Walleij, Paul Cercueil, Jonathan Cameron
The main driver conditionally exports the PM ops structure.
Switch this driver to use it instead of customly wrapped one.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
drivers/pinctrl/intel/pinctrl-geminilake.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/drivers/pinctrl/intel/pinctrl-geminilake.c b/drivers/pinctrl/intel/pinctrl-geminilake.c
index 9effa06b61e9..6dcf0ac2059f 100644
--- a/drivers/pinctrl/intel/pinctrl-geminilake.c
+++ b/drivers/pinctrl/intel/pinctrl-geminilake.c
@@ -9,6 +9,7 @@
#include <linux/mod_devicetable.h>
#include <linux/module.h>
#include <linux/platform_device.h>
+#include <linux/pm.h>
#include <linux/pinctrl/pinctrl.h>
@@ -447,14 +448,12 @@ static const struct acpi_device_id glk_pinctrl_acpi_match[] = {
};
MODULE_DEVICE_TABLE(acpi, glk_pinctrl_acpi_match);
-static INTEL_PINCTRL_PM_OPS(glk_pinctrl_pm_ops);
-
static struct platform_driver glk_pinctrl_driver = {
.probe = intel_pinctrl_probe_by_uid,
.driver = {
.name = "geminilake-pinctrl",
.acpi_match_table = glk_pinctrl_acpi_match,
- .pm = &glk_pinctrl_pm_ops,
+ .pm = pm_sleep_ptr(&intel_pinctrl_pm_ops),
},
};
--
2.40.0.1.gaa8946217a0b
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [PATCH v3 10/17] pinctrl: icelake: Switch to use Intel pin control PM ops
2023-10-30 12:07 [PATCH v3 00/17] pinctrl: intel: Use NOIRQ PM helper Andy Shevchenko
` (8 preceding siblings ...)
2023-10-30 12:07 ` [PATCH v3 09/17] pinctrl: geminilake: " Andy Shevchenko
@ 2023-10-30 12:07 ` Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 11/17] pinctrl: jasperlake: " Andy Shevchenko
` (8 subsequent siblings)
18 siblings, 0 replies; 24+ messages in thread
From: Andy Shevchenko @ 2023-10-30 12:07 UTC (permalink / raw)
To: Andy Shevchenko, Mika Westerberg, linux-gpio, linux-kernel
Cc: Andy Shevchenko, Linus Walleij, Paul Cercueil, Jonathan Cameron
The main driver conditionally exports the PM ops structure.
Switch this driver to use it instead of customly wrapped one.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
drivers/pinctrl/intel/pinctrl-icelake.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/drivers/pinctrl/intel/pinctrl-icelake.c b/drivers/pinctrl/intel/pinctrl-icelake.c
index 300e1538c8d0..fe3042de891a 100644
--- a/drivers/pinctrl/intel/pinctrl-icelake.c
+++ b/drivers/pinctrl/intel/pinctrl-icelake.c
@@ -10,6 +10,7 @@
#include <linux/acpi.h>
#include <linux/module.h>
#include <linux/platform_device.h>
+#include <linux/pm.h>
#include <linux/pinctrl/pinctrl.h>
@@ -668,8 +669,6 @@ static const struct intel_pinctrl_soc_data icln_soc_data = {
.ncommunities = ARRAY_SIZE(icln_communities),
};
-static INTEL_PINCTRL_PM_OPS(icl_pinctrl_pm_ops);
-
static const struct acpi_device_id icl_pinctrl_acpi_match[] = {
{ "INT3455", (kernel_ulong_t)&icllp_soc_data },
{ "INT34C3", (kernel_ulong_t)&icln_soc_data },
@@ -682,7 +681,7 @@ static struct platform_driver icl_pinctrl_driver = {
.driver = {
.name = "icelake-pinctrl",
.acpi_match_table = icl_pinctrl_acpi_match,
- .pm = &icl_pinctrl_pm_ops,
+ .pm = pm_sleep_ptr(&intel_pinctrl_pm_ops),
},
};
module_platform_driver(icl_pinctrl_driver);
--
2.40.0.1.gaa8946217a0b
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [PATCH v3 11/17] pinctrl: jasperlake: Switch to use Intel pin control PM ops
2023-10-30 12:07 [PATCH v3 00/17] pinctrl: intel: Use NOIRQ PM helper Andy Shevchenko
` (9 preceding siblings ...)
2023-10-30 12:07 ` [PATCH v3 10/17] pinctrl: icelake: " Andy Shevchenko
@ 2023-10-30 12:07 ` Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 12/17] pinctrl: lakefield: " Andy Shevchenko
` (7 subsequent siblings)
18 siblings, 0 replies; 24+ messages in thread
From: Andy Shevchenko @ 2023-10-30 12:07 UTC (permalink / raw)
To: Andy Shevchenko, Mika Westerberg, linux-gpio, linux-kernel
Cc: Andy Shevchenko, Linus Walleij, Paul Cercueil, Jonathan Cameron
The main driver conditionally exports the PM ops structure.
Switch this driver to use it instead of customly wrapped one.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
drivers/pinctrl/intel/pinctrl-jasperlake.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/drivers/pinctrl/intel/pinctrl-jasperlake.c b/drivers/pinctrl/intel/pinctrl-jasperlake.c
index 50f137deed9c..3525480428ea 100644
--- a/drivers/pinctrl/intel/pinctrl-jasperlake.c
+++ b/drivers/pinctrl/intel/pinctrl-jasperlake.c
@@ -9,6 +9,7 @@
#include <linux/mod_devicetable.h>
#include <linux/module.h>
#include <linux/platform_device.h>
+#include <linux/pm.h>
#include <linux/pinctrl/pinctrl.h>
@@ -326,14 +327,12 @@ static const struct acpi_device_id jsl_pinctrl_acpi_match[] = {
};
MODULE_DEVICE_TABLE(acpi, jsl_pinctrl_acpi_match);
-static INTEL_PINCTRL_PM_OPS(jsl_pinctrl_pm_ops);
-
static struct platform_driver jsl_pinctrl_driver = {
.probe = intel_pinctrl_probe_by_hid,
.driver = {
.name = "jasperlake-pinctrl",
.acpi_match_table = jsl_pinctrl_acpi_match,
- .pm = &jsl_pinctrl_pm_ops,
+ .pm = pm_sleep_ptr(&intel_pinctrl_pm_ops),
},
};
module_platform_driver(jsl_pinctrl_driver);
--
2.40.0.1.gaa8946217a0b
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [PATCH v3 12/17] pinctrl: lakefield: Switch to use Intel pin control PM ops
2023-10-30 12:07 [PATCH v3 00/17] pinctrl: intel: Use NOIRQ PM helper Andy Shevchenko
` (10 preceding siblings ...)
2023-10-30 12:07 ` [PATCH v3 11/17] pinctrl: jasperlake: " Andy Shevchenko
@ 2023-10-30 12:07 ` Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 13/17] pinctrl: lewisburg: " Andy Shevchenko
` (6 subsequent siblings)
18 siblings, 0 replies; 24+ messages in thread
From: Andy Shevchenko @ 2023-10-30 12:07 UTC (permalink / raw)
To: Andy Shevchenko, Mika Westerberg, linux-gpio, linux-kernel
Cc: Andy Shevchenko, Linus Walleij, Paul Cercueil, Jonathan Cameron
The main driver conditionally exports the PM ops structure.
Switch this driver to use it instead of customly wrapped one.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
drivers/pinctrl/intel/pinctrl-lakefield.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/drivers/pinctrl/intel/pinctrl-lakefield.c b/drivers/pinctrl/intel/pinctrl-lakefield.c
index 0b94e11b78ac..adef85db82ca 100644
--- a/drivers/pinctrl/intel/pinctrl-lakefield.c
+++ b/drivers/pinctrl/intel/pinctrl-lakefield.c
@@ -9,6 +9,7 @@
#include <linux/mod_devicetable.h>
#include <linux/module.h>
#include <linux/platform_device.h>
+#include <linux/pm.h>
#include <linux/pinctrl/pinctrl.h>
@@ -347,14 +348,12 @@ static const struct acpi_device_id lkf_pinctrl_acpi_match[] = {
};
MODULE_DEVICE_TABLE(acpi, lkf_pinctrl_acpi_match);
-static INTEL_PINCTRL_PM_OPS(lkf_pinctrl_pm_ops);
-
static struct platform_driver lkf_pinctrl_driver = {
.probe = intel_pinctrl_probe_by_hid,
.driver = {
.name = "lakefield-pinctrl",
.acpi_match_table = lkf_pinctrl_acpi_match,
- .pm = &lkf_pinctrl_pm_ops,
+ .pm = pm_sleep_ptr(&intel_pinctrl_pm_ops),
},
};
module_platform_driver(lkf_pinctrl_driver);
--
2.40.0.1.gaa8946217a0b
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [PATCH v3 13/17] pinctrl: lewisburg: Switch to use Intel pin control PM ops
2023-10-30 12:07 [PATCH v3 00/17] pinctrl: intel: Use NOIRQ PM helper Andy Shevchenko
` (11 preceding siblings ...)
2023-10-30 12:07 ` [PATCH v3 12/17] pinctrl: lakefield: " Andy Shevchenko
@ 2023-10-30 12:07 ` Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 14/17] pinctrl: meteorlake: " Andy Shevchenko
` (5 subsequent siblings)
18 siblings, 0 replies; 24+ messages in thread
From: Andy Shevchenko @ 2023-10-30 12:07 UTC (permalink / raw)
To: Andy Shevchenko, Mika Westerberg, linux-gpio, linux-kernel
Cc: Andy Shevchenko, Linus Walleij, Paul Cercueil, Jonathan Cameron
The main driver conditionally exports the PM ops structure.
Switch this driver to use it instead of customly wrapped one.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
drivers/pinctrl/intel/pinctrl-lewisburg.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/drivers/pinctrl/intel/pinctrl-lewisburg.c b/drivers/pinctrl/intel/pinctrl-lewisburg.c
index aa725a5d62b9..a304d30ea9ed 100644
--- a/drivers/pinctrl/intel/pinctrl-lewisburg.c
+++ b/drivers/pinctrl/intel/pinctrl-lewisburg.c
@@ -9,6 +9,7 @@
#include <linux/mod_devicetable.h>
#include <linux/module.h>
#include <linux/platform_device.h>
+#include <linux/pm.h>
#include <linux/pinctrl/pinctrl.h>
@@ -301,8 +302,6 @@ static const struct intel_pinctrl_soc_data lbg_soc_data = {
.ncommunities = ARRAY_SIZE(lbg_communities),
};
-static INTEL_PINCTRL_PM_OPS(lbg_pinctrl_pm_ops);
-
static const struct acpi_device_id lbg_pinctrl_acpi_match[] = {
{ "INT3536", (kernel_ulong_t)&lbg_soc_data },
{ }
@@ -314,7 +313,7 @@ static struct platform_driver lbg_pinctrl_driver = {
.driver = {
.name = "lewisburg-pinctrl",
.acpi_match_table = lbg_pinctrl_acpi_match,
- .pm = &lbg_pinctrl_pm_ops,
+ .pm = pm_sleep_ptr(&intel_pinctrl_pm_ops),
},
};
module_platform_driver(lbg_pinctrl_driver);
--
2.40.0.1.gaa8946217a0b
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [PATCH v3 14/17] pinctrl: meteorlake: Switch to use Intel pin control PM ops
2023-10-30 12:07 [PATCH v3 00/17] pinctrl: intel: Use NOIRQ PM helper Andy Shevchenko
` (12 preceding siblings ...)
2023-10-30 12:07 ` [PATCH v3 13/17] pinctrl: lewisburg: " Andy Shevchenko
@ 2023-10-30 12:07 ` Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 15/17] pinctrl: sunrisepoint: " Andy Shevchenko
` (4 subsequent siblings)
18 siblings, 0 replies; 24+ messages in thread
From: Andy Shevchenko @ 2023-10-30 12:07 UTC (permalink / raw)
To: Andy Shevchenko, Mika Westerberg, linux-gpio, linux-kernel
Cc: Andy Shevchenko, Linus Walleij, Paul Cercueil, Jonathan Cameron
The main driver conditionally exports the PM ops structure.
Switch this driver to use it instead of customly wrapped one.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
drivers/pinctrl/intel/pinctrl-meteorlake.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/drivers/pinctrl/intel/pinctrl-meteorlake.c b/drivers/pinctrl/intel/pinctrl-meteorlake.c
index 7ced2b402dce..cc44890c6699 100644
--- a/drivers/pinctrl/intel/pinctrl-meteorlake.c
+++ b/drivers/pinctrl/intel/pinctrl-meteorlake.c
@@ -9,6 +9,7 @@
#include <linux/mod_devicetable.h>
#include <linux/module.h>
#include <linux/platform_device.h>
+#include <linux/pm.h>
#include <linux/pinctrl/pinctrl.h>
@@ -589,14 +590,12 @@ static const struct acpi_device_id mtl_pinctrl_acpi_match[] = {
};
MODULE_DEVICE_TABLE(acpi, mtl_pinctrl_acpi_match);
-static INTEL_PINCTRL_PM_OPS(mtl_pinctrl_pm_ops);
-
static struct platform_driver mtl_pinctrl_driver = {
.probe = intel_pinctrl_probe_by_hid,
.driver = {
.name = "meteorlake-pinctrl",
.acpi_match_table = mtl_pinctrl_acpi_match,
- .pm = &mtl_pinctrl_pm_ops,
+ .pm = pm_sleep_ptr(&intel_pinctrl_pm_ops),
},
};
module_platform_driver(mtl_pinctrl_driver);
--
2.40.0.1.gaa8946217a0b
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [PATCH v3 15/17] pinctrl: sunrisepoint: Switch to use Intel pin control PM ops
2023-10-30 12:07 [PATCH v3 00/17] pinctrl: intel: Use NOIRQ PM helper Andy Shevchenko
` (13 preceding siblings ...)
2023-10-30 12:07 ` [PATCH v3 14/17] pinctrl: meteorlake: " Andy Shevchenko
@ 2023-10-30 12:07 ` Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 16/17] pinctrl: tigerlake: " Andy Shevchenko
` (3 subsequent siblings)
18 siblings, 0 replies; 24+ messages in thread
From: Andy Shevchenko @ 2023-10-30 12:07 UTC (permalink / raw)
To: Andy Shevchenko, Mika Westerberg, linux-gpio, linux-kernel
Cc: Andy Shevchenko, Linus Walleij, Paul Cercueil, Jonathan Cameron
The main driver conditionally exports the PM ops structure.
Switch this driver to use it instead of customly wrapped one.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
drivers/pinctrl/intel/pinctrl-sunrisepoint.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/drivers/pinctrl/intel/pinctrl-sunrisepoint.c b/drivers/pinctrl/intel/pinctrl-sunrisepoint.c
index b7a40ab0bca8..55df9d2cfb1b 100644
--- a/drivers/pinctrl/intel/pinctrl-sunrisepoint.c
+++ b/drivers/pinctrl/intel/pinctrl-sunrisepoint.c
@@ -10,6 +10,7 @@
#include <linux/mod_devicetable.h>
#include <linux/module.h>
#include <linux/platform_device.h>
+#include <linux/pm.h>
#include <linux/pinctrl/pinctrl.h>
@@ -579,14 +580,12 @@ static const struct acpi_device_id spt_pinctrl_acpi_match[] = {
};
MODULE_DEVICE_TABLE(acpi, spt_pinctrl_acpi_match);
-static INTEL_PINCTRL_PM_OPS(spt_pinctrl_pm_ops);
-
static struct platform_driver spt_pinctrl_driver = {
.probe = intel_pinctrl_probe_by_hid,
.driver = {
.name = "sunrisepoint-pinctrl",
.acpi_match_table = spt_pinctrl_acpi_match,
- .pm = &spt_pinctrl_pm_ops,
+ .pm = pm_sleep_ptr(&intel_pinctrl_pm_ops),
},
};
--
2.40.0.1.gaa8946217a0b
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [PATCH v3 16/17] pinctrl: tigerlake: Switch to use Intel pin control PM ops
2023-10-30 12:07 [PATCH v3 00/17] pinctrl: intel: Use NOIRQ PM helper Andy Shevchenko
` (14 preceding siblings ...)
2023-10-30 12:07 ` [PATCH v3 15/17] pinctrl: sunrisepoint: " Andy Shevchenko
@ 2023-10-30 12:07 ` Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 17/17] pinctrl: intel: Make PM ops functions static Andy Shevchenko
` (2 subsequent siblings)
18 siblings, 0 replies; 24+ messages in thread
From: Andy Shevchenko @ 2023-10-30 12:07 UTC (permalink / raw)
To: Andy Shevchenko, Mika Westerberg, linux-gpio, linux-kernel
Cc: Andy Shevchenko, Linus Walleij, Paul Cercueil, Jonathan Cameron
The main driver conditionally exports the PM ops structure.
Switch this driver to use it instead of customly wrapped one.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
drivers/pinctrl/intel/pinctrl-tigerlake.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/drivers/pinctrl/intel/pinctrl-tigerlake.c b/drivers/pinctrl/intel/pinctrl-tigerlake.c
index 4768a69a9258..80cd7a06fe5a 100644
--- a/drivers/pinctrl/intel/pinctrl-tigerlake.c
+++ b/drivers/pinctrl/intel/pinctrl-tigerlake.c
@@ -10,6 +10,7 @@
#include <linux/mod_devicetable.h>
#include <linux/module.h>
#include <linux/platform_device.h>
+#include <linux/pm.h>
#include <linux/pinctrl/pinctrl.h>
@@ -743,14 +744,12 @@ static const struct acpi_device_id tgl_pinctrl_acpi_match[] = {
};
MODULE_DEVICE_TABLE(acpi, tgl_pinctrl_acpi_match);
-static INTEL_PINCTRL_PM_OPS(tgl_pinctrl_pm_ops);
-
static struct platform_driver tgl_pinctrl_driver = {
.probe = intel_pinctrl_probe_by_hid,
.driver = {
.name = "tigerlake-pinctrl",
.acpi_match_table = tgl_pinctrl_acpi_match,
- .pm = &tgl_pinctrl_pm_ops,
+ .pm = pm_sleep_ptr(&intel_pinctrl_pm_ops),
},
};
module_platform_driver(tgl_pinctrl_driver);
--
2.40.0.1.gaa8946217a0b
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [PATCH v3 17/17] pinctrl: intel: Make PM ops functions static
2023-10-30 12:07 [PATCH v3 00/17] pinctrl: intel: Use NOIRQ PM helper Andy Shevchenko
` (15 preceding siblings ...)
2023-10-30 12:07 ` [PATCH v3 16/17] pinctrl: tigerlake: " Andy Shevchenko
@ 2023-10-30 12:07 ` Andy Shevchenko
2023-11-02 12:57 ` [PATCH v3 00/17] pinctrl: intel: Use NOIRQ PM helper Linus Walleij
2023-11-10 6:14 ` Mika Westerberg
18 siblings, 0 replies; 24+ messages in thread
From: Andy Shevchenko @ 2023-10-30 12:07 UTC (permalink / raw)
To: Andy Shevchenko, Mika Westerberg, linux-gpio, linux-kernel
Cc: Andy Shevchenko, Linus Walleij, Paul Cercueil, Jonathan Cameron
No more users outside of the main module.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
drivers/pinctrl/intel/pinctrl-intel.c | 6 ++----
drivers/pinctrl/intel/pinctrl-intel.h | 9 ---------
2 files changed, 2 insertions(+), 13 deletions(-)
diff --git a/drivers/pinctrl/intel/pinctrl-intel.c b/drivers/pinctrl/intel/pinctrl-intel.c
index 9fbdc7bfa65c..f1d8f7e0d9b7 100644
--- a/drivers/pinctrl/intel/pinctrl-intel.c
+++ b/drivers/pinctrl/intel/pinctrl-intel.c
@@ -1727,7 +1727,7 @@ static bool intel_pinctrl_should_save(struct intel_pinctrl *pctrl, unsigned int
return false;
}
-int intel_pinctrl_suspend_noirq(struct device *dev)
+static int intel_pinctrl_suspend_noirq(struct device *dev)
{
struct intel_pinctrl *pctrl = dev_get_drvdata(dev);
struct intel_community_context *communities;
@@ -1770,7 +1770,6 @@ int intel_pinctrl_suspend_noirq(struct device *dev)
return 0;
}
-EXPORT_SYMBOL_GPL(intel_pinctrl_suspend_noirq);
static bool intel_gpio_update_reg(void __iomem *reg, u32 mask, u32 value)
{
@@ -1837,7 +1836,7 @@ static void intel_restore_padcfg(struct intel_pinctrl *pctrl, unsigned int pin,
dev_dbg(dev, "restored pin %u padcfg%u %#08x\n", pin, n, readl(padcfg));
}
-int intel_pinctrl_resume_noirq(struct device *dev)
+static int intel_pinctrl_resume_noirq(struct device *dev)
{
struct intel_pinctrl *pctrl = dev_get_drvdata(dev);
const struct intel_community_context *communities;
@@ -1881,7 +1880,6 @@ int intel_pinctrl_resume_noirq(struct device *dev)
return 0;
}
-EXPORT_SYMBOL_GPL(intel_pinctrl_resume_noirq);
EXPORT_NS_GPL_DEV_PM_OPS(intel_pinctrl_pm_ops, PINCTRL_INTEL) = {
NOIRQ_SYSTEM_SLEEP_PM_OPS(intel_pinctrl_suspend_noirq, intel_pinctrl_resume_noirq)
diff --git a/drivers/pinctrl/intel/pinctrl-intel.h b/drivers/pinctrl/intel/pinctrl-intel.h
index d3f511f97ed9..e7d911a65584 100644
--- a/drivers/pinctrl/intel/pinctrl-intel.h
+++ b/drivers/pinctrl/intel/pinctrl-intel.h
@@ -255,15 +255,6 @@ struct intel_pinctrl {
int intel_pinctrl_probe_by_hid(struct platform_device *pdev);
int intel_pinctrl_probe_by_uid(struct platform_device *pdev);
-int intel_pinctrl_suspend_noirq(struct device *dev);
-int intel_pinctrl_resume_noirq(struct device *dev);
-
-#define INTEL_PINCTRL_PM_OPS(_name) \
-const struct dev_pm_ops _name = { \
- SET_NOIRQ_SYSTEM_SLEEP_PM_OPS(intel_pinctrl_suspend_noirq, \
- intel_pinctrl_resume_noirq) \
-}
-
extern const struct dev_pm_ops intel_pinctrl_pm_ops;
struct intel_community *intel_get_community(struct intel_pinctrl *pctrl, unsigned int pin);
--
2.40.0.1.gaa8946217a0b
^ permalink raw reply related [flat|nested] 24+ messages in thread
* Re: [PATCH v3 01/17] pinctrl: intel: Provide Intel pin control wide PM ops structure
2023-10-30 12:07 ` [PATCH v3 01/17] pinctrl: intel: Provide Intel pin control wide PM ops structure Andy Shevchenko
@ 2023-10-30 19:41 ` Jonathan Cameron
2023-10-30 19:43 ` Jonathan Cameron
0 siblings, 1 reply; 24+ messages in thread
From: Jonathan Cameron @ 2023-10-30 19:41 UTC (permalink / raw)
To: Andy Shevchenko
Cc: Mika Westerberg, linux-gpio, linux-kernel, Andy Shevchenko,
Linus Walleij, Paul Cercueil
On Mon, 30 Oct 2023 14:07:18 +0200
Andy Shevchenko <andriy.shevchenko@linux.intel.com> wrote:
> With the help of EXPORT_NS_GPL_DEV_PM_OPS() and
> NOIRQ_SYSTEM_SLEEP_PM_OPS() we may convert PM ops functions to become
> static. This also takes into account the PM configuration options such
> as CONFIG_PM and CONFIG_PM_SLEEP. Hence the first step is to provide
> a generic PM ops structure that can be used by drivers directly.
It's a good thing to do, but if rolling a v3, should mention that the export
moves into the namespace.
>
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Other than that,
LGTM
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
> ---
> drivers/pinctrl/intel/pinctrl-intel.c | 8 +++++---
> drivers/pinctrl/intel/pinctrl-intel.h | 4 ++--
> 2 files changed, 7 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/pinctrl/intel/pinctrl-intel.c b/drivers/pinctrl/intel/pinctrl-intel.c
> index b19527a8728e..9fbdc7bfa65c 100644
> --- a/drivers/pinctrl/intel/pinctrl-intel.c
> +++ b/drivers/pinctrl/intel/pinctrl-intel.c
> @@ -899,7 +899,7 @@ static int intel_gpio_to_pin(struct intel_pinctrl *pctrl, unsigned int offset,
> *
> * Return: a GPIO offset, or negative error code if translation can't be done.
> */
> -static __maybe_unused int intel_pin_to_gpio(struct intel_pinctrl *pctrl, int pin)
> +static int intel_pin_to_gpio(struct intel_pinctrl *pctrl, int pin)
> {
> const struct intel_community *community;
> const struct intel_padgroup *padgrp;
> @@ -1682,7 +1682,6 @@ const struct intel_pinctrl_soc_data *intel_pinctrl_get_soc_data(struct platform_
> }
> EXPORT_SYMBOL_NS_GPL(intel_pinctrl_get_soc_data, PINCTRL_INTEL);
>
> -#ifdef CONFIG_PM_SLEEP
> static bool __intel_gpio_is_direct_irq(u32 value)
> {
> return (value & PADCFG0_GPIROUTIOXAPIC) && (value & PADCFG0_GPIOTXDIS) &&
> @@ -1883,7 +1882,10 @@ int intel_pinctrl_resume_noirq(struct device *dev)
> return 0;
> }
> EXPORT_SYMBOL_GPL(intel_pinctrl_resume_noirq);
> -#endif
> +
> +EXPORT_NS_GPL_DEV_PM_OPS(intel_pinctrl_pm_ops, PINCTRL_INTEL) = {
> + NOIRQ_SYSTEM_SLEEP_PM_OPS(intel_pinctrl_suspend_noirq, intel_pinctrl_resume_noirq)
> +};
>
> MODULE_AUTHOR("Mathias Nyman <mathias.nyman@linux.intel.com>");
> MODULE_AUTHOR("Mika Westerberg <mika.westerberg@linux.intel.com>");
> diff --git a/drivers/pinctrl/intel/pinctrl-intel.h b/drivers/pinctrl/intel/pinctrl-intel.h
> index 2bb553598e8b..d3f511f97ed9 100644
> --- a/drivers/pinctrl/intel/pinctrl-intel.h
> +++ b/drivers/pinctrl/intel/pinctrl-intel.h
> @@ -255,10 +255,8 @@ struct intel_pinctrl {
> int intel_pinctrl_probe_by_hid(struct platform_device *pdev);
> int intel_pinctrl_probe_by_uid(struct platform_device *pdev);
>
> -#ifdef CONFIG_PM_SLEEP
> int intel_pinctrl_suspend_noirq(struct device *dev);
> int intel_pinctrl_resume_noirq(struct device *dev);
> -#endif
>
> #define INTEL_PINCTRL_PM_OPS(_name) \
> const struct dev_pm_ops _name = { \
> @@ -266,6 +264,8 @@ const struct dev_pm_ops _name = { \
> intel_pinctrl_resume_noirq) \
> }
>
> +extern const struct dev_pm_ops intel_pinctrl_pm_ops;
> +
> struct intel_community *intel_get_community(struct intel_pinctrl *pctrl, unsigned int pin);
>
> int intel_get_groups_count(struct pinctrl_dev *pctldev);
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [PATCH v3 01/17] pinctrl: intel: Provide Intel pin control wide PM ops structure
2023-10-30 19:41 ` Jonathan Cameron
@ 2023-10-30 19:43 ` Jonathan Cameron
2023-10-30 19:56 ` Andy Shevchenko
0 siblings, 1 reply; 24+ messages in thread
From: Jonathan Cameron @ 2023-10-30 19:43 UTC (permalink / raw)
To: Andy Shevchenko
Cc: Mika Westerberg, linux-gpio, linux-kernel, Andy Shevchenko,
Linus Walleij, Paul Cercueil
On Mon, 30 Oct 2023 19:41:12 +0000
Jonathan Cameron <Jonathan.Cameron@Huawei.com> wrote:
> On Mon, 30 Oct 2023 14:07:18 +0200
> Andy Shevchenko <andriy.shevchenko@linux.intel.com> wrote:
>
> > With the help of EXPORT_NS_GPL_DEV_PM_OPS() and
> > NOIRQ_SYSTEM_SLEEP_PM_OPS() we may convert PM ops functions to become
> > static. This also takes into account the PM configuration options such
> > as CONFIG_PM and CONFIG_PM_SLEEP. Hence the first step is to provide
> > a generic PM ops structure that can be used by drivers directly.
>
> It's a good thing to do, but if rolling a v3, should mention that the export
> moves into the namespace.
>
> >
> > Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> Other than that,
> LGTM
>
> Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
>
Actually looking at usecase, why isn't the absence of an EXPORT in
the !CONFIG_PM_SLEEP path not a problem for bisection of this series given
you haven't yet protected the users?
Jonathan
> > ---
> > drivers/pinctrl/intel/pinctrl-intel.c | 8 +++++---
> > drivers/pinctrl/intel/pinctrl-intel.h | 4 ++--
> > 2 files changed, 7 insertions(+), 5 deletions(-)
> >
> > diff --git a/drivers/pinctrl/intel/pinctrl-intel.c b/drivers/pinctrl/intel/pinctrl-intel.c
> > index b19527a8728e..9fbdc7bfa65c 100644
> > --- a/drivers/pinctrl/intel/pinctrl-intel.c
> > +++ b/drivers/pinctrl/intel/pinctrl-intel.c
> > @@ -899,7 +899,7 @@ static int intel_gpio_to_pin(struct intel_pinctrl *pctrl, unsigned int offset,
> > *
> > * Return: a GPIO offset, or negative error code if translation can't be done.
> > */
> > -static __maybe_unused int intel_pin_to_gpio(struct intel_pinctrl *pctrl, int pin)
> > +static int intel_pin_to_gpio(struct intel_pinctrl *pctrl, int pin)
> > {
> > const struct intel_community *community;
> > const struct intel_padgroup *padgrp;
> > @@ -1682,7 +1682,6 @@ const struct intel_pinctrl_soc_data *intel_pinctrl_get_soc_data(struct platform_
> > }
> > EXPORT_SYMBOL_NS_GPL(intel_pinctrl_get_soc_data, PINCTRL_INTEL);
> >
> > -#ifdef CONFIG_PM_SLEEP
> > static bool __intel_gpio_is_direct_irq(u32 value)
> > {
> > return (value & PADCFG0_GPIROUTIOXAPIC) && (value & PADCFG0_GPIOTXDIS) &&
> > @@ -1883,7 +1882,10 @@ int intel_pinctrl_resume_noirq(struct device *dev)
> > return 0;
> > }
> > EXPORT_SYMBOL_GPL(intel_pinctrl_resume_noirq);
> > -#endif
> > +
> > +EXPORT_NS_GPL_DEV_PM_OPS(intel_pinctrl_pm_ops, PINCTRL_INTEL) = {
> > + NOIRQ_SYSTEM_SLEEP_PM_OPS(intel_pinctrl_suspend_noirq, intel_pinctrl_resume_noirq)
> > +};
> >
> > MODULE_AUTHOR("Mathias Nyman <mathias.nyman@linux.intel.com>");
> > MODULE_AUTHOR("Mika Westerberg <mika.westerberg@linux.intel.com>");
> > diff --git a/drivers/pinctrl/intel/pinctrl-intel.h b/drivers/pinctrl/intel/pinctrl-intel.h
> > index 2bb553598e8b..d3f511f97ed9 100644
> > --- a/drivers/pinctrl/intel/pinctrl-intel.h
> > +++ b/drivers/pinctrl/intel/pinctrl-intel.h
> > @@ -255,10 +255,8 @@ struct intel_pinctrl {
> > int intel_pinctrl_probe_by_hid(struct platform_device *pdev);
> > int intel_pinctrl_probe_by_uid(struct platform_device *pdev);
> >
> > -#ifdef CONFIG_PM_SLEEP
> > int intel_pinctrl_suspend_noirq(struct device *dev);
> > int intel_pinctrl_resume_noirq(struct device *dev);
> > -#endif
> >
> > #define INTEL_PINCTRL_PM_OPS(_name) \
> > const struct dev_pm_ops _name = { \
> > @@ -266,6 +264,8 @@ const struct dev_pm_ops _name = { \
> > intel_pinctrl_resume_noirq) \
> > }
> >
> > +extern const struct dev_pm_ops intel_pinctrl_pm_ops;
> > +
> > struct intel_community *intel_get_community(struct intel_pinctrl *pctrl, unsigned int pin);
> >
> > int intel_get_groups_count(struct pinctrl_dev *pctldev);
>
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [PATCH v3 01/17] pinctrl: intel: Provide Intel pin control wide PM ops structure
2023-10-30 19:43 ` Jonathan Cameron
@ 2023-10-30 19:56 ` Andy Shevchenko
0 siblings, 0 replies; 24+ messages in thread
From: Andy Shevchenko @ 2023-10-30 19:56 UTC (permalink / raw)
To: Jonathan Cameron
Cc: Mika Westerberg, linux-gpio, linux-kernel, Linus Walleij,
Paul Cercueil
On Mon, Oct 30, 2023 at 07:43:50PM +0000, Jonathan Cameron wrote:
> On Mon, 30 Oct 2023 19:41:12 +0000
> Jonathan Cameron <Jonathan.Cameron@Huawei.com> wrote:
...
> Actually looking at usecase, why isn't the absence of an EXPORT in
> the !CONFIG_PM_SLEEP path not a problem for bisection of this series given
> you haven't yet protected the users?
I'm not sure I got the issue you are trying to point out.
Between first and last patches the main driver exports two things: the PM ops
functions, which are _always_ been exported and PM ops structure, which is
exported only when CONFIG_PM_SLEEP=y. Every converted user has pm_sleep_ptr()
guard added so it shouldn't be a problem. What exactly did I miss?
--
With Best Regards,
Andy Shevchenko
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [PATCH v3 00/17] pinctrl: intel: Use NOIRQ PM helper
2023-10-30 12:07 [PATCH v3 00/17] pinctrl: intel: Use NOIRQ PM helper Andy Shevchenko
` (16 preceding siblings ...)
2023-10-30 12:07 ` [PATCH v3 17/17] pinctrl: intel: Make PM ops functions static Andy Shevchenko
@ 2023-11-02 12:57 ` Linus Walleij
2023-11-10 6:14 ` Mika Westerberg
18 siblings, 0 replies; 24+ messages in thread
From: Linus Walleij @ 2023-11-02 12:57 UTC (permalink / raw)
To: Andy Shevchenko
Cc: Mika Westerberg, linux-gpio, linux-kernel, Andy Shevchenko,
Paul Cercueil, Jonathan Cameron
On Mon, Oct 30, 2023 at 1:07 PM Andy Shevchenko
<andriy.shevchenko@linux.intel.com> wrote:
> Intel pin control drivers use NOIRQ variant of the PM callbacks.
> To make them smaller and less error prone against different
> kernel configurations (with possible defined but not used variables)
> switch to use NOIRQ PM helper.
Makes sense. The series:
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Yours,
Linus Walleij
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [PATCH v3 00/17] pinctrl: intel: Use NOIRQ PM helper
2023-10-30 12:07 [PATCH v3 00/17] pinctrl: intel: Use NOIRQ PM helper Andy Shevchenko
` (17 preceding siblings ...)
2023-11-02 12:57 ` [PATCH v3 00/17] pinctrl: intel: Use NOIRQ PM helper Linus Walleij
@ 2023-11-10 6:14 ` Mika Westerberg
2023-11-13 11:35 ` Andy Shevchenko
18 siblings, 1 reply; 24+ messages in thread
From: Mika Westerberg @ 2023-11-10 6:14 UTC (permalink / raw)
To: Andy Shevchenko
Cc: linux-gpio, linux-kernel, Andy Shevchenko, Linus Walleij,
Paul Cercueil, Jonathan Cameron
Hi Andy,
On Mon, Oct 30, 2023 at 02:07:17PM +0200, Andy Shevchenko wrote:
> Intel pin control drivers use NOIRQ variant of the PM callbacks.
> To make them smaller and less error prone against different
> kernel configurations (with possible defined but not used variables)
> switch to use NOIRQ PM helper.
>
> Changelog v3:
> - dropped applied patches
> - dropped MediaTek patch for now
> - split Intel patch to the series using suggection by Paul
>
> Changelog v2:
> - rewritten commit message in patch 1 (Rafael)
> - converted non-Intel pin control drivers as well
> - added couple of kinda related patches to use pm_ptr()
>
> Andy Shevchenko (17):
> pinctrl: intel: Provide Intel pin control wide PM ops structure
> pinctrl: alderlake: Switch to use Intel pin control PM ops
> pinctrl: broxton: Switch to use Intel pin control PM ops
> pinctrl: cannonlake: Switch to use Intel pin control PM ops
> pinctrl: cedarfork: Switch to use Intel pin control PM ops
> pinctrl: denverton: Switch to use Intel pin control PM ops
> pinctrl: elkhartlake: Switch to use Intel pin control PM ops
> pinctrl: emmitsburg: Switch to use Intel pin control PM ops
> pinctrl: geminilake: Switch to use Intel pin control PM ops
> pinctrl: icelake: Switch to use Intel pin control PM ops
> pinctrl: jasperlake: Switch to use Intel pin control PM ops
> pinctrl: lakefield: Switch to use Intel pin control PM ops
> pinctrl: lewisburg: Switch to use Intel pin control PM ops
> pinctrl: meteorlake: Switch to use Intel pin control PM ops
> pinctrl: sunrisepoint: Switch to use Intel pin control PM ops
> pinctrl: tigerlake: Switch to use Intel pin control PM ops
> pinctrl: intel: Make PM ops functions static
>
> drivers/pinctrl/intel/pinctrl-alderlake.c | 5 ++---
> drivers/pinctrl/intel/pinctrl-broxton.c | 5 ++---
> drivers/pinctrl/intel/pinctrl-cannonlake.c | 5 ++---
> drivers/pinctrl/intel/pinctrl-cedarfork.c | 5 ++---
> drivers/pinctrl/intel/pinctrl-denverton.c | 5 ++---
> drivers/pinctrl/intel/pinctrl-elkhartlake.c | 5 ++---
> drivers/pinctrl/intel/pinctrl-emmitsburg.c | 5 ++---
> drivers/pinctrl/intel/pinctrl-geminilake.c | 5 ++---
> drivers/pinctrl/intel/pinctrl-icelake.c | 5 ++---
> drivers/pinctrl/intel/pinctrl-intel.c | 14 +++++++-------
> drivers/pinctrl/intel/pinctrl-intel.h | 11 +----------
> drivers/pinctrl/intel/pinctrl-jasperlake.c | 5 ++---
> drivers/pinctrl/intel/pinctrl-lakefield.c | 5 ++---
> drivers/pinctrl/intel/pinctrl-lewisburg.c | 5 ++---
> drivers/pinctrl/intel/pinctrl-meteorlake.c | 5 ++---
> drivers/pinctrl/intel/pinctrl-sunrisepoint.c | 5 ++---
> drivers/pinctrl/intel/pinctrl-tigerlake.c | 5 ++---
> 17 files changed, 38 insertions(+), 62 deletions(-)
Nice! For the series,
Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [PATCH v3 00/17] pinctrl: intel: Use NOIRQ PM helper
2023-11-10 6:14 ` Mika Westerberg
@ 2023-11-13 11:35 ` Andy Shevchenko
0 siblings, 0 replies; 24+ messages in thread
From: Andy Shevchenko @ 2023-11-13 11:35 UTC (permalink / raw)
To: Mika Westerberg
Cc: linux-gpio, linux-kernel, Linus Walleij, Paul Cercueil,
Jonathan Cameron
On Fri, Nov 10, 2023 at 08:14:22AM +0200, Mika Westerberg wrote:
> On Mon, Oct 30, 2023 at 02:07:17PM +0200, Andy Shevchenko wrote:
> > Intel pin control drivers use NOIRQ variant of the PM callbacks.
> > To make them smaller and less error prone against different
> > kernel configurations (with possible defined but not used variables)
> > switch to use NOIRQ PM helper.
...
> Nice! For the series,
>
> Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Pushed to my review and testing queue, thanks!
--
With Best Regards,
Andy Shevchenko
^ permalink raw reply [flat|nested] 24+ messages in thread
end of thread, other threads:[~2023-11-13 11:35 UTC | newest]
Thread overview: 24+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-10-30 12:07 [PATCH v3 00/17] pinctrl: intel: Use NOIRQ PM helper Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 01/17] pinctrl: intel: Provide Intel pin control wide PM ops structure Andy Shevchenko
2023-10-30 19:41 ` Jonathan Cameron
2023-10-30 19:43 ` Jonathan Cameron
2023-10-30 19:56 ` Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 02/17] pinctrl: alderlake: Switch to use Intel pin control PM ops Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 03/17] pinctrl: broxton: " Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 04/17] pinctrl: cannonlake: " Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 05/17] pinctrl: cedarfork: " Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 06/17] pinctrl: denverton: " Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 07/17] pinctrl: elkhartlake: " Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 08/17] pinctrl: emmitsburg: " Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 09/17] pinctrl: geminilake: " Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 10/17] pinctrl: icelake: " Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 11/17] pinctrl: jasperlake: " Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 12/17] pinctrl: lakefield: " Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 13/17] pinctrl: lewisburg: " Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 14/17] pinctrl: meteorlake: " Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 15/17] pinctrl: sunrisepoint: " Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 16/17] pinctrl: tigerlake: " Andy Shevchenko
2023-10-30 12:07 ` [PATCH v3 17/17] pinctrl: intel: Make PM ops functions static Andy Shevchenko
2023-11-02 12:57 ` [PATCH v3 00/17] pinctrl: intel: Use NOIRQ PM helper Linus Walleij
2023-11-10 6:14 ` Mika Westerberg
2023-11-13 11:35 ` Andy Shevchenko
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).