mirror of
https://github.com/zephyrproject-rtos/zephyr
synced 2025-09-03 14:11:56 +00:00
Refactors all of the on-chip GPIO drivers to use a shared driver class initialization priority configuration, CONFIG_GPIO_INIT_PRIORITY, to allow configuring GPIO drivers separately from other devices. This is similar to other driver classes like I2C and SPI. Most drivers previously used CONFIG_KERNEL_INIT_PRIORITY_DEFAULT or CONFIG_KERNEL_INIT_PRIORITY_DEVICE, therefore the default for this new option is the lower of the two, which means earlier initialization. Driver-specific options for off-chip I2C- or SPI-based GPIO drivers are left intact because they often need to be initialized at a different priority than on-chip GPIO drivers. Signed-off-by: Maureen Helm <maureen.helm@intel.com>
43 lines
1.3 KiB
Plaintext
43 lines
1.3 KiB
Plaintext
# Copyright (c) 2018 Nordic Semiconductor ASA
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
menuconfig GPIO_NRFX
|
|
bool "nRF GPIO driver"
|
|
default y
|
|
depends on SOC_FAMILY_NRF
|
|
select NRFX_GPIOTE
|
|
help
|
|
Enable GPIO driver for nRF line of MCUs.
|
|
|
|
if GPIO_NRFX
|
|
|
|
choice
|
|
prompt "nRF GPIO edge interrupts mechanism"
|
|
default GPIO_NRF_INT_EDGE_USING_GPIOTE
|
|
|
|
config GPIO_NRF_INT_EDGE_USING_GPIOTE
|
|
bool "Edge interrupts using GPIOTE"
|
|
help
|
|
Enable GPIO edge interrupts implementation using GPIOTE events.
|
|
|
|
config GPIO_NRF_INT_EDGE_USING_SENSE
|
|
bool "Edge interrupts using SENSE"
|
|
help
|
|
Enable GPIO edge interrupts implementation using GPIO SENSE, which is
|
|
a level interrupt mechanism. Conversion from level to edge interrupts
|
|
notification happens in GPIO driver, so it is transparent to GPIO
|
|
consumers after switching from GPIOTE mechanism.
|
|
|
|
Use this option as an alternative to GPIOTE event mechanism. According
|
|
to product specifications and erratas to some nRF MCUs, using GPIOTE
|
|
results in increased current consumption in System ON Idle and in
|
|
conjunction with SPI/TWI peripherals. Selecting this option allows to
|
|
reduce current for those cases.
|
|
|
|
Using this option additionally allows detecting state changes of pins
|
|
configured as output, which might be handy for some applications.
|
|
|
|
endchoice
|
|
|
|
endif # GPIO_NRFX
|