132e84e98SVishwanatha Subbanna #include "occ_device.hpp" 2*94df8c90SGunnar Mills 3482e31ffSEddie James #include "occ_status.hpp" 432e84e98SVishwanatha Subbanna 5*94df8c90SGunnar Mills #include <iostream> 6*94df8c90SGunnar Mills 732e84e98SVishwanatha Subbanna namespace open_power 832e84e98SVishwanatha Subbanna { 932e84e98SVishwanatha Subbanna namespace occ 1032e84e98SVishwanatha Subbanna { 1132e84e98SVishwanatha Subbanna 1232e84e98SVishwanatha Subbanna fs::path Device::bindPath = fs::path(OCC_HWMON_PATH) / "bind"; 1332e84e98SVishwanatha Subbanna fs::path Device::unBindPath = fs::path(OCC_HWMON_PATH) / "unbind"; 1432e84e98SVishwanatha Subbanna 15636577f4SEdward A. James bool Device::master() const 16636577f4SEdward A. James { 17636577f4SEdward A. James int master; 18636577f4SEdward A. James auto masterFile = fs::path(DEV_PATH) / config / "occ_master"; 19636577f4SEdward A. James std::ifstream file(masterFile, std::ios::in); 20636577f4SEdward A. James 21636577f4SEdward A. James if (!file) 22636577f4SEdward A. James { 23636577f4SEdward A. James return false; 24636577f4SEdward A. James } 25636577f4SEdward A. James 26636577f4SEdward A. James file >> master; 27636577f4SEdward A. James file.close(); 28636577f4SEdward A. James return (master != 0); 29636577f4SEdward A. James } 30636577f4SEdward A. James 31482e31ffSEddie James void Device::throttleProcTempCallback(bool error) 32482e31ffSEddie James { 33482e31ffSEddie James statusObject.throttleProcTemp(error); 34482e31ffSEddie James } 35482e31ffSEddie James 36482e31ffSEddie James void Device::throttleProcPowerCallback(bool error) 37482e31ffSEddie James { 38482e31ffSEddie James statusObject.throttleProcPower(error); 39482e31ffSEddie James } 40482e31ffSEddie James 41482e31ffSEddie James void Device::throttleMemTempCallback(bool error) 42482e31ffSEddie James { 43482e31ffSEddie James statusObject.throttleMemTemp(error); 44482e31ffSEddie James } 45482e31ffSEddie James 4632e84e98SVishwanatha Subbanna } // namespace occ 4732e84e98SVishwanatha Subbanna } // namespace open_power 48