<?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: IAP memory usage in the LPC43xx platform in LPC Microcontrollers</title>
    <link>https://community.nxp.com/t5/LPC-Microcontrollers/IAP-memory-usage-in-the-LPC43xx-platform/m-p/1216957#M43634</link>
    <description>&lt;P&gt;Thank you! This was very thorough. I have now finished my library and it's working without a hitch!&lt;/P&gt;</description>
    <pubDate>Tue, 19 Jan 2021 14:42:15 GMT</pubDate>
    <dc:creator>mgfernandez</dc:creator>
    <dc:date>2021-01-19T14:42:15Z</dc:date>
    <item>
      <title>IAP memory usage in the LPC43xx platform</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/IAP-memory-usage-in-the-LPC43xx-platform/m-p/1209076#M43503</link>
      <description>&lt;P&gt;Note: I am remaking this post because I made a few edits in rapid succession to the previous one I made on this and I think the site locked me out because of it. I'll delete the other one if it pops up eventually, it's unclear where it went at the moment.&lt;/P&gt;&lt;P&gt;Greetings! I am working in a IAP implementation for the LPC43xx platform and I some doubts about how the IAP works / uses memory. The information readily available on the subject seems somewhat scarce, and sometimes contradicting, so I figured I'd make a new thread with my findings and some doubts I have in hopes someone with experience using it can give me a hand. I am a bit short on time as I need to have this implemented by the end of the month. I haven't begun to perform tests in some of the ideas and directions I present in this thread, but will start working on them as soon as I'm done writing this. I just wanted to get this out in hopes someone can help me save some time, and in the worst case I'll end up answering these questions myself later on for someone else to find. Without further ado, let's get into it.&lt;/P&gt;&lt;P&gt;In the user manual for these devices, I found the following:&lt;/P&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;EM&gt;"If the application uses the IAP interface, it must reserve the SRAM space used by IAP.&lt;/EM&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;EM&gt;&lt;STRONG&gt;Flash programming commands use 16 B of RAM from 0x10089FF0 to 0x10089FFF.&lt;/STRONG&gt;&amp;nbsp;&lt;/EM&gt;&lt;SPAN&gt;&lt;EM&gt;Applications making use of IAP calls must reserve this RAM block.&amp;nbsp;&lt;STRONG&gt;The maximum stack usage in the user allocated stack space is 256 B. The stack space is excluding usage of IAP Set active partition command. The Set active partition command requires an additional 2200 B in stack additionally for a maximum of 2456 B.&lt;/STRONG&gt;"&lt;/EM&gt;(UM pp.71)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;However, later on you come across the following just before the actual commands start being described:&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;EM&gt;"The flash memory is not accessible during a write or an erase operation.&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;IAP commands which result in a flash write/erase operation use 32 bytes of space in the top portion of the on-chip RAM for execution.&lt;/STRONG&gt;&lt;/EM&gt;&lt;SPAN&gt;&lt;EM&gt;&amp;nbsp;The user program should not be using this space if IAP flash programming is permitted in the application. Maximum stack usage is mentioned in the description of a command."&lt;/EM&gt;&amp;nbsp;(UM pp. 88)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;There is seemingly contradicting information in the User Manual as different memory requirements are specified, and also the 'set active partition' command does not match the later on specified 'set active boot flash bank', which makes me think that the information is not cohesive between these two sections.&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;This prompted to dig a little bit deeper which led me to&amp;nbsp;&lt;A href="https://community.nxp.com/t5/LPC-Microcontrollers/Stack-Initialization-when-using-IAP-to-Write-to-Flash/m-p/649228/highlight/true#M25779" target="_self"&gt;a thread in the forums where the users claim the addresses being used are&lt;/A&gt;&lt;/SPAN&gt;&lt;SPAN&gt;&lt;A href="https://community.nxp.com/t5/LPC-Microcontrollers/Stack-Initialization-when-using-IAP-to-Write-to-Flash/m-p/649228/highlight/true#M25779" target="_self"&gt;&amp;nbsp;0x10089FE0-0x10089FFF&lt;/A&gt;, which would correspond to the top 32B of the local SRAM.&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;I made the necessary adjustments to my linker script to leave that memory region untouched. I feel confident about this one, but please correct me if I'm wrong or there is something else to add!&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/STRONG&gt;I feel that these regions are far away enough from everything to not really run into problems, but it's better to be safe than sorry I suppose.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;Now, when it comes to the&amp;nbsp;&lt;STRONG&gt;'stack usage in the user allocated stack space'&amp;nbsp;&lt;/STRONG&gt;I am unsure what to do. The User Manual goes into great detail in specifying just how much stack each command takes, which, in case anyone finds it useful, I'll leave a table below for further reading:&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&lt;STRONG&gt;Table 51. IAP Command Summary&lt;/STRONG&gt;&amp;nbsp;(modified to include stack usage)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&amp;nbsp; &lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD width="257px"&gt;&lt;STRONG&gt;IAP Command Command&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD width="85px"&gt;&lt;STRONG&gt;Code Reference&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD width="58px"&gt;&lt;STRONG&gt;Stack Usage [B]&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD width="85px"&gt;&lt;STRONG&gt;Reference&lt;/STRONG&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="257px" height="28px"&gt;Init&lt;/TD&gt;&lt;TD width="85px" height="28px"&gt;49&lt;/TD&gt;&lt;TD width="58px" height="28px"&gt;88&lt;/TD&gt;&lt;TD width="85px" height="28px"&gt;Table 52&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="257px" height="25px"&gt;Prepare sectors for write operation&lt;/TD&gt;&lt;TD width="85px" height="25px"&gt;50&lt;/TD&gt;&lt;TD width="58px" height="25px"&gt;118&lt;/TD&gt;&lt;TD width="85px" height="25px"&gt;Table 53&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="257px" height="25px"&gt;Copy RAM to Flash&lt;/TD&gt;&lt;TD width="85px" height="25px"&gt;51&lt;/TD&gt;&lt;TD width="58px" height="25px"&gt;208&lt;/TD&gt;&lt;TD width="85px" height="25px"&gt;Table 54&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="257px" height="25px"&gt;Erase sectors&lt;/TD&gt;&lt;TD width="85px" height="25px"&gt;52&lt;/TD&gt;&lt;TD width="58px" height="25px"&gt;136&lt;/TD&gt;&lt;TD width="85px" height="25px"&gt;Table 55&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="257px" height="25px"&gt;Blank check sectors&lt;/TD&gt;&lt;TD width="85px" height="25px"&gt;53&lt;/TD&gt;&lt;TD width="58px" height="25px"&gt;120&lt;/TD&gt;&lt;TD width="85px" height="25px"&gt;Table 56&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="257px" height="25px"&gt;Read part ID&lt;/TD&gt;&lt;TD width="85px" height="25px"&gt;54&lt;/TD&gt;&lt;TD width="58px" height="25px"&gt;8&lt;/TD&gt;&lt;TD width="85px" height="25px"&gt;Table 57&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="257px" height="25px"&gt;Read Boot Code version&lt;/TD&gt;&lt;TD width="85px" height="25px"&gt;55&lt;/TD&gt;&lt;TD width="58px" height="25px"&gt;8&lt;/TD&gt;&lt;TD width="85px" height="25px"&gt;Table 58&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="257px" height="25px"&gt;Read device serial number&lt;/TD&gt;&lt;TD width="85px" height="25px"&gt;58&lt;/TD&gt;&lt;TD width="58px" height="25px"&gt;8&lt;/TD&gt;&lt;TD width="85px" height="25px"&gt;Table 59&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="257px" height="25px"&gt;Compare&lt;/TD&gt;&lt;TD width="85px" height="25px"&gt;56&lt;/TD&gt;&lt;TD width="58px" height="25px"&gt;152&lt;/TD&gt;&lt;TD width="85px" height="25px"&gt;Table 60&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="257px" height="25px"&gt;Reinvoke ISP&lt;/TD&gt;&lt;TD width="85px" height="25px"&gt;57&lt;/TD&gt;&lt;TD width="58px" height="25px"&gt;192&lt;/TD&gt;&lt;TD width="85px" height="25px"&gt;Table 61&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="257px" height="25px"&gt;Erase page&lt;/TD&gt;&lt;TD width="85px" height="25px"&gt;59&lt;/TD&gt;&lt;TD width="58px" height="25px"&gt;168&lt;/TD&gt;&lt;TD width="85px" height="25px"&gt;Table 62&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="257px" height="25px"&gt;Set active boot flash bank&lt;/TD&gt;&lt;TD width="85px" height="25px"&gt;60&lt;/TD&gt;&lt;TD width="58px" height="25px"&gt;2208&lt;/TD&gt;&lt;TD width="85px" height="25px"&gt;Table 63&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;My questions are, as follows:&lt;/DIV&gt;&lt;UL&gt;&lt;LI&gt;&lt;STRONG&gt;Do I need to somehow reserve this stack space for these calls?&lt;/STRONG&gt;&amp;nbsp;Or is it just telling me I'll need that space available?&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;What does "user allocated stack space" mean?&lt;/STRONG&gt;&lt;UL&gt;&lt;LI&gt;Is it the stack my program is using? If so, do I need to reserve space for these calls? I feel like I shouldn't, but if I do, how would I do that from within my program?&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;LI&gt;I saw some other threads where people were reserving that space in the stack from within the linker,&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;Do I need to reserve the space in my linker script with something like this?&lt;/STRONG&gt;:&lt;UL&gt;&lt;LI&gt;&lt;SPAN&gt;PROVIDE&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;_vStackTop&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;=&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;DEFINED&lt;/SPAN&gt;&lt;SPAN&gt;(__user_stack_top)&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;?&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;__user_stack_top&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;__top_RamLoc32&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;-&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;2456);&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;/* using the worst case condition here */&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;I feel doing that would just move the whole user stack down and the IAP commands would still use the top of the new allocated stack anyway.&lt;/STRONG&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN&gt;&lt;STRONG&gt;How does the IAP know where the stack is anyway?&lt;/STRONG&gt;&amp;nbsp;Does it need to be 'told' or due to the way it works it acts just like any other function from within the program and the stack is already contextually referenced?&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;And that's about it! Any insights or further reading that I can be pointed to will be appreciated. It's worth noting that I have followed the LPCOpen example on IAP usage but it is rather simple in how it does things so it's not as extensive and detailed as I would have hoped it to be.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Cheers!&lt;/DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Fri, 08 Jan 2021 17:35:45 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/IAP-memory-usage-in-the-LPC43xx-platform/m-p/1209076#M43503</guid>
      <dc:creator>mgfernandez</dc:creator>
      <dc:date>2021-01-08T17:35:45Z</dc:date>
    </item>
    <item>
      <title>Re: IAP memory usage in the LPC43xx platform</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/IAP-memory-usage-in-the-LPC43xx-platform/m-p/1209567#M43518</link>
      <description>&lt;P&gt;Hello &lt;SPAN class="UserName lia-user-name lia-user-rank-Contributor-I"&gt;&lt;SPAN class="lia-link-navigation lia-page-link lia-link-disabled lia-user-name-link"&gt;&lt;SPAN class=""&gt;mgfernandez&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;,&lt;/P&gt;
