linux/drivers/acpi
Zhang Rui e0d1f09e31 ACPI / battery: wakeup the system only when necessary
ACPI Battery device receives notifications from firmware frequently,
and most of these notifications are some general events, like battery
remaining capacity change, etc, which should not wake the system up
if the system is in suspend/hibernate state.

This causes a problem that the system wakes up from suspend to freeze
shortly, because there is an ACPI battery notification every 10 seconds.

Fix the problem in this patch by registering ACPI battery device'
own wakeup source, and waking up the system only when the battery remaining
capacity is critical low, or lower than the alarm capacity set via _BTP.

Link: https://bugzilla.kernel.org/show_bug.cgi?id=76221
Signed-off-by: Zhang Rui <rui.zhang@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2014-05-30 13:45:25 +02:00
..
acpica ACPICA: Fix buffer allocation issue for generic_serial_bus region accesses. 2014-04-21 23:12:12 +02:00
apei ACPI / APEI: Remove X86 redundant dependency for APEI GHES. 2014-02-18 01:29:45 +01:00
ac.c ACPI / AC: recheck adapter status upon battery status changes 2014-03-19 01:57:47 +01:00
acpi_cmos_rtc.c ACPI: Remove duplicate definitions of PREFIX 2014-03-19 02:01:57 +01:00
acpi_extlog.c ACPI and power management updates for 3.14-rc1 2014-01-24 15:51:02 -08:00
acpi_ipmi.c ACPI / IPMI: Cleanup coding styles 2013-09-30 19:46:13 +02:00
acpi_lpss.c Merge branches 'pm-qos', 'pm-domains' and 'pm-drivers' 2014-03-20 13:25:36 +01:00
acpi_memhotplug.c ACPI / memhotplug: add parameter to disable memory hotplug 2014-01-16 01:43:49 +01:00
acpi_pad.c ACPI / PAD: use acpi_evaluate_ost() to replace open-coded version 2014-02-21 00:27:47 +01:00
acpi_platform.c ACPI / driver core: Store an ACPI device pointer in struct acpi_dev_node 2013-11-14 23:14:43 +01:00
acpi_processor.c ACPI / processor: Fix failure of loading acpi-cpufreq driver 2014-05-01 01:46:43 +02:00
battery.c ACPI / battery: wakeup the system only when necessary 2014-05-30 13:45:25 +02:00
battery.h ACPI / battery: move some ACPI_BATTERY_* definitions to header 2014-03-19 01:57:46 +01:00
bgrt.c acpi: bgrt: fix build error due to attribute change 2013-08-22 08:34:39 -07:00
blacklist.c Revert "ACPI: Blacklist Win8 OSI for some HP laptop 2013 models" 2014-02-20 01:33:40 +01:00
bus.c ACPI / notify: Do not block unknown type notifications in root handler 2014-04-24 19:27:49 +02:00
button.c ACPI / button: Add ACPI Button event via netlink routine 2014-03-19 02:06:15 +01:00
cm_sbs.c ACPI: Revert "ACPI: Remove CONFIG_ACPI_PROCFS_POWER and cm_sbsc.c" 2014-05-06 01:52:09 +02:00
container.c Merge branches 'acpi-cleanup', 'acpi-thermal', 'acpi-pci', 'acpi-lpss' and 'acpi-button' 2014-03-20 13:20:47 +01:00
custom_method.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00
debugfs.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00
device_pm.c ACPI / PM: Resume runtime-suspended devices later during system suspend 2014-03-04 00:17:48 +01:00
dock.c ACPI / dock: Drop dock_device_ids[] table 2014-04-07 14:11:35 +02:00
ec_sys.c ACPI / EC: Mark the function acpi_ec_add_debugfs() as static in ec_sys.c 2014-01-06 00:13:22 +01:00
ec.c ACPI / EC: Process rather than discard events in acpi_ec_clear 2014-04-29 23:07:38 +02:00
event.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00
fan.c ACPI / fan: do nothing in suspend and poweroff callback 2014-02-20 21:42:09 +01:00
glue.c ACPI / scan: Add bind/unbind callbacks to struct acpi_scan_handler 2014-02-11 00:35:46 +01:00
hed.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00
internal.h ACPI / hotplug: Rework deferred execution of acpi_device_hotplug() 2014-03-05 01:26:35 +01:00
Kconfig ACPI / proc: Do not say when /proc interfaces will be deleted in Kconfig 2014-05-10 13:51:36 +02:00
Makefile ACPI: Revert "ACPI: Remove CONFIG_ACPI_PROCFS_POWER and cm_sbsc.c" 2014-05-06 01:52:09 +02:00
numa.c ACPI / numa: Use __weak, not the gcc-specific version 2014-02-03 10:39:43 -07:00
nvs.c ACPI / NVS: Include appropriate header file in nvs.c 2014-01-06 00:13:22 +01:00
osl.c ACPI: Clean up memory allocations 2014-04-04 16:23:33 +02:00
pci_irq.c ACPI / PCI: Do not call ISA-specific code if ISA is not supported 2014-02-20 21:37:42 +01:00
pci_link.c ACPI: Remove duplicate definitions of PREFIX 2014-03-19 02:01:57 +01:00
pci_root.c Merge branches 'acpi-cleanup', 'acpi-thermal', 'acpi-pci', 'acpi-lpss' and 'acpi-button' 2014-03-20 13:20:47 +01:00
pci_slot.c ACPI / PCI: Include appropriate header file in pci_slot.c 2014-01-06 00:13:22 +01:00
power.c ACPI: Remove duplicate definitions of PREFIX 2014-03-19 02:01:57 +01:00
proc.c ACPI / proc: remove unneeded NULL check 2014-02-05 01:06:21 +01:00
processor_core.c Merge branches 'acpi-processor' and 'pnp' 2014-04-01 22:09:50 +02:00
processor_driver.c ACPI: Remove duplicate definitions of PREFIX 2014-03-19 02:01:57 +01:00
processor_idle.c ACPI and power management updates for 3.14-rc1 2014-01-24 15:51:02 -08:00
processor_perflib.c ACPI / processor: use acpi_evaluate_ost() to replace open-coded version 2014-02-21 00:27:47 +01:00
processor_thermal.c ACPI: correct minor typos 2013-12-07 01:38:45 +01:00
processor_throttling.c ACPI / processor: Rework processor throttling with work_on_cpu() 2014-02-27 00:21:05 +01:00
reboot.c Revert "ACPI: ignore FADT reset-reg-sup flag" 2012-04-20 11:19:35 -07:00
resource.c ACPI / resources: ignore invalid ACPI device resources 2014-03-01 22:46:05 +01:00
sbs.c ACPI / battery: move some ACPI_BATTERY_* definitions to header 2014-03-19 01:57:46 +01:00
sbshc.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00
sbshc.h
scan.c Merge branches 'pm-qos', 'pm-domains' and 'pm-drivers' 2014-03-20 13:25:36 +01:00
sleep.c ACPI / sleep: Add extra checks for HW Reduced ACPI mode sleep states 2014-03-13 22:11:39 +01:00
sleep.h ACPI: Drop power resources driver 2013-01-17 14:11:06 +01:00
sysfs.c ACPI: Remove duplicate definitions of PREFIX 2014-03-19 02:01:57 +01:00
tables.c ACPI / tables: Replace printk with pr_* 2014-03-02 01:34:16 +01:00
thermal.c ACPI / thermal: Fix wrong variable usage in debug statement 2014-04-07 14:00:49 +02:00
utils.c ACPI: Clean up memory allocations 2014-04-04 16:23:33 +02:00
video_detect.c ACPI: Remove duplicate definitions of PREFIX 2014-03-19 02:01:57 +01:00
video.c ACPI / video: Favor native backlight interface for ThinkPad Helix 2014-04-07 14:10:21 +02:00
wakeup.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00