1*46a29b7fSPatrick Williams# phosphor-hwmon 2*46a29b7fSPatrick Williams 35203d48aSPatrick WilliamsExposes generic hwmon entries as DBus objects. More information can be found at 4ddbf1c68SGunnar Mills[Sensor Architecture](https://github.com/openbmc/docs/blob/master/architecture/sensor-architecture.md) 56292aeedSMatthew Barth 66292aeedSMatthew Barth## To Build 75203d48aSPatrick Williams 86292aeedSMatthew BarthTo build this package, do the following steps: 96292aeedSMatthew Barth 10*46a29b7fSPatrick Williams1. meson setup build 116f42e356SMatt Spinler2. ninja -C build 126292aeedSMatthew Barth 136f42e356SMatt SpinlerTo clean the repository run `rm -rf build`. 144d9a35b2SBrad Bishop 154d9a35b2SBrad Bishop## D-Bus bus names 164d9a35b2SBrad Bishop 17*46a29b7fSPatrick WilliamsTo enable the use of Linux features like cgroups prioritization and udev/systemd 18*46a29b7fSPatrick Williamscontrol, one instance of phosphor-hwmon is intended to be run per hwmon sysfs 19*46a29b7fSPatrick Williamsclass instance. 204d9a35b2SBrad Bishop 214d9a35b2SBrad BishopThis requires an algorithm for selecting a stable, well-known D-Bus busname. 224d9a35b2SBrad Bishop 23*46a29b7fSPatrick WilliamsThe algorithm is `<PREFIX>-<ID>.Hwmon<N>` where PREFIX is a meson configurable 24*46a29b7fSPatrick Williamsprefix (`BUSNAME_PREFIX=xyz.openbmc_project` by default), ID is either a 25*46a29b7fSPatrick Williams`std::hash` of the `/sys/devices` path backing the hwmon class instance or 26*46a29b7fSPatrick Williamsprovided suffix value from the command line, and N is the implemented 27*46a29b7fSPatrick Williamsphosphor-hwmon D-Bus API version. 28