&lt;P&gt;About Flash IAP, first of all, recommend you refer to the flashiap demo under LPCopen,&lt;/P&gt;
&lt;P&gt;&lt;A href="https://www.nxp.com/design/microcontrollers-developer-resources/lpcopen-libraries-and-examples/lpcopen-software-development-platform-lpc43xx:LPCOPEN-SOFTWARE-FOR-LPC43XX" target="_blank"&gt;https://www.nxp.com/design/microcontrollers-developer-resources/lpcopen-libraries-and-examples/lpcopen-software-development-platform-lpc43xx:LPCOPEN-SOFTWARE-FOR-LPC43XX&lt;/A&gt;&amp;nbsp; &lt;/P&gt;
&lt;P&gt;If still have question about this, tell us.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Regards,&lt;/P&gt;
&lt;P&gt;Alice&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 11 Jan 2021 09:45:44 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/IAP-memory-usage-in-the-LPC43xx-platform/m-p/1209567#M43518</guid>
      <dc:creator>Alice_Yang</dc:creator>
      <dc:date>2021-01-11T09:45:44Z</dc:date>
    </item>
    <item>
      <title>Re: IAP memory usage in the LPC43xx platform</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/IAP-memory-usage-in-the-LPC43xx-platform/m-p/1209664#M43526</link>
      <description>&lt;P&gt;Hello! I've followed the example you mentioned from LPCOpen and performed minimal tests with it which turned out to be successful, but some colleges of mine developed a larger library based on it and they encountered reliability issues.&lt;/P&gt;&lt;P&gt;I am rewriting it and looking into the usage of the IAP at the moment, and the memory management topics that are mentioned in the User Manual aren't really touched upon by the example at all. I feel the example might be useful if you are doing something small, but once you have to escalate it you might run into trouble, just like we are at the moment.&lt;/P&gt;&lt;P&gt;I am still developing the library however and developing unit tests for it so I can rule out logic errors in its utilisation, and I'll make another post with more concrete problems if I encounter them when I get to actual testing, but for now I felt these concerns about the memory utilisation of the IAP that arise from reading the existing documentation were enough to warrant me asking about it here.&lt;/P&gt;&lt;P&gt;Thanks.&lt;/P&gt;</description>
      <pubDate>Mon, 11 Jan 2021 13:23:20 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/IAP-memory-usage-in-the-LPC43xx-platform/m-p/1209664#M43526</guid>
      <dc:creator>mgfernandez</dc:creator>
      <dc:date>2021-01-11T13:23:20Z</dc:date>
    </item>
    <item>
      <title>Re: IAP memory usage in the LPC43xx platform</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/IAP-memory-usage-in-the-LPC43xx-platform/m-p/1216603#M43621</link>
      <description>&lt;P&gt;Hello &lt;A id="lookup0032p000036hnQZcas3" href="https://nxp.my.salesforce.com/0032p000036hnQZ" target="_blank"&gt;Martin Fernandez&lt;/A&gt;,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;EM&gt;Do I need to somehow reserve this stack space for these calls?&amp;nbsp;Or is it just telling me I'll need that space available?&lt;/EM&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;-&amp;gt; Tell you it need that space available.&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;EM&gt;What does "user allocated stack space" mean?&lt;/EM&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;EM&gt;Is it the stack my program is using? If so, do I need to reserve space for these calls? I feel like I shouldn't, but if I do, how would I do that from within my program?&lt;/EM&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;-&amp;gt; You needn't reserve it.&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;EM&gt;I saw some other threads where people were reserving that space in the stack from within the linker,&amp;nbsp;&lt;STRONG&gt;Do I need to reserve the space in my linker script with something like this?&lt;/STRONG&gt;:&lt;/EM&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;EM&gt;PROVIDE(_vStackTop&amp;nbsp;=&amp;nbsp;DEFINED(__user_stack_top)&amp;nbsp;?&amp;nbsp;__user_stack_top&amp;nbsp;:&amp;nbsp;__top_RamLoc32&amp;nbsp;-&amp;nbsp;2456);&amp;nbsp;/* using the worst case condition here */&lt;/EM&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;EM&gt;&lt;STRONG&gt;I feel doing that would just move the whole user stack down and the IAP commands would still use the top of the new allocated stack anyway.&lt;/STRONG&gt;&amp;nbsp;&lt;/EM&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;-&amp;gt; I think you can reserve the space, also can just make the space available. If you&amp;nbsp;&lt;/P&gt;
