ENTROPY_NRF5_RNG warning with nRF5340

Hi, I  am working with ncs v2.6.0 and I face the same issue than this post : 

https://devzone.nordicsemi.com/f/nordic-q-a/98765/weird-nrf5340-behavior/420856?focus=true

My complete log is the following : 

warning: Experimental symbol BT_LL_SW_SPLIT is enabled.


warning: ENTROPY_NRF5_RNG (defined at drivers/entropy/Kconfig.nrf5:14) has direct dependencies !ENTROPY_NRF_FORCE_ALT && DT_HAS_NORDIC_NRF_RNG_ENABLED && ENTROPY_GENERATOR with value n, but is currently being y-selected by the following symbols:
 - BT_LLL_VENDOR_NORDIC (defined at subsys/bluetooth\controller\Kconfig.ll_sw_split:8), with value y, direct dependencies SOC_COMPATIBLE_NRF && !n && !n && BT_LL_SW_SPLIT && BT_CTLR && BT_HCI && BT (value: y), and select condition SOC_COMPATIBLE_NRF && !n && !n && BT_LL_SW_SPLIT && BT_CTLR && BT_HCI && BT (value: y)

error: Aborting due to Kconfig warnings

The difference is I don't have CONFIG_BT_CTLR=y in my prj.conf. nor any file in the project. Here is my prj.conf :

# Peripheral drivers

# I2C
CONFIG_NRFX_TWI0=y
CONFIG_NRFX_TWI1=y

# Timer
CONFIG_NRFX_TIMER2=y

# GPIO
CONFIG_NRFX_GPIOTE0=y
CONFIG_NRFX_GPIOTE_NUM_OF_EVT_HANDLERS=5

# Flash 
CONFIG_FLASH=y
CONFIG_FLASH_PAGE_LAYOUT=y
CONFIG_MPU_ALLOW_FLASH_WRITE=y

# Others 
CONFIG_NRFX_PWM0=y
CONFIG_NRFX_SPI0=y
CONFIG_NRFX_UART0=y
CONFIG_NRFX_NVMC=y

# Power management
CONFIG_POWEROFF=y
CONFIG_RESET_ON_FATAL_ERROR=y

# Logging
CONFIG_USE_SEGGER_RTT=y

CONFIG_BT=y
CONFIG_BT_PERIPHERAL=y
CONFIG_BT_DEVICE_NAME_DYNAMIC=y
# CONFIG_BT_CTLR_CONN_RSSI=y
# CONFIG_BT_CTLR_TX_PWR_DYNAMIC_CONTROL=y
CONFIG_BT_MAX_CONN=1

# Enable printf floating point support beware this take up to 7ko of flash
CONFIG_CBPRINTF_FP_SUPPORT=y

# Build options
CONFIG_BUILD_NO_GAP_FILL=y
CONFIG_MAIN_STACK_SIZE=8192


The only way to get rid of the warning (that prevents the build) is to move CONFIG_BT=y to cpunet_defconfig, but I see that the ble_coex sample have CONFIG_BT=y in its prj.conf so it should do. 

I am trying to compile a legacy code that was ported to Zephyr/nrfconnect and is working on nRF52832. I just took the nrf7002dk_nrf5340 board and was hoping to make it work (taken appart code incompatibilities but at least to have a viable configuration). There might be dependencies with nrf_rng driver in the code, but KConfig warnings occurs BEFORE compilation right? It doesn't know the actual implementation? I would really appreciate some explanations.

Thank you very much

  • Hello,

    Based on the build errors, it looks like CONFIG_BT_CTLR symbol still gets selected even if you had set it to =n in your project configuration file, but I don't see how. Are you able to upload a minimal version of your project here or in a private ticket so I can try to build it here?

    The only way to get rid of the warning (that prevents the build) is to move CONFIG_BT=y to cpunet_defconfig, but I see that the ble_coex sample have CONFIG_BT=y in its prj.conf so it should do. 

    It seems like enabling CONFIG_BT=y also cause CONFIG_BT_CTLR to be enabled, which is not correct.

    Best regards,

    Vidar

  • Hi, I realised that the nRF52 code uses deprecated rivers such as TWI, SPI etc... By switching to nRF5340, I have to change them to TWIM etc... Now the warning is gone, but I have a bunch of error: unknown type name 'NRF_TWI_Type'/NRF_SPI_Type/NRF_UART_Type so I think the build sticks to the old includes nrf_twi.h instead of including nrf_twim.h and so on. I am struggling to understand why for now. When I try the custom board on ble_coex example it builds correctly. Do you have any idea of what's going on? 

    EDIT : I see why: I have some explicit includes to nrf52 soc in the code so it probably includes nrf_twi.h while NRF_TWI_Type is not defined. I am still investigating I'll keep you in touch. Thank you

  • I confirm that by getting rid of nrf52 dependencies and choosing the right drivers, errors are gone. Thank you

Related