33 lines
1.3 KiB
INI
33 lines
1.3 KiB
INI
# A start sequence to change from cJTAG to 4-pin JTAG
|
|
# This is needed for CC2538 and CC26xx to be able to communicate through JTAG
|
|
# Read section 6.3 in http://www.ti.com/lit/pdf/swru319 for more information.
|
|
proc ti_cjtag_to_4pin_jtag {jrc} {
|
|
# Bypass
|
|
irscan $jrc 0x3f -endstate RUN/IDLE
|
|
# Two zero bit scans and a one bit drshift
|
|
pathmove RUN/IDLE DRSELECT DRCAPTURE DREXIT1 DRPAUSE
|
|
pathmove DRPAUSE DREXIT2 DRUPDATE RUN/IDLE
|
|
pathmove RUN/IDLE DRSELECT DRCAPTURE DREXIT1 DRPAUSE
|
|
pathmove DRPAUSE DREXIT2 DRUPDATE RUN/IDLE
|
|
pathmove RUN/IDLE DRSELECT DRCAPTURE DREXIT1 DRPAUSE
|
|
pathmove DRPAUSE DREXIT2 DRSHIFT DREXIT1 DRUPDATE RUN/IDLE
|
|
pathmove RUN/IDLE DRSELECT DRCAPTURE DREXIT1 DRPAUSE
|
|
|
|
# A two bit drhift and a 9 bit drshift
|
|
pathmove DRPAUSE DREXIT2 DRSHIFT DRSHIFT DREXIT1 DRUPDATE RUN/IDLE
|
|
pathmove RUN/IDLE DRSELECT DRCAPTURE DREXIT1 DRPAUSE
|
|
pathmove DRPAUSE DREXIT2 DRSHIFT DRSHIFT DREXIT1 DRPAUSE
|
|
pathmove DRPAUSE DREXIT2 DRSHIFT DRSHIFT DREXIT1 DRPAUSE
|
|
pathmove DRPAUSE DREXIT2 DRSHIFT DRSHIFT DREXIT1 DRPAUSE
|
|
pathmove DRPAUSE DREXIT2 DRSHIFT DRSHIFT DREXIT1 DRPAUSE
|
|
pathmove DRPAUSE DREXIT2 DRSHIFT DREXIT1 DRPAUSE
|
|
pathmove DRPAUSE DREXIT2 DRUPDATE RUN/IDLE
|
|
pathmove RUN/IDLE DRSELECT DRCAPTURE DREXIT1 DRPAUSE
|
|
|
|
# Bypass
|
|
irscan $jrc 0x3f -endstate RUN/IDLE
|
|
|
|
# Set ICEPick IDCODE in data register
|
|
irscan $jrc 0x04 -endstate RUN/IDLE
|
|
}
|