1 # SPDX-License-Identifier: GPL-2.0-or-later
6 reset_config trst_and_srst srst_gates_jtag
9 if { [info exists CHIPNAME] } {
10 set _CHIPNAME $CHIPNAME
15 if { [info exists ENDIAN] } {
21 if { [info exists CPUTAPID] } {
22 set _CPUTAPID $CPUTAPID
24 set _CPUTAPID 0x07b3601d
27 if { [info exists SDMATAPID] } {
28 set _SDMATAPID $SDMATAPID
30 set _SDMATAPID 0x0882601d
33 if { [info exists ETBTAPID] } {
34 set _ETBTAPID $ETBTAPID
36 set _ETBTAPID 0x2b900f0f
39 #========================================
41 jtag newtap $_CHIPNAME etb -irlen 4 -irmask 0xf -expected-id $_ETBTAPID
42 jtag newtap $_CHIPNAME cpu -irlen 5 -ircapture 0x1 -irmask 0x1f -expected-id $_CPUTAPID
44 # No IDCODE for this TAP
45 jtag newtap $_CHIPNAME whatchacallit -irlen 4 -ircapture 0 -irmask 0x0 -expected-id 0x0
47 jtag newtap $_CHIPNAME smda -irlen 5 -ircapture 0x1 -irmask 0x1f -expected-id $_SDMATAPID
49 set _TARGETNAME $_CHIPNAME.cpu
50 target create $_TARGETNAME arm11 -endian $_ENDIAN -chain-position $_TARGETNAME
52 proc power_restore {} { echo "Sensed power restore. No action." }
53 proc srst_deasserted {} { echo "Sensed nSRST deasserted. No action." }
55 # trace setup ... NOTE, "normal full" mode fudges the real ETMv3.1 mode
56 etm config $_TARGETNAME 16 normal full etb
57 etb config $_TARGETNAME $_CHIPNAME.etb