170dbc587SMatthew BarthThis .so file is designed to support the OpenPOWER's BIOS OEM commands.
2*255e8b97SPatrick WilliamsDocumentation can be found by contacting the OpenPOWER mailing list @
3*255e8b97SPatrick Williamshttps://github.com/open-power/op-build
45607b82fSChris Austen
55607b82fSChris Austen## To Build
6*255e8b97SPatrick Williams
75607b82fSChris Austen```
870dbc587SMatthew BarthTo build this package, do the following steps:
970dbc587SMatthew Barth
1070dbc587SMatthew Barth    1. ./bootstrap.sh
1170dbc587SMatthew Barth    2. ./configure ${CONFIGURE_FLAGS}
1270dbc587SMatthew Barth    3. make
1370dbc587SMatthew Barth
1411b6efa6SGunnar MillsTo clean the repository run `./bootstrap.sh clean`.
155607b82fSChris Austen```
165607b82fSChris Austen
175607b82fSChris Austen## Supported Commands
18*255e8b97SPatrick Williams
195607b82fSChris Austen- Partial Add
205607b82fSChris Austen- Prepare for host update
2181c34dfeSAdriana Kobylak- BMC Factory Reset
2281c34dfeSAdriana Kobylak
2381c34dfeSAdriana Kobylak## Command Documentation
2481c34dfeSAdriana Kobylak
2581c34dfeSAdriana Kobylak### BMC Factory Reset
26*255e8b97SPatrick Williams
27*255e8b97SPatrick WilliamsNetfun: 0x3a Command: 0x11
2881c34dfeSAdriana Kobylak
2981c34dfeSAdriana KobylakThis command will call to reset the BMC to its factory default. See [here][0]
3081c34dfeSAdriana Kobylakfor the factory reset implementation details.
3181c34dfeSAdriana Kobylak
3281c34dfeSAdriana KobylakThis includes:
33*255e8b97SPatrick Williams
3481c34dfeSAdriana Kobylak1. Power the chassis off. The host needs to be powered off because the factory
35*255e8b97SPatrick Williams   reset deletes the inventory items, which are needed for the BMC during the
36*255e8b97SPatrick Williams   power on path, causing the power on to fail. The inventory items are
37*255e8b97SPatrick Williams   repopulated during a host power on. An enhancement to OpenBMC would be to
38*255e8b97SPatrick Williams   handle missing inventory items during a BMC reboot when the host is on.
3981c34dfeSAdriana Kobylak2. Set the BMC to perform factory reset on reboot.
4081c34dfeSAdriana Kobylak3. Reboot the BMC for the factory reset to take effect.
4181c34dfeSAdriana Kobylak
42*255e8b97SPatrick WilliamsBecause the chassis is powered off, the host does not receive a return code when
43*255e8b97SPatrick Williamssuccessful.
4481c34dfeSAdriana Kobylak
4581c34dfeSAdriana KobylakThis command is not allowed when the IPMI restriction mode is set to
4681c34dfeSAdriana Kobylak'Whitelist'. See [here][1] for more information.
4781c34dfeSAdriana Kobylak
48*255e8b97SPatrick Williams[0]:
49*255e8b97SPatrick Williams  https://github.com/openbmc/phosphor-dbus-interfaces/tree/master/xyz/openbmc_project/Common/FactoryReset#xyzopenbmc_projectsoftwarebmcupdater
50*255e8b97SPatrick Williams[1]:
51*255e8b97SPatrick Williams  https://github.com/openbmc/phosphor-dbus-interfaces/blob/master/yaml/xyz/openbmc_project/Control/Security/RestrictionMode.interface.yaml
52