134e257baSBrandon Wyman /* This is a generated file. */
234e257baSBrandon Wyman 
334e257baSBrandon Wyman #include "ucd90160.hpp"
434e257baSBrandon Wyman 
534e257baSBrandon Wyman namespace witherspoon
634e257baSBrandon Wyman {
734e257baSBrandon Wyman namespace power
834e257baSBrandon Wyman {
934e257baSBrandon Wyman 
1034e257baSBrandon Wyman using namespace ucd90160;
1134e257baSBrandon Wyman using namespace std::string_literals;
1234e257baSBrandon Wyman 
1334e257baSBrandon Wyman const DeviceMap UCD90160::deviceMap{
14f99887b2SBrandon Wyman %for ucd_data in ucd90160s:
15f99887b2SBrandon Wyman     {${ucd_data['index']},
1634e257baSBrandon Wyman      DeviceDefinition{
17f99887b2SBrandon Wyman        "${ucd_data['path']}",
1834e257baSBrandon Wyman 
19*ee21fd28SBrandon Wyman         RailNames{
20*ee21fd28SBrandon Wyman         %for rail in ucd_data['RailNames']:
21*ee21fd28SBrandon Wyman             "${rail}"s,
22*ee21fd28SBrandon Wyman         %endfor
23*ee21fd28SBrandon Wyman         },
2434e257baSBrandon Wyman 
2534e257baSBrandon Wyman          GPIConfigs{
2634e257baSBrandon Wyman              GPIConfig{1, 8, "PGOOD_5P0V"s, false, extraAnalysisType::none},
2734e257baSBrandon Wyman              GPIConfig{2, 9, "MEM_GOOD0"s, false, extraAnalysisType::none},
2834e257baSBrandon Wyman              GPIConfig{3, 10, "MEM_GOOD1"s, false, extraAnalysisType::none},
2934e257baSBrandon Wyman              GPIConfig{4, 14, "GPU_PGOOD"s, false, extraAnalysisType::gpuPGOOD},
3034e257baSBrandon Wyman              GPIConfig{5, 17, "GPU_TH_OVERT"s, true,
3134e257baSBrandon Wyman                        extraAnalysisType::gpuOverTemp},
3234e257baSBrandon Wyman              GPIConfig{6, 11, "SOFTWARE_PGOOD"s, false,
3334e257baSBrandon Wyman                        extraAnalysisType::none}},
3434e257baSBrandon Wyman 
3534e257baSBrandon Wyman          GPIOAnalysis{
3634e257baSBrandon Wyman              {extraAnalysisType::gpuPGOOD,
3734e257baSBrandon Wyman               GPIOGroup{
3834e257baSBrandon Wyman                   "/sys/devices/platform/ahb/ahb:apb/ahb:apb:bus@"
3934e257baSBrandon Wyman                   "1e78a000/1e78a400.i2c-bus/i2c-11/11-0060",
4034e257baSBrandon Wyman                   gpio::Value::low,
4134e257baSBrandon Wyman                   [](auto& ucd, const auto& callout) {
4234e257baSBrandon Wyman                       ucd.gpuPGOODError(callout);
4334e257baSBrandon Wyman                   },
4434e257baSBrandon Wyman                   optionFlags::none,
4534e257baSBrandon Wyman                   GPIODefinitions{
4634e257baSBrandon Wyman                       GPIODefinition{8,
4734e257baSBrandon Wyman                                      "/system/chassis/motherboard/gv100card0"s},
4834e257baSBrandon Wyman                       GPIODefinition{9,
4934e257baSBrandon Wyman                                      "/system/chassis/motherboard/gv100card1"s},
5034e257baSBrandon Wyman                       GPIODefinition{10,
5134e257baSBrandon Wyman                                      "/system/chassis/motherboard/gv100card2"s},
5234e257baSBrandon Wyman                       GPIODefinition{11,
5334e257baSBrandon Wyman                                      "/system/chassis/motherboard/gv100card3"s},
5434e257baSBrandon Wyman                       GPIODefinition{12,
5534e257baSBrandon Wyman                                      "/system/chassis/motherboard/gv100card4"s},
5634e257baSBrandon Wyman                       GPIODefinition{
5734e257baSBrandon Wyman                           13, "/system/chassis/motherboard/gv100card5"s}}}},
5834e257baSBrandon Wyman 
5934e257baSBrandon Wyman              {extraAnalysisType::gpuOverTemp,
6034e257baSBrandon Wyman               GPIOGroup{
6134e257baSBrandon Wyman                   "/sys/devices/platform/ahb/ahb:apb/ahb:apb:bus@"
6234e257baSBrandon Wyman                   "1e78a000/1e78a400.i2c-bus/i2c-11/11-0060",
6334e257baSBrandon Wyman                   gpio::Value::low,
6434e257baSBrandon Wyman                   [](auto& ucd,
6534e257baSBrandon Wyman                      const auto& callout) { ucd.gpuOverTempError(callout); },
6634e257baSBrandon Wyman                   optionFlags::shutdownOnFault,
6734e257baSBrandon Wyman                   GPIODefinitions{
6834e257baSBrandon Wyman                       GPIODefinition{2,
6934e257baSBrandon Wyman                                      "/system/chassis/motherboard/gv100card0"s},
7034e257baSBrandon Wyman                       GPIODefinition{3,
7134e257baSBrandon Wyman                                      "/system/chassis/motherboard/gv100card1"s},
7234e257baSBrandon Wyman                       GPIODefinition{4,
7334e257baSBrandon Wyman                                      "/system/chassis/motherboard/gv100card2"s},
7434e257baSBrandon Wyman                       GPIODefinition{5,
7534e257baSBrandon Wyman                                      "/system/chassis/motherboard/gv100card3"s},
7634e257baSBrandon Wyman                       GPIODefinition{6,
7734e257baSBrandon Wyman                                      "/system/chassis/motherboard/gv100card4"s},
7834e257baSBrandon Wyman                       GPIODefinition{
79f99887b2SBrandon Wyman                           7, "/system/chassis/motherboard/gv100card5"s}}}}}}
80f99887b2SBrandon Wyman     },
81f99887b2SBrandon Wyman %endfor
82f99887b2SBrandon Wyman };
8334e257baSBrandon Wyman 
8434e257baSBrandon Wyman } // namespace power
8534e257baSBrandon Wyman } // namespace witherspoon
86