zephyr/drivers/gpio
Wealian Liao 5a9bc389f0 driver: gpio: nct38xx: Add NCT38XX gpio driver support
NCT38XX series, which are i2c-based chips, support a different number
of GPIO functionality. For NCT3807, it has 2 GPIO ports on the same i2c
device address. For NCT3808, it has 2 GPIO ports on different i2c
device addresses. This commit adds NCT38XX GPIO driver support &
provides the interrupt handler for the share alert pin.

The following is NCT3807 devicetree node example:
```
&i2c0_0 {
	nct3807_0: nct3807@70 {
		#address-cells = <1>;
		#size-cells = <0>;
		compatible = "nuvoton,nct38xx-gpio";
		reg = <0x70>;
		label = "NCT3807_0";

		gpio@0 {
			compatible = "nuvoton,nct38xx-gpio-port";
			reg = <0x0>;
			label = "NCT3807_0_GPIO0";
			gpio-controller;
			#gpio-cells = <2>;
			ngpios = <8>;
			pin_mask = <0xff>;
			pinmux_mask = <0xf7>;
		};

		gpio@1 {
			compatible = "nuvoton,nct38xx-gpio-port";
			reg = <0x1>;
			label = "NCT3807_0_GPIO1";
			gpio-controller;
			#gpio-cells = <2>;
			ngpios = <8>;
			pin_mask = <0xff>;
		};
	};
};
```

Signed-off-by: Wealian Liao <WHLIAO@nuvoton.com>
2021-11-20 08:00:38 -05:00
..
CMakeLists.txt driver: gpio: nct38xx: Add NCT38XX gpio driver support 2021-11-20 08:00:38 -05:00
Kconfig driver: gpio: nct38xx: Add NCT38XX gpio driver support 2021-11-20 08:00:38 -05:00
Kconfig.andes_atcgpio100 drivers: gpio: add andes atcgpio100 GPIO driver 2021-08-30 13:40:14 -04:00
Kconfig.b91
Kconfig.cc13xx_cc26xx
Kconfig.cc32xx
Kconfig.cmsdk_ahb
Kconfig.creg_gpio drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
Kconfig.cy8c95xx
Kconfig.dw drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
Kconfig.emul kconfig: gpio: remove experimental on GPIO_EMUL setting 2021-10-25 10:46:48 +02:00
Kconfig.eos_s3
Kconfig.esp32 drivers: gpio: esp32: use dts and improve code checks 2021-10-21 10:53:34 -04:00
Kconfig.fxl6408 drivers: gpio: Add fxl6408 driver 2021-08-09 13:02:20 -04:00
Kconfig.gecko
Kconfig.imx
Kconfig.intel
Kconfig.it8xxx2
Kconfig.litex
Kconfig.lmp90xxx drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
Kconfig.lpc11u6x
Kconfig.mcp23s17
Kconfig.mcp230xx drivers: gpio: Added mcp230xx GPIO driver. 2021-11-16 10:13:14 -05:00
Kconfig.mcux
Kconfig.mcux_igpio
Kconfig.mcux_lpc
Kconfig.mmio32
Kconfig.nct38xx driver: gpio: nct38xx: Add NCT38XX gpio driver support 2021-11-20 08:00:38 -05:00
Kconfig.neorv32 drivers: gpio: add neorv32 gpio driver 2021-10-15 09:46:53 -04:00
Kconfig.npcx
Kconfig.nrfx drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
Kconfig.pca95xx
Kconfig.pca953x
Kconfig.pcal6408a
Kconfig.psoc6
Kconfig.rcar
Kconfig.rv32m1
Kconfig.sam
Kconfig.sam0
Kconfig.sifive
Kconfig.stellaris
Kconfig.stm32
Kconfig.stmpe1600
Kconfig.sx1509b drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
Kconfig.xec
Kconfig.xlnx
gpio_andes_atcgpio100.c drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
gpio_b91.c drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
gpio_cc13xx_cc26xx.c drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
gpio_cc32xx.c drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
gpio_cmsdk_ahb.c drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
gpio_cmsdk_ahb.h
gpio_creg_gpio.c drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
gpio_cy8c95xx.c drivers: gpio: add combined drive strength flags and mask 2021-11-11 07:20:12 -05:00
gpio_dw.c drivers: use new PM macros 2021-11-19 10:11:32 +01:00
gpio_dw.h
gpio_dw_registers.h
gpio_emul.c drivers: use new PM macros 2021-11-19 10:11:32 +01:00
gpio_eos_s3.c drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
gpio_esp32.c drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
gpio_fxl6408.c drivers: gpio: Add fxl6408 driver 2021-08-09 13:02:20 -04:00
gpio_gecko.c drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
gpio_handlers.c
gpio_imx.c drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
gpio_intel.c drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
gpio_ite_it8xxx2.c drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
gpio_litex.c drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
gpio_lmp90xxx.c drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
gpio_lpc11u6x.c drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
gpio_mchp_xec.c drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
gpio_mchp_xec_v2.c drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
gpio_mcp23s17.c drivers: Apply SPI API change to relevant places 2021-11-19 11:50:38 +01:00
gpio_mcp23s17.h gpio: mcp23s17: convert to `spi_dt_spec` 2021-10-25 09:01:05 -04:00
gpio_mcp230xx.c drivers: gpio: Added mcp230xx GPIO driver. 2021-11-16 10:13:14 -05:00
gpio_mcp230xx.h drivers: gpio: Added mcp230xx GPIO driver. 2021-11-16 10:13:14 -05:00
gpio_mcux.c drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
gpio_mcux_igpio.c drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
gpio_mcux_lpc.c drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
gpio_mmio32.c
gpio_nct38xx.c driver: gpio: nct38xx: Add NCT38XX gpio driver support 2021-11-20 08:00:38 -05:00
gpio_nct38xx.h driver: gpio: nct38xx: Add NCT38XX gpio driver support 2021-11-20 08:00:38 -05:00
gpio_nct38xx_alert.c driver: gpio: nct38xx: Add NCT38XX gpio driver support 2021-11-20 08:00:38 -05:00
gpio_nct38xx_port.c driver: gpio: nct38xx: Add NCT38XX gpio driver support 2021-11-20 08:00:38 -05:00
gpio_neorv32.c drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
gpio_npcx.c driver: gpio: npcx: Fix API header 2021-11-16 21:22:48 -05:00
gpio_nrfx.c drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
gpio_pca95xx.c
gpio_pca953x.c drivers: gpio: add combined drive strength flags and mask 2021-11-11 07:20:12 -05:00
gpio_pcal6408a.c drivers: gpio: add combined drive strength flags and mask 2021-11-11 07:20:12 -05:00
gpio_psoc6.c drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
gpio_rcar.c drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
gpio_rv32m1.c drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
gpio_sam.c drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
gpio_sam0.c drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
gpio_sam4l.c drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
gpio_shell.c gpio: shell: Change shell *shell to shell *sh 2021-09-28 19:51:33 -04:00
gpio_sifive.c drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
gpio_stellaris.c drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
gpio_stm32.c drivers: use new PM macros 2021-11-19 10:11:32 +01:00
gpio_stm32.h
gpio_stmpe1600.c
gpio_sx1509b.c drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00
gpio_utils.h
gpio_xlnx_axi.c drivers: gpio: Refactor drivers to use shared init priority 2021-11-15 14:38:55 -05:00