linux/Documentation/ABI/testing
Rafael J. Wysocki 2d984ad132 PM / QoS: Introcuce latency tolerance device PM QoS type
Add a new latency tolerance device PM QoS type to be use for
specifying active state (RPM_ACTIVE) memory access (DMA) latency
tolerance requirements for devices.  It may be used to prevent
hardware from choosing overly aggressive energy-saving operation
modes (causing too much latency to appear) for the whole platform.

This feature reqiures hardware support, so it only will be
available for devices having a new .set_latency_tolerance()
callback in struct dev_pm_info populated, in which case the
routine pointed to by it should implement whatever is necessary
to transfer the effective requirement value to the hardware.

Whenever the effective latency tolerance changes for the device,
its .set_latency_tolerance() callback will be executed and the
effective value will be passed to it.  If that value is negative,
which means that the list of latency tolerance requirements for
the device is empty, the callback is expected to switch the
underlying hardware latency tolerance control mechanism to an
autonomous mode if available.  If that value is PM_QOS_LATENCY_ANY,
in turn, and the hardware supports a special "no requirement"
setting, the callback is expected to use it.  That allows software
to prevent the hardware from automatically updating the device's
latency tolerance in response to its power state changes (e.g. during
transitions from D3cold to D0), which generally may be done in the
autonomous latency tolerance control mode.

If .set_latency_tolerance() is present for the device, a new
pm_qos_latency_tolerance_us attribute will be present in the
devivce's power directory in sysfs.  Then, user space can use
that attribute to specify its latency tolerance requirement for
the device, if any.  Writing "any" to it means "no requirement, but
do not let the hardware control latency tolerance" and writing
"auto" to it allows the hardware to be switched to the autonomous
mode if there are no other requirements from the kernel side in the
device's list.

