[ipxe-devel] ROM timeout adjust
Michael Brown
mcb30 at ipxe.org
Tue Sep 15 10:10:24 UTC 2015
On 15/09/15 02:22, Ben Hildred wrote:
> As I wrote earlier I have been reviewing debian's patches of ipxe (tanks
> to Robin and michael one issue is resolved) and I am not sure I like
> their way of suppressing the control-b time out, specifically their
> patch changes ROM_BANNER_TIMEOUT_TICKS definition in
> arch/i386/prefix/romprefix.S so that it is only defined if not already
> defined and define it as 0 in a local configuration file (The local
> configuration file approach seems reasonable, but I am not sure of their
> choice of variable) the definition of ...TICKS is in terms
> of ROM_BANNER_TIMEOUT. Firstly I have no issue with the actual code
> debian wrote, I am however not sure if it is a good idea overall.
That seems like a pointless patch, since config/general.h already allows
that timeout to be configured.
> I propose the following courses of action:
>
> 1. in environments where there is the ability to receive pre-execution
> input (command line, emulator settings, hardware buttons) that we
> disable banner timeout in favor of pre-execution input. A simple way of
> doing this quickly in the case of qumu would to create two boot-roms;
> one with no delay and one with autoboot disabled and select between them
> by qemu commandline options. A similar method could be explored with
> boot menu options. Long term I would prefer to use command line
> parameters or emulator variables (or hardware buttons on the network card).
If an embedded image or a command line has been provided, then iPXE will
already omit the normal shell prompt ("Press Ctrl-B for the iPXE command
line"). See http://ipxe.org/cmd/prompt for details.
This does not apply to the ROM-only POST prompt ("Press Ctrl-B to
configure iPXE"), which runs in an environment in which the only way to
provide pre-execution input is via an embedded script. Since adding an
embedded script requires recompilation anyway, there is no downside to
requiring the user to also configure ROM_BANNER_TIMEOUT at the same time.
> 2. In environments where pre-execution input is not available I would
> like to make it easier to adjust the banner timeout at compile time by
> both local configuration includes and compiler options. I think the
> pattern of the debian patch has value for this, but I am not sure they
> picked the right configuration variable.
config/general.h already provides BANNER_TIMEOUT and ROM_BANNER_TIMEOUT
as configurable options. I'm not sure what the Debian patch is trying
to add here.
Michael
More information about the ipxe-devel
mailing list