<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Application offset in bootable image *.bin file in MCUXpresso Secure Provisioning Tool</title>
    <link>https://community.nxp.com/t5/MCUXpresso-Secure-Provisioning/Application-offset-in-bootable-image-bin-file/m-p/1340377#M97</link>
    <description>&lt;P&gt;I am using MCUXpresso Secure Provisioning v 3.1.&lt;/P&gt;&lt;P&gt;I am compiling code to run from BOARD_SDRAM, but bootable image is intended to be stored un eMMC/SD.&lt;/P&gt;&lt;P&gt;The problem is that application binary in generated bootable image is always located at 0x00001000. regardless BOARD_SDRAM location in memory configuration (0x80001000 or 0x80003000 et.).&lt;/P&gt;&lt;P&gt;Is it possible to change this offset in final *.bin file? How to do that? Will RT1050 built-in Boot ROM be able to boot from such image (with different application offset than 0x1000)?&lt;/P&gt;&lt;P&gt;My intention is to use 2 secondary bootloaders (for safety) and after updating one of them to change IVT to point to other bootloader in bootable image. I am using 2 separate projects and the idea was to store both bootloaders in final *.bin (which will be 1:1 stored on eMMC/SD) in different loacations. Then RT1050 booting from eMMC or SD would pick up the one pointed to by IVT.&lt;/P&gt;&lt;P&gt;However it seams that IVT contains ONLY pointers to locations in target memory, e.g. in my case in BOARD_SDRAM.&lt;/P&gt;</description>
    <pubDate>Wed, 15 Sep 2021 07:41:25 GMT</pubDate>
    <dc:creator>arnisj</dc:creator>
    <dc:date>2021-09-15T07:41:25Z</dc:date>
    <item>
      <title>Application offset in bootable image *.bin file</title>
      <link>https://community.nxp.com/t5/MCUXpresso-Secure-Provisioning/Application-offset-in-bootable-image-bin-file/m-p/1340377#M97</link>
      <description>&lt;P&gt;I am using MCUXpresso Secure Provisioning v 3.1.&lt;/P&gt;&lt;P&gt;I am compiling code to run from BOARD_SDRAM, but bootable image is intended to be stored un eMMC/SD.&lt;/P&gt;&lt;P&gt;The problem is that application binary in generated bootable image is always located at 0x00001000. regardless BOARD_SDRAM location in memory configuration (0x80001000 or 0x80003000 et.).&lt;/P&gt;&lt;P&gt;Is it possible to change this offset in final *.bin file? How to do that? Will RT1050 built-in Boot ROM be able to boot from such image (with different application offset than 0x1000)?&lt;/P&gt;&lt;P&gt;My intention is to use 2 secondary bootloaders (for safety) and after updating one of them to change IVT to point to other bootloader in bootable image. I am using 2 separate projects and the idea was to store both bootloaders in final *.bin (which will be 1:1 stored on eMMC/SD) in different loacations. Then RT1050 booting from eMMC or SD would pick up the one pointed to by IVT.&lt;/P&gt;&lt;P&gt;However it seams that IVT contains ONLY pointers to locations in target memory, e.g. in my case in BOARD_SDRAM.&lt;/P&gt;</description>
      <pubDate>Wed, 15 Sep 2021 07:41:25 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-Secure-Provisioning/Application-offset-in-bootable-image-bin-file/m-p/1340377#M97</guid>
      <dc:creator>arnisj</dc:creator>
      <dc:date>2021-09-15T07:41:25Z</dc:date>
    </item>
    <item>
      <title>Re: Application offset in bootable image *.bin file</title>
      <link>https://community.nxp.com/t5/MCUXpresso-Secure-Provisioning/Application-offset-in-bootable-image-bin-file/m-p/1340456#M98</link>
      <description>&lt;P&gt;Hi Arnisj,&lt;/P&gt;
