On Tue, Feb 9, 2010 at 1:44 PM, Luca <[email protected]> wrote:
>  I wanted to pass some parameters to gPXE, when it starts. As I do not want
> to rebuild the gPXE image every time with a new script I thought of using
> the serial for that.

Let's discuss your setup and use case more.  Perhaps there is an
existing solution or we can come up with a generic solution that can
be merged into mainline gPXE.

What are the constraints of your setup?  Do you have a DHCP server?
Can you set the boot filename handed out by the DHCP server?

> The reason is that in GPXE I can't use interrupts, so I keep polling the
> serial for new data. Because of the polling, my gPXE serial code sometimes
> looses some characters sent from the serial server (it is not fast enough to
> read all characters sent by the server).

When gPXE starts it could send a 'hello' message over the serial port
and wait for a response.  The server would respond with the
configuration.  I don't think there is a technical limitation
preventing one from implementing this config-over-serial approach.

> I think it isn't possible to use interrupt in gPXE, am I wrong?

gPXE does not use interrupts internally.

> What about if I create a small embedded linux which can use the serial to
> talk to the serial server and gets the parameters it needs and then pass
> those back to gPXE?
> In other words, gPXE starts and loads an external program (my embedded
> linux), which returns to gPXE after talking with the serial server? Would
> that be possible?

Once Linux is started, gPXE is no longer resident.  If you look at
arch/i386/image/bzimage.c, gPXE shuts itself down before transferring
control to the Linux kernel.  Linux is then free to reuse the memory
area that held gPXE.

Stefan
_______________________________________________
gPXE mailing list
[email protected]
http://etherboot.org/mailman/listinfo/gpxe

Reply via email to