Can't flash nRF54H20 after updating the SDFW when migrating to NCS 2.8.0

I followed the migration guide for NCS 2.8.0 here for a custom board with engineering rev B silicon. After doing so I can't flash the board anymore and it gives me this error when trying to flash:

Flashing build to 52001095
west flash -d /Users/alealfaro/Sibel/Engineering/Firmware/alice/zephyr/samples/hello_world/build --skip-rebuild --dev-id 52001095

-- west flash: using runner nrfutil
-- runners.nrfutil: reset after flashing requested
-- runners.nrfutil: Flashing file: /Users/alealfaro/Sibel/Engineering/Firmware/alice/zephyr/samples/hello_world/build/hello_world/zephyr/uicr_merged.hex
-- runners.nrfutil: Reset
-- runners.nrfutil: Programming image
Error: One or more batch tasks failed:
- [Probe] Device error: Failed to get access to memory range 0x0e1ef000..0x0e1ef110: Error in ADAC operation: The ADAC command SDFW_ADAC_MEM_CFG failed with status ADAC_FAILURE (0x0001), code: Generic

FATAL ERROR: command exited with status 1: nrfutil --json device x-execute-batch --batch-path /Users/alealfaro/Sibel/Engineering/Firmware/alice/zephyr/samples/hello_world/build/hello_world/zephyr/generated_nrfutil_batch.json --serial-number 52001095

I've tried to recover the board and erase all and program the binaries again but it's not working anymore. When checking the boot status I get this failure description:

Failure description:
Stage: Secure Domain firmware
Step: An error occurred while booting the local domains (0xaf)
Status code: -1

What can I do to recover this board?

Parents
  • Hi

    Yes, you're right. NCS 2.8.0 will be the correct NCS version here. Sorry about the confusion.

    Can you try erasing the states of local domains and then recover the device with the following commands:

    nrfutil device x-boot-mode-set --boot-mode safe --traits jlink
    nrfutil device erase --all --log-level trace --core Application --traits jlink
    nrfutil device erase --all --log-level trace --core Network --traits jlink
    nrfutil device x-boot-mode-set --boot-mode normal --traits jlink

    Best regards,

    Simon

  • Hi Simon, I tried that and then try to flash the application. I'm not having any issues flashing anymore but I'm still facing issues with board booting up and being responsive. If I get the boot-status I'm getting this output again:

    Boot status: Failure (0x0bafff76)
    Failure description:
    Stage: Secure Domain firmware
    Step: An error occurred while booting the local domains (0xaf)
    Status code: -138

    I was investigating and found this page on custom board bring-up. I wasn't aware the BICR firmware is board-specific and the one provided in the migration guide is only compatible with the nRF54H20 DKs. I flashed this BICR firmware to my custom board when I was trying to migrate and could've that caused this issue? I've tried to generate the BICR hex file using the custom board BICR device tree file (which we used when bringing-up for the first time) and flashing it according to the guide but not luck so far. If this is the issue is there any way to recover the board?

    docs.nordicsemi.com/.../ug_nrf54h20_custom_pcb.html

  • Hi Alejandro

    Oh, right. Then I think the best would be to use a new custom board and bring it up according to the custom PCB user guide. You can see there that for one there is a caution message saying that a mismatch between the board and the configured BICR values can damage the device or set it in an unrecoverable state, so you should definitely "start over" on a fresh board to see if that fixes the issue you're seeing or not. The error you're seeing is still similar and points to the issue being in the local domains, but that could be because the incorrect BICR has been flashed onto the board.

    Best regards,

    Simon

Reply
  • Hi Alejandro

    Oh, right. Then I think the best would be to use a new custom board and bring it up according to the custom PCB user guide. You can see there that for one there is a caution message saying that a mismatch between the board and the configured BICR values can damage the device or set it in an unrecoverable state, so you should definitely "start over" on a fresh board to see if that fixes the issue you're seeing or not. The error you're seeing is still similar and points to the issue being in the local domains, but that could be because the incorrect BICR has been flashed onto the board.

    Best regards,

    Simon

Children
No Data
Related