Issues with Segger Systemview Post Mortem Mode

Hi,

We are seeing issues with Segger Systemview Post Mortem Mode. Original issues were revealed on our custom board with SDK 2.6.1. After enabling the feature firmware crashes with a hard fault after couple seconds.

CONFIG_SEGGER_SYSTEMVIEW=y
CONFIG_TRACING=y
CONFIG_SEGGER_SYSTEMVIEW_BOOT_ENABLE=y
CONFIG_SEGGER_SYSVIEW_POST_MORTEM_MODE=y

Failure message without any more info followed by restart:
"FATAL ERROR: HardFault"


Tried replicating this on your dev kit with an example app using 2 different versions of the SDK. Seems there are issues there too.

Example app: smp_svr with overlay-bt.conf
NRF53DK - nrf5340dk_nrf5340_cpuapp_ns
NRF Connect SDK 2.6.1 and 2.7.0
SystemView_V252d

Step 1 - Enable Systemview

CONFIG_SEGGER_SYSTEMVIEW=y
CONFIG_TRACING=y

Both 2.6.1 and 2.7.0 work as expected and Systemview recording works.


Step 2 - Enable post mortem mode

CONFIG_SEGGER_SYSTEMVIEW_BOOT_ENABLE=y
CONFIG_SEGGER_SYSVIEW_POST_MORTEM_MODE=y

Both 2.6.1 and 2.7.0 work as expected and Systemview post mortem recording works.


Step 3 - Increase load by enabling more debug logging

#CONFIG_LOG_MAX_LEVEL=3
CONFIG_LOG_DEFAULT_LEVEL=4

2.6.1 bootloops without any interesting log messages:

I: Starting bootloader
I: Primary image: magic=bad, swap_type=0x0, copy_done=0x2, image_ok=0x2
I: Secondary image: magic=unset, swap_type=0x1, copy_done=0x3, image_ok=0x3
I: Boot source: none
I: Image index: 0, Swap type: none
I: Bootloader chainload address offset: 0xc000
*** Booting nRF Connect SDK 3758bcbfa5cd ***
I: Starting bootloader
I: Primary image: magic=bad, swap_type=0x0, copy_done=0x2, image_ok=0x2
I: Secondary image: magic=unset, swap_type=0x1, copy_done=0x3, image_ok=0x3
I: Boot source: none
I: Image index: 0, Swap type: none
I: Bootloader chainload address offset: 0xc000
*** Booting nRF Connect SDK 3758bcbfa5cd ***
I: Starting bootloader

2.7.0 crashes with a hard fault:


Any ideas?

Cheers,
Rait

Parents Reply
  • Hi Amanda,

    I believe I am able to replicate the issue from Rait's initial post, with the following:

    1. Open ncs\v2.6.1\zephyr\samples\subsys\mgmt\mcumgr\smp_svr

    2. modify prj.conf as shown:


    3. Create build configuration as shown:
     

    4. Flash to nrf5340dk

    5. Serial log shows boot looping behavior:



    Looks like you are commenting out CONFIG_LOG_MAX_LEVEL=3 in different .conf rather than the prj.conf?

    Kind regards,
    Samuel S.

Children
Related