Fix Max fan speed with Deconfigured DIMM

Fan Speeds Remain at Maximum Speed With Deconfigured DIMMs
Tested: Injected Errors on DIMMs.
Signed-off-by: Sheldon Bailey <baileysh@us.ibm.com>
Change-Id: I797698f888cd9fb431d4f490c144eb5ad942bcd8
diff --git a/occ_manager.cpp b/occ_manager.cpp
index 4dc231f..88b0d26 100644
--- a/occ_manager.cpp
+++ b/occ_manager.cpp
@@ -403,7 +403,7 @@
         }
 #ifdef READ_OCC_SENSORS
         // Clear OCC sensors
-        setSensorValueToNonFunctional(instance);
+        setSensorValueToNaN(instance);
 #endif
     }
 
@@ -664,7 +664,7 @@
             // OCC is not running yet
 #ifdef READ_OCC_SENSORS
             auto id = obj->getOccInstanceID();
-            setSensorValueToNonFunctional(id);
+            setSensorValueToNaN(id);
 #endif
             continue;
         }
@@ -842,6 +842,7 @@
             continue;
         }
 
+        // NOTE: if OCC sends back 0xFF kernal sets this fault value to 1.
         if (faultValue != 0)
         {
             dbus::OccDBusSensors::getOccDBus().setValue(
@@ -1005,7 +1006,7 @@
     return;
 }
 
-void Manager::setSensorValueToNaN(uint32_t id)
+void Manager::setSensorValueToNaN(uint32_t id) const
 {
     for (const auto& [sensorPath, occId] : existingSensors)
     {
@@ -1013,6 +1014,9 @@
         {
             dbus::OccDBusSensors::getOccDBus().setValue(
                 sensorPath, std::numeric_limits<double>::quiet_NaN());
+
+            dbus::OccDBusSensors::getOccDBus().setOperationalStatus(sensorPath,
+                                                                    true);
         }
     }
     return;