<?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 Problem with appliaction SPI ISR vector table using bootloader,  Kinetis K20 in MQX Software Solutions</title>
    <link>https://community.nxp.com/t5/MQX-Software-Solutions/Problem-with-appliaction-SPI-ISR-vector-table-using-bootloader/m-p/457814#M15382</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Using MQX 4.0 CW 10.5 with a Kinetis K20XD256VMD10&lt;/P&gt;&lt;P&gt;I completed a bunch of smart cards using the Kinetis K20 and I'm ready to deploy a bootloader. A master CPU communicates to these smart cards via SPI. I hard-coded the SPI ISR into the vector table in vectors.c to eliminate the RTOS for this ISR. Everything works great without the bootloader installed.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;For the Bootloader: what I did--&amp;gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;#1 -I modified the USB MSD bootloader (AN4379) to bootload from SPI as well as from USB. Way cool.&lt;/P&gt;&lt;P&gt;#2 -In my application user_config.h file I added the line --&amp;gt; &lt;STRONG&gt;#define MQX_ROM_VECTORS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;#3 -In my application linker file (&lt;STRONG&gt;intflash.lcf&lt;/STRONG&gt;) I modified MEMORY per the AN4379 instructions --&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; font-family: arial, helvetica, sans-serif;"&gt;&lt;STRONG&gt;MEMORY&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; font-family: arial, helvetica, sans-serif;"&gt;&lt;STRONG&gt;{&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; font-family: arial, helvetica, sans-serif;"&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp; vectorrom&amp;nbsp;&amp;nbsp; (RX): ORIGIN = 0x0000C000, LENGTH = 0x00000400&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; font-family: arial, helvetica, sans-serif;"&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp; cfmprotrom (RX): ORIGIN = 0x0000C400, LENGTH = 0x00000020&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; font-family: arial, helvetica, sans-serif;"&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp; rom&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (RX): ORIGIN = 0x0000C420, LENGTH = 0x00033BE0&amp;nbsp; # Code + Const data&amp;nbsp;&amp;nbsp; &lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; font-family: arial, helvetica, sans-serif;"&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp; ram&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (RW): ORIGIN = 0x1FFF8400, LENGTH = 0x0000FC00&amp;nbsp; # SRAM - RW data&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; font-family: arial, helvetica, sans-serif;"&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp; # kernel space starts after RAM variables (Location of MQX Kernel data + MQX heap)&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; font-family: arial, helvetica, sans-serif;"&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp; end_of_kd&amp;nbsp;&amp;nbsp; (RW): ORIGIN = 0x20007FF0, LENGTH = 0x00000000&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; font-family: arial, helvetica, sans-serif;"&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp; &lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; font-family: arial, helvetica, sans-serif;"&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp; # Boot stack reused by MQX Kernel data&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; font-family: arial, helvetica, sans-serif;"&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp; bstack&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (RW): ORIGIN = 0x20007A00, LENGTH = 0x00000200&amp;nbsp; # Boot stack&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; font-family: arial, helvetica, sans-serif;"&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp; end_bstack&amp;nbsp; (RW): ORIGIN = 0x20007C00, LENGTH = 0x00000000&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; font-family: arial, helvetica, sans-serif;"&gt;&lt;STRONG&gt;}&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: arial, helvetica, sans-serif;"&gt;#4 -In my application main_task() I added the code to copy my hard-coded SPI ISR to the SRAM vector table&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;SPAN style="font-size: 10pt;"&gt;&lt;STRONG&gt;#ifdef BOOTLOADER_ENABLE&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;SPAN style="font-size: 10pt;"&gt;&lt;STRONG&gt; &lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD&gt;&lt;SPAN style="font-size: 10pt;"&gt;&lt;STRONG&gt;// Copy Application Stored Interrupt Vector table for SPI2 to SRAM&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;&lt;STRONG&gt;pdst=(uint_32*)0x1FFF80B0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // SPI2 interrupt vector in SRAM.&amp;nbsp;&amp;nbsp; &lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;SPAN style="font-size: 10pt;"&gt;&lt;STRONG&gt;psrc=(uint_32*)0x0000C0B0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // SPI2 interrupt vector in Flash.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;&lt;STRONG&gt;for (i=0;i&amp;lt;0x1;i++,pdst++,psrc++)&amp;nbsp; &lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;&lt;STRONG&gt;{&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; *pdst=*psrc;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;&lt;STRONG&gt;}&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;SPAN style="font-size: 10pt;"&gt;&lt;STRONG&gt;&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;&amp;nbsp; //&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD&gt;&lt;SPAN style="font-size: 10pt;"&gt;&lt;STRONG&gt;SCB_VTOR = (uint_32)0x1FFF8000;&amp;nbsp;&amp;nbsp; &lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;&lt;STRONG&gt;#endif&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;#5 -When I look at the SRAM vector table memory my SPI ISR vector is there and it matched what I see in the .MAP file, as do all the other vectors match the .MAP file.&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 14pt;"&gt;&lt;STRONG&gt;#6 -&lt;/STRONG&gt;&lt;/SPAN&gt;After I load my application using the bootloader with the line in the application &lt;STRONG&gt;//SCB_VTOR = (uint_32)0x1FFF8000;&lt;/STRONG&gt;&amp;nbsp; commented out I can see my application main task running(my LED is blinking). I can't talk to my card using SPI now.&lt;/P&gt;&lt;P&gt;#7 -When I un-comment the line &lt;STRONG&gt;SCB_VTOR = (uint_32)0x1FFF8000; &lt;/STRONG&gt;in the application I do not see my application run after a reset, i.e. no blinking LED , and the bootloader SPI ISR is still firing when I try to talk SPI to it.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;#8 -A hint for you MQX gurus that are trying to save my day, I am positive this all worked (&lt;STRONG&gt;#6&lt;/STRONG&gt;) almost 3 years ago when I first made this bootloader, &lt;STRONG&gt;but then I was&lt;/STRONG&gt; &lt;STRONG&gt;running MQX 3.8.&lt;/STRONG&gt;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you in advance to anyone who read this and is trying to help.&lt;/P&gt;&lt;P&gt;Cheers,&lt;/P&gt;&lt;P&gt;Tom&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 21 Aug 2015 18:29:31 GMT</pubDate>
    <dc:creator>cavebiker</dc:creator>
    <dc:date>2015-08-21T18:29:31Z</dc:date>
    <item>
      <title>Problem with appliaction SPI ISR vector table using bootloader,  Kinetis K20</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/Problem-with-appliaction-SPI-ISR-vector-table-using-bootloader/m-p/457814#M15382</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Using MQX 4.0 CW 10.5 with a Kinetis K20XD256VMD10&lt;/P&gt;&lt;P&gt;I completed a bunch of smart cards using the Kinetis K20 and I'm ready to deploy a bootloader. A master CPU communicates to these smart cards via SPI. I hard-coded the SPI ISR into the vector table in vectors.c to eliminate the RTOS for this ISR. Everything works great without the bootloader installed.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;For the Bootloader: what I did--&amp;gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;#1 -I modified the USB MSD bootloader (AN4379) to bootload from SPI as well as from USB. Way cool.&lt;/P&gt;&lt;P&gt;#2 -In my application user_config.h file I added the line --&amp;gt; &lt;STRONG&gt;#define MQX_ROM_VECTORS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;#3 -In my application linker file (&lt;STRONG&gt;intflash.lcf&lt;/STRONG&gt;) I modified MEMORY per the AN4379 instructions --&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; font-family: arial, helvetica, sans-serif;"&gt;&lt;STRONG&gt;MEMORY&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; font-family: arial, helvetica, sans-serif;"&gt;&lt;STRONG&gt;{&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; font-family: arial, helvetica, sans-serif;"&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp; vectorrom&amp;nbsp;&amp;nbsp; (RX): ORIGIN = 0x0000C000, LENGTH = 0x00000400&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; font-family: arial, helvetica, sans-serif;"&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp; cfmprotrom (RX): ORIGIN = 0x0000C400, LENGTH = 0x00000020&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; font-family: arial, helvetica, sans-serif;"&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp; rom&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (RX): ORIGIN = 0x0000C420, LENGTH = 0x00033BE0&amp;nbsp; # Code + Const data&amp;nbsp;&amp;nbsp; &lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; font-family: arial, helvetica, sans-serif;"&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp; ram&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (RW): ORIGIN = 0x1FFF8400, LENGTH = 0x0000FC00&amp;nbsp; # SRAM - RW data&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; font-family: arial, helvetica, sans-serif;"&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp; # kernel space starts after RAM variables (Location of MQX Kernel data + MQX heap)&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; font-family: arial, helvetica, sans-serif;"&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp; end_of_kd&amp;nbsp;&amp;nbsp; (RW): ORIGIN = 0x20007FF0, LENGTH = 0x00000000&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; font-family: arial, helvetica, sans-serif;"&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp; &lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; font-family: arial, helvetica, sans-serif;"&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp; # Boot stack reused by MQX Kernel data&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; font-family: arial, helvetica, sans-serif;"&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp; bstack&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (RW): ORIGIN = 0x20007A00, LENGTH = 0x00000200&amp;nbsp; # Boot stack&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; font-family: arial, helvetica, sans-serif;"&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp; end_bstack&amp;nbsp; (RW): ORIGIN = 0x20007C00, LENGTH = 0x00000000&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; font-family: arial, helvetica, sans-serif;"&gt;&lt;STRONG&gt;}&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: arial, helvetica, sans-serif;"&gt;#4 -In my application main_task() I added the code to copy my hard-coded SPI ISR to the SRAM vector table&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;SPAN style="font-size: 10pt;"&gt;&lt;STRONG&gt;#ifdef BOOTLOADER_ENABLE&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;SPAN style="font-size: 10pt;"&gt;&lt;STRONG&gt; &lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD&gt;&lt;SPAN style="font-size: 10pt;"&gt;&lt;STRONG&gt;// Copy Application Stored Interrupt Vector table for SPI2 to SRAM&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;&lt;STRONG&gt;pdst=(uint_32*)0x1FFF80B0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // SPI2 interrupt vector in SRAM.&amp;nbsp;&amp;nbsp; &lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;SPAN style="font-size: 10pt;"&gt;&lt;STRONG&gt;psrc=(uint_32*)0x0000C0B0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // SPI2 interrupt vector in Flash.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;&lt;STRONG&gt;for (i=0;i&amp;lt;0x1;i++,pdst++,psrc++)&amp;nbsp; &lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;&lt;STRONG&gt;{&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; *pdst=*psrc;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;&lt;STRONG&gt;}&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;SPAN style="font-size: 10pt;"&gt;&lt;STRONG&gt;&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;&amp;nbsp; //&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD&gt;&lt;SPAN style="font-size: 10pt;"&gt;&lt;STRONG&gt;SCB_VTOR = (uint_32)0x1FFF8000;&amp;nbsp;&amp;nbsp; &lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;&lt;STRONG&gt;#endif&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;#5 -When I look at the SRAM vector table memory my SPI ISR vector is there and it matched what I see in the .MAP file, as do all the other vectors match the .MAP file.&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 14pt;"&gt;&lt;STRONG&gt;#6 -&lt;/STRONG&gt;&lt;/SPAN&gt;After I load my application using the bootloader with the line in the application &lt;STRONG&gt;//SCB_VTOR = (uint_32)0x1FFF8000;&lt;/STRONG&gt;&amp;nbsp; commented out I can see my application main task running(my LED is blinking). I can't talk to my card using SPI now.&lt;/P&gt;&lt;P&gt;#7 -When I un-comment the line &lt;STRONG&gt;SCB_VTOR = (uint_32)0x1FFF8000; &lt;/STRONG&gt;in the application I do not see my application run after a reset, i.e. no blinking LED , and the bootloader SPI ISR is still firing when I try to talk SPI to it.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;#8 -A hint for you MQX gurus that are trying to save my day, I am positive this all worked (&lt;STRONG&gt;#6&lt;/STRONG&gt;) almost 3 years ago when I first made this bootloader, &lt;STRONG&gt;but then I was&lt;/STRONG&gt; &lt;STRONG&gt;running MQX 3.8.&lt;/STRONG&gt;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you in advance to anyone who read this and is trying to help.&lt;/P&gt;&lt;P&gt;Cheers,&lt;/P&gt;&lt;P&gt;Tom&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 21 Aug 2015 18:29:31 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/Problem-with-appliaction-SPI-ISR-vector-table-using-bootloader/m-p/457814#M15382</guid>
      <dc:creator>cavebiker</dc:creator>
      <dc:date>2015-08-21T18:29:31Z</dc:date>
    </item>
    <item>
      <title>Re: Problem with appliaction SPI ISR vector table using bootloader,  Kinetis K20</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/Problem-with-appliaction-SPI-ISR-vector-table-using-bootloader/m-p/457815#M15383</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Ah Haa, I got it!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In the linker file &lt;STRONG style="font-family: arial, helvetica, 'helvetica neue', verdana, sans-serif; color: #51626f;"&gt;intflash.lcf &lt;/STRONG&gt;I saw the __VECTOR_TABLE_RAM_START was at 0x1FFF8000, NOT 0x1FFF8400 like I had.&lt;/P&gt;&lt;P&gt;In &lt;STRONG style="font-family: arial, helvetica, 'helvetica neue', verdana, sans-serif; color: #51626f;"&gt;intflash.lcf&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;Was:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;STRONG style="font-size: 13px; font-family: arial, helvetica, sans-serif; color: #51626f;"&gt;ram&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (RW): ORIGIN = 0x1FFF8400, LENGTH = 0x0000FC00&amp;nbsp; # SRAM - RW data&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;Changed to:&lt;STRONG style="font-size: 13px; font-family: arial, helvetica, sans-serif; color: #51626f;"&gt;ram&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (RW): ORIGIN = 0x1FFF8000, LENGTH = 0x00010000&amp;nbsp; # SRAM - RW data&lt;/STRONG&gt;​&lt;/P&gt;&lt;P&gt;and now everything works beautiful. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Cheers!&lt;/P&gt;&lt;P&gt;TJ&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 24 Aug 2015 20:01:33 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/Problem-with-appliaction-SPI-ISR-vector-table-using-bootloader/m-p/457815#M15383</guid>
      <dc:creator>cavebiker</dc:creator>
      <dc:date>2015-08-24T20:01:33Z</dc:date>
    </item>
    <item>
      <title>Re: Problem with appliaction SPI ISR vector table using bootloader,  Kinetis K20</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/Problem-with-appliaction-SPI-ISR-vector-table-using-bootloader/m-p/457816#M15384</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Tom,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;thanks for sharing your solution!!!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Soledad&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 25 Aug 2015 21:10:32 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/Problem-with-appliaction-SPI-ISR-vector-table-using-bootloader/m-p/457816#M15384</guid>
      <dc:creator>soledad</dc:creator>
      <dc:date>2015-08-25T21:10:32Z</dc:date>
    </item>
  </channel>
</rss>

