<?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>Kinetis MicrocontrollersのトピックRe: K20 P-Flash overflow</title>
    <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/K20-P-Flash-overflow-detection/m-p/411175#M23219</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello&amp;nbsp; stefan,&lt;/P&gt;&lt;P&gt;If overflow, you can relocate some code to&amp;nbsp; FlexNVM, it also is you mentioned above&amp;nbsp; :m_text_10000000 (RX) ,&lt;/P&gt;&lt;P&gt;And about how to relocate , you can refer to here : &lt;A href="https://community.nxp.com/docs/DOC-103533"&gt;Relocate Code (configuration linker files) - CW10.6 - Kinetis&lt;/A&gt;&amp;nbsp; there are some project create on CodeWarrior,&lt;/P&gt;&lt;P&gt;it is the same with KDS,&lt;/P&gt;&lt;P&gt;If it still have any question about this , please tell me the whole part number .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope it helps&lt;/P&gt;&lt;P&gt;Alice&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 19 Jun 2015 04:06:35 GMT</pubDate>
    <dc:creator>Alice_Yang</dc:creator>
    <dc:date>2015-06-19T04:06:35Z</dc:date>
    <item>
      <title>K20 P-Flash overflow detection</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/K20-P-Flash-overflow-detection/m-p/411174#M23218</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;i'm using K20DX256 (complete D-Flash for program code) and KDS (generated linker file) with the following memory configuration:&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;MEMORY {&lt;/P&gt;&lt;P&gt;&amp;nbsp; m_interrupts (RX) : ORIGIN = 0x00000000, LENGTH = 0x000001E0&lt;/P&gt;&lt;P&gt;&amp;nbsp; m_text&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (RX) : ORIGIN = 0x00000410, LENGTH = 0x0003FBF0&amp;nbsp; // P-Flash&lt;/P&gt;&lt;P&gt;&amp;nbsp; m_text_10000000 (RX) : ORIGIN = 0x10000000, LENGTH = 0x00040000&amp;nbsp; // D-Flash&lt;/P&gt;&lt;P&gt;&amp;nbsp; m_data&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (RW) : ORIGIN = 0x1FFF8000, LENGTH = 0x00008000&lt;/P&gt;&lt;P&gt;&amp;nbsp; m_data_20000000 (RW) : ORIGIN = 0x20000000, LENGTH = 0x00008000&lt;/P&gt;&lt;P&gt;&amp;nbsp; m_cfmprotrom&amp;nbsp; (RX) : ORIGIN = 0x00000400, LENGTH = 0x00000010&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Since we need most of RAM and ROM we experienced an overflow of the initialized data beyond the P-Flash at 0x40000.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Here are my questions:&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Is it possible to make the linker fail (special linker instruction) in case the initialized data goes beyond the P-Flash, but m_text and m_data boundaries are okay?&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Original Attachment has been moved to: &lt;A _jive_internal="true" href="https://community.nxp.com/docs/DOC-337451"&gt;overflow.zip&lt;/A&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 18 Jun 2015 12:50:17 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/K20-P-Flash-overflow-detection/m-p/411174#M23218</guid>
      <dc:creator>lategoodbye</dc:creator>
      <dc:date>2015-06-18T12:50:17Z</dc:date>
    </item>
    <item>
      <title>Re: K20 P-Flash overflow</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/K20-P-Flash-overflow-detection/m-p/411175#M23219</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello&amp;nbsp; stefan,&lt;/P&gt;&lt;P&gt;If overflow, you can relocate some code to&amp;nbsp; FlexNVM, it also is you mentioned above&amp;nbsp; :m_text_10000000 (RX) ,&lt;/P&gt;&lt;P&gt;And about how to relocate , you can refer to here : &lt;A href="https://community.nxp.com/docs/DOC-103533"&gt;Relocate Code (configuration linker files) - CW10.6 - Kinetis&lt;/A&gt;&amp;nbsp; there are some project create on CodeWarrior,&lt;/P&gt;&lt;P&gt;it is the same with KDS,&lt;/P&gt;&lt;P&gt;If it still have any question about this , please tell me the whole part number .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope it helps&lt;/P&gt;&lt;P&gt;Alice&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 19 Jun 2015 04:06:35 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/K20-P-Flash-overflow-detection/m-p/411175#M23219</guid>
      <dc:creator>Alice_Yang</dc:creator>
      <dc:date>2015-06-19T04:06:35Z</dc:date>
    </item>
    <item>
      <title>Re: K20 P-Flash overflow detection</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/K20-P-Flash-overflow-detection/m-p/411176#M23220</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Alice,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;thanks for your reply, but that is not the answer to my question. I know about relocation code to fix the issue.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please let me clarify the intension of my question is: how can i detect all cases of overflow (e.g. ROMP reaches above P-Flash) during linking of the image?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I could write program to verify the MAP file about invalid addresses (address beyond 0x40000), but it would be nice to make the linker or KDS to inform me about the problem.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards&lt;/P&gt;&lt;P&gt;Stefan&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 19 Jun 2015 06:54:49 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/K20-P-Flash-overflow-detection/m-p/411176#M23220</guid>
      <dc:creator>lategoodbye</dc:creator>
      <dc:date>2015-06-19T06:54:49Z</dc:date>
    </item>
    <item>
      <title>Re: K20 P-Flash overflow detection</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/K20-P-Flash-overflow-detection/m-p/411177#M23221</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Stefan,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What you mean is that when you build the project you dont get an error if your application overflows the memory? If this is the case it is wrong, linker must display an error. Let me check it and I will be back to you ASAP.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 19 Jun 2015 12:31:27 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/K20-P-Flash-overflow-detection/m-p/411177#M23221</guid>
      <dc:creator>Carlos_Musich</dc:creator>
      <dc:date>2015-06-19T12:31:27Z</dc:date>
    </item>
    <item>
      <title>Re: K20 P-Flash overflow detection</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/K20-P-Flash-overflow-detection/m-p/411178#M23222</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Carlos,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;exactly. The linker doesn't give an error, because the boundaries of m_data and m_text are okay.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here is the relevant extract of the MAP file:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;COMMON 0x1fffa820 0x4 c:/freescale/kds_1.1.0/toolchain/bin/../lib/gcc/arm-none-eabi/4.8.0/../../../../arm-none-eabi/lib/m4\libg.a(lib_a-reent.o)&lt;BR /&gt;&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; 0x1fffa820 errno&lt;BR /&gt;&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; 0x1fffa824 . = ALIGN (0x4)&lt;BR /&gt;&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; 0x1fffa824 __END_BSS = .&lt;BR /&gt;&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; 0x1fffa824 PROVIDE (__bss_end__, __END_BSS)&lt;BR /&gt;&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; &lt;SPAN style="color: #e23d39;"&gt;0x00040c48&lt;/SPAN&gt; _romp_at = ((___ROM_AT + SIZEOF (.data)) + SIZEOF (.m_data_20000000))&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I marked the invalid address red.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What do you need for checking?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Stefan&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 19 Jun 2015 12:56:12 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/K20-P-Flash-overflow-detection/m-p/411178#M23222</guid>
      <dc:creator>lategoodbye</dc:creator>
      <dc:date>2015-06-19T12:56:12Z</dc:date>
    </item>
    <item>
      <title>Re: K20 P-Flash overflow detection</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/K20-P-Flash-overflow-detection/m-p/411179#M23223</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Stefan,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I need to reproduce it. It would be very helpful if you share a project showing the failure. If you prefer you may submit a Service Request at &lt;A href="https://community.nxp.com/www.freescale.com/support" target="test_blank"&gt;www.freescale.com/support&lt;/A&gt; in case you dont want to share a project in community. Just ask for Carlos Musich.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;Carlos&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 19 Jun 2015 15:55:28 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/K20-P-Flash-overflow-detection/m-p/411179#M23223</guid>
      <dc:creator>Carlos_Musich</dc:creator>
      <dc:date>2015-06-19T15:55:28Z</dc:date>
    </item>
    <item>
      <title>Re: K20 P-Flash overflow detection</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/K20-P-Flash-overflow-detection/m-p/411180#M23224</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Carlos,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;i attached an example project in original post (build with KDS 1.1.0) to reproduce the problem.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards&lt;/P&gt;&lt;P&gt;Stefan&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 22 Jun 2015 08:54:48 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/K20-P-Flash-overflow-detection/m-p/411180#M23224</guid>
      <dc:creator>lategoodbye</dc:creator>
      <dc:date>2015-06-22T08:54:48Z</dc:date>
    </item>
    <item>
      <title>Re: K20 P-Flash overflow detection</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/K20-P-Flash-overflow-detection/m-p/411181#M23225</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Stefan,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;there is something wrong with the linker. You can work around this by creating a dummy section at the en of the linker file and setting the pointer until the last address used. Please see below&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; _romp_at = ___ROM_AT + SIZEOF(.data) +SIZEOF(.m_data_20000000);&lt;/P&gt;&lt;P&gt;&amp;nbsp; .romp : AT(_romp_at)&lt;/P&gt;&lt;P&gt;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; __S_romp = _romp_at;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LONG(___ROM_AT);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LONG(_sdata);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LONG(___data_size);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LONG(___m_data_20000000_ROMStart);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LONG(___m_data_20000000_RAMStart);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LONG(___m_data_20000000_ROMSize);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LONG(0);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LONG(0);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LONG(0);&lt;/P&gt;&lt;P&gt;&amp;nbsp; } &amp;gt; m_data&lt;/P&gt;&lt;P&gt;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; __CHECK_OVERFLOW = ___ROM_AT + SIZEOF(.data) + SIZEOF(.m_data_20000000) + SIZEOF(.romp);&lt;/P&gt;&lt;P&gt;&amp;nbsp; .dummy :&lt;/P&gt;&lt;P&gt;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; . = __CHECK_OVERFLOW;&lt;/P&gt;&lt;P&gt;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp; } &amp;gt; m_text&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Carlos&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 26 Jun 2015 00:27:26 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/K20-P-Flash-overflow-detection/m-p/411181#M23225</guid>
      <dc:creator>Carlos_Musich</dc:creator>
      <dc:date>2015-06-26T00:27:26Z</dc:date>
    </item>
    <item>
      <title>Re: K20 P-Flash overflow detection</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/K20-P-Flash-overflow-detection/m-p/411182#M23226</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thank you very much&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 26 Jun 2015 06:55:23 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/K20-P-Flash-overflow-detection/m-p/411182#M23226</guid>
      <dc:creator>lategoodbye</dc:creator>
      <dc:date>2015-06-26T06:55:23Z</dc:date>
    </item>
  </channel>
</rss>

