Force fans to high when no valid temp from sensors

DDR5 DDIMS can have redundant DRAM thermal sensors. If a valid
temperature is not available for either of these sensors, and
one of the sensors failed, the fans should be set to max.
If both DRAM sensors are reporting 0 (not available), fans are
not set to max.

No change if there are not redundant sensors:
If there are not redundant sensors and the temperature is:
- 0/not available: don't use sensor for fan control
- error: fans will be set to high speed

Tested on HW by forcing invalid address
OCC reported temps:
                   D0010004 01 29 59 00 (41C membuf)
                   D0010004 07 00 55 00 (0C pmic)
                   D0010004 02 00 45 00 (0C dimm)
                   D0010004 02 FF 45 00 (ERROR dimm)
Fans ramped up:
TARGET SENSOR    TARGET(RPM)   FEEDBACK SENSOR    FEEDBACK(RPM)
===============================================================
fan0_0                 10400            fan0_0            10190
fan1_0                 10400            fan1_0            10330

Change-Id: I6ae920a4c45f3cc44dd3c1d614c495dad138b62c
Signed-off-by: Chris Cain <cjcain@us.ibm.com>
1 file changed