grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RFC: Plan for new "hwmatch" command


From: Evan Broder
Subject: RFC: Plan for new "hwmatch" command
Date: Wed, 17 Nov 2010 20:58:43 -0800

Hi -
   Based on some off-list discussion, I'd like to try a different
angle for the Lua patches I submitted a week or two ago. For context,
Ubuntu is interested in setting gfxpayload=keep as often as we can in
the next release [1]. Since gfxpayload=keep doesn't work with all
hardware/driver combinations, we need a way to selectively turn it on,
based on a whitelist or blacklist.

For my first crack at this [2], I used Lua scripting for comparing
current hardware against the whitelist/blacklist. However, I've gotten
feedback that a solution without Lua would be better. Whatever I do,
I'd like it to be with upstream's approval, and ideally adoption, so I
want to have a discussion about interfaces before I start coding.

I'm intentionally opening myself up to bikeshedding, but I'm
interested in people's opinions on the format of the
blacklist/whitelist file. I'm also interested in if this is generic
enough to be a reasonable addition to the GRUB core. And of course I'm
interested to know if people think I'm going about this all wrong.

As a strawman, I propose adding the "hwmatch" command:

  Usage: hwmatch MATCHLIST [BASECLASS]

MATCHLIST is a file containing a list of hardware identifiers.
BASECLASS is a PCI base class code. If specified, only PCI devices
with that base class will be checked. hwmatch returns 0 if any PCI
device in the system is listed in MATCHLIST, and 1 otherwise.

MATCHLIST has one device per line with the following space-separated
fields: base class, subclass, vendor ID, device ID, subsystem vendor
ID, subsystem device ID. The first two fields are 2 hex digits; the
other fields are 4 hex digits. Any field can be replaced by a single
'*' to indicate a wildcard.

Thanks in advance,
 - Evan

[1] 
https://blueprints.launchpad.net/ubuntu/+spec/packageselection-foundations-n-grub2-boot-framebuffer
[2] https://code.launchpad.net/~broder/+junk/grub2-extras-lua-enum-pci



reply via email to

[Prev in Thread] Current Thread [Next in Thread]