&lt;P&gt;want to reserve it like thread, should change "&lt;EM&gt;__top_RamLoc32&amp;nbsp;-&amp;nbsp;2456&lt;/EM&gt; " to &lt;EM&gt;"__top_RamLoc32&amp;nbsp;- 307".&lt;/EM&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;SPAN&gt;&lt;STRONG&gt;How does the IAP know where the stack is anyway?&lt;/STRONG&gt;&amp;nbsp;Does it need to be 'told' or due to the way it works it acts just like any other function from within the program and the stack is already contextually referenced?&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;SPAN&gt;-&amp;gt; Needn't told. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;In a world , recommend you first to development as by default, if there is error, then check whether the RAM is enough.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 19 Jan 2021 07:16:46 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/IAP-memory-usage-in-the-LPC43xx-platform/m-p/1216603#M43621</guid>
      <dc:creator>Alice_Yang</dc:creator>
      <dc:date>2021-01-19T07:16:46Z</dc:date>
    </item>
    <item>
      <title>Re: IAP memory usage in the LPC43xx platform</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/IAP-memory-usage-in-the-LPC43xx-platform/m-p/1216957#M43634</link>
      <description>&lt;P&gt;Thank you! This was very thorough. I have now finished my library and it's working without a hitch!&lt;/P&gt;</description>
      <pubDate>Tue, 19 Jan 2021 14:42:15 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/IAP-memory-usage-in-the-LPC43xx-platform/m-p/1216957#M43634</guid>
      <dc:creator>mgfernandez</dc:creator>
      <dc:date>2021-01-19T14:42:15Z</dc:date>
    </item>
  </channel>
</rss>

