ACPI support fix for 7.3-rc1

Revert an incomplete recent commit that may cause ACPI device
 power management to stop working.
 -----BEGIN PGP SIGNATURE-----
 
 iQFGBAABCAAwFiEEcM8Aw/RY0dgsiRUR7l+9nS/U47UFAmqRrBQSHHJqd0Byand5
 c29ja2kubmV0AAoJEO5fvZ0v1OO1msIIAKj2Xn9VA93zUk/XANzhM/k0yrapAuPx
 qrimF5LyaCLcNEQwfdlHQMK9gOwLIjWon89JQ/7qK1ynG1Bqc+1X60n+lD066cMh
 s2h24QXvMfO2Ax9TqexXxQuD4TW8v23mUZBXKE6CSjH5rtUuhqL5AspsibSTQiPK
 p1YN9e1SZjLlvx1L1e7ctvQmp3wOiTlhAfYzPzjp18P6LHI4taae+l97MXPIVWQU
 7vL6AbLZRt8UdGFiADkTtRpu+jA7ppTiCzA0r3i1WKkShLVuHioPXYG7eytSC2Tk
 pS026hi9qin7zMtAJxh2wwz1ZS/TzVtLhL5e7ZMUd425zRLy+RSR+Sc=
 =Q3HL
 -----END PGP SIGNATURE-----

Merge tag 'acpi-7.3-rc1-3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm

Pull ACPI support fix from Rafael Wysocki:
 "Revert an incomplete recent commit that may cause ACPI device power
  management to stop working"

* tag 'acpi-7.3-rc1-3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
  Revert "ACPI: scan: Defer device power initialization"
This commit is contained in:
Linus Torvalds 2026-08-28 09:09:01 -07:00
commit 344be13211
2 changed files with 4 additions and 1 deletions

View File

@ -954,7 +954,6 @@ struct acpi_device *acpi_add_power_resource(acpi_handle handle)
INIT_LIST_HEAD(&resource->list_node);
INIT_LIST_HEAD(&resource->dependents);
device->power.state = ACPI_STATE_UNKNOWN;
device->flags.initialized = true;
/* Evaluate the object to get the system level and resource order. */
status = acpi_evaluate_object(handle, NULL, NULL, &buffer);

View File

@ -1144,6 +1144,9 @@ static void acpi_bus_get_power_flags(struct acpi_device *device)
if (!list_empty(&device->power.states[ACPI_STATE_D3_HOT].resources))
device->power.states[ACPI_STATE_D3_COLD].flags.valid = 1;
}
if (acpi_bus_init_power(device))
device->flags.power_manageable = 0;
}
static void acpi_bus_get_flags(struct acpi_device *device)
@ -1825,6 +1828,7 @@ void acpi_init_device_object(struct acpi_device *device, acpi_handle handle,
acpi_set_pnp_ids(handle, &device->pnp, type);
acpi_init_properties(device);
acpi_bus_get_flags(device);
device->flags.initialized = true;
device->flags.enumeration_by_parent =
acpi_device_enumeration_by_parent(device);
acpi_device_clear_enumerated(device);