Message ID | 1464772440-14547-1-git-send-email-jk@ozlabs.org |
---|---|
State | Accepted |
Headers | show |
On Wed, Jun 1, 2016 at 4:14 AM, Jeremy Kerr <jk@ozlabs.org> wrote: > This change adds a minimal document to describe some of the OPAL <--> > BMC interactions supported by skiboot. Looks good. Thanks for writing this. > > Signed-off-by: Jeremy Kerr <jk@ozlabs.org> Reviewed-by: Joel Stanley <joel@jms.id.au> > --- > doc/bmc.txt | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 57 insertions(+) > create mode 100644 doc/bmc.txt > > diff --git a/doc/bmc.txt b/doc/bmc.txt > new file mode 100644 > index 0000000..78c3b29 > --- /dev/null > +++ b/doc/bmc.txt > @@ -0,0 +1,57 @@ > +OPAL <--> BMC interactions > +========================== > + > +This document provides information about some of the user-visible interactions > +that skiboot performs with the BMC. > + > +IPMI sensors > +------------ > + > +OPAL will interact with a few IPMI sensors during the boot process. These > +are: > + > + * Boot Count [type 0xc3: OEM reserved] > + * FW Boot progress [type 0x0f: System Firmware Progress] > + > +Boot Count: assertion type. When OPAL reaches a late stage of boot, it sets the > +boot count sensor to 0x02. This is intended to allow the BMC detect a failed > +or aborted boot, for switching to a known-good firmware image. > + > +FW Boot Progress: assertion type. During boot, skiboot will update this sensor > +to one of the IPMI-defined progress codes. The codes use by skiboot are: > + > + * PCI Resource configuration (0x01) > + - asserted as the PCI devices have been probed and resources allocated > + > + * Motherboard init (0x14) > + - asserted as the platform-specific components have been initialised > + > + * OS boot (0x13) > + - asserted after skiboot has loaded the PAYLOAD image, and is about to > + boot it. > + > +Chassis control messages > +------------------------ > + > +OPAL uses chassis control messages to instruct the BMC to remove power from > +the host. These messages are sent during graceful reboot and shutdown processes > +initiated by the host. > + > +For a BMC-initiated graceful power-down (or reboot), the BMC is expected to send > +an OEM-defined SEL message, using a SMS_ATN to trigger a BMC-to-host > +notification. This SEL has a type of 0xc0, and command of 0x04. The data0 field > +of the SEL indicates shutdown (0x0) or reboot (0x1). > + > + > +Watchdog support > +---------------- > + > +OPAL supports a BMC watchdog during the boot process. This will be disabled > +before entering the OS. > + > + > +Real-time clock > +--------------- > + > +On platforms where a real-time-clock is not available, skiboot may use the > +IPMI SEL Time as a real-time-clock device. > -- > 2.5.0 > > _______________________________________________ > Skiboot mailing list > Skiboot@lists.ozlabs.org > https://lists.ozlabs.org/listinfo/skiboot
Jeremy Kerr <jk@ozlabs.org> writes: > This change adds a minimal document to describe some of the OPAL <--> > BMC interactions supported by skiboot. > > Signed-off-by: Jeremy Kerr <jk@ozlabs.org> > --- > doc/bmc.txt | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 57 insertions(+) > create mode 100644 doc/bmc.txt Thanks! Merged to master as of 448eea9
diff --git a/doc/bmc.txt b/doc/bmc.txt new file mode 100644 index 0000000..78c3b29 --- /dev/null +++ b/doc/bmc.txt @@ -0,0 +1,57 @@ +OPAL <--> BMC interactions +========================== + +This document provides information about some of the user-visible interactions +that skiboot performs with the BMC. + +IPMI sensors +------------ + +OPAL will interact with a few IPMI sensors during the boot process. These +are: + + * Boot Count [type 0xc3: OEM reserved] + * FW Boot progress [type 0x0f: System Firmware Progress] + +Boot Count: assertion type. When OPAL reaches a late stage of boot, it sets the +boot count sensor to 0x02. This is intended to allow the BMC detect a failed +or aborted boot, for switching to a known-good firmware image. + +FW Boot Progress: assertion type. During boot, skiboot will update this sensor +to one of the IPMI-defined progress codes. The codes use by skiboot are: + + * PCI Resource configuration (0x01) + - asserted as the PCI devices have been probed and resources allocated + + * Motherboard init (0x14) + - asserted as the platform-specific components have been initialised + + * OS boot (0x13) + - asserted after skiboot has loaded the PAYLOAD image, and is about to + boot it. + +Chassis control messages +------------------------ + +OPAL uses chassis control messages to instruct the BMC to remove power from +the host. These messages are sent during graceful reboot and shutdown processes +initiated by the host. + +For a BMC-initiated graceful power-down (or reboot), the BMC is expected to send +an OEM-defined SEL message, using a SMS_ATN to trigger a BMC-to-host +notification. This SEL has a type of 0xc0, and command of 0x04. The data0 field +of the SEL indicates shutdown (0x0) or reboot (0x1). + + +Watchdog support +---------------- + +OPAL supports a BMC watchdog during the boot process. This will be disabled +before entering the OS. + + +Real-time clock +--------------- + +On platforms where a real-time-clock is not available, skiboot may use the +IPMI SEL Time as a real-time-clock device.
This change adds a minimal document to describe some of the OPAL <--> BMC interactions supported by skiboot. Signed-off-by: Jeremy Kerr <jk@ozlabs.org> --- doc/bmc.txt | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 doc/bmc.txt