<?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>S32 Design StudioのトピックRe: question about bootloader for S32DS</title>
    <link>https://community.nxp.com/t5/S32-Design-Studio/question-about-bootloader-for-S32DS/m-p/1204638#M7110</link>
    <description>&lt;P&gt;Please check this thread:&lt;/P&gt;
&lt;P&gt;&lt;A href="https://community.nxp.com/t5/S32-Design-Studio/MPC5748G-bootloader-to-application-jump-issue/m-p/920010" target="_blank"&gt;https://community.nxp.com/t5/S32-Design-Studio/MPC5748G-bootloader-to-application-jump-issue/m-p/920010&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Alternativelly you can use C code to jump to the bootloader:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;LI-CODE lang="c"&gt;typedef void (*func_ptr)(); // pointer to function type

void JumpToApp(unsigned int AppStart)
{
  (*(func_ptr)AppStart)(); // Jump at Application start address
}


void main(void)
{
...
 JumpToApp(0xC000);

}
&lt;/LI-CODE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Tue, 29 Dec 2020 00:26:13 GMT</pubDate>
    <dc:creator>stanish</dc:creator>
    <dc:date>2020-12-29T00:26:13Z</dc:date>
    <item>
      <title>question about bootloader for S32DS</title>
      <link>https://community.nxp.com/t5/S32-Design-Studio/question-about-bootloader-for-S32DS/m-p/1203041#M7104</link>
      <description>&lt;P&gt;I write bootloader and relative user application in S32DS. Now the bootloader can download user application firmware to dedicated flash area, but when invoke the function _startup for user application, seems crash,&amp;nbsp; nothing happened after that. Does this process have problem? Is there anything ignored by me?&lt;/P&gt;&lt;P&gt;Thanks for your attention!&lt;/P&gt;</description>
      <pubDate>Tue, 22 Dec 2020 10:49:07 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32-Design-Studio/question-about-bootloader-for-S32DS/m-p/1203041#M7104</guid>
      <dc:creator>vegetarian1</dc:creator>
      <dc:date>2020-12-22T10:49:07Z</dc:date>
    </item>
    <item>
      <title>Re: question about bootloader for S32DS</title>
      <link>https://community.nxp.com/t5/S32-Design-Studio/question-about-bootloader-for-S32DS/m-p/1203129#M7105</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;if it crashes at the very begining of your user app. it may indicate the adress is wrong or wrongly aligned.&lt;/P&gt;
&lt;P&gt;Are you jumping from bootloader at right starting address of your user application?&lt;/P&gt;
&lt;P&gt;Please note: it is recommended to de-init all peripherals used by the bootloader so after jumping into the app there is no pending interrupt that jumps into unhandled exception.&lt;/P&gt;
&lt;P&gt;There are many thread related to bootloader issues e.g:&lt;/P&gt;
&lt;P&gt;&lt;A href="https://community.nxp.com/t5/S32K/S32K146-BOOTLOADER/m-p/1058945" target="_blank"&gt;https://community.nxp.com/t5/S32K/S32K146-BOOTLOADER/m-p/1058945&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;A href="https://community.nxp.com/t5/S32K/S32K144-Bootloader-gt-JumpToApplication-Problem/m-p/889807" target="_blank"&gt;https://community.nxp.com/t5/S32K/S32K144-Bootloader-gt-JumpToApplication-Problem/m-p/889807&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Hope it helps.&lt;/P&gt;
&lt;P&gt;Stan&lt;/P&gt;</description>
      <pubDate>Tue, 22 Dec 2020 15:17:31 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32-Design-Studio/question-about-bootloader-for-S32DS/m-p/1203129#M7105</guid>
      <dc:creator>stanish</dc:creator>
      <dc:date>2020-12-22T15:17:31Z</dc:date>
    </item>
    <item>
      <title>Re: question about bootloader for S32DS</title>
      <link>https://community.nxp.com/t5/S32-Design-Studio/question-about-bootloader-for-S32DS/m-p/1203371#M7106</link>
      <description>&lt;P&gt;I think no problem with starting address(at 0xC000) for user application. I think the problem is I don't know how to jump to the user application correctly. The chip is MPC5607B. I use S32DS. The code snippet is shown as below.&lt;/P&gt;&lt;P&gt;void jump_to_app(void)&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; __asm__(" " " e_b 0x0000C000" " ");&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;It doesn't working correctly. I am not familiar with powerpc assembly language. How to write it?&lt;/P&gt;&lt;P&gt;Thanks for your attention!&lt;/P&gt;</description>
      <pubDate>Wed, 23 Dec 2020 02:59:53 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32-Design-Studio/question-about-bootloader-for-S32DS/m-p/1203371#M7106</guid>
      <dc:creator>vegetarian1</dc:creator>
      <dc:date>2020-12-23T02:59:53Z</dc:date>
    </item>
    <item>
      <title>Re: question about bootloader for S32DS</title>
      <link>https://community.nxp.com/t5/S32-Design-Studio/question-about-bootloader-for-S32DS/m-p/1204638#M7110</link>
      <description>&lt;P&gt;Please check this thread:&lt;/P&gt;
