Limitations of entity-manager:FruDevice

Patrick Venture venture at google.com
Tue Jul 30 03:21:56 AEST 2019


On Mon, Jul 29, 2019 at 10:05 AM James Feist
<james.feist at linux.intel.com> wrote:
>
> On 7/29/19 9:11 AM, Patrick Venture wrote:
> > Hi;
> >
> > I don't know much about FRUs.  However, I know that for some eeproms
> > on the device-tree for my platform, the default eeprom driver instance
> > isn't correct and I need to explicitly use 24c64.
> >
> > root at semitruck:~# echo "eeprom 0x50" > /sys/bus/i2c/devices/i2c-14/new_device
> > i2c i2c-14: new_device: Instantiated device eeprom at 0x50
> > root at semitruck:~#
> > root at semitruck:~# ls -l /sys/bus/i2c/devices/14-0050/
> > -r--r--r--    1 root     root          4096 Jul 29 15:20 modalias
> > -r--r--r--    1 root     root          4096 Jul 29 15:20 name
> > drwxr-xr-x    2 root     root             0 Jul 29 15:20 power
> > lrwxrwxrwx    1 root     root             0 Jul 29 15:20 subsystem ->
> > ../../../../../../../bus/i2c
> > -rw-r--r--    1 root     root          4096 Jul 29 15:20 uevent
> >
> > root at semitruck:~# echo "24c64 0x50" > /sys/bus/i2c/devices/i2c-14/new_device
> > at24 14-0050: 8192 byte 24c64 EEPROM, writable, 1 bytes/write
> > i2c i2c-14: new_device: Instantiated device 24c64 at 0x50
> > root at semitruck:~# ls -l /sys/bus/i2c/devices/14-0050/
> > drwxr-xr-x    3 root     root             0 Jul 29 15:46 14-00500
> > lrwxrwxrwx    1 root     root             0 Jul 29 15:46 driver ->
> > ../../../../../../../bus/i2c/drivers/at24
> > -rw-------    1 root     root          8192 Jul 29 15:46 eeprom
> > -r--r--r--    1 root     root          4096 Jul 29 15:46 modalias
> > -r--r--r--    1 root     root          4096 Jul 29 15:46 name
> > drwxr-xr-x    2 root     root             0 Jul 29 15:46 power
> > lrwxrwxrwx    1 root     root             0 Jul 29 15:46 subsystem ->
> > ../../../../../../../bus/i2c
> > -rw-r--r--    1 root     root          4096 Jul 29 15:46 uevent
> >
> > For entity-manager, I can add the type and it'll do the right thing.
> > However, when FruDevice runs first and populates the FRUs, it doesn't
> > seem to detect the difference in the eeproms.  I don't know enough (as
> > previously stated) to jump into fixing this, so I wanted to check if
> > this was a known limitation (presumably) and whether there was a plan
> > to fix it?
>
> FruDevice basically does a i2cdetect, i2cdump, then reads the fru data
> and sees if it looks like a fru. Do i2cdetect and i2cdump work with this
> eeprom?
>
> I know for 16 bit eeproms, that it doesn't work correctly, as in this
> thread:
> https://lists.ozlabs.org/pipermail/openbmc/2019-July/017134.html
>
> There's also a issue: https://github.com/openbmc/entity-manager/issues/1
> with a link to using device tree.
>
> I don't have any of these eeproms available to try that don't work, I
> can't comment on others attempts to get them going.

Ok, I'll take a look when I get a little further into this.  Currently
it's adding an eeprom as /_0 in the device-tree.  So, I have a hunch
it's related.

Patrick

>
> -James
>
> >
> > Patrick
> >


More information about the openbmc mailing list