We've added our app's overlay files into the mcuboot child_image directory so that mcuboot is initialized with the proper state of the board. In our nrf5340_cpuapp_common-pinctrl.dtsi
we define some uart0_default
and uart0_sleep
with group nodes, as is done for the nrf5340 dev kit, since we still use the dev kit for testing. In our overlay files for other custom boards, we delete these group nodes and set new ones later:
/delete-node/ &{/pin-controller/uart0_default/group1/}; /delete-node/ &{/pin-controller/uart0_default/group2/}; /delete-node/ &{/pin-controller/uart0_sleep/group1/};
For the main app build this works as expected; it rebuilds successfully upon any changes as well. When we build the merged app + child image for the first time using a new build configuration, this also works as expected. However, any future rebuilds present this issue when building the child_image:
parse error: component 'group2' in path '/pin-controller/uart0_default/group2/' does not exist
Rather than ignoring the `delete-node` step, which I assume happens for the main app rebuild, it fails.
We have to build our build configuration (including the existing build), create a new build config, and build it in order to get a new build. This has made the development process more manual and tedious.
Any thoughts on how to resolve this?