quark_x10xx.cfg 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. # SPDX-License-Identifier: GPL-2.0-or-later
  2. if { [info exists CHIPNAME] } {
  3. set _CHIPNAME $CHIPNAME
  4. } else {
  5. set _CHIPNAME quark_x10xx
  6. }
  7. if { [info exists ENDIAN] } {
  8. set _ENDIAN $ENDIAN
  9. } else {
  10. set _ENDIAN little
  11. }
  12. if { [info exists CPUTAPID] } {
  13. set _CPUTAPID $CPUTAPID
  14. } else {
  15. set _CPUTAPID 0x18289013
  16. }
  17. jtag newtap quark_x10xx cpu -irlen 8 -irmask 0xff -expected-id $_CPUTAPID -disable
  18. jtag newtap quark_x10xx cltap -irlen 8 -irmask 0xff -expected-id 0x0e681013 -enable
  19. #openocd puts tap at front of chain not end of chain
  20. proc quark_x10xx_tapenable {} {
  21. echo "enabling core tap"
  22. irscan quark_x10xx.cltap 0x11
  23. drscan quark_x10xx.cltap 64 1
  24. runtest 10
  25. }
  26. proc quark_x10xx_tapdisable {} {
  27. echo "disabling core tap"
  28. irscan quark_x10xx.cltap 0x11
  29. drscan quark_x10xx.cltap 64 0
  30. runtest 10
  31. }
  32. proc quark_x10xx_setup {} {
  33. jtag tapenable quark_x10xx.cpu
  34. }
  35. jtag configure $_CHIPNAME.cpu -event tap-enable \
  36. "quark_x10xx_tapenable"
  37. jtag configure $_CHIPNAME.cpu -event tap-disable \
  38. "quark_x10xx_tapdisable"
  39. set _TARGETNAME $_CHIPNAME.cpu
  40. target create quark_x10xx.cpu quark_x10xx -endian $_ENDIAN -chain-position quark_x10xx.cpu
  41. jtag configure $_CHIPNAME.cpu -event setup \
  42. "quark_x10xx_setup"