suspend - put the CPU into suspend (sleep) modeSYNOPSIS
DESCRIPTIONsuspend [-n] [-v] [<seconds>]
This utility is intended to be run only by system scripts and the SIAM application, and not by the end-user. It can be useful for system testing, but should never be run by the operator on a deployed system.BUGSsuspend puts the CPU into sleep (suspend) mode for <seconds> seconds. In the absence of this parameter, it will put the CPU to sleep for 60 seconds. The maximum parameter it will accept is 3600 seconds (one hour). It uses the SA1100 RTC (hwclock, via /dev/rtc) to set the wakeup time.
Options:
- -n - Don't suspend past midnight (as indicated by /dev/rtc). This circumvents a bug in the distributed version of the Linux driver for /dev/rtc (sa1100-rtc.o). This bug has been fixed in deployed systems, but the flag is here for compatibility with non-fixed systems.
- -v - verbose mode. Tells user what it's doing at each step of the way.
It appears that the Linux kernel, under some conditions (unknown to this author), will manipulate the SA1100 clock. If this happens between the time 'suspend' sets the wakeup time registers and the time of the wakeup, then the CPU may never wake up. 'Suspend' has code to set the SA1100 time/date registers if they're too far away from the system time. This code is necessary to avoid this system bug. This solution appears to work, but is worrisome. It would be best to find where the kernel tries to manipulate the hwclock, and disable that code.
ENVIRONMENT
This utility depends on no environment variables.
SEE ALSO