u-boot/drivers/gpio
Andre Przywara 452369cd0c pinctrl: sunxi: add new D1 pinctrl support
For the first time since at least the Allwinner A10 SoCs, the D1 (and
related cores) use a new pincontroller MMIO register layout, so we
cannot use our hardcoded, fixed offsets anymore.
Ideally this would all be handled by devicetree and DM drivers, but for
the DT-less SPL we still need the legacy interfaces.

Add a new Kconfig symbol to differenciate between the two generations of
pincontrollers, and just use that to just switch some basic symbols.
The rest is already abstracted enough, so works out of the box.

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Reviewed-by: Sam Edwards <CFSworks@gmail.com>
Tested-by: Sam Edwards <CFSworks@gmail.com>
Tested-by: Samuel Holland <samuel@sholland.org>
2023-10-22 23:40:57 +01:00
..
74x164_gpio.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
adp5585_gpio.c gpio: adp5585: add gpio driver for ADP5585 I/O Expander Controller 2022-10-21 16:06:13 -04:00
altera_pio.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
at91_gpio.c dm: treewide: Rename ..._platdata variables to just ..._plat 2020-12-13 16:51:09 -07:00
atmel_pio4.c pinctrl: at91-pio4: Bind GPIO driver to the pinctrl DT node 2022-09-19 09:51:04 +03:00
axp_gpio.c pinctrl: sunxi: remove GPIO_EXTRA_HEADER 2023-10-22 23:40:57 +01:00
bcm2835_gpio.c dm: treewide: Rename ..._platdata variables to just ..._plat 2020-12-13 16:51:09 -07:00
bcm6345_gpio.c dm: treewide: Rename auto_alloc_size members to be shorter 2020-12-13 08:00:25 -07:00
cortina_gpio.c dm: treewide: Rename auto_alloc_size members to be shorter 2020-12-13 08:00:25 -07:00
da8xx_gpio.c gpio: da8xx_gpio: Fix gpio name with address 2022-01-16 08:31:03 -05:00
da8xx_gpio.h dm: treewide: Rename ..._platdata variables to just ..._plat 2020-12-13 16:51:09 -07:00
dwapb_gpio.c dm: Use access methods for dev/uclass private data 2021-01-05 12:24:40 -07:00
ftgpio010.c gpio: ftgpio010: Add support for Faraday Technology FTGPIO010 2022-10-06 21:05:17 -04:00
gpio-aspeed.c gpio: aspeed: Fix incorrect offset of read back register. 2022-04-19 14:51:11 -04:00
gpio-fxl6408.c global: Use proper project name U-Boot 2023-06-12 13:24:31 +02:00
gpio-rcar.c gpio: renesas: Simplify .request/.rfree callbacks 2023-05-16 22:24:24 +02:00
gpio-rza1.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
gpio-uclass.c gpio: Remove unused NEEDS_MANUAL_RELOC code bits 2023-09-14 10:42:24 -04:00
gpio-uniphier.c dm: treewide: Rename auto_alloc_size members to be shorter 2020-12-13 08:00:25 -07:00
gpio_slg7xl45106.c gpio: slg7xl45106: Update gpio desc flags from DT 2022-04-05 15:13:13 +02:00
hi6220_gpio.c WS cleanup: remove excessive empty lines 2021-09-30 08:08:56 -04:00
hsdk-creg-gpio.c dm: treewide: Rename 'platdata' variables to just 'plat' 2020-12-13 16:51:08 -07:00
imx_rgpio2p.c gpio: rgpio2p: Enhance reading of GPIO pin value 2022-05-23 11:37:58 +02:00
intel_broadwell_gpio.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
intel_gpio.c treewide: Use OF_REAL instead of !OF_PLATDATA 2021-09-25 09:46:15 -06:00
intel_ich6_gpio.c x86: Convert some debug statements to use logging 2023-07-17 17:23:14 +08:00
iproc_gpio.c doc: replace @return by Return: 2022-01-19 18:11:34 +01:00
Kconfig pinctrl: sunxi: add new D1 pinctrl support 2023-10-22 23:40:57 +01:00
kw_gpio.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
lpc32xx_gpio.c dm: Use access methods for dev/uclass private data 2021-01-05 12:24:40 -07:00
Makefile gpio: Add RZ/G2L GPIO driver 2023-10-16 15:46:18 +02:00
max7320_gpio.c drivers/gpio: add support for MAX7320 i2c i/o expander 2021-10-19 11:25:24 -04:00
mcp230xx_gpio.c gpio: mcp230xx: Introduce new driver 2021-08-22 10:53:14 +02:00
mpc8xx_gpio.c driver, gpio: Add support for MPC 8xx CPU ports 2023-02-11 08:47:58 +01:00
mpc8xxx_gpio.c gpio: mpc8xxx: Support controller register physical address beyond 32-bit 2021-03-05 10:25:43 +05:30
mpc83xx_spisel_boot.c dm: treewide: Rename ..._platdata variables to just ..._plat 2020-12-13 16:51:09 -07:00
mscc_sgpio.c drivers: use dev_read_addr_ptr when cast to pointer 2023-05-06 17:28:18 +08:00
msm_gpio.c arm: dts: qcom: Sync pinctrl DT nodes with Linux bindings 2022-08-26 10:55:46 -04:00
mt7620_gpio.c gpio: add GPIO controller driver for MediaTek MT7620 SoC 2021-01-24 21:39:26 +01:00
mt7621_gpio.c dm: Use access methods for dev/uclass private data 2021-01-05 12:24:40 -07:00
mvebu_gpio.c gpio: mvebu_gpio: Set bank name to mvebu%d 2022-07-28 15:17:46 +02:00
mxc_gpio.c arm: Remove unused mx27 code 2022-12-05 16:07:13 -05:00
mxs_gpio.c treewide: Simply conditions with the new OF_REAL 2021-09-25 09:46:15 -06:00
nmk_gpio.c gpio: Add driver for Nomadik GPIO 2021-07-14 16:47:56 -04:00
npcm_gpio.c pinctrl: nuvoton: set output state before enabling the output 2023-06-01 12:32:03 -04:00
nx_gpio.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
octeon_gpio.c pci: Add mask parameter to dm_pci_map_bar() 2022-05-03 18:33:29 -04:00
omap_gpio.c treewide: Use OF_REAL instead of !OF_PLATDATA 2021-09-25 09:46:15 -06:00
pca953x.c global: Move remaining CONFIG_SYS_* to CFG_SYS_* 2022-12-05 16:06:08 -05:00
pca953x_gpio.c gpio: pca953x: Add TI TCA9554 support 2023-08-17 16:39:20 -04:00
pcf8575_gpio.c i2c: pcf8575: Add support for 8 bit I2C IO expanders (like pca8574) 2021-07-23 07:13:25 -04:00
pic32_gpio.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
qcom_pmic_gpio.c gpio: qcom: add direction functions for pwrkey 2023-02-10 12:50:00 -05:00
qe_gpio.c gpio: Add QUICC Engine GPIOs driver 2023-04-06 14:50:03 +02:00
rk_gpio.c gpio: rockchip: Add support for RK3568 and RK3588 banks 2023-04-21 15:16:01 +08:00
rzg2l-gpio.c gpio: Add RZ/G2L GPIO driver 2023-10-16 15:46:18 +02:00
s5p_gpio.c SoC: exynos: add support for exynos 78x0 2021-10-31 11:25:39 -04:00
sandbox.c gpio: sandbox: Add GPIOD_IS_AF for gpio configured in alternate function 2022-09-15 09:55:30 -04:00
sandbox_test.c dm: gpio: Add of-platdata support 2021-09-25 09:46:15 -06:00
sh_pfc.c pinctrl: renesas: Add R8A779F0 S4 PFC tables 2023-04-07 17:13:28 +02:00
sifive-gpio.c gpio: sifive: Fix -Wint-to-pointer-cast warning 2021-10-20 10:59:09 +08:00
sl28cpld-gpio.c gpio: add sl28cpld driver 2022-02-28 11:59:35 +05:30
stm32_gpio.c gpio: stm32_gpio: Rework GPIO hole management 2022-05-10 13:54:48 +02:00
stm32_gpio_priv.h gpio: stm32_gpio: Rework GPIO hole management 2022-05-10 13:54:48 +02:00
sunxi_gpio.c pinctrl: sunxi: add new D1 pinctrl support 2023-10-22 23:40:57 +01:00
tca642x.c global: Move remaining CONFIG_SYS_* to CFG_SYS_* 2022-12-05 16:06:08 -05:00
tegra186_gpio.c treewide: use dev_read_addr_*_ptr() where appropriate 2023-10-13 14:01:42 -06:00
tegra186_gpio_priv.h common: Drop linux/bitops.h from common header 2020-05-18 21:19:23 -04:00
tegra_gpio.c drivers: use dev_read_addr_ptr when cast to pointer 2023-05-06 17:28:18 +08:00
turris_omnia_mcu.c gpio: turris_omnia_mcu: Fix registering gpios 2022-09-26 10:04:37 +02:00
vybrid_gpio.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
xilinx_gpio.c drivers: use dev_read_addr_ptr when cast to pointer 2023-05-06 17:28:18 +08:00
zynq_gpio.c dm: treewide: Rename ..._platdata variables to just ..._plat 2020-12-13 16:51:09 -07:00
zynqmp_gpio_modepin.c gpio: zynqmp: Handle error from get_gpio_modepin 2023-01-27 08:42:47 +01:00