u-boot/drivers/gpio
Jonas Karlman 88b962f393 gpio: rockchip: Add support for RK3568 and RK3588 banks
The GPIO V2 controller on RK3568 and RK3588 works very similar to
prior generation, main difference is the use of a write mask in the
upper 16 bits and register address offset have changed.

GPIO_VER_ID is a new register at 0x0078 that is used to determine when
the driver should use new or old register offsets and values. Earlier
generation return 0x0 from this offset.

Refactor code and add support for the GPIO V2 controller used in RK3568
and RK3588.

Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2023-04-21 15:16:01 +08: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 sunxi: Clean up inclusions of asm/arch/gpio.h 2021-10-11 10:46:44 +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 GPIO: fxl6408: Add support for FXL6408 GPIO expander 2022-02-05 13:38:39 +01:00
gpio-rcar.c gpio: renesas: Add R-Car Gen4 support 2023-04-07 14:33:50 +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: allow passing NULL to gpio_request_by_line_name() to search all gpio controllers 2023-03-30 15:09:59 -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 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
iproc_gpio.c doc: replace @return by Return: 2022-01-19 18:11:34 +01:00
Kconfig driver, gpio: Add support for MPC 8xx CPU ports 2023-02-11 08:47:58 +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 Merge branch 'for-2023.04' of https://source.denx.de/u-boot/custodians/u-boot-mpc8xx 2023-02-12 15:25:09 -05: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 dm: treewide: Rename auto_alloc_size members to be shorter 2020-12-13 08:00:25 -07: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 gpio: npcm: Add support for Nuvoton NPCM SoCs 2022-05-05 09:29:58 -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: support pcal6524 2022-07-26 11:29:00 +02: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
rk_gpio.c gpio: rockchip: Add support for RK3568 and RK3588 banks 2023-04-21 15:16:01 +08: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 sunxi: pinctrl: Create the driver skeleton 2022-04-04 23:23:50 +01:00
tca642x.c global: Move remaining CONFIG_SYS_* to CFG_SYS_* 2022-12-05 16:06:08 -05:00
tegra186_gpio.c dm: Use access methods for dev/uclass private data 2021-01-05 12:24:40 -07:00
tegra186_gpio_priv.h common: Drop linux/bitops.h from common header 2020-05-18 21:19:23 -04:00
tegra_gpio.c doc: replace @return by Return: 2022-01-19 18:11:34 +01: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 dm: treewide: Rename ..._platdata variables to just ..._plat 2020-12-13 16:51:09 -07: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