zephyr/drivers/gpio
Daniel Leung 7295c19893 gpio: intel: fix reg address for Apollo Lake
On Apollo Lake, each GPIO controller has more than 32 pins.
But Zephyr API can only manipulate 32 pins per controller.
So the workaround is to divide each hardware GPIO controller
into 32-pin blocks so each block has a GPIO driver instance.
Compounding to the issue is that there cannot be two device
tree nodes with same register address. So another workaround
is to increment the register addresses by 1 for each block.
So when mapping the address, the lowest 8-bit needs to be
masked to get the actual hardware address.

Fixes #28551

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2021-05-18 20:45:55 -04:00
..
CMakeLists.txt drivers: gpio: Generic GPIO driver for Intel SoC 2021-05-07 09:45:50 -04:00
Kconfig drivers: gpio: add initial support for cy8c95xx I/O expander 2021-04-28 10:53:52 -04:00
Kconfig.cc13xx_cc26xx
Kconfig.cc32xx
Kconfig.cmsdk_ahb
Kconfig.cy8c95xx drivers: gpio: add initial support for cy8c95xx I/O expander 2021-04-28 10:53:52 -04:00
Kconfig.dw
Kconfig.emul
Kconfig.eos_s3
Kconfig.esp32
Kconfig.gecko
Kconfig.ht16k33
Kconfig.imx
Kconfig.intel drivers: gpio: Generic GPIO driver for Intel SoC 2021-05-07 09:45:50 -04:00
Kconfig.it8xxx2
Kconfig.litex
Kconfig.lmp90xxx
Kconfig.lpc11u6x
Kconfig.mcp23s17
Kconfig.mcux
Kconfig.mcux_igpio
Kconfig.mcux_lpc
Kconfig.mmio32
Kconfig.npcx
Kconfig.nrfx
Kconfig.pca95xx
Kconfig.pcal6408a
Kconfig.psoc6 drivers: gpio: Fix when psoc6 gpio driver is built 2021-05-10 13:47:11 -05:00
Kconfig.rcar drivers: gpio: add Renesas RCar gpio 2021-04-22 10:38:45 +02:00
Kconfig.rv32m1
Kconfig.sam
Kconfig.sam0
Kconfig.sifive
Kconfig.stellaris
Kconfig.stm32
Kconfig.sx1509b
Kconfig.xec
Kconfig.xlnx
gpio_cc13xx_cc26xx.c drivers: gpio: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
gpio_cc32xx.c drivers: gpio: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
gpio_cmsdk_ahb.c drivers: gpio: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
gpio_cmsdk_ahb.h
gpio_cy8c95xx.c drivers: gpio: gpio_cy8c95xx: Add error check of i2c_reg_read_byte 2021-05-14 02:56:31 -05:00
gpio_dw.c drivers: gpio: Fixup missed PM conversion 2021-05-08 09:59:07 -05:00
gpio_dw.h
gpio_dw_registers.h
gpio_emul.c drivers: gpio: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
gpio_eos_s3.c drivers: gpio: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
gpio_esp32.c drivers: gpio: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
gpio_gecko.c drivers: gpio: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
gpio_handlers.c api: gpio: do not support INT flags in gpio_pin_configure 2021-05-07 12:42:08 -05:00
gpio_ht16k33.c drivers: gpio: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
gpio_imx.c drivers: gpio: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
gpio_intel.c gpio: intel: fix reg address for Apollo Lake 2021-05-18 20:45:55 -04:00
gpio_ite_it8xxx2.c ite: drivers/pinmux: modify pinmux driver 2021-05-05 08:45:16 -04:00
gpio_litex.c drivers: gpio: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
gpio_lmp90xxx.c drivers: gpio: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
gpio_lpc11u6x.c drivers: gpio: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
gpio_mchp_xec.c drivers: gpio: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
gpio_mcp23s17.c drivers: gpio: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
gpio_mcp23s17.h
gpio_mcux.c drivers: gpio: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
gpio_mcux_igpio.c drivers: gpio: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
gpio_mcux_lpc.c drivers: gpio: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
gpio_mmio32.c
gpio_npcx.c driver: gpio: npcx: force io type as open-drain if select to 1p8v. 2021-04-30 12:38:59 -05:00
gpio_nrfx.c drivers: gpio: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
gpio_pca95xx.c drivers: gpio: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
gpio_pcal6408a.c drivers: gpio: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
gpio_psoc6.c drivers: gpio: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
gpio_rcar.c drivers: gpio: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
gpio_rv32m1.c drivers: gpio: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
gpio_sam.c drivers: gpio: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
gpio_sam0.c drivers: gpio: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
gpio_sam4l.c drivers: gpio: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
gpio_shell.c
gpio_sifive.c drivers: gpio: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
gpio_stellaris.c drivers: gpio: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
gpio_stm32.c pm: device: Align state names with system states 2021-05-07 18:35:12 -04:00
gpio_stm32.h drivers/gpio: stm32: Enable PM_DEVICE services 2021-05-06 14:31:13 -04:00
gpio_sx1509b.c drivers: gpio: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00
gpio_utils.h
gpio_xlnx_axi.c drivers: gpio: remove usage of device_pm_control_nop 2021-04-28 10:55:35 -04:00