entity-manager exposing eeproms

James Feist james.feist at linux.intel.com
Thu Aug 1 02:33:55 AEST 2019


On 7/29/19 10:55 AM, Patrick Venture wrote:
> Hi;
> 
> Sorry to flood with questions, but I'm hoping I won't be the only
> person asking and in the future, other machines starting to use
> entity-manager will find these useful.
> 
> I've added the following configuration:
> 
> cat configurations/semitruck.json
> {
>      "Exposes": [
>          {
>              "Address": "0x50",
>              "Bus": 14,
>              "Name": "Aberdeen",
>              "Type": "24C64"
>          },
>          {
>              "Address": "0x50",
>              "Bus": 15,
>              "Name": "Energia",
>              "Type": "24C64"
>          }
>      ],
>      "Name": "Aberdeen Baseboard",
>      "Probe" : "TRUE",
>      "Type": "Board"
> }
> 
> And I see:
> i2c i2c-14: new_device: Instantiated device 24c64 at 0x50
> i2c i2c-15: new_device: Instantiated device 24c64 at 0x50
> 
> And I see:
> Service xyz.openbmc_project.EntityManager:
> `-/xyz
>    `-/xyz/openbmc_project
>      |-/xyz/openbmc_project/EntityManager
>      `-/xyz/openbmc_project/inventory
>        `-/xyz/openbmc_project/inventory/system
>          `-/xyz/openbmc_project/inventory/system/board
>            |-/xyz/openbmc_project/inventory/system/board/Aberdeen_Baseboard
> 
> busctl introspect xyz.openbmc_project.EntityManager
> /xyz/openbmc_project/inventory/system/board/Aberdeen_Baseboard
> --no-pager
> NAME                                     TYPE      SIGNATURE
> RESULT/VALUE         FLAGS
> org.freedesktop.DBus.Introspectable      interface -         -
>             -
> .Introspect                              method    -         s
>             -
> org.freedesktop.DBus.Peer                interface -         -
>             -
> .GetMachineId                            method    -         s
>             -
> .Ping                                    method    -         -
>             -
> org.freedesktop.DBus.Properties          interface -         -
>             -
> .Get                                     method    ss        v
>             -
> .GetAll                                  method    s         a{sv}
>             -
> .Set                                     method    ssv       -
>             -
> .PropertiesChanged                       signal    sa{sv}as  -
>             -
> xyz.openbmc_project.AddObject            interface -         -
>             -
> .AddObject                               method    a{sv}     -
>             -
> xyz.openbmc_project.Inventory.Item.Board interface -         -
>             -
> .Name                                    property  s         "Aberdeen
> Baseboard" emits-change
> .Probe                                   property  s         "TRUE"
>             emits-change
> .Type                                    property  s         "Board"
>             emits-change
> 
> For the two eeproms listed, neither are currently supported by
> FruDevice.  It's my understanding that entity-manager "exposes"
> things, and I see it adding the eeproms successfully -- but then
> doesn't populate them to dbus.  It populates a configuration space for
> the sensors, so I expected the same for eeproms.

FruDevice != Entity manager. They were kept completely separate, so the 
fru device doesn't know anything about the Entity Manager. The Entity 
Manager simply looks for any interface in it's probe statement to add 
devices. In theory you could create a probe that looked like 
xyz.openbmc_project.Sensor.Value('Value':'20'). Entity manager is adding 
sysfs devices, and some happen to be eeproms.

> 
> Am I missing something, or?
> 
> Thanks,
> Patrick
> 


More information about the openbmc mailing list