<?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: Openocd how to implement watchpoint in cortex_a.c ? in i.MX Processors</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/Openocd-how-to-implement-watchpoint-in-cortex-a-c/m-p/473737#M75005</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;ok may a little idea here&lt;/P&gt;&lt;P&gt;break&lt;/P&gt;&lt;P&gt;&lt;A class="jive-link-external-small" href="http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0388e/Babcdabj.html" rel="nofollow"&gt;http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0388e/Babcdabj.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;watch&lt;/P&gt;&lt;P&gt;&lt;A class="jive-link-external-small" href="http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0388e/Babhjfhh.html" rel="nofollow"&gt;http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0388e/Babhjfhh.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;looks &lt;/P&gt;&lt;P&gt;break point reg / watch point reg&lt;/P&gt;&lt;P&gt;Breakpoint address mask =&amp;nbsp; Watchpoint address mask&lt;/P&gt;&lt;P&gt;Secure state access control = Secure state access control&lt;/P&gt;&lt;P&gt;Byte address select = Byte address select&lt;/P&gt;&lt;P&gt;sp =sp&lt;/P&gt;&lt;P&gt;B = E&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;only implement&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; watch point L/S -&amp;gt; Load store access&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;good~~~ will do it right~~~&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 28 Jan 2016 20:16:33 GMT</pubDate>
    <dc:creator>fatalfeel</dc:creator>
    <dc:date>2016-01-28T20:16:33Z</dc:date>
    <item>
      <title>Openocd how to implement watchpoint in cortex_a.c ?</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Openocd-how-to-implement-watchpoint-in-cortex-a-c/m-p/473736#M75004</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;how to implement in cortex_a.c ?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;////&lt;/P&gt;&lt;P&gt;in cortex_m.h&lt;/P&gt;&lt;P&gt;#define DWT_COMP0&amp;nbsp;&amp;nbsp;&amp;nbsp; 0xE0001020&lt;/P&gt;&lt;P&gt;#define DWT_MASK0&amp;nbsp;&amp;nbsp;&amp;nbsp; 0xE0001024&lt;/P&gt;&lt;P&gt;#define DWT_FUNCTION0&amp;nbsp;&amp;nbsp;&amp;nbsp; 0xE0001028&lt;/P&gt;&lt;P&gt;//&lt;/P&gt;&lt;P&gt;in cortex_m.c&lt;/P&gt;&lt;P&gt;for (i = 0; i &amp;lt; cm-&amp;gt;dwt_num_comp; i++, comparator++)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int j;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; comparator-&amp;gt;dwt_comparator_address = DWT_COMP0 + 0x10 * i;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (j = 0; j &amp;lt; 3; j++, reg++)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cortex_m_dwt_addreg(target, cache-&amp;gt;reg_list + reg, dwt_comp + 3 * i + j);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; target_write_u32(target, comparator-&amp;gt;dwt_comparator_address + 8, 0);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;//do add watchpoint&lt;/P&gt;&lt;P&gt;comparator-&amp;gt;comp = watchpoint-&amp;gt;address;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; target_write_u32(target, comparator-&amp;gt;dwt_comparator_address + 0, comparator-&amp;gt;comp);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; comparator-&amp;gt;mask = mask;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; target_write_u32(target, comparator-&amp;gt;dwt_comparator_address + 4, comparator-&amp;gt;mask);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; switch (watchpoint-&amp;gt;rw)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case WPT_READ:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; comparator-&amp;gt;function = 5;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case WPT_WRITE:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; comparator-&amp;gt;function = 6;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case WPT_ACCESS:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; comparator-&amp;gt;function = 7;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; target_write_u32(target, comparator-&amp;gt;dwt_comparator_address + 8, comparator-&amp;gt;function);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;////////////////////////////&lt;/P&gt;&lt;P&gt;in armv7a.h for cortex a8 a9&lt;/P&gt;&lt;P&gt;#define CPUDBG_WVR_BASE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x180&lt;/P&gt;&lt;P&gt;#define CPUDBG_WCR_BASE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x1C0&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;how to implement in cortex_a.c ?&lt;/P&gt;&lt;P&gt;1. the address/mask/function is CPUDBG_WVR_BASE+0 / CPUDBG_WVR_BASE+4 / CPUDBG_WVR_BASE+8 ?&lt;/P&gt;&lt;P&gt;2. the address/mask/function is CPUDBG_WCR_BASE+0 ......+4......+8?&lt;/P&gt;&lt;P&gt;3. WPT_READ/WPT_WRITE/WPT_ACCESS&amp;nbsp; is 5/6/7 on cortex a8 a9?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 28 Jan 2016 19:25:13 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Openocd-how-to-implement-watchpoint-in-cortex-a-c/m-p/473736#M75004</guid>
      <dc:creator>fatalfeel</dc:creator>
      <dc:date>2016-01-28T19:25:13Z</dc:date>
    </item>
    <item>
      <title>Re: Openocd how to implement watchpoint in cortex_a.c ?</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Openocd-how-to-implement-watchpoint-in-cortex-a-c/m-p/473737#M75005</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;ok may a little idea here&lt;/P&gt;&lt;P&gt;break&lt;/P&gt;&lt;P&gt;&lt;A class="jive-link-external-small" href="http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0388e/Babcdabj.html" rel="nofollow"&gt;http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0388e/Babcdabj.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;watch&lt;/P&gt;&lt;P&gt;&lt;A class="jive-link-external-small" href="http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0388e/Babhjfhh.html" rel="nofollow"&gt;http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0388e/Babhjfhh.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;looks &lt;/P&gt;&lt;P&gt;break point reg / watch point reg&lt;/P&gt;&lt;P&gt;Breakpoint address mask =&amp;nbsp; Watchpoint address mask&lt;/P&gt;&lt;P&gt;Secure state access control = Secure state access control&lt;/P&gt;&lt;P&gt;Byte address select = Byte address select&lt;/P&gt;&lt;P&gt;sp =sp&lt;/P&gt;&lt;P&gt;B = E&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;only implement&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; watch point L/S -&amp;gt; Load store access&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;good~~~ will do it right~~~&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 28 Jan 2016 20:16:33 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Openocd-how-to-implement-watchpoint-in-cortex-a-c/m-p/473737#M75005</guid>
      <dc:creator>fatalfeel</dc:creator>
      <dc:date>2016-01-28T20:16:33Z</dc:date>
    </item>
    <item>
      <title>Re: Openocd how to implement watchpoint in cortex_a.c ?</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Openocd-how-to-implement-watchpoint-in-cortex-a-c/m-p/473738#M75006</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;A href="https://forum.sparkfun.com/viewtopic.php?f=18&amp;amp;t=42909" title="https://forum.sparkfun.com/viewtopic.php?f=18&amp;amp;t=42909"&gt;SparkFun Electronics • View topic - Help implement openocd in cortex_a a8 a9 watchpoint~~&lt;/A&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;done it~~~~&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 29 Jan 2016 03:52:03 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Openocd-how-to-implement-watchpoint-in-cortex-a-c/m-p/473738#M75006</guid>
      <dc:creator>fatalfeel</dc:creator>
      <dc:date>2016-01-29T03:52:03Z</dc:date>
    </item>
  </channel>
</rss>

