diff --git a/boards/posix/nrf52_bsim/Kconfig.board b/boards/posix/nrf52_bsim/Kconfig.board index a2852c120b792..468edff999d8d 100644 --- a/boards/posix/nrf52_bsim/Kconfig.board +++ b/boards/posix/nrf52_bsim/Kconfig.board @@ -9,7 +9,6 @@ config BOARD_NRF52_BSIM select CONSOLE_HAS_DRIVER select NRF_RTC_TIMER select CLOCK_CONTROL - select CLOCK_CONTROL_NRF help Will produce a console Linux process which can be executed natively. It needs the BabbleSim simulator both in compile time and to execute diff --git a/drivers/clock_control/Kconfig.nrf b/drivers/clock_control/Kconfig.nrf index c7f17d1f4f9b3..3fe072a4eb76c 100644 --- a/drivers/clock_control/Kconfig.nrf +++ b/drivers/clock_control/Kconfig.nrf @@ -7,13 +7,14 @@ menuconfig CLOCK_CONTROL_NRF bool "NRF Clock controller support" depends on SOC_COMPATIBLE_NRF + default y help Enable support for the Nordic Semiconductor nRFxx series SoC clock driver. if CLOCK_CONTROL_NRF -choice +choice CLOCK_CONTROL_NRF_SOURCE prompt "32KHz clock source" default CLOCK_CONTROL_NRF_K32SRC_XTAL @@ -34,7 +35,7 @@ config CLOCK_CONTROL_NRF_K32SRC_BLOCKING initially start running and automatically switch to crystal when ready. -choice +choice CLOCK_CONTROL_NRF_ACCURACY prompt "32KHz clock accuracy" default CLOCK_CONTROL_NRF_K32SRC_500PPM if CLOCK_CONTROL_NRF_K32SRC_RC default CLOCK_CONTROL_NRF_K32SRC_20PPM diff --git a/drivers/entropy/Kconfig.nrf5 b/drivers/entropy/Kconfig.nrf5 index b0c41c83169d7..5185743f36d7d 100644 --- a/drivers/entropy/Kconfig.nrf5 +++ b/drivers/entropy/Kconfig.nrf5 @@ -9,6 +9,7 @@ menuconfig ENTROPY_NRF5_RNG bool "nRF5 RNG driver" depends on SOC_COMPATIBLE_NRF select ENTROPY_HAS_DRIVER + default y help This option enables the RNG peripheral, which is a random number generator, based on internal thermal noise, that provides a @@ -59,7 +60,6 @@ config ENTROPY_NRF5_ISR_THRESHOLD buffer goes below this number hardware entropy generation will be started. - config ENTROPY_NRF5_PRI int "RNG interrupt priority" range 0 2 if SOC_SERIES_NRF51X diff --git a/drivers/flash/Kconfig b/drivers/flash/Kconfig index 8e82507ee0229..edff05ccf6803 100644 --- a/drivers/flash/Kconfig +++ b/drivers/flash/Kconfig @@ -41,6 +41,7 @@ config FLASH_SHELL config FLASH_PAGE_LAYOUT bool "API for retrieving the layout of pages" depends on FLASH_HAS_PAGE_LAYOUT + default y help Enables API for retrieving the layout of flash memory pages. diff --git a/drivers/flash/Kconfig.nrf b/drivers/flash/Kconfig.nrf index 15aed4ab01739..13e49f5cbc44f 100644 --- a/drivers/flash/Kconfig.nrf +++ b/drivers/flash/Kconfig.nrf @@ -3,6 +3,7 @@ config SOC_FLASH_NRF depends on SOC_FAMILY_NRF select FLASH_HAS_PAGE_LAYOUT select FLASH_HAS_DRIVER_ENABLED + default y help Enables Nordic Semiconductor nRF flash driver. diff --git a/drivers/timer/Kconfig b/drivers/timer/Kconfig index 7987cc8b9743f..490297b62f75f 100644 --- a/drivers/timer/Kconfig +++ b/drivers/timer/Kconfig @@ -111,7 +111,8 @@ config ALTERA_AVALON_TIMER config NRF_RTC_TIMER bool "nRF Real Time Counter (NRF_RTC1) Timer" default y - depends on CLOCK_CONTROL_NRF + depends on CLOCK_CONTROL + depends on SOC_COMPATIBLE_NRF select TICKLESS_CAPABLE help This module implements a kernel device driver for the nRF Real Time diff --git a/samples/bluetooth/ipsp/prj.conf b/samples/bluetooth/ipsp/prj.conf index a0684a2ef0f9e..168929d7df165 100644 --- a/samples/bluetooth/ipsp/prj.conf +++ b/samples/bluetooth/ipsp/prj.conf @@ -2,6 +2,7 @@ CONFIG_BT=y CONFIG_BT_DEBUG_LOG=y CONFIG_BT_SMP=y CONFIG_BT_PERIPHERAL=y +CONFIG_BT_CENTRAL=y CONFIG_BT_L2CAP_DYNAMIC_CHANNEL=y CONFIG_BT_DEVICE_NAME="Test IPSP node" CONFIG_NETWORKING=y diff --git a/samples/bluetooth/ipsp/prj_dbg.conf b/samples/bluetooth/ipsp/prj_dbg.conf index da3484e1ee57a..a70be99d2e90a 100644 --- a/samples/bluetooth/ipsp/prj_dbg.conf +++ b/samples/bluetooth/ipsp/prj_dbg.conf @@ -2,6 +2,7 @@ CONFIG_BT=y CONFIG_BT_DEBUG_LOG=y CONFIG_BT_SMP=y CONFIG_BT_PERIPHERAL=y +CONFIG_BT_CENTRAL=y CONFIG_BT_L2CAP_DYNAMIC_CHANNEL=y CONFIG_BT_DEVICE_NAME="Test IPSP node" CONFIG_NETWORKING=y diff --git a/samples/bluetooth/ipsp/prj_zep1656.conf b/samples/bluetooth/ipsp/prj_zep1656.conf index 8d81e5a93b794..0c489f421f48e 100644 --- a/samples/bluetooth/ipsp/prj_zep1656.conf +++ b/samples/bluetooth/ipsp/prj_zep1656.conf @@ -2,6 +2,7 @@ CONFIG_BT=y CONFIG_BT_DEBUG_LOG=y CONFIG_BT_SMP=y CONFIG_BT_PERIPHERAL=y +CONFIG_BT_CENTRAL=y CONFIG_BT_L2CAP_DYNAMIC_CHANNEL=y CONFIG_BT_DEVICE_NAME="Test IPSP node" CONFIG_NETWORKING=y diff --git a/soc/arm/nordic_nrf/Kconfig.defconfig b/soc/arm/nordic_nrf/Kconfig.defconfig index c52948808323a..9248ce7608275 100644 --- a/soc/arm/nordic_nrf/Kconfig.defconfig +++ b/soc/arm/nordic_nrf/Kconfig.defconfig @@ -12,20 +12,6 @@ source "soc/arm/nordic_nrf/*/Kconfig.defconfig.series" config BUILD_OUTPUT_HEX default y -if FLASH - -config SOC_FLASH_NRF - default y - -endif # FLASH - -if ENTROPY_GENERATOR - -config ENTROPY_NRF5_RNG - default y - -endif # ENTROPY_GENERATOR - if SPI config GPIO diff --git a/soc/arm/nordic_nrf/nrf51/Kconfig.series b/soc/arm/nordic_nrf/nrf51/Kconfig.series index 2c3c9e7551ad1..3b3d63ffeb514 100644 --- a/soc/arm/nordic_nrf/nrf51/Kconfig.series +++ b/soc/arm/nordic_nrf/nrf51/Kconfig.series @@ -12,7 +12,6 @@ config SOC_SERIES_NRF51X select SOC_FAMILY_NRF select NRF_RTC_TIMER select CLOCK_CONTROL - select CLOCK_CONTROL_NRF select HAS_STATE_DEEP_SLEEP_1 select XIP select HAS_CMSIS diff --git a/soc/arm/nordic_nrf/nrf52/Kconfig.series b/soc/arm/nordic_nrf/nrf52/Kconfig.series index 8dbc298b40301..110852cf119d9 100644 --- a/soc/arm/nordic_nrf/nrf52/Kconfig.series +++ b/soc/arm/nordic_nrf/nrf52/Kconfig.series @@ -13,7 +13,6 @@ config SOC_SERIES_NRF52X select SOC_FAMILY_NRF select NRF_RTC_TIMER select CLOCK_CONTROL - select CLOCK_CONTROL_NRF select HAS_STATE_DEEP_SLEEP_1 select XIP select HAS_CMSIS diff --git a/soc/arm/nordic_nrf/nrf91/Kconfig.series b/soc/arm/nordic_nrf/nrf91/Kconfig.series index a35217317aae1..729a59919a69d 100644 --- a/soc/arm/nordic_nrf/nrf91/Kconfig.series +++ b/soc/arm/nordic_nrf/nrf91/Kconfig.series @@ -15,7 +15,6 @@ config SOC_SERIES_NRF91X select SOC_FAMILY_NRF select NRF_RTC_TIMER select CLOCK_CONTROL - select CLOCK_CONTROL_NRF select HAS_STATE_DEEP_SLEEP_1 select XIP select HAS_CMSIS diff --git a/subsys/bluetooth/common/Kconfig b/subsys/bluetooth/common/Kconfig index bbaa6d120ead2..c51b9a69f9960 100644 --- a/subsys/bluetooth/common/Kconfig +++ b/subsys/bluetooth/common/Kconfig @@ -6,8 +6,15 @@ # SPDX-License-Identifier: Apache-2.0 # +config BT_HAS_HCI_VS + bool + help + This option is set by the Bluetooth controller to indicate support + for the Zephyr HCI Vendor-Specific Commands and Event. + config BT_HCI_VS bool "Zephyr HCI Vendor-Specific Commands" + depends on BT_HAS_HCI_VS default y help Enable support for the Zephyr HCI Vendor-Specific Commands in the diff --git a/subsys/bluetooth/controller/Kconfig b/subsys/bluetooth/controller/Kconfig index d747668ad8edc..8af9b4a6bf138 100644 --- a/subsys/bluetooth/controller/Kconfig +++ b/subsys/bluetooth/controller/Kconfig @@ -23,6 +23,7 @@ choice BT_LL_CHOICE config BT_LL_SW bool "Software-based BLE Link Layer" select BT_RECV_IS_RX_THREAD + select BT_HAS_HCI_VS select ENTROPY_GENERATOR select ENTROPY_NRF5_RNG if SOC_COMPATIBLE_NRF select ENTROPY_NRF5_BIAS_CORRECTION if SOC_COMPATIBLE_NRF diff --git a/subsys/bluetooth/host/Kconfig b/subsys/bluetooth/host/Kconfig index 3fc1da9e36aba..81fdabbd15873 100644 --- a/subsys/bluetooth/host/Kconfig +++ b/subsys/bluetooth/host/Kconfig @@ -48,17 +48,20 @@ config BT_RX_BUF_LEN (4 bytes) and the ACL header (also 4 bytes) which yields 73 bytes. config BT_HCI_TX_STACK_SIZE + # NOTE: This value is derived from other symbols and should not be + # user-configurable. Do not give it a prompt. int default 512 if BT_H4 default 512 if BT_H5 default 416 if BT_SPI - default 940 if BT_CTLR && NO_OPTIMIZATIONS - default 1024 if BT_CTLR && BT_CENTRAL - default 640 if BT_CTLR + default 940 if BT_CTLR && (BT_LL_SW || BT_LL_SW_SPLIT) && NO_OPTIMIZATIONS + default 1024 if BT_CTLR && (BT_LL_SW || BT_LL_SW_SPLIT) && BT_CENTRAL + default 640 if BT_CTLR && (BT_LL_SW || BT_LL_SW_SPLIT) default 512 if BT_USERCHAN # Even if no driver is selected the following default is still - # needed e.g. for unit tests. - default 512 + # needed e.g. for unit tests. This default will also server as + # the worst-case stack size if an out-of-tree controller is used. + default 1024 help Stack size needed for executing bt_send with specified driver diff --git a/subsys/fs/Kconfig b/subsys/fs/Kconfig index de3691455fa4c..2eb51a6cbe1bb 100644 --- a/subsys/fs/Kconfig +++ b/subsys/fs/Kconfig @@ -37,7 +37,7 @@ config FAT_FILESYSTEM_ELM config FILE_SYSTEM_NFFS bool "NFFS file system support" - select FLASH_PAGE_LAYOUT + depends on FLASH_PAGE_LAYOUT select FS_FLASH_STORAGE_PARTITION help Enables NFFS file system support. diff --git a/subsys/net/l2/Kconfig b/subsys/net/l2/Kconfig index f4b0955f7fd2f..6459407dbf242 100644 --- a/subsys/net/l2/Kconfig +++ b/subsys/net/l2/Kconfig @@ -16,11 +16,11 @@ config NET_L2_DUMMY config NET_L2_BT bool "Enable Bluetooth support" depends on NET_IPV6 - select BT - select BT_PERIPHERAL - select BT_CENTRAL - select BT_SMP - select BT_L2CAP_DYNAMIC_CHANNEL + depends on BT + depends on BT_PERIPHERAL + depends on BT_CENTRAL + depends on BT_SMP + depends on BT_L2CAP_DYNAMIC_CHANNEL select NET_6LO help Enable Bluetooth driver that send and receives IPv6 packets, diff --git a/tests/net/all/prj.conf b/tests/net/all/prj.conf index f887ad036ae38..ee0c366cecb3b 100644 --- a/tests/net/all/prj.conf +++ b/tests/net/all/prj.conf @@ -53,6 +53,12 @@ CONFIG_NET_L2_IEEE802154_SECURITY=y CONFIG_NET_L2_IEEE802154_SECURITY_CRYPTO_DEV_NAME="CRYPTO-DEV" CONFIG_NET_L2_DUMMY=y CONFIG_NET_L2_ETHERNET=y + +CONFIG_BT=y +CONFIG_BT_PERIPHERAL=y +CONFIG_BT_CENTRAL=y +CONFIG_BT_SMP=y +CONFIG_BT_L2CAP_DYNAMIC_CHANNEL=y CONFIG_NET_L2_BT=y CONFIG_NET_L2_BT_ZEP1656=y CONFIG_NET_L2_BT_SEC_LEVEL=4