linux/Documentation/ABI/testing
Rafael J. Wysocki 7483b4a4d9 PM / Sleep: Implement opportunistic sleep, v2
Introduce a mechanism by which the kernel can trigger global
transitions to a sleep state chosen by user space if there are no
active wakeup sources.

It consists of a new sysfs attribute, /sys/power/autosleep, that
can be written one of the strings returned by reads from
/sys/power/state, an ordered workqueue and a work item carrying out
the "suspend" operations.  If a string representing the system's
sleep state is written to /sys/power/autosleep, the work item
triggering transitions to that state is queued up and it requeues
itself after every execution until user space writes "off" to
/sys/power/autosleep.

That work item enables the detection of wakeup events using the
functions already defined in drivers/base/power/wakeup.c (with one
small modification) and calls either pm_suspend(), or hibernate() to
put the system into a sleep state.  If a wakeup event is reported
while the transition is in progress, it will abort the transition and
the "system suspend" work item will be queued up again.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Reviewed-by: NeilBrown <neilb@suse.de>
2012-05-01 21:25:38 +02:00
..
configfs-spear-pcie-gadget ST SPEAr: PCIE gadget suppport 2011-03-22 17:44:10 -07:00
debugfs-ec Documentation: Add new /sys/kernel/debug/ec/* files to ABI 2010-08-03 09:49:07 -04:00
debugfs-ideapad ideapad: add debugfs support 2011-10-24 16:52:39 +02:00
debugfs-olpc x86/olpc: Add debugfs interface for EC commands 2012-03-27 20:54:52 +02:00
debugfs-pktcdvd doc: use correct debugfs mountpoint 2009-04-13 15:04:33 -07:00
evm evm: re-release 2011-07-18 12:29:40 -04:00
ima_policy ima: rename PATH_CHECK to FILE_CHECK 2010-02-07 03:06:23 -05:00
procfs-diskstats tree-wide: fix assorted typos all over the place 2009-12-04 15:39:55 +01:00
pstore pstore: Allow the user to explicitly choose a backend 2011-07-22 16:14:39 -07:00
sysfs-ata [libata] Add ATA transport class 2010-10-21 20:21:03 -04:00
sysfs-block block: Revert "[SCSI] genhd: add a new attribute "alias" in gendisk" 2011-11-10 09:03:55 +01:00
sysfs-block-dm dm: document sysfs entries 2012-03-28 18:41:23 +01:00
sysfs-block-rssd mtip32xx: Add new sysfs entry 'status' 2012-04-09 08:35:38 +02:00
sysfs-block-zram Staging: zram: Document sysfs entries 2010-08-31 15:34:36 -07:00
sysfs-bus-bcma Documentation/ABI/: update version number references from 2.6.x to 3.x 2011-08-05 13:32:40 +02:00
sysfs-bus-css Fix common misspellings 2011-03-31 11:26:23 -03:00
sysfs-bus-event_source-devices-format perf: Adding sysfs group format attribute for pmu device 2012-03-16 14:06:06 -03:00
sysfs-bus-hsi HSI: Add HSI ABI documentation 2012-04-23 14:23:32 +03:00
sysfs-bus-i2c-devices-fsa9480 drivers/misc: add support the FSA9480 USB Switch 2011-07-25 20:57:14 -07:00
sysfs-bus-i2c-devices-hm6352 hmc6352: add driver for the HMC6352 compass 2010-08-09 20:45:10 -07:00
sysfs-bus-media [media] media: Media device 2011-03-22 04:53:09 -03:00
sysfs-bus-pci PCI/sysfs: add per pci device msi[x] irq listing (v5) 2011-12-05 10:21:44 -08:00
sysfs-bus-pci-devices-cciss cciss: add transport mode attribute to sys 2011-08-08 11:40:17 +02:00
sysfs-bus-pci-drivers-ehci_hcd USB: document ehci-hcd's "companion" sysfs attribute 2011-09-18 01:48:37 -07:00
sysfs-bus-rbd rbd: remove buggy rollback functionality 2011-12-07 10:46:19 -08:00
sysfs-bus-rpmsg rpmsg: add virtio-based remote processor messaging bus 2012-02-08 22:53:58 +02:00
sysfs-bus-umc uwb: document UWB and WUSB sysfs files 2008-09-17 16:54:35 +01:00
sysfs-bus-usb usb: Add support for indicating whether a port is removable 2012-02-09 08:40:11 -08:00
sysfs-bus-usb-devices-usbsevseg USB: Added driver for a Delcom USB 7-segment LED Display 2008-10-17 14:40:51 -07:00
sysfs-c2port Add c2 port support 2008-11-12 17:17:18 -08:00
sysfs-cfq-target-latency Documentation: Add sysfs ABI change for cfq's target latency. 2012-04-01 14:33:40 -07:00
sysfs-class driver-core: documentation: fix up Greg's email address 2012-02-15 14:48:01 -08:00
sysfs-class-backlight-driver-adp8870 Documentation/ABI/: update version number references from 2.6.x to 3.x 2011-08-05 13:32:40 +02:00
sysfs-class-bdi fuse: fix bdi naming conflict 2008-05-24 09:56:07 -07:00
sysfs-class-devfreq PM / devfreq: Add basic governors 2011-10-02 00:19:34 +02:00
sysfs-class-lcd video/lcd: document sysfs interface 2009-08-28 15:21:12 -04:00
sysfs-class-led Fix common misspellings 2011-03-31 11:26:23 -03:00
sysfs-class-mtd Documentation: add MTD sysfs docs 2009-05-29 15:13:04 +01:00
sysfs-class-net-batman-adv net: Add batman-adv meshing protocol 2010-12-16 13:44:24 -08:00
sysfs-class-net-mesh batman-adv: export used routing algorithm via sysfs 2012-02-17 02:50:20 +08:00
sysfs-class-pktcdvd
sysfs-class-power ds2760_battery: Document ABI change 2010-05-19 12:25:39 +04:00
sysfs-class-regulator regulator: add get_status() 2009-03-31 09:56:20 +01:00
sysfs-class-rtc-rtc0-device-rtc_calibration rtc/ab8500: add calibration attribute to AB8500 RTC 2012-01-10 16:30:52 -08:00
sysfs-class-scsi_host [SCSI] isci: Adding documentation to API change and fixup sysfs registration 2011-08-23 19:54:24 -07:00
sysfs-class-uwb_rc uwb: add basic radio manager 2008-11-19 14:46:33 +00:00
sysfs-class-uwb_rc-wusbhc USB: wusb: add wusb_phy_rate sysfs file to host controllers 2009-12-11 11:55:16 -08:00
sysfs-dev sysfs: add /sys/dev/{char,block} to lookup sysfs path by major:minor 2008-07-21 21:54:40 -07:00
sysfs-devices driver-core: documentation: fix up Greg's email address 2012-02-15 14:48:01 -08:00
sysfs-devices-memory Documentation: update broken web addresses. 2010-08-04 15:21:40 +02:00
sysfs-devices-mmc mmc: export eMMC4.4 enhanced area details to sysfs 2011-03-15 13:48:01 -04:00
sysfs-devices-node mm: compaction: add /sys trigger for per-node memory compaction 2010-05-25 08:06:59 -07:00
sysfs-devices-platform-_UDC_-gadget USB: gadget: storage: optional SCSI WRITE FUA bit 2010-08-10 14:35:42 -07:00
sysfs-devices-platform-docg3 Documentation: add sysfs entries for mtd docg3 chips 2012-01-09 18:12:17 +00:00
sysfs-devices-power PM / Sleep: Change wakeup source statistics to follow Android 2012-05-01 21:25:11 +02:00
sysfs-devices-soc Documentation: add information for new sysfs soc bus functionality 2012-02-10 11:42:25 -08:00
sysfs-devices-system-cpu Documentation, ABI: Update L3 cache index disable text 2011-05-16 11:24:30 -07:00
sysfs-devices-system-ibm-rtl IBM Real-Time "SMI Free" mode driver -v7 2010-10-21 10:10:46 -04:00
sysfs-driver-hid HID: Add HID Report Descriptor to sysfs 2011-02-17 13:23:14 +01:00
sysfs-driver-hid-logitech-lg4ff misc latin1 to utf8 conversions 2012-01-02 13:04:55 +01:00
sysfs-driver-hid-multitouch HID: multitouch: create sysfs attribute to control quirks from user-space 2011-11-23 14:50:38 +01:00
sysfs-driver-hid-picolcd HID: split picolcd's operation_mode sysfs attribute 2010-04-27 15:31:26 +02:00
sysfs-driver-hid-prodikeys HID: Prodikeys PC-MIDI HID Driver 2010-05-12 15:18:59 +02:00
sysfs-driver-hid-roccat-arvo HID: roccat: Add 'Users:' tag to sysfs documentation 2011-02-03 17:29:49 +01:00
sysfs-driver-hid-roccat-isku HID: roccat: Add support for Isku keyboard 2011-12-06 10:21:10 +01:00
sysfs-driver-hid-roccat-kone Documentation: fix minor typos/spelling 2011-04-04 17:51:47 -07:00
sysfs-driver-hid-roccat-koneplus HID: roccat: Add "Roccat Talk" support for koneplus 2011-06-13 12:50:40 +02:00
sysfs-driver-hid-roccat-kovaplus Documentation: fix minor typos/spelling 2011-04-04 17:51:47 -07:00
sysfs-driver-hid-roccat-pyra Documentation: fix minor typos/spelling 2011-04-04 17:51:47 -07:00
sysfs-driver-hid-wiimote HID: wiimote: Add extension sysfs attribute 2011-11-22 23:09:08 +01:00
sysfs-driver-samsung-laptop Merge branch 'for_linus' of git://cavan.codon.org.uk/platform-drivers-x86 2012-03-28 14:20:23 -07:00
sysfs-driver-wacom Input: wacom - add LED support for Cintiq 24HD 2011-12-12 00:14:21 -08:00
sysfs-firmware-acpi ACPI: Add support for exposing BGRT data 2012-03-30 04:09:24 -04:00
sysfs-firmware-dmi firmware: Fix grammar in sysfs-firmware-dmi doc 2011-04-19 16:45:51 -07:00
sysfs-firmware-gsmi driver: Google EFI SMI 2011-04-29 18:09:34 -07:00
sysfs-firmware-log driver: Google Memory Console 2011-04-29 18:09:34 -07:00
sysfs-firmware-memmap Bernhard has moved 2009-02-18 15:37:56 -08:00
sysfs-firmware-sfi SFI: add sysfs interface for SFI tables. 2010-05-27 12:46:20 -04:00
sysfs-firmware-sgi_uv sysfs: document files in /sys/firmware/sgi_uv/ 2008-09-02 19:21:40 -07:00
sysfs-fs-ext4 ext4: update ext4 documentation 2011-02-21 20:16:21 -05:00
sysfs-gpio gpiolib: allow poll() on value 2009-09-23 07:39:48 -07:00
sysfs-i2c-bmp085 drivers/misc: support for the pressure sensor BMP085 from Bosch Sensortec 2010-08-09 20:45:05 -07:00
sysfs-ibft Firmware: add iSCSI iBFT Support 2008-04-19 19:10:28 -07:00
sysfs-kernel-fscaps kernel/ksysfs.c: expose file_caps_enabled in sysfs 2011-04-19 16:45:51 -07:00
sysfs-kernel-mm mm: create /sys/kernel/mm 2008-07-24 10:47:17 -07:00
sysfs-kernel-mm-hugepages hugetlb: new sysfs interface 2008-07-24 10:47:17 -07:00
sysfs-kernel-slab slub: document setting min order with debug_guardpage_minorder > 0 2012-01-12 20:13:04 -08:00
sysfs-kernel-uids
sysfs-memory-page-offline HWPOISON: Add soft page offline support 2009-12-16 12:20:00 +01:00
sysfs-module modules: sysfs - export: taint, coresize, initsize 2012-01-13 09:32:15 +10:30
sysfs-ocfs2 ocfs2: Document /sys/fs/ocfs2 2008-04-18 08:56:07 -07:00
sysfs-platform-asus-laptop Documentation: fix minor typos/spelling 2011-04-04 17:51:47 -07:00
sysfs-platform-asus-wmi eeepc-wmi: asus generic asus-wmi.ko module 2011-03-28 06:07:20 -04:00
sysfs-platform-at91 can: at91_can: make can_id of mailbox 0 configurable 2011-01-24 14:56:37 +01:00
sysfs-platform-eeepc-laptop eeepc-laptop: set the right paths in the documentation 2010-02-28 19:30:57 +01:00
sysfs-platform-ideapad-laptop ideapad: remove sysfs node for cfg 2011-10-24 16:52:39 +02:00
sysfs-platform-kim drivers:misc: ti-st: move from rfkill to sysfs 2011-02-04 12:41:20 -08:00
sysfs-power PM / Sleep: Implement opportunistic sleep, v2 2012-05-01 21:25:38 +02:00
sysfs-pps LinuxPPS: core support 2009-06-18 13:04:04 -07:00
sysfs-profiling profiling: dynamically enable readprofile at runtime 2008-10-16 11:21:31 -07:00
sysfs-ptp ptp: Added a brand new class driver for ptp clocks. 2011-05-23 13:01:00 -07:00
sysfs-tty tty: add 'active' sysfs attribute to tty0 and console device 2010-12-16 16:15:34 -08:00
sysfs-wusb_cbaf uwb: document UWB and WUSB sysfs files 2008-09-17 16:54:35 +01:00