| .. | .. | 
|---|
 | 1 | +# SPDX-License-Identifier: GPL-2.0-only  | 
|---|
| 1 | 2 |  config SUSPEND | 
|---|
| 2 | 3 |  	bool "Suspend to RAM and standby" | 
|---|
| 3 | 4 |  	depends on ARCH_SUSPEND_POSSIBLE | 
|---|
| 4 | 5 |  	default y | 
|---|
| 5 |  | -	---help---  | 
|---|
 | 6 | +	help  | 
|---|
| 6 | 7 |  	  Allow the system to enter sleep states in which main memory is | 
|---|
| 7 | 8 |  	  powered and thus its contents are preserved, such as the | 
|---|
| 8 | 9 |  	  suspend-to-RAM state (e.g. the ACPI S3 state). | 
|---|
| .. | .. | 
|---|
| 26 | 27 |  	  Skip the kernel sys_sync() before freezing user processes. | 
|---|
| 27 | 28 |  	  Some systems prefer not to pay this cost on every invocation | 
|---|
| 28 | 29 |  	  of suspend, or they are content with invoking sync() from | 
|---|
| 29 |  | -	  user-space before invoking suspend.  Say Y if that's your case.  | 
|---|
| 30 |  | -  | 
|---|
| 31 |  | -config HAS_WAKELOCK  | 
|---|
| 32 |  | -	bool  | 
|---|
| 33 |  | -	default y  | 
|---|
| 34 |  | -  | 
|---|
| 35 |  | -config WAKELOCK  | 
|---|
| 36 |  | -	bool  | 
|---|
| 37 |  | -	default y  | 
|---|
 | 30 | +	  user-space before invoking suspend.  There's a run-time switch  | 
|---|
 | 31 | +	  at '/sys/power/sync_on_suspend' to configure this behaviour.  | 
|---|
 | 32 | +	  This setting changes the default for the run-tim switch. Say Y  | 
|---|
 | 33 | +	  to change the default to disable the kernel sys_sync().  | 
|---|
| 38 | 34 |   | 
|---|
| 39 | 35 |  config HIBERNATE_CALLBACKS | 
|---|
| 40 | 36 |  	bool | 
|---|
| .. | .. | 
|---|
| 46 | 42 |  	select LZO_COMPRESS | 
|---|
| 47 | 43 |  	select LZO_DECOMPRESS | 
|---|
| 48 | 44 |  	select CRC32 | 
|---|
| 49 |  | -	---help---  | 
|---|
 | 45 | +	help  | 
|---|
| 50 | 46 |  	  Enable the suspend to disk (STD) functionality, which is usually | 
|---|
| 51 | 47 |  	  called "hibernation" in user interfaces.  STD checkpoints the | 
|---|
| 52 | 48 |  	  system and powers it off; and restores that checkpoint on reboot. | 
|---|
| .. | .. | 
|---|
| 73 | 69 |  	  need to run mkswap against the swap partition used for the suspend. | 
|---|
| 74 | 70 |   | 
|---|
| 75 | 71 |  	  It also works with swap files to a limited extent (for details see | 
|---|
| 76 |  | -	  <file:Documentation/power/swsusp-and-swap-files.txt>).  | 
|---|
 | 72 | +	  <file:Documentation/power/swsusp-and-swap-files.rst>).  | 
|---|
| 77 | 73 |   | 
|---|
| 78 | 74 |  	  Right now you may boot without resuming and resume later but in the | 
|---|
| 79 | 75 |  	  meantime you cannot use the swap partition(s)/file(s) involved in | 
|---|
| .. | .. | 
|---|
| 82 | 78 |  	  MOUNT any journaled filesystems mounted before the suspend or they | 
|---|
| 83 | 79 |  	  will get corrupted in a nasty way. | 
|---|
| 84 | 80 |   | 
|---|
| 85 |  | -	  For more information take a look at <file:Documentation/power/swsusp.txt>.  | 
|---|
 | 81 | +	  For more information take a look at <file:Documentation/power/swsusp.rst>.  | 
