1 /* This is a generated file. */ 2 3 #include "ucd90160.hpp" 4 5 namespace witherspoon 6 { 7 namespace power 8 { 9 10 using namespace ucd90160; 11 using namespace std::string_literals; 12 13 const DeviceMap UCD90160::deviceMap{ 14 %for ucd_data in ucd90160s: 15 {${ucd_data['index']}, 16 DeviceDefinition{ 17 "${ucd_data['path']}", 18 19 RailNames{ 20 %for rail in ucd_data['RailNames']: 21 "${rail}"s, 22 %endfor 23 }, 24 25 GPIConfigs{ 26 %for gpi_config in ucd_data['GPIConfigs']: 27 <% 28 poll = str(gpi_config['poll']).lower() 29 %>\ 30 GPIConfig{${gpi_config['gpi']}, ${gpi_config['pinID']}, "${gpi_config['name']}"s, ${poll}, extraAnalysisType::${gpi_config['analysis']}}, 31 %endfor 32 }, 33 34 GPIOAnalysis{ 35 {extraAnalysisType::gpuPGOOD, 36 GPIOGroup{ 37 "/sys/devices/platform/ahb/ahb:apb/ahb:apb:bus@" 38 "1e78a000/1e78a400.i2c-bus/i2c-11/11-0060", 39 gpio::Value::low, 40 [](auto& ucd, const auto& callout) { 41 ucd.gpuPGOODError(callout); 42 }, 43 optionFlags::none, 44 GPIODefinitions{ 45 GPIODefinition{8, 46 "/system/chassis/motherboard/gv100card0"s}, 47 GPIODefinition{9, 48 "/system/chassis/motherboard/gv100card1"s}, 49 GPIODefinition{10, 50 "/system/chassis/motherboard/gv100card2"s}, 51 GPIODefinition{11, 52 "/system/chassis/motherboard/gv100card3"s}, 53 GPIODefinition{12, 54 "/system/chassis/motherboard/gv100card4"s}, 55 GPIODefinition{ 56 13, "/system/chassis/motherboard/gv100card5"s}}}}, 57 58 {extraAnalysisType::gpuOverTemp, 59 GPIOGroup{ 60 "/sys/devices/platform/ahb/ahb:apb/ahb:apb:bus@" 61 "1e78a000/1e78a400.i2c-bus/i2c-11/11-0060", 62 gpio::Value::low, 63 [](auto& ucd, 64 const auto& callout) { ucd.gpuOverTempError(callout); }, 65 optionFlags::shutdownOnFault, 66 GPIODefinitions{ 67 GPIODefinition{2, 68 "/system/chassis/motherboard/gv100card0"s}, 69 GPIODefinition{3, 70 "/system/chassis/motherboard/gv100card1"s}, 71 GPIODefinition{4, 72 "/system/chassis/motherboard/gv100card2"s}, 73 GPIODefinition{5, 74 "/system/chassis/motherboard/gv100card3"s}, 75 GPIODefinition{6, 76 "/system/chassis/motherboard/gv100card4"s}, 77 GPIODefinition{ 78 7, "/system/chassis/motherboard/gv100card5"s}}}}}} 79 }, 80 %endfor 81 }; 82 83 } // namespace power 84 } // namespace witherspoon 85