Hi, I have developed a stable program on the nRF52840 board, and now I'm transporting all the code, and trying to make it compatible with an nRF54L15 board.
I used ZMS to assist with managing flash storage, but it isn't working so well on the 54L15.
I used to face an issue with having to rebuild when switching the project directory. However, this was resolved by adding the pm_static.yml file below:
zms_storage:
address: 0xfa000
end_address: 0x100000
placement:
before:
- end
region: flash_primary
size: 0x6000
On the 54L15 board, I tried to run without the pm_static.yml file, and it builds fine, but zms_mount(&fs) fails. Why is this?
I added the pm_static.yml file above to my new project, but my build fails and I get an error of having 2 gaps in flash. How should I resolve this?
Below is the partitions.yml file produced without a pm_static.yml file:
app:
address: 0x48000
end_address: 0x15d000
region: flash_primary
size: 0x115000
nonsecure_storage:
address: 0x15d000
end_address: 0x165000
orig_span: &id001
- settings_storage
- nvs_storage
region: flash_primary
size: 0x8000
span: *id001
nvs_storage:
address: 0x15d000
end_address: 0x163000
inside:
- nonsecure_storage
placement:
before:
- settings_storage
region: flash_primary
size: 0x6000
settings_storage:
address: 0x163000
end_address: 0x165000
inside:
- nonsecure_storage
placement:
after:
- app
before:
- end
region: flash_primary
size: 0x2000
sram_nonsecure:
address: 0x20013000
end_address: 0x2002f000
orig_span: &id002
- sram_primary
region: sram_primary
size: 0x1c000
span: *id002
sram_primary:
address: 0x20013000
end_address: 0x2002f000
region: sram_primary
size: 0x1c000
sram_secure:
address: 0x20000000
end_address: 0x20013000
orig_span: &id003
- tfm_sram
region: sram_primary
size: 0x13000
span: *id003
tfm:
address: 0x0
end_address: 0x40000
placement:
before:
- app
region: flash_primary
size: 0x40000
tfm_its:
address: 0x40000
end_address: 0x42000
inside:
- tfm_storage
placement:
before:
- tfm_otp_nv_counters
region: flash_primary
size: 0x2000
tfm_nonsecure:
address: 0x48000
end_address: 0x15d000
orig_span: &id004
- app
region: flash_primary
size: 0x115000
span: *id004
tfm_otp_nv_counters:
address: 0x42000
end_address: 0x44000
inside:
- tfm_storage
placement:
before:
- tfm_ps
region: flash_primary
size: 0x2000
tfm_ps:
address: 0x44000
end_address: 0x48000
inside:
- tfm_storage
placement:
before:
- tfm_nonsecure
region: flash_primary
size: 0x4000
tfm_secure:
address: 0x0
end_address: 0x40000
orig_span: &id005
- tfm
region: flash_primary
size: 0x40000
span: *id005
tfm_sram:
address: 0x20000000
end_address: 0x20013000
inside:
- sram_secure
placement:
after:
- start
region: sram_primary
size: 0x13000
tfm_storage:
address: 0x40000
end_address: 0x48000
orig_span: &id006
- tfm_ps
- tfm_its
- tfm_otp_nv_counters
region: flash_primary
size: 0x8000
span: *id006
I will appreciate any help, thanks!