[SeaBIOS] [PATCH] boot: add serial-friendly alternatives for invoking the boot menu

Paolo Bonzini pbonzini at redhat.com
Thu Mar 5 10:13:30 CET 2015



On 04/03/2015 22:42, Kevin O'Connor wrote:
> On Wed, Mar 04, 2015 at 05:57:02PM +0100, Paolo Bonzini wrote:
>> F11 and F12 are trapped by some terminal emulators, and sgabios does
>> not always recognize function keys very well.
>>
>> Real-world machines often provide replacements for function keys for
>> use on the serial console: ESC+1...ESC+0 for F1...F10, ESC+SHIFT+1 and
>> ESC+SHIFT+2 for F11...F12.  Accept all of them, which can be useful in
>> case the user has set boot-menu-key.
> 
> Thanks.  Did you encounter this problem with QEMU or on a real machine
> with coreboot?

With QEMU.

> Out of curiosity, is there a reason why one can't modify
> boot-menu-key/boot-menu-message for those machines that don't support
> F12?

The trivial reason is that right now, QEMU doesn't support customizing
the menu key and message (also there are several management layers
between QEMU and the user, such as libvirt/oVirt/OpenStack, and you'd
have to add support in all of them).

But more important, which keys are and are not available depends on the
client, not on the server.  So for VNC all keys work but on at least a
viewer F8 is inconvenient because it brings up a menu (thankfully one
item in the menu is "Send F8"); for the serial console on a Unix machine
F12 is okay but F11 might bring the terminal full screen; on older Mac
OS X machine F9-F12 were intercepted by the OS, but on newer OS X
releases function keys are basically gone for good.  A configuration
that always works might be broken by the addition of a new client.

> BTW, several chromebooks change boot-menu-key to 0x01 (ESC) and I
> think that would conflict with your patch.

Yes, that definitely warrants a v2.

Paolo



More information about the SeaBIOS mailing list