1{
2  "comments": [ "Config file for a FooBar one-chassis system" ],
3
4  "rules": [
5    {
6      "comments": [ "Sets output voltage for a PMBus regulator rail" ],
7      "id": "set_voltage_rule",
8      "actions": [
9        {
10          "pmbus_write_vout_command": {
11            "format": "linear"
12          }
13        }
14      ]
15    },
16
17    {
18      "comments": [ "Reads sensors from a PMBus regulator rail" ],
19      "id": "read_sensors_rule",
20      "actions": [
21        {
22          "comments": [ "Read output voltage from READ_VOUT." ],
23          "pmbus_read_sensor": {
24            "type": "vout",
25            "command": "0x8B",
26            "format": "linear_16"
27          }
28        },
29
30        {
31          "comments": [ "Read output current from READ_IOUT." ],
32          "pmbus_read_sensor": {
33            "type": "iout",
34            "command": "0x8C",
35            "format": "linear_11"
36          }
37        },
38
39        {
40          "comments": [ "Read temperature from READ_TEMPERATURE_1." ],
41          "pmbus_read_sensor": {
42            "type": "temperature",
43            "command": "0x8D",
44            "format": "linear_11"
45          }
46        }
47      ]
48    }
49  ],
50
51  "chassis": [
52    {
53      "comments": [ "Chassis number 1 containing CPUs and memory" ],
54      "number": 1,
55      "devices": [
56        {
57          "comments": [ "IR35221 regulator producing the Vdd rail" ],
58          "id": "vdd_regulator",
59          "is_regulator": true,
60          "fru": "system/chassis/motherboard/regulator1",
61          "i2c_interface": {
62            "bus": 1,
63            "address": "0x70"
64          },
65          "rails": [
66            {
67              "comments": [ "Vdd rail" ],
68              "id": "vdd",
69              "configuration": {
70                "volts": 1.03,
71                "rule_id": "set_voltage_rule"
72              },
73              "sensor_monitoring": {
74                "rule_id": "read_sensors_rule"
75              }
76            }
77          ]
78        },
79
80        {
81          "comments": [ "IR35221 regulator producing the Vio rail" ],
82          "id": "vio_regulator",
83          "is_regulator": true,
84          "fru": "system/chassis/motherboard/regulator2",
85          "i2c_interface": {
86            "bus": 1,
87            "address": "0x71"
88          },
89          "rails": [
90            {
91              "comments": [ "Vio rail" ],
92              "id": "vio",
93              "configuration": {
94                "volts": 1.1,
95                "rule_id": "set_voltage_rule"
96              },
97              "sensor_monitoring": {
98                "rule_id": "read_sensors_rule"
99              }
100            }
101          ]
102        }
103      ]
104    }
105  ]
106}
107