|---|
| 86 | 82 |   | 
|---|
| 87 |  | -config ARCH_SAVE_PAGE_KEYS  | 
|---|
| 88 |  | -	bool  | 
|---|
 | 83 | +config HIBERNATION_SNAPSHOT_DEV  | 
|---|
 | 84 | +	bool "Userspace snapshot device"  | 
|---|
 | 85 | +	depends on HIBERNATION  | 
|---|
 | 86 | +	default y  | 
|---|
 | 87 | +	help  | 
|---|
 | 88 | +	  Device used by the uswsusp tools.  | 
|---|
 | 89 | +  | 
|---|
 | 90 | +	  Say N if no snapshotting from userspace is needed, this also  | 
|---|
 | 91 | +	  reduces the attack surface of the kernel.  | 
|---|
 | 92 | +  | 
|---|
 | 93 | +	  If in doubt, say Y.  | 
|---|
| 89 | 94 |   | 
|---|
| 90 | 95 |  config PM_STD_PARTITION | 
|---|
| 91 | 96 |  	string "Default resume partition" | 
|---|
| 92 | 97 |  	depends on HIBERNATION | 
|---|
| 93 | 98 |  	default "" | 
|---|
| 94 |  | -	---help---  | 
|---|
 | 99 | +	help  | 
|---|
| 95 | 100 |  	  The default resume partition is the partition that the suspend- | 
|---|
| 96 | 101 |  	  to-disk implementation will look for a suspended disk image.  | 
|---|
| 97 | 102 |   | 
|---|
| .. | .. | 
|---|
| 122 | 127 |  	depends on PM_SLEEP | 
|---|
| 123 | 128 |  	select HOTPLUG_CPU | 
|---|
| 124 | 129 |   | 
|---|
 | 130 | +config PM_SLEEP_SMP_NONZERO_CPU  | 
|---|
 | 131 | +	def_bool y  | 
|---|
 | 132 | +	depends on PM_SLEEP_SMP  | 
|---|
 | 133 | +	depends on ARCH_SUSPEND_NONZERO_CPU  | 
|---|
 | 134 | +	help  | 
|---|
 | 135 | +	If an arch can suspend (for suspend, hibernate, kexec, etc) on a  | 
|---|
 | 136 | +	non-zero numbered CPU, it may define ARCH_SUSPEND_NONZERO_CPU. This  | 
|---|
 | 137 | +	will allow nohz_full mask to include CPU0.  | 
|---|
 | 138 | +  | 
|---|
| 125 | 139 |  config PM_AUTOSLEEP | 
|---|
| 126 | 140 |  	bool "Opportunistic sleep" | 
|---|
| 127 | 141 |  	depends on PM_SLEEP | 
|---|
| 128 | 142 |  	default n | 
|---|
| 129 |  | -	---help---  | 
|---|
 | 143 | +	help  | 
|---|
| 130 | 144 |  	Allow the kernel to trigger a system transition into a global sleep | 
|---|
| 131 | 145 |  	state automatically whenever there are no active wakeup sources. | 
|---|
| 132 | 146 |   | 
|---|
| .. | .. | 
|---|
| 134 | 148 |  	bool "User space wakeup sources interface" | 
|---|
| 135 | 149 |  	depends on PM_SLEEP | 
|---|
| 136 | 150 |  	default n | 
|---|
| 137 |  | -	---help---  | 
|---|
 | 151 | +	help  | 
|---|
| 138 | 152 |  	Allow user space to create, activate and deactivate wakeup source | 
|---|
| 139 | 153 |  	objects with the help of a sysfs-based interface. | 
|---|
| 140 | 154 |   | 
|---|
| .. | .. | 
|---|
| 151 | 165 |   | 
|---|
| 152 | 166 |  config PM | 
|---|
| 153 | 167 |  	bool "Device power management core functionality" | 
|---|
| 154 |  | -	---help---  | 
|---|
 | 168 | +	help  | 
