1ADS GraphicsClient Plus Single Board Computer
2
3For more details, contact Applied Data Systems or see
4http://www.applieddata.net/products.html
5
6The original Linux support for this product has been provided by 
7Nicolas Pitre <nico@fluxnic.net>. Continued development work by
8Woojung Huh <whuh@applieddata.net>
9
10It's currently possible to mount a root filesystem via NFS providing a
11complete Linux environment.  Otherwise a ramdisk image may be used.  The
12board supports MTD/JFFS, so you could also mount something on there.
13
14Use 'make graphicsclient_config' before any 'make config'.  This will set up
15defaults for GraphicsClient Plus support.
16
17The kernel zImage is linked to be loaded and executed at 0xc0200000.  
18Also the following registers should have the specified values upon entry:
19
20	r0 = 0
21	r1 = 29	(this is the GraphicsClient architecture number)
22
23Linux can  be used with the ADS BootLoader that ships with the
24newer rev boards. See their documentation on how to load Linux.
25Angel is not available for the GraphicsClient Plus AFAIK.
26
27There is a  board known as just the GraphicsClient that ADS used to
28produce but has end of lifed. This code will not work on the older
29board with the ADS bootloader, but should still work with Angel,
30as outlined below.  In any case, if you're planning on deploying
31something en masse, you should probably get the newer board.
32
33If using Angel on the older boards, here is a typical angel.opt option file
34if the kernel is loaded through the Angel Debug Monitor:
35
36----- begin angelboot.opt -----
37base 0xc0200000
38entry 0xc0200000
39r0 0x00000000
40r1 0x0000001d
41device /dev/ttyS1
42options "38400 8N1"
43baud 115200
44#otherfile ramdisk.gz
45#otherbase 0xc0800000
46exec minicom
47----- end angelboot.opt -----
48
49Then the kernel (and ramdisk if otherfile/otherbase lines above are
50uncommented) would be loaded with:
51
52	angelboot -f angelboot.opt zImage
53
54Here it is assumed that the board is connected to ttyS1 on your PC
55and that minicom is preconfigured with /dev/ttyS1, 38400 baud, 8N1, no flow
56control by default.
57
58If any other bootloader is used, ensure it accomplish the same, especially
59for r0/r1 register values before jumping into the kernel.
60
61
62Supported 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.eurotech-inc.com/linux-sbc.asp for IOCTL documentation
75  and example user space code. ps/2 keybd is multiplexed through this driver
76
77To do:
78- UCB1200 audio with new ucb_generic layer
79- everything else!  :-)
80
81Notes:
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
97Any contribution can be sent to nico@fluxnic.net and will be greatly welcome!
98
99