&lt;P&gt;please find in the PDF documentation, how to build the image for SDRAM:&lt;/P&gt;
&lt;P&gt;- chapter 7.2.1.3 contains info how to build the source image&lt;/P&gt;
&lt;P&gt;If you have EVK board, you can also use pre-compiled image located in &lt;U&gt;c:\nxp\MCUX_Provi_v3.1\bin\data\targets\MIMXRT1050\source_images\evkbimxrt1050_iled_blinky_SDRAM.s19&lt;/U&gt;&lt;/P&gt;
&lt;P&gt;Here is how the configuration should look line in the tool:&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="marektrmac_0-1631696631575.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/156097iD98AA7C9517D5E2F/image-size/medium?v=v2&amp;amp;px=400" role="button" title="marektrmac_0-1631696631575.png" alt="marektrmac_0-1631696631575.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;Hope this helps&lt;/P&gt;
&lt;P&gt;The offset cannot be directly changed in SEC tool. However the bootable image is created via the build script so you can manually modify it (not recommended unless you are an expert).&lt;/P&gt;</description>
      <pubDate>Wed, 15 Sep 2021 09:06:40 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-Secure-Provisioning/Application-offset-in-bootable-image-bin-file/m-p/1340456#M98</guid>
      <dc:creator>marek-trmac</dc:creator>
      <dc:date>2021-09-15T09:06:40Z</dc:date>
    </item>
    <item>
      <title>Re: Application offset in bootable image *.bin file</title>
      <link>https://community.nxp.com/t5/MCUXpresso-Secure-Provisioning/Application-offset-in-bootable-image-bin-file/m-p/1340469#M99</link>
      <description>&lt;P&gt;Hi Arnisj,&lt;/P&gt;
&lt;P&gt;in addition to Marek's response - when/where do you want to change the IVT? Please be aware that if you want to change the IVT in the target device by your application, you might not boot next time if the "Authenticated" boot type is used because the signature won't match anymore.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Regards,&lt;/P&gt;
&lt;P&gt;Libor&lt;/P&gt;</description>
      <pubDate>Wed, 15 Sep 2021 09:13:56 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-Secure-Provisioning/Application-offset-in-bootable-image-bin-file/m-p/1340469#M99</guid>
      <dc:creator>liborukropec</dc:creator>
      <dc:date>2021-09-15T09:13:56Z</dc:date>
    </item>
    <item>
      <title>Re: Application offset in bootable image *.bin file</title>
      <link>https://community.nxp.com/t5/MCUXpresso-Secure-Provisioning/Application-offset-in-bootable-image-bin-file/m-p/1340486#M100</link>
      <description>&lt;P&gt;Hello, Marek!&lt;/P&gt;&lt;P&gt;If I do as you suggest, in generated file application code starts at 0x00001000 regardless SDRAM location is set to 0x80002000.&lt;/P&gt;&lt;P&gt;Look in image I attached. Is there a way to get application code start in image file at address 0x00002000 ?&lt;/P&gt;</description>
      <pubDate>Wed, 15 Sep 2021 09:34:08 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-Secure-Provisioning/Application-offset-in-bootable-image-bin-file/m-p/1340486#M100</guid>
      <dc:creator>arnisj</dc:creator>
      <dc:date>2021-09-15T09:34:08Z</dc:date>
    </item>
    <item>
      <title>Re: Application offset in bootable image *.bin file</title>
      <link>https://community.nxp.com/t5/MCUXpresso-Secure-Provisioning/Application-offset-in-bootable-image-bin-file/m-p/1340489#M101</link>
      <description>&lt;P&gt;I want to change IVT after I've modified application in my eMMC/SD.&lt;/P&gt;&lt;P&gt;I am aware that getting pofwer fail during IVT device won't boot.&lt;/P&gt;&lt;P&gt;I am not intended to use authenticated image.&lt;/P&gt;&lt;P&gt;I want to introduce dual second bootloader mechanism. While one bootloader is working, the other copy can be updated and after update IVT rewritten. This is possible in XIP mode, as I understand, because application code in image file is located in correct offset. This is not the case in image files for non-XIP code.&lt;/P&gt;</description>
      <pubDate>Wed, 15 Sep 2021 09:43:39 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-Secure-Provisioning/Application-offset-in-bootable-image-bin-file/m-p/1340489#M101</guid>
      <dc:creator>arnisj</dc:creator>
      <dc:date>2021-09-15T09:43:39Z</dc:date>
    </item>
    <item>
      <title>Re: Application offset in bootable image *.bin file</title>
      <link>https://community.nxp.com/t5/MCUXpresso-Secure-Provisioning/Application-offset-in-bootable-image-bin-file/m-p/1340508#M102</link>
      <description>&lt;P&gt;Hi Arnisj,&lt;/P&gt;&lt;P&gt;bootloader use case is not supported in Secure Provisioning Tool, so I cannot help much here.&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;The application offset cannot be directly changed in SEC tool. However the bootable image is created via the build script so you can manually modify it (see &lt;EM&gt;bd_files\imx_application_gen_win.bd&lt;/EM&gt; in your workspace to modify parameters for bootable image and then run &lt;EM&gt;build_image_win.bat&lt;/EM&gt;).&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 15 Sep 2021 10:01:43 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-Secure-Provisioning/Application-offset-in-bootable-image-bin-file/m-p/1340508#M102</guid>
      <dc:creator>marek-trmac</dc:creator>
      <dc:date>2021-09-15T10:01:43Z</dc:date>
    </item>
    <item>
      <title>Re: Application offset in bootable image *.bin file</title>
      <link>https://community.nxp.com/t5/MCUXpresso-Secure-Provisioning/Application-offset-in-bootable-image-bin-file/m-p/1340511#M103</link>
      <description>&lt;P&gt;Hi Arnisj,&lt;/P&gt;
