[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

IBM Maple platform: Booting yaboot



Hi,
I am using the IBM Maple reference platftorm (dual ppc64 IBM 970FX CPU).
http://www.970eval.com/
This board is using a firmware called PIBS that has OpenFirmware 
extension (builds an OF tree and provides call-backs for yaboot).
On our final platform we will need to be able to boot from the SCSI bus. 
So I have written a scsi driver for the PIBS firmware as this wasn't 
supported.
I am able to boot the  Yellow dog linux  CDROM  through a SCSI PCI card 
and run a full install of  YDL linux onto a linux hard drive. This hard 
drive is intended to be the system drive, and  I need to be able to boot 
from it.
My problem is that I am not sure how and where to fetch yaboot from the 
hard disk.
Booting yaboot from the yellow dog cdrom was easy: In may scsi driver,  
I navigate in the ISO9660 file system and I read the file 
/ppc/bootinfo.txt. This tells me where to find yaboot (in /boot/yaboot). 
So I load it and all is fine.

Looking at the hard disk I generated, I can see a /boot/etc/yaboot.conf 
file:

----
# yaboot.conf generated by anaconda

boot=/dev/sda
init-message="Welcome to Yellow Dog Linux! Hit <TAB> for boot options."
partition=1
timeout=30
install=/usr/lib/yaboot/yaboot
magicboot=/usr/lib/yaboot/ofboot
delay=10
enablecdboot

image=/vmlinux-2.6.10-1.yhpc.6maple
        label=linux
        read-only
        initrd=/initrd-2.6.10-1.yhpc.6maple.img
        root=/dev/sda2
        append="console=ttyS0,115200 rhgb quiet"
---

Does it mean the yaboot I need to load and run is /usr/lib/yaboo/yaboot? 
This is an ELF32 ppc which seems OK.
My problem is that I need to implement in my firmware scsi driver a 
layer that undertands linux ext3 partitions,  so that I can reach these 
files.  I don't mind doing it if this is the right approach but prefer 
to check first.
In short I would do the following to boot the scsi hard disk:

-fetch the MBR (partition table) from the hard disk at offset 0x1be. The 
table points to the linux ext3 partitions /boot(/dev/sda1)  and / 
(/dev/sda2)
-locate the /boot partition and load the /boot/etc/yaboot.conf file.
-read that file and load the file that is referenced in the install 
entry (like install=/usr/lib/yaboot/yaboot).
-yaboot will load  the linix kernel and initrd and I am done.

Does it seem correct?
Also I am not sure if I need to use the file "ofboot". In fact I don't 
understand what is it for?

Thanks a lot,
-jf simon




 

	

	
		
___________________________________________________________________________ 
Appel audio GRATUIT partout dans le monde avec le nouveau Yahoo! Messenger 
Téléchargez cette version sur http://fr.messenger.yahoo.com