1 # SPDX-License-Identifier: GPL-2.0-or-later
3 if { [info exists CHIPNAME] } {
4 set _CHIPNAME $CHIPNAME
6 set _CHIPNAME quark_x10xx
9 if { [info exists ENDIAN] } {
16 if { [info exists CPUTAPID] } {
17 set _CPUTAPID $CPUTAPID
19 set _CPUTAPID 0x18289013
22 jtag newtap quark_x10xx cpu -irlen 8 -irmask 0xff -expected-id $_CPUTAPID -disable
23 jtag newtap quark_x10xx cltap -irlen 8 -irmask 0xff -expected-id 0x0e681013 -enable
25 #openocd puts tap at front of chain not end of chain
26 proc quark_x10xx_tapenable {} {
27 echo "enabling core tap"
28 irscan quark_x10xx.cltap 0x11
29 drscan quark_x10xx.cltap 64 1
33 proc quark_x10xx_tapdisable {} {
34 echo "disabling core tap"
35 irscan quark_x10xx.cltap 0x11
36 drscan quark_x10xx.cltap 64 0
40 proc quark_x10xx_setup {} {
41 jtag tapenable quark_x10xx.cpu
44 jtag configure $_CHIPNAME.cpu -event tap-enable \
45 "quark_x10xx_tapenable"
47 jtag configure $_CHIPNAME.cpu -event tap-disable \
48 "quark_x10xx_tapdisable"
50 set _TARGETNAME $_CHIPNAME.cpu
51 target create quark_x10xx.cpu quark_x10xx -endian $_ENDIAN -chain-position quark_x10xx.cpu
53 jtag configure $_CHIPNAME.cpu -event setup \