diff options
Diffstat (limited to 'Documentation/arm/SA1100')
-rw-r--r-- | Documentation/arm/SA1100/ADSBitsy | 43 | ||||
-rw-r--r-- | Documentation/arm/SA1100/Assabet | 301 | ||||
-rw-r--r-- | Documentation/arm/SA1100/Brutus | 66 | ||||
-rw-r--r-- | Documentation/arm/SA1100/CERF | 29 | ||||
-rw-r--r-- | Documentation/arm/SA1100/FreeBird | 21 | ||||
-rw-r--r-- | Documentation/arm/SA1100/GraphicsClient | 98 | ||||
-rw-r--r-- | Documentation/arm/SA1100/GraphicsMaster | 53 | ||||
-rw-r--r-- | Documentation/arm/SA1100/HUW_WEBPANEL | 17 | ||||
-rw-r--r-- | Documentation/arm/SA1100/Itsy | 39 | ||||
-rw-r--r-- | Documentation/arm/SA1100/LART | 14 | ||||
-rw-r--r-- | Documentation/arm/SA1100/PLEB | 11 | ||||
-rw-r--r-- | Documentation/arm/SA1100/Pangolin | 23 | ||||
-rw-r--r-- | Documentation/arm/SA1100/Tifon | 7 | ||||
-rw-r--r-- | Documentation/arm/SA1100/Victor | 16 | ||||
-rw-r--r-- | Documentation/arm/SA1100/Yopy | 2 | ||||
-rw-r--r-- | Documentation/arm/SA1100/empeg | 2 | ||||
-rw-r--r-- | Documentation/arm/SA1100/nanoEngine | 11 | ||||
-rw-r--r-- | Documentation/arm/SA1100/serial_UART | 47 |
18 files changed, 800 insertions, 0 deletions
diff --git a/Documentation/arm/SA1100/ADSBitsy b/Documentation/arm/SA1100/ADSBitsy new file mode 100644 index 000000000000..ab47c3833908 --- /dev/null +++ b/Documentation/arm/SA1100/ADSBitsy | |||
@@ -0,0 +1,43 @@ | |||
1 | ADS Bitsy Single Board Computer | ||
2 | (It is different from Bitsy(iPAQ) of Compaq) | ||
3 | |||
4 | For more details, contact Applied Data Systems or see | ||
5 | http://www.applieddata.net/products.html | ||
6 | |||
7 | The Linux support for this product has been provided by | ||
8 | Woojung Huh <whuh@applieddata.net> | ||
9 | |||
10 | Use 'make adsbitsy_config' before any 'make config'. | ||
11 | This will set up defaults for ADS Bitsy support. | ||
12 | |||
13 | The kernel zImage is linked to be loaded and executed at 0xc0400000. | ||
14 | |||
15 | Linux can be used with the ADS BootLoader that ships with the | ||
16 | newer rev boards. See their documentation on how to load Linux. | ||
17 | |||
18 | Supported peripherals: | ||
19 | - SA1100 LCD frame buffer (8/16bpp...sort of) | ||
20 | - SA1111 USB Master | ||
21 | - SA1100 serial port | ||
22 | - pcmcia, compact flash | ||
23 | - touchscreen(ucb1200) | ||
24 | - console on LCD screen | ||
25 | - serial ports (ttyS[0-2]) | ||
26 | - ttyS0 is default for serial console | ||
27 | |||
28 | To do: | ||
29 | - everything else! :-) | ||
30 | |||
31 | Notes: | ||
32 | |||
33 | - The flash on board is divided into 3 partitions. | ||
34 | You should be careful to use flash on board. | ||
35 | It's partition is different from GraphicsClient Plus and GraphicsMaster | ||
36 | |||
37 | - 16bpp mode requires a different cable than what ships with the board. | ||
38 | Contact ADS or look through the manual to wire your own. Currently, | ||
39 | if you compile with 16bit mode support and switch into a lower bpp | ||
40 | mode, the timing is off so the image is corrupted. This will be | ||
41 | fixed soon. | ||
42 | |||
43 | Any contribution can be sent to nico@cam.org and will be greatly welcome! | ||
diff --git a/Documentation/arm/SA1100/Assabet b/Documentation/arm/SA1100/Assabet new file mode 100644 index 000000000000..cbbe5587c78d --- /dev/null +++ b/Documentation/arm/SA1100/Assabet | |||
@@ -0,0 +1,301 @@ | |||
1 | The Intel Assabet (SA-1110 evaluation) board | ||
2 | ============================================ | ||
3 | |||
4 | Please see: | ||
5 | http://developer.intel.com/design/strong/quicklist/eval-plat/sa-1110.htm | ||
6 | http://developer.intel.com/design/strong/guides/278278.htm | ||
7 | |||
8 | Also some notes from John G Dorsey <jd5q@andrew.cmu.edu>: | ||
9 | http://www.cs.cmu.edu/~wearable/software/assabet.html | ||
10 | |||
11 | |||
12 | Building the kernel | ||
13 | ------------------- | ||
14 | |||
15 | To build the kernel with current defaults: | ||
16 | |||
17 | make assabet_config | ||
18 | make oldconfig | ||
19 | make zImage | ||
20 | |||
21 | The resulting kernel image should be available in linux/arch/arm/boot/zImage. | ||
22 | |||
23 | |||
24 | Installing a bootloader | ||
25 | ----------------------- | ||
26 | |||
27 | A couple of bootloaders able to boot Linux on Assabet are available: | ||
28 | |||
29 | BLOB (http://www.lart.tudelft.nl/lartware/blob/) | ||
30 | |||
31 | BLOB is a bootloader used within the LART project. Some contributed | ||
32 | patches were merged into BLOB to add support for Assabet. | ||
33 | |||
34 | Compaq's Bootldr + John Dorsey's patch for Assabet support | ||
35 | (http://www.handhelds.org/Compaq/bootldr.html) | ||
36 | (http://www.wearablegroup.org/software/bootldr/) | ||
37 | |||
38 | Bootldr is the bootloader developed by Compaq for the iPAQ Pocket PC. | ||
39 | John Dorsey has produced add-on patches to add support for Assabet and | ||
40 | the JFFS filesystem. | ||
41 | |||
42 | RedBoot (http://sources.redhat.com/redboot/) | ||
43 | |||
44 | RedBoot is a bootloader developed by Red Hat based on the eCos RTOS | ||
45 | hardware abstraction layer. It supports Assabet amongst many other | ||
46 | hardware platforms. | ||
47 | |||
48 | RedBoot is currently the recommended choice since it's the only one to have | ||
49 | networking support, and is the most actively maintained. | ||
50 | |||
51 | Brief examples on how to boot Linux with RedBoot are shown below. But first | ||
52 | you need to have RedBoot installed in your flash memory. A known to work | ||
53 | precompiled RedBoot binary is available from the following location: | ||
54 | |||
55 | ftp://ftp.netwinder.org/users/n/nico/ | ||
56 | ftp://ftp.arm.linux.org.uk/pub/linux/arm/people/nico/ | ||
57 | ftp://ftp.handhelds.org/pub/linux/arm/sa-1100-patches/ | ||
58 | |||
59 | Look for redboot-assabet*.tgz. Some installation infos are provided in | ||
60 | redboot-assabet*.txt. | ||
61 | |||
62 | |||
63 | Initial RedBoot configuration | ||
64 | ----------------------------- | ||
65 | |||
66 | The commands used here are explained in The RedBoot User's Guide available | ||
67 | on-line at http://sources.redhat.com/ecos/docs-latest/redboot/redboot.html. | ||
68 | Please refer to it for explanations. | ||
69 | |||
70 | If you have a CF network card (my Assabet kit contained a CF+ LP-E from | ||
71 | Socket Communications Inc.), you should strongly consider using it for TFTP | ||
72 | file transfers. You must insert it before RedBoot runs since it can't detect | ||
73 | it dynamically. | ||
74 | |||
75 | To initialize the flash directory: | ||
76 | |||
77 | fis init -f | ||
78 | |||
79 | To initialize the non-volatile settings, like whether you want to use BOOTP or | ||
80 | a static IP address, etc, use this command: | ||
81 | |||
82 | fconfig -i | ||
83 | |||
84 | |||
85 | Writing a kernel image into flash | ||
86 | --------------------------------- | ||
87 | |||
88 | First, the kernel image must be loaded into RAM. If you have the zImage file | ||
89 | available on a TFTP server: | ||
90 | |||
91 | load zImage -r -b 0x100000 | ||
92 | |||
93 | If you rather want to use Y-Modem upload over the serial port: | ||
94 | |||
95 | load -m ymodem -r -b 0x100000 | ||
96 | |||
97 | To write it to flash: | ||
98 | |||
99 | fis create "Linux kernel" -b 0x100000 -l 0xc0000 | ||
100 | |||
101 | |||
102 | Booting the kernel | ||
103 | ------------------ | ||
104 | |||
105 | The kernel still requires a filesystem to boot. A ramdisk image can be loaded | ||
106 | as follows: | ||
107 | |||
108 | load ramdisk_image.gz -r -b 0x800000 | ||
109 | |||
110 | Again, Y-Modem upload can be used instead of TFTP by replacing the file name | ||
111 | by '-y ymodem'. | ||
112 | |||
113 | Now the kernel can be retrieved from flash like this: | ||
114 | |||
115 | fis load "Linux kernel" | ||
116 | |||
117 | or loaded as described previously. To boot the kernel: | ||
118 | |||
119 | exec -b 0x100000 -l 0xc0000 | ||
120 | |||
121 | The ramdisk image could be stored into flash as well, but there are better | ||
122 | solutions for on-flash filesystems as mentioned below. | ||
123 | |||
124 | |||
125 | Using JFFS2 | ||
126 | ----------- | ||
127 | |||
128 | Using JFFS2 (the Second Journalling Flash File System) is probably the most | ||
129 | convenient way to store a writable filesystem into flash. JFFS2 is used in | ||
130 | conjunction with the MTD layer which is responsible for low-level flash | ||
131 | management. More information on the Linux MTD can be found on-line at: | ||
132 | http://www.linux-mtd.infradead.org/. A JFFS howto with some infos about | ||
133 | creating JFFS/JFFS2 images is available from the same site. | ||
134 | |||
135 | For instance, a sample JFFS2 image can be retrieved from the same FTP sites | ||
136 | mentioned below for the precompiled RedBoot image. | ||
137 | |||
138 | To load this file: | ||
139 | |||
140 | load sample_img.jffs2 -r -b 0x100000 | ||
141 | |||
142 | The result should look like: | ||
143 | |||
144 | RedBoot> load sample_img.jffs2 -r -b 0x100000 | ||
145 | Raw file loaded 0x00100000-0x00377424 | ||
146 | |||
147 | Now we must know the size of the unallocated flash: | ||
148 | |||
149 | fis free | ||
150 | |||
151 | Result: | ||
152 | |||
153 | RedBoot> fis free | ||
154 | 0x500E0000 .. 0x503C0000 | ||
155 | |||
156 | The values above may be different depending on the size of the filesystem and | ||
157 | the type of flash. See their usage below as an example and take care of | ||
158 | substituting yours appropriately. | ||
159 | |||
160 | We must determine some values: | ||
161 | |||
162 | size of unallocated flash: 0x503c0000 - 0x500e0000 = 0x2e0000 | ||
163 | size of the filesystem image: 0x00377424 - 0x00100000 = 0x277424 | ||
164 | |||
165 | We want to fit the filesystem image of course, but we also want to give it all | ||
166 | the remaining flash space as well. To write it: | ||
167 | |||
168 | fis unlock -f 0x500E0000 -l 0x2e0000 | ||
169 | fis erase -f 0x500E0000 -l 0x2e0000 | ||
170 | fis write -b 0x100000 -l 0x277424 -f 0x500E0000 | ||
171 | fis create "JFFS2" -n -f 0x500E0000 -l 0x2e0000 | ||
172 | |||
173 | Now the filesystem is associated to a MTD "partition" once Linux has discovered | ||
174 | what they are in the boot process. From Redboot, the 'fis list' command | ||
175 | displays them: | ||
176 | |||
177 | RedBoot> fis list | ||
178 | Name FLASH addr Mem addr Length Entry point | ||
179 | RedBoot 0x50000000 0x50000000 0x00020000 0x00000000 | ||
180 | RedBoot config 0x503C0000 0x503C0000 0x00020000 0x00000000 | ||
181 | FIS directory 0x503E0000 0x503E0000 0x00020000 0x00000000 | ||
182 | Linux kernel 0x50020000 0x00100000 0x000C0000 0x00000000 | ||
183 | JFFS2 0x500E0000 0x500E0000 0x002E0000 0x00000000 | ||
184 | |||
185 | However Linux should display something like: | ||
186 | |||
187 | SA1100 flash: probing 32-bit flash bus | ||
188 | SA1100 flash: Found 2 x16 devices at 0x0 in 32-bit mode | ||
189 | Using RedBoot partition definition | ||
190 | Creating 5 MTD partitions on "SA1100 flash": | ||
191 | 0x00000000-0x00020000 : "RedBoot" | ||
192 | 0x00020000-0x000e0000 : "Linux kernel" | ||
193 | 0x000e0000-0x003c0000 : "JFFS2" | ||
194 | 0x003c0000-0x003e0000 : "RedBoot config" | ||
195 | 0x003e0000-0x00400000 : "FIS directory" | ||
196 | |||
197 | What's important here is the position of the partition we are interested in, | ||
198 | which is the third one. Within Linux, this correspond to /dev/mtdblock2. | ||
199 | Therefore to boot Linux with the kernel and its root filesystem in flash, we | ||
200 | need this RedBoot command: | ||
201 | |||
202 | fis load "Linux kernel" | ||
203 | exec -b 0x100000 -l 0xc0000 -c "root=/dev/mtdblock2" | ||
204 | |||
205 | Of course other filesystems than JFFS might be used, like cramfs for example. | ||
206 | You might want to boot with a root filesystem over NFS, etc. It is also | ||
207 | possible, and sometimes more convenient, to flash a filesystem directly from | ||
208 | within Linux while booted from a ramdisk or NFS. The Linux MTD repository has | ||
209 | many tools to deal with flash memory as well, to erase it for example. JFFS2 | ||
210 | can then be mounted directly on a freshly erased partition and files can be | ||
211 | copied over directly. Etc... | ||
212 | |||
213 | |||
214 | RedBoot scripting | ||
215 | ----------------- | ||
216 | |||
217 | All the commands above aren't so useful if they have to be typed in every | ||
218 | time the Assabet is rebooted. Therefore it's possible to automatize the boot | ||
219 | process using RedBoot's scripting capability. | ||
220 | |||
221 | For example, I use this to boot Linux with both the kernel and the ramdisk | ||
222 | images retrieved from a TFTP server on the network: | ||
223 | |||
224 | RedBoot> fconfig | ||
225 | Run script at boot: false true | ||
226 | Boot script: | ||
227 | Enter script, terminate with empty line | ||
228 | >> load zImage -r -b 0x100000 | ||
229 | >> load ramdisk_ks.gz -r -b 0x800000 | ||
230 | >> exec -b 0x100000 -l 0xc0000 | ||
231 | >> | ||
232 | Boot script timeout (1000ms resolution): 3 | ||
233 | Use BOOTP for network configuration: true | ||
234 | GDB connection port: 9000 | ||
235 | Network debug at boot time: false | ||
236 | Update RedBoot non-volatile configuration - are you sure (y/n)? y | ||
237 | |||
238 | Then, rebooting the Assabet is just a matter of waiting for the login prompt. | ||
239 | |||
240 | |||
241 | |||
242 | Nicolas Pitre | ||
243 | nico@cam.org | ||
244 | June 12, 2001 | ||
245 | |||
246 | |||
247 | Status of peripherals in -rmk tree (updated 14/10/2001) | ||
248 | ------------------------------------------------------- | ||
249 | |||
250 | Assabet: | ||
251 | Serial ports: | ||
252 | Radio: TX, RX, CTS, DSR, DCD, RI | ||
253 | PM: Not tested. | ||
254 | COM: TX, RX, CTS, DSR, DCD, RTS, DTR, PM | ||
255 | PM: Not tested. | ||
256 | I2C: Implemented, not fully tested. | ||
257 | L3: Fully tested, pass. | ||
258 | PM: Not tested. | ||
259 | |||
260 | Video: | ||
261 | LCD: Fully tested. PM | ||
262 | (LCD doesn't like being blanked with | ||
263 | neponset connected) | ||
264 | Video out: Not fully | ||
265 | |||
266 | Audio: | ||
267 | UDA1341: | ||
268 | Playback: Fully tested, pass. | ||
269 | Record: Implemented, not tested. | ||
270 | PM: Not tested. | ||
271 | |||
272 | UCB1200: | ||
273 | Audio play: Implemented, not heavily tested. | ||
274 | Audio rec: Implemented, not heavily tested. | ||
275 | Telco audio play: Implemented, not heavily tested. | ||
276 | Telco audio rec: Implemented, not heavily tested. | ||
277 | POTS control: No | ||
278 | Touchscreen: Yes | ||
279 | PM: Not tested. | ||
280 | |||
281 | Other: | ||
282 | PCMCIA: | ||
283 | LPE: Fully tested, pass. | ||
284 | USB: No | ||
285 | IRDA: | ||
286 | SIR: Fully tested, pass. | ||
287 | FIR: Fully tested, pass. | ||
288 | PM: Not tested. | ||
289 | |||
290 | Neponset: | ||
291 | Serial ports: | ||
292 | COM1,2: TX, RX, CTS, DSR, DCD, RTS, DTR | ||
293 | PM: Not tested. | ||
294 | USB: Implemented, not heavily tested. | ||
295 | PCMCIA: Implemented, not heavily tested. | ||
296 | PM: Not tested. | ||
297 | CF: Implemented, not heavily tested. | ||
298 | PM: Not tested. | ||
299 | |||
300 | More stuff can be found in the -np (Nicolas Pitre's) tree. | ||
301 | |||
diff --git a/Documentation/arm/SA1100/Brutus b/Documentation/arm/SA1100/Brutus new file mode 100644 index 000000000000..2254c8f0b326 --- /dev/null +++ b/Documentation/arm/SA1100/Brutus | |||
@@ -0,0 +1,66 @@ | |||
1 | Brutus is an evaluation platform for the SA1100 manufactured by Intel. | ||
2 | For more details, see: | ||
3 | |||
4 | http://developer.intel.com/design/strong/applnots/sa1100lx/getstart.htm | ||
5 | |||
6 | To compile for Brutus, you must issue the following commands: | ||
7 | |||
8 | make brutus_config | ||
9 | make config | ||
10 | [accept all the defaults] | ||
11 | make zImage | ||
12 | |||
13 | The resulting kernel will end up in linux/arch/arm/boot/zImage. This file | ||
14 | must be loaded at 0xc0008000 in Brutus's memory and execution started at | ||
15 | 0xc0008000 as well with the value of registers r0 = 0 and r1 = 16 upon | ||
16 | entry. | ||
17 | |||
18 | But prior to execute the kernel, a ramdisk image must also be loaded in | ||
19 | memory. Use memory address 0xd8000000 for this. Note that the file | ||
20 | containing the (compressed) ramdisk image must not exceed 4 MB. | ||
21 | |||
22 | Typically, you'll need angelboot to load the kernel. | ||
23 | The following angelboot.opt file should be used: | ||
24 | |||
25 | ----- begin angelboot.opt ----- | ||
26 | base 0xc0008000 | ||
27 | entry 0xc0008000 | ||
28 | r0 0x00000000 | ||
29 | r1 0x00000010 | ||
30 | device /dev/ttyS0 | ||
31 | options "9600 8N1" | ||
32 | baud 115200 | ||
33 | otherfile ramdisk_img.gz | ||
34 | otherbase 0xd8000000 | ||
35 | ----- end angelboot.opt ----- | ||
36 | |||
37 | Then load the kernel and ramdisk with: | ||
38 | |||
39 | angelboot -f angelboot.opt zImage | ||
40 | |||
41 | The first Brutus serial port (assumed to be linked to /dev/ttyS0 on your | ||
42 | host PC) is used by angel to load the kernel and ramdisk image. The serial | ||
43 | console is provided through the second Brutus serial port. To access it, | ||
44 | you may use minicom configured with /dev/ttyS1, 9600 baud, 8N1, no flow | ||
45 | control. | ||
46 | |||
47 | Currently supported: | ||
48 | - RS232 serial ports | ||
49 | - audio output | ||
50 | - LCD screen | ||
51 | - keyboard | ||
52 | |||
53 | The actual Brutus support may not be complete without extra patches. | ||
54 | If such patches exist, they should be found from | ||
55 | ftp.netwinder.org/users/n/nico. | ||
56 | |||
57 | A full PCMCIA support is still missing, although it's possible to hack | ||
58 | some drivers in order to drive already inserted cards at boot time with | ||
59 | little modifications. | ||
60 | |||
61 | Any contribution is welcome. | ||
62 | |||
63 | Please send patches to nico@cam.org | ||
64 | |||
65 | Have Fun ! | ||
66 | |||
diff --git a/Documentation/arm/SA1100/CERF b/Documentation/arm/SA1100/CERF new file mode 100644 index 000000000000..b3d845301ef1 --- /dev/null +++ b/Documentation/arm/SA1100/CERF | |||
@@ -0,0 +1,29 @@ | |||
1 | *** The StrongARM version of the CerfBoard/Cube has been discontinued *** | ||
2 | |||
3 | The Intrinsyc CerfBoard is a StrongARM 1110-based computer on a board | ||
4 | that measures approximately 2" square. It includes an Ethernet | ||
5 | controller, an RS232-compatible serial port, a USB function port, and | ||
6 | one CompactFlash+ slot on the back. Pictures can be found at the | ||
7 | Intrinsyc website, http://www.intrinsyc.com. | ||
8 | |||
9 | This document describes the support in the Linux kernel for the | ||
10 | Intrinsyc CerfBoard. | ||
11 | |||
12 | Supported in this version: | ||
13 | - CompactFlash+ slot (select PCMCIA in General Setup and any options | ||
14 | that may be required) | ||
15 | - Onboard Crystal CS8900 Ethernet controller (Cerf CS8900A support in | ||
16 | Network Devices) | ||
17 | - Serial ports with a serial console (hardcoded to 38400 8N1) | ||
18 | |||
19 | In order to get this kernel onto your Cerf, you need a server that runs | ||
20 | both BOOTP and TFTP. Detailed instructions should have come with your | ||
21 | evaluation kit on how to use the bootloader. This series of commands | ||
22 | will suffice: | ||
23 | |||
24 | make ARCH=arm CROSS_COMPILE=arm-linux- cerfcube_defconfig | ||
25 | make ARCH=arm CROSS_COMPILE=arm-linux- zImage | ||
26 | make ARCH=arm CROSS_COMPILE=arm-linux- modules | ||
27 | cp arch/arm/boot/zImage <TFTP directory> | ||
28 | |||
29 | support@intrinsyc.com | ||
diff --git a/Documentation/arm/SA1100/FreeBird b/Documentation/arm/SA1100/FreeBird new file mode 100644 index 000000000000..eda28b3232e7 --- /dev/null +++ b/Documentation/arm/SA1100/FreeBird | |||
@@ -0,0 +1,21 @@ | |||
1 | Freebird-1.1 is produced by Legned(C) ,Inc. | ||
2 | (http://www.legend.com.cn) | ||
3 | and software/linux mainatined by Coventive(C),Inc. | ||
4 | (http://www.coventive.com) | ||
5 | |||
6 | Based on the Nicolas's strongarm kernel tree. | ||
7 | |||
8 | =============================================================== | ||
9 | Maintainer: | ||
10 | |||
11 | Chester Kuo <chester@coventive.com> | ||
12 | <chester@linux.org.tw> | ||
13 | |||
14 | Author : | ||
15 | Tim wu <timwu@coventive.com> | ||
16 | CIH <cih@coventive.com> | ||
17 | Eric Peng <ericpeng@coventive.com> | ||
18 | Jeff Lee <jeff_lee@coventive.com> | ||
19 | Allen Cheng | ||
20 | Tony Liu <tonyliu@coventive.com> | ||
21 | |||
diff --git a/Documentation/arm/SA1100/GraphicsClient b/Documentation/arm/SA1100/GraphicsClient new file mode 100644 index 000000000000..8fa7e8027ff1 --- /dev/null +++ b/Documentation/arm/SA1100/GraphicsClient | |||
@@ -0,0 +1,98 @@ | |||
1 | ADS GraphicsClient Plus Single Board Computer | ||
2 | |||
3 | For more details, contact Applied Data Systems or see | ||
4 | http://www.applieddata.net/products.html | ||
5 | |||
6 | The original Linux support for this product has been provided by | ||
7 | Nicolas Pitre <nico@cam.org>. Continued development work by | ||
8 | Woojung Huh <whuh@applieddata.net> | ||
9 | |||
10 | It's currently possible to mount a root filesystem via NFS providing a | ||
11 | complete Linux environment. Otherwise a ramdisk image may be used. The | ||
12 | board supports MTD/JFFS, so you could also mount something on there. | ||
13 | |||
14 | Use 'make graphicsclient_config' before any 'make config'. This will set up | ||
15 | defaults for GraphicsClient Plus support. | ||
16 | |||
17 | The kernel zImage is linked to be loaded and executed at 0xc0200000. | ||
18 | Also the following registers should have the specified values upon entry: | ||
19 | |||
20 | r0 = 0 | ||
21 | r1 = 29 (this is the GraphicsClient architecture number) | ||
22 | |||
23 | Linux can be used with the ADS BootLoader that ships with the | ||
24 | newer rev boards. See their documentation on how to load Linux. | ||
25 | Angel is not available for the GraphicsClient Plus AFAIK. | ||
26 | |||
27 | There is a board known as just the GraphicsClient that ADS used to | ||
28 | produce but has end of lifed. This code will not work on the older | ||
29 | board with the ADS bootloader, but should still work with Angel, | ||
30 | as outlined below. In any case, if you're planning on deploying | ||
31 | something en masse, you should probably get the newer board. | ||
32 | |||
33 | If using Angel on the older boards, here is a typical angel.opt option file | ||
34 | if the kernel is loaded through the Angel Debug Monitor: | ||
35 | |||
36 | ----- begin angelboot.opt ----- | ||
37 | base 0xc0200000 | ||
38 | entry 0xc0200000 | ||
39 | r0 0x00000000 | ||
40 | r1 0x0000001d | ||
41 | device /dev/ttyS1 | ||
42 | options "38400 8N1" | ||
43 | baud 115200 | ||
44 | #otherfile ramdisk.gz | ||
45 | #otherbase 0xc0800000 | ||
46 | exec minicom | ||
47 | ----- end angelboot.opt ----- | ||
48 | |||
49 | Then the kernel (and ramdisk if otherfile/otherbase lines above are | ||
50 | uncommented) would be loaded with: | ||
51 | |||
52 | angelboot -f angelboot.opt zImage | ||
53 | |||
54 | Here it is assumed that the board is connected to ttyS1 on your PC | ||
55 | and that minicom is preconfigured with /dev/ttyS1, 38400 baud, 8N1, no flow | ||
56 | control by default. | ||
57 | |||
58 | If any other bootloader is used, ensure it accomplish the same, especially | ||
59 | for r0/r1 register values before jumping into the kernel. | ||
60 | |||
61 | |||
62 | Supported peripherals: | ||
63 | - SA1100 LCD frame buffer (8/16bpp...sort of) | ||
64 | - on-board SMC 92C96 ethernet NIC | ||
65 | - SA1100 serial port | ||
66 | - flash memory access (MTD/JFFS) | ||
67 | - pcmcia | ||
68 | - touchscreen(ucb1200) | ||
69 | - ps/2 keyboard | ||
70 | - console on LCD screen | ||
71 | - serial ports (ttyS[0-2]) | ||
72 | - ttyS0 is default for serial console | ||
73 | - Smart I/O (ADC, keypad, digital inputs, etc) | ||
74 | See http://www.applieddata.com/developers/linux for IOCTL documentation | ||
75 | and example user space code. ps/2 keybd is multiplexed through this driver | ||
76 | |||
77 | To do: | ||
78 | - UCB1200 audio with new ucb_generic layer | ||
79 | - everything else! :-) | ||
80 | |||
81 | Notes: | ||
82 | |||
83 | - The flash on board is divided into 3 partitions. mtd0 is where | ||
84 | the ADS boot ROM and zImage is stored. It's been marked as | ||
85 | read-only to keep you from blasting over the bootloader. :) mtd1 is | ||
86 | for the ramdisk.gz image. mtd2 is user flash space and can be | ||
87 | utilized for either JFFS or if you're feeling crazy, running ext2 | ||
88 | on top of it. If you're not using the ADS bootloader, you're | ||
89 | welcome to blast over the mtd1 partition also. | ||
90 | |||
91 | - 16bpp mode requires a different cable than what ships with the board. | ||
92 | Contact ADS or look through the manual to wire your own. Currently, | ||
93 | if you compile with 16bit mode support and switch into a lower bpp | ||
94 | mode, the timing is off so the image is corrupted. This will be | ||
95 | fixed soon. | ||
96 | |||
97 | Any contribution can be sent to nico@cam.org and will be greatly welcome! | ||
98 | |||
diff --git a/Documentation/arm/SA1100/GraphicsMaster b/Documentation/arm/SA1100/GraphicsMaster new file mode 100644 index 000000000000..dd28745ac521 --- /dev/null +++ b/Documentation/arm/SA1100/GraphicsMaster | |||
@@ -0,0 +1,53 @@ | |||
1 | ADS GraphicsMaster Single Board Computer | ||
2 | |||
3 | For more details, contact Applied Data Systems or see | ||
4 | http://www.applieddata.net/products.html | ||
5 | |||
6 | The original Linux support for this product has been provided by | ||
7 | Nicolas Pitre <nico@cam.org>. Continued development work by | ||
8 | Woojung Huh <whuh@applieddata.net> | ||
9 | |||
10 | Use 'make graphicsmaster_config' before any 'make config'. | ||
11 | This will set up defaults for GraphicsMaster support. | ||
12 | |||
13 | The kernel zImage is linked to be loaded and executed at 0xc0400000. | ||
14 | |||
15 | Linux can be used with the ADS BootLoader that ships with the | ||
16 | newer rev boards. See their documentation on how to load Linux. | ||
17 | |||
18 | Supported peripherals: | ||
19 | - SA1100 LCD frame buffer (8/16bpp...sort of) | ||
20 | - SA1111 USB Master | ||
21 | - on-board SMC 92C96 ethernet NIC | ||
22 | - SA1100 serial port | ||
23 | - flash memory access (MTD/JFFS) | ||
24 | - pcmcia, compact flash | ||
25 | - touchscreen(ucb1200) | ||
26 | - ps/2 keyboard | ||
27 | - console on LCD screen | ||
28 | - serial ports (ttyS[0-2]) | ||
29 | - ttyS0 is default for serial console | ||
30 | - Smart I/O (ADC, keypad, digital inputs, etc) | ||
31 | See http://www.applieddata.com/developers/linux for IOCTL documentation | ||
32 | and example user space code. ps/2 keybd is multiplexed through this driver | ||
33 | |||
34 | To do: | ||
35 | - everything else! :-) | ||
36 | |||
37 | Notes: | ||
38 | |||
39 | - The flash on board is divided into 3 partitions. mtd0 is where | ||
40 | the zImage is stored. It's been marked as read-only to keep you | ||
41 | from blasting over the bootloader. :) mtd1 is | ||
42 | for the ramdisk.gz image. mtd2 is user flash space and can be | ||
43 | utilized for either JFFS or if you're feeling crazy, running ext2 | ||
44 | on top of it. If you're not using the ADS bootloader, you're | ||
45 | welcome to blast over the mtd1 partition also. | ||
46 | |||
47 | - 16bpp mode requires a different cable than what ships with the board. | ||
48 | Contact ADS or look through the manual to wire your own. Currently, | ||
49 | if you compile with 16bit mode support and switch into a lower bpp | ||
50 | mode, the timing is off so the image is corrupted. This will be | ||
51 | fixed soon. | ||
52 | |||
53 | Any contribution can be sent to nico@cam.org and will be greatly welcome! | ||
diff --git a/Documentation/arm/SA1100/HUW_WEBPANEL b/Documentation/arm/SA1100/HUW_WEBPANEL new file mode 100644 index 000000000000..fd56b48d4833 --- /dev/null +++ b/Documentation/arm/SA1100/HUW_WEBPANEL | |||
@@ -0,0 +1,17 @@ | |||
1 | The HUW_WEBPANEL is a product of the german company Hoeft & Wessel AG | ||
2 | |||
3 | If you want more information, please visit | ||
4 | http://www.hoeft-wessel.de | ||
5 | |||
6 | To build the kernel: | ||
7 | make huw_webpanel_config | ||
8 | make oldconfig | ||
9 | [accept all defaults] | ||
10 | make zImage | ||
11 | |||
12 | Mostly of the work is done by: | ||
13 | Roman Jordan jor@hoeft-wessel.de | ||
14 | Christoph Schulz schu@hoeft-wessel.de | ||
15 | |||
16 | 2000/12/18/ | ||
17 | |||
diff --git a/Documentation/arm/SA1100/Itsy b/Documentation/arm/SA1100/Itsy new file mode 100644 index 000000000000..3b594534323b --- /dev/null +++ b/Documentation/arm/SA1100/Itsy | |||
@@ -0,0 +1,39 @@ | |||
1 | Itsy is a research project done by the Western Research Lab, and Systems | ||
2 | Research Center in Palo Alto, CA. The Itsy project is one of several | ||
3 | research projects at Compaq that are related to pocket computing. | ||
4 | |||
5 | For more information, see: | ||
6 | |||
7 | http://www.research.digital.com/wrl/itsy/index.html | ||
8 | |||
9 | Notes on initial 2.4 Itsy support (8/27/2000) : | ||
10 | The port was done on an Itsy version 1.5 machine with a daughtercard with | ||
11 | 64 Meg of DRAM and 32 Meg of Flash. The initial work includes support for | ||
12 | serial console (to see what you're doing). No other devices have been | ||
13 | enabled. | ||
14 | |||
15 | To build, do a "make menuconfig" (or xmenuconfig) and select Itsy support. | ||
16 | Disable Flash and LCD support. and then do a make zImage. | ||
17 | Finally, you will need to cd to arch/arm/boot/tools and execute a make there | ||
18 | to build the params-itsy program used to boot the kernel. | ||
19 | |||
20 | In order to install the port of 2.4 to the itsy, You will need to set the | ||
21 | configuration parameters in the monitor as follows: | ||
22 | Arg 1:0x08340000, Arg2: 0xC0000000, Arg3:18 (0x12), Arg4:0 | ||
23 | Make sure the start-routine address is set to 0x00060000. | ||
24 | |||
25 | Next, flash the params-itsy program to 0x00060000 ("p 1 0x00060000" in the | ||
26 | flash menu) Flash the kernel in arch/arm/boot/zImage into 0x08340000 | ||
27 | ("p 1 0x00340000"). Finally flash an initial ramdisk into 0xC8000000 | ||
28 | ("p 2 0x0") We used ramdisk-2-30.gz from the 0.11 version directory on | ||
29 | handhelds.org. | ||
30 | |||
31 | The serial connection we established was at: | ||
32 | 8-bit data, no parity, 1 stop bit(s), 115200.00 b/s. in the monitor, in the | ||
33 | params-itsy program, and in the kernel itself. This can be changed, but | ||
34 | not easily. The monitor parameters are easily changed, the params program | ||
35 | setup is assembly outl's, and the kernel is a configuration item specific to | ||
36 | the itsy. (i.e. grep for CONFIG_SA1100_ITSY and you'll find where it is.) | ||
37 | |||
38 | |||
39 | This should get you a properly booting 2.4 kernel on the itsy. | ||
diff --git a/Documentation/arm/SA1100/LART b/Documentation/arm/SA1100/LART new file mode 100644 index 000000000000..2f73f513e16a --- /dev/null +++ b/Documentation/arm/SA1100/LART | |||
@@ -0,0 +1,14 @@ | |||
1 | Linux Advanced Radio Terminal (LART) | ||
2 | ------------------------------------ | ||
3 | |||
4 | The LART is a small (7.5 x 10cm) SA-1100 board, designed for embedded | ||
5 | applications. It has 32 MB DRAM, 4MB Flash ROM, double RS232 and all | ||
6 | other StrongARM-gadgets. Almost all SA signals are directly accessible | ||
7 | through a number of connectors. The powersupply accepts voltages | ||
8 | between 3.5V and 16V and is overdimensioned to support a range of | ||
9 | daughterboards. A quad Ethernet / IDE / PS2 / sound daughterboard | ||
10 | is under development, with plenty of others in different stages of | ||
11 | planning. | ||
12 | |||
13 | The hardware designs for this board have been released under an open license; | ||
14 | see the LART page at http://www.lart.tudelft.nl/ for more information. | ||
diff --git a/Documentation/arm/SA1100/PLEB b/Documentation/arm/SA1100/PLEB new file mode 100644 index 000000000000..92cae066908d --- /dev/null +++ b/Documentation/arm/SA1100/PLEB | |||
@@ -0,0 +1,11 @@ | |||
1 | The PLEB project was started as a student initiative at the School of | ||
2 | Computer Science and Engineering, University of New South Wales to make a | ||
3 | pocket computer capable of running the Linux Kernel. | ||
4 | |||
5 | PLEB support has yet to be fully integrated. | ||
6 | |||
7 | For more information, see: | ||
8 | |||
9 | http://www.cse.unsw.edu.au/~pleb/ | ||
10 | |||
11 | |||
diff --git a/Documentation/arm/SA1100/Pangolin b/Documentation/arm/SA1100/Pangolin new file mode 100644 index 000000000000..077a6120e129 --- /dev/null +++ b/Documentation/arm/SA1100/Pangolin | |||
@@ -0,0 +1,23 @@ | |||
1 | Pangolin is a StrongARM 1110-based evaluation platform produced | ||
2 | by Dialogue Technology (http://www.dialogue.com.tw/). | ||
3 | It has EISA slots for ease of configuration with SDRAM/Flash | ||
4 | memory card, USB/Serial/Audio card, Compact Flash card, | ||
5 | PCMCIA/IDE card and TFT-LCD card. | ||
6 | |||
7 | To compile for Pangolin, you must issue the following commands: | ||
8 | |||
9 | make pangolin_config | ||
10 | make oldconfig | ||
11 | make zImage | ||
12 | |||
13 | Supported peripherals: | ||
14 | - SA1110 serial port (UART1/UART2/UART3) | ||
15 | - flash memory access | ||
16 | - compact flash driver | ||
17 | - UDA1341 sound driver | ||
18 | - SA1100 LCD controller for 800x600 16bpp TFT-LCD | ||
19 | - MQ-200 driver for 800x600 16bpp TFT-LCD | ||
20 | - Penmount(touch panel) driver | ||
21 | - PCMCIA driver | ||
22 | - SMC91C94 LAN driver | ||
23 | - IDE driver (experimental) | ||
diff --git a/Documentation/arm/SA1100/Tifon b/Documentation/arm/SA1100/Tifon new file mode 100644 index 000000000000..dd1934d9c851 --- /dev/null +++ b/Documentation/arm/SA1100/Tifon | |||
@@ -0,0 +1,7 @@ | |||
1 | Tifon | ||
2 | ----- | ||
3 | |||
4 | More info has to come... | ||
5 | |||
6 | Contact: Peter Danielsson <peter.danielsson@era-t.ericsson.se> | ||
7 | |||
diff --git a/Documentation/arm/SA1100/Victor b/Documentation/arm/SA1100/Victor new file mode 100644 index 000000000000..01e81fc49461 --- /dev/null +++ b/Documentation/arm/SA1100/Victor | |||
@@ -0,0 +1,16 @@ | |||
1 | Victor is known as a "digital talking book player" manufactured by | ||
2 | VisuAide, Inc. to be used by blind people. | ||
3 | |||
4 | For more information related to Victor, see: | ||
5 | |||
6 | http://www.visuaide.com/victor | ||
7 | |||
8 | Of course Victor is using Linux as its main operating system. | ||
9 | The Victor implementation for Linux is maintained by Nicolas Pitre: | ||
10 | |||
11 | nico@visuaide.com | ||
12 | nico@cam.org | ||
13 | |||
14 | For any comments, please feel free to contact me through the above | ||
15 | addresses. | ||
16 | |||
diff --git a/Documentation/arm/SA1100/Yopy b/Documentation/arm/SA1100/Yopy new file mode 100644 index 000000000000..e14f16d836ac --- /dev/null +++ b/Documentation/arm/SA1100/Yopy | |||
@@ -0,0 +1,2 @@ | |||
1 | See http://www.yopydeveloper.org for more. | ||
2 | |||
diff --git a/Documentation/arm/SA1100/empeg b/Documentation/arm/SA1100/empeg new file mode 100644 index 000000000000..4ece4849a42c --- /dev/null +++ b/Documentation/arm/SA1100/empeg | |||
@@ -0,0 +1,2 @@ | |||
1 | See ../empeg/README | ||
2 | |||
diff --git a/Documentation/arm/SA1100/nanoEngine b/Documentation/arm/SA1100/nanoEngine new file mode 100644 index 000000000000..fc431cbfefc2 --- /dev/null +++ b/Documentation/arm/SA1100/nanoEngine | |||
@@ -0,0 +1,11 @@ | |||
1 | nanoEngine | ||
2 | ---------- | ||
3 | |||
4 | "nanoEngine" is a SA1110 based single board computer from | ||
5 | Bright Star Engineering Inc. See www.brightstareng.com/arm | ||
6 | for more info. | ||
7 | (Ref: Stuart Adams <sja@brightstareng.com>) | ||
8 | |||
9 | Also visit Larry Doolittle's "Linux for the nanoEngine" site: | ||
10 | http://recycle.lbl.gov/~ldoolitt/bse/ | ||
11 | |||
diff --git a/Documentation/arm/SA1100/serial_UART b/Documentation/arm/SA1100/serial_UART new file mode 100644 index 000000000000..aea2e91ca0ef --- /dev/null +++ b/Documentation/arm/SA1100/serial_UART | |||
@@ -0,0 +1,47 @@ | |||
1 | The SA1100 serial port had its major/minor numbers officially assigned: | ||
2 | |||
3 | > Date: Sun, 24 Sep 2000 21:40:27 -0700 | ||
4 | > From: H. Peter Anvin <hpa@transmeta.com> | ||
5 | > To: Nicolas Pitre <nico@CAM.ORG> | ||
6 | > Cc: Device List Maintainer <device@lanana.org> | ||
7 | > Subject: Re: device | ||
8 | > | ||
9 | > Okay. Note that device numbers 204 and 205 are used for "low density | ||
10 | > serial devices", so you will have a range of minors on those majors (the | ||
11 | > tty device layer handles this just fine, so you don't have to worry about | ||
12 | > doing anything special.) | ||
13 | > | ||
14 | > So your assignments are: | ||
15 | > | ||
16 | > 204 char Low-density serial ports | ||
17 | > 5 = /dev/ttySA0 SA1100 builtin serial port 0 | ||
18 | > 6 = /dev/ttySA1 SA1100 builtin serial port 1 | ||
19 | > 7 = /dev/ttySA2 SA1100 builtin serial port 2 | ||
20 | > | ||
21 | > 205 char Low-density serial ports (alternate device) | ||
22 | > 5 = /dev/cusa0 Callout device for ttySA0 | ||
23 | > 6 = /dev/cusa1 Callout device for ttySA1 | ||
24 | > 7 = /dev/cusa2 Callout device for ttySA2 | ||
25 | > | ||
26 | |||
27 | If you're not using devfs, you must create those inodes in /dev | ||
28 | on the root filesystem used by your SA1100-based device: | ||
29 | |||
30 | mknod ttySA0 c 204 5 | ||
31 | mknod ttySA1 c 204 6 | ||
32 | mknod ttySA2 c 204 7 | ||
33 | mknod cusa0 c 205 5 | ||
34 | mknod cusa1 c 205 6 | ||
35 | mknod cusa2 c 205 7 | ||
36 | |||
37 | In addition to the creation of the appropriate device nodes above, you | ||
38 | must ensure your user space applications make use of the correct device | ||
39 | name. The classic example is the content of the /etc/inittab file where | ||
40 | you might have a getty process started on ttyS0. In this case: | ||
41 | |||
42 | - replace occurrences of ttyS0 with ttySA0, ttyS1 with ttySA1, etc. | ||
43 | |||
44 | - don't forget to add 'ttySA0', 'console', or the appropriate tty name | ||
45 | in /etc/securetty for root to be allowed to login as well. | ||
46 | |||
47 | |||