[Bug 425979] Re: [UEFI boot only] Holding shift fails to display grub2 menu
TJ
ubuntu at iam.tj
Tue May 10 06:41:57 UTC 2016
** Description changed:
Binary package hint: grub2
- Grub2 has switched away from a minimum 1 second delay to hit enter, in
- preference to simply holding down shift during the boot sequence.
- However, this behaviour doesn't work on all machines.
+ Ubuntu added a patch on top of mainline GRUB and Debian such that holding down the Shift modifier key during boot will cause it to display
+ the hidden boot menu.
- Further, many users will only learn this after their machine fails to
- boot normally, leaving them unable to boot at all without outside
- assistance.
+ In the original IBM PC/AT design the modifier keys (Shifts, Ctrls, Alts) are handled separately to all other keys. Instead of reporting state transitions there is an I/O port register that is read by the software where each bit position represents the current state of the associated
+ modifier key.
+
+ The functionality to read this I/O port register works correctly for
+ BIOS systems or UEFI systems starting in Legacy/CSM mode.
+
+ On UEFI systems this does not work. The reasons are:
+
+ 1. At the time this Ubuntu-specific functionality was added to Ubuntu
+ the UEFI specification, and UEFI implementations by manufacturers, did
+ not provide a way to detect the state of the modifier keys.
+
+ 2. UEFI only provides the same mechanism as for all other keys: detect a
+ transition of state (key_down or key_up).
+
+ 3. When GRUB timeout is set to 0 (zero) there is no way to detect a key
+ press transition.
+
+ It appears that UEFI specification version 2.4 may now support the
+ required reading of modifier key state so I shall be investigating
+ whether we can now add support for UEFI systems that implement the v2.4
+ specification.
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to grub2 in Ubuntu.
https://bugs.launchpad.net/bugs/425979
Title:
[UEFI boot only] Holding shift fails to display grub2 menu
Status in grub2 package in Ubuntu:
In Progress
Bug description:
Binary package hint: grub2
Ubuntu added a patch on top of mainline GRUB and Debian such that holding down the Shift modifier key during boot will cause it to display
the hidden boot menu.
In the original IBM PC/AT design the modifier keys (Shifts, Ctrls, Alts) are handled separately to all other keys. Instead of reporting state transitions there is an I/O port register that is read by the software where each bit position represents the current state of the associated
modifier key.
The functionality to read this I/O port register works correctly for
BIOS systems or UEFI systems starting in Legacy/CSM mode.
On UEFI systems this does not work. The reasons are:
1. At the time this Ubuntu-specific functionality was added to Ubuntu
the UEFI specification, and UEFI implementations by manufacturers, did
not provide a way to detect the state of the modifier keys.
2. UEFI only provides the same mechanism as for all other keys: detect
a transition of state (key_down or key_up).
3. When GRUB timeout is set to 0 (zero) there is no way to detect a
key press transition.
It appears that UEFI specification version 2.4 may now support the
required reading of modifier key state so I shall be investigating
whether we can now add support for UEFI systems that implement the
v2.4 specification.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/grub2/+bug/425979/+subscriptions
More information about the foundations-bugs
mailing list