tree 5e12dc2f4ebe7aa7d4888d119467236c1669ec67
parent 0554c984827c1593663257a842d0cd943ce4f508
author Shawn McCarney <shawnmm@us.ibm.com> 1560379620 -0500
committer Ed Tanous <ed.tanous@intel.com> 1561580520 +0000

Redfish: Check inventory item for sensor status

Added support to find the inventory item (if any) associated with a
sensor.  Checks whether the inventory item is not present or not
functional.  If so, updates the sensor status.

Uses the standard D-Bus Inventory.Item and OperationalStatus interfaces
to obtain the Present and Functional properties for the inventory item.

These checks are in addition to the sensor threshold checks.  The two
approaches are complementary.  Some functional problems and missing
hardware are not detectable via thresholds depending on how the system
is implemented.

Uses an ObjectMapper association named "inventory" to find the inventory
item associated with a sensor.  For example:

  /xyz/openbmc_project/sensors/power/ps0_input_power/inventory ->
  /xyz/openbmc_project/inventory/system/chassis/motherboard/powersupply0

This support could be used in the future to obtain VPD data such as
Model and PartNumber for PowerSupply sensors.  VPD data is associated
with the inventory item on D-Bus.

Also changed the association name used to find all sensors in a chassis
from "sensors" to "all_sensors".

Test Plan:
  https://gist.github.com/smccarney/accc500b58fed80b711c65520cc7aafc

Tested: Verified Power and Thermal output on a Witherspoon system.
        Tested where inventory item associated with sensor was
        present/not present and function/not functional.
        Ran Redfish Service Validator.

Change-Id: Ibcdc515eb6b52ef43f05f98f36b8f0849fe1f25b
Signed-off-by: Shawn McCarney <shawnmm@us.ibm.com>