&lt;P&gt;&lt;A href="https://community.nxp.com/t5/S32-Design-Studio/MPC5748G-bootloader-to-application-jump-issue/m-p/920010" target="_blank"&gt;https://community.nxp.com/t5/S32-Design-Studio/MPC5748G-bootloader-to-application-jump-issue/m-p/920010&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Alternativelly you can use C code to jump to the bootloader:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;LI-CODE lang="c"&gt;typedef void (*func_ptr)(); // pointer to function type

void JumpToApp(unsigned int AppStart)
{
  (*(func_ptr)AppStart)(); // Jump at Application start address
}


void main(void)
{
...
 JumpToApp(0xC000);

}
&lt;/LI-CODE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 29 Dec 2020 00:26:13 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32-Design-Studio/question-about-bootloader-for-S32DS/m-p/1204638#M7110</guid>
      <dc:creator>stanish</dc:creator>
      <dc:date>2020-12-29T00:26:13Z</dc:date>
    </item>
    <item>
      <title>Re: question about bootloader for S32DS</title>
      <link>https://community.nxp.com/t5/S32-Design-Studio/question-about-bootloader-for-S32DS/m-p/1204641#M7111</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;Please check this thread:&lt;/P&gt;
&lt;P&gt;&lt;A href="https://community.nxp.com/t5/S32-Design-Studio/MPC5748G-bootloader-to-application-jump-issue/m-p/920010" target="_blank"&gt;https://community.nxp.com/t5/S32-Design-Studio/MPC5748G-bootloader-to-application-jump-issue/m-p/920010&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Alternatively you can use C code to jump to the application:&lt;/P&gt;
&lt;PRE&gt;typedef void (*func_ptr)(); // pointer to function type&lt;BR /&gt;&lt;BR /&gt;void main(void)&lt;BR /&gt;&lt;BR /&gt;{&lt;BR /&gt;&lt;BR /&gt;...&lt;BR /&gt;&lt;BR /&gt;JumpToApp(0xC000)&lt;BR /&gt;&lt;BR /&gt;}&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;void JumpToApp(unsigned int AppStart)&lt;BR /&gt;{&lt;BR /&gt;(*(func_ptr)AppStart)(); // Jump at Startup&lt;BR /&gt;}&lt;/PRE&gt;</description>
      <pubDate>Tue, 29 Dec 2020 00:33:30 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32-Design-Studio/question-about-bootloader-for-S32DS/m-p/1204641#M7111</guid>
      <dc:creator>stanish</dc:creator>
      <dc:date>2020-12-29T00:33:30Z</dc:date>
    </item>
    <item>
      <title>Re: question about bootloader for S32DS</title>
      <link>https://community.nxp.com/t5/S32-Design-Studio/question-about-bootloader-for-S32DS/m-p/1212855#M7169</link>
      <description>&lt;P&gt;Hi,&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/23056"&gt;@stanish&lt;/a&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you very much! the asm code in that thread works.&lt;/P&gt;&lt;P&gt;please refer a pertinent suggestion from another thread.&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.nxp.com/t5/S32-Design-Studio/S32R274-bootloader-jump-to-app-project/m-p/1094380" target="_blank"&gt;https://community.nxp.com/t5/S32-Design-Studio/S32R274-bootloader-jump-to-app-project/m-p/1094380&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;completely de-init everything before jump. Most important - disable interrupts on all levels - by MSR[EE], by local enable bits in peripherals, by priority registers.&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 18 Jan 2021 02:13:03 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32-Design-Studio/question-about-bootloader-for-S32DS/m-p/1212855#M7169</guid>
      <dc:creator>vegetarian1</dc:creator>
      <dc:date>2021-01-18T02:13:03Z</dc:date>
    </item>
    <item>
      <title>Re: question about bootloader for S32DS</title>
      <link>https://community.nxp.com/t5/S32-Design-Studio/question-about-bootloader-for-S32DS/m-p/1274923#M7471</link>
      <description>&lt;P&gt;Hi,&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/23056"&gt;@stanish&lt;/a&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you for your suggestion!&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;I use C code to jump to the application. It is another way. The address of jumping is boot block start address + 4 for my chip. Please refer to the&amp;nbsp;Reference Manual&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;the code is as below.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;( *( void(*)(void) ) ) ( *(uint32_t*)(boot_block_start_address + 4) );&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 11 May 2021 09:12:35 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32-Design-Studio/question-about-bootloader-for-S32DS/m-p/1274923#M7471</guid>
      <dc:creator>vegetarian1</dc:creator>
      <dc:date>2021-05-11T09:12:35Z</dc:date>
    </item>
  </channel>
</rss>

