2015年7月2日木曜日

Buffalo WBR2-B11 へ JTAG アクセス

分解掃除をしたバッファロー WBR2-B11 へ JTAG によるアクセスを行なってみました。

まず WBR2-B11 の JTAG ヘッダへピンヘッダ(12 ピン)をハンダ付けしました。

ここへ手作りの DLC5 タイプの JTAG ケーブルを接続しました。そして TJTAG でアクセスしてみました。下記のとおりアクセスができました。

WBR2-B11 へ JTAG ケーブルを接続しているところです。

# ./tjtag3 -probeonly /cable:DLC5

================================================
 EJTAG Debrick Utility v3.0.2.1 Tornado-MOD
================================================

Detected IR chain length = 8
Number of device(s) = 1

IDCODE for device 1 is 0x1471217F

Probing bus ... Done

Instruction Length set to 8

CPU Chip ID: 00010100011100010010000101111111 (1471217F)
*** Found a Broadcom BCM4712 Rev 1 CPU chip ***

    - EJTAG IMPCODE ....... : 00000000100000000000100100000100 (00800904)
    - EJTAG Version ....... : 1 or 2.0
    - EJTAG DMA Support ... : Yes
    - EJTAG Implementation flags: R4k MIPS32

Intial value of Control register is 0000000C
Intial value of status register is  0000007F
01111111 (0000007F)

Status bit 7 Busy Inverted pin 11 = 1
Status bit 6 *Ack          pin 10 = 1
Status bit 5 Paper-out     pin 12 = 1
Status bit 4 Select        pin 13 = 1
Status bit 3 *Error        pin 15 = 1
* means low = true, e.g., *Error

VCC connected
values of Control register after init 0x0000000C
value of status register after init   0x0000007F
system reset complete

Issuing Processor / Peripheral Reset ... Done
Enabling Memory Writes ... Done
Halting Processor ... ... Done
Init PrAcc ... Skipped
Clearing Watchdog ... Done


Chip ID 4712
Chip Rev 1
Package Options 0
Number of Cores 8
Core Revision 79
Core Type 710
Core Vendor ID 8010000
Flash Type 700
Flash Type = PFLASH
Dest is bits 0
Flash is byteswapped 0
Endian Type is LE 0
PLL Type 00008000
Enter Flash Probe

Probing Flash at (Flash Window: 0x1fc00000) ...
Enter SPI Flash Probe
Enter SPI Flash Probe
Enter SPI Flash Probe
Enter SPI Flash Probe
Done

*** Unknown or NO Flash Chip Detected ***

 *** REQUESTED OPERATION IS COMPLETE ***

ただしプロセッサの認識は出来たのですが、フラッシュメモリ(AMIC A29DL320FUV-90)は検出できませんでした。

CFE 部分とフラッシュメモリ全体のバックアップを取得するために、フラッシュメモリを手動で設定してみました。いくつか試みましたが、次の二つの設定では読み出しをすることができました。バックアップデータのハッシュを計算して比較してみましたが、同じものだったので、この設定で問題ないようです。
/fc:35 AMD 29lv 320DB 2Mx16
/fc:37 MBM29LV320BE 2Mx16
そして以下の設定では読み出し途中で停止してしまいました。この設定は使用しない方が良さそうです。
/fc:33 MBM29DL323BE 2Mx16
CFE 部分とフラッシュメモリ全体のバックアップは次のコマンドで行いました。
# ./tjtag3 -backup:cfe /cable:DLC5 /fc:35
# ./tjtag3 -backup:wholeflash /cable:DLC5 /fc:35
WBR2-B11 のフラッシュメモリをバックアップしているところです。
フラッシュメモリの内容をバックアップできれば、後はファームウェアの書き込みに失敗しても心を落ち着かせて対応することができます(笑)。


0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。