This changeset includes a fix from Mika Westerberg.

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2014-02-11 00:35:38 +01:00
..
configfs-spear-pcie-gadget ST SPEAr: PCIE gadget suppport 2011-03-22 17:44:10 -07:00
configfs-usb-gadget Documentation: fix multiple typo occurences s/KenelVersion/KernelVersion/ 2014-01-29 16:22:40 -08:00
configfs-usb-gadget-acm Documentation: fix multiple typo occurences s/KenelVersion/KernelVersion/ 2014-01-29 16:22:40 -08:00
configfs-usb-gadget-ecm Documentation: fix multiple typo occurences s/KenelVersion/KernelVersion/ 2014-01-29 16:22:40 -08:00
configfs-usb-gadget-eem Documentation: fix multiple typo occurences s/KenelVersion/KernelVersion/ 2014-01-29 16:22:40 -08:00
configfs-usb-gadget-ffs Documentation: fix multiple typo occurences s/KenelVersion/KernelVersion/ 2014-01-29 16:22:40 -08:00
configfs-usb-gadget-loopback Documentation: fix multiple typo occurences s/KenelVersion/KernelVersion/ 2014-01-29 16:22:40 -08:00
configfs-usb-gadget-mass-storage Documentation: fix multiple typo occurences s/KenelVersion/KernelVersion/ 2014-01-29 16:22:40 -08:00
configfs-usb-gadget-ncm Documentation: fix multiple typo occurences s/KenelVersion/KernelVersion/ 2014-01-29 16:22:40 -08:00
configfs-usb-gadget-obex Documentation: fix multiple typo occurences s/KenelVersion/KernelVersion/ 2014-01-29 16:22:40 -08:00
configfs-usb-gadget-phonet Documentation: fix multiple typo occurences s/KenelVersion/KernelVersion/ 2014-01-29 16:22:40 -08:00
configfs-usb-gadget-rndis Documentation: fix multiple typo occurences s/KenelVersion/KernelVersion/ 2014-01-29 16:22:40 -08:00
configfs-usb-gadget-serial Documentation: fix multiple typo occurences s/KenelVersion/KernelVersion/ 2014-01-29 16:22:40 -08:00
configfs-usb-gadget-sourcesink Documentation: fix multiple typo occurences s/KenelVersion/KernelVersion/ 2014-01-29 16:22:40 -08:00
configfs-usb-gadget-subset Documentation: fix multiple typo occurences s/KenelVersion/KernelVersion/ 2014-01-29 16:22:40 -08:00
debugfs-driver-genwqe GenWQE Debugfs interfaces 2013-12-18 16:51:15 -08: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-pfo-nx-crypto powerpc/crypto: debugfs routines and docs for the nx device driver 2012-05-16 15:05:45 +10:00
debugfs-pktcdvd doc: use correct debugfs mountpoint 2009-04-13 15:04:33 -07:00
dev-kmsg doc: fix quite a few typos within Documentation 2012-11-19 14:28:24 +01:00
evm evm: re-release 2011-07-18 12:29:40 -04:00
ima_policy ima: add policy support for file system uuid 2013-02-06 10:40:29 -05:00
procfs-diskstats tree-wide: fix assorted typos all over the place 2009-12-04 15:39:55 +01:00
pstore pstore: Create a convenient mount point for pstore 2013-02-12 13:07:22 -08:00
sysfs-ata [libata] Add ATA transport class 2010-10-21 20:21:03 -04:00
sysfs-block block: Implement support for WRITE SAME 2012-09-20 14:31:45 +02:00
sysfs-block-bcache bcache: A block layer cache 2013-03-23 16:11:31 -07:00
sysfs-block-dm dm: document sysfs entries 2012-03-28 18:41:23 +01:00
sysfs-block-rssd mtip32xx: Remove 'registers' and 'flags' from sysfs 2012-06-05 09:13:48 +02:00
sysfs-block-zram zram: doc fixes 2013-08-27 10:47:50 +02:00
sysfs-bus-acpi ACPI: Add sysfs ABI documentation 2013-06-21 00:13:15 +02: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-events perf tools: fix a typo of a Power7 event name 2013-07-08 17:40:05 -03:00
sysfs-bus-event_source-devices-format perf: Expand definition of sysfs format attribute 2013-05-29 16:11:40 +03:00
sysfs-bus-fcoe libfcoe, fcoe, bnx2fc: Add new fcoe control interface 2012-12-14 10:38:54 -08: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-i2c-devices-lm3533 mfd: Remove lm3533 boost attributes 2012-05-20 17:27:01 +02:00
sysfs-bus-iio iio: Add support for humidity sensors 2013-12-03 20:22:29 +00:00
sysfs-bus-iio-frequency-ad9523 iio: move ABI specification for store_eeprom; is used by ad9523, mcp4725 and ds1077 devices 2013-08-03 18:40:31 +01:00
sysfs-bus-iio-frequency-adf4350 iio: fix typo, Documentation/ABI/testing/sysfs-bus-iio-frequency-adf4350 2013-08-03 18:40:32 +01:00
sysfs-bus-iio-light-lm3533-als iio: cleanup sysfs-bus-iio-light-lm3533-als 2012-06-15 14:39:18 -07:00
sysfs-bus-iio-mpu6050 Invensense MPU6050 Device Driver. 2013-02-10 17:42:43 +00:00
sysfs-bus-mdio phylib: mdio: Add sysfs attribute for PHY identifiers. 2012-11-09 16:38:15 -05:00
sysfs-bus-media [media] media: Media device 2011-03-22 04:53:09 -03:00
sysfs-bus-mei mei: bus: Initial MEI Client bus type implementation 2013-03-29 08:35:47 -07:00
sysfs-bus-pci PCI/MSI: Export MSI mode using attributes, not kobjects 2013-12-19 15:14:52 -07: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: add support for single-major device number allocation scheme 2013-12-31 20:31:59 +02: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: core: allow a reference device for new_id 2014-01-10 16:54:35 -08:00
sysfs-bus-usb-devices-usbsevseg Documentation: Add newline at end-of-file to files lacking one 2012-07-20 23:10:28 +02: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: Add newline at end-of-file to files lacking one 2012-07-20 23:10:28 +02:00
sysfs-class-backlight-driver-lm3533 backlight: add LM3533 backlight driver 2012-05-29 16:22:29 -07:00
sysfs-class-bdi bdi: allow block devices to say that they require stable page writes 2013-02-21 17:22:19 -08:00
sysfs-class-devfreq PM / devfreq: add comments and Documentation 2013-06-03 20:20:29 +09:00
sysfs-class-extcon extcon: fix typos in sys-class-extcon 2012-09-05 12:18:11 -07: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-led-driver-lm3533 leds: add LM3533 LED driver 2012-05-29 16:22:32 -07:00
sysfs-class-mic.txt misc: mic: Enable OSPM suspend and resume support. 2013-10-05 18:01:42 -07:00
sysfs-class-mtd mtd: add MTD_MLCNANDFLASH case for mtd_type_show() 2013-10-27 16:27:06 -07:00
sysfs-class-net-batman-adv batman-adv: update email address for Marek Lindner 2013-10-19 14:53:48 +02:00
sysfs-class-net-grcan can: grcan: Add device driver for GRCAN and GRHCAN cores 2012-11-15 20:47:26 +01:00
sysfs-class-net-mesh batman-adv: add isolation_mark sysfs attribute 2014-01-08 20:49:42 +01:00
sysfs-class-pktcdvd
sysfs-class-power ds2760_battery: Document ABI change 2010-05-19 12:25:39 +04:00
sysfs-class-powercap PowerCap: Documentation 2013-10-17 00:36:06 +02:00
sysfs-class-pwm pwm: Add sysfs interface 2013-06-21 11:32:51 +02:00
sysfs-class-regulator regulator: core: Support bypass mode 2012-09-10 11:25:10 +08: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 wusbcore: add entries in Documentation/ABI for new wusbhc sysfs attributes 2013-06-24 16:19:03 -07:00
sysfs-dev
sysfs-devices driver-core: documentation: fix up Greg's email address 2012-02-15 14:48:01 -08:00
sysfs-devices-edac MAINTAINERS & ABI: Update to point to my new email 2013-07-08 11:04:11 -03:00
sysfs-devices-firmware_node ACPI: Add new sysfs interface to export device description 2012-10-06 15:52:16 -04:00
sysfs-devices-lpss_ltr ACPI / LPSS: Add support for exposing LTR registers to user space 2013-03-21 22:45:15 +01: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-online Driver core: Add offline/online device operations 2013-05-12 14:14:09 +02: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-platform-sh_mobile_lcdc_fb fbdev: sh_mobile_lcdc: Implement overlays support 2012-06-20 10:02:54 +02:00
sysfs-devices-power PM / QoS: Introcuce latency tolerance device PM QoS type 2014-02-11 00:35:38 +01:00
sysfs-devices-power_resources_D0 ACPI / PM: Expose lists of device power resources to user space 2013-01-25 21:51:32 +01:00
sysfs-devices-power_resources_D1 ACPI / PM: Expose lists of device power resources to user space 2013-01-25 21:51:32 +01:00
sysfs-devices-power_resources_D2 ACPI / PM: Expose lists of device power resources to user space 2013-01-25 21:51:32 +01:00
sysfs-devices-power_resources_D3hot ACPI / PM: Expose lists of device power resources to user space 2013-01-25 21:51:32 +01:00
sysfs-devices-power_resources_wakeup ACPI / PM: Expose lists of device wakeup power resources to user space 2013-04-11 22:41:48 +02:00
sysfs-devices-power_state ACPI / PM: Expose power states of ACPI devices to user space 2013-01-24 12:49:59 +01:00
sysfs-devices-real_power_state ACPI / PM: Expose power states of ACPI devices to user space 2013-01-24 12:49:59 +01:00
sysfs-devices-resource_in_use ACPI / PM: Expose current status of ACPI power resources 2013-01-24 12:50:09 +01:00
sysfs-devices-soc Documentation: add information for new sysfs soc bus functionality 2012-02-10 11:42:25 -08:00
sysfs-devices-sun ACPI: Add sysfs ABI documentation 2013-06-21 00:13:15 +02:00
sysfs-devices-system-cpu Documentation: add ABI entry for intel_pstate 2014-01-06 14:35:16 +01:00
sysfs-devices-system-ibm-rtl IBM Real-Time "SMI Free" mode driver -v7 2010-10-21 10:10:46 -04:00
sysfs-devices-system-xen_cpu xen/pcpu: Xen physical cpus online/offline sys interface 2012-07-19 15:51:39 -04:00
sysfs-driver-genwqe GenWQE Sysfs interfaces 2013-12-18 16:51:15 -08:00
sysfs-driver-hid HID: Add HID Report Descriptor to sysfs 2011-02-17 13:23:14 +01:00
sysfs-driver-hid-lenovo-tpkbd HID: Driver for Lenovo Keyboard with Trackpoint 2012-06-08 10:44:10 +02: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 IskuFX 2013-03-14 11:50:49 +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: deprecate some Koneplus attributes 2012-11-12 15:30:28 +01:00
sysfs-driver-hid-roccat-konepure HID: roccat: add support for Roccat Kone Pure gaming mouse 2013-03-14 11:50:49 +01:00
sysfs-driver-hid-roccat-kovaplus HID: roccat: deprecate some Kovaplus attributes 2012-11-12 15:30:29 +01:00
sysfs-driver-hid-roccat-lua HID: roccat: add support for Roccat Lua 2012-10-17 10:44:47 +02:00
sysfs-driver-hid-roccat-pyra HID: roccat: deprecated some Pyra attributes 2012-11-12 15:30:28 +01:00
sysfs-driver-hid-roccat-ryos HID: roccat: add support for Ryos MK keyboards 2013-10-30 14:17:31 +01:00
sysfs-driver-hid-roccat-savu HID: roccat: enable Savu device reset 2012-11-05 13:17:39 +01:00
sysfs-driver-hid-srws1 USB: HID: Steelseries SRW-S1 Add support controlling all LEDs simultaneously 2013-01-31 16:39:32 +01:00
sysfs-driver-hid-thingm HID: add ThingM blink(1) USB RGB LED support 2013-02-19 11:31:46 +01:00
sysfs-driver-hid-wiimote HID: wiimote: add pro-controller analog stick calibration 2013-10-30 14:13:29 +01:00
sysfs-driver-intel-rapid-start Add support driver for Intel Rapid Start Technology 2013-07-10 15:42:48 -04:00
sysfs-driver-ppi doc: fix quite a few typos within Documentation 2012-11-19 14:28:24 +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-sunxi-sid ARM: sunxi: Initial support for Allwinner's Security ID fuses 2013-09-26 13:47:36 -07:00
sysfs-driver-wacom HID: wacom: OLEDs control over sysfs for Intuos4 2012-08-15 10:29:11 +02:00
sysfs-driver-xen-blkback xen-blkback/sysfs: Move the parameters for the persistent grant features 2013-06-04 15:58:43 -04:00
sysfs-driver-xen-blkfront xen-blkfront: Introduce a 'max' module parameter to alter the amount of indirect segments. 2013-06-04 15:58:35 -04:00
sysfs-firmware-acpi ACPI / hotplug: Use device offline/online for graceful hot-removal 2013-05-12 14:14:24 +02:00
sysfs-firmware-dmi firmware: Fix grammar in sysfs-firmware-dmi doc 2011-04-19 16:45:51 -07:00
sysfs-firmware-efi efi: Export more EFI table variables to sysfs 2013-12-21 15:29:36 +00:00
sysfs-firmware-efi-runtime-map efi: Export EFI runtime memory mapping to sysfs 2013-12-21 15:29:36 +00: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: make the zero-out chunk size tunable 2012-08-17 09:54:17 -04:00
sysfs-fs-f2fs f2fs: update documents and a MAINTAINERS entry 2014-01-09 21:00:06 +09: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
sysfs-kernel-boot_params x86: Export x86 boot_params to sysfs 2013-12-29 13:09:07 +00:00
sysfs-kernel-fscaps kernel/ksysfs.c: expose file_caps_enabled in sysfs 2011-04-19 16:45:51 -07:00
sysfs-kernel-iommu_groups iommu: IOMMU Groups 2012-06-25 13:48:15 +02:00
sysfs-kernel-mm
sysfs-kernel-mm-hugepages hugetlb: new sysfs interface 2008-07-24 10:47:17 -07:00
sysfs-kernel-mm-ksm ksm: add sysfs ABI Documentation 2013-02-23 17:50:19 -08: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-kernel-vmcoreinfo kdump: add /sys/kernel/vmcoreinfo ABI documentation 2014-01-23 16:37:03 -08:00
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
sysfs-platform-asus-laptop Documentation: fix minor typos/spelling 2011-04-04 17:51:47 -07:00
sysfs-platform-asus-wmi asus-wmi: enable resume on lid open 2012-07-28 00:11:49 -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: add Lenovo IdeaPad Z570 support (part 3) 2012-08-20 12:44:41 -04:00
sysfs-platform-kim drivers:misc: ti-st: move from rfkill to sysfs 2011-02-04 12:41:20 -08:00
sysfs-platform-msi-laptop msi-laptop: Add missing ABI documentation 2013-02-24 14:49:53 -08:00
sysfs-platform-tahvo-usb usb: omap1: Tahvo USB transceiver driver 2013-12-06 14:46:32 -06:00
sysfs-platform-ts5500 x86: Add TS-5500 platform support 2013-01-25 19:40:23 +01:00
sysfs-power MAINTAINERS / Documentation: Update Rafael's e-mail address 2013-10-09 01:47:53 +02:00
sysfs-pps LinuxPPS: core support 2009-06-18 13:04:04 -07:00
sysfs-profiling doc: Update the name of profiling based on sysfs 2012-12-03 11:11:51 +01:00
sysfs-ptp ptp: clarify the clock_name sysfs attribute 2012-09-22 15:42:46 -04:00
sysfs-tty uart: add other serial core layer get attributes 2012-10-30 14:05:32 -07:00
sysfs-wusb_cbaf uwb: document UWB and WUSB sysfs files 2008-09-17 16:54:35 +01:00