aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/power
diff options
context:
space:
mode:
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>2017-01-30 03:00:02 -0500
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2017-01-30 03:00:02 -0500
commit858a0d7eb5300b5f620d98ab3c4b96c9d5f19131 (patch)
tree79ad2ecb357183384b172155e44df71c86e24e49 /Documentation/power
parente326ce013a8e851193eb337aafb1aa396c533a61 (diff)
parent47087eeb744c83482774e8f6dc20cf2b11fff53f (diff)
Merge back earlier suspend/hibernation changes for v4.11.
Diffstat (limited to 'Documentation/power')
-rw-r--r--Documentation/power/00-INDEX2
-rw-r--r--Documentation/power/devices.txt14
-rw-r--r--Documentation/power/pci.txt10
-rw-r--r--Documentation/power/runtime_pm.txt2
-rw-r--r--Documentation/power/swsusp-dmcrypt.txt2
5 files changed, 21 insertions, 9 deletions
diff --git a/Documentation/power/00-INDEX b/Documentation/power/00-INDEX
index ad04cc8097ed..7cb6085839f3 100644
--- a/Documentation/power/00-INDEX
+++ b/Documentation/power/00-INDEX
@@ -6,7 +6,7 @@ basic-pm-debugging.txt
6 - Debugging suspend and resume 6 - Debugging suspend and resume
7charger-manager.txt 7charger-manager.txt
8 - Battery charger management. 8 - Battery charger management.
9devices.txt 9admin-guide/devices.rst
10 - How drivers interact with system-wide power management 10 - How drivers interact with system-wide power management
11drivers-testing.txt 11drivers-testing.txt
12 - Testing suspend and resume support in device drivers 12 - Testing suspend and resume support in device drivers
diff --git a/Documentation/power/devices.txt b/Documentation/power/devices.txt
index 8ba6625fdd63..73ddea39a9ce 100644
--- a/Documentation/power/devices.txt
+++ b/Documentation/power/devices.txt
@@ -607,7 +607,9 @@ individually. Instead, a set of devices sharing a power resource can be put
607into a low-power state together at the same time by turning off the shared 607into a low-power state together at the same time by turning off the shared
608power resource. Of course, they also need to be put into the full-power state 608power resource. Of course, they also need to be put into the full-power state
609together, by turning the shared power resource on. A set of devices with this 609together, by turning the shared power resource on. A set of devices with this
610property is often referred to as a power domain. 610property is often referred to as a power domain. A power domain may also be
611nested inside another power domain. The nested domain is referred to as the
612sub-domain of the parent domain.
611 613
612Support for power domains is provided through the pm_domain field of struct 614Support for power domains is provided through the pm_domain field of struct
613device. This field is a pointer to an object of type struct dev_pm_domain, 615device. This field is a pointer to an object of type struct dev_pm_domain,
@@ -629,6 +631,16 @@ support for power domains into subsystem-level callbacks, for example by
629modifying the platform bus type. Other platforms need not implement it or take 631modifying the platform bus type. Other platforms need not implement it or take
630it into account in any way. 632it into account in any way.
631 633
634Devices may be defined as IRQ-safe which indicates to the PM core that their
635runtime PM callbacks may be invoked with disabled interrupts (see
636Documentation/power/runtime_pm.txt for more information). If an IRQ-safe
637device belongs to a PM domain, the runtime PM of the domain will be
638disallowed, unless the domain itself is defined as IRQ-safe. However, it
639makes sense to define a PM domain as IRQ-safe only if all the devices in it
640are IRQ-safe. Moreover, if an IRQ-safe domain has a parent domain, the runtime
641PM of the parent is only allowed if the parent itself is IRQ-safe too with the
642additional restriction that all child domains of an IRQ-safe parent must also
643be IRQ-safe.
632 644
633Device Low Power (suspend) States 645Device Low Power (suspend) States
634--------------------------------- 646---------------------------------
diff --git a/Documentation/power/pci.txt b/Documentation/power/pci.txt
index 44558882aa60..85c746cbab2c 100644
--- a/Documentation/power/pci.txt
+++ b/Documentation/power/pci.txt
@@ -8,7 +8,7 @@ management. Based on previous work by Patrick Mochel <mochel@transmeta.com>
8 8
9This document only covers the aspects of power management specific to PCI 9This document only covers the aspects of power management specific to PCI
10devices. For general description of the kernel's interfaces related to device 10devices. For general description of the kernel's interfaces related to device
11power management refer to Documentation/power/devices.txt and 11power management refer to Documentation/power/admin-guide/devices.rst and
12Documentation/power/runtime_pm.txt. 12Documentation/power/runtime_pm.txt.
13 13
14--------------------------------------------------------------------------- 14---------------------------------------------------------------------------
@@ -417,7 +417,7 @@ pm->runtime_idle() callback.
4172.4. System-Wide Power Transitions 4172.4. System-Wide Power Transitions
418---------------------------------- 418----------------------------------
419There are a few different types of system-wide power transitions, described in 419There are a few different types of system-wide power transitions, described in
420Documentation/power/devices.txt. Each of them requires devices to be handled 420Documentation/power/admin-guide/devices.rst. Each of them requires devices to be handled
421in a specific way and the PM core executes subsystem-level power management 421in a specific way and the PM core executes subsystem-level power management
422callbacks for this purpose. They are executed in phases such that each phase 422callbacks for this purpose. They are executed in phases such that each phase
423involves executing the same subsystem-level callback for every device belonging 423involves executing the same subsystem-level callback for every device belonging
@@ -623,7 +623,7 @@ System restore requires a hibernation image to be loaded into memory and the
623pre-hibernation memory contents to be restored before the pre-hibernation system 623pre-hibernation memory contents to be restored before the pre-hibernation system
624activity can be resumed. 624activity can be resumed.
625 625
626As described in Documentation/power/devices.txt, the hibernation image is loaded 626As described in Documentation/power/admin-guide/devices.rst, the hibernation image is loaded
627into memory by a fresh instance of the kernel, called the boot kernel, which in 627into memory by a fresh instance of the kernel, called the boot kernel, which in
628turn is loaded and run by a boot loader in the usual way. After the boot kernel 628turn is loaded and run by a boot loader in the usual way. After the boot kernel
629has loaded the image, it needs to replace its own code and data with the code 629has loaded the image, it needs to replace its own code and data with the code
@@ -677,7 +677,7 @@ controlling the runtime power management of their devices.
677 677
678At the time of this writing there are two ways to define power management 678At the time of this writing there are two ways to define power management
679callbacks for a PCI device driver, the recommended one, based on using a 679callbacks for a PCI device driver, the recommended one, based on using a
680dev_pm_ops structure described in Documentation/power/devices.txt, and the 680dev_pm_ops structure described in Documentation/power/admin-guide/devices.rst, and the
681"legacy" one, in which the .suspend(), .suspend_late(), .resume_early(), and 681"legacy" one, in which the .suspend(), .suspend_late(), .resume_early(), and
682.resume() callbacks from struct pci_driver are used. The legacy approach, 682.resume() callbacks from struct pci_driver are used. The legacy approach,
683however, doesn't allow one to define runtime power management callbacks and is 683however, doesn't allow one to define runtime power management callbacks and is
@@ -1046,5 +1046,5 @@ PCI Local Bus Specification, Rev. 3.0
1046PCI Bus Power Management Interface Specification, Rev. 1.2 1046PCI Bus Power Management Interface Specification, Rev. 1.2
1047Advanced Configuration and Power Interface (ACPI) Specification, Rev. 3.0b 1047Advanced Configuration and Power Interface (ACPI) Specification, Rev. 3.0b
1048PCI Express Base Specification, Rev. 2.0 1048PCI Express Base Specification, Rev. 2.0
1049Documentation/power/devices.txt 1049Documentation/power/admin-guide/devices.rst
1050Documentation/power/runtime_pm.txt 1050Documentation/power/runtime_pm.txt
diff --git a/Documentation/power/runtime_pm.txt b/Documentation/power/runtime_pm.txt
index 1fd1fbe9ce95..4870980e967e 100644
--- a/Documentation/power/runtime_pm.txt
+++ b/Documentation/power/runtime_pm.txt
@@ -674,7 +674,7 @@ left in runtime suspend. If that happens, the PM core will not execute any
674system suspend and resume callbacks for all of those devices, except for the 674system suspend and resume callbacks for all of those devices, except for the
675complete callback, which is then entirely responsible for handling the device 675complete callback, which is then entirely responsible for handling the device
676as appropriate. This only applies to system suspend transitions that are not 676as appropriate. This only applies to system suspend transitions that are not
677related to hibernation (see Documentation/power/devices.txt for more 677related to hibernation (see Documentation/power/admin-guide/devices.rst for more
678information). 678information).
679 679
680The PM core does its best to reduce the probability of race conditions between 680The PM core does its best to reduce the probability of race conditions between
diff --git a/Documentation/power/swsusp-dmcrypt.txt b/Documentation/power/swsusp-dmcrypt.txt
index 59931b46ff7e..b802fbfd95ef 100644
--- a/Documentation/power/swsusp-dmcrypt.txt
+++ b/Documentation/power/swsusp-dmcrypt.txt
@@ -8,7 +8,7 @@ Some prerequisites:
8You know how dm-crypt works. If not, visit the following web page: 8You know how dm-crypt works. If not, visit the following web page:
9http://www.saout.de/misc/dm-crypt/ 9http://www.saout.de/misc/dm-crypt/
10You have read Documentation/power/swsusp.txt and understand it. 10You have read Documentation/power/swsusp.txt and understand it.
11You did read Documentation/initrd.txt and know how an initrd works. 11You did read Documentation/admin-guide/initrd.rst and know how an initrd works.
12You know how to create or how to modify an initrd. 12You know how to create or how to modify an initrd.
13 13
14Now your system is properly set up, your disk is encrypted except for 14Now your system is properly set up, your disk is encrypted except for