<?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: security and emulation writes to flash in 8-bit Microcontrollers</title>
    <link>https://community.nxp.com/t5/8-bit-Microcontrollers/security-and-emulation-writes-to-flash/m-p/135536#M4067</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;Hi jah,&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Here is a small test programme in all assembly that I wrote to test the backdoor function.&lt;/DIV&gt;&lt;DIV&gt;It was written to run on a M68DEMO908GB60 board.&lt;/DIV&gt;&lt;DIV&gt;You load the programme then secure the FLASH.&lt;/DIV&gt;&lt;DIV&gt;Then cycle power and try to get back in via BDM, you can't.&lt;/DIV&gt;&lt;DIV&gt;Then press SW1 and now you can but your reset vector is blank.&lt;/DIV&gt;&lt;DIV&gt;This is because it is just a simple test programme.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Hope this helps&lt;/DIV&gt;&lt;DIV&gt;David&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;P&gt;Message Edited by peg on &lt;SPAN class="date_text"&gt;2006-11-13&lt;/SPAN&gt;&lt;SPAN class="time_text"&gt;09:01 PM&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sun, 12 Nov 2006 11:14:10 GMT</pubDate>
    <dc:creator>peg</dc:creator>
    <dc:date>2006-11-12T11:14:10Z</dc:date>
    <item>
      <title>security and emulation writes to flash</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/security-and-emulation-writes-to-flash/m-p/135534#M4065</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;reference the mc9s08rd32dwe processor&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;while using a commerical programmer production has security locked the processor by setting the flash register NVOPT/SEC01&lt;/SPAN&gt;&lt;A href="http://freescale.i.lithium.com/i/smilies/16x16_smiley-frustrated.gif"&gt;&lt;IMG alt=":smileyfrustrated:" class="emoticon emoticon-smileyfrustrated" src="http://freescale.i.lithium.com/i/smilies/16x16_smiley-frustrated.gif" title="Smiley Frustrated" /&gt;&lt;/A&gt;&lt;SPAN&gt;EC00 = 1:0 later at power up NVOPT gets copied to FOPT and the processor is locked. for a situation that emulation will need to write to a random flash page the processor is now locked and the write will not happen.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;i need to use the backdoor, i dont know which page emulation will write to and assume all pages will be protected.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;can you guys verify my fix would entail:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;-i need to add code to use the NVBACKKEY register(s) the security backdoor.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;-i know i need to write to NVBACKKEY[0] through NVBACKKEY[7] in order from emulation but DO I NEED TO DO THIS FROM RAM NOT FLASH!!&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;-can i do the writes using Clanguage like the code:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;NVBACKKEY[0] = Secret[0];&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;NVBACKKEY[1] = Secret[1];&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;NVBACKKEY[2] = Secret[2];&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;NVBACKKEY[3] = Secret[3];&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;NVBACKKEY[4] = Secret[4];&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;NVBACKKEY[5] = Secret[5];&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;NVBACKKEY[6] = Secret[6];&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;NVBACKKEY[7] = Secret[7];&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;-is there ram based assy code already existing that i could use??&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 07 Nov 2006 01:02:40 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/security-and-emulation-writes-to-flash/m-p/135534#M4065</guid>
      <dc:creator>jah</dc:creator>
      <dc:date>2006-11-07T01:02:40Z</dc:date>
    </item>
    <item>
      <title>Re: security and emulation writes to flash</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/security-and-emulation-writes-to-flash/m-p/135535#M4066</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;bump&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Nov 2006 07:45:00 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/security-and-emulation-writes-to-flash/m-p/135535#M4066</guid>
      <dc:creator>jah</dc:creator>
      <dc:date>2006-11-11T07:45:00Z</dc:date>
    </item>
    <item>
      <title>Re: security and emulation writes to flash</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/security-and-emulation-writes-to-flash/m-p/135536#M4067</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;Hi jah,&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Here is a small test programme in all assembly that I wrote to test the backdoor function.&lt;/DIV&gt;&lt;DIV&gt;It was written to run on a M68DEMO908GB60 board.&lt;/DIV&gt;&lt;DIV&gt;You load the programme then secure the FLASH.&lt;/DIV&gt;&lt;DIV&gt;Then cycle power and try to get back in via BDM, you can't.&lt;/DIV&gt;&lt;DIV&gt;Then press SW1 and now you can but your reset vector is blank.&lt;/DIV&gt;&lt;DIV&gt;This is because it is just a simple test programme.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Hope this helps&lt;/DIV&gt;&lt;DIV&gt;David&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;P&gt;Message Edited by peg on &lt;SPAN class="date_text"&gt;2006-11-13&lt;/SPAN&gt;&lt;SPAN class="time_text"&gt;09:01 PM&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Nov 2006 11:14:10 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/security-and-emulation-writes-to-flash/m-p/135536#M4067</guid>
      <dc:creator>peg</dc:creator>
      <dc:date>2006-11-12T11:14:10Z</dc:date>
    </item>
  </channel>
</rss>

