Difference between revisions of "Jetson/JTAG"

From eLinux.org
Jump to: navigation, search
(Removed Jetson TK1 reference in case it was a Jetson Pro)
(Debugging Tegra K1)
 
Line 6: Line 6:
 
Basic configuration:
 
Basic configuration:
 
<pre>
 
<pre>
---------------------
+
; File: tegra_init.cmm
 
; www.lauterbach.com/pdfnew/training_rtos_linux.pdf
 
; www.lauterbach.com/pdfnew/training_rtos_linux.pdf
 
RESet
 
RESet
Line 21: Line 21:
 
PRINT "Open the serial console and type boot at the bootloader prompt"
 
PRINT "Open the serial console and type boot at the bootloader prompt"
 
ENDDO
 
ENDDO
--------------------- ---------------------
+
</pre>
 +
 
 +
<pre>
 +
; File: tegra_load_kernel.cmm
 
sYmbol.SourcePATH.Set "C:\kernel"
 
sYmbol.SourcePATH.Set "C:\kernel"
d.load "C:\kernel\vibrante-oss-src\kernel\vmlinux" /NOCODE /NOCLEAR /STRIPPART "kernel"
+
d.load "C:\kernel\vmlinux" /NOCODE /NOCLEAR /STRIPPART "kernel"
 
; www.lauterbach.com/pdfnew/training_rtos_linux.pdf
 
; www.lauterbach.com/pdfnew/training_rtos_linux.pdf
 
; I'm not 100% sure whether the MMU.FORMAT and the
 
; I'm not 100% sure whether the MMU.FORMAT and the
Line 34: Line 37:
 
BREAK.Set printascii /OnChip
 
BREAK.Set printascii /OnChip
 
BREAK.Set early_printk /OnChip
 
BREAK.Set early_printk /OnChip
---------------------
 
 
</pre>
 
</pre>
  
There is also a Linux version of TRACE32-PowerView that might work.
+
There is also a Linux version of TRACE32-PowerView.
 +
 
 +
[[File:TRACE32_PowerView_ARM_Linux.png|800px|<span title="">TRACE32 PowerView ARM Linux</span>]]

Latest revision as of 08:00, 11 April 2015

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