| # Nordic Semiconductor nRFx MCU line |
| |
| # Copyright (c) 2016-2018 Nordic Semiconductor ASA |
| # SPDX-License-Identifier: Apache-2.0 |
| |
| config SOC_FAMILY_NRF |
| select SOC_COMPATIBLE_NRF |
| select PLATFORM_SPECIFIC_INIT |
| bool |
| |
| if SOC_FAMILY_NRF |
| config SOC_FAMILY |
| string |
| default "nordic_nrf" |
| |
| source "soc/arm/nordic_nrf/Kconfig.peripherals" |
| source "soc/arm/nordic_nrf/*/Kconfig.soc" |
| |
| config NRF_SOC_SECURE_SUPPORTED |
| def_bool !TRUSTED_EXECUTION_NONSECURE || BUILD_WITH_TFM |
| help |
| Hidden function to indicate that that the soc_secure functions are |
| available. |
| The functions are always available when not in non-secure. |
| For non-secure the functions must redirect to secure services exposed |
| by the secure firmware. |
| |
| config NRF_MPU_FLASH_REGION_SIZE |
| hex |
| default 0x1000 |
| depends on HAS_HW_NRF_MPU |
| help |
| FLASH region size for the NRF_MPU peripheral. |
| |
| config NRF_BPROT_FLASH_REGION_SIZE |
| hex |
| default $(dt_node_int_prop_hex,$(DT_CHOSEN_ZEPHYR_FLASH),erase-block-size) |
| depends on HAS_HW_NRF_BPROT |
| help |
| FLASH region size for the NRF_BPROT peripheral (nRF52). |
| |
| config NRF_ACL_FLASH_REGION_SIZE |
| hex |
| default $(dt_node_int_prop_hex,$(DT_CHOSEN_ZEPHYR_FLASH),erase-block-size) |
| depends on HAS_HW_NRF_ACL |
| help |
| FLASH region size for the NRF_ACL peripheral. |
| |
| config NFCT_PINS_AS_GPIOS |
| bool "NFCT pins as GPIOs" |
| depends on $(dt_has_compat,$(DT_COMPAT_NORDIC_NRF_NFCT)) |
| help |
| Two pins are usually reserved for NFC in SoCs that implement the |
| NFCT peripheral. This option switches them to normal GPIO mode. |
| HW enabling happens once in the device lifetime, during the first |
| system startup. Disabling this option will not switch back these |
| pins to NFCT mode. Doing this requires UICR erase prior to |
| flashing device using the image which has this option disabled. |
| |
| NFC pins in nRF52 series: P0.09 and P0.10 |
| NFC pins in nRF5340: P0.02 and P0.03 |
| |
| choice NRF_APPROTECT_HANDLING |
| bool "APPROTECT handling" |
| depends on SOC_SERIES_NRF52X || SOC_NRF5340_CPUNET || \ |
| (SOC_NRF5340_CPUAPP && !TRUSTED_EXECUTION_NONSECURE) |
| default NRF_APPROTECT_USE_UICR |
| help |
| Specifies how the SystemInit() function should handle the APPROTECT |
| mechanism. |
| |
| config NRF_APPROTECT_USE_UICR |
| bool "Use UICR" |
| help |
| When this option is selected, the SystemInit() function loads the |
| firmware branch state of the APPROTECT mechanism from UICR, so if |
| UICR->APPROTECT is disabled, CTRLAP->APPROTECT will be disabled. |
| |
| config NRF_APPROTECT_LOCK |
| bool "Lock" |
| help |
| When this option is selected, the SystemInit() function locks |
| the firmware branch of the APPROTECT mechanism, preventing it |
| from being opened. |
| |
| config NRF_APPROTECT_USER_HANDLING |
| bool "Allow user handling" |
| depends on !SOC_SERIES_NRF52X |
| help |
| When this option is selected, the SystemInit() function does not |
| touch the APPROTECT mechanism, allowing the user code to handle it |
| at later stages, for example, to implement authenticated debug. |
| |
| endchoice |
| |
| choice NRF_SECURE_APPROTECT_HANDLING |
| bool "Secure APPROTECT handling" |
| depends on (SOC_NRF5340_CPUAPP && !TRUSTED_EXECUTION_NONSECURE) |
| default NRF_SECURE_APPROTECT_USE_UICR |
| help |
| Specifies how the SystemInit() function should handle the secure |
| APPROTECT mechanism. |
| |
| config NRF_SECURE_APPROTECT_USE_UICR |
| bool "Use UICR" |
| help |
| When this option is selected, the SystemInit() function loads the |
| firmware branch state of the secure APPROTECT mechanism from UICR, |
| so if UICR->SECUREAPPROTECT is disabled, CTRLAP->SECUREAPPROTECT |
| will be disabled. |
| |
| config NRF_SECURE_APPROTECT_LOCK |
| bool "Lock" |
| help |
| When this option is selected, the SystemInit() function locks the |
| firmware branch of the secure APPROTECT mechanism, preventing it |
| from being opened. |
| |
| config NRF_SECURE_APPROTECT_USER_HANDLING |
| bool "Allow user handling" |
| depends on !SOC_SERIES_NRF52X |
| help |
| When this option is selected, the SystemInit() function does not |
| touch the secure APPROTECT mechanism, allowing the user code to |
| handle it at later stages, for example, to implement authenticated |
| debug. |
| |
| endchoice |
| |
| config NRF_TRACE_PORT |
| bool "nRF TPIU" |
| depends on !SOC_SERIES_NRF51X |
| help |
| Enable this option to initialize the TPIU (Trace Port Interface |
| Unit) for tracing using a hardware probe. If disabled, the trace |
| pins will be used as GPIO. |
| |
| endif # SOC_FAMILY_NRF |