Date: Sat, 8 May 2004 09:43:34 -0700 From: Marcel Moolenaar <marcel@xcllnt.net> To: Nate Lawson <nate@root.org> Cc: arch@freebsd.org Subject: Re: New ACPI blacklist format Message-ID: <20040508164334.GA3217@dhcp01.pn.xcllnt.net> In-Reply-To: <20040507231846.F52653@root.org> References: <20040507231846.F52653@root.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, May 07, 2004 at 11:28:15PM -0700, Nate Lawson wrote: *snip* > static struct acpi_table_desc Abit_BP6[] = { > { "FACP", "AWARD", "AWRDACPI", "<=", "30302e31", "", "", "" }, > }; > static struct acpi_table_desc AMI_INT[] = { /* 01/18/00 */ > { "FACP", "AWARD", "", "<=", "10", "", "", "" }, > { "DSDT", "", "", "<=", "5", "", "", "" }, > }; > static struct acpi_table_desc Compaq_ViperII[] = { > { "FACP", "COMPAQ", "VIPER II", "<=", "06040000", "PTL", "<=", "000F4240" }, > }; *snip* > Each entry in acpi_table_desc lists a table ID and then a set of strings > to match against the table. Multiple tables may be matched for a given > system (i.e. AMI_INT above). The op values will be "<=", "=", and ">=". > The quirk associated with each system will be a bitmask returned from the > quirk matching function. > > In English, the last entry means, "Check the table named 'FACP' for an OEM > ID of 'COMPAQ' and table ID of 'VIPER II' and OEM revision <= '06040000' > ..." Substring matches will work too (e.g., "COMPA"). > > Is there any better way to compact this? If space is a concern, you can enable (i.e. compile-in) quirks by using kernel options, like: options ACPI_QUIRK_ABIT_BP6 and #ifdef ACPI_QUIRK_ABIT_BP6 static struct acpi_table_desc Abit_BP6[] = { { "FACP", "AWARD", "AWRDACPI", "<=", "30302e31", "", "", "" }, }; #endif You put all three of them in GENERIC and people can add or remove them from their own kernel configuration to fit their needs (and save space). If the quirks are in MI files, then this also avoids that i386 quirks end up in amd64 or ia64 kernels. Just a thought, -- Marcel Moolenaar USPA: A-39004 marcel@xcllnt.net
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040508164334.GA3217>