Difference between revisions of "OpenOCD PandaBoard"

From eLinux.org
Jump to: navigation, search
(added categories)
 
(5 intermediate revisions by one other user not shown)
Line 1: Line 1:
== Introduction ==
+
= Introduction =
OpenOCD mainline includes preliminary support for Cortex-A9 and Pandaboard.  See the [[Compiling_OpenOCD]] for instructions to checkout and build from source, or visit [http://openocd.berlios.de/web/ OpenOCD homepage].
+
OpenOCD mainline includes preliminary support for Cortex-A9 and Pandaboard.  See the [[Compiling_OpenOCD]] for instructions to checkout and build from source, or visit [http://openocd.berlios.de/web/ OpenOCD homepage].<br>
 +
For using this solution, you need at least:<br>
 +
- a usb jtag dongle,<br>
 +
- an openocd excutable running on a host machine,<br>
 +
- a gdb cross compile for arm platform.<br>
  
== JTAG Hardware HowTos ==
+
[[Eclipse]] can be used as a [[GDB]] front end.<br>
 +
 
 +
 
 +
= JTAG Hardware HowTos =
 
* [[Flyswatter2_Pandaboard_How_To|Connecting TinCanTools Flyswatter2 to the PandaBoard]]
 
* [[Flyswatter2_Pandaboard_How_To|Connecting TinCanTools Flyswatter2 to the PandaBoard]]
 
* [http://www.omappedia.com/wiki/Android_Debugging Android Debugging]
 
* [http://www.omappedia.com/wiki/Android_Debugging Android Debugging]
  
== Known Issues ==
+
= Known Issues =
  
=== Memory Access ===
+
== Memory Access ==
 
All memory accesses (including md/mw commands and disassembly) execute through the debug AHB on the L3 interconnect; resources on the L2 interconnect currently can not be accessed.  This includes ROM, local PRCM, and anything in the Cortex-A9 "private memory region" (snoop-control unit, global interrupt controller, timers and watchdogs).
 
All memory accesses (including md/mw commands and disassembly) execute through the debug AHB on the L3 interconnect; resources on the L2 interconnect currently can not be accessed.  This includes ROM, local PRCM, and anything in the Cortex-A9 "private memory region" (snoop-control unit, global interrupt controller, timers and watchdogs).
  
=== SMP Support ===
+
== SMP Support ==
  
 
debugging A9 cores simultaneously is currrently not supported
 
debugging A9 cores simultaneously is currrently not supported
Line 21: Line 28:
  
 
The current [http://gitorious.org/x-loader x-loader] mainline includes a workaround.
 
The current [http://gitorious.org/x-loader x-loader] mainline includes a workaround.
 +
 +
[[Category:OpenOCD]]
 +
[[Category:Debugging]]
 +
[[Category:PandaBoard]]

Latest revision as of 06:56, 11 May 2012

Introduction

OpenOCD mainline includes preliminary support for Cortex-A9 and Pandaboard. See the Compiling_OpenOCD for instructions to checkout and build from source, or visit OpenOCD homepage.
For using this solution, you need at least:
- a usb jtag dongle,
- an openocd excutable running on a host machine,
- a gdb cross compile for arm platform.

Eclipse can be used as a GDB front end.


JTAG Hardware HowTos

Known Issues

Memory Access

All memory accesses (including md/mw commands and disassembly) execute through the debug AHB on the L3 interconnect; resources on the L2 interconnect currently can not be accessed. This includes ROM, local PRCM, and anything in the Cortex-A9 "private memory region" (snoop-control unit, global interrupt controller, timers and watchdogs).

SMP Support

debugging A9 cores simultaneously is currrently not supported

Debug clocking

The debugger may not be able to access the A9 processor cores due to an issue with omap4430 clocking. If your debugger can identify JTAG devices, e.g.:

Info : 375 316 core.c:948 jtag_examine_chain_display(): JTAG tap: omap4430.jrc tap/device found: 0x3b95c02f (mfg: 0x017, part: 0xb95c, ver: 0x3)

but no Cortex-A9 target appears, you are probably running into this issue. Verify by connecting the debugger with no SD card inserted: if it now works, you're hitting this issue.

The current x-loader mainline includes a workaround.