]> git.proxmox.com Git - mirror_ubuntu-zesty-kernel.git/blobdiff - drivers/acpi/scan.c
ACPI: Attach the ACPI device to the ACPI handle as early as possible
[mirror_ubuntu-zesty-kernel.git] / drivers / acpi / scan.c
index 308ddb1c207c420ca6cade93eb175f27c11e524e..ad0679843bd567ea88f3428f6d4e684168ac408e 100644 (file)
@@ -1252,6 +1252,16 @@ acpi_add_single_object(struct acpi_device **child,
         */
        acpi_device_set_id(device, parent, handle, type);
 
+       /*
+        * The ACPI device is attached to acpi handle before getting
+        * the power/wakeup/peformance flags. Otherwise OS can't get
+        * the corresponding ACPI device by the acpi handle in the course
+        * of getting the power/wakeup/performance flags.
+        */
+       result = acpi_device_set_context(device, type);
+       if (result)
+               goto end;
+
        /*
         * Power Management
         * ----------------
@@ -1282,8 +1292,6 @@ acpi_add_single_object(struct acpi_device **child,
                        goto end;
        }
 
-       if ((result = acpi_device_set_context(device, type)))
-               goto end;
 
        result = acpi_device_register(device, parent);