<?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>ColdFire/68K Microcontrollers and ProcessorsのトピックHow to force .bss to be .data? (Using MRAM on 52259EVB)</title>
    <link>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/How-to-force-bss-to-be-data-Using-MRAM-on-52259EVB/m-p/148951#M3678</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, I am using the 52259EVB with external MRAM. As this MRAM is non volatile, I need to stop the compilier from creating my volatile varibles as .bss and make them all .data for my NVM_Section. This is because some .bss types are zero, and some are not, and .bss wont program if set as 0 as their 'defualt value'.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;PS. I had no problems setting my linker up to get the Cyclone MAX programmer to program all my .data in the right spot in MRAM, the only problem is .bss is no good for my app, it must be forced to stay as .data for the section.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Here is a part of the linker:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; .NVM_Page:&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; nvm.c (.data)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; nvm.c (.rodata)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; nvm.c (.text)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; nvm.c (.bss)&amp;nbsp;&amp;nbsp; &amp;lt;- I NEED THESE TO BE .data!!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; } &amp;gt; User_NVM&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I also do not want to have to seperate .data and .bss and create a seperate .bss initiliser, or use const's and use pointers for modifiying the volatile varibles as I am using the MQX RToS and it would be a PITA in so many ways.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sat, 24 Oct 2009 10:39:56 GMT</pubDate>
    <dc:creator>CarlFST60L</dc:creator>
    <dc:date>2009-10-24T10:39:56Z</dc:date>
    <item>
      <title>How to force .bss to be .data? (Using MRAM on 52259EVB)</title>
      <link>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/How-to-force-bss-to-be-data-Using-MRAM-on-52259EVB/m-p/148951#M3678</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, I am using the 52259EVB with external MRAM. As this MRAM is non volatile, I need to stop the compilier from creating my volatile varibles as .bss and make them all .data for my NVM_Section. This is because some .bss types are zero, and some are not, and .bss wont program if set as 0 as their 'defualt value'.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;PS. I had no problems setting my linker up to get the Cyclone MAX programmer to program all my .data in the right spot in MRAM, the only problem is .bss is no good for my app, it must be forced to stay as .data for the section.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Here is a part of the linker:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; .NVM_Page:&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; nvm.c (.data)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; nvm.c (.rodata)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; nvm.c (.text)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; nvm.c (.bss)&amp;nbsp;&amp;nbsp; &amp;lt;- I NEED THESE TO BE .data!!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; } &amp;gt; User_NVM&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I also do not want to have to seperate .data and .bss and create a seperate .bss initiliser, or use const's and use pointers for modifiying the volatile varibles as I am using the MQX RToS and it would be a PITA in so many ways.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 24 Oct 2009 10:39:56 GMT</pubDate>
      <guid>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/How-to-force-bss-to-be-data-Using-MRAM-on-52259EVB/m-p/148951#M3678</guid>
      <dc:creator>CarlFST60L</dc:creator>
      <dc:date>2009-10-24T10:39:56Z</dc:date>
    </item>
    <item>
      <title>Re: How to force .bss to be .data? (Using MRAM on 52259EVB)</title>
      <link>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/How-to-force-bss-to-be-data-Using-MRAM-on-52259EVB/m-p/148952#M3679</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Anyone got any ideas or alternatives?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;All we need is the compilier / linker to create volatile varibles that are programmed into memory (even though its extern MRAM), but, still be able to use the volatile varible as normal in software without any problems... Surely there is a simple way, right?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Maybe I have overlooked something 'obvious'?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV class="message-edit-history"&gt;&lt;SPAN class="edit-author"&gt;Message Edited by CarlFST60L on&lt;/SPAN&gt; &lt;SPAN class="local-date"&gt;2009-10-25&lt;/SPAN&gt; &lt;SPAN class="local-time"&gt;08:29 PM&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 26 Oct 2009 03:29:01 GMT</pubDate>
      <guid>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/How-to-force-bss-to-be-data-Using-MRAM-on-52259EVB/m-p/148952#M3679</guid>
      <dc:creator>CarlFST60L</dc:creator>
      <dc:date>2009-10-26T03:29:01Z</dc:date>
    </item>
    <item>
      <title>Re: How to force .bss to be .data? (Using MRAM on 52259EVB)</title>
      <link>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/How-to-force-bss-to-be-data-Using-MRAM-on-52259EVB/m-p/148953#M3680</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I assume you are using CodeWarrior for Coldfire compiler.&lt;/P&gt;&lt;P&gt;Am I right?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Can you try to specify&amp;nbsp;following pragma&amp;nbsp; at the beginning of all module where you have uninitialized data that you want to allocate in .data section.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;FONT face="Courier" size="1"&gt;&lt;FONT face="Courier" size="1"&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;P&gt;&lt;FONT face="Courier" size="1"&gt;&lt;FONT face="Courier" size="1"&gt;#pragma explicit_zero_data on&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This should do the trick.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;CrasyCat&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 26 Oct 2009 19:46:44 GMT</pubDate>
      <guid>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/How-to-force-bss-to-be-data-Using-MRAM-on-52259EVB/m-p/148953#M3680</guid>
      <dc:creator>CrasyCat</dc:creator>
      <dc:date>2009-10-26T19:46:44Z</dc:date>
    </item>
    <item>
      <title>Re: How to force .bss to be .data? (Using MRAM on 52259EVB)</title>
      <link>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/How-to-force-bss-to-be-data-Using-MRAM-on-52259EVB/m-p/148954#M3681</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;CrasyCat,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;THANKS!!!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 Oct 2009 04:43:53 GMT</pubDate>
      <guid>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/How-to-force-bss-to-be-data-Using-MRAM-on-52259EVB/m-p/148954#M3681</guid>
      <dc:creator>CarlFST60L</dc:creator>
      <dc:date>2009-10-27T04:43:53Z</dc:date>
    </item>
  </channel>
</rss>

