diff mbox

doc: Add initial BMC interactions document

Message ID 1464772440-14547-1-git-send-email-jk@ozlabs.org
State Accepted
Headers show

Commit Message

Jeremy Kerr June 1, 2016, 9:14 a.m. UTC
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

Comments

Joel Stanley June 1, 2016, 5:13 p.m. UTC | #1
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
Stewart Smith June 7, 2016, 2:54 a.m. UTC | #2
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 mbox

Patch

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.