ACPI support fixes for 7.0-rc3

- Revert a commit related to ACPI device power management that was
    not supposed to make any functional difference, but it did so and
    introduced a regression (Rafael Wysocki)
 
  - Update the _CPC object definition in ACPICA to match ACPI 6.6 and
    prevent the kernel from printing a false-positive warning regarding
    _CPC output package format on platforms shipping with firmware based
    on ACPI 6.6 (Saket Dumbre)
 -----BEGIN PGP SIGNATURE-----
 
 iQFGBAABCAAwFiEEcM8Aw/RY0dgsiRUR7l+9nS/U47UFAmmpxGcSHHJqd0Byand5
 c29ja2kubmV0AAoJEO5fvZ0v1OO1JK0H/0/nuSCYO/mtbdS9fwRsXrSd+Yphlkij
 F+mF9NQx5HPzW4PbHT4erqQe02Kohyb40t57C+4LiaenbKXftPbmgO+d5RvN1AkK
 L78f/pdxhpsN/MisUl466UgFwPiuv4XnMSrF9VpZAF16g4zqwWpyvZ0Z3qp0a1LW
 3zBPl3Jag37lnKqCaPti/84R15uxn2wMpTGeaNZGNdG6lJwKCAVhKy3bvSp+6iQ6
 QMUao6bWSCT2qq0kNWBxfWhrYhAYz3lCyu1qlSumB7qBt51eEXEmTW7O38DIDXMb
 fVjlsNFDntIJl2vXn9zyM5kbOnpZ7EiOytKNli/LcxqtrY/PUWNQU6Y=
 =CEPs
 -----END PGP SIGNATURE-----

Merge tag 'acpi-7.0-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm

Pull ACPI support fixes from Rafael Wysocki:

 - Revert a commit related to ACPI device power management that was
   not supposed to make any functional difference, but it did so and
   introduced a regression (Rafael Wysocki)

 - Update the _CPC object definition in ACPICA to match ACPI 6.6 and
   prevent the kernel from printing a false-positive warning regarding
   _CPC output package format on platforms shipping with firmware based
   on ACPI 6.6 (Saket Dumbre)

* tag 'acpi-7.0-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
  Revert "ACPI: PM: Let acpi_dev_pm_attach() skip devices without ACPI PM"
  ACPICA: Update the _CPC definition to match ACPI 6.6
This commit is contained in:
Linus Torvalds 2026-03-05 11:37:27 -08:00
commit 398871616f
2 changed files with 3 additions and 11 deletions

View file

@ -379,8 +379,9 @@ const union acpi_predefined_info acpi_gbl_predefined_methods[] = {
{{"_CPC", METHOD_0ARGS,
METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}}, /* Variable-length (Ints/Bufs) */
PACKAGE_INFO(ACPI_PTYPE1_VAR, ACPI_RTYPE_INTEGER | ACPI_RTYPE_BUFFER, 0,
0, 0, 0),
PACKAGE_INFO(ACPI_PTYPE1_VAR,
ACPI_RTYPE_INTEGER | ACPI_RTYPE_BUFFER |
ACPI_RTYPE_PACKAGE, 0, 0, 0, 0),
{{"_CR3", METHOD_0ARGS, /* ACPI 6.0 */
METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},

View file

@ -1456,15 +1456,6 @@ int acpi_dev_pm_attach(struct device *dev, bool power_on)
if (!adev || !acpi_match_device_ids(adev, special_pm_ids))
return 0;
/*
* Skip devices whose ACPI companions don't support power management and
* don't have a wakeup GPE.
*/
if (!acpi_device_power_manageable(adev) && !acpi_device_can_wakeup(adev)) {
dev_dbg(dev, "No ACPI power management or wakeup GPE\n");
return 0;
}
/*
* Only attach the power domain to the first device if the
* companion is shared by multiple. This is to prevent doing power