-
Notifications
You must be signed in to change notification settings - Fork 1.4k
cmake: Support manifest for non-partition-manager #24910
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
nRF54H20 does not use partition manager, only Zephyr device tree fixed
partitions. This causes a very niche issue when attempting to use the
DFU zip payload with nRF Connect Device Manager mobile apps- the
manifest contained in the DFU archive fails to parse, due to the
subimage offset being a string instead of a JSON number:
❯ cat build/dfu_application.zip_manifest.json
{
"format-version": 1,
"time": 1759849455,
"files": [
{
"type": "application",
"board": "nrf54h20dk",
"soc": "nrf54h20",
"load_address": "235143168", <- string, not number
"image_index": "0",
"slot_index_primary": "1",
"slot_index_secondary": "2",
"version_MCUBOOT": "0.0.0+0",
"size": 208100,
"file": "peripheral_mds.signed.bin",
"modtime": 1759849455
},
Adjust the value extracted from DT in the case where partition manager
is not used, when generating the DFU zip artifact, so it correctly
produces a number for the field in question.
❯ cat build/dfu_application.zip_manifest.json
{
"format-version": 1,
"time": 1759845147,
"files": [
{
"type": "application",
"board": "nrf54h20dk",
"soc": "nrf54h20",
"load_address": 235143168, <- number, not string 🎉
"image_index": "0",
"slot_index_primary": "1",
"slot_index_secondary": "2",
"version_MCUBOOT": "0.0.0+0",
"size": 220164,
"file": "peripheral_mds.signed.bin",
"modtime": 1759845134
},
Note that I'm only solving the immediate issue- there are other fields
in the manifest that look like numbers, but are strings, and in order
to not cause unintended side-effects, I'm only fixing the known problem.
Signed-off-by: Noah Pendleton <[email protected]>
CI InformationTo view the history of this post, clich the 'edited' button above Inputs:Sources:sdk-nrf: PR head: 32bf3d413f6f80bde5cb1b34e0c1d3df53816445 more detailssdk-nrf:
Github labels
List of changed files detected by CI (1)Outputs:ToolchainVersion: f66cf421f3 Test Spec & Results: ✅ Success; ❌ Failure; 🟠 Queued; 🟡 Progress; ◻️ Skipped;
|
Memory footprint analysis revealed the following potential issuesapplications.hpf.gpio.icbmsg[nrf54l15dk/nrf54l15/cpuflpr]: High RAM usage: 12744[B] - link (cc: @nrfconnect/ncs-ll-ursus) Note: This message is automatically posted and updated by the CI (latest/sdk-nrf/PR-24910/1) |
|
fixed in #24792 , closing |
nRF54H20 does not use partition manager, only Zephyr device tree fixed partitions. This causes a very niche issue when attempting to use the DFU zip payload with nRF Connect Device Manager mobile apps- the manifest contained in the DFU archive fails to parse, due to the subimage offset being a string instead of a JSON number:
Adjust the value extracted from DT in the case where partition manager is not used, when generating the DFU zip artifact, so it correctly produces a number for the field in question.
Note that I'm only solving the immediate issue- there are other fields in the manifest that look like numbers, but are strings, and in order to not cause unintended side-effects, I'm only fixing the known problem.