I wish to access the device info registers from a non-secure application. It seems like the intended method of doing this is through the NRF_FICR_NS struct, which is populated during system initialization. However, it seems that this variable is never populated on the nrf9160.
I'm looking at the file modules/hal/nordic/nrfx/mdk/system_nrf9160.c
The function SystemInit(void)
line 121-123
The SystemStoreFICRNS() function is what populates the NRF_FICR_NS variable. It is only called when NRF_SKIP_FICR_NS_COPY_TO_RAM is undefined. Makes sense. Now lets see where that is defined...
see the file zephyr/modules/hal_nordic/nrfx/CMakeLists.txt
line 47-48
So the function is disabled on any build for the nRF9160? Why have the function call in the 9160's initialization call if it just gets skipped every time? Is there no way to access these registers from a secure application?