mbox series

[GIT,PULL] intel-pinctrl for 6.8-1

Message ID 20231218145559.2209291-1-andriy.shevchenko@linux.intel.com
State New
Headers show
Series [GIT,PULL] intel-pinctrl for 6.8-1 | expand

Pull-request

git://git.kernel.org/pub/scm/linux/kernel/git/pinctrl/intel.git tags/intel-pinctrl-v6.8-1

Message

Andy Shevchenko Dec. 18, 2023, 2:55 p.m. UTC
Hi Linux pin control  maintainers,

Rather big (by amount of touched drivers and overall due to a couple of new
ones) PR for Intel pin control drivers. Has been for a while in Linux Next
without reported errors. Please, pull for v6.8-rc1.

Thanks,

With Best Regards,
Andy Shevchenko

The following changes since commit b85ea95d086471afb4ad062012a4d73cd328fa86:

  Linux 6.7-rc1 (2023-11-12 16:19:07 -0800)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/pinctrl/intel.git tags/intel-pinctrl-v6.8-1

for you to fetch changes up to ebe7f3393784857c487bf82f86813a8b1384e278:

  pinctrl: intel: Add Intel Meteor Point pin controller and GPIO support (2023-12-15 17:09:36 +0200)

----------------------------------------------------------------
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

----------------------------------------------------------------
Andy Shevchenko (30):
      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
      Merge patch series "pinctrl: intel: Use NOIRQ PM helper"
      pinctrl: tangier: Enable 910 Ohm bias
      pinctrl: tangier: Move default strength assignment to a switch-case
      pinctrl: intel: Move default strength assignment to a switch-case
      pinctrl: intel: Refactor intel_pinctrl_get_soc_data()
      pinctrl: intel: Revert "Unexport intel_pinctrl_probe()"
      pinctrl: intel: Add a generic Intel pin control platform driver
      pinctrl: lynxpoint: Simplify code with cleanup helpers
      pinctrl: baytrail: Fix types of config value in byt_pin_config_set()
      pinctrl: baytrail: Factor out byt_gpio_force_input_mode()
      pinctrl: baytrail: Move default strength assignment to a switch-case
      pinctrl: baytrail: Simplify code with cleanup helpers
      pinctrl: intel: Add Intel Meteor Point pin controller and GPIO support

Raag Jadav (3):
      pinctrl: intel: allow independent COMPILE_TEST
      pinctrl: intel: use the correct _PM_OPS() export macro
      pinctrl: tangier: simplify locking using cleanup helpers

 drivers/pinctrl/intel/Kconfig                  |  21 +-
 drivers/pinctrl/intel/Makefile                 |   2 +
 drivers/pinctrl/intel/pinctrl-alderlake.c      |   5 +-
 drivers/pinctrl/intel/pinctrl-baytrail.c       | 230 +++++-------
 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-platform.c | 225 ++++++++++++
 drivers/pinctrl/intel/pinctrl-intel.c          |  32 +-
 drivers/pinctrl/intel/pinctrl-intel.h          |  14 +-
 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-lynxpoint.c      |  72 ++--
 drivers/pinctrl/intel/pinctrl-meteorlake.c     |   5 +-
 drivers/pinctrl/intel/pinctrl-meteorpoint.c    | 465 +++++++++++++++++++++++++
 drivers/pinctrl/intel/pinctrl-sunrisepoint.c   |   5 +-
 drivers/pinctrl/intel/pinctrl-tangier.c        |  32 +-
 drivers/pinctrl/intel/pinctrl-tigerlake.c      |   5 +-
 24 files changed, 889 insertions(+), 279 deletions(-)
 create mode 100644 drivers/pinctrl/intel/pinctrl-intel-platform.c
 create mode 100644 drivers/pinctrl/intel/pinctrl-meteorpoint.c

Comments

Linus Walleij Dec. 18, 2023, 10:44 p.m. UTC | #1
On Mon, Dec 18, 2023 at 3:56 PM Andy Shevchenko
<andriy.shevchenko@linux.intel.com> wrote:

> Rather big (by amount of touched drivers and overall due to a couple of new
> ones) PR for Intel pin control drivers. Has been for a while in Linux Next
> without reported errors. Please, pull for v6.8-rc1.

Pulled in and resolved a minor merge conflict (which I guess was solved also
in -next?)

diff --cc drivers/pinctrl/intel/pinctrl-baytrail.c
index 3c8c02043481,9b76819e606a..000000000000
--- a/drivers/pinctrl/intel/pinctrl-baytrail.c
+++ b/drivers/pinctrl/intel/pinctrl-baytrail.c
@@@ -1173,7 -1136,7 +1136,11 @@@ static void byt_gpio_dbg_show(struct se
                void __iomem *conf_reg, *val_reg;
                const char *pull_str = NULL;
                const char *pull = NULL;
++<<<<<<< HEAD
 +              unsigned long flags;
++=======
+               const char *label;
++>>>>>>> 85a7d543f2d4c4893914b46c9236f45b3ad87573
                unsigned int pin;

                pin = vg->soc->pins[i].number;


Deleted both since label is defined inline, and this is how
linux-next looks like as well.

I hope it's the right resolution!

The rest just applied cleanly.

Doing some test builds now before I push, thanks for all the nice
work!

Yours,
Linus Walleij
Andy Shevchenko Dec. 19, 2023, 2:38 p.m. UTC | #2
On Mon, Dec 18, 2023 at 11:44:03PM +0100, Linus Walleij wrote:
> On Mon, Dec 18, 2023 at 3:56 PM Andy Shevchenko
> <andriy.shevchenko@linux.intel.com> wrote:
> 
> > Rather big (by amount of touched drivers and overall due to a couple of new
> > ones) PR for Intel pin control drivers. Has been for a while in Linux Next
> > without reported errors. Please, pull for v6.8-rc1.
> 
> Pulled in and resolved a minor merge conflict (which I guess was solved also
> in -next?)
> 
> diff --cc drivers/pinctrl/intel/pinctrl-baytrail.c
> index 3c8c02043481,9b76819e606a..000000000000
> --- a/drivers/pinctrl/intel/pinctrl-baytrail.c
> +++ b/drivers/pinctrl/intel/pinctrl-baytrail.c
> @@@ -1173,7 -1136,7 +1136,11 @@@ static void byt_gpio_dbg_show(struct se
>                 void __iomem *conf_reg, *val_reg;
>                 const char *pull_str = NULL;
>                 const char *pull = NULL;
> ++<<<<<<< HEAD
>  +              unsigned long flags;
> ++=======
> +               const char *label;
> ++>>>>>>> 85a7d543f2d4c4893914b46c9236f45b3ad87573
>                 unsigned int pin;
> 
>                 pin = vg->soc->pins[i].number;
> 
> 
> Deleted both since label is defined inline, and this is how
> linux-next looks like as well.
> 
> I hope it's the right resolution!

Yes, Linux Next has the correct resolution and IIRC you were Cc'ed
to that thread where we discussed the conflict.

> The rest just applied cleanly.
> 
> Doing some test builds now before I push, thanks for all the nice
> work!

Thank you!
And happy holidays!