Difference between revisions of "OpenOCD PandaBoard"

From eLinux.org
Jump to: navigation, search
(Introduction)
(Introduction)
Line 1: Line 1:
 
== Introduction ==
 
== Introduction ==
 
OpenOCD mainline includes preliminary support for Cortex-A9 and Pandaboard.  See the [http://openocd.berlios.de/web/ OpenOCD homepage] for instructions to checkout and build from source.
 
OpenOCD mainline includes preliminary support for Cortex-A9 and Pandaboard.  See the [http://openocd.berlios.de/web/ OpenOCD homepage] for instructions to checkout and build from source.
 
Invoke OpenOCD as:
 
openocd -f tcl/interface/flyswatter2.cfg -f tcl/board/ti_pandaboard.cfg
 
replacing ''flyswatter2.cfg'' with the appropriate config for your JTAG hardware.
 
 
The default configuration exposes 3 targets: one Cortex-A9 (core 0) and two Cortex-M3 cores.  To connect to the second Cortex-A9 core, edit the following line in ''tcl/target/omap4430.cfg'':
 
target create $_TARGETNAME cortex_a9 -chain-position $_CHIPNAME.dap -coreid 0
 
changing ''-coreid 0'' to ''-coreid 1''.  At present it is not possible to connect to both Cortex-A9 cores simultaneously.
 
  
 
== Working Items ==
 
== Working Items ==

Revision as of 17:47, 19 April 2012

Introduction

OpenOCD mainline includes preliminary support for Cortex-A9 and Pandaboard. See the OpenOCD homepage for instructions to checkout and build from source.

Working Items

  • halt, single-step, resume
  • breakpoints and watchpoints
  • reading/writing memory
  • inspecting core/register state

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).

Non-Working Items

  • debugging A9 cores simultaneously
  • accessing L2 memory resources
  • unify a8/a9 code

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.

JTAG Dongle Howtos