From: Marco Gerards <mgerards@xs4all.nl>
To: The development of GRUB 2 <grub-devel@gnu.org>
Subject: Re: My Summer of Code Project
Date: Wed, 25 Apr 2007 15:01:41 +0200 [thread overview]
Message-ID: <871wi86216.fsf@xs4all.nl> (raw)
In-Reply-To: <8c0c43de0704242149m4721854bo8f221346aa65111a@mail.gmail.com> (Alex Roman's message of "Wed, 25 Apr 2007 00:49:31 -0400")
"Alex Roman" <alex.roman@gmail.com> writes:
Hi Alex,
Please don't top quote, it is confusing ;-).
> Interesting piece of code... Yet another example of showing how to
> implement an ATA/IDE controller driver :)
Yeah.
btw, do you know http://www.osdever.net?
If you are looking for even more information, I could have a look at
which books about this subject I can recommend.
> 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.
Both are important! Really...
You should know GRUB 2 is designed to be portable and runs on lots of
different systems.
When the firmware gives access to the CDROM drive, this is usually a
nice feature to have. One thing is that you have support for it, even
if it is SCSI (which you won't implement) or something else which is
terribly obscure :-).
Another nice reason you want this is that usually the firmware tells
you which drive you booted from. For example, when you boot from a
CDROM drive it is easy to figure out which drive to load all files
from. Think of livecds, etc.
Actually, an IDE driver is a terrible thing to have. But it is
required for broken systems like the PC. Some BIOSes do not have
CDROM support. Other don't give you access to the CDROM drive when
you do not use it for booting.
> I'm not sure how IDE controllers work on PPC, since I've unfortunately
> never used the architecture...
If you make sure you keep endianess in mind, you usually will be doing
the right thing. Besides that, on the PPC all IO is memory mapped.
You can have a look at linux to see how it deals with IO access.
> 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.
Yeah :)
> 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.
El Torito is PC only, no?
> 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.
One good way to start is by just fixing random things in GRUB 2. Play
with grub-emu, make a floppy image with GRUB 2 on it and boot it from
qemu. Setup a good development environment (talking about this is
perhaps a smart thing to do, if you lack the experience).
For some other summer of code projects (like ffmpeg), the students we
required to send in patched before they were qualified. IOW: you
couldn't be accepted, unless you sent in patches that were good enough
to make it into SVN. By doing this they showed they are capable
enough to work on the project. But besides that, and that is what I
am trying to say, is that it usually helps if you poke around a bit
and play with the code, you don't even have to do something useful.
And ask lots and lots of questions :-)
--
Marco
next prev parent reply other threads:[~2007-04-25 13:02 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-04-21 14:17 My Summer of Code Project Alex Roman
2007-04-24 20:06 ` Devils-Hawk
2007-04-24 20:17 ` Stefan Reinauer
2007-04-25 12:38 ` Marco Gerards
2007-04-25 4:49 ` Alex Roman
2007-04-25 5:52 ` Andrei E. Warkentin
2007-04-25 8:07 ` Vesa Jääskeläinen
2007-04-25 13:01 ` Marco Gerards [this message]
2007-04-25 14:20 ` Alex Roman
2007-04-25 16:08 ` Marco Gerards
2007-04-25 16:41 ` Alex Roman
2007-04-25 18:26 ` Yoshinori K. Okuji
2007-04-25 18:12 ` Yoshinori K. Okuji
2007-04-25 12:33 ` Marco Gerards
2007-04-25 12:28 ` Marco Gerards
[not found] <200704211558.l3LFwgRT001308@correoredir01.dinaserver.com>
2007-04-23 0:01 ` adrian15
2007-04-25 18:17 ` Yoshinori K. Okuji
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=871wi86216.fsf@xs4all.nl \
--to=mgerards@xs4all.nl \
--cc=grub-devel@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.