In message <ca308cf851.rcomp@xxxxxxxxxxxxxxxxxxx> A Rawnsley <rcomp@xxxxxxxxxxx> wrote: > In message <22e866f851.chris@xxxxxxxxxxxxxxxx> > Chris Hall <chris@xxxxxxxxxx> wrote: >> There is a new SD card image on the beagleboard web site. I do not >> think you should use it at present unless you are determined. The Sd >> card image is rather different. > I don't think ARMini users need to be altering the contents of the SD > cards until such time as we issue a formal update - currently planned > for August/Sept time, hopefully coinciding with clearing our backlog. > AFAIK the updated image on the BB website is mainly to accommodate the > latest revision of the older "original" BB, which is irrelevant to > ARMini users anyway. > Sorry to pour cold water on the thread, but it is quite important that > the RISC OS portion of ARMinis is kept "in step" with what we're > doing, so that we can properly support and manage things. It's part > of the service! :) > Andrew The new SD card image on the beagleboard.org web site has been prompted by a change to the original Beagleboard (i.e. non-XM) which now has a slightly different memory chip fitted. They have taken this opportunity to make a change to the 'bootstrap' loaders 'MLO' and 'u-Boot.bin' on the SD card so that a 'foolproof' way of reflashing the NAND memory on the classic Beagleboard is provided to the user. This was the source of many complaints as it was possible to wrongly programme the NAND memory and cause the board to fail to boot up. As a principle they have made the new SD card image forwards and backwards compatible so that a single card image will work on all types of Beagleboard. When I saw that a new 'C5' revision of the Beagleboard was to be released I overlooked the fact that this was the 'classic (non-XM) Beagleboard and downloaded the new SD card image to play with it. This is a somewhat tortuous process (as the SD card format is actually quite complex and is not WYSIWYG) as I have found only one reliable method (there may be others). To prepare the SD card I first create a Ubuntu start up CD (see detail [1] below). I then boot my Windows computer from that CD into Ubuntu (see detail [2] below) and use the Disk Utility to erase and format a 4G byte SD card (see detail [3] below and screenshot at http://www.svrsig.org/images/UBscr.gif ). This utility is the only one I have found that actually tells you what is on the SD card! I then boot into Windows and use Win32DiskImager to write the card image (all partitions) onto the card (see detail [4] below). The SD card should now contain the following files in the root partition. This partition is all that Windows will see: MLO - 24k - X-loader which loads u-boot.bin u-boot.bin - 279k - this issues commands to load the kernel uEnv.txt - 1k - parameters/commands affecting the kernel UEnv.txt.orig - 1k - in case you alter it and change your mind user.txt - 1k - not sure - not present on XM 117 Mbytes free The file 'UEnv.txt' contains the arguments: console=ttyS2,115200n8 camera=none This provides the information to the system that starts it up. Earlier card images had a different MLO and u-boot.bin which looked for files 'boot.scr' and 'user.scr'. Versions of these that had the necessary commands to load RISC OS have been created for RISC OS users. In this newer SD card image, it is a plain text file 'uEnv.txt' that allows us to force RISC OS as the preferred operating system by including the following commands in that file: uenvcmd=fatload mmc ${mmcdev} ${loadaddr} riscos;go ${loadaddr} and copy the file 'riscos' (the RISCOS ROM image) onto the card. The file 'user.txt' (on the non-XM SD card image) contains the boot instructions: writemlo=ext2load mmc 0:2 82000000 /boot/MLO; nandecc hw; nand erase.part x-loader; nand write 82000000 0 ${filesize} writeuboot=ext2load mmc 0:2 82000000 /boot/u-boot.bin; nandecc sw; nand erase 80000 160000; nand write 82000000 80000 160000 writeuimage=ext2load mmc 0:2 82000000 /boot/uImage nandecc sw nand erase 280000 400000 nand write 82000000 280000 400000 writeenv=setenv nandrootfstype ubifs; setenv nandroot 'ubi0:beagleboard-rootfs ubi.mtd=4'; setenv uenvcmd; setenv bootenv; saveenv uenvcmd=mtdparts default; run writemlo; run writeuboot; run writeuimage; run writeenv; echo writing root fs after booting console=ttyS2,115200n8 camera=none Detailed instructions: 1. The 'Ubuntu start-up CD' is an iso-image which can be downloaded from http://www.ubuntu.com 2. You may need to adjust your BIOS to boot from CD then Hard Disc if it is not already set to do this. 3. Under Ubuntu go to System/Admin/Disk Utility and select the SmartMedia drive, Erase the partitions and format the drive as a single FAT partition (named 'BEAGLE' for example). 4. You should see a blank drive 'BEAGLE' - note the drive letter and close it. Use Win32DiskImager to write the card image (downloaded from the beagleboard site and unzipped using 7-zip). It provided a Linux GUI so it looks like machines are now shipping with a Linux GUI (rather than a command-line Linux). I also tried the 'user' button - big mistake. The Beagleboard XM in my ARMini has both DDR and NAND memory - early revision A and B boards had this memory chip because the planned chip was unavailable. The C5 image is arranged so that a boot from the SD card first erases and then reprogrammes the NAND memory (whether booting using the file 'user.txt' or 'uEnv.txt') for a normal boot into the Linux GUI, then drops into the Linux GUI. Subsequent boots are from the NAND except that the boot order (try NAND first then SD card) is changed with the user button pressed to do as above. With the NAND erased, it is ignored. So my machine was now ignoring the SD card when booting up and whatever I did I ended up in the Linux GUI. Fortunately I had been here before and so I connected a serial terminal to the serial port and interrupted the start up to give the command 'nand erase' after which things were back to normal. So this is just a cautionary tale really. Leave the SD card well alone unless you really know what you are doing! -- Chris Hall <chris@xxxxxxxxxx> --- To alter your preferences or leave the group, visit //www.freelists.org/list/armini-support List-related queries to support@xxxxxxxxxxxx