| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 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 | 
| Nicolas Pitre | 2f82af0 | 2009-09-14 03:25:28 -0400 | [diff] [blame] | 7 | Nicolas Pitre <nico@fluxnic.net>. Continued development work by | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 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) | 
| Justin P. Mattock | 0ea6e61 | 2010-07-23 20:51:24 -0700 | [diff] [blame^] | 74 | See http://www.eurotech-inc.com/linux-sbc.asp for IOCTL documentation | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 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 |  | 
| Nicolas Pitre | 2f82af0 | 2009-09-14 03:25:28 -0400 | [diff] [blame] | 97 | Any contribution can be sent to nico@fluxnic.net and will be greatly welcome! | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 98 |  |