&lt;P&gt;please mind, that location of the non XIP image in the bootable image does not match with the target address, where the image will be executed. ROM code will copy the image into target address.&lt;/P&gt;
&lt;P&gt;So image can start at 0x1000 even&amp;nbsp;&lt;SPAN&gt;SDRAM location is set to 0x80002000.&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 15 Sep 2021 10:06:30 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-Secure-Provisioning/Application-offset-in-bootable-image-bin-file/m-p/1340511#M103</guid>
      <dc:creator>marek-trmac</dc:creator>
      <dc:date>2021-09-15T10:06:30Z</dc:date>
    </item>
    <item>
      <title>Re: Application offset in bootable image *.bin file</title>
      <link>https://community.nxp.com/t5/MCUXpresso-Secure-Provisioning/Application-offset-in-bootable-image-bin-file/m-p/1340525#M104</link>
      <description>&lt;P&gt;Does not work. Tried to change in imx_application_gen_win.bd to&lt;/P&gt;&lt;P&gt;startAddress = 0x80002000;&lt;/P&gt;&lt;P&gt;or&amp;nbsp;&lt;/P&gt;&lt;P&gt;startAddress = 0x80003000;&lt;/P&gt;&lt;P&gt;And in both cases runing&amp;nbsp;build_image_win.bat I get crash. See attached image.&lt;/P&gt;</description>
      <pubDate>Wed, 15 Sep 2021 10:17:32 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-Secure-Provisioning/Application-offset-in-bootable-image-bin-file/m-p/1340525#M104</guid>
      <dc:creator>arnisj</dc:creator>
      <dc:date>2021-09-15T10:17:32Z</dc:date>
    </item>
    <item>
      <title>Re: Application offset in bootable image *.bin file</title>
      <link>https://community.nxp.com/t5/MCUXpresso-Secure-Provisioning/Application-offset-in-bootable-image-bin-file/m-p/1340530#M105</link>
      <description>&lt;P&gt;I fully do understand this.&lt;/P&gt;&lt;P&gt;The question is can I somehow change this 0x1000 location in image file? And if yes, then will Boot ROM of RT1050 know from which address in bootable image take application to copy to target memory?&lt;/P&gt;</description>
      <pubDate>Wed, 15 Sep 2021 10:20:50 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-Secure-Provisioning/Application-offset-in-bootable-image-bin-file/m-p/1340530#M105</guid>
      <dc:creator>arnisj</dc:creator>
      <dc:date>2021-09-15T10:20:50Z</dc:date>
    </item>
    <item>
      <title>Re: Application offset in bootable image *.bin file</title>
      <link>https://community.nxp.com/t5/MCUXpresso-Secure-Provisioning/Application-offset-in-bootable-image-bin-file/m-p/1340545#M106</link>
      <description>&lt;P&gt;Hi Arnisj,&lt;/P&gt;
