<?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: Using JTAG for imx6 board bringup in i.MX Processors</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/Using-JTAG-for-imx6-board-bringup/m-p/231816#M17554</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;We also try to use j-link pro to debug iMX6 under OpenOCD. We can read DRAM registers (we're using Philip's config):&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;gt; mdw 0x80000000&lt;/P&gt;&lt;P&gt;0x80000000: d067b2ad&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;However we can't read SFRs:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;gt; mdw 0x20e000c&lt;/P&gt;&lt;P&gt;20e000c access in userspace and target in supervisor&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The same was with j-mem of Segger.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What is necessary to configure&amp;nbsp; to be able to read registes?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks and regards.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 18 Dec 2013 18:15:11 GMT</pubDate>
    <dc:creator>EgleTeam</dc:creator>
    <dc:date>2013-12-18T18:15:11Z</dc:date>
    <item>
      <title>Using JTAG for imx6 board bringup</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Using-JTAG-for-imx6-board-bringup/m-p/231812#M17550</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I need to bringup a custom i.MX6Q board. The only available boot device is SPI-NOR, so I want to use JTAG to do the initial DDR configuration and to load u-boot.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am using a J-Link with OpenOCD, and this is successfully talking to the JTAG DAP, including the AHP-AP and the APB-AP. I can read the on-chip ROM and RAM using either AP:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;gt; dap apsel 0&lt;/P&gt;&lt;P&gt;ap 0 selected, identification register 0x44770001&lt;/P&gt;&lt;P&gt;&amp;gt; mdw 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;0x00000000: e59ff01c &lt;/P&gt;&lt;P&gt;&amp;gt; mww 0x907000 0x12345678&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; line-height: 1.5em;"&gt;&amp;gt; mdw 0x907000&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;0x00907000: 12345678 &lt;/P&gt;&lt;P&gt;&amp;gt; &lt;/P&gt;&lt;P&gt;&amp;gt; dap apsel 1&lt;/P&gt;&lt;P&gt;ap 1 selected, identification register 0x24770002&lt;/P&gt;&lt;P&gt;&amp;gt; mdw 0&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;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;0x00000000: e59ff01c &lt;/P&gt;&lt;P&gt;&amp;gt; mww 0x907000 0x87654321&lt;/P&gt;&lt;P&gt;&amp;gt; mdw 0x907000&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;0x00907000: 87654321 &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;However, there are problems accessing other registers, such as the MMDC:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;gt; dap apsel 0&lt;/P&gt;&lt;P&gt;ap 0 selected, identification register 0x44770001&lt;/P&gt;&lt;P&gt;&amp;gt; mdw 0x21b0000&lt;/P&gt;&lt;P&gt;JTAG-DP STICKY ERROR&lt;/P&gt;&lt;P&gt;MEM_AP_CSW 0x2800052, MEM_AP_TAR 0x21b0000&lt;/P&gt;&lt;P&gt;JTAG-DP STICKY ERROR&lt;/P&gt;&lt;P&gt;MEM_AP_CSW 0x2800052, MEM_AP_TAR 0x21b0000&lt;/P&gt;&lt;P&gt;Block read error address 0x21b0000&lt;/P&gt;&lt;P&gt;in procedure 'mdw'&lt;/P&gt;&lt;P&gt;&amp;gt; &lt;/P&gt;&lt;P&gt;&amp;gt; dap apsel 1&lt;/P&gt;&lt;P&gt;ap 1 selected, identification register 0x24770002&lt;/P&gt;&lt;P&gt;&amp;gt; mdw 0x21b0000&lt;/P&gt;&lt;P&gt;0x021b0000: 03110000 &lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; line-height: 1.5em;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; line-height: 1.5em;"&gt;The above shows that access works using the APB-AP, but fails using the AHB-AP.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; line-height: 1.5em;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;According to the CoreSight Components TRM (DDI0314H), section 2.7.5, the CSW has Sprot = 0, SPIStatus = 1, DbgStatus = 1, which means "Secure transfer produced an error response".&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What are the possible reasons for this error response? Is the processor booting up in some secure state that I need to disable before the AHB-AP is allowed access to the MMDC registers?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Note that I am currently unable to halt the processor immediately after reset, so it is running some of the boot ROM code already.&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 21 Jun 2013 01:30:27 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Using-JTAG-for-imx6-board-bringup/m-p/231812#M17550</guid>
      <dc:creator>philipcraig</dc:creator>
      <dc:date>2013-06-21T01:30:27Z</dc:date>
    </item>
    <item>
      <title>Re: Using JTAG for imx6 board bringup</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Using-JTAG-for-imx6-board-bringup/m-p/231813#M17551</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Turns out all I need is to run 'dap apcsw 1' in openocd to enable SProt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Strangely this isn't needed after there is a working u-boot in the SPI-NOR, so I'm still curious as to what is going on.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 21 Jun 2013 08:33:10 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Using-JTAG-for-imx6-board-bringup/m-p/231813#M17551</guid>
      <dc:creator>philipcraig</dc:creator>
      <dc:date>2013-06-21T08:33:10Z</dc:date>
    </item>
    <item>
      <title>Re: Using JTAG for imx6 board bringup</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Using-JTAG-for-imx6-board-bringup/m-p/231814#M17552</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I am also trying to bring up a custom iMX6Q board and am having trouble initializing DRAM, can you please share your board config file?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 Aug 2013 18:24:09 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Using-JTAG-for-imx6-board-bringup/m-p/231814#M17552</guid>
      <dc:creator>rp123</dc:creator>
      <dc:date>2013-08-09T18:24:09Z</dc:date>
    </item>
    <item>
      <title>Re: Re: Using JTAG for imx6 board bringup</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Using-JTAG-for-imx6-board-bringup/m-p/231815#M17553</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;My board config for the sabrelite is attached.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 16 Aug 2013 00:16:54 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Using-JTAG-for-imx6-board-bringup/m-p/231815#M17553</guid>
      <dc:creator>philipcraig</dc:creator>
      <dc:date>2013-08-16T00:16:54Z</dc:date>
    </item>
    <item>
      <title>Re: Using JTAG for imx6 board bringup</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Using-JTAG-for-imx6-board-bringup/m-p/231816#M17554</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;We also try to use j-link pro to debug iMX6 under OpenOCD. We can read DRAM registers (we're using Philip's config):&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;gt; mdw 0x80000000&lt;/P&gt;&lt;P&gt;0x80000000: d067b2ad&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;However we can't read SFRs:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;gt; mdw 0x20e000c&lt;/P&gt;&lt;P&gt;20e000c access in userspace and target in supervisor&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The same was with j-mem of Segger.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What is necessary to configure&amp;nbsp; to be able to read registes?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks and regards.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 18 Dec 2013 18:15:11 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Using-JTAG-for-imx6-board-bringup/m-p/231816#M17554</guid>
      <dc:creator>EgleTeam</dc:creator>
      <dc:date>2013-12-18T18:15:11Z</dc:date>
    </item>
  </channel>
</rss>

