<?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: Locked flash memory after unhandled IVOR1 exception in MPC5xxx</title>
    <link>https://community.nxp.com/t5/MPC5xxx/Locked-flash-memory-after-unhandled-IVOR1-exception/m-p/474895#M2083</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Do you mean that you try to&amp;nbsp; dowload s19/elf failed through the trace32 ? I think that you just need to clear the Register: &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;DIV class="section" style="background-color: rgb(100.000000%, 100.000000%, 100.000000%);"&gt;&lt;DIV class="column"&gt;&lt;P&gt;&lt;SPAN style="font-size: 12.000000pt; font-family: 'HelveticaLTStd'; font-weight: bold;"&gt;C55FMC_MCR&amp;nbsp; BIT:EHV,PGM by use trace32. If it isn't work,You could try to clear the FCCU NCF Register and Memu Error Flag Register. &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 16 May 2016 15:12:55 GMT</pubDate>
    <dc:creator>jasoncao</dc:creator>
    <dc:date>2016-05-16T15:12:55Z</dc:date>
    <item>
      <title>Locked flash memory after unhandled IVOR1 exception</title>
      <link>https://community.nxp.com/t5/MPC5xxx/Locked-flash-memory-after-unhandled-IVOR1-exception/m-p/474894#M2082</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I was trying to make a 2 bit ECC error on MPC7544P, the 1st time I executed the code IVOR1 exception was detected but I wasn't implementing the handler after that whenever I re-execute the code I find that I am not able to unlock flash blocks. Any explanation? &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 16 May 2016 14:14:37 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/Locked-flash-memory-after-unhandled-IVOR1-exception/m-p/474894#M2082</guid>
      <dc:creator>monahussein</dc:creator>
      <dc:date>2016-05-16T14:14:37Z</dc:date>
    </item>
    <item>
      <title>Re: Locked flash memory after unhandled IVOR1 exception</title>
      <link>https://community.nxp.com/t5/MPC5xxx/Locked-flash-memory-after-unhandled-IVOR1-exception/m-p/474895#M2083</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Do you mean that you try to&amp;nbsp; dowload s19/elf failed through the trace32 ? I think that you just need to clear the Register: &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;DIV class="section" style="background-color: rgb(100.000000%, 100.000000%, 100.000000%);"&gt;&lt;DIV class="column"&gt;&lt;P&gt;&lt;SPAN style="font-size: 12.000000pt; font-family: 'HelveticaLTStd'; font-weight: bold;"&gt;C55FMC_MCR&amp;nbsp; BIT:EHV,PGM by use trace32. If it isn't work,You could try to clear the FCCU NCF Register and Memu Error Flag Register. &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 16 May 2016 15:12:55 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/Locked-flash-memory-after-unhandled-IVOR1-exception/m-p/474895#M2083</guid>
      <dc:creator>jasoncao</dc:creator>
      <dc:date>2016-05-16T15:12:55Z</dc:date>
    </item>
    <item>
      <title>Re: Locked flash memory after unhandled IVOR1 exception</title>
      <link>https://community.nxp.com/t5/MPC5xxx/Locked-flash-memory-after-unhandled-IVOR1-exception/m-p/474896#M2084</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Jason,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks for your reply. I can connect using JTAG but when I debug the code below nothing happens and the flash blocks remain locked&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; C55FMC.LOCK0.R = 0; // remain 0x3FF0FFFC&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; C55FMC.LOCK1.R = 0; // remain 0x0000FFC0&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; C55FMC.LOCK2.R = 0; // remain 0xFFFFFF00&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; C55FMC.LOCK3.R = 0; // remain 0x0000FFFF&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/*Hence the following code is not executed */&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; C55FMC.MCR.B.ERS = 1;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; C55FMC.SEL2.R = 0x00000080; // select the large block 7&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; *(uint32*)0x011C0000 = 0xFFFFFFFF;&amp;nbsp;&amp;nbsp;&amp;nbsp; //interlock write&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; C55FMC.MCR.B.EHV = 1;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; while(C55FMC.MCR.B.DONE == 0);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; C55FMC.MCR.B.EHV = 0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; C55FMC.MCR.B.ERS = 0;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; C55FMC.MCR.B.PGM = 1;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; *(uint32*)0x011C0000 = 0x12345678;&amp;nbsp;&amp;nbsp;&amp;nbsp; //interlock write&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; *(uint32*)0x011C0004 = 0xAFDBCA42;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; C55FMC.MCR.B.EHV = 1;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; while(C55FMC.MCR.B.DONE == 0);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; C55FMC.MCR.B.EHV = 0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; C55FMC.MCR.B.PGM = 0;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; C55FMC.MCR.B.PGM = 1;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; *(uint32*)0x011C0000 = 0xABCDEF12;&amp;nbsp;&amp;nbsp;&amp;nbsp; //interlock write&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; *(uint32*)0x011C0004 = 0xECDFBAD3;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; C55FMC.MCR.B.EHV = 1;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; while(C55FMC.MCR.B.DONE == 0);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; C55FMC.MCR.B.EHV = 0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; C55FMC.MCR.B.PGM = 0;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; test_read = *(uint64*)0x011C0000;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 17 May 2016 07:11:15 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/Locked-flash-memory-after-unhandled-IVOR1-exception/m-p/474896#M2084</guid>
      <dc:creator>monahussein</dc:creator>
      <dc:date>2016-05-17T07:11:15Z</dc:date>
    </item>
    <item>
      <title>Re: Locked flash memory after unhandled IVOR1 exception</title>
      <link>https://community.nxp.com/t5/MPC5xxx/Locked-flash-memory-after-unhandled-IVOR1-exception/m-p/474897#M2085</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I would agree it is needed to handle FCCU and MEMU faults.&lt;/P&gt;&lt;P&gt;Pay attention to following example code:&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.nxp.com/docs/DOC-330073"&gt;Example MPC5744P_1b+2b_FLASH_ECC_error_injection GHS614&lt;/A&gt; &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 17 May 2016 11:21:13 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/Locked-flash-memory-after-unhandled-IVOR1-exception/m-p/474897#M2085</guid>
      <dc:creator>davidtosenovjan</dc:creator>
      <dc:date>2016-05-17T11:21:13Z</dc:date>
    </item>
  </channel>
</rss>

