openbmc / entity-manager

Run-time JSON driven system configuration manager
Other
26 stars 48 forks source link

FruDevice does not create dbus object if FRU eprom is not in dts #14

Open ushasrinivasan-cornelisnetworks opened 3 years ago

ushasrinivasan-cornelisnetworks commented 3 years ago

When I had my FRU eprom defined in the dts file I had no issues. When I removed it from the dts and allowed fru-device to discover it on the bus I ran into an issue. After boot, all I see is -/xyz/openbmc_project/FruDevice -/xyz/openbmc_project/FruDevice/8_81 But if I restart FruDevice service the dbus object for my board gets created. After the restart, sometimes I see: -/xyz/openbmc_project/FruDevice |-/xyz/openbmc_project/FruDevice/8_81 -/xyz/openbmc_project/FruDevice/CNEdge and other times I see: -/xyz/openbmc_project/FruDevice |-/xyz/openbmc_project/FruDevice/CNEdge

Kostr commented 3 years ago

I've come to the similar issue. In my case an error comes from a fact that my FRU EEPROM is 16-bit device. And it appears that fru-device code doesn't correctly detect this fact. It tries to treat EEPROM as a 8-bit device and therefore parsing process fails. What kind of an EEPROM does your board have?

ushasrinivasan-cornelisnetworks commented 3 years ago

Hi, My board has a 24C128.

Kostr commented 3 years ago

Your device is also a 16-bit EEPROM. I've created a separate issue for our problem https://github.com/openbmc/entity-manager/issues/15