nrf5340: How to use xip feature and app image burning to external flash

Hi,

Now I'm using the matter lock demo to develop products(v2.1.2\nrf\samples\matter\lock), but I find that the demo image is too large, and it is impossible to extend our application with internal flash.

I want to use the xip feature, but I don't know how to use it and change the pm_static or other config,  I didn't get any useful information in this project of machine learning. Is there any detailed documentation on how to use the xip execution.

In the matter lock demo, I have add my application code to it, it is show the follow error 

pls check it and give me helping, thanks!

Parents
  • add the pm_static_dfu.yaml and .config

    PM_MCUBOOT_OFFSET=0x0
    PM_MCUBOOT_ADDRESS=0x0
    PM_MCUBOOT_END_ADDRESS=0x8000
    PM_MCUBOOT_SIZE=0x8000
    PM_MCUBOOT_NAME=mcuboot
    PM_MCUBOOT_ID=0
    PM_mcuboot_ID=PM_MCUBOOT_ID
    PM_mcuboot_IS_ENABLED=1
    PM_0_LABEL=MCUBOOT
    PM_MCUBOOT_PRIMARY_1_OFFSET=0x0
    PM_MCUBOOT_PRIMARY_1_ADDRESS=0x0
    PM_MCUBOOT_PRIMARY_1_END_ADDRESS=0x40000
    PM_MCUBOOT_PRIMARY_1_SIZE=0x40000
    PM_MCUBOOT_PRIMARY_1_NAME=mcuboot_primary_1
    PM_MCUBOOT_PRIMARY_1_ID=1
    PM_mcuboot_primary_1_ID=PM_MCUBOOT_PRIMARY_1_ID
    PM_mcuboot_primary_1_IS_ENABLED=1
    PM_1_LABEL=MCUBOOT_PRIMARY_1
    PM_MCUBOOT_SECONDARY_OFFSET=0x0
    PM_MCUBOOT_SECONDARY_ADDRESS=0x0
    PM_MCUBOOT_SECONDARY_END_ADDRESS=0xf3000
    PM_MCUBOOT_SECONDARY_SIZE=0xf3000
    PM_MCUBOOT_SECONDARY_NAME=mcuboot_secondary
    PM_MCUBOOT_SECONDARY_ID=2
    PM_mcuboot_secondary_ID=PM_MCUBOOT_SECONDARY_ID
    PM_mcuboot_secondary_IS_ENABLED=1
    PM_2_LABEL=MCUBOOT_SECONDARY
    PM_MCUBOOT_PAD_OFFSET=0x8000
    PM_MCUBOOT_PAD_ADDRESS=0x8000
    PM_MCUBOOT_PAD_END_ADDRESS=0x8200
    PM_MCUBOOT_PAD_SIZE=0x200
    PM_MCUBOOT_PAD_NAME=mcuboot_pad
    PM_MCUBOOT_PAD_ID=3
    PM_mcuboot_pad_ID=PM_MCUBOOT_PAD_ID
    PM_mcuboot_pad_IS_ENABLED=1
    PM_3_LABEL=MCUBOOT_PAD
    PM_MCUBOOT_PRIMARY_OFFSET=0x8000
    PM_MCUBOOT_PRIMARY_ADDRESS=0x8000
    PM_MCUBOOT_PRIMARY_END_ADDRESS=0xfb000
    PM_MCUBOOT_PRIMARY_SIZE=0xf3000
    PM_MCUBOOT_PRIMARY_NAME=mcuboot_primary
    PM_MCUBOOT_PRIMARY_ID=4
    PM_mcuboot_primary_ID=PM_MCUBOOT_PRIMARY_ID
    PM_mcuboot_primary_IS_ENABLED=1
    PM_4_LABEL=MCUBOOT_PRIMARY
    PM_MCUBOOT_PRIMARY_SPAN="mcuboot_pad app"
    PM_APP_OFFSET=0x8200
    PM_APP_ADDRESS=0x8200
    PM_APP_END_ADDRESS=0xfb000
    PM_APP_SIZE=0xf2e00
    PM_APP_NAME=app
    PM_APP_ID=5
    PM_app_ID=PM_APP_ID
    PM_app_IS_ENABLED=1
    PM_5_LABEL=APP
    PM_MCUBOOT_PRIMARY_APP_OFFSET=0x8200
    PM_MCUBOOT_PRIMARY_APP_ADDRESS=0x8200
    PM_MCUBOOT_PRIMARY_APP_END_ADDRESS=0xfb000
    PM_MCUBOOT_PRIMARY_APP_SIZE=0xf2e00
    PM_MCUBOOT_PRIMARY_APP_NAME=mcuboot_primary_app
    PM_MCUBOOT_PRIMARY_APP_ID=6
    PM_mcuboot_primary_app_ID=PM_MCUBOOT_PRIMARY_APP_ID
    PM_mcuboot_primary_app_IS_ENABLED=1
    PM_6_LABEL=MCUBOOT_PRIMARY_APP
    PM_MCUBOOT_PRIMARY_APP_SPAN="app"
    PM_RAM_FLASH_OFFSET=0x40000
    PM_RAM_FLASH_ADDRESS=0x40000
    PM_RAM_FLASH_END_ADDRESS=0x40000
    PM_RAM_FLASH_SIZE=0x0
    PM_RAM_FLASH_NAME=ram_flash
    PM_RAM_FLASH_ID=7
    PM_ram_flash_ID=PM_RAM_FLASH_ID
    PM_ram_flash_IS_ENABLED=1
    PM_7_LABEL=RAM_FLASH
    PM_MCUBOOT_SECONDARY_1_OFFSET=0xf3000
    PM_MCUBOOT_SECONDARY_1_ADDRESS=0xf3000
    PM_MCUBOOT_SECONDARY_1_END_ADDRESS=0x133000
    PM_MCUBOOT_SECONDARY_1_SIZE=0x40000
    PM_MCUBOOT_SECONDARY_1_NAME=mcuboot_secondary_1
    PM_MCUBOOT_SECONDARY_1_ID=8
    PM_mcuboot_secondary_1_ID=PM_MCUBOOT_SECONDARY_1_ID
    PM_mcuboot_secondary_1_IS_ENABLED=1
    PM_8_LABEL=MCUBOOT_SECONDARY_1
    PM_FACTORY_DATA_OFFSET=0xfb000
    PM_FACTORY_DATA_ADDRESS=0xfb000
    PM_FACTORY_DATA_END_ADDRESS=0xfc000
    PM_FACTORY_DATA_SIZE=0x1000
    PM_FACTORY_DATA_NAME=factory_data
    PM_FACTORY_DATA_ID=9
    PM_factory_data_ID=PM_FACTORY_DATA_ID
    PM_factory_data_IS_ENABLED=1
    PM_9_LABEL=FACTORY_DATA
    PM_SETTINGS_STORAGE_OFFSET=0xfc000
    PM_SETTINGS_STORAGE_ADDRESS=0xfc000
    PM_SETTINGS_STORAGE_END_ADDRESS=0x100000
    PM_SETTINGS_STORAGE_SIZE=0x4000
    PM_SETTINGS_STORAGE_NAME=settings_storage
    PM_SETTINGS_STORAGE_ID=10
    PM_settings_storage_ID=PM_SETTINGS_STORAGE_ID
    PM_settings_storage_IS_ENABLED=1
    PM_10_LABEL=SETTINGS_STORAGE
    PM_EXTERNAL_FLASH_OFFSET=0x133000
    PM_EXTERNAL_FLASH_ADDRESS=0x133000
    PM_EXTERNAL_FLASH_END_ADDRESS=0x800000
    PM_EXTERNAL_FLASH_SIZE=0x6cd000
    PM_EXTERNAL_FLASH_NAME=external_flash
    PM_EXTERNAL_FLASH_ID=11
    PM_external_flash_ID=PM_EXTERNAL_FLASH_ID
    PM_external_flash_IS_ENABLED=1
    PM_11_LABEL=EXTERNAL_FLASH
    PM_OTP_OFFSET=0x0
    PM_OTP_ADDRESS=0xff8100
    PM_OTP_END_ADDRESS=0xff83fc
    PM_OTP_SIZE=0x2fc
    PM_OTP_NAME=otp
    PM_PCD_SRAM_OFFSET=0x0
    PM_PCD_SRAM_ADDRESS=0x20000000
    PM_PCD_SRAM_END_ADDRESS=0x20002000
    PM_PCD_SRAM_SIZE=0x2000
    PM_PCD_SRAM_NAME=pcd_sram
    PM_SRAM_PRIMARY_OFFSET=0x2000
    PM_SRAM_PRIMARY_ADDRESS=0x20002000
    PM_SRAM_PRIMARY_END_ADDRESS=0x20070000
    PM_SRAM_PRIMARY_SIZE=0x6e000
    PM_SRAM_PRIMARY_NAME=sram_primary
    PM_RPMSG_NRF53_SRAM_OFFSET=0x70000
    PM_RPMSG_NRF53_SRAM_ADDRESS=0x20070000
    PM_RPMSG_NRF53_SRAM_END_ADDRESS=0x20080000
    PM_RPMSG_NRF53_SRAM_SIZE=0x10000
    PM_RPMSG_NRF53_SRAM_NAME=rpmsg_nrf53_sram
    PM_NUM=12
    PM_ALL_BY_SIZE="ram_flash mcuboot_pad otp factory_data pcd_sram settings_storage mcuboot rpmsg_nrf53_sram mcuboot_primary_1 mcuboot_secondary_1 sram_primary app mcuboot_primary_app mcuboot_secondary mcuboot_primary external_flash"

