<?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 Re: Bootloader in i.MX Processors</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/Bootloader/m-p/1548971#M197224</link>
    <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/206589"&gt;@saranbabu&lt;/a&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I&amp;nbsp; hope you are doing great!&lt;/P&gt;
&lt;P&gt;Regarding:&amp;nbsp;&lt;STRONG&gt; jump from bootloader to application area&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&amp;nbsp; &amp;nbsp;We can take a look at the implementation made by Flashloader and&amp;nbsp;mcuboot_opensource SDK examples.&lt;/P&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;For example the jump_to_application() function from the Flashloader project . The main goal of that function&amp;nbsp; is to disable peripherals, update the vector table and call a function pointer to application entry point. However please refer to complete project for reference.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Regarding:&amp;nbsp;&lt;STRONG&gt; how to switch from application to bootloader section&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;My first response is that you may&amp;nbsp; use a similar a jump operation than the one&amp;nbsp; from custom bootloader to application. However, feel free to let know if&amp;nbsp; you mean to jump to ROM bootloader from application or if you can elaborate further.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;Regarding : &lt;STRONG&gt;In bootloader code I can access the internal flash memory both read and write by using the ROM API.&amp;nbsp;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;I understand here that you are making use of the bootROM API functions, correct? If yes, here is a tip,&amp;nbsp; do not forget to leave sufficient&amp;nbsp;space for SRAM OC for the ROM execution , at least&amp;nbsp; 64 KB. You can refer to&amp;nbsp;AN12077.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;All the best,&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Diego&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Fri, 04 Nov 2022 16:48:57 GMT</pubDate>
    <dc:creator>diego_charles</dc:creator>
    <dc:date>2022-11-04T16:48:57Z</dc:date>
    <item>
      <title>Bootloader</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Bootloader/m-p/1545920#M196993</link>
      <description>&lt;P&gt;Hello Team,&lt;/P&gt;&lt;P&gt;Currently I'm involving the bootloader development for iMXRT1064 processor, I allocated the bootloader memory size is 512KB of internal flash memory, rest of the section will be application section.&amp;nbsp; In bootloader code I can access the internal flash memory both read and write by using the ROM API.&amp;nbsp; What is the procedure to jump from bootloader to application area?, please let me the know jump to application api.&amp;nbsp; How to switch from application to bootloader section?&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sun, 30 Oct 2022 13:51:00 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Bootloader/m-p/1545920#M196993</guid>
      <dc:creator>saranbabu</dc:creator>
      <dc:date>2022-10-30T13:51:00Z</dc:date>
    </item>
    <item>
      <title>Re: Bootloader</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Bootloader/m-p/1548971#M197224</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/206589"&gt;@saranbabu&lt;/a&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I&amp;nbsp; hope you are doing great!&lt;/P&gt;
&lt;P&gt;Regarding:&amp;nbsp;&lt;STRONG&gt; jump from bootloader to application area&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&amp;nbsp; &amp;nbsp;We can take a look at the implementation made by Flashloader and&amp;nbsp;mcuboot_opensource SDK examples.&lt;/P&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;For example the jump_to_application() function from the Flashloader project . The main goal of that function&amp;nbsp; is to disable peripherals, update the vector table and call a function pointer to application entry point. However please refer to complete project for reference.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Regarding:&amp;nbsp;&lt;STRONG&gt; how to switch from application to bootloader section&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;My first response is that you may&amp;nbsp; use a similar a jump operation than the one&amp;nbsp; from custom bootloader to application. However, feel free to let know if&amp;nbsp; you mean to jump to ROM bootloader from application or if you can elaborate further.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;Regarding : &lt;STRONG&gt;In bootloader code I can access the internal flash memory both read and write by using the ROM API.&amp;nbsp;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;I understand here that you are making use of the bootROM API functions, correct? If yes, here is a tip,&amp;nbsp; do not forget to leave sufficient&amp;nbsp;space for SRAM OC for the ROM execution , at least&amp;nbsp; 64 KB. You can refer to&amp;nbsp;AN12077.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;All the best,&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Diego&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 04 Nov 2022 16:48:57 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Bootloader/m-p/1548971#M197224</guid>
      <dc:creator>diego_charles</dc:creator>
      <dc:date>2022-11-04T16:48:57Z</dc:date>
    </item>
    <item>
      <title>Re: Bootloader</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Bootloader/m-p/1549410#M197254</link>
      <description>&lt;P&gt;Hello team,&lt;/P&gt;&lt;P&gt;Thanks for your quick response.&lt;/P&gt;&lt;P&gt;I need to jump from application to my custom bootloader section.&amp;nbsp; Here I've allocated space for custom bootloader is 512KB (70000000 to 70080000)&amp;nbsp; rest of the memory space will be consider for the application section.&amp;nbsp; After update the new firmware image in external memory, I just want to jump to custom bootloader location(0x70000000).&amp;nbsp; If I want to use runbootloader api, how do I need to specify memory address to jump? or Is there any other possible methods are there? please let me know.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 07 Nov 2022 06:40:22 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Bootloader/m-p/1549410#M197254</guid>
      <dc:creator>saranbabu</dc:creator>
      <dc:date>2022-11-07T06:40:22Z</dc:date>
    </item>
    <item>
      <title>Re: Bootloader</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Bootloader/m-p/1549940#M197298</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/206589"&gt;@saranbabu&lt;/a&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Thank you for your comments.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Just a little note, that I do not want to overlook. The actual&amp;nbsp;&amp;nbsp;&lt;SPAN&gt;runbootloader&amp;nbsp; API is actually intended to call the ROM bootloader located ~0x20000 address space.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;But the&amp;nbsp; jump from application to custom bootloader, I think it can be as simple as using a standard C function pointer and of course updating the&amp;nbsp; vector table to be able to process interrupts before calling the function pointer.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Do not hesitate to let me know if there is anything else we could check!&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Diego&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 07 Nov 2022 23:40:50 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Bootloader/m-p/1549940#M197298</guid>
      <dc:creator>diego_charles</dc:creator>
      <dc:date>2022-11-07T23:40:50Z</dc:date>
    </item>
  </channel>
</rss>

