Hello all,
I am trying to unbrick a board that is based on MT8555 (MediaTek) SoC using OpenOCD and Olimex ARM-USB-TINY-H. Upon connecting the JTAG device to the board this is what I am getting from the OpenOCD:
Open On-Chip Debugger 0.6.1 (2012-12-05-01:32)
Licensed under GNU GPL v2
For bug reports, read
http://openocd.sourceforge.net/doc/doxygen/bugs.html
Info : only one transport option; autoselect 'jtag'
adapter speed: 1000 kHz
trst_and_srst srst_pulls_trst srst_gates_jtag trst_push_pull srst_open_drain
Info : max TCK change to: 30000 kHz
Info : clock speed 1000 kHz
Info : JTAG tap: mt8555.cpu tap/device found: 0x0855544d (mfg: 0x226, part: 0x8555, ver: 0x0)
Error: 'arm11 target' JTAG error SCREG OUT 0x0a
Error: unexpected ARM11 ID code
Polling target failed, GDB will be halted. Polling again in 100ms
Polling target failed, GDB will be halted. Polling again in 300ms
TapName Enabled IdCode Expected IrLen IrCap IrMask
-- ------------------- -------- ---------- ---------- ----- ----- ------
0 mt8555.cpu Y 0x0855544d 0x0855544d 5 0x01 0x0f
adapter_nsrst_delay: 100
Polling target failed, GDB will be halted. Polling again in 700ms
jtag_ntrst_delay: 100
Info : JTAG tap: mt8555.cpu tap/device found: 0x0855544d (mfg: 0x226, part: 0x8555, ver: 0x0)
Error: 'arm11 target' JTAG error SCREG OUT 0x0a
Error: unexpected ARM11 ID code
Error: Target not examined yet
here’s my config file:
interface ft2232
ft2232_device_desc "Olimex OpenOCD JTAG ARM-USB-TINY-H"
ft2232_layout olimex-jtag
ft2232_vid_pid 0x15ba 0x002a
adapter_nsrst_delay 100
jtag_ntrst_delay 100
adapter_khz 1000
reset_config trst_and_srst srst_pulls_trst
if { [info exists CHIPNAME] } {
set _CHIPNAME $CHIPNAME
} else {
set _CHIPNAME mt8555
}
if { [info exists ENDIAN] } {
set _ENDIAN $ENDIAN
} else {
set _ENDIAN little
}
if { [info exists CPUTAPID ] } {
set _CPUTAPID $CPUTAPID
} else {
set _CPUTAPID 0x07B76F0F
}
# setup scan chains
jtag newtap $_CHIPNAME cpu -irlen 5 -ircapture 0x1 -irmask 0x1f -expected-id $_CPUTAPID
set _TARGETNAME $_CHIPNAME.cpu
target create $_TARGETNAME arm11 -endian $_ENDIAN -chain-position $_TARGETNAME -variant arm1176
This SoC is based on ARM1176JZF-S CPU and was told the original ARM JTAG scan chains should work with it. I tried to change CPUTAPID 0x0855544d but it still fails with “unexpected ARM11 ID code”. Can anyone advise what should I modify in my config file in order to talk to this chip ?