Commit 456de893 authored by Rafael J. Wysocki's avatar Rafael J. Wysocki

ACPI / scan: Clean up acpi_bus_get_parent()

Make acpi_bus_get_parent() more straightforward and remove an
unnecessary local variable ret from it.
Signed-off-by: default avatarRafael J. Wysocki <>
Acked-by: default avatarYasuaki Ishimatsu <>
Acked-by: default avatarYinghai Lu <>
Reviewed-by: default avatarMika Westerberg <>
parent 141a297b
......@@ -871,29 +871,23 @@ EXPORT_SYMBOL(acpi_bus_unregister_driver);
-------------------------------------------------------------------------- */
static struct acpi_device *acpi_bus_get_parent(acpi_handle handle)
struct acpi_device *device = NULL;
acpi_status status;
int ret;
struct acpi_device *device;
* Fixed hardware devices do not appear in the namespace and do not
* have handles, but we fabricate acpi_devices for them, so we have
* to deal with them specially.
if (handle == NULL)
if (!handle)
return acpi_root;
do {
status = acpi_get_parent(handle, &handle);
if (status == AE_NULL_ENTRY)
return NULL;
if (ACPI_FAILURE(status))
return acpi_root;
ret = acpi_bus_get_device(handle, &device);
if (ret == 0)
return device;
} while (1);
return status == AE_NULL_ENTRY ? NULL : acpi_root;
} while (acpi_bus_get_device(handle, &device));
return device;
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment