blob: 8f092057d791ec05935ca3f39f187f7cfd112154 [file] [log] [blame]
Shawn McCarney92420f22024-06-27 22:06:58 -05001{
2 "comments": ["phosphor-regulators configuration file for IBM Fuji systems"],
3
4 "rules": [
5 {
6 "comments": ["Rule to set PMBus PAGE to 0"],
7 "id": "set_page0_rule",
8 "actions": [
9 { "i2c_write_byte": { "register": "0x00", "value": "0x00" } }
10 ]
11 },
12
13 {
14 "comments": ["Rule to set PMBus PAGE to 1"],
15 "id": "set_page1_rule",
16 "actions": [
17 { "i2c_write_byte": { "register": "0x00", "value": "0x01" } }
18 ]
19 },
20
21 {
22 "comments": ["Rule to set output voltage of a PMBus regulator"],
23 "id": "set_voltage_rule",
24 "actions": [
25 {
26 "comments": [
27 "Write volts value to VOUT_COMMAND in linear format.",
28 "Get volts value from configuration. Get exponent",
29 "from VOUT_MODE. Verify write was successful."
30 ],
31 "pmbus_write_vout_command": {
32 "format": "linear",
33 "is_verified": true
34 }
35 }
36 ]
37 },
38
39 {
40 "comments": [
41 "Rule to set output voltage of PAGE 0 of a PMBus regulator"
42 ],
43 "id": "set_voltage_page0_rule",
44 "actions": [
45 { "run_rule": "set_page0_rule" },
46 { "run_rule": "set_voltage_rule" }
47 ]
48 },
49
50 {
51 "comments": [
52 "Rule to set output voltage of PAGE 1 of a PMBus regulator"
53 ],
54 "id": "set_voltage_page1_rule",
55 "actions": [
56 { "run_rule": "set_page1_rule" },
57 { "run_rule": "set_voltage_rule" }
58 ]
59 },
60
61 {
62 "comments": [
63 "Rule to set output voltage of a PMBus regulator using",
64 "PMBus OPERATION and VOUT_COMMAND"
65 ],
66 "id": "set_operation_and_voltage_rule",
67 "actions": [
68 {
69 "comments": [
70 "Set PMBus OPERATION to 0x80 indicating output voltage",
71 "is set by the PMBus VOUT_COMMAND"
72 ],
73 "i2c_write_byte": { "register": "0x01", "value": "0x80" }
74 },
75
76 {
77 "comments": [
78 "Set the output voltage using the PMBus VOUT_COMMAND"
79 ],
80 "run_rule": "set_voltage_rule"
81 },
82
83 {
84 "comments": [
85 "Set PMBus OPERATION to 0xB0 indicating output voltage",
86 "will now be set by AVSBus (AVS_VOUT_COMMAND).",
87 "Hardware settings cause the VOUT_COMMAND value to be",
88 "the initial voltage value for AVSBus."
89 ],
90 "i2c_write_byte": { "register": "0x01", "value": "0xB0" }
91 }
92 ]
93 }
94 ],
95
96 "chassis": [
97 {
98 "comments": ["Chassis (drawer) 1", "Note: Devices not defined yet"],
99 "number": 1,
100 "inventory_path": "system/chassis"
101 }
102 ]
103}