&lt;P&gt;I'd recommend you to download "Flashloader i.MXRT1050" from nxp.com and read "doc\i.MX MCU Manufacturing User's Guide.pdf". You can find there details about BD file arguments.&lt;/P&gt;
&lt;P&gt;As your use case is not supported by MCUX Secure Provisioning Tool, I cannot provide any expert answer.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 15 Sep 2021 10:42:04 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-Secure-Provisioning/Application-offset-in-bootable-image-bin-file/m-p/1340545#M106</guid>
      <dc:creator>marek-trmac</dc:creator>
      <dc:date>2021-09-15T10:42:04Z</dc:date>
    </item>
    <item>
      <title>Re: Application offset in bootable image *.bin file</title>
      <link>https://community.nxp.com/t5/MCUXpresso-Secure-Provisioning/Application-offset-in-bootable-image-bin-file/m-p/1340612#M107</link>
      <description>&lt;P&gt;I've read "&lt;SPAN&gt;i.MX MCU Manufacturing User's Guide.pdf"&amp;nbsp;&lt;/SPAN&gt;through and still did not get answer. Closes information I've found in "3.1. Bootable image layout in target flash device":&lt;/P&gt;&lt;P&gt;* XIP (Execute-In-Place) boot image ... "The boot device memory is identical to the destination memory."...&lt;/P&gt;&lt;P&gt;*&amp;nbsp;Non-XIP boot image ... "The boot device memory is different from the destination memory." ...&lt;/P&gt;&lt;P&gt;But there is NOTHING anywhere about fixed 0x1000 application offset in non-XIP image file and whether this offset can be changed and how?&lt;/P&gt;&lt;P&gt;Also "initialLoadSize" changing in *.bd file does not affect application offset 0x1000 in image file.&lt;/P&gt;&lt;P&gt;Is it a problem to tell that Boot ROM expects for non-XIP image files application to reside at offset 0x1000? If this is true, then I need to rethink architecture of my secondary dual bootloader project. If this is not true, I want to understand how I can change that offset specifically for non-XIP image files.&lt;/P&gt;</description>
      <pubDate>Wed, 15 Sep 2021 12:39:37 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-Secure-Provisioning/Application-offset-in-bootable-image-bin-file/m-p/1340612#M107</guid>
      <dc:creator>arnisj</dc:creator>
      <dc:date>2021-09-15T12:39:37Z</dc:date>
    </item>
    <item>
      <title>Re: Application offset in bootable image *.bin file</title>
      <link>https://community.nxp.com/t5/MCUXpresso-Secure-Provisioning/Application-offset-in-bootable-image-bin-file/m-p/1340628#M108</link>
      <description>&lt;P&gt;Hi Arnisj,&lt;/P&gt;
&lt;P&gt;Secure Provisioning Tool is designed to support most common use cases. Currently the tool does not support bootloader and does not support manual configuration of the application offset.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The additional use cases could be done by manual modification of the files, generated during build.&lt;/P&gt;
&lt;P&gt;The additional use cases were not tested by MCUX Secure Provisioning Tool team, so I'm afraid we cannot answer your questions in this forum. You may consider to ask in different forum, because your question is not related to&amp;nbsp;Secure Provisioning Tool, but it is related to functionality of the processor itself.&lt;/P&gt;
&lt;P&gt;See also chapter 8.7.1 in i.MX RT1050 Processor Reference Manual:&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;The location of the IVT is the only fixed requirement&amp;nbsp;by the ROM.&lt;/P&gt;
&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 15 Sep 2021 12:58:16 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-Secure-Provisioning/Application-offset-in-bootable-image-bin-file/m-p/1340628#M108</guid>
      <dc:creator>marek-trmac</dc:creator>
      <dc:date>2021-09-15T12:58:16Z</dc:date>
    </item>
    <item>
      <title>Re: Application offset in bootable image *.bin file</title>
      <link>https://community.nxp.com/t5/MCUXpresso-Secure-Provisioning/Application-offset-in-bootable-image-bin-file/m-p/1346626#M109</link>
      <description>&lt;P&gt;So far I've solved problem in following manner.&lt;/P&gt;&lt;P&gt;In *.c or *.cpp wrote this:&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;__attribute__&lt;/STRONG&gt;((used, section(".bl1"))) &lt;STRONG&gt;const&lt;/STRONG&gt; &lt;STRONG&gt;char&lt;/STRONG&gt; bl1PlaceHolder [1024*252] = {};&lt;/P&gt;&lt;P&gt;It doesn't matter whether there is or is not "const".&lt;/P&gt;&lt;P&gt;Then in Project Options-&amp;gt;C/C++ Build-&amp;gt;Settings-&amp;gt;Managed Linker Script-&amp;gt; Tab "Tool settings" in “Extra linker script input sections” I set:&lt;/P&gt;&lt;P&gt;Input section description:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Region:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Section type:&lt;/P&gt;&lt;P&gt;KEEP(*(.bl1))&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;BOARD_SDRAM_BL1&amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;STRONG&gt;&lt;U&gt;.bss&lt;/U&gt;&lt;/STRONG&gt;&lt;U&gt;&amp;nbsp;(&lt;/U&gt;&lt;STRONG&gt;&lt;U&gt;.rodata&lt;/U&gt;&lt;/STRONG&gt; or maybe &lt;STRONG&gt;&lt;U&gt;.text&lt;/U&gt;&lt;/STRONG&gt;&lt;U&gt; won't work)&lt;/U&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 27 Sep 2021 08:38:54 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-Secure-Provisioning/Application-offset-in-bootable-image-bin-file/m-p/1346626#M109</guid>
      <dc:creator>arnisj</dc:creator>
      <dc:date>2021-09-27T08:38:54Z</dc:date>
    </item>
  </channel>
</rss>

