104 lines
		
	
	
		
			4.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			104 lines
		
	
	
		
			4.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| What:		/sys/power/
 | |
| Date:		August 2006
 | |
| Contact:	Rafael J. Wysocki <rjw@sisk.pl>
 | |
| Description:
 | |
| 		The /sys/power directory will contain files that will
 | |
| 		provide a unified interface to the power management
 | |
| 		subsystem.
 | |
| 
 | |
| What:		/sys/power/state
 | |
| Date:		August 2006
 | |
| Contact:	Rafael J. Wysocki <rjw@sisk.pl>
 | |
| Description:
 | |
| 		The /sys/power/state file controls the system power state.
 | |
| 		Reading from this file returns what states are supported,
 | |
| 		which is hard-coded to 'standby' (Power-On Suspend), 'mem'
 | |
| 		(Suspend-to-RAM), and 'disk' (Suspend-to-Disk).
 | |
| 
 | |
| 		Writing to this file one of these strings causes the system to
 | |
| 		transition into that state. Please see the file
 | |
| 		Documentation/power/states.txt for a description of each of
 | |
| 		these states.
 | |
| 
 | |
| What:		/sys/power/disk
 | |
| Date:		September 2006
 | |
| Contact:	Rafael J. Wysocki <rjw@sisk.pl>
 | |
| Description:
 | |
| 		The /sys/power/disk file controls the operating mode of the
 | |
| 		suspend-to-disk mechanism.  Reading from this file returns
 | |
| 		the name of the method by which the system will be put to
 | |
| 		sleep on the next suspend.  There are four methods supported:
 | |
| 		'firmware' - means that the memory image will be saved to disk
 | |
| 		by some firmware, in which case we also assume that the
 | |
| 		firmware will handle the system suspend.
 | |
| 		'platform' - the memory image will be saved by the kernel and
 | |
| 		the system will be put to sleep by the platform driver (e.g.
 | |
| 		ACPI or other PM registers).
 | |
| 		'shutdown' - the memory image will be saved by the kernel and
 | |
| 		the system will be powered off.
 | |
| 		'reboot' - the memory image will be saved by the kernel and
 | |
| 		the system will be rebooted.
 | |
| 
 | |
| 		Additionally, /sys/power/disk can be used to turn on one of the
 | |
| 		two testing modes of the suspend-to-disk mechanism: 'testproc'
 | |
| 		or 'test'.  If the suspend-to-disk mechanism is in the
 | |
| 		'testproc' mode, writing 'disk' to /sys/power/state will cause
 | |
| 		the kernel to disable nonboot CPUs and freeze tasks, wait for 5
 | |
| 		seconds, unfreeze tasks and enable nonboot CPUs.  If it is in
 | |
| 		the 'test' mode, writing 'disk' to /sys/power/state will cause
 | |
| 		the kernel to disable nonboot CPUs and freeze tasks, shrink
 | |
| 		memory, suspend devices, wait for 5 seconds, resume devices,
 | |
| 		unfreeze tasks and enable nonboot CPUs.  Then, we are able to
 | |
| 		look in the log messages and work out, for example, which code
 | |
| 		is being slow and which device drivers are misbehaving.
 | |
| 
 | |
| 		The suspend-to-disk method may be chosen by writing to this
 | |
| 		file one of the accepted strings:
 | |
| 
 | |
| 		'firmware'
 | |
| 		'platform'
 | |
| 		'shutdown'
 | |
| 		'reboot'
 | |
| 		'testproc'
 | |
| 		'test'
 | |
| 
 | |
| 		It will only change to 'firmware' or 'platform' if the system
 | |
| 		supports that.
 | |
| 
 | |
| What:		/sys/power/image_size
 | |
| Date:		August 2006
 | |
| Contact:	Rafael J. Wysocki <rjw@sisk.pl>
 | |
| Description:
 | |
| 		The /sys/power/image_size file controls the size of the image
 | |
| 		created by the suspend-to-disk mechanism.  It can be written a
 | |
| 		string representing a non-negative integer that will be used
 | |
| 		as an upper limit of the image size, in bytes.  The kernel's
 | |
| 		suspend-to-disk code will do its best to ensure the image size
 | |
| 		will not exceed this number.  However, if it turns out to be
 | |
| 		impossible, the kernel will try to suspend anyway using the
 | |
| 		smallest image possible.  In particular, if "0" is written to
 | |
| 		this file, the suspend image will be as small as possible.
 | |
| 
 | |
| 		Reading from this file will display the current image size
 | |
| 		limit, which is set to 500 MB by default.
 | |
| 
 | |
| What:		/sys/power/pm_trace
 | |
| Date:		August 2006
 | |
| Contact:	Rafael J. Wysocki <rjw@sisk.pl>
 | |
| Description:
 | |
| 		The /sys/power/pm_trace file controls the code which saves the
 | |
| 		last PM event point in the RTC across reboots, so that you can
 | |
| 		debug a machine that just hangs during suspend (or more
 | |
| 		commonly, during resume).  Namely, the RTC is only used to save
 | |
| 		the last PM event point if this file contains '1'.  Initially
 | |
| 		it contains '0' which may be changed to '1' by writing a
 | |
| 		string representing a nonzero integer into it.
 | |
| 
 | |
| 		To use this debugging feature you should attempt to suspend
 | |
| 		the machine, then reboot it and run
 | |
| 
 | |
| 		dmesg -s 1000000 | grep 'hash matches'
 | |
| 
 | |
| 		CAUTION: Using it will cause your machine's real-time (CMOS)
 | |
| 		clock to be set to a random invalid time after a resume.
 |