Commit a1d1e0e3 authored by Jonathan Neuschäfer's avatar Jonathan Neuschäfer Committed by Linus Walleij
Browse files

pinctrl: nuvoton: Add driver for WPCM450



This driver is based on the one for NPCM7xx, because the WPCM450 is a
predecessor of those SoCs. Notable differences:

- On WPCM450, the GPIO registers are not organized in multiple banks,
  but rather placed continually into the same register block. This
  affects how register offsets are computed.
- Pinmux nodes can explicitly select GPIO mode, whereas in the npcm7xx
  driver, this happens automatically when a GPIO is requested.

Some functionality implemented in the hardware was (for now) left unused
in the driver, specifically blinking and pull-up/down.

Signed-off-by: default avatarJonathan Neuschäfer <j.neuschaefer@gmx.net>
Reported-by: default avatarkernel test robot <lkp@intel.com>
Link: https://lore.kernel.org/r/20220129115228.2257310-6-j.neuschaefer@gmx.net


Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
parent 1a1e33b3
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -2376,6 +2376,7 @@ S: Maintained
F:	Documentation/devicetree/bindings/*/*wpcm*
F:	arch/arm/boot/dts/nuvoton-wpcm450*
F:	arch/arm/mach-npcm/wpcm450.c
F:	drivers/*/*/*wpcm*
F:	drivers/*/*wpcm*
ARM/NXP S32G ARCHITECTURE
+1 −1
Original line number Diff line number Diff line
@@ -62,7 +62,7 @@ obj-y += mediatek/
obj-$(CONFIG_PINCTRL_MESON)	+= meson/
obj-y				+= mvebu/
obj-y				+= nomadik/
obj-$(CONFIG_ARCH_NPCM7XX)	+= nuvoton/
obj-y				+= nuvoton/
obj-$(CONFIG_PINCTRL_PXA)	+= pxa/
obj-$(CONFIG_ARCH_QCOM)		+= qcom/
obj-$(CONFIG_PINCTRL_RALINK)	+= ralink/
+18 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0-only

config PINCTRL_WPCM450
	tristate "Pinctrl and GPIO driver for Nuvoton WPCM450"
	depends on ARCH_WPCM450 || COMPILE_TEST
	select PINMUX
	select PINCONF
	select GENERIC_PINCONF
	select GPIOLIB
	select GPIO_GENERIC
	select GPIOLIB_IRQCHIP
	help
	  Say Y or M here to enable pin controller and GPIO support for
	  the Nuvoton WPCM450 SoC. This is strongly recommended when
	  building a kernel that will run on this chip.

	  If this driver is compiled as a module, it will be named
	  pinctrl-wpcm450.

config PINCTRL_NPCM7XX
	bool "Pinctrl and GPIO driver for Nuvoton NPCM7XX"
	depends on (ARCH_NPCM7XX || COMPILE_TEST) && OF
+1 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0
# Nuvoton pinctrl support

obj-$(CONFIG_PINCTRL_WPCM450)	+= pinctrl-wpcm450.o
obj-$(CONFIG_PINCTRL_NPCM7XX)	+= pinctrl-npcm7xx.o
+1150 −0

File added.

Preview size limit exceeded, changes collapsed.