1d383bef5f72b16f8d81c7dcf98a7111f9f36c10
[fw/openocd] / tcl / board / kc100.cfg
1 # Knovative KC-100 cable modem
2
3 # TNETC4401PYP, 208-QFP U3
4 source [find target/tnetc4401.cfg]
5
6 # 14-pin EJTAG on JP1. Standard pinout, 1-3-5-7-9-11 = nTRST-TDI-TDO-TMS-TCK-nSRST. Use 2 for GND.
7 # Was initially disabled in hardware; had to add a solder bridge reenabling R124, R125 on back.
8 reset_config trst_and_srst separate
9
10 # 16Mb Intel CFI flash. Note this CPU has an internal ROM at 0x1FC0000 (phys) for cold boot.
11 # All that really does is some minimal checks before jumping to external flash at 0x00000000 phys.
12 # That is remapped to 0xB0000000 uncached, 0x90000000 cached.
13 flash bank intel cfi 0xB0000000 0x200000 2 2 $_TARGETNAME
14
15 # Perform this after a clean reboot, halt, and reset init (which should also leave it halted).
16 proc kc100_dump_flash {} {
17         echo "Probing 48 TSOP Intel CFI flash chip (2MB)..."
18         flash probe intel
19         echo "Dumping 2MB flash chip to flashdump.bin.
20         flash read_bank 0 flashdump.bin 0 0x200000
21 }
22
23 #TODO figure out memory init sequence to be able to dump from cached segment instead
24
25 # There is also a serial console on JP2, 3-5-6 = TX-RX-GND. 9600/8/N/1.
26
27 # Possibly of note, this modem's ancient ethernet port does not support Auto-MDIX.
28
29 # This modem in many ways appears to be essentially a clone of the SB5120. See usbjtag.com.
30 # The firmware/OS is also susceptible to many of the same procedures in "Hacking the Cable Modem"
31 # by DerEngel (Ryan Harris), available from No Starch Press.