grub-devel
[Top][All Lists]
Advanced

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

Re: [ppc patch] support SCSI disks


From: Hollis Blanchard
Subject: Re: [ppc patch] support SCSI disks
Date: Sun, 3 Oct 2004 13:41:12 -0500

On Oct 3, 2004, at 1:10 PM, Marco Gerards wrote:

Hollis Blanchard <address@hidden> writes:

On Oct 3, 2004, at 4:21 AM, Marco Gerards wrote:

Isn't it possible to make this a bit more generic?  So not iterating
over only scsi but also over `ide' when it is available, for example?
That way it is more likely the code will work on other machines as
well.

A given SCSI device could be either a byte-oriented tape or a
block-oriented disk. However, I do not believe that the ATA protocol
allows you to read a single byte, so ATA tape drives must implement
blocking in the hardware. In other words, it is not possible to have
both block- and byte-oriented device nodes representing an ATA
device. That is probably why I have never seen an IDE/ATA "tape" node
in a device tree.

I never mentioned tapes...  All I currently care about are block
devices.

Ok. I was submitting this code to solve a specific problem: on Old World Macintosh, I don't have a "disk" or "hd" devalias. Instead I have a "scsi" alias, which has the disk and tape nodes below it. The disk node is type block; the tape node is type char.

If a system does turn up later in which some additional searching is
needed, the problem can be resolved then. For now, my preference is
not to write and maintain code that isn't needed, as unneeded code can
only cause bugs.

What I mean is not writing unneeded code, just making it a bit more
generic.  For example scan from all the childs of aliases for block
devices.  In your case scsi/foo will show up.

Keep in mind that on my New World Mac, I have both an "ide1" and an "hd" devalias. That will mean that GRUB will find and list both "hd" and "ide1/disk" as separate devices, even though they are just different names for the same thing. If you're happy with that then it's ok with me. Just make sure to check for both device_type == "ide" and "ata"; my New World says "ata" but my briQ says "ide".

-Hollis





reply via email to

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