mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-11 12:28:41 +08:00
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: Rafael J. Wysocki <rafael.j.wysocki@intel.com> Acked-by: Yasuaki Ishimatsu <isimatu.yasuaki@jp.fujitsu.com> Acked-by: Yinghai Lu <yinghai@kernel.org> Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com>
This commit is contained in:
parent
141a297bd0
commit
456de893ea
@ -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;
|
||||
}
|
||||
|
||||
acpi_status
|
||||
|
Loading…
Reference in New Issue
Block a user