blob: 7a71d16a5eb1c352a450bdf804c84621b47847d0 [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 Barth184a1512017-08-16 10:42:54 -050022 - name: occ0_object
23 description: Dbus object containing OCC0 properties
24 type: /org/open_power/control
25 members:
26 - /occ0
27 - name: occ1_object
28 description: Dbus object containing OCC1 properties
29 type: /org/open_power/control
30 members:
31 - /occ1
32 - name: zone0_cores
33 description: Group of core temperature sensors for zone 0
34 type: /xyz/openbmc_project/sensors
35 members:
36 - /temperature/p0_core0_temp
37 - /temperature/p0_core1_temp
38 - /temperature/p0_core2_temp
39 - /temperature/p0_core3_temp
40 - /temperature/p0_core4_temp
41 - /temperature/p0_core5_temp
42 - /temperature/p0_core6_temp
43 - /temperature/p0_core7_temp
44 - /temperature/p0_core8_temp
45 - /temperature/p0_core9_temp
46 - /temperature/p0_core10_temp
47 - /temperature/p0_core11_temp
48 - /temperature/p0_core12_temp
49 - /temperature/p0_core13_temp
50 - /temperature/p0_core14_temp
51 - /temperature/p0_core15_temp
52 - /temperature/p0_core16_temp
53 - /temperature/p0_core17_temp
54 - /temperature/p0_core18_temp
55 - /temperature/p0_core19_temp
56 - /temperature/p0_core20_temp
57 - /temperature/p0_core21_temp
58 - /temperature/p0_core22_temp
59 - /temperature/p0_core23_temp
60 - /temperature/p1_core0_temp
61 - /temperature/p1_core1_temp
62 - /temperature/p1_core2_temp
63 - /temperature/p1_core3_temp
64 - /temperature/p1_core4_temp
65 - /temperature/p1_core5_temp
66 - /temperature/p1_core6_temp
67 - /temperature/p1_core7_temp
68 - /temperature/p1_core8_temp
69 - /temperature/p1_core9_temp
70 - /temperature/p1_core10_temp
71 - /temperature/p1_core11_temp
72 - /temperature/p1_core12_temp
73 - /temperature/p1_core13_temp
74 - /temperature/p1_core14_temp
75 - /temperature/p1_core15_temp
76 - /temperature/p1_core16_temp
77 - /temperature/p1_core17_temp
78 - /temperature/p1_core18_temp
79 - /temperature/p1_core19_temp
80 - /temperature/p1_core20_temp
81 - /temperature/p1_core21_temp
82 - /temperature/p1_core22_temp
83 - /temperature/p1_core23_temp
Matthew Barth7a512782017-08-16 12:43:07 -050084 - name: zone0_regulators
85 description: Group of regulator temperature sensors for zone 0
86 type: /xyz/openbmc_project/sensors
87 members:
88 - /temperature/p0_vdd_temp
89 - /temperature/p1_vdd_temp
Matthew Barth362d8232017-08-18 10:39:03 -050090 - name: zone0_dimms
91 description: Group of dimm temperature sensors for zone 0
92 type: /xyz/openbmc_project/sensors
93 members:
94 - /temperature/dimm0_temp
95 - /temperature/dimm1_temp
96 - /temperature/dimm2_temp
97 - /temperature/dimm3_temp
98 - /temperature/dimm4_temp
99 - /temperature/dimm5_temp
100 - /temperature/dimm6_temp
101 - /temperature/dimm7_temp
102 - /temperature/dimm8_temp
103 - /temperature/dimm9_temp
104 - /temperature/dimm10_temp
105 - /temperature/dimm11_temp
106 - /temperature/dimm12_temp
107 - /temperature/dimm13_temp
108 - /temperature/dimm14_temp
109 - /temperature/dimm15_temp
Matthew Barth1f8bf1d2017-09-14 13:26:06 -0500110 - name: zone0_gpu_cores
111 description: Group of gpu core temperature sensors for zone 0
112 type: /xyz/openbmc_project/sensors
113 members:
114 - /temperature/gpu0_core_temp
115 - /temperature/gpu1_core_temp
116 - /temperature/gpu2_core_temp
117 - /temperature/gpu3_core_temp
118 - /temperature/gpu4_core_temp
119 - /temperature/gpu5_core_temp
Matthew Barthfe1823a2017-09-14 13:39:49 -0500120 - name: zone0_gpu_memory
121 description: Group of gpu memory temperature sensors for zone 0
122 type: /xyz/openbmc_project/sensors
123 members:
124 - /temperature/gpu0_mem_temp
125 - /temperature/gpu1_mem_temp
126 - /temperature/gpu2_mem_temp
127 - /temperature/gpu3_mem_temp
128 - /temperature/gpu4_mem_temp
129 - /temperature/gpu5_mem_temp
Matthew Barth336e2622017-10-13 14:45:27 -0500130 - name: zone0_pcie
131 description: Group of pcie temperature sensors for zone 0
132 type: /xyz/openbmc_project/sensors
133 members:
134 - /temperature/pcie
Matthew Barth184a1512017-08-16 10:42:54 -0500135
136preconditions:
137 - name: property_states_match
138 description: >
139 All defined properties must match the values given to
140 enable a set speed event otherwise fan speeds are set to full
141 parameters:
142 - groups
Matthew Barthbde68592017-05-24 17:06:13 -0500143
144actions:
Matthew Barth1181f282017-09-15 14:53:01 -0500145 - name: set_request_speed_base_with_max
146 description: >
147 Set the base request speed of a zone to the max value of a group for
148 calculating a new target speed
Matthew Barthbde68592017-05-24 17:06:13 -0500149 - name: count_state_before_speed
150 description: Set the speed when a number of properties at a state
151 parameters:
152 - count
153 - property
154 - speed
Matthew Barth5cde5a62017-07-10 15:35:29 -0500155 - name: set_floor_from_average_sensor_value
156 description: Set floor speed from first entry with average less than key
157 parameters:
158 - map
159 - name: set_ceiling_from_average_sensor_value
160 description: Set ceiling speed based on key transition values with average
161 parameters:
162 - map
Matthew Barth184a1512017-08-16 10:42:54 -0500163 - name: set_net_increase_speed
164 description: >
165 Set the speed increase delta based on a factor applied to
166 the delta increase size times the given value and property's
167 value difference
168 parameters:
169 - property
170 - factor
171 - delta
172 - name: set_net_decrease_speed
173 description: >
174 Set the speed decrease delta based on a factor applied to
175 the delta decrease size times the given value and property's
176 value difference
177 parameters:
178 - property
179 - factor
180 - delta
Matthew Barthbde68592017-05-24 17:06:13 -0500181
182events:
Matthew Barth2ca6b7b2017-06-30 11:07:51 -0500183 - name: missing_before_high_speed_air
Matthew Barthbde68592017-05-24 17:06:13 -0500184 zone_conditions:
185 - name: air_cooled_chassis
186 zones:
187 - 0
Matthew Barth2ca6b7b2017-06-30 11:07:51 -0500188 group: air_cooled_zone0_fans
Matthew Barthbde68592017-05-24 17:06:13 -0500189 interface: xyz.openbmc_project.Inventory.Item
190 property:
191 name: Present
192 type: bool
Matthew Barth2e104962017-09-14 12:32:49 -0500193 actions:
194 - name: count_state_before_speed
195 count: 1
196 property: false
197 speed:
198 value: 10500
199 type: uint64_t
Matthew Barth2ca6b7b2017-06-30 11:07:51 -0500200 - name: fails_before_high_speed_air
Matthew Barthbde68592017-05-24 17:06:13 -0500201 zone_conditions:
202 - name: air_cooled_chassis
203 zones:
204 - 0
Matthew Barth2ca6b7b2017-06-30 11:07:51 -0500205 group: air_cooled_zone0_fans
Matthew Barthbde68592017-05-24 17:06:13 -0500206 interface: xyz.openbmc_project.State.Decorator.OperationalStatus
207 property:
208 name: Functional
209 type: bool
Matthew Barth2e104962017-09-14 12:32:49 -0500210 actions:
211 - name: count_state_before_speed
212 count: 1
213 property: false
214 speed:
215 value: 10500
216 type: uint64_t
Matthew Barth2ca6b7b2017-06-30 11:07:51 -0500217 - name: missing_before_high_speed_water_and_air
218 zone_conditions:
219 - name: water_and_air_cooled_chassis
220 zones:
221 - 0
222 group: water_and_air_cooled_zone0_fans
223 interface: xyz.openbmc_project.Inventory.Item
224 property:
225 name: Present
226 type: bool
Matthew Barth2e104962017-09-14 12:32:49 -0500227 actions:
228 - name: count_state_before_speed
229 count: 1
230 property: false
231 speed:
232 value: 10500
233 type: uint64_t
Matthew Barth2ca6b7b2017-06-30 11:07:51 -0500234 - name: fails_before_high_speed_water_and_air
235 zone_conditions:
236 - name: water_and_air_cooled_chassis
237 zones:
238 - 0
239 group: water_and_air_cooled_zone0_fans
240 interface: xyz.openbmc_project.State.Decorator.OperationalStatus
241 property:
242 name: Functional
243 type: bool
Matthew Barth2e104962017-09-14 12:32:49 -0500244 actions:
245 - name: count_state_before_speed
246 count: 1
247 property: false
248 speed:
249 value: 10500
250 type: uint64_t
251 - name: set_air_cooled_speed_boundaries_based_on_ambient
Matthew Barth5cde5a62017-07-10 15:35:29 -0500252 zone_conditions:
253 - name: air_cooled_chassis
254 zones:
255 - 0
256 group: zone0_ambient
257 interface: xyz.openbmc_project.Sensor.Value
258 property:
259 name: Value
260 type: int64_t
Matthew Barth2e104962017-09-14 12:32:49 -0500261 actions:
262 - name: set_floor_from_average_sensor_value
263 map:
264 value:
Matthew Barthf826d772017-12-11 14:47:54 -0600265 - 27000: 3500
266 - 32000: 4600
267 - 37000: 5200
268 - 40000: 5800
Matthew Barth2e104962017-09-14 12:32:49 -0500269 type: std::map<int64_t, uint64_t>
270 - name: set_ceiling_from_average_sensor_value
271 map:
272 value:
Matthew Barth0359dc92017-10-16 15:57:20 -0500273 - 25000: 7200
Matthew Barth2e104962017-09-14 12:32:49 -0500274 - 27000: 10500
275 type: std::map<int64_t, uint64_t>
276 - name: set_water_cooled_speed_boundaries_based_on_ambient
Matthew Barth5cde5a62017-07-10 15:35:29 -0500277 zone_conditions:
278 - name: water_and_air_cooled_chassis
279 zones:
280 - 0
281 group: zone0_ambient
282 interface: xyz.openbmc_project.Sensor.Value
283 property:
284 name: Value
285 type: int64_t
Matthew Barth2e104962017-09-14 12:32:49 -0500286 actions:
287 - name: set_floor_from_average_sensor_value
288 map:
289 value:
Matthew Barth0692acb2017-11-02 13:03:11 -0500290 - 27000: 3000
291 - 32000: 4300
292 - 37000: 5000
293 - 40000: 5800
Matthew Barth2e104962017-09-14 12:32:49 -0500294 type: std::map<int64_t, uint64_t>
295 - name: set_ceiling_from_average_sensor_value
296 map:
297 value:
Matthew Barth0359dc92017-10-16 15:57:20 -0500298 - 25000: 7200
Matthew Barth2e104962017-09-14 12:32:49 -0500299 - 27000: 10500
300 type: std::map<int64_t, uint64_t>
301 - name: speed_changes_based_on_regulator_temps
Matthew Barth7a512782017-08-16 12:43:07 -0500302 zone_conditions:
Matthew Barth173cc482017-11-08 11:02:33 -0600303 - name: air_cooled_chassis
304 zones:
305 - 0
Matthew Barth7a512782017-08-16 12:43:07 -0500306 - name: water_and_air_cooled_chassis
307 zones:
308 - 0
309 group: zone0_regulators
310 interface: xyz.openbmc_project.Sensor.Value
311 property:
312 name: Value
313 type: int64_t
Matthew Barth2e104962017-09-14 12:32:49 -0500314 actions:
315 - name: set_net_increase_speed
316 property: 85000
317 factor:
318 value: 1000
319 type: int64_t
320 delta:
321 value: 400
322 type: uint64_t
323 - name: set_net_decrease_speed
324 property: 82000
325 factor:
326 value: 1000
327 type: int64_t
328 delta:
Matthew Barth23bb1572017-09-14 13:09:39 -0500329 value: 40
Matthew Barth2e104962017-09-14 12:32:49 -0500330 type: uint64_t
Matthew Barth7a512782017-08-16 12:43:07 -0500331 timer:
Matthew Barth23bb1572017-09-14 13:09:39 -0500332 interval: 5
Matthew Barth336e2622017-10-13 14:45:27 -0500333 - name: speed_changes_based_on_pcie_temps
334 zone_conditions:
Matthew Barth173cc482017-11-08 11:02:33 -0600335 - name: air_cooled_chassis
336 zones:
337 - 0
Matthew Barth336e2622017-10-13 14:45:27 -0500338 - name: water_and_air_cooled_chassis
339 zones:
340 - 0
341 group: zone0_pcie
342 interface: xyz.openbmc_project.Sensor.Value
343 property:
344 name: Value
345 type: int64_t
346 actions:
347 - name: set_net_increase_speed
348 property: 55000
349 factor:
350 value: 1000
351 type: int64_t
352 delta:
353 value: 400
354 type: uint64_t
355 - name: set_net_decrease_speed
356 property: 52000
357 factor:
358 value: 1000
359 type: int64_t
360 delta:
361 value: 40
362 type: uint64_t
363 timer:
364 interval: 5
Matthew Barth2e104962017-09-14 12:32:49 -0500365 - name: occ_active_speed_changes
Matthew Barth362d8232017-08-18 10:39:03 -0500366 precondition:
367 name: property_states_match
368 groups:
369 - name: occ0_object
370 interface: org.open_power.OCC.Status
371 property:
372 name: OccActive
373 type: bool
374 value: true
375 - name: occ1_object
376 interface: org.open_power.OCC.Status
377 property:
378 name: OccActive
379 type: bool
380 value: true
Matthew Barth2e104962017-09-14 12:32:49 -0500381 events:
Matthew Barth173cc482017-11-08 11:02:33 -0600382 - name: speed_changes_based_on_core_temps
383 zone_conditions:
384 - name: air_cooled_chassis
385 zones:
386 - 0
387 group: zone0_cores
388 interface: xyz.openbmc_project.Sensor.Value
389 property:
390 name: Value
391 type: int64_t
392 actions:
393 - name: set_net_increase_speed
394 property: 73000
395 factor:
396 value: 1000
397 type: int64_t
398 delta:
399 value: 400
400 type: uint64_t
401 - name: set_net_decrease_speed
402 property: 70000
403 factor:
404 value: 1000
405 type: int64_t
406 delta:
407 value: 40
408 type: uint64_t
409 timer:
410 interval: 5
Matthew Barth2e104962017-09-14 12:32:49 -0500411 - name: speed_changes_based_on_dimm_temps
412 zone_conditions:
Matthew Barth173cc482017-11-08 11:02:33 -0600413 - name: air_cooled_chassis
414 zones:
415 - 0
Matthew Barth2e104962017-09-14 12:32:49 -0500416 - name: water_and_air_cooled_chassis
417 zones:
418 - 0
419 group: zone0_dimms
420 interface: xyz.openbmc_project.Sensor.Value
Matthew Barth362d8232017-08-18 10:39:03 -0500421 property:
Matthew Barth2e104962017-09-14 12:32:49 -0500422 name: Value
423 type: int64_t
424 actions:
425 - name: set_net_increase_speed
Matthew Barth23bb1572017-09-14 13:09:39 -0500426 property: 64000
Matthew Barth2e104962017-09-14 12:32:49 -0500427 factor:
428 value: 1000
429 type: int64_t
430 delta:
431 value: 200
432 type: uint64_t
433 - name: set_net_decrease_speed
Matthew Barth23bb1572017-09-14 13:09:39 -0500434 property: 61000
Matthew Barth2e104962017-09-14 12:32:49 -0500435 factor:
436 value: 1000
437 type: int64_t
438 delta:
Matthew Barth23bb1572017-09-14 13:09:39 -0500439 value: 40
Matthew Barth2e104962017-09-14 12:32:49 -0500440 type: uint64_t
441 timer:
Matthew Barth23bb1572017-09-14 13:09:39 -0500442 interval: 5
Matthew Barth173cc482017-11-08 11:02:33 -0600443 - name: speed_changes_based_on_gpu_core_temps
444 zone_conditions:
445 - name: air_cooled_chassis
446 zones:
447 - 0
448 group: zone0_gpu_cores
449 interface: xyz.openbmc_project.Sensor.Value
450 property:
451 name: Value
452 type: int64_t
453 actions:
454 - name: set_net_increase_speed
455 property: 78000
456 factor:
457 value: 1000
458 type: int64_t
459 delta:
460 value: 600
461 type: uint64_t
462 - name: set_net_decrease_speed
463 property: 75000
464 factor:
465 value: 1000
466 type: int64_t
467 delta:
468 value: 40
469 type: uint64_t
470 timer:
471 interval: 5
472 - name: speed_changes_based_on_gpu_memory_temps
473 zone_conditions:
474 - name: air_cooled_chassis
475 zones:
476 - 0
477 group: zone0_gpu_memory
478 interface: xyz.openbmc_project.Sensor.Value
479 property:
480 name: Value
481 type: int64_t
482 actions:
483 - name: set_net_increase_speed
484 property: 80000
485 factor:
486 value: 1000
487 type: int64_t
488 delta:
489 value: 600
490 type: uint64_t
491 - name: set_net_decrease_speed
492 property: 77000
493 factor:
494 value: 1000
495 type: int64_t
496 delta:
497 value: 40
498 type: uint64_t
499 timer:
500 interval: 5