Commit c6a493a1 authored by Rafael J. Wysocki's avatar Rafael J. Wysocki
Browse files

ACPI: scan: Reorganize acpi_device_add()



Move the invocation of acpi_attach_data() in acpi_device_add()
into a separate function.

No intentional functional impact.

Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
Reviewed-by: default avatarHans de Goede <hdegoede@redhat.com>
parent dc612486
Loading
Loading
Loading
Loading
+20 −11
Original line number Diff line number Diff line
@@ -633,24 +633,33 @@ static int acpi_device_set_name(struct acpi_device *device,
	return 0;
}

int acpi_device_add(struct acpi_device *device,
		    void (*release)(struct device *))
static int acpi_tie_acpi_dev(struct acpi_device *adev)
{
	struct acpi_device_bus_id *acpi_device_bus_id;
	int result;

	if (device->handle) {
	acpi_handle handle = adev->handle;
	acpi_status status;

		status = acpi_attach_data(device->handle, acpi_scan_drop_device,
					  device);
	if (!handle)
		return 0;

	status = acpi_attach_data(handle, acpi_scan_drop_device, adev);
	if (ACPI_FAILURE(status)) {
			acpi_handle_err(device->handle,
					"Unable to attach device data\n");
		acpi_handle_err(handle, "Unable to attach device data\n");
		return -ENODEV;
	}

	return 0;
}

int acpi_device_add(struct acpi_device *device,
		    void (*release)(struct device *))
{
	struct acpi_device_bus_id *acpi_device_bus_id;
	int result;

	result = acpi_tie_acpi_dev(device);
	if (result)
		return result;

	/*
	 * Linkage
	 * -------