Project

General

Profile

DFL-200 » History » Version 64

Gordon Shumway, 09/18/2012 08:43 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 58 Gordon Shumway
|/3. 10/100 Eth|/3. 6|1 on the RTL8100B (WAN)|
21 58 Gordon Shumway
                     |1 on NPE-C connected to the switch (DMZ)|
22 58 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 58 Gordon Shumway
|/2. Buttons|/2. 2|GPIO, Reset button on the rear panel (RSW1), active low|
26 58 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 57 Gordon Shumway
|Comact Flash|1|On the IDE controller|
29 1 Gordon Shumway
|RTC|1|With battery backup; on the IIC bus|
30 58 Gordon Shumway
|/3. JTAG|/3. 3|1 standard 20-pin ARM JTAG (JB1)|
31 58 Gordon Shumway
               |1 that appears to be a minimal version of a standard JTAG (JC1)|
32 58 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 47 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 52 Gordon Shumway
|9|PCI INTA|PDC20275|
54 52 Gordon Shumway
|10|PCI INTB|RTL8100B|
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 60 Gordon Shumway
|_. Pin|_. Function||_. Pin|_. Function|
68 62 Gordon Shumway
|1|GPIO14||2|GND|
69 62 Gordon Shumway
|3|IIC SDA||4|GND|
70 62 Gordon Shumway
|5|IIC SCL||6|GND|
71 62 Gordon Shumway
|7|GPIO5||8|GND|
72 60 Gordon Shumway
73 44 Gordon Shumway
h3. JB1 header
74 1 Gordon Shumway
75 56 Gordon Shumway
Standard 20-pin ARM JTAG.
76 44 Gordon Shumway
77 54 Gordon Shumway
|_. Pin |_. Function||_. Pin |_. Function|
78 1 Gordon Shumway
|1|Vref||2|Vsupply|
79 63 Gordon Shumway
|3|nTRST||4|GND|
80 63 Gordon Shumway
|5|TDI||6|GND|
81 63 Gordon Shumway
|7|TMS||8|GND|
82 63 Gordon Shumway
|9|TCK||10|GND|
83 63 Gordon Shumway
|11|RTCK||12|GND|
84 63 Gordon Shumway
|13|TDO||14|GND|
85 63 Gordon Shumway
|15|nSRST||16|GND|
86 63 Gordon Shumway
|17|DBGRQ||18|GND|
87 63 Gordon Shumway
|19|DBGACK||20|GND|
88 44 Gordon Shumway
89 19 Gordon Shumway
h3. JC1 header
90 19 Gordon Shumway
91 55 Gordon Shumway
A simplified JTAG header.
92 19 Gordon Shumway
93 59 Gordon Shumway
|_. Pin|_. Function||_. Pin|_. Function|
94 64 Gordon Shumway
|1|GND||2|TCK|
95 64 Gordon Shumway
|2|GND||4|TMS|
96 64 Gordon Shumway
|3|GND||6|TDI|
97 64 Gordon Shumway
|4|GND||8|TDO|
98 1 Gordon Shumway
99 23 Gordon Shumway
h3. PS4S1 4-pin Berg- (Mini-Molex-) type power supply connector
100 20 Gordon Shumway
101 44 Gordon Shumway
|_. Pin|_. Function|
102 20 Gordon Shumway
|1|+5V|
103 20 Gordon Shumway
|2|GND|
104 20 Gordon Shumway
|3|GND|
105 20 Gordon Shumway
|4|N/C|
106 20 Gordon Shumway
107 20 Gordon Shumway
Of note, there is no +12V.
108 19 Gordon Shumway
109 1 Gordon Shumway
h2. RedBoot
110 1 Gordon Shumway
111 1 Gordon Shumway
Console is 9600,8N1.
112 1 Gordon Shumway
113 1 Gordon Shumway
Flash layout:
114 1 Gordon Shumway
115 49 Gordon Shumway
|_. Name|_. FLASH addr|_. Mem addr|_. Length|_. Entry point|
116 1 Gordon Shumway
|RedBoot|0x50000000|0x50000000|0x00040000|0x00000000|
117 1 Gordon Shumway
|mac|0x50040000|0x10000000|0x00020000|0x10000000|
118 1 Gordon Shumway
|FIS directory|0x503E0000|0x503E0000|0x0001F000|0x00000000|
119 1 Gordon Shumway
|RedBoot config|0x503FF000|0x503FF000|0x00001000|0x00000000|
120 1 Gordon Shumway
121 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.
122 1 Gordon Shumway
123 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.
124 1 Gordon Shumway
125 1 Gordon Shumway
h3. Automatic booting
126 1 Gordon Shumway
127 1 Gordon Shumway
Booting the Clavister OS is done by the following command sequence:
128 1 Gordon Shumway
129 1 Gordon Shumway
<pre>
130 1 Gordon Shumway
load -m disk -b 0x100000 hda1:FWLOADER.CFX
131 1 Gordon Shumway
go -c 0x101028
132 1 Gordon Shumway
</pre>
133 1 Gordon Shumway
134 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:
135 1 Gordon Shumway
136 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)
137 1 Gordon Shumway
* The payload after the stub _must_ be a tagged image (ie. ELF)
138 1 Gordon Shumway
139 37 Gordon Shumway
h3. Automatic booting of a custom kernel
140 37 Gordon Shumway
141 37 Gordon Shumway
By default, RedBoot starts up with a menu:
142 37 Gordon Shumway
143 37 Gordon Shumway
<pre>
144 37 Gordon Shumway
Found EXT2 file system
145 37 Gordon Shumway
Ethernet eth0: MAC address 22:11:44:33:66:55
146 37 Gordon Shumway
IP: 192.168.1.1/255.255.255.0, Gateway: 192.168.1.12
147 37 Gordon Shumway
Default server: 192.168.1.12
148 37 Gordon Shumway
149 37 Gordon Shumway
EM-436 Ver.AB 2004-08-31
150 37 Gordon Shumway
151 37 Gordon Shumway
152 37 Gordon Shumway
Booting Menu: Default Start D-Link firewall
153 37 Gordon Shumway
1. Start D-Link firewall
154 37 Gordon Shumway
2. Redboot command line
155 37 Gordon Shumway
Please select:
156 37 Gordon Shumway
</pre>
157 37 Gordon Shumway
158 37 Gordon Shumway
If no interaction is made, (1) will be executed with the above-mentioned boot sequence.
159 37 Gordon Shumway
160 50 Gordon Shumway
Booting any custom image involves selecting (2) and issuing the necessary RedBoot commands. Automating this selection is done by a boot script that has a bare _*2*_ as its first line, then the commands necessary to load and boot the custom image.
161 37 Gordon Shumway
162 37 Gordon Shumway
<pre>
163 37 Gordon Shumway
RedBoot> fconfig
164 37 Gordon Shumway
Run script at boot: true
165 37 Gordon Shumway
Boot script: 
166 37 Gordon Shumway
Enter script, terminate with empty line
167 37 Gordon Shumway
>> 2
168 37 Gordon Shumway
>> load -r -b 0x01600000 -m disk hda1:/boot/openwrt-dfl200-zImage
169 37 Gordon Shumway
>> go -n 0x01600000
170 37 Gordon Shumway
>> 
171 37 Gordon Shumway
Boot script timeout (1000ms resolution): 5 
172 37 Gordon Shumway
Use BOOTP for network configuration: false
173 37 Gordon Shumway
Gateway IP address: 192.168.1.12
174 37 Gordon Shumway
Local IP address: 192.168.1.1
175 37 Gordon Shumway
Local IP address mask: 255.255.255.0
176 37 Gordon Shumway
Default server IP address: 192.168.1.12
177 37 Gordon Shumway
console_baud_rate: 9600
178 37 Gordon Shumway
GDB connection port: 0
179 37 Gordon Shumway
Force console for special debug messages: false
180 37 Gordon Shumway
Network debug at boot time: false
181 37 Gordon Shumway
Update RedBoot non-volatile configuration - continue (y/n)? y
182 37 Gordon Shumway
... Unlock from 0x503e0000-0x50400000: .
183 37 Gordon Shumway
... Erase from 0x503e0000-0x50400000: .
184 37 Gordon Shumway
... Program from 0x0ffe0000-0x10000000 at 0x503e0000: .
185 37 Gordon Shumway
... Lock from 0x503e0000-0x50400000: .
186 37 Gordon Shumway
RedBoot> 
187 37 Gordon Shumway
</pre>
188 37 Gordon Shumway
189 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).
190 37 Gordon Shumway
191 38 Gordon Shumway
<pre>
192 38 Gordon Shumway
Found EXT2 file system
193 38 Gordon Shumway
Ethernet eth0: MAC address 22:11:44:33:66:55
194 38 Gordon Shumway
IP: 192.168.1.1/255.255.255.0, Gateway: 192.168.1.12
195 38 Gordon Shumway
Default server: 192.168.1.12
196 38 Gordon Shumway
197 38 Gordon Shumway
EM-436 Ver.AB 2004-08-31
198 38 Gordon Shumway
199 38 Gordon Shumway
200 38 Gordon Shumway
Booting Menu: Default Start D-Link firewall
201 38 Gordon Shumway
1. Start D-Link firewall
202 38 Gordon Shumway
2. Redboot command line
203 38 Gordon Shumway
Please select:2
204 38 Gordon Shumway
205 38 Gordon Shumway
== Executing boot script in 5.000 seconds - enter ^C to abort
206 38 Gordon Shumway
RedBoot> load -r -b 0x01600000 -m disk hda1:/boot/openwrt-dfl200-zImage
207 38 Gordon Shumway
Raw file loaded 0x01600000-0x016ee4f7, assumed entry at 0x01600000
208 38 Gordon Shumway
RedBoot> go -n 0x01600000
209 38 Gordon Shumway
Uncompressing Linux... done, booting the kernel.
210 38 Gordon Shumway
[    0.000000] Booting Linux on physical CPU 0
211 38 Gordon Shumway
...
212 38 Gordon Shumway
</pre>
213 38 Gordon Shumway
214 1 Gordon Shumway
h2. Miscellaneous notes
215 1 Gordon Shumway
216 23 Gordon Shumway
If GPIO5 is grounded when power is applied, the board enters some sort of a simple self-test routine.
217 17 Gordon Shumway
218 17 Gordon Shumway
RTCK (pin 11) on JB1 (JTAG) is pulled to ground.
219 27 Gordon Shumway
220 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.
221 28 Gordon Shumway
222 33 Gordon Shumway
h2. Board revisions
223 33 Gordon Shumway
224 43 Gordon Shumway
Two known, EM-436A V1.1 and EM-436A V2.0. The only observable differences between the two are slightly different component use (flash, SDRAMs) and minor differences in the PCB silk.
225 33 Gordon Shumway
226 28 Gordon Shumway
h2. Annotated board image
227 29 Gordon Shumway
228 30 Gordon Shumway
!DFL200_annotated.jpg!
229 30 Gordon Shumway
230 39 Gordon Shumway
|1|[[DFL-200#PS4S1-4-pin-Berg--Mini-Molex--type-power-supply-connector|PS4S1 power connector]]||11|RTL8100B Ethernet controller|
231 33 Gordon Shumway
|2|JP2 Mystery jumper No. 1||12|RTL8305SB Ethernet switch|
232 40 Gordon Shumway
|3|[[DFL-200#JC1-header|JC1 mini-JTAG]]||13|RS5C372A RTC|
233 31 Gordon Shumway
|4|JB1 ARM JTAG||14|SDRAM banks|
234 40 Gordon Shumway
|5|[[DFL-200#GPIOA1-header|GPIOA1 header]]||15|Mini-PCI Type III connector|
235 1 Gordon Shumway
|6|DEBUG2 header||16|IXP422BB SoC|
236 30 Gordon Shumway
|7|LED20 Status LED||17|JS28F320 flash|
237 33 Gordon Shumway
|8|IMP1 Mystery connector No. 2||18|Compact Flash card|
238 42 Gordon Shumway
|9|MAC address stickers||19|RSW1 software reset button|
239 42 Gordon Shumway
|10|PDC20275 IDE controller||20|RSW2 hardware reset button|