On 3/11/2011 3:01 AM, Mark Morgan Lloyd wrote:
Given a copy of OFW booted from floppy on a PC, is there a comparatively straightforward way of using it to boot an OS or loader from other block devices or over the LAN, in the way that I'm used to on Sun kit?
Yes, you just say, for example,
boot c:\boot\vmlinuz
That assumes that the support for the Linux file format has been included in the OFW build. It also assumes that your linux kernel is in on the first partition of the primary IDE disk (the default target of the "c" devalias) in a supported filesystem like FAT or ext2.
Booting Windows is not supported in the PC demonstration build, but is possible with a fair amount of effort. It requires ACPI and numerous other accomodations for Windows' use of conventional BIOS. We support it on the One Laptop Per Child systems.
I'm hoping to eventually put it on some ARM-based development boards as an interactive layer before they boot Linux (etc.) from disc.
My current work at One Laptop Per Child is ARM-based, so the OFW ARM port is being actively maintained and enhanced. I have versions that you can load from uboot and others that run directly with no underlying firmware. The latter, of course, requires that you take responsibility for the low-level issues of memory controller and DRAM initialization.
If you are a consumer of the board, then it's probably better to use whatever firmware is already there as the initial loader, using OFW as the boot manager as you say. If you are developing your own hardware, it starts to make sense to use OFW from the ground up.
Feel free to contact me directly if you need additional guidance. At this point I'm more interested in the ARM version than the x86 version, so the sooner you get onto ARM, the more help I'll be able to offer.