ipmitool FRU write question

Ed Tanous ed.tanous at intel.com
Fri Aug 16 01:24:26 AEST 2019


On 8/15/19 6:49 AM, Harry Sung1 wrote:
> Hi Team,
> 
>  
> 
> Current phosphor-host-ipmid does not support fru write command, but
> ipmi-fru-parser supports it.
> 
> We found this fru write command only update the data to dbus inventory,
> but doesn’t sync the data back to the EEPROM.
> 
> Does ipmi-fru-parser has any plans to implement it? I think it is more
> make sense to sync the data to EEPROM when we do fru write.

The alternative FRU daemon from entity manager, FruDevice, supports
writing the FRU directly.
https://github.com/openbmc/entity-manager/blob/master/src/FruDevice.cpp

Happy to see this capability added to ipmi-fru-parser, but you might be
able to model it off FruDevice.  If you want to use FruDevice as-is, you
will need the alternative FruWrite command sets from here.

https://github.com/openbmc/intel-ipmi-oem/blob/159547cdfbf1992737dcecbcb3888af7795f930b/src/storagecommands.cpp#L316

As written, those commands change the behavior a bit, and double buffers
the FRU write commands.  When the last Fru write is sent, the data is
flushed through the FRU parser to ensure that it's valid, and the user
isn't doing anything nefarious (like changing a product name or serial
number) before it writes the EEPROM in one chunk, as quickly as it can
to reduce the possibility of a half written EEPROM.


More information about the openbmc mailing list