<?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>Processor Expert SoftwareのトピックFLASH_LDD FTFE_PDD_DisableInterrupts issue</title>
    <link>https://community.nxp.com/t5/Processor-Expert-Software/FLASH-LDD-FTFE-PDD-DisableInterrupts-issue/m-p/246101#M1387</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I'm having an issue with FLASH_LDD driver on a MK20FX512. When completing an erase followed by a write operation (through IntFLASH's SetFlash method) the Command Compete interrupt handler attempts to disable the command complete interrupt by calling FTFE_PDD_DisableInterrupts. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE __default_attr="c++" __jive_macro_name="code" class="jive_text_macro jive_macro_code _jivemacro_uid_1386259426973294" jivemacro_uid="_1386259426973294" modifiedtitle="true"&gt;
&lt;P&gt;if (DeviceDataPrv-&amp;gt;DataCounter == 0U) { /* If all the data has been successfully proceeded, finish the operation */&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DeviceDataPrv-&amp;gt;CurrentOperationStatus = LDD_FLASH_IDLE; /* If yes, change the operation state to IDLE */&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FMC_PDD_InvalidateFlashCache(FMC_BASE_PTR);&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PE_NOP();&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PE_NOP();&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PE_NOP();&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FTFE_PDD_DisableInterrupts(FTFE_BASE_PTR, FTFE_PDD_COMMAND_COMPLETE_INT); /* Disable the Command complete interrupt */&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IntFlashLdd2_OnOperationComplete(DeviceDataPrv-&amp;gt;UserDataPtr); /* Invoke the OnOperationComplete event */&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return;&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; /* End */&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;
&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;However it appears that most of the time it doesn't work, but every once in a while the operation completes successfully. When it doesn't work the application gets stuck with the interrupt handler being continuously called. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Stepping with the debugger and watching the FTFE_FCNFG register, if I break on line 8 above, I can see that the interrupt enable flags are still set. If I break on line 7, and step through the assembly code it works correctly and I don't encounter the problem. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;As this suggests a timing issue, or a race condition, I modified the code to disable interrupts ( asm("cpsid.n i");)before calling FTFE_PDD_DisableInterrupts. This seams to resolve the issue, however I'm not sure if this is a real fix or if I'm just shifting timing enough to avoid the issue.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;**&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Processor&amp;nbsp;&amp;nbsp; : MK20FX512VLQ12&lt;/P&gt;&lt;P&gt;**&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Component&amp;nbsp;&amp;nbsp; : FLASH_LDD&lt;/P&gt;&lt;P&gt;**&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Version&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : Component 01.099, Driver 01.12, CPU db: 3.00.000&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; ~Dave&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 05 Dec 2013 16:28:14 GMT</pubDate>
    <dc:creator>davidschroeder</dc:creator>
    <dc:date>2013-12-05T16:28:14Z</dc:date>
    <item>
      <title>FLASH_LDD FTFE_PDD_DisableInterrupts issue</title>
      <link>https://community.nxp.com/t5/Processor-Expert-Software/FLASH-LDD-FTFE-PDD-DisableInterrupts-issue/m-p/246101#M1387</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I'm having an issue with FLASH_LDD driver on a MK20FX512. When completing an erase followed by a write operation (through IntFLASH's SetFlash method) the Command Compete interrupt handler attempts to disable the command complete interrupt by calling FTFE_PDD_DisableInterrupts. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE __default_attr="c++" __jive_macro_name="code" class="jive_text_macro jive_macro_code _jivemacro_uid_1386259426973294" jivemacro_uid="_1386259426973294" modifiedtitle="true"&gt;
&lt;P&gt;if (DeviceDataPrv-&amp;gt;DataCounter == 0U) { /* If all the data has been successfully proceeded, finish the operation */&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DeviceDataPrv-&amp;gt;CurrentOperationStatus = LDD_FLASH_IDLE; /* If yes, change the operation state to IDLE */&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FMC_PDD_InvalidateFlashCache(FMC_BASE_PTR);&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PE_NOP();&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PE_NOP();&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PE_NOP();&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FTFE_PDD_DisableInterrupts(FTFE_BASE_PTR, FTFE_PDD_COMMAND_COMPLETE_INT); /* Disable the Command complete interrupt */&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IntFlashLdd2_OnOperationComplete(DeviceDataPrv-&amp;gt;UserDataPtr); /* Invoke the OnOperationComplete event */&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return;&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; /* End */&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;
&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;However it appears that most of the time it doesn't work, but every once in a while the operation completes successfully. When it doesn't work the application gets stuck with the interrupt handler being continuously called. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Stepping with the debugger and watching the FTFE_FCNFG register, if I break on line 8 above, I can see that the interrupt enable flags are still set. If I break on line 7, and step through the assembly code it works correctly and I don't encounter the problem. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;As this suggests a timing issue, or a race condition, I modified the code to disable interrupts ( asm("cpsid.n i");)before calling FTFE_PDD_DisableInterrupts. This seams to resolve the issue, however I'm not sure if this is a real fix or if I'm just shifting timing enough to avoid the issue.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;**&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Processor&amp;nbsp;&amp;nbsp; : MK20FX512VLQ12&lt;/P&gt;&lt;P&gt;**&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Component&amp;nbsp;&amp;nbsp; : FLASH_LDD&lt;/P&gt;&lt;P&gt;**&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Version&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : Component 01.099, Driver 01.12, CPU db: 3.00.000&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; ~Dave&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 05 Dec 2013 16:28:14 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Processor-Expert-Software/FLASH-LDD-FTFE-PDD-DisableInterrupts-issue/m-p/246101#M1387</guid>
      <dc:creator>davidschroeder</dc:creator>
      <dc:date>2013-12-05T16:28:14Z</dc:date>
    </item>
    <item>
      <title>Re: FLASH_LDD FTFE_PDD_DisableInterrupts issue</title>
      <link>https://community.nxp.com/t5/Processor-Expert-Software/FLASH-LDD-FTFE-PDD-DisableInterrupts-issue/m-p/246102#M1388</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;could you please post here some simple demonstration project in order to analyze it on our side?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards&lt;/P&gt;&lt;P&gt;Vojtech Filip&lt;/P&gt;&lt;P&gt;Processor Expert Support Team&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 09 Dec 2013 11:02:00 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Processor-Expert-Software/FLASH-LDD-FTFE-PDD-DisableInterrupts-issue/m-p/246102#M1388</guid>
      <dc:creator>vfilip</dc:creator>
      <dc:date>2013-12-09T11:02:00Z</dc:date>
    </item>
    <item>
      <title>Re: Re: FLASH_LDD FTFE_PDD_DisableInterrupts issue</title>
      <link>https://community.nxp.com/t5/Processor-Expert-Software/FLASH-LDD-FTFE-PDD-DisableInterrupts-issue/m-p/246103#M1389</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;Vojtech,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Attached is a simplified project that exhibits the symptoms describe. Of interest, I had to a the USB_CDC_Class and USB_DEVICE_STACK before the problem showed up. Without the USB components the write worked correctly.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;Thanks,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ~Dave&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 09 Dec 2013 16:49:05 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Processor-Expert-Software/FLASH-LDD-FTFE-PDD-DisableInterrupts-issue/m-p/246103#M1389</guid>
      <dc:creator>davidschroeder</dc:creator>
      <dc:date>2013-12-09T16:49:05Z</dc:date>
    </item>
    <item>
      <title>Re: Re: Re: FLASH_LDD FTFE_PDD_DisableInterrupts issue</title>
      <link>https://community.nxp.com/t5/Processor-Expert-Software/FLASH-LDD-FTFE-PDD-DisableInterrupts-issue/m-p/246104#M1390</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;please try to add one or more PE_NOP(); It’s because on some Kinetis MCUs we have identified strange behavior in some cases after calling the FMC_PDD_InvalidateFlashCache and adding additional NOP after invalidate flash cache. That might be the cause of issues also in here.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;We have also identified a problem in FTFE_PDD_DisableInterrupts macro that might be involved in the problem cause.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please find attached fixed PDD module. Please copy it over existing file. It is located under the following path: &lt;EM&gt;{CW}\MCU\ProcessorExpert\lib\Kinetis\pdd\inc\&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards&lt;/P&gt;&lt;P&gt;Vojtech Filip&lt;/P&gt;&lt;P&gt;Processor Expert Support Team&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 11 Dec 2013 13:09:18 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Processor-Expert-Software/FLASH-LDD-FTFE-PDD-DisableInterrupts-issue/m-p/246104#M1390</guid>
      <dc:creator>vfilip</dc:creator>
      <dc:date>2013-12-11T13:09:18Z</dc:date>
    </item>
    <item>
      <title>Re: FLASH_LDD FTFE_PDD_DisableInterrupts issue</title>
      <link>https://community.nxp.com/t5/Processor-Expert-Software/FLASH-LDD-FTFE-PDD-DisableInterrupts-issue/m-p/246105#M1391</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN style="color: #000000; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;Vojtech,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Adding an additional PE_NOP does not correct the problem (I'd actually tried that before disabling interrupts). I installed the new FTFE_PDD.h you sent, it also does not seam to have any effect on the problem.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;~Dave&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 16 Dec 2013 15:29:53 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Processor-Expert-Software/FLASH-LDD-FTFE-PDD-DisableInterrupts-issue/m-p/246105#M1391</guid>
      <dc:creator>davidschroeder</dc:creator>
      <dc:date>2013-12-16T15:29:53Z</dc:date>
    </item>
    <item>
      <title>Re: Re: FLASH_LDD FTFE_PDD_DisableInterrupts issue</title>
      <link>https://community.nxp.com/t5/Processor-Expert-Software/FLASH-LDD-FTFE-PDD-DisableInterrupts-issue/m-p/246106#M1392</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN style="color: #000000; font-size: 10pt; font-family: arial, helvetica, sans-serif;"&gt;That's strange... Please try to comment the line &lt;EM&gt;FMC_PDD_InvalidateFlashCache(FMC_BASE_PTR);&lt;/EM&gt; , check if it helps and let us know the result. &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000; font-size: 10pt; font-family: arial, helvetica, sans-serif;"&gt;This way we'll know if the problem is related to caching.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000; font-family: Consolas, 'Courier New', Courier, mono, serif; font-size: 11.818181991577148px;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;Best regards&lt;/P&gt;&lt;P&gt;Petr Hradsky&lt;/P&gt;&lt;P&gt;Processor Expert Support Team&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 17 Dec 2013 09:33:33 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Processor-Expert-Software/FLASH-LDD-FTFE-PDD-DisableInterrupts-issue/m-p/246106#M1392</guid>
      <dc:creator>Petr_H</dc:creator>
      <dc:date>2013-12-17T09:33:33Z</dc:date>
    </item>
    <item>
      <title>Re: Re: FLASH_LDD FTFE_PDD_DisableInterrupts issue</title>
      <link>https://community.nxp.com/t5/Processor-Expert-Software/FLASH-LDD-FTFE-PDD-DisableInterrupts-issue/m-p/246107#M1393</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Peter,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; Yes, If I comment that line out it does not get stuck.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;~Dave&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 17 Dec 2013 12:36:29 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Processor-Expert-Software/FLASH-LDD-FTFE-PDD-DisableInterrupts-issue/m-p/246107#M1393</guid>
      <dc:creator>davidschroeder</dc:creator>
      <dc:date>2013-12-17T12:36:29Z</dc:date>
    </item>
    <item>
      <title>Re: FLASH_LDD FTFE_PDD_DisableInterrupts issue</title>
      <link>https://community.nxp.com/t5/Processor-Expert-Software/FLASH-LDD-FTFE-PDD-DisableInterrupts-issue/m-p/246108#M1394</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; line-height: 1.5em;"&gt;Ok, I'll pass it to the development team for analysis of the cause of the problem. For now, please use this as a workaround. You can disable regeneration of the component code using the component pop-up menu command "Code generation -&amp;gt; Don't write Generated Component Modules".&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; line-height: 1.5em;"&gt;There is only a potential risk that if your application would read the written data immediately after writing them it could read old values. If you'll encounter such issues, please let us know.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards&lt;/P&gt;&lt;P&gt;Petr Hradsky&lt;/P&gt;&lt;P&gt;Processor Expert Support Team&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Dec 2013 14:03:52 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Processor-Expert-Software/FLASH-LDD-FTFE-PDD-DisableInterrupts-issue/m-p/246108#M1394</guid>
      <dc:creator>Petr_H</dc:creator>
      <dc:date>2013-12-19T14:03:52Z</dc:date>
    </item>
    <item>
      <title>Re: Re: Re: FLASH_LDD FTFE_PDD_DisableInterrupts issue</title>
      <link>https://community.nxp.com/t5/Processor-Expert-Software/FLASH-LDD-FTFE-PDD-DisableInterrupts-issue/m-p/1575907#M5379</link>
      <description>&lt;P&gt;I know this is old and was marked "solved" but has anyone really determined the cause? I have been working on some older code. It has the same problem. The code generated by PE puts in 3 NOPs. However, I found that I needed increase this to 6 to make it work. Logically, if we are really clearing the cache, one might think we need to have 8 NOPs for the 8-way cache. And, according to the documentation, writing to the flash control register should be done from RAM, not while running from flash! Which, is logical as the NOP are just part of the same code you are trying to avoid using until the cache is really flushed. I expect that the cache only needs to be cleared if the bank being programed is the same bank that you are executing from so in many cases, it is not needed.&lt;/P&gt;</description>
      <pubDate>Sat, 31 Dec 2022 21:46:37 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Processor-Expert-Software/FLASH-LDD-FTFE-PDD-DisableInterrupts-issue/m-p/1575907#M5379</guid>
      <dc:creator>bflorac</dc:creator>
      <dc:date>2022-12-31T21:46:37Z</dc:date>
    </item>
  </channel>
</rss>

