ACPI: autoload modules - Create ACPI alias interface
Modify modpost (file2alias.c) to add acpi*:XYZ0001: alias in modules.alias like: grep acpi /lib/modules/2.6.22-rc4-default/modules.alias alias acpi*:SNY5001:* sony_laptop alias acpi*:SNY6001:* sony_laptop for e.g. the sony_laptop module. This module matches against all ACPI devices with a HID or CID of SNY5001 or SNY6001 Export an uevent and modalias sysfs file containing the string: [MODALIAS=]acpi:PNP0C0C: additional CIDs are concatenated at the end. Signed-off-by: Thomas Renninger <trenn@suse.de> Signed-off-by: Kay Sievers <kay.sievers@vrfy.org> Signed-off-by: Len Brown <len.brown@intel.com>
This commit is contained in:
committed by
Len Brown
parent
8c8eb78f67
commit
29b71a1ca7
@@ -21,7 +21,10 @@
|
||||
|
||||
#include <linux/acpi.h>
|
||||
#include <linux/pnp.h>
|
||||
#include <linux/mod_devicetable.h>
|
||||
#include <acpi/acpi_bus.h>
|
||||
#include <acpi/actypes.h>
|
||||
|
||||
#include "pnpacpi.h"
|
||||
|
||||
static int num = 0;
|
||||
@@ -33,15 +36,17 @@ static int num = 0;
|
||||
* have irqs (PIC, Timer) because we call acpi_register_gsi.
|
||||
* Finaly only devices that have a CRS method need to be in this list.
|
||||
*/
|
||||
static char __initdata excluded_id_list[] =
|
||||
"PNP0C09," /* EC */
|
||||
"PNP0C0F," /* Link device */
|
||||
"PNP0000," /* PIC */
|
||||
"PNP0100," /* Timer */
|
||||
;
|
||||
static __initdata struct acpi_device_id excluded_id_list[] ={
|
||||
{"PNP0C09", 0}, /* EC */
|
||||
{"PNP0C0F", 0}, /* Link device */
|
||||
{"PNP0000", 0}, /* PIC */
|
||||
{"PNP0100", 0}, /* Timer */
|
||||
{"", 0},
|
||||
};
|
||||
|
||||
static inline int is_exclusive_device(struct acpi_device *dev)
|
||||
{
|
||||
return (!acpi_match_ids(dev, excluded_id_list));
|
||||
return (!acpi_match_device_ids(dev, excluded_id_list));
|
||||
}
|
||||
|
||||
/*
|
||||
|
Reference in New Issue
Block a user