blob: 23722b4e128a25027f8ee5ec15f8f3b49526a85e [file] [log] [blame]
Matthew Barthbde68592017-05-24 17:06:13 -05001groups:
Matthew Barth2ca6b7b2017-06-30 11:07:51 -05002 - name: air_cooled_zone0_fans
3 description: Group of fan inventory objects for air cooled zone 0
Matthew Barth46e31152017-08-08 16:08:59 -05004 type: /xyz/openbmc_project/inventory
Matthew Barthbde68592017-05-24 17:06:13 -05005 members:
6 - /system/chassis/motherboard/fan0
7 - /system/chassis/motherboard/fan1
8 - /system/chassis/motherboard/fan2
9 - /system/chassis/motherboard/fan3
Matthew Barth2ca6b7b2017-06-30 11:07:51 -050010 - name: water_and_air_cooled_zone0_fans
11 description: Group of fan inventory objects for water/air cooled zone 0
Matthew Barth46e31152017-08-08 16:08:59 -050012 type: /xyz/openbmc_project/inventory
Matthew Barth2ca6b7b2017-06-30 11:07:51 -050013 members:
14 - /system/chassis/motherboard/fan0
15 - /system/chassis/motherboard/fan2
16 - /system/chassis/motherboard/fan3
Matthew Barth5cde5a62017-07-10 15:35:29 -050017 - name: zone0_ambient
18 description: Group of ambient temperature sensors for zone 0
Matthew Barth46e31152017-08-08 16:08:59 -050019 type: /xyz/openbmc_project/sensors
Matthew Barth5cde5a62017-07-10 15:35:29 -050020 members:
21 - /temperature/ambient
Matthew Barth1181f282017-09-15 14:53:01 -050022 - name: zone0_fan_tachs
23 description: Group of fan tach feedback speed inputs for zone 0
24 type: /xyz/openbmc_project/sensors
25 members:
26 - /fan_tach/fan0_0
27 - /fan_tach/fan0_1
28 - /fan_tach/fan1_0
29 - /fan_tach/fan1_1
30 - /fan_tach/fan2_0
31 - /fan_tach/fan2_1
32 - /fan_tach/fan3_0
33 - /fan_tach/fan3_1
Matthew Barth184a1512017-08-16 10:42:54 -050034 - name: occ0_object
35 description: Dbus object containing OCC0 properties
36 type: /org/open_power/control
37 members:
38 - /occ0
39 - name: occ1_object
40 description: Dbus object containing OCC1 properties
41 type: /org/open_power/control
42 members:
43 - /occ1
44 - name: zone0_cores
45 description: Group of core temperature sensors for zone 0
46 type: /xyz/openbmc_project/sensors
47 members:
48 - /temperature/p0_core0_temp
49 - /temperature/p0_core1_temp
50 - /temperature/p0_core2_temp
51 - /temperature/p0_core3_temp
52 - /temperature/p0_core4_temp
53 - /temperature/p0_core5_temp
54 - /temperature/p0_core6_temp
55 - /temperature/p0_core7_temp
56 - /temperature/p0_core8_temp
57 - /temperature/p0_core9_temp
58 - /temperature/p0_core10_temp
59 - /temperature/p0_core11_temp
60 - /temperature/p0_core12_temp
61 - /temperature/p0_core13_temp
62 - /temperature/p0_core14_temp
63 - /temperature/p0_core15_temp
64 - /temperature/p0_core16_temp
65 - /temperature/p0_core17_temp
66 - /temperature/p0_core18_temp
67 - /temperature/p0_core19_temp
68 - /temperature/p0_core20_temp
69 - /temperature/p0_core21_temp
70 - /temperature/p0_core22_temp
71 - /temperature/p0_core23_temp
72 - /temperature/p1_core0_temp
73 - /temperature/p1_core1_temp
74 - /temperature/p1_core2_temp
75 - /temperature/p1_core3_temp
76 - /temperature/p1_core4_temp
77 - /temperature/p1_core5_temp
78 - /temperature/p1_core6_temp
79 - /temperature/p1_core7_temp
80 - /temperature/p1_core8_temp
81 - /temperature/p1_core9_temp
82 - /temperature/p1_core10_temp
83 - /temperature/p1_core11_temp
84 - /temperature/p1_core12_temp
85 - /temperature/p1_core13_temp
86 - /temperature/p1_core14_temp
87 - /temperature/p1_core15_temp
88 - /temperature/p1_core16_temp
89 - /temperature/p1_core17_temp
90 - /temperature/p1_core18_temp
91 - /temperature/p1_core19_temp
92 - /temperature/p1_core20_temp
93 - /temperature/p1_core21_temp
94 - /temperature/p1_core22_temp
95 - /temperature/p1_core23_temp
Matthew Barth7a512782017-08-16 12:43:07 -050096 - name: zone0_regulators
97 description: Group of regulator temperature sensors for zone 0
98 type: /xyz/openbmc_project/sensors
99 members:
100 - /temperature/p0_vdd_temp
101 - /temperature/p1_vdd_temp
Matthew Barth362d8232017-08-18 10:39:03 -0500102 - name: zone0_dimms
103 description: Group of dimm temperature sensors for zone 0
104 type: /xyz/openbmc_project/sensors
105 members:
106 - /temperature/dimm0_temp
107 - /temperature/dimm1_temp
108 - /temperature/dimm2_temp
109 - /temperature/dimm3_temp
110 - /temperature/dimm4_temp
111 - /temperature/dimm5_temp
112 - /temperature/dimm6_temp
113 - /temperature/dimm7_temp
114 - /temperature/dimm8_temp
115 - /temperature/dimm9_temp
116 - /temperature/dimm10_temp
117 - /temperature/dimm11_temp
118 - /temperature/dimm12_temp
119 - /temperature/dimm13_temp
120 - /temperature/dimm14_temp
121 - /temperature/dimm15_temp
Matthew Barth1f8bf1d2017-09-14 13:26:06 -0500122 - name: zone0_gpu_cores
123 description: Group of gpu core temperature sensors for zone 0
124 type: /xyz/openbmc_project/sensors
125 members:
126 - /temperature/gpu0_core_temp
127 - /temperature/gpu1_core_temp
128 - /temperature/gpu2_core_temp
129 - /temperature/gpu3_core_temp
130 - /temperature/gpu4_core_temp
131 - /temperature/gpu5_core_temp
Matthew Barthfe1823a2017-09-14 13:39:49 -0500132 - name: zone0_gpu_memory
133 description: Group of gpu memory temperature sensors for zone 0
134 type: /xyz/openbmc_project/sensors
135 members:
136 - /temperature/gpu0_mem_temp
137 - /temperature/gpu1_mem_temp
138 - /temperature/gpu2_mem_temp
139 - /temperature/gpu3_mem_temp
140 - /temperature/gpu4_mem_temp
141 - /temperature/gpu5_mem_temp
Matthew Barth336e2622017-10-13 14:45:27 -0500142 - name: zone0_pcie
143 description: Group of pcie temperature sensors for zone 0
144 type: /xyz/openbmc_project/sensors
145 members:
146 - /temperature/pcie
Matthew Barth184a1512017-08-16 10:42:54 -0500147
148preconditions:
149 - name: property_states_match
150 description: >
151 All defined properties must match the values given to
152 enable a set speed event otherwise fan speeds are set to full
153 parameters:
154 - groups
Matthew Barthbde68592017-05-24 17:06:13 -0500155
156actions:
Matthew Barth1181f282017-09-15 14:53:01 -0500157 - name: set_request_speed_base_with_max
158 description: >
159 Set the base request speed of a zone to the max value of a group for
160 calculating a new target speed
Matthew Barthbde68592017-05-24 17:06:13 -0500161 - name: count_state_before_speed
162 description: Set the speed when a number of properties at a state
163 parameters:
164 - count
165 - property
166 - speed
Matthew Barth5cde5a62017-07-10 15:35:29 -0500167 - name: set_floor_from_average_sensor_value
168 description: Set floor speed from first entry with average less than key
169 parameters:
170 - map
171 - name: set_ceiling_from_average_sensor_value
172 description: Set ceiling speed based on key transition values with average
173 parameters:
174 - map
Matthew Barth184a1512017-08-16 10:42:54 -0500175 - name: set_net_increase_speed
176 description: >
177 Set the speed increase delta based on a factor applied to
178 the delta increase size times the given value and property's
179 value difference
180 parameters:
181 - property
182 - factor
183 - delta
184 - name: set_net_decrease_speed
185 description: >
186 Set the speed decrease delta based on a factor applied to
187 the delta decrease size times the given value and property's
188 value difference
189 parameters:
190 - property
191 - factor
192 - delta
Matthew Barthbde68592017-05-24 17:06:13 -0500193
194events:
Matthew Barth2ca6b7b2017-06-30 11:07:51 -0500195 - name: missing_before_high_speed_air
Matthew Barthbde68592017-05-24 17:06:13 -0500196 zone_conditions:
197 - name: air_cooled_chassis
198 zones:
199 - 0
Matthew Barth2ca6b7b2017-06-30 11:07:51 -0500200 group: air_cooled_zone0_fans
Matthew Barthbde68592017-05-24 17:06:13 -0500201 interface: xyz.openbmc_project.Inventory.Item
202 property:
203 name: Present
204 type: bool
Matthew Barth2e104962017-09-14 12:32:49 -0500205 actions:
206 - name: count_state_before_speed
207 count: 1
208 property: false
209 speed:
210 value: 10500
211 type: uint64_t
Matthew Barth2ca6b7b2017-06-30 11:07:51 -0500212 - name: fails_before_high_speed_air
Matthew Barthbde68592017-05-24 17:06:13 -0500213 zone_conditions:
214 - name: air_cooled_chassis
215 zones:
216 - 0
Matthew Barth2ca6b7b2017-06-30 11:07:51 -0500217 group: air_cooled_zone0_fans
Matthew Barthbde68592017-05-24 17:06:13 -0500218 interface: xyz.openbmc_project.State.Decorator.OperationalStatus
219 property:
220 name: Functional
221 type: bool
Matthew Barth2e104962017-09-14 12:32:49 -0500222 actions:
223 - name: count_state_before_speed
224 count: 1
225 property: false
226 speed:
227 value: 10500
228 type: uint64_t
Matthew Barth2ca6b7b2017-06-30 11:07:51 -0500229 - name: missing_before_high_speed_water_and_air
230 zone_conditions:
231 - name: water_and_air_cooled_chassis
232 zones:
233 - 0
234 group: water_and_air_cooled_zone0_fans
235 interface: xyz.openbmc_project.Inventory.Item
236 property:
237 name: Present
238 type: bool
Matthew Barth2e104962017-09-14 12:32:49 -0500239 actions:
240 - name: count_state_before_speed
241 count: 1
242 property: false
243 speed:
244 value: 10500
245 type: uint64_t
Matthew Barth2ca6b7b2017-06-30 11:07:51 -0500246 - name: fails_before_high_speed_water_and_air
247 zone_conditions:
248 - name: water_and_air_cooled_chassis
249 zones:
250 - 0
251 group: water_and_air_cooled_zone0_fans
252 interface: xyz.openbmc_project.State.Decorator.OperationalStatus
253 property:
254 name: Functional
255 type: bool
Matthew Barth2e104962017-09-14 12:32:49 -0500256 actions:
257 - name: count_state_before_speed
258 count: 1
259 property: false
260 speed:
261 value: 10500
262 type: uint64_t
263 - name: set_air_cooled_speed_boundaries_based_on_ambient
Matthew Barth5cde5a62017-07-10 15:35:29 -0500264 zone_conditions:
265 - name: air_cooled_chassis
266 zones:
267 - 0
268 group: zone0_ambient
269 interface: xyz.openbmc_project.Sensor.Value
270 property:
271 name: Value
272 type: int64_t
Matthew Barth2e104962017-09-14 12:32:49 -0500273 actions:
274 - name: set_floor_from_average_sensor_value
275 map:
276 value:
Matthew Barth0359dc92017-10-16 15:57:20 -0500277 - 27000: 7200
278 - 32000: 7200
279 - 37000: 7200
280 - 40000: 7200
Matthew Barth2e104962017-09-14 12:32:49 -0500281 type: std::map<int64_t, uint64_t>
282 - name: set_ceiling_from_average_sensor_value
283 map:
284 value:
Matthew Barth0359dc92017-10-16 15:57:20 -0500285 - 25000: 7200
Matthew Barth2e104962017-09-14 12:32:49 -0500286 - 27000: 10500
287 type: std::map<int64_t, uint64_t>
288 - name: set_water_cooled_speed_boundaries_based_on_ambient
Matthew Barth5cde5a62017-07-10 15:35:29 -0500289 zone_conditions:
290 - name: water_and_air_cooled_chassis
291 zones:
292 - 0
293 group: zone0_ambient
294 interface: xyz.openbmc_project.Sensor.Value
295 property:
296 name: Value
297 type: int64_t
Matthew Barth2e104962017-09-14 12:32:49 -0500298 actions:
299 - name: set_floor_from_average_sensor_value
300 map:
301 value:
Matthew Barth0692acb2017-11-02 13:03:11 -0500302 - 27000: 3000
303 - 32000: 4300
304 - 37000: 5000
305 - 40000: 5800
Matthew Barth2e104962017-09-14 12:32:49 -0500306 type: std::map<int64_t, uint64_t>
307 - name: set_ceiling_from_average_sensor_value
308 map:
309 value:
Matthew Barth0359dc92017-10-16 15:57:20 -0500310 - 25000: 7200
Matthew Barth2e104962017-09-14 12:32:49 -0500311 - 27000: 10500
312 type: std::map<int64_t, uint64_t>
Matthew Barth1181f282017-09-15 14:53:01 -0500313 - name: set_base_request_speed_to_max_tach_feedback
314 zone_conditions:
315 - name: air_cooled_chassis
316 zones:
317 - 0
318 - name: water_and_air_cooled_chassis
319 zones:
320 - 0
321 group: zone0_fan_tachs
322 interface: xyz.openbmc_project.Sensor.Value
323 property:
324 name: Value
325 type: int64_t
326 actions:
327 - name: set_request_speed_base_with_max
Matthew Barth2e104962017-09-14 12:32:49 -0500328 - name: speed_changes_based_on_regulator_temps
Matthew Barth7a512782017-08-16 12:43:07 -0500329 zone_conditions:
Matthew Barth7a512782017-08-16 12:43:07 -0500330 - name: water_and_air_cooled_chassis
331 zones:
332 - 0
333 group: zone0_regulators
334 interface: xyz.openbmc_project.Sensor.Value
335 property:
336 name: Value
337 type: int64_t
Matthew Barth2e104962017-09-14 12:32:49 -0500338 actions:
339 - name: set_net_increase_speed
340 property: 85000
341 factor:
342 value: 1000
343 type: int64_t
344 delta:
345 value: 400
346 type: uint64_t
347 - name: set_net_decrease_speed
348 property: 82000
349 factor:
350 value: 1000
351 type: int64_t
352 delta:
Matthew Barth23bb1572017-09-14 13:09:39 -0500353 value: 40
Matthew Barth2e104962017-09-14 12:32:49 -0500354 type: uint64_t
Matthew Barth7a512782017-08-16 12:43:07 -0500355 timer:
Matthew Barth23bb1572017-09-14 13:09:39 -0500356 interval: 5
Matthew Barth336e2622017-10-13 14:45:27 -0500357 - name: speed_changes_based_on_pcie_temps
358 zone_conditions:
Matthew Barth336e2622017-10-13 14:45:27 -0500359 - name: water_and_air_cooled_chassis
360 zones:
361 - 0
362 group: zone0_pcie
363 interface: xyz.openbmc_project.Sensor.Value
364 property:
365 name: Value
366 type: int64_t
367 actions:
368 - name: set_net_increase_speed
369 property: 55000
370 factor:
371 value: 1000
372 type: int64_t
373 delta:
374 value: 400
375 type: uint64_t
376 - name: set_net_decrease_speed
377 property: 52000
378 factor:
379 value: 1000
380 type: int64_t
381 delta:
382 value: 40
383 type: uint64_t
384 timer:
385 interval: 5
Matthew Barth2e104962017-09-14 12:32:49 -0500386 - name: occ_active_speed_changes
Matthew Barth362d8232017-08-18 10:39:03 -0500387 precondition:
388 name: property_states_match
389 groups:
390 - name: occ0_object
391 interface: org.open_power.OCC.Status
392 property:
393 name: OccActive
394 type: bool
395 value: true
396 - name: occ1_object
397 interface: org.open_power.OCC.Status
398 property:
399 name: OccActive
400 type: bool
401 value: true
Matthew Barth2e104962017-09-14 12:32:49 -0500402 events:
Matthew Barth2e104962017-09-14 12:32:49 -0500403 - name: speed_changes_based_on_dimm_temps
404 zone_conditions:
Matthew Barth2e104962017-09-14 12:32:49 -0500405 - name: water_and_air_cooled_chassis
406 zones:
407 - 0
408 group: zone0_dimms
409 interface: xyz.openbmc_project.Sensor.Value
Matthew Barth362d8232017-08-18 10:39:03 -0500410 property:
Matthew Barth2e104962017-09-14 12:32:49 -0500411 name: Value
412 type: int64_t
413 actions:
414 - name: set_net_increase_speed
Matthew Barth23bb1572017-09-14 13:09:39 -0500415 property: 64000
Matthew Barth2e104962017-09-14 12:32:49 -0500416 factor:
417 value: 1000
418 type: int64_t
419 delta:
420 value: 200
421 type: uint64_t
422 - name: set_net_decrease_speed
Matthew Barth23bb1572017-09-14 13:09:39 -0500423 property: 61000
Matthew Barth2e104962017-09-14 12:32:49 -0500424 factor:
425 value: 1000
426 type: int64_t
427 delta:
Matthew Barth23bb1572017-09-14 13:09:39 -0500428 value: 40
Matthew Barth2e104962017-09-14 12:32:49 -0500429 type: uint64_t
430 timer:
Matthew Barth23bb1572017-09-14 13:09:39 -0500431 interval: 5