Jetson/JTAG

From eLinux.org
Jump to: navigation, search

Debugging Tegra K1

While it might not be possible to debug the Tegra K1 SOC in Jetson TK1 using cheaper debugging hardware or OpenOCD, Christian Jann was able to debug it using a Lauterbach LA-7708 DEBUG-USB2 along with a Lauterbach LA-7843 JTAG CORTEX-A adapter (eg: search eBay for LA-7708 LA-7843). Use the TRACE32 software for ARM.


Basic configuration:

; File: tegra_init.cmm
; www.lauterbach.com/pdfnew/training_rtos_linux.pdf
RESet
SYStem.CPU TEGRAK1
SYStem.Option ResBreak OFF
SYStem.Option WaitReset 2.s
ETM.OFF
SYStem.Option MMUSPACES ON ; enable space ids to virtual addresses
SYStem.Up
; Message from bootloader:
; <cpu>: jumping to kernel at 80a00800 (virtual 41a00800)
Break.set 0x80a00800
Go
PRINT "Open the serial console and type boot at the bootloader prompt"
ENDDO
; File: tegra_load_kernel.cmm
sYmbol.SourcePATH.Set "C:\kernel"
d.load "C:\kernel\vmlinux" /NOCODE /NOCLEAR /STRIPPART "kernel"
; www.lauterbach.com/pdfnew/training_rtos_linux.pdf
; I'm not 100% sure whether the MMU.FORMAT and the
; TRANSLATION is correct but it seems to work.
MMU.FORMAT LINUX swapper_pg_dir 0xc0000000--0xdfffffff 0x80a00800
TRANSLATION.COMMON 0xbf000000--0ffffffff
TRANSLATION.TableWalk ON
TRANSlation.ON
BREAK.Set start_kernel /OnChip
BREAK.Set printascii /OnChip
BREAK.Set early_printk /OnChip

There is also a Linux version of TRACE32-PowerView.

TRACE32 PowerView ARM Linux