pnpacpi_add_device() calls acpi_bind_one() on an already registered
device, which is a mistake, but it can initialize the ACPI companion
field of the struct device to be registered using ACPI_COMPANION_SET()
instead, so make it do that.
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com>
if (!dev)
return -ENOMEM;
+ ACPI_COMPANION_SET(&dev->dev, device);
dev->data = device;
/* .enabled means the device can decode the resources */
dev->active = device->status.enabled;
return error;
}
- error = acpi_bind_one(&dev->dev, device);
-
num++;
- return error;
+ return 0;
}
static acpi_status __init pnpacpi_add_device_handler(acpi_handle handle,