| ADS GraphicsClient Plus Single Board Computer |
| |
| For more details, contact Applied Data Systems or see |
| http://www.applieddata.net/products.html |
| |
| The original Linux support for this product has been provided by |
| Nicolas Pitre <nico@cam.org>. Continued development work by |
| Woojung Huh <whuh@applieddata.net> |
| |
| It's currently possible to mount a root filesystem via NFS providing a |
| complete Linux environment. Otherwise a ramdisk image may be used. The |
| board supports MTD/JFFS, so you could also mount something on there. |
| |
| Use 'make graphicsclient_config' before any 'make config'. This will set up |
| defaults for GraphicsClient Plus support. |
| |
| The kernel zImage is linked to be loaded and executed at 0xc0200000. |
| Also the following registers should have the specified values upon entry: |
| |
| r0 = 0 |
| r1 = 29 (this is the GraphicsClient architecture number) |
| |
| Linux can be used with the ADS BootLoader that ships with the |
| newer rev boards. See their documentation on how to load Linux. |
| Angel is not available for the GraphicsClient Plus AFAIK. |
| |
| There is a board known as just the GraphicsClient that ADS used to |
| produce but has end of lifed. This code will not work on the older |
| board with the ADS bootloader, but should still work with Angel, |
| as outlined below. In any case, if you're planning on deploying |
| something en masse, you should probably get the newer board. |
| |
| If using Angel on the older boards, here is a typical angel.opt option file |
| if the kernel is loaded through the Angel Debug Monitor: |
| |
| ----- begin angelboot.opt ----- |
| base 0xc0200000 |
| entry 0xc0200000 |
| r0 0x00000000 |
| r1 0x0000001d |
| device /dev/ttyS1 |
| options "38400 8N1" |
| baud 115200 |
| #otherfile ramdisk.gz |
| #otherbase 0xc0800000 |
| exec minicom |
| ----- end angelboot.opt ----- |
| |
| Then the kernel (and ramdisk if otherfile/otherbase lines above are |
| uncommented) would be loaded with: |
| |
| angelboot -f angelboot.opt zImage |
| |
| Here it is assumed that the board is connected to ttyS1 on your PC |
| and that minicom is preconfigured with /dev/ttyS1, 38400 baud, 8N1, no flow |
| control by default. |
| |
| If any other bootloader is used, ensure it accomplish the same, especially |
| for r0/r1 register values before jumping into the kernel. |
| |
| |
| Supported peripherals: |
| - SA1100 LCD frame buffer (8/16bpp...sort of) |
| - on-board SMC 92C96 ethernet NIC |
| - SA1100 serial port |
| - flash memory access (MTD/JFFS) |
| - pcmcia |
| - touchscreen(ucb1200) |
| - ps/2 keyboard |
| - console on LCD screen |
| - serial ports (ttyS[0-2]) |
| - ttyS0 is default for serial console |
| - Smart I/O (ADC, keypad, digital inputs, etc) |
| See http://www.applieddata.com/developers/linux for IOCTL documentation |
| and example user space code. ps/2 keybd is multiplexed through this driver |
| |
| To do: |
| - UCB1200 audio with new ucb_generic layer |
| - everything else! :-) |
| |
| Notes: |
| |
| - The flash on board is divided into 3 partitions. mtd0 is where |
| the ADS boot ROM and zImage is stored. It's been marked as |
| read-only to keep you from blasting over the bootloader. :) mtd1 is |
| for the ramdisk.gz image. mtd2 is user flash space and can be |
| utilized for either JFFS or if you're feeling crazy, running ext2 |
| on top of it. If you're not using the ADS bootloader, you're |
| welcome to blast over the mtd1 partition also. |
| |
| - 16bpp mode requires a different cable than what ships with the board. |
| Contact ADS or look through the manual to wire your own. Currently, |
| if you compile with 16bit mode support and switch into a lower bpp |
| mode, the timing is off so the image is corrupted. This will be |
| fixed soon. |
| |
| Any contribution can be sent to nico@cam.org and will be greatly welcome! |
| |