The BLE acronym is not an official description of Bluetooth LE, and the Bluetooth SIG only ever refers to it as Bluetooth Low Energy or Bluetooth LE, so Zephyr should as well. This commit does not change any board or vendor specific documentation, and the term BLE may still be used in those. It will be up to the vendors to update it if they want, since many of them are using the term BLE in their products. Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
97 lines
3.2 KiB
Plaintext
97 lines
3.2 KiB
Plaintext
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
config FLASH_NRF_FORCE_ALT
|
|
bool
|
|
depends on SOC_COMPATIBLE_NRF
|
|
help
|
|
This option can be enabled to force an alternative implementation
|
|
of the flash driver.
|
|
|
|
menuconfig SOC_FLASH_NRF
|
|
bool "Nordic Semiconductor nRF flash driver"
|
|
default y
|
|
depends on DT_HAS_NORDIC_NRF51_FLASH_CONTROLLER_ENABLED || \
|
|
DT_HAS_NORDIC_NRF52_FLASH_CONTROLLER_ENABLED || \
|
|
DT_HAS_NORDIC_NRF53_FLASH_CONTROLLER_ENABLED || \
|
|
DT_HAS_NORDIC_NRF91_FLASH_CONTROLLER_ENABLED
|
|
depends on !FLASH_NRF_FORCE_ALT
|
|
select FLASH_HAS_PAGE_LAYOUT
|
|
select FLASH_HAS_DRIVER_ENABLED
|
|
select FLASH_HAS_EXPLICIT_ERASE
|
|
select NRFX_NVMC
|
|
select MPU_ALLOW_FLASH_WRITE if ARM_MPU
|
|
help
|
|
Enables Nordic Semiconductor nRF flash driver.
|
|
|
|
if SOC_FLASH_NRF
|
|
|
|
choice SOC_FLASH_NRF_RADIO_SYNC_CHOICE
|
|
prompt "Nordic nRFx flash driver synchronization"
|
|
default SOC_FLASH_NRF_RADIO_SYNC_TICKER if BT_LL_SW_SPLIT
|
|
default SOC_FLASH_NRF_RADIO_SYNC_NONE
|
|
help
|
|
synchronization between flash memory driver and radio.
|
|
|
|
config SOC_FLASH_NRF_RADIO_SYNC_TICKER
|
|
bool "Nordic nRFx flash driver synchronized with radio"
|
|
depends on BT_LL_SW_SPLIT
|
|
help
|
|
Enable synchronization between flash memory driver and radio using
|
|
Bluetooth LE LL controller ticker API.
|
|
|
|
config SOC_FLASH_NRF_RADIO_SYNC_NONE
|
|
bool "none"
|
|
help
|
|
disable synchronization between flash memory driver and radio.
|
|
endchoice
|
|
|
|
config SOC_FLASH_NRF_PARTIAL_ERASE
|
|
bool "Nordic nRFx flash driver partial erase"
|
|
depends on HAS_HW_NRF_NVMC_PE
|
|
help
|
|
Enable partial erase feature. Partial erase is performed in time
|
|
slices instead of blocking MCU, for the time it is needed to
|
|
complete operation over given area.
|
|
This allows interrupting flash erase between operations
|
|
to perform other task by MCU.
|
|
This feature may also be used for better syncing flash erase
|
|
operations, when compiled with SOC_FLASH_NRF_RADIO_SYNC_TICKER,
|
|
with Bluetooth.
|
|
|
|
config SOC_FLASH_NRF_PARTIAL_ERASE_MS
|
|
int "Partial erase timeout in MS"
|
|
depends on SOC_FLASH_NRF_PARTIAL_ERASE
|
|
default 3
|
|
help
|
|
This is maximum time, in ms, that NVMC will use to erase part
|
|
of Flash, before stopping to let CPU resume operation.
|
|
Minimal timeout is 2ms maximum should not exceed half of
|
|
FLASH_PAGE_ERASE_MAX_TIME_US im ms.
|
|
|
|
config SOC_FLASH_NRF_TIMEOUT_MULTIPLIER
|
|
int "Multiplier for flash operation timeouts [x0.1]"
|
|
depends on !SOC_FLASH_NRF_RADIO_SYNC_NONE
|
|
default 15 if SOC_FLASH_NRF_PARTIAL_ERASE && SOC_FLASH_NRF_RADIO_SYNC_TICKER
|
|
default 10
|
|
help
|
|
This is a multiplier that will be divided by 10 that is applied
|
|
to the flash erase and write operations timeout. The base for
|
|
the multiplication would allow erasing all nRF flash pages in
|
|
blocking mode.
|
|
|
|
config SOC_FLASH_NRF_UICR
|
|
bool "Access to UICR"
|
|
depends on !TRUSTED_EXECUTION_NONSECURE
|
|
help
|
|
Enable operations on UICR. Once enabled UICR are written or read as
|
|
ordinary flash memory. Erase is possible for whole UICR at once.
|
|
|
|
config SOC_FLASH_NRF_EMULATE_ONE_BYTE_WRITE_ACCESS
|
|
bool "8-bit write block size emulation"
|
|
help
|
|
When this option is enabled writing chunks less than minimal write
|
|
block size parameter (imposed by manufacturer) is possible but operation
|
|
is more complex and requires basic user knowledge about NVMC controller.
|
|
|
|
endif # SOC_FLASH_NRF
|