mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-17 01:04:19 +08:00
Revert "ACPI: scan: Release PM resources blocked by unused objects"
commit3b2b49e6df
upstream. Revert commitc10383e8dd
("ACPI: scan: Release PM resources blocked by unused objects"), because it causes boot issues to appear on some platforms. Reported-by: Kyle D. Pelton <kyle.d.pelton@intel.com> Reported-by: Saranya Gopal <saranya.gopal@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
ef2590a530
commit
1af7386f5f
@ -340,28 +340,3 @@ void acpi_device_notify_remove(struct device *dev)
|
||||
|
||||
acpi_unbind_one(dev);
|
||||
}
|
||||
|
||||
int acpi_dev_turn_off_if_unused(struct device *dev, void *not_used)
|
||||
{
|
||||
struct acpi_device *adev = to_acpi_device(dev);
|
||||
|
||||
/*
|
||||
* Skip device objects with device IDs, because they may be in use even
|
||||
* if they are not companions of any physical device objects.
|
||||
*/
|
||||
if (adev->pnp.type.hardware_id)
|
||||
return 0;
|
||||
|
||||
mutex_lock(&adev->physical_node_lock);
|
||||
|
||||
/*
|
||||
* Device objects without device IDs are not in use if they have no
|
||||
* corresponding physical device objects.
|
||||
*/
|
||||
if (list_empty(&adev->physical_node_list))
|
||||
acpi_device_set_power(adev, ACPI_STATE_D3_COLD);
|
||||
|
||||
mutex_unlock(&adev->physical_node_lock);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
@ -117,7 +117,6 @@ bool acpi_device_is_battery(struct acpi_device *adev);
|
||||
bool acpi_device_is_first_physical_node(struct acpi_device *adev,
|
||||
const struct device *dev);
|
||||
int acpi_bus_register_early_device(int type);
|
||||
int acpi_dev_turn_off_if_unused(struct device *dev, void *not_used);
|
||||
|
||||
/* --------------------------------------------------------------------------
|
||||
Device Matching and Notification
|
||||
|
@ -2559,12 +2559,6 @@ int __init acpi_scan_init(void)
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Make sure that power management resources are not blocked by ACPI
|
||||
* device objects with no users.
|
||||
*/
|
||||
bus_for_each_dev(&acpi_bus_type, NULL, NULL, acpi_dev_turn_off_if_unused);
|
||||
|
||||
acpi_turn_off_unused_power_resources();
|
||||
|
||||
acpi_scan_initialized = true;
|
||||
|
Loading…
Reference in New Issue
Block a user