OpenBMC : FRU Inventory management
dkodihal at linux.vnet.ibm.com
Mon Aug 3 17:31:37 AEST 2020
On 31/07/20 2:30 pm, Andrei Kartashev wrote:
> Hi Deepak,
> Saying about inventory management for non-BMC accessible resources like
> CPU/DIMM with EntityManager: is there good example demonstrated
> preffered way to do so?
I don't think there is code today that does this. We intend to do this
on IBM systems (using PLDM/MCTP). I had updated the PLDM design doc to
do something like this using entity manager :
> Trying to bring up system based on that Intel's fork, but looks like
> they have own way to do things ).
> On Thu, 2020-07-30 at 13:55 +0000, Vasant Patil wrote:
>> Thanks Deepak.
>> Yes, This help. We will go with entity-manager option.
>> -----Original Message-----
>> From: Deepak Kodihalli <dkodihal at linux.vnet.ibm.com>
>> Sent: Thursday, July 30, 2020 12:22 AM
>> To: Vasant Patil <vasantp at nvidia.com>
>> Cc: openbmc at lists.ozlabs.org
>> Subject: Re: OpenBMC : FRU Inventory management
>> External email: Use caution opening links or attachments
>> On 30/07/20 8:37 am, Vasant Patil wrote:
>>> Hi Team,
>>> We are enabling OpenBMC on x86 system. We would like to know the
>>> recommendation on FRU inventory management and corresponding
>>> There seems to be multiple options available
>>> 1. described in "Adding new system to OpenBMC
>>> with Yaml files (meta-romulus/recipes-phosphor/ipmi
>>> 2. Entity manager <https://github.com/openbmc/entity-manager> with
>> Hi Vasant,
>> The commonly used option for this now is entity-manager. The entity-
>> manager config JSONs enable entity-manager to monitor/probe FRU
>> config information (FRU information read off of an EEPROM for eg) and
>> then transform that to an inventory D-Bus object that implements an
>> xyz.openbmc_project.Inventory.Item.<Type> interface. The webserver
>> (bmcweb) then can relay this into a Redfish inventory representation.
>> To make the FRU EEPROM content available on D-Bus, anther app
>> typically reads the EEPROM and then hosts the info on D-Bus. For eg
>> the FruDevice daemon (which sits in the entity-manager repo) scans
>> I2C connected EEPROMs, and can read IPMI FRU format data off of them.
>> Now this info can actually be coming in via EEPROMs that the BMC
>> can't access (and for eg the host CPU can) - in that case I would
>> expect the FRU information to be transported over IPMI/PLDM, and then
>> apps like host-ipmid or pldmd can place the FRU information on D-Bus,
>> for entity-manager to consume.
>>> We are looking to enable below inventory (Both FRU and non-FRU):
>>> * CPU
>>> * DIMM
>>> * M.2
>>> * U.2
>>> * Motherboard FRU EEPROM
>>> * Chassis FRU EEPROM
>>> * Add-on PCI cards
>>> * FANs
>>> * PSU
>>> * Etc.
>> You can look at
>> and define types that you don't find here.
More information about the openbmc