]>
Commit | Line | Data |
---|---|---|
508f5baa UH |
1 | ------------------------------------------------------------------------------- |
2 | JTAG / Toshiba TMPA900 | |
3 | ------------------------------------------------------------------------------- | |
4 | ||
5 | This is a set of example captures of JTAG communication to a Glyn Tonga2 | |
6 | eval board with a Toshiba TMPA900 (ARM9) microcontroller. | |
7 | ||
8 | The JTAG adapter used was the FTDI FT2232H based Floss-JTAG (V0.2). | |
9 | ||
10 | Details: | |
11 | http://randomprojects.org/wiki/Floss-JTAG | |
12 | http://randomprojects.org/wiki/Linux_on_the_Glyn_Tonga2_%28Toshiba_TMPA900,_ARM9%29#JTAG | |
13 | http://www.semicon.toshiba.co.jp/openb2b/websearch/productDetails.jsp?partKey=TMPA900CMXBG | |
14 | ||
15 | ||
16 | Logic analyzer setup | |
17 | -------------------- | |
18 | ||
19 | The logic analyzer used was a Saleae Logic (at 4MHz): | |
20 | ||
21 | Probe JTAG connector | |
22 | -------------------------- | |
23 | 1 (black) TRST# | |
24 | 2 (brown) TDI | |
25 | 3 (red) TMS | |
26 | 4 (orange) TCK | |
27 | 5 (yellow) TDO | |
28 | 6 (green) RST | |
29 | 7 (blue) RTCK | |
30 | ||
31 | ||
32 | glyn_tonga2_init.sr | |
33 | ------------------- | |
34 | ||
35 | The following OpenOCD command was used: | |
36 | ||
37 | openocd -f interface/flossjtag-noeeprom.cfg -f board/glyn_tonga2.cfg \ | |
38 | -c "adapter_khz 1000" -c "init" | |
39 | ||
40 | (this runs the OpenOCD "tonga2_init" function too, which sets up clocks/RAM) | |
41 | ||
42 | The sigrok command line used was: | |
43 | ||
44 | sigrok-cli -d 0:samplerate=4mhz --time 5s \ | |
45 | -p '1=TRST,2=TDI,3=TMS,4=TCK,5=TDO,6=RST,7=RTCK' -o <filename> | |
46 | ||
47 | ||
48 | glyn_tonga2_reset.sr | |
49 | -------------------- | |
50 | ||
51 | The following OpenOCD command was used: | |
52 | ||
53 | openocd -f interface/flossjtag-noeeprom.cfg -f board/glyn_tonga2.cfg \ | |
54 | -c "adapter_khz 1000" -c "init" -c "halt" -c "poll off" \ | |
55 | -c "sleep 4000" -c "reset" -c "halt" | |
56 | ||
57 | (only the last "reset" and "halt" are in the dump) | |
58 | ||
59 | The sigrok command line used was: | |
60 | ||
61 | sigrok-cli -d 0:samplerate=4mhz --time 5s \ | |
62 | -p '1=TRST,2=TDI,3=TMS,4=TCK,5=TDO,6=RST,7=RTCK' -o <filename> | |
63 | ||
64 | ||
65 | glyn_tonga2_idle.sr | |
66 | ------------------- | |
67 | ||
68 | The following OpenOCD command was used: | |
69 | ||
70 | openocd -f interface/flossjtag-noeeprom.cfg -f board/glyn_tonga2.cfg \ | |
71 | -c "adapter_khz 1000" -c "init" | |
72 | ||
73 | The sigrok command line used was: | |
74 | ||
75 | sigrok-cli -d 0:samplerate=4mhz --time 3s \ | |
76 | -p '1=TRST,2=TDI,3=TMS,4=TCK,5=TDO,6=RST,7=RTCK' -o <filename> | |
77 | ||
78 | sigrok-cli was only started a few seconds after the OpenOCD init/connection | |
79 | to capture what happens when the user doesn't actively use OpenOCD commands. | |
80 | ||
81 | ||
82 | glyn_tonga2_irscan_drscan.sr | |
83 | ---------------------------- | |
84 | ||
85 | The following OpenOCD command was used: | |
86 | ||
87 | openocd -f interface/flossjtag-noeeprom.cfg -f board/glyn_tonga2.cfg \ | |
88 | -c "adapter_khz 1000" -c "init" -c "halt" -c "poll off" \ | |
89 | -c "sleep 4000" -c "irscan tmpa900.cpu 0xe" \ | |
90 | -c "drscan tmpa900.cpu 32 0" | |
91 | ||
92 | This gets the 32bit contents of the IDCODE register (0b1110): 0x07926031. | |
93 | ||
94 | The sigrok command line used was: | |
95 | ||
96 | sigrok-cli -d 0:samplerate=4mhz --time 5s \ | |
97 | -p '1=TRST,2=TDI,3=TMS,4=TCK,5=TDO,6=RST,7=RTCK' -o <filename> | |
98 |