zephyr/drivers/gpio
Bent Ove Stinessen 72d5dee2e3 drivers: gpio_pca95xx: Add GPIO driver enable interrupt support
Allows the use of pin interrupt and callbacks for pca95xx family
GPIO expander chips with an interrupt line.

Enable config flag and define a gpio pin for the expander interrupt-
line (INT) in devicetree and the driver will accept pin interrupt
configurations for the expander gpio pins.

Level triggering is supported through emulation.
A worker is used to avoid waiting for I2C in ISR.

Example devicetree node:
	gpioext0: tca9539@77 {
		compatible = "nxp,pca95xx";
		label = "GPIO_EXT_0";
		reg = <0x77>;
		interrupt-gpios = <&gpio1 15 GPIO_ACTIVE_LOW>;
		gpio-controller;
		#gpio-cells = <2>;
		ngpios = <16>;
	};

Fixes: #27561

Signed-off-by: Bent Ove Stinessen <bent@norbit.no>
2020-10-23 13:47:41 +02:00
..
CMakeLists.txt
gpio_cc13xx_cc26xx.c
gpio_cc32xx.c
gpio_cmsdk_ahb.c
gpio_cmsdk_ahb.h
gpio_dw_registers.h
gpio_dw.c
gpio_dw.h
gpio_esp32.c
gpio_gecko.c
gpio_handlers.c
gpio_ht16k33.c
gpio_imx.c
gpio_intel_apl.c
gpio_litex.c
gpio_lmp90xxx.c
gpio_lpc11u6x.c
gpio_mchp_xec.c
gpio_mcp23s17.c
gpio_mcp23s17.h
gpio_mcux_igpio.c
gpio_mcux_lpc.c
gpio_mcux.c
gpio_mmio32.c
gpio_npcx.c
gpio_nrfx.c
gpio_pca95xx.c
gpio_rv32m1.c
gpio_sam.c
gpio_sam0.c
gpio_shell.c
gpio_sifive.c
gpio_stellaris.c
gpio_stm32.c
gpio_stm32.h
gpio_sx1509b.c
gpio_utils.h
gpio_xlnx_axi.c
Kconfig
Kconfig.cc13xx_cc26xx
Kconfig.cc32xx
Kconfig.cmsdk_ahb
Kconfig.dw
Kconfig.esp32
Kconfig.gecko
Kconfig.ht16k33
Kconfig.imx
Kconfig.intel
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.rv32m1
Kconfig.sam
Kconfig.sam0
Kconfig.sifive
Kconfig.stellaris
Kconfig.stm32
Kconfig.sx1509b
Kconfig.xec
Kconfig.xlnx