Name Date Size #Lines LOC

..Today-

inc/H07-Dec-2023-158129

service_files/H07-Mar-2024-2418

src/H07-Dec-2023-351271

subprojects/H21-Mar-2022-2720

.clang-formatH A D28-Oct-20233.6 KiB136134

LICENSEH A D07-Mar-202111.1 KiB202169

OWNERSH A D12-Dec-20221.7 KiB4944

README.mdH A D12-Dec-20221.5 KiB3828

meson.buildH A D12-Apr-20242.1 KiB7060

meson.optionsH A D21-Aug-2023500 54

README.md

1# phosphor-post-code-manager
2
3This phosphor-post-code-manager repository provides an infrastructure to persist
4the POST codes in BMC filesystem & it also owns the systemd services that are
5responsible for exposing the BIOS Post Codes to rest of the world via redfish.
6
7## To Build
8
9To build phosphor-post-code-manager package , do the following steps:
10
11```bash
12meson <build directory>
13ninja -C <build directory>
14```
15
16## Hosted Services
17
18This repository ships `xyz.openbmc_project.State.Boot.PostCode.service` systemd
19service along with its
20[template version](https://github.com/openbmc/docs/blob/master/designs/multi-host-postcode.md)
21and a tiny binary that exposes the necessary
22[dbus interfaces & methods](https://github.com/openbmc/phosphor-dbus-interfaces/blob/master/yaml/xyz/openbmc_project/State/Boot/PostCode.interface.yaml)
23to extract the POST codes per boot cycle.
24
25## Architecture
26
27This repository is tightly coupled with
28[phosphor-host-postd](https://github.com/openbmc/phosphor-host-postd) OpenBMC
29respository which is responsible for emitting the dbus signals for every new
30POST Code.
31
32phosphor-post-code-manager is architected to look for the property changed
33signals which are being emitted from the service that hosts
34[Value](https://github.com/openbmc/phosphor-dbus-interfaces/blob/master/yaml/xyz/openbmc_project/State/Boot/Raw.interface.yaml)
35property on `xyz.openbmc_project.State.Boot.Raw` interface & archive them per
36boot on the filesystem, so that those can be exposed over
37[redfish](https://github.com/openbmc/docs/blob/master/designs/redfish-postcodes.md)
38