zephyr/drivers/gpio
Gerard Marull-Paretas 2533b13cd2 drivers: gpio: nrfx: add custom drive flags
Now that we have 8 bits reserved for vendor specific GPIO flags,
introduce a new set of flags for nRF platforms to configure pins drive
mode. These new flags are equivalent to the previous existing ones, but
use a naming scheme the fits better with vendor hardware capabilities.

The table below shows the equivalence between old and new flag

| Old flags                 | New flags             |
|---------------------------|-----------------------|
| `NRF_GPIO_DS_DFLT_LOW`    | `NRF_GPIO_DRIVE_S0`   |
| `NRF_GPIO_DS_DFLT_HIGH`   | `NRF_GPIO_DRIVE_S1`   |
| `NRF_GPIO_DS_ALT_LOW`     | `NRF_GPIO_DRIVE_H0`   |
| `NRF_GPIO_DS_ALT_HIGH`    | `NRF_GPIO_DRIVE_H1`   |
| `NRF_GPIO_DS_DFLT`        | `NRF_GPIO_DRIVE_S0S1` |
| `NRF_GPIO_DS_ALT`         | `NRF_GPIO_DRIVE_H0H1` |
| `NRF_GPIO_DS_DFLT_LOW \|` | `NRF_GPIO_DRIVE_S0H1` |
| `NRF_GPIO_DS_ALT_HIGH`    |                       |
| `NRF_GPIO_DS_ALT_LOW \|`  | `NRF_GPIO_DRIVE_H0S1` |
| `NRF_GPIO_DS_DFLT_HIGH`   |                       |

