I ran into a couple issues with network core updates on NRF5340 when updating from 3.1.0 to 3.4.0 SDK.
Problem 1) Network core updates are not backwards compatible with 3.1.0 bootloaders with downgrade prevention
NCS 3.4.0 now encrypts the controller firmware (when encryption key specified) and sets --rom-fixed to the appropriate slot address on network core, which populates the load address of the MCUboot header.
Setting the load address causes issues with a prior bug in the 3.1.0 SDK, which was corrected by commit 8d3b38e224835f1a96c5567104b19d6383d75c6f "modules: mcuboot: hooks: nrf53_hooks: Fix invalid offset". However, the old bootloader has the bug, and that is what is flashed to my fielded devices. So the fw_info search now fails with the new images.
Assuming load address is corrected for, the firmware is now also encrypted, so the search for fw_info also fails for that reason, because the data is now encrypted.
I was able to patch b0_mcuboot_signing.cmake to create another signed bin after the build which is not encrypted and has rom fixed set to zero. It appears to be accepted by both the 3.1.0 and 3.4.0 bootloaders. I think that is probably what I'll have to go with for already fielded bootloaders.
Problem 2) Network core updates with encryption are not compatible with downgrade prevention on 3.4.0 bootloaders
The new bootloaders have the fix for the load address problem, but the controller updates are now encrypted, so the fw_info search fails.
Ultimately, I'd like to have simultaneous secure update of the application and network cores with downgrade protection. I'll take encryption of the controller, but it's not a must. I'm wondering if there is some configuration that is expected to support this on the NRF5340 without patching SDK that I should have migrated to as part of the SDK update process, but missed it in the documentation.
I haven't tried (or investigated much) the hardware based downgrade protection, but given I think it might use TLVs to communicate the counters, it might circumvent the encryption issue.
