DFL-200 » History » Version 40
Gordon Shumway, 09/18/2012 05:37 PM
1 | 1 | Gordon Shumway | h1. DFL-200 |
---|---|---|---|
2 | 1 | Gordon Shumway | |
3 | 35 | Gordon Shumway | %{color:red;font-size:1.5em}This page is a work in progress and changes as the hardware is mapped out.% |
4 | 1 | Gordon Shumway | |
5 | 35 | Gordon Shumway | {{toc}} |
6 | 35 | Gordon Shumway | |
7 | 35 | Gordon Shumway | h2. Parts |
8 | 35 | Gordon Shumway | |
9 | 18 | Gordon Shumway | |SoC|266MHz|Intel IXP422BB| |
10 | 17 | Gordon Shumway | |RAM|64M|Hynix HY57V281620ETP-H| |
11 | 17 | Gordon Shumway | |Flash|4M|Intel JS28F320| |
12 | 17 | Gordon Shumway | |Ethernet controller|1|Realtek RTL8100B| |
13 | 17 | Gordon Shumway | ||2|IXP422 Built-in MAC| |
14 | 17 | Gordon Shumway | |Switch|1|Realtek RTL8305SB| |
15 | 1 | Gordon Shumway | |IDE controller|1|Promise PDC20275| |
16 | 1 | Gordon Shumway | |RTC||Ricoh RS5C372A| |
17 | 21 | Gordon Shumway | |
18 | 35 | Gordon Shumway | h2. Features |
19 | 35 | Gordon Shumway | |
20 | 17 | Gordon Shumway | |10/100 Eth|6|1 on the RTL8100B (WAN) |
21 | 13 | Gordon Shumway | 1 on NPE-C connected to the switch (DMZ) |
22 | 22 | Gordon Shumway | 4 on NPE-B connected to the switch, PHY 32 (LAN)| |
23 | 9 | Gordon Shumway | |LEDs|1|GPIO-controlled Status LED (LED20) |
24 | 2 | Gordon Shumway | (plus Ethernet port LEDs controlled by the switch)| |
25 | 25 | Gordon Shumway | |Buttons|2|GPIO, Reset button on the rear panel (RSW1), active low |
26 | 25 | Gordon Shumway | Hardware reset button (RSW2) inside the case| |
27 | 1 | Gordon Shumway | |GPIO|4|On GPIOA1; 2 of these are the IIC bus| |
28 | 1 | Gordon Shumway | |CF|1|On the IDE controller| |
29 | 1 | Gordon Shumway | |RTC|1|With battery backup; on the IIC bus| |
30 | 25 | Gordon Shumway | |JTAG|3|1 standard 20-pin ARM JTAG (JB1) |
31 | 25 | Gordon Shumway | 1 that appears to be a minimal version of a standard JTAG (JC1) |
32 | 9 | Gordon Shumway | 1 unknown (DEBUG2), possibly the DSP engine| |
33 | 1 | Gordon Shumway | |Serial|1|RS-232 on the rear panel| |
34 | 1 | Gordon Shumway | |
35 | 1 | Gordon Shumway | The board has unpopulated space for two more SDRAMs and a Mini-PCI Type III connector (some supporting parts may be missing). |
36 | 1 | Gordon Shumway | |
37 | 8 | Gordon Shumway | The board comes with RedBoot custom-tailored to run Clavister's second-stage loader and OS from the CF card. |
38 | 8 | Gordon Shumway | |
39 | 8 | Gordon Shumway | RedBoot is scattered over a total of 512K of the 4M flash. |
40 | 1 | Gordon Shumway | |
41 | 1 | Gordon Shumway | h2. GPIO setup |
42 | 1 | Gordon Shumway | |
43 | 1 | Gordon Shumway | |*GPIO*|*Function*|*Note*| |
44 | 1 | Gordon Shumway | |0||| |
45 | 1 | Gordon Shumway | |1||| |
46 | 1 | Gordon Shumway | |2||| |
47 | 1 | Gordon Shumway | |3||| |
48 | 1 | Gordon Shumway | |4||| |
49 | 1 | Gordon Shumway | |5|GPIO5|On GPIOA1| |
50 | 1 | Gordon Shumway | |6|IIC SCL|Also on GPIOA1| |
51 | 1 | Gordon Shumway | |7|IIC SDA|Also on GPIOA1| |
52 | 1 | Gordon Shumway | |8||| |
53 | 15 | Gordon Shumway | |9|PCI INTA|PDC20275 _%{color:red}verify me!%_| |
54 | 15 | Gordon Shumway | |10|PCI INTB|RTL8100B _%{color:red}verify me!%_| |
55 | 1 | Gordon Shumway | |11|| |
56 | 9 | Gordon Shumway | |12|Rear-panel Reset button (RSW1)|Active low| |
57 | 7 | Gordon Shumway | |13|IO reset|probably; |
58 | 7 | Gordon Shumway | connected to switch #RESET pin |
59 | 7 | Gordon Shumway | also resets the PCI bus| |
60 | 16 | Gordon Shumway | |14|GPIO14|On GPIOA1| |
61 | 9 | Gordon Shumway | |15|Status LED (LED20)|(probably? Supposed to be the PCI clock?)| |
62 | 1 | Gordon Shumway | |
63 | 23 | Gordon Shumway | h2. Headers and connectors |
64 | 1 | Gordon Shumway | |
65 | 23 | Gordon Shumway | h3. GPIOA1 header |
66 | 23 | Gordon Shumway | |
67 | 1 | Gordon Shumway | |*Pin*|*Function*| |
68 | 1 | Gordon Shumway | |1|GPIO14| |
69 | 1 | Gordon Shumway | |3|IIC SDA| |
70 | 1 | Gordon Shumway | |5|IIC SCL| |
71 | 1 | Gordon Shumway | |7|GPIO5| |
72 | 1 | Gordon Shumway | |2, 4, 6, 8|GND| |
73 | 1 | Gordon Shumway | |
74 | 19 | Gordon Shumway | |
75 | 25 | Gordon Shumway | h3. JC1 header |
76 | 19 | Gordon Shumway | |
77 | 19 | Gordon Shumway | Apparently a simplified JTAG header. _%{color:red}verify me!%_ |
78 | 19 | Gordon Shumway | |
79 | 19 | Gordon Shumway | |*Pin*|*Function*| |
80 | 19 | Gordon Shumway | |2|TCK| |
81 | 19 | Gordon Shumway | |4|TMS| |
82 | 19 | Gordon Shumway | |6|TDI| |
83 | 1 | Gordon Shumway | |8|TDO| |
84 | 19 | Gordon Shumway | |1, 3, 5, 7|GND| |
85 | 19 | Gordon Shumway | |
86 | 23 | Gordon Shumway | h3. PS4S1 4-pin Berg- (Mini-Molex-) type power supply connector |
87 | 20 | Gordon Shumway | |
88 | 20 | Gordon Shumway | |*Pin*|*Function*| |
89 | 20 | Gordon Shumway | |1|+5V| |
90 | 20 | Gordon Shumway | |2|GND| |
91 | 20 | Gordon Shumway | |3|GND| |
92 | 20 | Gordon Shumway | |4|N/C| |
93 | 20 | Gordon Shumway | |
94 | 20 | Gordon Shumway | Of note, there is no +12V. |
95 | 19 | Gordon Shumway | |
96 | 1 | Gordon Shumway | h2. RedBoot |
97 | 1 | Gordon Shumway | |
98 | 1 | Gordon Shumway | Console is 9600,8N1. |
99 | 1 | Gordon Shumway | |
100 | 1 | Gordon Shumway | Flash layout: |
101 | 1 | Gordon Shumway | |
102 | 1 | Gordon Shumway | |*Name*|*FLASH addr*|*Mem addr*|*Length*|*Entry point*| |
103 | 1 | Gordon Shumway | |RedBoot|0x50000000|0x50000000|0x00040000|0x00000000| |
104 | 1 | Gordon Shumway | |mac|0x50040000|0x10000000|0x00020000|0x10000000| |
105 | 1 | Gordon Shumway | |FIS directory|0x503E0000|0x503E0000|0x0001F000|0x00000000| |
106 | 1 | Gordon Shumway | |RedBoot config|0x503FF000|0x503FF000|0x00001000|0x00000000| |
107 | 1 | Gordon Shumway | |
108 | 1 | Gordon Shumway | RedBoot comes up with a default menu that allows selecting between booting the Clavister OS (this is done automatically after a timeout) or enter the RedBoot command line. |
109 | 1 | Gordon Shumway | |
110 | 26 | Gordon Shumway | Although RedBoot is able to write configuration to flash memory, it ignores (at least some of the) settings contained there (console_baud_rate). The flash config doesn't contain the NPE MAC addresses either. *Make note of your MAC addresses from the original OS*. They may also be printed on stickers on the Ethernet jacks. The bottom sticker also has the MAC address of the WAN port -- add 0x01 for the DMZ MAC, another 0x01 for the LAN MAC. |
111 | 1 | Gordon Shumway | |
112 | 1 | Gordon Shumway | h3. Automatic booting |
113 | 1 | Gordon Shumway | |
114 | 1 | Gordon Shumway | Booting the Clavister OS is done by the following command sequence: |
115 | 1 | Gordon Shumway | |
116 | 1 | Gordon Shumway | <pre> |
117 | 1 | Gordon Shumway | load -m disk -b 0x100000 hda1:FWLOADER.CFX |
118 | 1 | Gordon Shumway | go -c 0x101028 |
119 | 1 | Gordon Shumway | </pre> |
120 | 1 | Gordon Shumway | |
121 | 1 | Gordon Shumway | This will load FWLOADER.CFX from the first CF partition, which must be either FAT (16?) or ext2fs. Any file named FWLOADER.CFX can be loaded as long as it satisfies the following (known) constraints: |
122 | 1 | Gordon Shumway | |
123 | 11 | Gordon Shumway | * Begins with a 4136-byte long DOS/PE stub (it _must_ be a proper DOS/PE stub, at least to some as-of-yet-unknown extent) |
124 | 1 | Gordon Shumway | * The payload after the stub _must_ be a tagged image (ie. ELF) |
125 | 1 | Gordon Shumway | |
126 | 37 | Gordon Shumway | h3. Automatic booting of a custom kernel |
127 | 37 | Gordon Shumway | |
128 | 37 | Gordon Shumway | By default, RedBoot starts up with a menu: |
129 | 37 | Gordon Shumway | |
130 | 37 | Gordon Shumway | <pre> |
131 | 37 | Gordon Shumway | Found EXT2 file system |
132 | 37 | Gordon Shumway | Ethernet eth0: MAC address 22:11:44:33:66:55 |
133 | 37 | Gordon Shumway | IP: 192.168.1.1/255.255.255.0, Gateway: 192.168.1.12 |
134 | 37 | Gordon Shumway | Default server: 192.168.1.12 |
135 | 37 | Gordon Shumway | |
136 | 37 | Gordon Shumway | EM-436 Ver.AB 2004-08-31 |
137 | 37 | Gordon Shumway | |
138 | 37 | Gordon Shumway | |
139 | 37 | Gordon Shumway | Booting Menu: Default Start D-Link firewall |
140 | 37 | Gordon Shumway | 1. Start D-Link firewall |
141 | 37 | Gordon Shumway | 2. Redboot command line |
142 | 37 | Gordon Shumway | Please select: |
143 | 37 | Gordon Shumway | </pre> |
144 | 37 | Gordon Shumway | |
145 | 37 | Gordon Shumway | If no interaction is made, (1) will be executed with the above-mentioned boot sequence. |
146 | 37 | Gordon Shumway | |
147 | 37 | Gordon Shumway | Booting any custom image involves selecting (2) and issuing the necessary RedBoot commands. Automating this selection is done by a RedBoot script that has a bare _*2*_ as its first line, then the commands necessary to load and boot the custom image. |
148 | 37 | Gordon Shumway | |
149 | 37 | Gordon Shumway | <pre> |
150 | 37 | Gordon Shumway | RedBoot> fconfig |
151 | 37 | Gordon Shumway | Run script at boot: true |
152 | 37 | Gordon Shumway | Boot script: |
153 | 37 | Gordon Shumway | Enter script, terminate with empty line |
154 | 37 | Gordon Shumway | >> 2 |
155 | 37 | Gordon Shumway | >> load -r -b 0x01600000 -m disk hda1:/boot/openwrt-dfl200-zImage |
156 | 37 | Gordon Shumway | >> go -n 0x01600000 |
157 | 37 | Gordon Shumway | >> |
158 | 37 | Gordon Shumway | Boot script timeout (1000ms resolution): 5 |
159 | 37 | Gordon Shumway | Use BOOTP for network configuration: false |
160 | 37 | Gordon Shumway | Gateway IP address: 192.168.1.12 |
161 | 37 | Gordon Shumway | Local IP address: 192.168.1.1 |
162 | 37 | Gordon Shumway | Local IP address mask: 255.255.255.0 |
163 | 37 | Gordon Shumway | Default server IP address: 192.168.1.12 |
164 | 37 | Gordon Shumway | console_baud_rate: 9600 |
165 | 37 | Gordon Shumway | GDB connection port: 0 |
166 | 37 | Gordon Shumway | Force console for special debug messages: false |
167 | 37 | Gordon Shumway | Network debug at boot time: false |
168 | 37 | Gordon Shumway | Update RedBoot non-volatile configuration - continue (y/n)? y |
169 | 37 | Gordon Shumway | ... Unlock from 0x503e0000-0x50400000: . |
170 | 37 | Gordon Shumway | ... Erase from 0x503e0000-0x50400000: . |
171 | 37 | Gordon Shumway | ... Program from 0x0ffe0000-0x10000000 at 0x503e0000: . |
172 | 37 | Gordon Shumway | ... Lock from 0x503e0000-0x50400000: . |
173 | 37 | Gordon Shumway | RedBoot> |
174 | 37 | Gordon Shumway | </pre> |
175 | 37 | Gordon Shumway | |
176 | 37 | Gordon Shumway | This will automatically load and boot /boot/openwrt-dfl200-zImage from the first partition on the Compact Flash card (which must still be FAT or ext2 for RedBoot to be able to handle it). |
177 | 37 | Gordon Shumway | |
178 | 38 | Gordon Shumway | <pre> |
179 | 38 | Gordon Shumway | Found EXT2 file system |
180 | 38 | Gordon Shumway | Ethernet eth0: MAC address 22:11:44:33:66:55 |
181 | 38 | Gordon Shumway | IP: 192.168.1.1/255.255.255.0, Gateway: 192.168.1.12 |
182 | 38 | Gordon Shumway | Default server: 192.168.1.12 |
183 | 38 | Gordon Shumway | |
184 | 38 | Gordon Shumway | EM-436 Ver.AB 2004-08-31 |
185 | 38 | Gordon Shumway | |
186 | 38 | Gordon Shumway | |
187 | 38 | Gordon Shumway | Booting Menu: Default Start D-Link firewall |
188 | 38 | Gordon Shumway | 1. Start D-Link firewall |
189 | 38 | Gordon Shumway | 2. Redboot command line |
190 | 38 | Gordon Shumway | Please select:2 |
191 | 38 | Gordon Shumway | |
192 | 38 | Gordon Shumway | == Executing boot script in 5.000 seconds - enter ^C to abort |
193 | 38 | Gordon Shumway | RedBoot> load -r -b 0x01600000 -m disk hda1:/boot/openwrt-dfl200-zImage |
194 | 38 | Gordon Shumway | Raw file loaded 0x01600000-0x016ee4f7, assumed entry at 0x01600000 |
195 | 38 | Gordon Shumway | RedBoot> go -n 0x01600000 |
196 | 38 | Gordon Shumway | Uncompressing Linux... done, booting the kernel. |
197 | 38 | Gordon Shumway | [ 0.000000] Booting Linux on physical CPU 0 |
198 | 38 | Gordon Shumway | ... |
199 | 38 | Gordon Shumway | </pre> |
200 | 38 | Gordon Shumway | |
201 | 1 | Gordon Shumway | h2. Miscellaneous notes |
202 | 1 | Gordon Shumway | |
203 | 23 | Gordon Shumway | If GPIO5 is grounded when power is applied, the board enters some sort of a simple self-test routine. |
204 | 17 | Gordon Shumway | |
205 | 17 | Gordon Shumway | RTCK (pin 11) on JB1 (JTAG) is pulled to ground. |
206 | 27 | Gordon Shumway | |
207 | 36 | Gordon Shumway | There are abundant supplies of ground pins on GPIOA1 and JC1; no need to wrestle with (de-)soldering this pin on JB1 if you have troubles with that. |
208 | 28 | Gordon Shumway | |
209 | 33 | Gordon Shumway | h2. Board revisions |
210 | 33 | Gordon Shumway | |
211 | 33 | Gordon Shumway | Two known, EM-436A V1.1 and EM-436A V2.0. The only observable difference between the two are slightly different component use (flash, SDRAMs) and minor differences in the PCB silk. |
212 | 33 | Gordon Shumway | |
213 | 28 | Gordon Shumway | h2. Annotated board image |
214 | 29 | Gordon Shumway | |
215 | 30 | Gordon Shumway | !DFL200_annotated.jpg! |
216 | 30 | Gordon Shumway | |
217 | 39 | Gordon Shumway | |1|[[DFL-200#PS4S1-4-pin-Berg--Mini-Molex--type-power-supply-connector|PS4S1 power connector]]||11|RTL8100B Ethernet controller| |
218 | 33 | Gordon Shumway | |2|JP2 Mystery jumper No. 1||12|RTL8305SB Ethernet switch| |
219 | 40 | Gordon Shumway | |3|[[DFL-200#JC1-header|JC1 mini-JTAG]]||13|RS5C372A RTC| |
220 | 31 | Gordon Shumway | |4|JB1 ARM JTAG||14|SDRAM banks| |
221 | 40 | Gordon Shumway | |5|[[DFL-200#GPIOA1-header|GPIOA1 header]]||15|Mini-PCI Type III connector| |
222 | 1 | Gordon Shumway | |6|DEBUG2 header||16|IXP422BB SoC| |
223 | 30 | Gordon Shumway | |7|LED20 Status LED||17|JS28F320 flash| |
224 | 33 | Gordon Shumway | |8|IMP1 Mystery connector No. 2||18|Compact Flash card| |
225 | 30 | Gordon Shumway | |9|MAC address stickers||19|RSW1 Reset button| |
226 | 30 | Gordon Shumway | |10|PDC20275 IDE controller||| |