zephyr/drivers
Marcin Niestroj 9fd26627bb drivers: gpio_nrfx: support edge interrupts using GPIO SENSE
Currently level interrupts are implemented using GPIO SENSE, but edge
interrupts using GPIOTE events. Using GPIOTE events results in increased
power consumption according to product specifications and erratas of
some nRF MCUs. In case of nRF52832 it is <20uA in System ON Idle and
~400-450uA when used in conjunction with SPI or TWI.

Add a user configurable option to select between GPIOTE events and GPIO
SENSE mechanism, for implementing edge interrupts. Selecting GPIO SENSE
option will allow to reduce power consumption in scenarios mentioned by
nRF MCUs erratas.

Additionally GPIO SENSE mechanism (as opposed to GPIOTE event) allows to
detect state changes of pins configured as output.

Signed-off-by: Marcin Niestroj <m.niestroj@grinn-global.com>
2021-03-16 10:02:42 +01:00
..
adc shell: adc: support cc322xx 2021-02-19 10:43:58 -06:00
audio audio: intel_dmic: get dma properties from devicetree 2021-03-02 14:59:17 -05:00
bluetooth bluetooth: hci: h4: Add thread name 2021-03-04 13:17:02 +01:00
can drivers: can: Fix sample point calculation 2021-02-18 12:04:09 -05:00
clock_control driver: clock: npcx: remove useless operands. 2021-03-09 10:33:16 -05:00
console kernel: sem: add K_SEM_MAX_LIMIT 2021-03-05 08:13:53 -06:00
counter drivers: native_posix: fix for native posix counter 2021-03-05 18:18:38 +01:00
crypto kernel: sem: add K_SEM_MAX_LIMIT 2021-03-05 08:13:53 -06:00
dac drivers: dac: dacx3608: fix I2C read error 2021-02-28 16:46:04 -05:00
debug debug: tracing: Add Segger RTT and SystemView linker section options 2020-11-20 12:54:09 -06:00
display drivers: display: Added Sharp memory display drivers. 2021-01-21 17:26:37 +01:00
dma drivers: dma: pl330: Zero initialize the ch_handle 2021-03-04 12:59:46 +01:00
ec_host_cmd_periph drivers: ec_host_cmd_periph: Convert drivers to new DT device macros 2020-12-15 15:17:59 -06:00
edac edac: shell: Add test_default command 2021-02-19 16:06:29 +02:00
eeprom drivers: eeprom: add emulated eeprom in flash 2021-02-19 14:06:15 +01:00
entropy soc: stm32: convert to use DEVICE_DT_GET for clocks 2021-02-16 17:01:37 -06:00
espi driver: espi: npcx: prevent changing data content in host write func. 2021-03-09 10:31:05 -05:00
ethernet drivers: ethernet: gmac: fix coverity issue 2021-03-11 08:49:10 -05:00
flash esp32: drivers: spi_flash: add host flash support 2021-03-06 09:34:35 -05:00
gpio drivers: gpio_nrfx: support edge interrupts using GPIO SENSE 2021-03-16 10:02:42 +01:00
hwinfo hwinfo: support exx32 family 2021-02-22 17:44:33 +03:00
i2c i2c-mcux-lpi2c: take semaphore during transfer 2021-03-15 10:24:03 +01:00
i2s drivers: i2s_sam_ssc.c: store *dev_dma in flash 2021-03-03 16:16:33 +03:00
ieee802154 kernel: sem: add K_SEM_MAX_LIMIT 2021-03-05 08:13:53 -06:00
interrupt_controller drivers/interrupt_controller: Get the IOAPIC RTEs dynamically 2021-03-12 09:23:08 -05:00
ipm soc: stm32: convert to use DEVICE_DT_GET for clocks 2021-02-16 17:01:37 -06:00
kscan device: Remove DEVICE_DT_DECLARE / DEVICE_DT_INST_DECLARE 2021-01-15 07:16:21 -06:00
led drivers: led_pwm: Convert to use DEVICE_DT_GET 2021-02-24 13:45:46 -06:00
led_strip drivers: led_strip: Convert drivers to new DT device macros 2020-12-16 11:10:08 -06:00
lora kernel: sem: add K_SEM_MAX_LIMIT 2021-03-05 08:13:53 -06:00
memc soc: stm32: convert to use DEVICE_DT_GET for clocks 2021-02-16 17:01:37 -06:00
modem drivers: modem: gsm_ppp: Kconfig for autostarting ppp 2021-03-12 13:27:22 +02:00
net net: ppp: Avoid wrapping each byte in muxing headers 2020-10-19 18:29:02 +02:00
neural_net neural_net: intel_gna: convert driver to use device-tree 2021-01-06 05:59:21 -06:00
pcie drivers: pcie: endpoint: Use DEVICE_DT_INST_GET() API 2021-03-02 10:03:34 -06:00
peci driver: peci: Wait until rx fifo gets filled up 2021-02-17 04:05:11 -05:00
pinmux drivers/gpio: stm32: Use gpio device as gpio_stm32_configure arg 2021-03-03 12:13:34 -06:00
pm_cpu_ops aarch64: pm_cpu_ops: Introduce pm_cpu_ops subsystem 2021-03-04 06:53:19 -05:00
ps2 drivers: ps2: Convert drivers to new DT device macros 2020-12-15 15:17:59 -06:00
ptp_clock
pwm drivers: pwm: NXP: Convert clock control to use DEVICE_DT_GET 2021-02-18 10:47:15 -06:00
regulator drivers: regulator: update to new delayable work API 2021-03-03 20:06:00 -05:00
sensor drivers/sensor: iis2iclx: fix multi-instance using new helpers 2021-03-10 06:11:45 -05:00
serial drivers: uart: sam0: Convert dma to use DEVICE_DT_GET 2021-03-08 18:22:27 -06:00
spi drivers: spi: Remove unused Kconfig symbols 2021-03-09 04:53:46 -05:00
timer arch/xtensa: General cleanup, remove dead code 2021-03-08 11:14:27 -05:00
usb drivers: usb_dc_stm32: remove confusing comments 2021-02-24 12:01:50 +01:00
video drivers: video: ov7725: add sensor driver for ov7725 2021-01-06 08:33:38 -06:00
virtualization drivers/virtualization: Take advantage of pcie_bdf_lookup() 2021-02-15 08:23:05 -05:00
watchdog drivers/watchdog: wwdg_stm32: Check return value of clock_control_on 2021-03-09 09:08:40 -05:00
wifi drivers: wifi: winc1500: Add new config flag 2021-03-04 09:34:00 +02:00
CMakeLists.txt aarch64: pm_cpu_ops: Introduce pm_cpu_ops subsystem 2021-03-04 06:53:19 -05:00
Kconfig aarch64: pm_cpu_ops: Introduce pm_cpu_ops subsystem 2021-03-04 06:53:19 -05:00