<?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>LPC Microcontrollers中的主题 Re: Access Flash from normal-world application</title>
    <link>https://community.nxp.com/t5/LPC-Microcontrollers/Access-Flash-from-normal-world-application/m-p/953141#M37850</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I took the hello world project, added the modifications and now have the behaviour as described in my first post. I attached the full secure and non-secure project. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If the initialization of the flash in your hello world non-secure project does work, you could also provide this projects so that I can see the differences.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sat, 17 Aug 2019 14:30:30 GMT</pubDate>
    <dc:creator>simon_ott</dc:creator>
    <dc:date>2019-08-17T14:30:30Z</dc:date>
    <item>
      <title>Access Flash from normal-world application</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/Access-Flash-from-normal-world-application/m-p/953137#M37846</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P style="background-color: transparent; color: windowtext;"&gt;&lt;SPAN data-contrast="auto" style="color: windowtext; font-size: 11pt;"&gt;&lt;SPAN style="background-color: inherit;"&gt;I am trying to write to the flash from a non-secure application via the &lt;/SPAN&gt;&lt;SPAN style="background-color: inherit;"&gt;fsl_iap&lt;/SPAN&gt;&lt;SPAN style="background-color: inherit;"&gt; driver. I therefore configured TrustZone and Secure AHB Controller &lt;/SPAN&gt;&lt;SPAN style="background-color: inherit;"&gt;so that the ROM_API_TREE is in non-secure memory. In the secure world, it is possible to call &lt;/SPAN&gt;&lt;SPAN style="background-color: inherit;"&gt;FLASH_Init&lt;/SPAN&gt;&lt;SPAN style="background-color: inherit;"&gt;() and then write to the flash. In the non-secure world, I get a &lt;/SPAN&gt;&lt;SPAN style="background-color: inherit;"&gt;Hardfault&lt;/SPAN&gt;&lt;SPAN style="background-color: inherit;"&gt; because of an SAU violation at address 0x13001100. &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="font-size: 11pt;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="background-color: transparent; color: windowtext;"&gt;&lt;/P&gt;&lt;P style="background-color: transparent; color: windowtext;"&gt;&lt;SPAN data-contrast="auto" style="color: windowtext; font-size: 11pt;"&gt;&lt;SPAN style="background-color: inherit;"&gt;I think this is because ROM_API_TREE in &lt;/SPAN&gt;&lt;SPAN style="background-color: inherit;"&gt;fsl_iap.c&lt;/SPAN&gt;&lt;SPAN style="background-color: inherit;"&gt; is defined to&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="font-size: 11pt;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="background-color: transparent; color: windowtext;"&gt;&lt;SPAN data-contrast="auto" style="color: windowtext; font-size: 11pt;"&gt;&lt;SPAN style="background-color: inherit;"&gt;#define ROM_API_TREE ((uint32_t *)0x&lt;STRONG&gt;1&lt;/STRONG&gt;30010f0) &amp;nbsp; // line 22 of &lt;/SPAN&gt;&lt;SPAN style="background-color: inherit;"&gt;fsl_iap.c&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="font-size: 11pt;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="background-color: transparent; color: windowtext;"&gt;&lt;SPAN style="background-color: inherit; color: windowtext; font-size: 11pt; "&gt;Which is secure memory, so&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="background-color: inherit; color: windowtext; font-size: 11pt; "&gt;assert(FLASH_API_TREE) fails, as FLASH_API_TREE points&lt;/SPAN&gt;&lt;SPAN style="background-color: inherit; color: windowtext; font-size: 11pt; "&gt; to ROM_API_TREE.&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="font-size: 11pt;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="background-color: transparent; color: windowtext;"&gt;&lt;SPAN style="font-size: 11pt;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="background-color: transparent; color: windowtext;"&gt;&lt;SPAN style="background-color: inherit; color: windowtext; font-size: 11pt; "&gt;To test, I set ROM_API_TREE to non-secure memory:&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="font-size: 11pt;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="background-color: transparent; color: windowtext;"&gt;&lt;SPAN style="background-color: inherit; color: windowtext; font-size: 11pt; "&gt;#define ROM_API_TREE ((uint32_t *)0x&lt;STRONG&gt;0&lt;/STRONG&gt;30010f0)&lt;/SPAN&gt;&lt;SPAN style="font-size: 11pt;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="background-color: transparent; color: windowtext;"&gt;&lt;SPAN style="font-size: 11pt;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="background-color: transparent; color: windowtext;"&gt;&lt;SPAN data-contrast="auto" style="color: windowtext; font-size: 11pt;"&gt;&lt;SPAN style="background-color: inherit;"&gt;Now the assert does not cause a &lt;/SPAN&gt;&lt;SPAN style="background-color: inherit;"&gt;hardfault anymore&lt;/SPAN&gt;&lt;SPAN style="background-color: inherit;"&gt;, but &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN data-contrast="auto" style="color: windowtext; font-size: 11pt;"&gt;&lt;SPAN style="background-color: inherit;"&gt;FLASH_API_TREE-&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="background-color: inherit;"&gt;flash_init&lt;/SPAN&gt;&lt;SPAN style="background-color: inherit;"&gt;(config); (line 136 of &lt;/SPAN&gt;&lt;SPAN style="background-color: inherit;"&gt;fsl_iap.c&lt;/SPAN&gt;&lt;SPAN style="background-color: inherit;"&gt;) does cause a hardfault. The SAU violation is now at&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="background-color: inherit; color: windowtext; font-size: 11pt; "&gt; a different address: 0x13001088. This address is before the actual ROM API. &lt;/SPAN&gt;&lt;SPAN style="font-size: 11pt;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="background-color: transparent; color: windowtext;"&gt;&lt;/P&gt;&lt;P style="background-color: transparent; color: windowtext;"&gt;&lt;SPAN data-contrast="auto" style="color: windowtext; font-size: 11pt;"&gt;&lt;SPAN style="background-color: inherit;"&gt;The &lt;/SPAN&gt;&lt;SPAN style="background-color: inherit;"&gt;behaviour&lt;/SPAN&gt;&lt;SPAN style="background-color: inherit;"&gt; can be replicated easily with importing one of the &lt;/SPAN&gt;&lt;SPAN style="background-color: inherit;"&gt;TrustZone&lt;/SPAN&gt;&lt;SPAN style="background-color: inherit;"&gt; SDK examples, adding the &lt;/SPAN&gt;&lt;SPAN style="background-color: inherit;"&gt;fsl_iap&lt;/SPAN&gt;&lt;SPAN style="background-color: inherit;"&gt; driver, configuring the Secure AHB Controller to be non-secure (privileged) for the ROM area where the ROM_API_TREE is located and calling &lt;/SPAN&gt;&lt;SPAN style="background-color: inherit;"&gt;FLASH_Init&lt;/SPAN&gt;&lt;SPAN style="background-color: inherit;"&gt;(). From the secure project, this is possible, from the non-secure project, it fails.&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="background-color: transparent; color: windowtext;"&gt;&lt;SPAN style="font-size: 11pt;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="background-color: transparent; color: windowtext;"&gt;&lt;SPAN style="background-color: inherit; color: windowtext; font-size: 11pt; "&gt;In the user manual, I found: &lt;/SPAN&gt;&lt;SPAN style="font-size: 11pt;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="background-color: transparent; color: windowtext;"&gt;&lt;SPAN data-contrast="auto" style="color: windowtext; font-size: 11pt;"&gt;&lt;SPAN style="background-color: inherit;"&gt;"&lt;/SPAN&gt;&lt;SPAN style="background-color: inherit;"&gt;TrustZone&lt;/SPAN&gt;&lt;SPAN style="background-color: inherit;"&gt; disabled image is executed in normal mode and whole memory space is&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="font-size: 11pt;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="background-color: transparent; color: windowtext;"&gt;&lt;SPAN style="background-color: inherit; color: windowtext; font-size: 11pt; "&gt;configured as non-secure (except first 4kB of ROM). &lt;/SPAN&gt;&lt;STRONG style="background-color: inherit; : ; color: windowtext; font-size: 11pt; "&gt;Thus, the ROM API can be used&lt;/STRONG&gt;&lt;SPAN style="font-size: 11pt;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="background-color: transparent; color: windowtext;"&gt;&lt;STRONG style="background-color: inherit; : ; color: windowtext; font-size: 11pt; "&gt;without any limitation&lt;/STRONG&gt;&lt;SPAN style="background-color: inherit; color: windowtext; font-size: 11pt; "&gt; as on any LPC device without security extension."&lt;/SPAN&gt;&lt;SPAN style="font-size: 11pt;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="background-color: transparent; color: windowtext;"&gt;&lt;SPAN style="font-size: 11pt;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="background-color: transparent; color: windowtext;"&gt;&lt;SPAN style="background-color: inherit; color: windowtext; font-size: 11pt; "&gt;This makes me think, that it should be possible to access the flash from non-secure memory also if the non-secure application runs after a secure application that configured SAU and Secure AHB Controller correct. Could you please clarify if and how it is possible to write to the flash from a non-secure application?&lt;/SPAN&gt;&lt;SPAN style="font-size: 11pt;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="background-color: transparent; color: windowtext;"&gt;&lt;SPAN style="font-size: 11pt;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="background-color: transparent; color: windowtext;"&gt;&lt;SPAN data-contrast="auto" style="color: windowtext; font-size: 11pt;"&gt;&lt;SPAN style="background-color: inherit;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 05 Aug 2019 14:58:28 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/Access-Flash-from-normal-world-application/m-p/953137#M37846</guid>
      <dc:creator>simon_ott</dc:creator>
      <dc:date>2019-08-05T14:58:28Z</dc:date>
    </item>
    <item>
      <title>Re: Access Flash from normal-world application</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/Access-Flash-from-normal-world-application/m-p/953138#M37847</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Simon,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Can you please confirm the version of MCUXpresso as well as the version of the SDK that you are using.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best Regards,&lt;/P&gt;&lt;P&gt;Sabina&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 07 Aug 2019 17:54:21 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/Access-Flash-from-normal-world-application/m-p/953138#M37847</guid>
      <dc:creator>Sabina_Bruce</dc:creator>
      <dc:date>2019-08-07T17:54:21Z</dc:date>
    </item>
    <item>
      <title>Re: Access Flash from normal-world application</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/Access-Flash-from-normal-world-application/m-p/953139#M37848</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I am using MCUXpresso v11 and SDK v2.6.2&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 07 Aug 2019 20:33:59 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/Access-Flash-from-normal-world-application/m-p/953139#M37848</guid>
      <dc:creator>simon_ott</dc:creator>
      <dc:date>2019-08-07T20:33:59Z</dc:date>
    </item>
    <item>
      <title>Re: Access Flash from normal-world application</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/Access-Flash-from-normal-world-application/m-p/953140#M37849</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Simon,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you for your response, we can be sure that its not a version issue as the earlier versions are not stable in this matter.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Is it possible for you to send me your modifications as they are in your project. I've been trying to replicate the same behavior using the hello_world example and your instructions of replicating this, but no luck so far.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best Regards,&lt;/P&gt;&lt;P&gt;Sabina&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 Aug 2019 19:06:30 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/Access-Flash-from-normal-world-application/m-p/953140#M37849</guid>
      <dc:creator>Sabina_Bruce</dc:creator>
      <dc:date>2019-08-09T19:06:30Z</dc:date>
    </item>
    <item>
      <title>Re: Access Flash from normal-world application</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/Access-Flash-from-normal-world-application/m-p/953141#M37850</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I took the hello world project, added the modifications and now have the behaviour as described in my first post. I attached the full secure and non-secure project. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If the initialization of the flash in your hello world non-secure project does work, you could also provide this projects so that I can see the differences.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 17 Aug 2019 14:30:30 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/Access-Flash-from-normal-world-application/m-p/953141#M37850</guid>
      <dc:creator>simon_ott</dc:creator>
      <dc:date>2019-08-17T14:30:30Z</dc:date>
    </item>
    <item>
      <title>Re: Access Flash from normal-world application</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/Access-Flash-from-normal-world-application/m-p/953142#M37851</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Simon,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you for sharing your project, I am currently checking it throughly to see if there is anything evident that might help resolve this.&amp;nbsp;&lt;/P&gt;&lt;P&gt;One section that I'd like to point out is the actual function that you call from the non secure will actually have to be in a nonsecure entry function. Similar in the way that the hello world calls the StringCompare_NSE.&lt;/P&gt;&lt;P&gt;This means that you can create a function for example:&lt;/P&gt;&lt;P&gt;__attribute__((cmse_nonsecure_entry)) void FLASH_INIT_NSE(void)&lt;/P&gt;&lt;P&gt;{&lt;BR /&gt; flash_config_t config;&lt;BR /&gt; FLASH_Init(&amp;amp;config);&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;This function must be included in the veneer_table.c in the secure world side and the veneer_table.h on both secure and nonsecure worlds. Then from nonsecure world you will call FLASH_INIT_NSE. In addition,when this is done it is not necessary for the iap drivers to be in the non secure application either since the function itself is defined in the secure world. You read with detail this section in the reference manual in section &lt;A href="https://www.nxp.com/docs/en/user-guide/UM11126.pdf"&gt;7.5.3.3.2 TrustZone enabled images&lt;/A&gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I've also requested more information from the team that focuses on TrustZone, they will be able to shed some light on any other configurations that I might be missing.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you for your patience!&lt;/P&gt;&lt;P&gt;Sabina&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 19 Aug 2019 20:35:19 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/Access-Flash-from-normal-world-application/m-p/953142#M37851</guid>
      <dc:creator>Sabina_Bruce</dc:creator>
      <dc:date>2019-08-19T20:35:19Z</dc:date>
    </item>
    <item>
      <title>Re: Access Flash from normal-world application</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/Access-Flash-from-normal-world-application/m-p/953143#M37852</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P style="background-color: transparent; color: windowtext;"&gt;&lt;SPAN style="background-color: inherit; color: windowtext; font-size: 11pt; "&gt;Thank you for your reply! &lt;/SPAN&gt;&lt;SPAN style="font-size: 11pt;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="background-color: transparent; color: windowtext;"&gt;&lt;SPAN style="font-size: 11pt;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="background-color: transparent; color: windowtext;"&gt;&lt;SPAN style="background-color: inherit; color: windowtext; font-size: 11pt; "&gt;With section 7.5.3.3.2, to me it looks like that it is not possible to access the non-secure flash directly from the normal world (instead, it is only possible via the secure world and a non-secure entry function). &lt;/SPAN&gt;&lt;SPAN style="font-size: 11pt;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="background-color: transparent; color: windowtext;"&gt;&lt;SPAN style="font-size: 11pt;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="background-color: transparent; color: windowtext;"&gt;&lt;SPAN style="background-color: inherit; color: windowtext; font-size: 11pt; "&gt;The approach described in 7.5.3.3.2 however lowers the security of the overall system according to my understanding: As soon as I use non-secure entry functions, I need additional logic to validate the input parameters, i.e. to make sure that only non-secure flash shall be accessed from the normal world, as inside the entry function, secure flash is accessible too. &lt;/SPAN&gt;&lt;SPAN style="font-size: 11pt;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="background-color: transparent; color: windowtext;"&gt;&lt;SPAN style="font-size: 11pt;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="background-color: transparent; color: windowtext;"&gt;&lt;SPAN style="background-color: inherit; color: windowtext; font-size: 11pt; "&gt;I implemented it now this way and it works. &lt;/SPAN&gt;&lt;SPAN style="background-color: inherit; color: windowtext; font-size: 11pt; "&gt;However, as I do not need any secure resources (as I want to access non-secure flash from non-secure software) I would be glad if there would be a direct way, without switching to the secure world at all. Should this somehow be possible, please let me know.&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="font-size: 11pt;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 Aug 2019 09:36:09 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/Access-Flash-from-normal-world-application/m-p/953143#M37852</guid>
      <dc:creator>simon_ott</dc:creator>
      <dc:date>2019-08-21T09:36:09Z</dc:date>
    </item>
    <item>
      <title>Re: Access Flash from normal-world application</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/Access-Flash-from-normal-world-application/m-p/953144#M37853</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Simon,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Well I'm glad you were able to at least work around this point for now and can continue with your application. However I now understand what you were trying to achieve.&amp;nbsp; It is possible that the region of memory you are trying to acces is secured at some point.&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="pastedImage_1.png"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/89032iA879C68243904FB4/image-size/large?v=v2&amp;amp;px=999" role="button" title="pastedImage_1.png" alt="pastedImage_1.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://www.nxp.com/docs/en/application-note/AN12278.pdf"&gt;LPC55S69 Security Solutions&lt;/A&gt;&lt;/P&gt;&lt;P&gt;From the above graph we can see that both SAU and IDAU have to be configured as non secure in order for it to be truly non secure. This is probably the reason as to why you are intially getting a hardfault. I will pass on your observations from your last post, since I originally thought you were trying to access a secure section of flash from the non secure.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I will keep you posted as soon as I have information.&lt;/P&gt;&lt;P&gt;Best Regards,&lt;/P&gt;&lt;P&gt;Sabina&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 23 Aug 2019 03:15:56 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/Access-Flash-from-normal-world-application/m-p/953144#M37853</guid>
      <dc:creator>Sabina_Bruce</dc:creator>
      <dc:date>2019-08-23T03:15:56Z</dc:date>
    </item>
  </channel>
</rss>

