Here we introduce - intel_pinctrl_probe_by_uid() uses ACPI _UID to supply proper data - intel_pinctrl_probe_by_hid() uses ACPI _HID to supply proper data - INTEL_PINCTRL_PM_OPS() macro for PM operations and convert drivers to use them. Since v2 (all suggested by Mika): - drop upstreamed patch - redo first portion with two alternative ->probe() methods - add series to convert PM ops to use a common macro Andy Shevchenko (16): pinctrl: intel: Introduce intel_pinctrl_probe_by_uid() internal API pinctrl: broxton: Convert to use intel_pinctrl_probe_by_uid() pinctrl: geminilake: Convert to use intel_pinctrl_probe_by_uid() pinctrl: baytrail: Convert to use device_get_match_data() pinctrl: intel: Introduce intel_pinctrl_probe_by_hid() internal API pinctrl: cannonlake: Convert to use intel_pinctrl_probe_by_hid() pinctrl: sunrisepoint: Convert to use intel_pinctrl_probe_by_hid() pinctrl: intel: Introduce common macro for PM operations pinctrl: broxton: Define PM ops via INTEL_PINCTRL_PM_OPS() pinctrl: cannonlake: Define PM ops via INTEL_PINCTRL_PM_OPS() pinctrl: cedarfork: Define PM ops via INTEL_PINCTRL_PM_OPS() pinctrl: denverton: Define PM ops via INTEL_PINCTRL_PM_OPS() pinctrl: geminilake: Define PM ops via INTEL_PINCTRL_PM_OPS() pinctrl: icelake: Define PM ops via INTEL_PINCTRL_PM_OPS() pinctrl: sunrisepoint: Define PM ops via INTEL_PINCTRL_PM_OPS() pinctrl: lewisburg: Define PM ops via INTEL_PINCTRL_PM_OPS() drivers/pinctrl/intel/pinctrl-baytrail.c | 9 ++-- drivers/pinctrl/intel/pinctrl-broxton.c | 46 ++----------------- drivers/pinctrl/intel/pinctrl-cannonlake.c | 18 ++------ drivers/pinctrl/intel/pinctrl-cedarfork.c | 5 +-- drivers/pinctrl/intel/pinctrl-denverton.c | 5 +-- drivers/pinctrl/intel/pinctrl-geminilake.c | 30 ++----------- drivers/pinctrl/intel/pinctrl-icelake.c | 5 +-- drivers/pinctrl/intel/pinctrl-intel.c | 47 ++++++++++++++++++++ drivers/pinctrl/intel/pinctrl-intel.h | 8 ++++ drivers/pinctrl/intel/pinctrl-lewisburg.c | 5 +-- drivers/pinctrl/intel/pinctrl-sunrisepoint.c | 18 ++------ 11 files changed, 77 insertions(+), 119 deletions(-) -- 2.18.0