<?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: KEAZ128 relocate vector table in Kinetis Microcontrollers</title>
    <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/KEAZ128-relocate-vector-table/m-p/1360355#M61767</link>
    <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/103325"&gt;@fanziyu&lt;/a&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I hope you are doing well !&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;One&amp;nbsp; scenario that I could see, is that the application will have troubles to execute any of its&amp;nbsp; IRQ handlers, thus limiting its functionality.&amp;nbsp;&lt;/P&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&lt;SPAN&gt;For example&amp;nbsp; if you have moved your application at&amp;nbsp; 0x000_4000. If you do not&amp;nbsp; relocate the vector table, you wont be able to run IRQs as expected from your application, because the core may be still expecting&amp;nbsp; an interrupt to&amp;nbsp; be as default, close to 0x0000_0040 , with&amp;nbsp; the vector table offset from your bootloader project.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Actually, in the vector table , there is a hard-fault&amp;nbsp; handler. It would be interesting , to see what happens, with your current setup,&amp;nbsp; &amp;nbsp;if you perform a invalid operation, that produces the trigger of&amp;nbsp; that&amp;nbsp; hard-fault handler.&amp;nbsp; Not sure if you will be able to see hard-fault of the bootloader project executing. If you do, maybe you will be need to add further steps to run and restore your application , but I do not see purpose&amp;nbsp;on that effort, as the best will be to relocate&amp;nbsp;the vector table , since the beginning.&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;All the best,&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Diego.&lt;/P&gt;</description>
    <pubDate>Sat, 23 Oct 2021 23:07:56 GMT</pubDate>
    <dc:creator>diego_charles</dc:creator>
    <dc:date>2021-10-23T23:07:56Z</dc:date>
    <item>
      <title>KEAZ128 relocate vector table</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/KEAZ128-relocate-vector-table/m-p/1360115#M61760</link>
      <description>&lt;P&gt;MCU: s9keaz128amlh&lt;/P&gt;&lt;P&gt;IDE: S32 Design Studio for ARM Version 2018.R1&lt;/P&gt;&lt;P&gt;Problem: I use bootloader&amp;nbsp; application to reprogram the mcu.I found something interesting that the mcu works well after using bootloader to reprogram,but i don't relocate the vector table in both project(bootloader project and app project ).So my problem is what will happen theoretically if i don't relocate the vector table?&lt;/P&gt;&lt;P&gt;I have a guess that if i modify the interrupt program in my app project,then use bootloader&amp;nbsp; application to reprogram the mcu,the modified part of the program will not be made into the MCU.&lt;/P&gt;&lt;P&gt;Thanks!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 22 Oct 2021 13:30:39 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/KEAZ128-relocate-vector-table/m-p/1360115#M61760</guid>
      <dc:creator>fanziyu</dc:creator>
      <dc:date>2021-10-22T13:30:39Z</dc:date>
    </item>
    <item>
      <title>Re: KEAZ128 relocate vector table</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/KEAZ128-relocate-vector-table/m-p/1360355#M61767</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/103325"&gt;@fanziyu&lt;/a&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I hope you are doing well !&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;One&amp;nbsp; scenario that I could see, is that the application will have troubles to execute any of its&amp;nbsp; IRQ handlers, thus limiting its functionality.&amp;nbsp;&lt;/P&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&lt;SPAN&gt;For example&amp;nbsp; if you have moved your application at&amp;nbsp; 0x000_4000. If you do not&amp;nbsp; relocate the vector table, you wont be able to run IRQs as expected from your application, because the core may be still expecting&amp;nbsp; an interrupt to&amp;nbsp; be as default, close to 0x0000_0040 , with&amp;nbsp; the vector table offset from your bootloader project.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Actually, in the vector table , there is a hard-fault&amp;nbsp; handler. It would be interesting , to see what happens, with your current setup,&amp;nbsp; &amp;nbsp;if you perform a invalid operation, that produces the trigger of&amp;nbsp; that&amp;nbsp; hard-fault handler.&amp;nbsp; Not sure if you will be able to see hard-fault of the bootloader project executing. If you do, maybe you will be need to add further steps to run and restore your application , but I do not see purpose&amp;nbsp;on that effort, as the best will be to relocate&amp;nbsp;the vector table , since the beginning.&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;All the best,&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Diego.&lt;/P&gt;</description>
      <pubDate>Sat, 23 Oct 2021 23:07:56 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/KEAZ128-relocate-vector-table/m-p/1360355#M61767</guid>
      <dc:creator>diego_charles</dc:creator>
      <dc:date>2021-10-23T23:07:56Z</dc:date>
    </item>
  </channel>
</rss>

