grub-devel
[Top][All Lists]
Advanced

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

Re: My Summer of Code Project


From: Vesa Jääskeläinen
Subject: Re: My Summer of Code Project
Date: Wed, 25 Apr 2007 11:07:20 +0300
User-agent: Thunderbird 1.5.0.10 (Windows/20070221)

Alex Roman wrote:
> Interesting piece of code... Yet another example of showing how to
> implement an ATA/IDE controller driver :)
> 
> Right now I'm pondering whether it is worth implementing a BIOS calls
> CDROM boot support, or whether I should just go right ahead and do it
> all with the ATA controller.
> 
> I'm not sure how IDE controllers work on PPC, since I've unfortunately
> never used the architecture...
> 
> Technically, if the ATA/IDE driver is there, implementing the ATAPI
> command set to "talk" to the CDROM and interpreting the El-Torito spec
> shouldn't be that hard.
> 
> If CD-ROM drives are ATAPI on all platforms (where they use ATA), and
> the ATA code is there, the ATAPI and El Torito layer should stay
> cross-platform. The interesting bit will be making it so that
> "plugging in" a SCSI driver will require the least amount of code
> change.
> 
> Anyways, I'm kind of rambling for now... Until the official "code
> start" day I'll do some more reading and investigating how it would be
> best to tie the code into GRUB2 to give the most elegant solution.

There are couple of things to think of.

1. BIOS method seems to be somewhat unusable as if device is booted from
other medium like hard disk, first the CD-ROM device is hidden and it
cannot be accessed through normal means. I haven't tried packet
interface from BIOS but that could be one solution, but I vaguely
remember that there was some issue in that one too.

2. ATA/ATAPI would be a nice addition but it should be developed in a
way that it allows also other buses to be used later on, like SCSI, USB, ...

3. In order to boot OSes which need to load boot sectors and such there
is a need to provide El Torito emulation layer and it would then
communicate with developed CD-ROM driver. This emulation layer and
driver would then need to be installed on system and that should be used
to boot specific device. GRUB 2's CD-ROM driver and El Torito emulation
layer may use different code in order to make it compatible for El
Torito emulation.

4. Only concentrate on architecture that you know and have access. Just
try to abstract it a bit so that it first nicely in GRUB 2's software
architecture.

Doing all tasks related to CD-ROM support might not be possible in time
reserved for GSoC, but performance may vary depending on person.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]