linux/drivers/pinctrl
Théo Lebrun 966942ae49 gpio: nomadik: extract GPIO platform driver from drivers/pinctrl/nomadik/
Previously, drivers/pinctrl/nomadik/pinctrl-nomadik.c registered two
platform drivers: pinctrl & GPIO. Move the GPIO aspect to the
drivers/gpio/ folder, as would be expected.

Both drivers are intertwined for a reason; pinctrl requires access to
GPIO registers for pinmuxing, pull-disable, disabling interrupts while
setting the muxing and wakeup control. Information sharing is done
through a shared array containing GPIO chips and a few helper
functions. That shared array is not touched from gpio-nomadik when
CONFIG_PINCTRL_NOMADIK is not defined.

Make no change to the code that moved into gpio-nomadik; there should be
no behavior change following. A few functions are shared and header
comments are added. Checkpatch warnings are addressed. NUM_BANKS is
renamed to NMK_MAX_BANKS.

It is supported to compile gpio-nomadik without pinctrl-nomadik. The
opposite is not true.

Signed-off-by: Théo Lebrun <theo.lebrun@bootlin.com>
Link: https://lore.kernel.org/r/20240228-mbly-gpio-v2-6-3ba757474006@bootlin.com
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2024-02-29 10:22:33 +01:00
..
actions pinctrl: actions: remove MODULE_LICENSE in non-modules 2023-04-13 13:13:50 -07:00
aspeed pinctrl: aspeed: Allow changing SPI mode from hardware strap defaults 2023-10-10 14:01:30 +02:00
bcm pinctrl: bcm: Convert to use grp member 2023-12-12 00:47:52 +01:00
berlin pinctrl: Use device_get_match_data() 2023-10-30 14:50:42 +01:00
cirrus pinctrl: lochnagar: Don't build on MIPS 2023-11-16 14:40:38 +01:00
freescale pinctrl: imx: Convert to use grp member 2023-12-12 00:47:52 +01:00
intel intel-pinctrl for v6.8-1 2023-12-18 23:42:42 +01:00
mediatek pinctrl: mediatek: Convert to use grp member 2023-12-12 00:47:52 +01:00
meson pinctrl: Add driver support for Amlogic T7 SoCs 2023-09-25 15:49:18 +02:00
mvebu pinctrl: Use device_get_match_data() 2023-10-30 14:50:42 +01:00
nomadik gpio: nomadik: extract GPIO platform driver from drivers/pinctrl/nomadik/ 2024-02-29 10:22:33 +01:00
nuvoton pinctrl: nuvoton: Convert to use struct pingroup and PINCTRL_PINGROUP() 2023-12-07 10:53:57 +01:00
nxp pinctrl: s32cc: Avoid possible string truncation 2023-11-14 14:43:37 +01:00
pxa pinctrl: Explicitly include correct DT includes 2023-07-20 21:41:24 +02:00
qcom pinctrl: qcom: lpass-lpi: remove duplicated include 2023-12-20 12:30:09 +01:00
realtek pinctrl: realtek: Fix logical error when finding descriptor 2023-11-24 10:39:20 +01:00
renesas pinctrl: renesas: Updates for v6.8 (take two) 2023-12-18 15:06:18 +01:00
samsung pinctrl: samsung: constify iomem pointers 2023-12-28 22:13:17 +01:00
spear treewide: rename pinctrl_gpio_free_new() 2023-11-04 10:23:21 +01:00
sprd pinctrl: sprd-sc9860: Convert to platform remove callback returning void 2023-10-10 15:47:50 +02:00
starfive This is the main pin control pull request for the v6.8 kernel series. 2024-01-17 15:55:33 -08:00
stm32 This is the main pin control pull request for the v6.8 kernel series. 2024-01-17 15:55:33 -08:00
sunplus pinctrl: sppctl: use gpiochip_dup_line_label() 2023-12-08 09:26:37 +01:00
sunxi pinctrl: sunxi: h616: add extra gpio banks 2023-09-25 15:26:33 +02:00
tegra pinctrl: tegra: Display pin function in pinconf-groups 2023-11-13 14:57:22 +01:00
ti pinctrl: Use device_get_match_data() 2023-10-30 14:50:42 +01:00
uniphier pinctrl: uniphier: Annotate struct uniphier_pinctrl_reg_region with __counted_by 2023-09-27 10:59:06 +02:00
visconti
vt8500 pinctrl: vt8500: drop the wrapper around pinctrl_gpio_direction_input() 2023-11-04 10:23:22 +01:00
core.c This is the main pin control pull request for the v6.8 kernel series. 2024-01-17 15:55:33 -08:00
core.h pinctrl: core: Remove unused members from struct group_desc 2023-12-12 00:47:52 +01:00
devicetree.c pinctrl: Convert unsigned to unsigned int 2023-12-04 15:32:42 +01:00
devicetree.h pinctrl: Clean up headers 2022-10-24 17:06:48 +03:00
Kconfig Immutable tag for the PEF2256 framer 2023-12-12 23:08:30 +01:00
Makefile Immutable tag for the PEF2256 framer 2023-12-12 23:08:30 +01:00
pinconf-generic.c pinctrl: Convert unsigned to unsigned int 2023-12-04 15:32:42 +01:00
pinconf.c pinctrl: Convert unsigned to unsigned int 2023-12-04 15:32:42 +01:00
pinconf.h pinctrl: Convert unsigned to unsigned int 2023-12-04 15:32:42 +01:00
pinctrl-amd.c pinctrl: amd: Mask non-wake source pins with interrupt enabled at suspend 2023-12-04 15:46:02 +01:00
pinctrl-amd.h pinctrl: amd: Mask non-wake source pins with interrupt enabled at suspend 2023-12-04 15:46:02 +01:00
pinctrl-apple-gpio.c pinctrl: apple-gpio: Add missing header(s) 2022-10-24 12:31:17 +03:00
pinctrl-artpec6.c pinctrl: artpec6: Convert to platform remove callback returning void 2023-10-10 15:39:10 +02:00
pinctrl-as3722.c pinctrl: as3722: Use devm_gpiochip_add_data() to simplify remove path 2023-11-24 11:22:12 +01:00
pinctrl-at91-pio4.c pinctrl: at91-pio4: use dedicated lock class for IRQ 2023-12-21 09:05:02 +01:00
pinctrl-at91.c pinctrl: Use device_get_match_data() 2023-10-30 14:50:42 +01:00
pinctrl-at91.h
pinctrl-axp209.c pinctrl: axp209: drop the wrapper around pinctrl_gpio_direction_input() 2023-11-04 10:23:22 +01:00
pinctrl-bm1880.c pinctrl: bm1880: Add missing header(s) 2022-10-24 12:53:33 +03:00
pinctrl-cy8c95x0.c This is the main pin control pull request for the v6.8 kernel series. 2024-01-17 15:55:33 -08:00
pinctrl-da850-pupd.c pinctrl: da850-pupd: Drop empty platform remove function 2022-12-29 02:02:46 +01:00
pinctrl-da9062.c pinctrl: da9062: don't include private GPIOLIB header 2023-09-12 10:06:01 +02:00
pinctrl-digicolor.c pinctrl: digicolor: Use proper headers and drop OF dependency 2023-01-16 15:14:03 +01:00
pinctrl-equilibrium.c pinctrl: equilibrium: Convert to use grp member 2023-12-12 00:47:52 +01:00
pinctrl-equilibrium.h pinctrl: equilibrium: Convert to immutable irq_chip 2023-04-14 11:08:17 +02:00
pinctrl-falcon.c pinctrl: lantiq: Remove unused of_gpio.h inclusion 2023-06-16 15:04:34 +02:00
pinctrl-gemini.c pinctrl: gemini: Add missing header(s) 2022-10-24 17:06:45 +03:00
pinctrl-ingenic.c pinctrl: ingenic: Convert to use grp member 2023-12-12 00:47:52 +01:00
pinctrl-k210.c pinctrl: Explicitly include correct DT includes 2023-07-20 21:41:24 +02:00
pinctrl-keembay.c pinctrl: keembay: Convert to use grp member 2023-12-12 00:47:52 +01:00
pinctrl-lantiq.c pinctrl: lantiq: Add missing header(s) 2022-10-24 17:06:46 +03:00
pinctrl-lantiq.h pinctrl: lantiq: Remove unsued declaration ltq_pinctrl_unregister() 2023-09-11 15:42:12 +02:00
pinctrl-loongson2.c pinctrl: loongson2: Fix some const correctness 2022-11-25 11:41:01 +01:00
pinctrl-lpc18xx.c pinctrl: Explicitly include correct DT includes 2023-07-20 21:41:24 +02:00
pinctrl-max77620.c
pinctrl-mcp23s08_i2c.c pinctrl: mcp23s08: Simplify probe()/mcp23s08_spi_regmap_init() 2023-10-10 13:39:38 +02:00
pinctrl-mcp23s08_spi.c pinctrl: mcp23s08: Simplify probe()/mcp23s08_spi_regmap_init() 2023-10-10 13:39:38 +02:00
pinctrl-mcp23s08.c pinctrl: mcp23s08: Convert to immutable irq_chip 2023-04-14 11:08:17 +02:00
pinctrl-mcp23s08.h pinctrl: mcp23s08: Simplify probe()/mcp23s08_spi_regmap_init() 2023-10-10 13:39:38 +02:00
pinctrl-microchip-sgpio.c pinctrl: microchip-sgpio: check return value of devm_kasprintf() 2023-06-16 15:01:45 +02:00
pinctrl-mlxbf3.c pinctrl: mlxbf3: Remove gpio_disable_free() 2023-08-25 15:44:15 +02:00
pinctrl-ocelot.c pinctrl: ocelot: drop the wrapper around pinctrl_gpio_direction_input() 2023-11-04 10:23:23 +01:00
pinctrl-palmas.c pinctrl: Explicitly include correct DT includes 2023-07-20 21:41:24 +02:00
pinctrl-pef2256.c pinctrl: Add support for the Lantic PEF2256 pinmux 2023-12-12 23:05:24 +01:00
pinctrl-pic32.c pinctrl: Explicitly include correct DT includes 2023-07-20 21:41:24 +02:00
pinctrl-pic32.h
pinctrl-pistachio.c pinctrl: pistachio: Convert to immutable irq_chip 2023-04-20 16:07:40 +02:00
pinctrl-rk805.c pinctrl: rk805: drop the wrapper around pinctrl_gpio_direction_input() 2023-11-04 10:23:23 +01:00
pinctrl-rockchip.c pinctrl: rockchip: Convert to platform remove callback returning void 2023-10-10 15:40:22 +02:00
pinctrl-rockchip.h pinctrl: rockchip: Add RV1126 pinctrl support 2022-08-22 09:51:08 +02:00
pinctrl-single.c pinctrl: pinctrl-single: add ti,j7200-padconf compatible 2023-12-04 15:32:42 +01:00
pinctrl-st.c pinctrl: st: drop the wrapper around pinctrl_gpio_direction_input() 2023-11-04 10:23:22 +01:00
pinctrl-stmfx.c pinctrl: stmfx: Convert to platform remove callback returning void 2023-10-10 15:41:35 +02:00
pinctrl-sx150x.c pinctrl: sx150x: Simplify probe() 2023-09-12 10:12:36 +02:00
pinctrl-tb10x.c pinctrl: tb10x: Convert to platform remove callback returning void 2023-10-10 15:42:07 +02:00
pinctrl-tps6594.c pinctrl: tps6594: Add driver for TPS6594 pinctrl and GPIOs 2023-11-14 14:45:35 +01:00
pinctrl-utils.c pinctrl: Convert unsigned to unsigned int 2023-12-04 15:32:42 +01:00
pinctrl-utils.h pinctrl: Convert unsigned to unsigned int 2023-12-04 15:32:42 +01:00
pinctrl-xway.c pinctrl: Use device_get_match_data() 2023-10-30 14:50:42 +01:00
pinctrl-zynq.c
pinctrl-zynqmp.c pinctrl: pinctrl-zynqmp: Add support for output-enable and bias-high impedance 2023-08-07 10:48:03 +02:00
pinmux.c pinctrl: Convert unsigned to unsigned int 2023-12-04 15:32:42 +01:00
pinmux.h pinctrl: Convert unsigned to unsigned int 2023-12-04 15:32:42 +01:00