Merge tag 'drm-next-2019-07-19' of git://anongit.freedesktop.org/drm/drm
[sfrench/cifs-2.6.git] / Documentation / arm / sa1100 / graphicsclient.rst
1 =============================================
2 ADS GraphicsClient Plus Single Board Computer
3 =============================================
4
5 For more details, contact Applied Data Systems or see
6 http://www.applieddata.net/products.html
7
8 The original Linux support for this product has been provided by
9 Nicolas Pitre <nico@fluxnic.net>. Continued development work by
10 Woojung Huh <whuh@applieddata.net>
11
12 It's currently possible to mount a root filesystem via NFS providing a
13 complete Linux environment.  Otherwise a ramdisk image may be used.  The
14 board supports MTD/JFFS, so you could also mount something on there.
15
16 Use 'make graphicsclient_config' before any 'make config'.  This will set up
17 defaults for GraphicsClient Plus support.
18
19 The kernel zImage is linked to be loaded and executed at 0xc0200000.
20 Also the following registers should have the specified values upon entry::
21
22         r0 = 0
23         r1 = 29 (this is the GraphicsClient architecture number)
24
25 Linux can  be used with the ADS BootLoader that ships with the
26 newer rev boards. See their documentation on how to load Linux.
27 Angel is not available for the GraphicsClient Plus AFAIK.
28
29 There is a  board known as just the GraphicsClient that ADS used to
30 produce but has end of lifed. This code will not work on the older
31 board with the ADS bootloader, but should still work with Angel,
32 as outlined below.  In any case, if you're planning on deploying
33 something en masse, you should probably get the newer board.
34
35 If using Angel on the older boards, here is a typical angel.opt option file
36 if the kernel is loaded through the Angel Debug Monitor::
37
38         base 0xc0200000
39         entry 0xc0200000
40         r0 0x00000000
41         r1 0x0000001d
42         device /dev/ttyS1
43         options "38400 8N1"
44         baud 115200
45         #otherfile ramdisk.gz
46         #otherbase 0xc0800000
47         exec minicom
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 =====================
64
65 - SA1100 LCD frame buffer (8/16bpp...sort of)
66 - on-board SMC 92C96 ethernet NIC
67 - SA1100 serial port
68 - flash memory access (MTD/JFFS)
69 - pcmcia
70 - touchscreen(ucb1200)
71 - ps/2 keyboard
72 - console on LCD screen
73 - serial ports (ttyS[0-2])
74   - ttyS0 is default for serial console
75 - Smart I/O (ADC, keypad, digital inputs, etc)
76   See http://www.eurotech-inc.com/linux-sbc.asp for IOCTL documentation
77   and example user space code. ps/2 keybd is multiplexed through this driver
78
79 To do
80 =====
81
82 - UCB1200 audio with new ucb_generic layer
83 - everything else!  :-)
84
85 Notes
86 =====
87
88 - The flash on board is divided into 3 partitions.  mtd0 is where
89   the ADS boot ROM and zImage is stored.  It's been marked as
90   read-only to keep you from blasting over the bootloader. :)  mtd1 is
91   for the ramdisk.gz image.  mtd2 is user flash space and can be
92   utilized for either JFFS or if you're feeling crazy, running ext2
93   on top of it. If you're not using the ADS bootloader, you're
94   welcome to blast over the mtd1 partition also.
95
96 - 16bpp mode requires a different cable than what ships with the board.
97   Contact ADS or look through the manual to wire your own. Currently,
98   if you compile with 16bit mode support and switch into a lower bpp
99   mode, the timing is off so the image is corrupted.  This will be
100   fixed soon.
101
102 Any contribution can be sent to nico@fluxnic.net and will be greatly welcome!