blob: 1e065df078804c8a710f1fdc77c28e13e598a8a5 [file] [log] [blame]
Brandon Wyman34e257b2019-03-28 17:39:18 -05001/* This is a generated file. */
Matt Spinlerb54357f2017-08-21 14:38:54 -05002
Brandon Wyman34e257b2019-03-28 17:39:18 -05003#include "ucd90160.hpp"
Matt Spinlerb54357f2017-08-21 14:38:54 -05004
5namespace witherspoon
6{
7namespace power
8{
9
10using namespace ucd90160;
11using namespace std::string_literals;
12
Matt Spinlerf0f02b92018-10-25 16:12:43 -050013const DeviceMap UCD90160::deviceMap{
Brandon Wymanf99887b2019-04-05 17:37:14 -050014%for ucd_data in ucd90160s:
15 {${ucd_data['index']},
Matt Spinlerf0f02b92018-10-25 16:12:43 -050016 DeviceDefinition{
Brandon Wymanee21fd22019-04-11 15:46:45 -050017 "${ucd_data['path']}",
Matt Spinlere7e432b2017-08-21 15:01:40 -050018
Brandon Wymanee21fd22019-04-11 15:46:45 -050019 RailNames{
20 %for rail in ucd_data['RailNames']:
21 "${rail}"s,
22 %endfor
23 },
Matt Spinlerd998b732017-08-21 15:35:54 -050024
Matt Spinlerf0f02b92018-10-25 16:12:43 -050025 GPIConfigs{
26 GPIConfig{1, 8, "PGOOD_5P0V"s, false, extraAnalysisType::none},
27 GPIConfig{2, 9, "MEM_GOOD0"s, false, extraAnalysisType::none},
28 GPIConfig{3, 10, "MEM_GOOD1"s, false, extraAnalysisType::none},
29 GPIConfig{4, 14, "GPU_PGOOD"s, false, extraAnalysisType::gpuPGOOD},
30 GPIConfig{5, 17, "GPU_TH_OVERT"s, true,
31 extraAnalysisType::gpuOverTemp},
32 GPIConfig{6, 11, "SOFTWARE_PGOOD"s, false,
33 extraAnalysisType::none}},
Matt Spinler2d248ae2017-09-19 11:06:48 -050034
Matt Spinlerf0f02b92018-10-25 16:12:43 -050035 GPIOAnalysis{
36 {extraAnalysisType::gpuPGOOD,
37 GPIOGroup{
Matt Spinler57bee322019-03-22 10:39:03 -050038 "/sys/devices/platform/ahb/ahb:apb/ahb:apb:bus@"
Matt Spinlerf0f02b92018-10-25 16:12:43 -050039 "1e78a000/1e78a400.i2c-bus/i2c-11/11-0060",
40 gpio::Value::low,
41 [](auto& ucd, const auto& callout) {
42 ucd.gpuPGOODError(callout);
43 },
44 optionFlags::none,
45 GPIODefinitions{
46 GPIODefinition{8,
47 "/system/chassis/motherboard/gv100card0"s},
48 GPIODefinition{9,
49 "/system/chassis/motherboard/gv100card1"s},
50 GPIODefinition{10,
51 "/system/chassis/motherboard/gv100card2"s},
52 GPIODefinition{11,
53 "/system/chassis/motherboard/gv100card3"s},
54 GPIODefinition{12,
55 "/system/chassis/motherboard/gv100card4"s},
56 GPIODefinition{
57 13, "/system/chassis/motherboard/gv100card5"s}}}},
Matt Spinler2d248ae2017-09-19 11:06:48 -050058
Matt Spinlerf0f02b92018-10-25 16:12:43 -050059 {extraAnalysisType::gpuOverTemp,
60 GPIOGroup{
Matt Spinler57bee322019-03-22 10:39:03 -050061 "/sys/devices/platform/ahb/ahb:apb/ahb:apb:bus@"
Matt Spinlerf0f02b92018-10-25 16:12:43 -050062 "1e78a000/1e78a400.i2c-bus/i2c-11/11-0060",
63 gpio::Value::low,
64 [](auto& ucd,
65 const auto& callout) { ucd.gpuOverTempError(callout); },
66 optionFlags::shutdownOnFault,
67 GPIODefinitions{
68 GPIODefinition{2,
69 "/system/chassis/motherboard/gv100card0"s},
70 GPIODefinition{3,
71 "/system/chassis/motherboard/gv100card1"s},
72 GPIODefinition{4,
73 "/system/chassis/motherboard/gv100card2"s},
74 GPIODefinition{5,
75 "/system/chassis/motherboard/gv100card3"s},
76 GPIODefinition{6,
77 "/system/chassis/motherboard/gv100card4"s},
78 GPIODefinition{
Brandon Wymanf99887b2019-04-05 17:37:14 -050079 7, "/system/chassis/motherboard/gv100card5"s}}}}}}
80 },
81%endfor
82};
Matt Spinlerb54357f2017-08-21 14:38:54 -050083
Matt Spinlerf0f02b92018-10-25 16:12:43 -050084} // namespace power
85} // namespace witherspoon