blob: b2c22cfe193fccdd0a20cc6192b778fa2868514f [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
51#
52#preconditions:
53# - name: property_states_match
54# description: >
55# All defined properties must match the values given to
56# enable a set speed event otherwise fan speeds are set to full
57# parameters:
58# - groups
Matthew Barth94b20f72017-05-11 16:35:10 -050059#
60#actions:
61# - name: count_state_before_speed
62# description: Set the speed when a number of properties at a state
63# parameters:
64# - count
65# - property
66# - speed
Matthew Barthbe605c52017-06-29 15:12:08 -050067# - name: set_floor_from_average_sensor_value
68# description: Set floor speed from first entry with average less than key
69# parameters:
70# - map
Matthew Barth94b20f72017-05-11 16:35:10 -050071#
72#events:
73# - name: missing_before_high_speed
74# zone_conditions:
75# - name: air_cooled_chassis
76# zones:
77# - 0
78# group: zone0_fans
79# interface: xyz.openbmc_project.Inventory.Item
80# property:
81# name: Present
82# type: bool
83# action:
84# name: count_state_before_speed
85# count: 1
86# property: false
87# speed:
88# value: 10500
89# type: uint64_t
Matthew Barthbe605c52017-06-29 15:12:08 -050090# - name: update_air_cooled_floor_speed_based_on_ambient
91# zone_conditions:
92# - name: air_cooled_chassis
93# zones:
94# - 0
95# group: zone0_ambient
96# interface: xyz.openbmc_project.Sensor.Value
97# property:
98# name: Value
99# type: int64_t
100# action:
101# name: set_floor_from_average_sensor_value
102# map:
103# value:
Matthew Barth9af190c2017-08-08 14:20:43 -0500104# - 25000: 3500
105# - 30000: 4600
106# - 35000: 5200
107# - 40000: 5800
Matthew Barthbe605c52017-06-29 15:12:08 -0500108# type: std::map<int64_t, uint64_t>
109# - name: update_water_cooled_floor_speed_based_on_ambient
110# zone_conditions:
111# - name: water_and_air_cooled_chassis
112# zones:
113# - 0
114# group: zone0_ambient
115# interface: xyz.openbmc_project.Sensor.Value
116# property:
117# name: Value
118# type: int64_t
119# action:
120# name: set_floor_from_average_sensor_value
121# map:
122# value:
Matthew Barth9af190c2017-08-08 14:20:43 -0500123# - 25000: 2500
124# - 30000: 3600
125# - 35000: 4200
126# - 40000: 4800
127# type: std::map<int64_t, uint64_t>
128# - name: update_ceiling_speed_based_on_ambient
129# zone_conditions:
130# - name: air_cooled_chassis
131# zones:
132# - 0
133# - name: water_and_air_cooled_chassis
134# zones:
135# - 0
136# precondition:
137# name: property_states_match
138# groups:
139# - name: occ0_object
140# interface: org.open_power.OCC.Status
141# property:
142# name: OccActive
143# type: bool
144# value: true
145# group: zone0_ambient
146# interface: xyz.openbmc_project.Sensor.Value
147# property:
148# name: Value
149# type: int64_t
150# action:
151# name: set_ceiling_from_average_sensor_value
152# map:
153# value:
154# - 25000: 7200
155# - 27000: 10500
Matthew Barthbe605c52017-06-29 15:12:08 -0500156# type: std::map<int64_t, uint64_t>