[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: internal device representation
From: |
Marco Gerards |
Subject: |
Re: internal device representation |
Date: |
Tue, 18 Jan 2005 18:36:56 +0000 |
User-agent: |
Gnus/5.1006 (Gnus v5.10.6) Emacs/21.3 (gnu/linux) |
Hollis Blanchard <address@hidden> writes:
> In the netboot case, we can boot like this:
> boot net:192.168.0.1,grubof,192.168.0.2
What does this mean? The first IP address is the server, the second
is our own?
> Inside grub, /chosen/bootpath looks like this:
> /address@hidden,0/address@hidden,1/address@hidden,1
>
> [So let's pretend we don't have any problem with commas or syntax (as
> that is the subject of the other mail), and we set the "prefix"
> variable to be "net" or "(nd0)" or whatever you like.]
>
> Now we want to retrieve grub.conf. However, we can't just stick
> "grub.conf" on the end of that string and expect it to work:
> "(nd0)/grub.conf" would become "net:,grub.conf" to the OF driver, and
> now we have lost the server and client IP addresses.
For GRUB Legacy there is the ifconfig command to configure the device.
> This suggests that we need to preserve a separated device specifier,
> rather than flattening it into a string. The specifier must keep the
> device path and device arguments separated, for later recombination
> with the new filename.
>
> struct device {
> char *device_path = "net"
> char *args = ["192.168.0.1", NULL, "192.168.0.2"]
> }
How about the data member of grub_dev?
> ... and the grub Open Firmware driver knows to insert "filename" into
> args[1].
It would be nice if it can be kept hidden from the user that OF is
used and make it work like GRUB Legacy did or so.
Thanks,
Marco