Documentation has been written to explain in more detail the meaning of
the flags and how they can be used.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2022-07-11 13:22:24 +02:00
..
CMakeLists.txt drivers: gpio: ti: add gpio extender sn74hc595 2022-07-04 16:10:37 +02:00
Kconfig drivers: gpio: ti: add gpio extender sn74hc595 2022-07-04 16:10:37 +02:00
Kconfig.andes_atcgpio100 drivers: gpio: remove unused HAS_DTS_GPIO Kconfig symbol 2022-06-10 09:47:31 +02: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: Change DW driver to use depends on instead of select 2022-07-02 06:03:33 -04:00
Kconfig.emul gpio: emulated: default Kconfig value 2022-01-06 11:56:15 -05:00
Kconfig.eos_s3 drivers: gpio: remove unused HAS_DTS_GPIO Kconfig symbol 2022-06-10 09:47:31 +02:00
Kconfig.esp32
Kconfig.fxl6408
Kconfig.gd32 drivers: gpio: gd32: enable gd32vf103 2022-01-11 11:50:35 +01:00
Kconfig.gecko
Kconfig.imx
Kconfig.intel
Kconfig.it8xxx2 drivers: gpio: remove unused HAS_DTS_GPIO Kconfig symbol 2022-06-10 09:47:31 +02:00
Kconfig.litex
Kconfig.lmp90xxx drivers: gpio: revert kconfig init priority for off-chip gpios 2021-12-07 09:53:45 -06:00
Kconfig.lpc11u6x
Kconfig.mcp23s17 drivers: gpio: remove unused HAS_DTS_GPIO Kconfig symbol 2022-06-10 09:47:31 +02:00
Kconfig.mcp23xxx driver: gpio: mcp23xxx: Refactor to generic. 2021-12-08 08:55:28 -05:00
Kconfig.mcux drivers: gpio: remove unused HAS_DTS_GPIO Kconfig symbol 2022-06-10 09:47:31 +02:00
Kconfig.mcux_igpio
Kconfig.mcux_lpc
Kconfig.mmio32
Kconfig.nct38xx driver: gpio: nct38xx: Improve kconfig prompt 2021-11-23 13:19:21 -05:00
Kconfig.neorv32
Kconfig.npcx
Kconfig.nrfx drivers: gpio: nrfx: Use mask to determine if sense is used 2021-12-22 12:03:00 +01:00
Kconfig.pca95xx drivers: gpio: pca95xx: remove superfluous default n for boolean 2022-04-15 10:32:24 -07:00
Kconfig.pca953x
Kconfig.pcal6408a
Kconfig.psoc6
Kconfig.rcar drivers: gpio: rcar: set default according to dt enabled 2022-01-21 14:25:25 -05:00
Kconfig.rpi_pico drivers: gpio: Added support for raspberry pi 2022-02-02 16:23:35 +01:00
Kconfig.rv32m1
Kconfig.sam soc: arm: atmel_sam: samv71: Fix SPI build dependency 2022-01-18 12:12:52 -05:00
Kconfig.sam0
Kconfig.sifive boards: riscv: hifive_unleashed: add GPIO support 2022-02-21 20:46:47 -05:00
Kconfig.sn74hc595 drivers: gpio: ti: add gpio extender sn74hc595 2022-07-04 16:10:37 +02:00
Kconfig.stellaris
Kconfig.stm32 drivers: gpio: stm32: remove SWJ from Kconfig 2022-03-16 10:26:37 +01:00
Kconfig.stmpe1600
Kconfig.sx1509b drivers: gpio: sx1509b: remove superfluous default n for boolean 2022-04-15 10:32:24 -07:00
Kconfig.test drivers: gpio: test driver 2022-01-04 09:10:40 -05:00
Kconfig.xec
Kconfig.xlnx
Kconfig.xlnx_ps drivers: gpio: Xilinx PS MIO / EMIO GPIO driver 2022-03-15 08:44:46 -07:00
gpio_andes_atcgpio100.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_b91.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_cc13xx_cc26xx.c drivers: adjust cc13xx_cc26xx drivers for hal_ti update 2022-07-08 09:37:43 +02:00
gpio_cc32xx.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_cmsdk_ahb.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_cmsdk_ahb.h drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_creg_gpio.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_cy8c95xx.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_dw.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_dw.h drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_dw_registers.h
gpio_emul.c drivers: gpio_emul: support gpio_port_get_direction 2022-06-24 16:19:58 +02:00
gpio_eos_s3.c drivers: gpio: eos_s3: support port_get_direction 2022-06-24 16:19:58 +02:00
gpio_esp32.c drivers: gpio_esp32: Drop IRAM_ATTR from forward declarations 2022-06-20 10:28:06 +02:00
gpio_fxl6408.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_gd32.c soc: arm: gigadevice: use common API headers 2022-06-22 18:41:19 +09:00
gpio_gecko.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_handlers.c api: gpio: add gpio direction query functions and driver api 2022-06-24 16:19:58 +02:00
gpio_imx.c include: add more missing zephyr/ prefixes 2022-05-27 15:20:27 -07:00
gpio_intel.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_ite_it8xxx2.c drivers: add mising braces to single line if statements 2022-07-06 11:00:45 -04:00
gpio_litex.c drivers: gpio: litex: support port_get_direction 2022-06-24 16:19:58 +02:00
gpio_lmp90xxx.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_lpc11u6x.c drivers: add mising braces to single line if statements 2022-07-06 11:00:45 -04:00
gpio_mchp_xec.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_mchp_xec_v2.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_mcp23s17.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_mcp23s17.h drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_mcp23sxx.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_mcp23xxx.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_mcp23xxx.h drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_mcp230xx.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_mcux.c drivers: gpio: mcux: support port_get_direction 2022-06-24 16:19:58 +02:00
gpio_mcux_igpio.c drivers: gpio: gpio_mcux_igpio: add workaround for non contiguous pins 2022-05-18 10:55:22 +02:00
gpio_mcux_lpc.c drivers: gpio: gpio_mcux_lpc: fix lost interrupts 2022-06-30 15:19:53 -05:00
gpio_mmio32.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_nct38xx.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_nct38xx.h drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_nct38xx_alert.c drivers: add mising braces to single line if statements 2022-07-06 11:00:45 -04:00
gpio_nct38xx_port.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_neorv32.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_npcx.c driver: gpio: npcx: Add checking whether pad's configuration is valid 2022-07-08 12:05:09 +02:00
gpio_nrfx.c drivers: gpio: nrfx: add custom drive flags 2022-07-11 13:22:24 +02:00
gpio_pca95xx.c drivers: gpio: pca95xx: do not write to output regs if pin is input 2022-06-05 14:47:41 +02:00
gpio_pca953x.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_pcal6408a.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_psoc6.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_rcar.c drivers: clock: rcar: Rename global includes file 2022-06-28 18:11:44 +02:00
gpio_rpi_pico.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_rv32m1.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_sam.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_sam0.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_sam4l.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_shell.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_sifive.c drivers: gpio: sifive: support port_get_direction 2022-06-24 16:19:58 +02:00
gpio_sn74hc595.c drivers: gpio: ti: add gpio extender sn74hc595 2022-07-04 16:10:37 +02:00
gpio_stellaris.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_stm32.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_stm32.h drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_stmpe1600.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_sx1509b.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_test.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_utils.h
gpio_xlnx_axi.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_xlnx_ps.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_xlnx_ps.h drivers: gpio: Xilinx PS MIO / EMIO GPIO driver 2022-03-15 08:44:46 -07:00
gpio_xlnx_ps_bank.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
gpio_xlnx_ps_bank.h drivers: gpio: Xilinx PS MIO / EMIO GPIO driver 2022-03-15 08:44:46 -07:00