nuttx/arch/arm/src/nrf52/Kconfig

310 lines
4.9 KiB
Plaintext
Raw Normal View History

#
# For a description of the syntax of this configuration file,
# see the file kconfig-language.txt in the NuttX tools repository.
#
comment "NRF52 Configuration Options"
choice
prompt "NRF52 Chip Selection"
default ARCH_CHIP_NRF52832
depends on ARCH_CHIP_NRF52
config ARCH_CHIP_NRF52832
bool "NRF52832"
select ARCH_FAMILY_NRF52
select NRF52_HAVE_BPROT
config ARCH_CHIP_NRF52833
bool "NRF52832"
select ARCH_FAMILY_NRF52
select NRF52_HAVE_ACL
select NRF52_HAVE_UART1
select NRF52_HAVE_PORT1
select NRF52_HAVE_SPI3_MASTER
select NRF52_HAVE_USBDEV
select NRF52_HAVE_PWM3
config ARCH_CHIP_NRF52840
bool "NRF52840"
select ARCH_FAMILY_NRF52
select NRF52_HAVE_ACL
select NRF52_HAVE_UART1
select NRF52_HAVE_PORT1
select NRF52_HAVE_SPI3_MASTER
select NRF52_HAVE_QSPI
select NRF52_HAVE_USBDEV
select NRF52_HAVE_PWM3
select NRF52_HAVE_CRYPTOCELL
endchoice # NRF52 Chip Selection
# NRF52 Families
config ARCH_FAMILY_NRF52
bool
default n
# Peripheral support
config NRF52_HAVE_BPROT
bool
default n
config NRF52_HAVE_ACL
bool
default n
config NRF52_HAVE_UART1
bool
default n
config NRF52_HAVE_PORT1
bool
default n
config NRF52_HAVE_SPI3_MASTER
bool
default n
config NRF52_HAVE_QSPI
bool
default n
config NRF52_HAVE_USBDEV
bool
default n
config NRF52_HAVE_PWM3
bool
default n
config NRF52_HAVE_CRYPTOCELL
bool
default n
# Peripheral Selection
config NRF52_I2C_MASTER
bool
default n
config NRF52_SPI_MASTER
bool
default n
config NRF52_UART
bool
default n
config NRF52_TIMER
bool
default n
config NRF52_RTC
bool
default n
config NRF52_SPI_MASTER_WORKAROUND_1BYTE_TRANSFER
bool "SPI Master 1 Byte transfer anomaly workaround"
depends on NRF52_SPI_MASTER && ARCH_CHIP_NRF52832
default y
---help---
Enable the workaround to fix SPI Master 1 byte transfer bug
which occurs in NRF52832 revision 1 and revision 2.
menu "NRF52 Peripheral Selection"
config NRF52_I2C0_MASTER
bool "I2C0 Master"
default n
select NRF52_I2C_MASTER
config NRF52_I2C1_MASTER
bool "I2C1 Master"
default n
select NRF52_I2C_MASTER
config NRF52_SPI0_MASTER
bool "SPI0 Master"
default n
select NRF52_SPI_MASTER
config NRF52_SPI1_MASTER
bool "SPI1 Master"
default n
select NRF52_SPI_MASTER
config NRF52_SPI3_MASTER
bool "SPI3 Master"
default n
select NRF52_SPI_MASTER
depends on NRF52_HAVE_SPI3_MASTER
if NRF52_SPI_MASTER
config NRF52_SPI_MASTER_INTERRUPTS
bool "SPI Master interrupts support"
default n
endif
config NRF52_GPIOTE
bool "GPIOTE (GPIO interrupts)"
default n
config NRF52_UART0
bool "UART0"
default n
select UART0_SERIALDRIVER
select NRF52_UART
config NRF52_UART1
bool "UART1"
default n
depends on NRF52_HAVE_UART1
select UART1_SERIALDRIVER
select NRF52_UART
config NRF52_RNG
bool "Random Generator"
default n
select ARCH_HAVE_RNG
config NRF52_QSPI
bool "QSPI"
default n
depends on NRF52_HAVE_QSPI
config NRF52_WDT
bool "Watchdog (WDT)"
default n
select WATCHDOG
config NRF52_RADIO
bool "RADIO"
depends on EXPERIMENTAL
default n
config NRF52_NFCT
bool "NFCT"
default n
config NRF52_SAADC
bool "SAADC"
default n
config NRF52_TIMER0
bool "TIMER0"
select NRF52_TIMER
default n
config NRF52_TIMER1
bool "TIMER1"
select NRF52_TIMER
default n
config NRF52_TIMER2
bool "TIMER2"
select NRF52_TIMER
default n
config NRF52_TIMER3
bool "TIMER3"
select NRF52_TIMER
default n
config NRF52_TIMER4
bool "TIMER4"
select NRF52_TIMER
default n
2020-07-25 04:04:04 +02:00
config NRF52_PPI
bool "PPI"
default n
config NRF52_RTC0
bool "RTC0"
select NRF52_RTC
default n
config NRF52_RTC1
bool "RTC1"
select NRF52_RTC
default n
config NRF52_RTC2
bool "RTC2"
select NRF52_RTC
default n
config NRF52_I2S
bool "I2S"
default n
config NRF52_USBDEV
bool "USB Device"
default n
depends on NRF52_HAVE_USBDEV
config NRF52_COMP
bool "COMP"
default n
endmenu # NRF52 Peripheral Selection
menu "Clock Configuration"
config NRF52_HFCLK_XTAL
bool "Enable HFCLK from external crystal"
default n
---help---
If the board includes an external high-frequency crystal, enable this
option to supply the HFCLK. If this option is disabled, the internal
oscillator will be used.
Note that the RADIO peripheral requires the HFCLK to be used.
config NRF52_USE_LFCLK
bool "Enable LFCLK"
default n
---help---
Enable low-frequency clock.
if NRF52_USE_LFCLK
choice
prompt "LFCLK source"
default NRF52_LFCLK_XTAL
config NRF52_LFCLK_XTAL
bool "External 32.768Khz crystal"
config NRF52_LFCLK_RC
bool "Internal RC oscillator"
config NRF52_LFCLK_SYNTH
bool "Synthesized from HFCLK"
endchoice
endif # NRF52_USE_LFCLK
endmenu # Clock Configuration
config NRF52_FLASH_PREFETCH
bool "Enable FLASH Pre-fetch"
default y
---help---
Enable FLASH prefetch
config NRF52_PROGMEM
bool "FLASH program memory"
default n
select ARCH_HAVE_PROGMEM
---help---
Enable support FLASH interfaces as defined in include/nuttx/progmem.h
menu "GPIO Interrupt Configuration"
endmenu # GPIO Interrupt Configuration