diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2019-05-15 11:58:49 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2019-05-15 11:58:49 -0400 |
commit | fcdec14365ec96f490cf1c8d9b618643ec88a95e (patch) | |
tree | 2387a429593fe66a7d017f774a471c1b177184e6 /drivers | |
parent | bfbfbf7368627860dd769567599d73ad8f6d8191 (diff) | |
parent | e3e28670bb28ad52d0d0224e86ec11c3f31ff1ff (diff) |
Merge tag 'acpi-5.2-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm
Pull more ACPI updates from Rafael Wysocki:
"These fix two regressions introduced during the 5.0 cycle, in ACPICA
and in device PM, cause the values returned by _ADR to be stored in 64
bits and fix two ACPI documentation issues.
Specifics:
- Update the ACPICA code in the kernel to upstream revision 20190509
including one regression fix:
* Prevent excessive ACPI debug messages from being printed by
moving the ACPI_DEBUG_DEFAULT definition to the right place
(Erik Schmauss).
- Set the enable_for_wake bits for wakeup GPEs during suspend to idle
to allow acpi_enable_all_wakeup_gpes() to enable them as
aproppriate and make wakeup devices sighaling events through ACPI
GPEs work with suspend-to-idle again (Rajat Jain).
- Use 64 bits to store the return values of _ADR which are assumed to
be 64-bit by some bus specs and may contain nonzero bits in the
upper 32 bits part for some devices (Pierre-Louis Bossart).
- Fix two minor issues with the ACPI documentation (Sakari Ailus)"
* tag 'acpi-5.2-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
ACPI: PM: Set enable_for_wake for wakeup GPEs during suspend-to-idle
Documentation: ACPI: Direct references are allowed to devices only
Documentation: ACPI: Use tabs for graph ASL indentation
ACPICA: Update version to 20190509
ACPICA: Linux: move ACPI_DEBUG_DEFAULT flag out of ifndef
ACPI: bus: change _ADR representation to 64 bits
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/acpi/device_sysfs.c | 6 | ||||
-rw-r--r-- | drivers/acpi/sleep.c | 4 |
2 files changed, 8 insertions, 2 deletions
diff --git a/drivers/acpi/device_sysfs.c b/drivers/acpi/device_sysfs.c index 8940054d6250..78c2653bf020 100644 --- a/drivers/acpi/device_sysfs.c +++ b/drivers/acpi/device_sysfs.c | |||
@@ -428,8 +428,10 @@ static ssize_t acpi_device_adr_show(struct device *dev, | |||
428 | { | 428 | { |
429 | struct acpi_device *acpi_dev = to_acpi_device(dev); | 429 | struct acpi_device *acpi_dev = to_acpi_device(dev); |
430 | 430 | ||
431 | return sprintf(buf, "0x%08x\n", | 431 | if (acpi_dev->pnp.bus_address > U32_MAX) |
432 | (unsigned int)(acpi_dev->pnp.bus_address)); | 432 | return sprintf(buf, "0x%016llx\n", acpi_dev->pnp.bus_address); |
433 | else | ||
434 | return sprintf(buf, "0x%08llx\n", acpi_dev->pnp.bus_address); | ||
433 | } | 435 | } |
434 | static DEVICE_ATTR(adr, 0444, acpi_device_adr_show, NULL); | 436 | static DEVICE_ATTR(adr, 0444, acpi_device_adr_show, NULL); |
435 | 437 | ||
diff --git a/drivers/acpi/sleep.c b/drivers/acpi/sleep.c index 403c4ff15349..e52f1238d2d6 100644 --- a/drivers/acpi/sleep.c +++ b/drivers/acpi/sleep.c | |||
@@ -977,6 +977,8 @@ static int acpi_s2idle_prepare(void) | |||
977 | if (acpi_sci_irq_valid()) | 977 | if (acpi_sci_irq_valid()) |
978 | enable_irq_wake(acpi_sci_irq); | 978 | enable_irq_wake(acpi_sci_irq); |
979 | 979 | ||
980 | acpi_enable_wakeup_devices(ACPI_STATE_S0); | ||
981 | |||
980 | /* Change the configuration of GPEs to avoid spurious wakeup. */ | 982 | /* Change the configuration of GPEs to avoid spurious wakeup. */ |
981 | acpi_enable_all_wakeup_gpes(); | 983 | acpi_enable_all_wakeup_gpes(); |
982 | acpi_os_wait_events_complete(); | 984 | acpi_os_wait_events_complete(); |
@@ -1027,6 +1029,8 @@ static void acpi_s2idle_restore(void) | |||
1027 | { | 1029 | { |
1028 | acpi_enable_all_runtime_gpes(); | 1030 | acpi_enable_all_runtime_gpes(); |
1029 | 1031 | ||
1032 | acpi_disable_wakeup_devices(ACPI_STATE_S0); | ||
1033 | |||
1030 | if (acpi_sci_irq_valid()) | 1034 | if (acpi_sci_irq_valid()) |
1031 | disable_irq_wake(acpi_sci_irq); | 1035 | disable_irq_wake(acpi_sci_irq); |
1032 | 1036 | ||