entity-manager exposing eeproms
Patrick Venture
venture at google.com
Thu Aug 1 03:42:51 AEST 2019
On Wed, Jul 31, 2019 at 10:38 AM Patrick Venture <venture at google.com> wrote:
>
> On Wed, Jul 31, 2019 at 9:34 AM James Feist <james.feist at linux.intel.com> wrote:
> >
> > 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').
Thanks for specifying this. So it working for sensors is useful but
eeproms, not so much unless we want the eeprom driver loaded at
run-time, because FruDevice doesn't do that.
>
> > Entity manager is adding sysfs devices, and some happen to be eeproms.
>
> Interesting.
>
> >
> > >
> > > Am I missing something, or?
> > >
> > > Thanks,
> > > Patrick
> > >
More information about the openbmc
mailing list