<?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>S32KのトピックRe: Firmware update of s32k144 via UART</title>
    <link>https://community.nxp.com/t5/S32K/Firmware-update-of-s32k144-via-UART/m-p/995414#M5875</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;the linker files don't help...&lt;/P&gt;&lt;P&gt;Did you disable all interrupts before jump? It's necessary to disable globally and also disable all local enable bits. It's good practice to put everything to default state before jump.&lt;/P&gt;&lt;P&gt;If you step asm code, which instruction does cause the hard fault?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Lukas&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 17 Dec 2019 05:35:54 GMT</pubDate>
    <dc:creator>lukaszadrapa</dc:creator>
    <dc:date>2019-12-17T05:35:54Z</dc:date>
    <item>
      <title>Firmware update of s32k144 via UART</title>
      <link>https://community.nxp.com/t5/S32K/Firmware-update-of-s32k144-via-UART/m-p/995411#M5872</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;We are using S32k144 in our project. As per use case requirement we need to update the Firmware of S32k144 with the help of UART interface(a/b approach-Firmware will occupy the complete memory).&lt;/P&gt;&lt;P&gt;Is there any test code/procedure document by which we can update the firmware with the help of UART.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 15 Nov 2019 05:08:12 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/Firmware-update-of-s32k144-via-UART/m-p/995411#M5872</guid>
      <dc:creator>shubhendu_shukl</dc:creator>
      <dc:date>2019-11-15T05:08:12Z</dc:date>
    </item>
    <item>
      <title>Re: Firmware update of s32k144 via UART</title>
      <link>https://community.nxp.com/t5/S32K/Firmware-update-of-s32k144-via-UART/m-p/995412#M5873</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;there are these application notes:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A class="link-titled" href="https://www.nxp.com/docs/en/application-note/AN12218.pdf" title="https://www.nxp.com/docs/en/application-note/AN12218.pdf"&gt;https://www.nxp.com/docs/en/application-note/AN12218.pdf&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A class="link-titled" href="https://www.nxp.com/docs/en/application-note-software/AN12218SW.zip" title="https://www.nxp.com/docs/en/application-note-software/AN12218SW.zip"&gt;https://www.nxp.com/docs/en/application-note-software/AN12218SW.zip&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A class="link-titled" href="https://www.nxp.com/docs/en/application-note/AN12323.pdf" title="https://www.nxp.com/docs/en/application-note/AN12323.pdf"&gt;https://www.nxp.com/docs/en/application-note/AN12323.pdf&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A class="link-titled" href="https://www.nxp.com/docs/en/application-note-software/AN12323SW.zip" title="https://www.nxp.com/docs/en/application-note-software/AN12323SW.zip"&gt;https://www.nxp.com/docs/en/application-note-software/AN12323SW.zip&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Lukas&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 15 Nov 2019 09:36:57 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/Firmware-update-of-s32k144-via-UART/m-p/995412#M5873</guid>
      <dc:creator>lukaszadrapa</dc:creator>
      <dc:date>2019-11-15T09:36:57Z</dc:date>
    </item>
    <item>
      <title>Re: Firmware update of s32k144 via UART</title>
      <link>https://community.nxp.com/t5/S32K/Firmware-update-of-s32k144-via-UART/m-p/995413#M5874</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN style="text-align: left; color: #51626f; text-transform: none; text-indent: 0px; letter-spacing: normal; font-family: inherit; font-size: 100%; font-style: inherit; font-variant: normal; text-decoration: none; word-spacing: 0px; display: inline !important; white-space: normal; orphans: 2; float: none; -webkit-text-stroke-width: 0px; background-color: #ffffff;"&gt;Hi Lukas,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="text-align: left; color: #51626f; text-transform: none; text-indent: 0px; letter-spacing: normal; font-family: inherit; font-size: 100%; font-style: inherit; font-variant: normal; text-decoration: none; word-spacing: 0px; display: inline !important; white-space: normal; orphans: 2; float: none; -webkit-text-stroke-width: 0px; background-color: #ffffff;"&gt;Thanks for the reply I have ported the code of boot loader code to IAR.&lt;SPAN style="color: #001000; background-color: transparent;"&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="-webkit-text-stroke-width: 0px; color: #001000; white-space: normal; letter-spacing: normal; text-decoration: none; display: inline !important; font-size: 100%; font-style: inherit; float: none; background-color: transparent; text-transform: none; word-spacing: 0px; font-variant: normal; text-indent: 0px; font-family: inherit; orphans: 2; text-align: left; "&gt;Now I am able to write my application code to the flash memory &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="-webkit-text-stroke-width: 0px; color: #001000; white-space: normal; letter-spacing: normal; text-decoration: none; display: inline !important; font-size: 100%; font-style: inherit; float: none; background-color: transparent; text-transform: none; word-spacing: 0px; font-variant: normal; text-indent: 0px; font-family: inherit; orphans: 2; text-align: left; "&gt;but the boot loader is not jumping to the application code it is showing Hardware fault.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="-webkit-text-stroke-width: 0px; : ; color: #001000; white-space: normal; letter-spacing: normal; text-decoration: none; display: inline !important; font-size: 100%; font-style: inherit; float: none; background-color: transparent; text-transform: none; word-spacing: 0px; font-variant: normal; text-indent: 0px; font-family: inherit; orphans: 2; text-align: left; "&gt;/*linker of bootloader*/&lt;/STRONG&gt;&lt;/P&gt;&lt;DIV&gt;define symbol __ram_vector_table_size__ =&amp;nbsp; isdefinedsymbol(__flash_vector_table__) ? 0 : 0x00000400;&lt;BR /&gt;define symbol __ram_vector_table_offset__ =&amp;nbsp; isdefinedsymbol(__flash_vector_table__) ? 0 : 0x000003FF;&lt;/DIV&gt;&lt;DIV&gt;/* Flash */&lt;BR /&gt;define symbol m_interrupts_start&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0x00000000;&lt;BR /&gt;define symbol m_interrupts_end&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0x000003FF;&lt;/DIV&gt;&lt;DIV&gt;define symbol m_flash_config_start&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0x00000400;&lt;BR /&gt;define symbol m_flash_config_end&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0x0000040F;&lt;/DIV&gt;&lt;DIV&gt;define symbol m_text_start&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0x10000000;&lt;BR /&gt;define symbol m_text_end&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; = 0x10003FFF;&lt;/DIV&gt;&lt;DIV&gt;/* SRAM_L */&lt;BR /&gt;define symbol m_interrupts_ram_start&amp;nbsp;&amp;nbsp; = 0x1FFF8000;&lt;BR /&gt;define symbol m_interrupts_ram_end&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0x1FFF8000 + __ram_vector_table_offset__;&lt;/DIV&gt;&lt;DIV&gt;define symbol m_data_start&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = m_interrupts_ram_start + __ram_vector_table_size__;&lt;BR /&gt;define symbol m_data_end&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; = 0x1FFFFFFF;&lt;/DIV&gt;&lt;DIV&gt;/* SRAM_U */&lt;BR /&gt;define symbol m_data_2_start&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0x20000000;&lt;BR /&gt;define symbol m_data_2_end&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0x20006FFF;&lt;/DIV&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="-webkit-text-stroke-width: 0px; white-space: normal; letter-spacing: normal; text-decoration: none; display: inline !important; font-size: 100%; font-style: inherit; float: none; text-transform: none; word-spacing: 0px; font-variant: normal; text-indent: 0px; font-family: inherit; orphans: 2; text-align: left; "&gt;/*linker of application code*/&lt;/STRONG&gt;&lt;/P&gt;&lt;DIV&gt;define symbol __ram_vector_table_size__ =&amp;nbsp; isdefinedsymbol(__flash_vector_table__) ? 0 : 0x00000400;&lt;BR /&gt;define symbol __ram_vector_table_offset__ =&amp;nbsp; isdefinedsymbol(__flash_vector_table__) ? 0 : 0x000003FF;&lt;/DIV&gt;&lt;DIV&gt;/* Flash */&lt;BR /&gt;define symbol m_interrupts_start&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0x00001000;&lt;BR /&gt;define symbol m_interrupts_end&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0x000013FF;&lt;/DIV&gt;&lt;DIV&gt;define symbol m_flash_config_start&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0x00001400;&lt;BR /&gt;define symbol m_flash_config_end&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0x0000140F;&lt;/DIV&gt;&lt;DIV&gt;define symbol m_text_start&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0x00001410;&lt;BR /&gt;define symbol m_text_end&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; = 0x0007FFFF;&lt;/DIV&gt;&lt;DIV&gt;/* SRAM_L */&lt;BR /&gt;define symbol m_interrupts_ram_start&amp;nbsp;&amp;nbsp; = 0x1FFF8000;&lt;BR /&gt;define symbol m_interrupts_ram_end&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0x1FFF8000 + __ram_vector_table_offset__;&lt;/DIV&gt;&lt;DIV&gt;define symbol m_data_start&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = m_interrupts_ram_start + __ram_vector_table_size__;&lt;BR /&gt;define symbol m_data_end&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; = 0x1FFFFFFF;&lt;/DIV&gt;&lt;DIV&gt;/* SRAM_U */&lt;BR /&gt;define symbol m_data_2_start&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0x20000000;&lt;BR /&gt;define symbol m_data_2_end&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0x20006FFF;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="display: inline !important; float: none; background-color: #ffffff; color: #001000; font-family: Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif; font-size: 15px; font-style: normal; font-variant: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-decoration: none; text-indent: 0px; text-transform: none; -webkit-text-stroke-width: 0px; white-space: normal; word-spacing: 0px;"&gt;Can you suggest me where am I going wrong.&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 12 Dec 2019 10:49:00 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/Firmware-update-of-s32k144-via-UART/m-p/995413#M5874</guid>
      <dc:creator>shubhendu_shukl</dc:creator>
      <dc:date>2019-12-12T10:49:00Z</dc:date>
    </item>
    <item>
      <title>Re: Firmware update of s32k144 via UART</title>
      <link>https://community.nxp.com/t5/S32K/Firmware-update-of-s32k144-via-UART/m-p/995414#M5875</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;the linker files don't help...&lt;/P&gt;&lt;P&gt;Did you disable all interrupts before jump? It's necessary to disable globally and also disable all local enable bits. It's good practice to put everything to default state before jump.&lt;/P&gt;&lt;P&gt;If you step asm code, which instruction does cause the hard fault?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Lukas&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 17 Dec 2019 05:35:54 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/Firmware-update-of-s32k144-via-UART/m-p/995414#M5875</guid>
      <dc:creator>lukaszadrapa</dc:creator>
      <dc:date>2019-12-17T05:35:54Z</dc:date>
    </item>
    <item>
      <title>Re: Firmware update of s32k144 via UART</title>
      <link>https://community.nxp.com/t5/S32K/Firmware-update-of-s32k144-via-UART/m-p/995415#M5876</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Lukas,&lt;/P&gt;&lt;P&gt;Thanks for the reply.&lt;/P&gt;&lt;P&gt;We are disabling the interrupts before jump. Please find the below code.&lt;/P&gt;&lt;P&gt;After the execution of jumptoUserApplication()&lt;/P&gt;&lt;P&gt;the code is getting stuck in AC0_IRQHandler().&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please help me where am I going wrong&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="issue_boot.png"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/98377i0403C14837FFDBA2/image-size/large?v=v2&amp;amp;px=999" role="button" title="issue_boot.png" alt="issue_boot.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;#include "timeout.h"&lt;BR /&gt;#include "comm.h"&lt;BR /&gt;#include "clock.h"&lt;/P&gt;&lt;P&gt;/* Bootloader definitions */&lt;BR /&gt;/* Start address for the application received by the bootloader&lt;BR /&gt; * application vector table should start at this address&lt;BR /&gt; * */&lt;BR /&gt;#define APP_START_ADDRESS 0x1000&lt;BR /&gt;/* Global variables */&lt;BR /&gt;uint8_t boot_from_comm = 0; /* Used to signal activity on the comm channel */&lt;/P&gt;&lt;P&gt;/* Prototype */&lt;BR /&gt;void JumpToUserApplication( unsigned int userSP, unsigned int userStartup);&lt;/P&gt;&lt;P&gt;void NVIC_SCBDeInit(void);&lt;/P&gt;&lt;P&gt;/* Main Application*/&lt;BR /&gt;int main(void)&lt;BR /&gt;{&lt;BR /&gt; /* Initialize clock */&lt;BR /&gt; clock_initi();&lt;/P&gt;&lt;P&gt;/* Initialize communication interfaces */&lt;BR /&gt; init_comm();&lt;BR /&gt; &lt;BR /&gt; /* Initialize timeout */&lt;BR /&gt; init_timeout();&lt;/P&gt;&lt;P&gt;/* Check if boot start has been received or timeout occurred */&lt;BR /&gt; do{&lt;BR /&gt; uint8_t word_received = comm_status_rx();&lt;BR /&gt; if(word_received){&lt;BR /&gt; boot_from_comm = 1;&lt;BR /&gt; comm_download_app();&lt;BR /&gt; }&lt;BR /&gt; } while((!timeout()) &amp;amp; (!boot_from_comm));&lt;/P&gt;&lt;P&gt;/* Disable all systems and leave device as if coming out of reset */&lt;BR /&gt; &lt;BR /&gt; /* Relocate vector table */&lt;BR /&gt; S32_SCB-&amp;gt;VTOR = (uint32_t)APP_START_ADDRESS;&lt;BR /&gt; &lt;BR /&gt; NVIC_SCBDeInit(); &lt;BR /&gt; uint8_t v_Index_u8r;&lt;BR /&gt; for(v_Index_u8r = 0U; v_Index_u8r &amp;lt; 8U; v_Index_u8r ++)&lt;BR /&gt; { &lt;BR /&gt; S32_NVIC-&amp;gt;ICER[v_Index_u8r] = 0xffffffff;&lt;BR /&gt; S32_NVIC-&amp;gt;ISER[v_Index_u8r] = 0xffffffff;&lt;BR /&gt; S32_NVIC-&amp;gt;ICPR[v_Index_u8r] = 0xffffffff;&lt;BR /&gt; }&lt;BR /&gt; disable_timeout();&lt;BR /&gt; disable_comm();&lt;BR /&gt; reset_clock();&lt;/P&gt;&lt;P&gt;&lt;BR /&gt; /* Check if a valid application is loaded and jump to it */&lt;BR /&gt; JumpToUserApplication(*((uint32_t*)APP_START_ADDRESS), *((uint32_t*)(APP_START_ADDRESS + 4)));&lt;/P&gt;&lt;P&gt;/* Should never return from application code */&lt;BR /&gt; for (;;) {};&lt;BR /&gt; /* Never leave main */&lt;BR /&gt; return 0;&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;void NVIC_SCBDeInit(void)&lt;BR /&gt;{&lt;BR /&gt; S32_SCB-&amp;gt;ICSR = 0x0A000000;&lt;BR /&gt; S32_SCB-&amp;gt;VTOR = 0x00000000;&lt;BR /&gt; S32_SCB-&amp;gt;AIRCR = 0x05FA0000;&lt;BR /&gt; S32_SCB-&amp;gt;SCR = 0x00000000;&lt;BR /&gt; S32_SCB-&amp;gt;CCR = 0x00000000;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt; S32_SCB-&amp;gt;SHPR1 =0x00000000; &lt;BR /&gt; S32_SCB-&amp;gt;SHPR2 =0x00000000;&lt;BR /&gt; S32_SCB-&amp;gt;SHPR3 =0x00000000;&lt;BR /&gt; &lt;BR /&gt; S32_SCB-&amp;gt;SHCSR = 0x00000000;&lt;BR /&gt; S32_SCB-&amp;gt;CFSR = 0xFFFFFFFF;&lt;BR /&gt; S32_SCB-&amp;gt;HFSR = 0xFFFFFFFF;&lt;BR /&gt; S32_SCB-&amp;gt;DFSR = 0xFFFFFFFF;&lt;BR /&gt; &lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;/**&lt;BR /&gt; * Used to jump to the entry point of the user application&lt;BR /&gt; * The Vector table of the user application must be located at 0x1000&lt;BR /&gt; *&lt;BR /&gt; * */&lt;/P&gt;&lt;P&gt;void JumpToUserApplication( unsigned int userSP, unsigned int userStartup)&lt;BR /&gt;{&lt;/P&gt;&lt;P&gt;// /* Check if Entry address is erased and return if erased */&lt;BR /&gt; if(userSP == 0xFFFFFFFF){&lt;BR /&gt; return;&lt;BR /&gt; }&lt;/P&gt;&lt;P&gt;/* Set up stack pointer */&lt;BR /&gt; __asm("msr msp, r0");&lt;BR /&gt; __asm("msr psp, r0");&lt;/P&gt;&lt;P&gt;&lt;BR /&gt; &lt;BR /&gt; /* Jump to application PC (r1) */&lt;BR /&gt; __asm("mov pc, r1");&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Dec 2019 05:18:27 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/Firmware-update-of-s32k144-via-UART/m-p/995415#M5876</guid>
      <dc:creator>shubhendu_shukl</dc:creator>
      <dc:date>2019-12-19T05:18:27Z</dc:date>
    </item>
  </channel>
</rss>