|---|
| 155 | 169 |  	  Enable functionality allowing I/O devices to be put into energy-saving | 
|---|
| 156 | 170 |  	  (low power) states, for example after a specified period of inactivity | 
|---|
| 157 | 171 |  	  (autosuspended), and woken up in response to a hardware-generated | 
|---|
| .. | .. | 
|---|
| 165 | 179 |  config PM_DEBUG | 
|---|
| 166 | 180 |  	bool "Power Management Debug Support" | 
|---|
| 167 | 181 |  	depends on PM | 
|---|
| 168 |  | -	---help---  | 
|---|
 | 182 | +	help  | 
|---|
| 169 | 183 |  	This option enables various debugging support in the Power Management | 
|---|
| 170 | 184 |  	code. This is helpful when debugging and reporting PM bugs, like | 
|---|
| 171 | 185 |  	suspend support. | 
|---|
| .. | .. | 
|---|
| 173 | 187 |  config PM_ADVANCED_DEBUG | 
|---|
| 174 | 188 |  	bool "Extra PM attributes in sysfs for low-level debugging/testing" | 
|---|
| 175 | 189 |  	depends on PM_DEBUG | 
|---|
| 176 |  | -	---help---  | 
|---|
 | 190 | +	help  | 
|---|
| 177 | 191 |  	Add extra sysfs attributes allowing one to access some Power Management | 
|---|
| 178 | 192 |  	fields of device objects from user space.  If you are not a kernel | 
|---|
| 179 | 193 |  	developer interested in debugging/testing Power Management, say "no". | 
|---|
| .. | .. | 
|---|
| 181 | 195 |  config PM_TEST_SUSPEND | 
|---|
| 182 | 196 |  	bool "Test suspend/resume and wakealarm during bootup" | 
|---|
| 183 | 197 |  	depends on SUSPEND && PM_DEBUG && RTC_CLASS=y | 
|---|
| 184 |  | -	---help---  | 
|---|
 | 198 | +	help  | 
|---|
| 185 | 199 |  	This option will let you suspend your machine during bootup, and | 
|---|
| 186 | 200 |  	make it wake up a few seconds later using an RTC wakeup alarm. | 
|---|
| 187 | 201 |  	Enable this with a kernel parameter like "test_suspend=mem". | 
|---|
| .. | .. | 
|---|
| 196 | 210 |  config DPM_WATCHDOG | 
|---|
| 197 | 211 |  	bool "Device suspend/resume watchdog" | 
|---|
| 198 | 212 |  	depends on PM_DEBUG && PSTORE && EXPERT | 
|---|
| 199 |  | -	---help---  | 
|---|
 | 213 | +	help  | 
|---|
| 200 | 214 |  	  Sets up a watchdog timer to capture drivers that are | 
|---|
| 201 | 215 |  	  locked up attempting to suspend/resume a device. | 
|---|
| 202 | 216 |  	  A detected lockup causes system panic with message | 
|---|
| .. | .. | 
|---|
| 229 | 243 |  	depends on PM_SLEEP_DEBUG | 
|---|
| 230 | 244 |  	depends on X86 | 
|---|
| 231 | 245 |  	select PM_TRACE | 
|---|
| 232 |  | -	---help---  | 
|---|
 | 246 | +	help  | 
|---|
| 233 | 247 |  	This enables some cheesy code to save the last PM event point in the | 
|---|
| 234 | 248 |  	RTC across reboots, so that you can debug a machine that just hangs | 
|---|
| 235 | 249 |  	during suspend (or more commonly, during resume). | 
|---|
| .. | .. | 
|---|
| 254 | 268 |  	  notification of APM "events" (e.g. battery status change). | 
|---|
| 255 | 269 |   | 
|---|
| 256 | 270 |  	  In order to use APM, you will need supporting software. For location | 
|---|
| 257 |  | -	  and more information, read <file:Documentation/power/apm-acpi.txt>  | 
|---|
 | 271 | +	  and more information, read <file:Documentation/power/apm-acpi.rst>  | 
|---|
| 258 | 272 |  	  and the Battery Powered Linux mini-HOWTO, available from | 
|---|
| 259 | 273 |  	  <http://www.tldp.org/docs.html#howto>. | 
|---|
| 260 | 274 |   | 
|---|