Skip to content

Commit 7085e4e

Browse files
committed
Merge tag 'intel-pinctrl-v6.8-1' of git://git.kernel.org/pub/scm/linux/kernel/git/pinctrl/intel into devel
intel-pinctrl for v6.8-1 * New agnostic driver to support Lunar Lake and newer platforms * New driver for Intel Meteor Point-S (PCH for Meteor Lake-S) * Update drivers to use new PM helpers * Use RAII for locking in a few drivers (Raag, Andy) * Reduce locking scope in some functions (Raag) * Miscellaneous cleanups (Raag) The following is an automated git shortlog grouped by driver: alderlake: - Switch to use Intel pin control PM ops baytrail: - Simplify code with cleanup helpers - Move default strength assignment to a switch-case - Factor out byt_gpio_force_input_mode() - Fix types of config value in byt_pin_config_set() broxton: - Switch to use Intel pin control PM ops cannonlake: - Switch to use Intel pin control PM ops cedarfork: - Switch to use Intel pin control PM ops denverton: - Switch to use Intel pin control PM ops elkhartlake: - Switch to use Intel pin control PM ops emmitsburg: - Switch to use Intel pin control PM ops geminilake: - Switch to use Intel pin control PM ops icelake: - Switch to use Intel pin control PM ops intel: - Add Intel Meteor Point pin controller and GPIO support - use the correct _PM_OPS() export macro - Add a generic Intel pin control platform driver - Revert "Unexport intel_pinctrl_probe()" - allow independent COMPILE_TEST - Refactor intel_pinctrl_get_soc_data() - Move default strength assignment to a switch-case - Make PM ops functions static - Provide Intel pin control wide PM ops structure jasperlake: - Switch to use Intel pin control PM ops lakefield: - Switch to use Intel pin control PM ops lewisburg: - Switch to use Intel pin control PM ops lynxpoint: - Simplify code with cleanup helpers meteorlake: - Switch to use Intel pin control PM ops sunrisepoint: - Switch to use Intel pin control PM ops tangier: - simplify locking using cleanup helpers - Move default strength assignment to a switch-case - Enable 910 Ohm bias tigerlake: - Switch to use Intel pin control PM ops Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2 parents 915fdc9 + ebe7f33 commit 7085e4e

24 files changed

+888
-279
lines changed

drivers/pinctrl/intel/Kconfig

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# SPDX-License-Identifier: GPL-2.0
22
# Intel pin control drivers
33
menu "Intel pinctrl drivers"
4-
depends on ACPI && (X86 || COMPILE_TEST)
4+
depends on (ACPI && X86) || COMPILE_TEST
55

66
config PINCTRL_BAYTRAIL
77
bool "Intel Baytrail GPIO pin control"
@@ -37,6 +37,16 @@ config PINCTRL_INTEL
3737
select GPIOLIB
3838
select GPIOLIB_IRQCHIP
3939

40+
config PINCTRL_INTEL_PLATFORM
41+
tristate "Intel pinctrl and GPIO platform driver"
42+
depends on ACPI
43+
select PINCTRL_INTEL
44+
help
45+
This pinctrl driver provides an interface that allows configuring
46+
of Intel PCH pins and using them as GPIOs. Currently the following
47+
Intel SoCs / platforms require this to be functional:
48+
- Lunar Lake
49+
4050
config PINCTRL_ALDERLAKE
4151
tristate "Intel Alder Lake pinctrl and GPIO driver"
4252
select PINCTRL_INTEL
@@ -128,6 +138,15 @@ config PINCTRL_METEORLAKE
128138
This pinctrl driver provides an interface that allows configuring
129139
of Intel Meteor Lake pins and using them as GPIOs.
130140

141+
config PINCTRL_METEORPOINT
142+
tristate "Intel Meteor Point pinctrl and GPIO driver"
143+
depends on ACPI
144+
select PINCTRL_INTEL
145+
help
146+
Meteor Point is the PCH of Intel Meteor Lake. This pinctrl driver
147+
provides an interface that allows configuring of PCH pins and
148+
using them as GPIOs.
149+
131150
config PINCTRL_SUNRISEPOINT
132151
tristate "Intel Sunrisepoint pinctrl and GPIO driver"
133152
select PINCTRL_INTEL

drivers/pinctrl/intel/Makefile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ obj-$(CONFIG_PINCTRL_TANGIER) += pinctrl-tangier.o
88
obj-$(CONFIG_PINCTRL_MERRIFIELD) += pinctrl-merrifield.o
99
obj-$(CONFIG_PINCTRL_MOOREFIELD) += pinctrl-moorefield.o
1010
obj-$(CONFIG_PINCTRL_INTEL) += pinctrl-intel.o
11+
obj-$(CONFIG_PINCTRL_INTEL_PLATFORM) += pinctrl-intel-platform.o
1112
obj-$(CONFIG_PINCTRL_ALDERLAKE) += pinctrl-alderlake.o
1213
obj-$(CONFIG_PINCTRL_BROXTON) += pinctrl-broxton.o
1314
obj-$(CONFIG_PINCTRL_CANNONLAKE) += pinctrl-cannonlake.o
@@ -21,5 +22,6 @@ obj-$(CONFIG_PINCTRL_JASPERLAKE) += pinctrl-jasperlake.o
2122
obj-$(CONFIG_PINCTRL_LAKEFIELD) += pinctrl-lakefield.o
2223
obj-$(CONFIG_PINCTRL_LEWISBURG) += pinctrl-lewisburg.o
2324
obj-$(CONFIG_PINCTRL_METEORLAKE) += pinctrl-meteorlake.o
25+
obj-$(CONFIG_PINCTRL_METEORPOINT) += pinctrl-meteorpoint.o
2426
obj-$(CONFIG_PINCTRL_SUNRISEPOINT) += pinctrl-sunrisepoint.o
2527
obj-$(CONFIG_PINCTRL_TIGERLAKE) += pinctrl-tigerlake.o

drivers/pinctrl/intel/pinctrl-alderlake.c

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
#include <linux/mod_devicetable.h>
1010
#include <linux/module.h>
1111
#include <linux/platform_device.h>
12+
#include <linux/pm.h>
1213

1314
#include <linux/pinctrl/pinctrl.h>
1415

@@ -733,14 +734,12 @@ static const struct acpi_device_id adl_pinctrl_acpi_match[] = {
733734
};
734735
MODULE_DEVICE_TABLE(acpi, adl_pinctrl_acpi_match);
735736

736-
static INTEL_PINCTRL_PM_OPS(adl_pinctrl_pm_ops);
737-
738737
static struct platform_driver adl_pinctrl_driver = {
739738
.probe = intel_pinctrl_probe_by_hid,
740739
.driver = {
741740
.name = "alderlake-pinctrl",
742741
.acpi_match_table = adl_pinctrl_acpi_match,
743-
.pm = &adl_pinctrl_pm_ops,
742+
.pm = pm_sleep_ptr(&intel_pinctrl_pm_ops),
744743
},
745744
};
746745
module_platform_driver(adl_pinctrl_driver);

0 commit comments

Comments
 (0)