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
