MLO crashing on Pandaboard ES rev B3
Pages: 1 2
Mike Morris (1852) 89 posts |
These are listed in the articles linked to and for the sake of brevity I didn’t want to merely repeat what others have said. However, it seems that people don’t always follow links so yes, you’re right, in the light of experience the instructions really need to be a ‘one-stop shop’ (as with the necessary software). Any takers to volunteer to amend the instructions? |
|
Mike Morris (1852) 89 posts |
Rob, just seen this:
I hope this is of some use to others; not knowing at the time that the machine was waiting for a scsi boot device (see this thread) the problem I faced was getting to the desktop & CLI in the first place. Having said that, it’s very useful for newcomers to see how to change the device to boot from. |
|
Ralph Barrett (1603) 154 posts |
There appear to be/have been issues with Pandaboards attempting to boot from the USB ports via SCSIFS, rather than the SDFS SD card slot. My current understanding from reading various posts on this forum is that: 1. Some or all? pandaboard RISC OS ‘riscos’ image files on the FAT16 partition, default to a RISC OS boot filing system of SCSIFS. 2. A RISC OS CMOS file can be inserted into the FAT16 partition (in RISC OS this ‘directory’ is located at “!Boot.Loader”). When RISC OS is loaded, the ‘boot loader’ also loads the contents of the CMOS file, and uses this to subsequently boot RISC OS. If the FAT16 RISC OS CMOS file has a predefined boot path of SDFS, then the RISC OS will be booted using the RISC OS files in filecore on the SD card. Is this understanding correct ? If so, then to get your Pandaboard to boot RISC OS from the SD card slot, you must ensure that you have the CORRECT version of the RISC OS CMOS file pre-loaded into the FAT16 partition. This CMOS file must be set up with SDFS as the default filing system etc. Therefore there is probably is no need to go through all the hassle of loading RISC OS onto a USB memory stick. Is this correct ?? Ralph |
|
Ralph Barrett (1603) 154 posts |
Earlier I postulated a theory that the CMOS file in the FAT16 partition sets the boot filing system, used during the booting of RISC OS on the Pandaboard. To test this theory I just deleted the CMOS file in the !Boot.Loader directory. Reset my Pandaboard, and the boot filing system changed to SCSIFS. This appears to prove that the CMOS file in the FAT16 partition does indeed set the boot filing system, drive etc. So getting the correct CMOS file loaded into the FAT16 partition before initial boot is VERY important in setting up your Pandaboard. Ralph |
|
Mike Morris (1852) 89 posts |
That’s interesting Ralph. On this journey, it seems that different things work for different people at different times so I’ll test out your hypothesis myself tomorrow evening and report back. As an aside, I don’t know the definitive answers to your earlier questions but I wish soemone who does would contribute… |
|
Ralph Barrett (1603) 154 posts |
I need to quantify my test conditions for the CMOS file testing. There are lots of different Pandaboard RISC OS files out there, and several different versions of Pandaboard. I’m pretty sure this is causing lots of confusion. Whenever we post some results we need to show which boot files were are using. For my previous CMOS tests I was using the following files in the FAT16 partition:- Pandaboard rev. A3 hardware I just repeated my CMOS file tests using newer versions of the RISC OS Panda files as referenced by Simon Inns. http://www.riscosports.co.uk/pandaboottest.zip For completeness these files were:- MLO 06Sep2014 Plus the following files added from elsewhere:- riscos 20Sep2014 (from the ROOL download site) Interestingly with the same CMOS file in the FAT16 partition, the Pandaboard attempted to boot using SCSIFS by default. It seems that the newer Pandaboard RISC OS boot files behave differently with respect to the CMOS file ?? Also observed that the new Panda boot files that I put into the FAT16 partition using my RPi (SCSIFS::0) were not the same files that I subsequently saw on my Pandaboard in !Boot.Loader using RISC OS. If this is correct, then its no wonder that people are getting confused. However this is probably just a cosmetic issue, and could be expected as RISC OS does not ‘understand’ partitions at all. Ralph |
|
Chris Hall (132) 3554 posts |
I think your explanation is incomplete. On the Pandaboard, the ‘uenv.txt’ file or the ‘boot.scr’ file (can’t remember which or both) will contain commands which either look like this:
or this:
When it starts up, RISC OS looks inside its own ROM to see whether CMOS settings have been stored there (by seeing whether they are validated by a checksum), it also looks near itself in memory to see whether validated CMOS settings exist, it also looks for a CMOS widget (a small circuit board) and uses CMOS settings from there if they validate. If none validate (or if DELETE is pressed on power on) it uses the ‘default’ CMOS settings which were chosen when the ROM was built. If you change a CMOS setting, thing get rather more complex and it will save the new settings in one or more of the places above, depending whether the module SDCMOS is present, depending whether the CMOS widget is present, depending which method it used on start up to obtain them in the first place, depending whether an SD card is present, depending whether the SDFS was the start up boot filesystem and depending on whether SDFS is the currently configured boot filesystem and depending on whether an SD card is present. The hierarchy is not clear (to me). The effect is that the boot filesystem, SCSIFS or SDFS, is one of the CMOS settings. Hope this is helpful. Also observed that the new Panda boot files that I put into the FAT16 partition using my RPi (SCSIFS::0) were not the same files that I subsequently saw on my Pandaboard in !Boot.Loader using RISC OS. SCSIFS::0 is wrong. My recommendation on changing thins in !Boot.Loader is to be careful. The only method I can say is always successful is to reformat under Windows using quick format and copy the files in, MLO first, onto a freshly formatted partition (!Boot.Loader still references it OK after the format). If you do copy files in then make sure that they are capitalised 8.3 format. I also rename a file I want to replace before copying in the new one. |
|
Ralph Barrett (1603) 154 posts |
Thanks Chris, for your very detailed explanation about how CMOS is used.
I know that my explanation is incomplete ! From the information you have posted about CMOS we should be able to update the Pandaboard installation Wiki. The ‘Holy Grail’ is to provide one set of clear and concise RISC OS installation instructions that can be used on all versions of the Pandaboard :-) Ralph |
|
Ralph Barrett (1603) 154 posts |
Thanks to information from various posts on this forum, I now have my Pandaboard rev. A3 running with the new u-boot/img. This new u-boot image is apparently suitable to the older style Pandaboards (like mine) and also the newer faster ES Pandaboards. This post is being typed on my Pandaboard, which even at 1Ghz seems snappier in Netsurf than my RPi(s). I have based my installation upon an RPi RC12a SD card image, to save time. Note that I managed to boot up my Pandaboard using the SD card, without using a USB memory stick, without formatting my SD card to filecore format and without having to manually install the HardDisc4 image from the ROOL website. There are some major and some minor differences in the previous install I performed using the older u-boot/bin image. The older image worked fine with my rev. A3 Pandaboard, but does not work with the newer Pandaboard ES variants. The major differences are different filenames, and some differences in the way that CMOS seems to work initially. Minor differences are the boot LEDs are different to the old boot loader. Files on my SDCard FAT16 partition are: CMOS 30Sep2014 (CMOS file was updated by RISC OS – hence the date) Even though the ‘cmos’ file had previously worked fine on the old version of the bootloader, the very first time that I booted up the RISC OS image, the boot filing system still defaulted to SCSIFS, so !Boot was not found. As described by others on this forum, this boot issue was fixed in a manner similar to an old Acorn A310 that had lost its boot settings due a flat battery or whatever :-) *co. file. sdfs Something then appears to have written the boot details back to the FAT32 partition to the ‘CMOS’ file (checked by subsequently deleting it). Whatever, next time I booted, my Pandaboard booted as requried from the SDFS card. I copied the above files to another RPi image FAT16 partition, and this other SD card booted the Pandaboard correctly to SDFS first time. I intend to write all this up in the Pandaboard Installation Wiki, as an alternative to the method that Mike used for his Pandaboard ES installation. If you already have an RPi running, then you can get a Pandaboard running in the time it takes to copy your RPi SD card image onto a blank SD card, download the Pandaboard boot files and copy them onto your new SD card. Sort the boot device, and you’re ‘cooking on gas’. Ralph |
|
Mike Morris (1852) 89 posts |
That all sounds really good Ralph, much less convolted. I’d like to try it out on my Rev B3 to see if it works on that version but where did you get the CMOS dated 30/9/14 from? |
|
Ralph Barrett (1603) 154 posts |
My CMOS file was timestamped with yesterday’s time and date. So the CMOS file must have been ‘magically’ updated by RISC OS after I’d changed the default boot settings at the command line – probably by something in the boot sequence. I need to do some more Pandaboard testing to determine whether the latest u-boot utility can boot with no RISC OS CMOS file initially present. And whether the CMOS file is automatically created if it does not exist. I can appreciate that lots of clever people have done lots of clever things to get RISC OS running on the RPi and the Pandaboard. We just need to figure out how it all actually works in practice :-) Ralph |
|
Mike Morris (1852) 89 posts |
Just tried Ralph’s method using a Pandaboard ES Rev 3B. On the Windows box, downloaded the RC12a image from the Raspberry Pi site and burned it on to a newly formatted (FAT) SD card using Win32DiskImager. Opened up the boot partition, deleted the RPi files and replaced them with the files Ralph listed above, then inserted into the P/B and booted up. I’m delighted to say that it worked like a dream, didn’t even need to reconfigure the boot drive. Apart from burning the image onto the card, it probably took a matter of seconds – absolutely marvellous! A couple of points to note: 1. On the first go, although it’s not on Ralph’s list I’d accidentally moved preenv/txt into the P/B boot loader – all I got was a blank screen until I checked the list then removed it. I don’t know what this file does but on this occasion it seems to have blocked the P/B from booting. 2. As noted elsewhere, using this method I could only access 2GB of the 8GB card used so there’s still very much a role for SystemDisc if you want to use the full capacity of an SD card. Ralph: I think you can be pretty confident in going ahead and inserting your instructions onto the Wiki! |
|
Ralph Barrett (1603) 154 posts |
I’ve already added a new section to the Wiki: “Alternative Set-Up Method Using an RPi RC12a SD Card” Still work in progress. Hopefully finish it tomorrow. I removed my ‘cmos’ file from the FAT16 partition and booted to SCSIFS as expected. However, I could not do the “*co. disc 0” command ?? Anyhow, a new ‘cmos’ file was not automatically created in the FAT16 partition, so it looks like it has to be there from the start to be written to by RISC OS (even if its not 100% correct). That makes some sense I guess. Good news that the ‘quick Panda install’ worked for you Mike :-) Your ‘cmos’ file would have already been formatted for the newer version of u-boot – that’ll be why it all worked so well I guess. Still more work to do on this Wiki though… Ralph |
|
Mike Morris (1852) 89 posts |
I see that since Ralph posted his last message he’s done some more work on the new section, using an RPi SD card – pretty darned good it looks too! I’ve pretty much rewritten the preceding section on creating an SD card from scratch – it’s now leaner and meaner! Gone is the convoluted part about booting from a SCSI device, replaced simply by a “*Configure FileSystem SDFS” – simple when you know, init? (ironically, when I did a dry run it straight away booted from the SD card – dunno if somebody from ROOL’s altered the default boot drive?) Anyway, if anyone would like to try out the new instructions I’d welcome feedback. |
|
Ralph Barrett (1603) 154 posts |
The contents of the ‘cmos’ file in the FAT16 ‘partition’ is very important, as the cmos file instructs RISC OS which disc to boot from. If the Pandaboard RISC OS cmos file is pre-set to boot using SDFS then you are ‘cooking on gas’ and everything will be easier. Although changing the Pandaboard boot device using “*Configure FileSystem SDFS” is not a lot of effort. However, you must ensure that all the other FAT16 boot files support the ‘cmos’ file being resident in the FAT16 ‘partition’ (i.e. that you have the right ‘group’ of files loaded). It was unfortunate that an earlier post linked to a cmos file that was pre-set to boot from SCSIFS. For the WiKi section on getting the Pandaboard running using an RC12a RPi SD card image, I am now linking to some cmos files intended for RISC OS on the Pandora. At least one of these cmos files is set to boot from SDFS. In an ideal world, the SDFS cmos file would be available for download with the RISC OS ROM image on the ROOL website as its only about 2052 bytes(thinks: I’ve not actually looked:-o) Ralph |
|
Chris Hall (132) 3554 posts |
In an ideal world, an SD card image containing the u-boot, MLO, riscos rom etc. (arranged to appear in !Boot.Loader on an otherwise empty disc under RISC OS) would be what you download, not just the rom. This is being worked on… |
|
Mike Morris (1852) 89 posts |
Great! |
|
David R. Lane (77) 766 posts |
I have now got my Pandaboard booting with the new boot loader files (see the thread “Using laest Uboot to boot a Pandaboard” (sic) in the General subforum). As someone else said there is a change in the green LEDs lighting up. Whereas with the old boot loader files the left LED came on immediately after the right one, the left one flashes only briefly much later just before Panda reads !Boot. Geting to the desktop seems to take longer now, but I haven’t timed it. |
|
Chris Hall (132) 3554 posts |
The ‘cmos’ file (if present) will (I think) only be updated if (i) the SDCMOS module is present AND (ii) no cmos widget is fitted. Also (I think, but I may be wrong here) if a cmos widget is fitted then any cmos file loaded into memory (by the firmware that loads the risc os rom) will be ignored on start up and the desired settings taken from the widget. Perhaps someone could confirm this? |
Pages: 1 2