Reply
  • add the pm_static_dfu.yaml and .config

    PM_MCUBOOT_OFFSET=0x0
    PM_MCUBOOT_ADDRESS=0x0
    PM_MCUBOOT_END_ADDRESS=0x8000
    PM_MCUBOOT_SIZE=0x8000
    PM_MCUBOOT_NAME=mcuboot
    PM_MCUBOOT_ID=0
    PM_mcuboot_ID=PM_MCUBOOT_ID
    PM_mcuboot_IS_ENABLED=1
    PM_0_LABEL=MCUBOOT
    PM_MCUBOOT_PRIMARY_1_OFFSET=0x0
    PM_MCUBOOT_PRIMARY_1_ADDRESS=0x0
    PM_MCUBOOT_PRIMARY_1_END_ADDRESS=0x40000
    PM_MCUBOOT_PRIMARY_1_SIZE=0x40000
    PM_MCUBOOT_PRIMARY_1_NAME=mcuboot_primary_1
    PM_MCUBOOT_PRIMARY_1_ID=1
    PM_mcuboot_primary_1_ID=PM_MCUBOOT_PRIMARY_1_ID
    PM_mcuboot_primary_1_IS_ENABLED=1
    PM_1_LABEL=MCUBOOT_PRIMARY_1
    PM_MCUBOOT_SECONDARY_OFFSET=0x0
    PM_MCUBOOT_SECONDARY_ADDRESS=0x0
    PM_MCUBOOT_SECONDARY_END_ADDRESS=0xf3000
    PM_MCUBOOT_SECONDARY_SIZE=0xf3000
    PM_MCUBOOT_SECONDARY_NAME=mcuboot_secondary
    PM_MCUBOOT_SECONDARY_ID=2
    PM_mcuboot_secondary_ID=PM_MCUBOOT_SECONDARY_ID
    PM_mcuboot_secondary_IS_ENABLED=1
    PM_2_LABEL=MCUBOOT_SECONDARY
    PM_MCUBOOT_PAD_OFFSET=0x8000
    PM_MCUBOOT_PAD_ADDRESS=0x8000
    PM_MCUBOOT_PAD_END_ADDRESS=0x8200
    PM_MCUBOOT_PAD_SIZE=0x200
    PM_MCUBOOT_PAD_NAME=mcuboot_pad
    PM_MCUBOOT_PAD_ID=3
    PM_mcuboot_pad_ID=PM_MCUBOOT_PAD_ID
    PM_mcuboot_pad_IS_ENABLED=1
    PM_3_LABEL=MCUBOOT_PAD
    PM_MCUBOOT_PRIMARY_OFFSET=0x8000
    PM_MCUBOOT_PRIMARY_ADDRESS=0x8000
    PM_MCUBOOT_PRIMARY_END_ADDRESS=0xfb000
    PM_MCUBOOT_PRIMARY_SIZE=0xf3000
    PM_MCUBOOT_PRIMARY_NAME=mcuboot_primary
    PM_MCUBOOT_PRIMARY_ID=4
    PM_mcuboot_primary_ID=PM_MCUBOOT_PRIMARY_ID
    PM_mcuboot_primary_IS_ENABLED=1
    PM_4_LABEL=MCUBOOT_PRIMARY
    PM_MCUBOOT_PRIMARY_SPAN="mcuboot_pad app"
    PM_APP_OFFSET=0x8200
    PM_APP_ADDRESS=0x8200
    PM_APP_END_ADDRESS=0xfb000
    PM_APP_SIZE=0xf2e00
    PM_APP_NAME=app
    PM_APP_ID=5
    PM_app_ID=PM_APP_ID
    PM_app_IS_ENABLED=1
    PM_5_LABEL=APP
    PM_MCUBOOT_PRIMARY_APP_OFFSET=0x8200
    PM_MCUBOOT_PRIMARY_APP_ADDRESS=0x8200
    PM_MCUBOOT_PRIMARY_APP_END_ADDRESS=0xfb000
    PM_MCUBOOT_PRIMARY_APP_SIZE=0xf2e00
    PM_MCUBOOT_PRIMARY_APP_NAME=mcuboot_primary_app
    PM_MCUBOOT_PRIMARY_APP_ID=6
    PM_mcuboot_primary_app_ID=PM_MCUBOOT_PRIMARY_APP_ID
    PM_mcuboot_primary_app_IS_ENABLED=1
    PM_6_LABEL=MCUBOOT_PRIMARY_APP
    PM_MCUBOOT_PRIMARY_APP_SPAN="app"
    PM_RAM_FLASH_OFFSET=0x40000
    PM_RAM_FLASH_ADDRESS=0x40000
    PM_RAM_FLASH_END_ADDRESS=0x40000
    PM_RAM_FLASH_SIZE=0x0
    PM_RAM_FLASH_NAME=ram_flash
    PM_RAM_FLASH_ID=7
    PM_ram_flash_ID=PM_RAM_FLASH_ID
    PM_ram_flash_IS_ENABLED=1
    PM_7_LABEL=RAM_FLASH
    PM_MCUBOOT_SECONDARY_1_OFFSET=0xf3000
    PM_MCUBOOT_SECONDARY_1_ADDRESS=0xf3000
    PM_MCUBOOT_SECONDARY_1_END_ADDRESS=0x133000
    PM_MCUBOOT_SECONDARY_1_SIZE=0x40000
    PM_MCUBOOT_SECONDARY_1_NAME=mcuboot_secondary_1
    PM_MCUBOOT_SECONDARY_1_ID=8
    PM_mcuboot_secondary_1_ID=PM_MCUBOOT_SECONDARY_1_ID
    PM_mcuboot_secondary_1_IS_ENABLED=1
    PM_8_LABEL=MCUBOOT_SECONDARY_1
    PM_FACTORY_DATA_OFFSET=0xfb000
    PM_FACTORY_DATA_ADDRESS=0xfb000
    PM_FACTORY_DATA_END_ADDRESS=0xfc000
    PM_FACTORY_DATA_SIZE=0x1000
    PM_FACTORY_DATA_NAME=factory_data
    PM_FACTORY_DATA_ID=9
    PM_factory_data_ID=PM_FACTORY_DATA_ID
    PM_factory_data_IS_ENABLED=1
    PM_9_LABEL=FACTORY_DATA
    PM_SETTINGS_STORAGE_OFFSET=0xfc000
    PM_SETTINGS_STORAGE_ADDRESS=0xfc000
    PM_SETTINGS_STORAGE_END_ADDRESS=0x100000
    PM_SETTINGS_STORAGE_SIZE=0x4000
    PM_SETTINGS_STORAGE_NAME=settings_storage
    PM_SETTINGS_STORAGE_ID=10
    PM_settings_storage_ID=PM_SETTINGS_STORAGE_ID
    PM_settings_storage_IS_ENABLED=1
    PM_10_LABEL=SETTINGS_STORAGE
    PM_EXTERNAL_FLASH_OFFSET=0x133000
    PM_EXTERNAL_FLASH_ADDRESS=0x133000
    PM_EXTERNAL_FLASH_END_ADDRESS=0x800000
    PM_EXTERNAL_FLASH_SIZE=0x6cd000
    PM_EXTERNAL_FLASH_NAME=external_flash
    PM_EXTERNAL_FLASH_ID=11
    PM_external_flash_ID=PM_EXTERNAL_FLASH_ID
    PM_external_flash_IS_ENABLED=1
    PM_11_LABEL=EXTERNAL_FLASH
    PM_OTP_OFFSET=0x0
    PM_OTP_ADDRESS=0xff8100
    PM_OTP_END_ADDRESS=0xff83fc
    PM_OTP_SIZE=0x2fc
    PM_OTP_NAME=otp
    PM_PCD_SRAM_OFFSET=0x0
    PM_PCD_SRAM_ADDRESS=0x20000000
    PM_PCD_SRAM_END_ADDRESS=0x20002000
    PM_PCD_SRAM_SIZE=0x2000
    PM_PCD_SRAM_NAME=pcd_sram
    PM_SRAM_PRIMARY_OFFSET=0x2000
    PM_SRAM_PRIMARY_ADDRESS=0x20002000
    PM_SRAM_PRIMARY_END_ADDRESS=0x20070000
    PM_SRAM_PRIMARY_SIZE=0x6e000
    PM_SRAM_PRIMARY_NAME=sram_primary
    PM_RPMSG_NRF53_SRAM_OFFSET=0x70000
    PM_RPMSG_NRF53_SRAM_ADDRESS=0x20070000
    PM_RPMSG_NRF53_SRAM_END_ADDRESS=0x20080000
    PM_RPMSG_NRF53_SRAM_SIZE=0x10000
    PM_RPMSG_NRF53_SRAM_NAME=rpmsg_nrf53_sram
    PM_NUM=12
    PM_ALL_BY_SIZE="ram_flash mcuboot_pad otp factory_data pcd_sram settings_storage mcuboot rpmsg_nrf53_sram mcuboot_primary_1 mcuboot_secondary_1 sram_primary app mcuboot_primary_app mcuboot_secondary mcuboot_primary external_flash"

Children
No Data
Related