Lines Matching +full:system +full:- +full:bus

1 # System Boot Progress on OpenBMC
11 The boot progress of an OpenBMC managed system is complex. There are a mix of
12 phosphor D-Bus properties, IPMI sensors, PLDM sensors, and Redfish properties to
14 entities and provide a base for system implementors on what to implement.
18 [phosphor-state-manager][1] implements D-Bus properties which track the state of
28 phosphor-state-manager implements some other D-Bus properties that represent the
31 - [xyz.openbmc_project.State.Boot.Progress][3]
32 - [xyz.openbmc_project.State.OperatingSystem.Status][4]
34 These two D-Bus properties are very IPMI-centric. They were defined based on two
35 IPMI sensors which are set by the host firmware as it boots the system.
41 Redfish represents system state in a variety of ways. The BMC, Chassis, and
42 System all implement a [Status][6] object. This provides a list of generic
44 following mapping for phosphor-state-manager to the Redfish System
47 - `xyz.openbmc_project.State.Host.HostState.Running` : `Enabled`
48 - `xyz.openbmc_project.State.Host.HostState.Quiesced` : `Quiesced`
49 - `xyz.openbmc_project.State.Host.HostState.DiagnosticMode` : `InTest`
55 tracks the following boot states of the system:
57 - None
58 - PrimaryProcessorInitializationStarted
59 - BusInitializationStarted
60 - MemoryInitializationStarted
61 - SecondaryProcessorInitializationStarted
62 - PCIResourceConfigStarted
63 - SystemHardwareInitializationComplete
64 - OSBootStarted
65 - OSRunning
66 - OEM
74 Note that this design does not include multi-host computer system concepts but
75 it also does not preclude them. The `BootProgress` D-Bus property is associated
77 instance. Similarly, the Redfish system object is also an instance based object.
81 - Enhance the existing [BootProgress][3] D-Bus property to cover all supported
83 - Create a new `BootProgressLastUpdate` D-Bus property that will hold the date
85 - Ensure the `BootProgress` and `BootProgressLastUpdate` properties are updated
87 - It is the responsibility of the IPMI or PLDM implementation to update the
88 `BootProgress` property on D-Bus
89 - It is the responsibility the phosphor-state-manager to update the
90 `BootProgressLastUpdate` property on D-Bus when it sees `BootProgress`
92 - Ensure the new Redfish `LastState` and `LastStateTime` properties have the
93 appropriate mappings to the `BootProgress` and `BootProgressLastUpdate D-Bus
99 `BootProgress` D-Bus property and the ones which have a mapping to the Redfish
107 IPMI code already sets the `BootProgress` D-Bus property based on a config file.
109 IPMI sensor is mapped to this D-Bus property.
113 bmcweb will then use this `BootProgress` D-Bus interface to respond
118 A lot of system BIOS's provided some form of a detailed boot progress codes.
127 Each system will need to document which `BootProgress` codes they support and
128 the expected order of them when a system is booting.
132 Ensure an IPMI and PLDM based system boot and update the `BootProgress` D-Bus
136 https://github.com/openbmc/phosphor-state-manager#state-tracking-and-control
138 …https://github.com/openbmc/phosphor-dbus-interfaces/blob/master/yaml/xyz/openbmc_project/State/Hos…
140 …https://github.com/openbmc/phosphor-dbus-interfaces/blob/master/yaml/xyz/openbmc_project/State/Boo…
142 …https://github.com/openbmc/phosphor-dbus-interfaces/blob/master/yaml/xyz/openbmc_project/State/Ope…
148 …https://github.com/openbmc/meta-ibm/blob/master/recipes-phosphor/configuration/acx22-yaml-config/a…