Define RB_POWERCYCLE

RB_POWERCYCLE instructs the platform to power off and then power back
on a short time later, if that's possible. Otherwise, degrade to the
RB_POWEROFF behavior.

Sponsored by: Netflix
This commit is contained in:
Warner Losh 2017-10-25 15:30:20 +00:00
parent e1b6a0cd96
commit 06828ffb88
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=324983
2 changed files with 10 additions and 1 deletions

View File

@ -28,7 +28,7 @@
.\" @(#)reboot.2 8.1 (Berkeley) 6/4/93
.\" $FreeBSD$
.\"
.Dd September 18, 2015
.Dd October 24, 2017
.Dt REBOOT 2
.Os
.Sh NAME
@ -84,6 +84,14 @@ for more information.
.It Dv RB_HALT
The processor is simply halted; no reboot takes place.
This option should be used with caution.
.It Dv RB_POWERCYCLE
After halting, the shutdown code will do what it can to turn
off the power and then turn the power back on.
This requires hardware support, usually an auxiliary microprocessor
that can sequence the power supply.
At present only the
.Xr ipmi 4
driver implements this feature.
.It Dv RB_POWEROFF
After halting, the shutdown code will do what it can to turn
off the power.

View File

@ -60,6 +60,7 @@
#define RB_RESERVED2 0x80000 /* reserved for internal use of boot blocks */
#define RB_PAUSE 0x100000 /* pause after each output line during probe */
#define RB_REROOT 0x200000 /* unmount the rootfs and mount it again */
#define RB_POWERCYCLE 0x400000 /* Power cycle if possible */
#define RB_MULTIPLE 0x20000000 /* use multiple consoles */
#define RB_BOOTINFO 0x80000000 /* have `struct bootinfo *' arg */