blob: 2adf058282baed2fa2c890ebbbbd0ca65e985d78 [file] [log] [blame]
Matthew Barth94b20f72017-05-11 16:35:10 -05001#Example set speed events for phosphor-fan-control
2
3#groups:
4# - name: [A unique name for this group]
5# description: [A user description of what makes up the group]
6# type: [The '/xyz/openbmc_project' path extension]
7# members:
8# [List of object paths under the path extension]
9#
10#actions:
11# - name: [The name associated with a supported action function]
12# description: [A user description of what this action does]
13# parameters:
14# [Ordered list of required parameters for the associated function]
15#
16#events:
17# - name: [A unique name for this event]
18# zone_conditions:
19# - name: [The name of the zone condition]
20# zones:
21# - [Zone number to include this set speed event with]
22# group: [A group name from the list of groups]
23# interface: [The Dbus interface on the group members' object path]
24# property: [The property name and type on the interface to be used]
25# action:
26# name: [Name of an action from the list of actions]
27# [List each required action parameter with a defined type and value
28# for this event. The 'property' parameter utilizes the same type
29# defined under the 'property' attribute.]
30
31#Example:
32#groups:
33# - name: zone0_fans
34# description: Group of fan inventory objects for zone 0
Matthew Barth9af190c2017-08-08 14:20:43 -050035# type: /xyz/openbmc_project/inventory
Matthew Barth94b20f72017-05-11 16:35:10 -050036# members:
37# - /system/chassis/motherboard/fan0
38# - /system/chassis/motherboard/fan1
39# - /system/chassis/motherboard/fan2
40# - /system/chassis/motherboard/fan3
Matthew Barthbe605c52017-06-29 15:12:08 -050041# - name: zone0_ambient
42# description: Group of ambient temperature sensors for zone 0
Matthew Barth9af190c2017-08-08 14:20:43 -050043# type: /xyz/openbmc_project/sensors
Matthew Barthbe605c52017-06-29 15:12:08 -050044# members:
45# - /temperature/ambient
Matthew Barth9af190c2017-08-08 14:20:43 -050046# - name: occ0_object
47# description: Dbus object containing OCC0 properties
48# type: /org/open_power/control
49# members:
50# - /occ0
Matthew Barthdd5cad62017-09-14 09:40:35 -050051# - name: zone0_regulators
52# description: Group of regulator temperature sensors for zone 0
53# type: /xyz/openbmc_project/sensors
54# members:
55# - /temperature/p0_vdd_temp
56# - /temperature/p1_vdd_temp
57# - name: zone0_dimms
58# description: Group of dimm temperature sensors for zone 0
59# type: /xyz/openbmc_project/sensors
60# members:
61# - /temperature/dimm0_temp
62# - /temperature/dimm1_temp
63# - /temperature/dimm2_temp
64# - /temperature/dimm3_temp
65# - /temperature/dimm4_temp
Matthew Barth9af190c2017-08-08 14:20:43 -050066#
67#preconditions:
68# - name: property_states_match
69# description: >
70# All defined properties must match the values given to
71# enable a set speed event otherwise fan speeds are set to full
72# parameters:
73# - groups
Matthew Barth94b20f72017-05-11 16:35:10 -050074#
75#actions:
76# - name: count_state_before_speed
77# description: Set the speed when a number of properties at a state
78# parameters:
79# - count
80# - property
81# - speed
Matthew Barthbe605c52017-06-29 15:12:08 -050082# - name: set_floor_from_average_sensor_value
83# description: Set floor speed from first entry with average less than key
84# parameters:
85# - map
Matthew Barthdd5cad62017-09-14 09:40:35 -050086# - name: set_ceiling_from_average_sensor_value
87# description: Set ceiling speed based on key transition values with average
88# parameters:
89# - map
90# - name: set_net_increase_speed
91# description: >
92# Set the speed increase delta based on the delta increase
93# size times the given value and property's value difference
94# parameters:
95# - property
96# - factor
97# - delta
98# - name: set_net_decrease_speed
99# description: >
100# Set the speed decrease delta based on the delta decrease
101# size times the given value and property's value difference
102# parameters:
103# - property
104# - factor
105# - delta
Matthew Barth94b20f72017-05-11 16:35:10 -0500106#
107#events:
108# - name: missing_before_high_speed
109# zone_conditions:
110# - name: air_cooled_chassis
111# zones:
112# - 0
113# group: zone0_fans
114# interface: xyz.openbmc_project.Inventory.Item
115# property:
116# name: Present
117# type: bool
Matthew Barthdd5cad62017-09-14 09:40:35 -0500118# actions:
119# - name: count_state_before_speed
120# count: 1
121# property: false
122# speed:
123# value: 10500
124# type: uint64_t
125# - name: set_air_cooled_speed_boundaries_based_on_ambient
Matthew Barthbe605c52017-06-29 15:12:08 -0500126# zone_conditions:
127# - name: air_cooled_chassis
128# zones:
129# - 0
130# group: zone0_ambient
131# interface: xyz.openbmc_project.Sensor.Value
132# property:
133# name: Value
134# type: int64_t
Matthew Barthdd5cad62017-09-14 09:40:35 -0500135# actions:
136# - name: set_floor_from_average_sensor_value
137# map:
138# value:
139# - 27000: 3500
140# - 32000: 4600
141# - 37000: 5200
142# - 40000: 5800
143# type: std::map<int64_t, uint64_t>
144# - name: set_ceiling_from_average_sensor_value
145# map:
146# value:
147# - 25000: 7200
148# - 27000: 10500
149# type: std::map<int64_t, uint64_t>
150# - name: set_water_cooled_speed_boundaries_based_on_ambient
Matthew Barthbe605c52017-06-29 15:12:08 -0500151# zone_conditions:
152# - name: water_and_air_cooled_chassis
153# zones:
154# - 0
155# group: zone0_ambient
156# interface: xyz.openbmc_project.Sensor.Value
157# property:
158# name: Value
159# type: int64_t
Matthew Barthdd5cad62017-09-14 09:40:35 -0500160# actions:
161# - name: set_floor_from_average_sensor_value
162# map:
163# value:
164# - 27000: 3000
165# - 32000: 4300
166# - 37000: 5000
167# - 40000: 5800
168# type: std::map<int64_t, uint64_t>
169# - name: set_ceiling_from_average_sensor_value
170# map:
171# value:
172# - 25000: 7200
173# - 27000: 10500
174# type: std::map<int64_t, uint64_t>
175# - name: speed_changes_based_on_regulator_temps
Matthew Barth9af190c2017-08-08 14:20:43 -0500176# zone_conditions:
177# - name: air_cooled_chassis
178# zones:
179# - 0
180# - name: water_and_air_cooled_chassis
181# zones:
182# - 0
Matthew Barthdd5cad62017-09-14 09:40:35 -0500183# group: zone0_regulators
184# interface: xyz.openbmc_project.Sensor.Value
185# property:
186# name: Value
187# type: int64_t
188# actions:
189# - name: set_net_increase_speed
190# property: 85000
191# factor:
192# value: 1000
193# type: int64_t
194# delta:
195# value: 400
196# type: uint64_t
197# - name: set_net_decrease_speed
198# property: 82000
199# factor:
200# value: 1000
201# type: int64_t
202# delta:
203# value: 40
204# type: uint64_t
205# timer:
206# interval: 5
207# - name: occ_active_speed_changes
Matthew Barth9af190c2017-08-08 14:20:43 -0500208# precondition:
209# name: property_states_match
210# groups:
211# - name: occ0_object
212# interface: org.open_power.OCC.Status
213# property:
214# name: OccActive
215# type: bool
216# value: true
Matthew Barthdd5cad62017-09-14 09:40:35 -0500217# - name: occ1_object
218# interface: org.open_power.OCC.Status
219# property:
220# name: OccActive
221# type: bool
222# value: true
223# events:
224# - name: speed_changes_based_on_dimm_temps
225# zone_conditions:
226# - name: air_cooled_chassis
227# zones:
228# - 0
229# - name: water_and_air_cooled_chassis
230# zones:
231# - 0
232# group: zone0_dimms
233# interface: xyz.openbmc_project.Sensor.Value
234# property:
235# name: Value
236# type: int64_t
237# actions:
238# - name: set_net_increase_speed
239# property: 64000
240# factor:
241# value: 1000
242# type: int64_t
243# delta:
244# value: 200
245# type: uint64_t
246# - name: set_net_decrease_speed
247# property: 61000
248# factor:
249# value: 1000
250# type: int64_t
251# delta:
252# value: 40
253# type: uint64_t
254# timer:
255# interval: 5