Commit e6cbbe42 authored by Patrick Rudolph's avatar Patrick Rudolph Committed by Linus Walleij
Browse files

pinctrl: Add Cypress cy8c95x0 support

Add support for cypress I2C GPIO expanders cy8c9520, cy8c9540 and
cy8c9560. The GPIO expanders feature a PWM mode, thus add it as
pinctrl driver.

The chip features multiple drive modes for each pin when configured
as output and multiple bias settings when configured as input.

Tested all three components and verified that all functionality
is fully working.

Datasheet: https://www.cypress.com/file/37971/download


Signed-off-by: default avatarPatrick Rudolph <patrick.rudolph@9elements.com>
Signed-off-by: default avatarNaresh Solanki <naresh.solanki@9elements.com>
Link: https://lore.kernel.org/r/20220816054917.7893-3-patrick.rudolph@9elements.com


Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
parent 8d39e55e
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -5629,6 +5629,12 @@ Q: http://patchwork.linuxtv.org/project/linux-media/list/
T:	git git://linuxtv.org/anttip/media_tree.git
F:	drivers/media/common/cypress_firmware*
CYPRESS CY8C95X0 PINCTRL DRIVER
M:	Patrick Rudolph <patrick.rudolph@9elements.com>
L:	linux-gpio@vger.kernel.org
S:	Maintained
F:	drivers/pinctrl/pinctrl-cy8c95x0.c
CYPRESS CY8CTMA140 TOUCHSCREEN DRIVER
M:	Linus Walleij <linus.walleij@linaro.org>
L:	linux-input@vger.kernel.org
+14 −0
Original line number Diff line number Diff line
@@ -135,6 +135,20 @@ config PINCTRL_BM1880
	help
	  Pinctrl driver for Bitmain BM1880 SoC.

config PINCTRL_CY8C95X0
	tristate "Cypress CY8C95X0 I2C pinctrl and GPIO driver"
	depends on I2C && OF
	select GPIOLIB
	select GPIOLIB_IRQCHIP
	select PINMUX
	select PINCONF
	select GENERIC_PINCONF
	select REGMAP_I2C
	help
	  Support for 20/40/60 pin Cypress Cy8C95x0 pinctrl/gpio I2C expander.
	  This driver can also be built as a module. If so, the module will be
	  called pinctrl-cy8c95x0.

config PINCTRL_DA850_PUPD
	tristate "TI DA850/OMAP-L138/AM18XX pull-up and pull-down groups"
	depends on OF && (ARCH_DAVINCI_DA850 || COMPILE_TEST)
+1 −0
Original line number Diff line number Diff line
@@ -17,6 +17,7 @@ obj-$(CONFIG_PINCTRL_AT91) += pinctrl-at91.o
obj-$(CONFIG_PINCTRL_AT91PIO4)	+= pinctrl-at91-pio4.o
obj-$(CONFIG_PINCTRL_AXP209)	+= pinctrl-axp209.o
obj-$(CONFIG_PINCTRL_BM1880)	+= pinctrl-bm1880.o
obj-$(CONFIG_PINCTRL_CY8C95X0)	+= pinctrl-cy8c95x0.o
obj-$(CONFIG_PINCTRL_DA850_PUPD) += pinctrl-da850-pupd.o
obj-$(CONFIG_PINCTRL_DA9062)	+= pinctrl-da9062.o
obj-$(CONFIG_PINCTRL_DIGICOLOR)	+= pinctrl-digicolor.o
+1381 −0

File added.

Preview size limit exceeded, changes collapsed.