Hello, all. I've just merged vendor power-on button support into
mainline. Here is extract from manual: <<EOF
Some laptop vendors provide an additional power-on button which boots
another OS.
GRUB supports such buttons with GRUB_TIMEOUT_BUTTON, GRUB_DEFAULT_BUTTON,
GRUB_HIDDEN_TIMEOUT_BUTTON and GRUB_BUTTON_CMOS_ADDRESS variables in
default/grub. GRUB_TIMEOUT_BUTTON, GRUB_DEFAULT_BUTTON and
GRUB_HIDDEN_TIMEOUT_BUTTON are used instead of corresponding variables
without
_BUTTON suffix when powered using special button.
GRUB_BUTTON_CMOS_ADDRESS is vendor specific and partially model-specific.
Values known to GRUB team are:

@table @key
@item Dell XPS M1530
85:3
@end table

EOF

If you have a laptop which has a similar feature could you figure your
address and contribute?
To discover the address do the following:
1) boot normally
2) sudo modprobe nvram
sudo cat /dev/nvram | xxd > normal_button.txt
3) boot using vendor button
sudo modprobe nvram
sudo cat /dev/nvram | xxd > normal_vendor.txt

Then compare these text files and find where a bit was toggled. E.g. in
case of Dell XPS it was:
byte 0x47: 20 --> 28
It's a bit number 3 as seen from following table:
0: 01
1: 02
2: 04
3: 08
4: 10
5: 20
6: 40
7: 80

0x47 is decimal 71. Linux nvram implementation cuts first 14 bytes of
CMOS. So the real byte address in CMOS is 71+4=85
So complete address is 85:3

-- 
Regards
Vladimir 'φ-coder/phcoder' Serbinenko


Attachment: signature.asc
Description: OpenPGP digital signature

_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/grub-devel

Reply via email to