Fixes for when sensor value is a double

The change to the xyz.openbmc_project.Sensor.Value interface that moves
the Value property to a double from an int64_t has merged, which
uncovered some problems in the code that was trying to detect the type
and handle it accordingly.

This does remove support for the Scale property on the Value interface,
as meson CI won't even compile with it since the double version of it is
empty and so the function has unused parameters, which meson doesn't
like.

Signed-off-by: Matt Spinler <spinler@us.ibm.com>
Change-Id: I34dc6cc83dae76a879258bf3c6859cd348e4de4d
3 files changed
tree: 9eda3568f69a3906b335503847c853e227a3e2ca
  1. msl/
  2. test/
  3. tools/
  4. .clang-format
  5. .gitignore
  6. .lcovrc
  7. average.cpp
  8. average.hpp
  9. bootstrap.sh
  10. configure.ac
  11. env.cpp
  12. env.hpp
  13. fan_pwm.cpp
  14. fan_pwm.hpp
  15. fan_speed.cpp
  16. fan_speed.hpp
  17. gpio_handle.cpp
  18. gpio_handle.hpp
  19. hwmon.cpp
  20. hwmon.hpp
  21. hwmonio.cpp
  22. hwmonio.hpp
  23. interface.hpp
  24. LICENSE
  25. mainloop.cpp
  26. mainloop.hpp
  27. MAINTAINERS
  28. Makefile.am
  29. meson.build
  30. meson_options.txt
  31. readd.cpp
  32. README.iio.md
  33. README.md
  34. sensor.cpp
  35. sensor.hpp
  36. sensorset.cpp
  37. sensorset.hpp
  38. sysfs.cpp
  39. sysfs.hpp
  40. targets.hpp
  41. thresholds.hpp
  42. types.hpp
  43. util.hpp
README.md

Exposes generic hwmon entries as DBus objects. More information can be found at Sensor Architecture

To Build

To build this package, do the following steps:

    1. ./bootstrap.sh
    2. ./configure ${CONFIGURE_FLAGS}
    3. make

To clean the repository run `./bootstrap.sh clean`.

D-Bus bus names

To enable the use of Linux features like cgroups prioritization and
udev/systemd control, one instance of phosphor-hwmon is intended to
be run per hwmon sysfs class instance.

This requires an algorithm for selecting a stable, well-known D-Bus busname.

The algorithm is <PREFIX>-<ID>.Hwmon<N> where PREFIX is an autoconf
configurable prefix (BUSNAME_PREFIX, xyz.openbmc_project by default),
ID is a std::hash of the /sys/devices path backing the hwmon class
instance, and N is the implemented phosphor-hwmon D-Bus API version.