]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
ACPI / scan: introduce platform_id device PNP type flag
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>
Fri, 30 May 2014 02:26:18 +0000 (04:26 +0200)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Fri, 30 May 2014 14:04:36 +0000 (16:04 +0200)
Only certain types of ACPI device objects can be enumerated as
platform devices, so in order to distinguish them from the others
introduce a new ACPI device PNP type flag, platform_id, and set it
for devices with a valid _HID to start with.

This change is based on a Zhang Rui's prototype.

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com>
drivers/acpi/scan.c
include/acpi/acpi_bus.h

index 19d524c5c0c8e64768d4765290c40af71eb8ccbd..ebbd23c94ba212791d81804bb7e406cc40d28376 100644 (file)
@@ -1797,8 +1797,10 @@ static void acpi_set_pnp_ids(acpi_handle handle, struct acpi_device_pnp *pnp,
                        return;
                }
 
-               if (info->valid & ACPI_VALID_HID)
+               if (info->valid & ACPI_VALID_HID) {
                        acpi_add_id(pnp, info->hardware_id.string);
+                       pnp->type.platform_id = 1;
+               }
                if (info->valid & ACPI_VALID_CID) {
                        cid_list = &info->compatible_id_list;
                        for (i = 0; i < cid_list->count; i++)
index c241c7594bbc48ad39bb2aeba8e8983bac099213..21477467441cdd0f9f889a8469fba46069061e49 100644 (file)
@@ -233,7 +233,8 @@ struct acpi_hardware_id {
 struct acpi_pnp_type {
        u32 hardware_id:1;
        u32 bus_address:1;
-       u32 reserved:30;
+       u32 platform_id:1;
+       u32 reserved:29;
 };
 
 struct acpi_device_pnp {