1#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#matches: 11# - name: [The name associated with a supported match string function] 12# description: [A user description of what this match string represents] 13# parameters: 14# [List of required parameters for the match string function] 15# signal: [Signal function name used with this match string] 16# 17#signals: 18# - name: [The name associated with a supported signal function] 19# description: [A user description of what this signal does] 20# parameters: 21# [List of required parameters for the signal function] 22# 23#preconditions: 24# - name: [Name associated with a supported precondition] 25# description: [A user description of the precondition's use] 26# parameters: 27# [List of required parameters for the precondition function] 28# 29#actions: 30# - name: [The name associated with a supported action function] 31# description: [A user description of what this action does] 32# parameters: 33# [Ordered list of required parameters for the associated function] 34# 35#events: 36# - name: [A unique name for this event] 37# zone_conditions: 38# - name: [The name of the zone condition] 39# zones: 40# - [Zone number to include this set speed event with] 41# group: [A group name from the list of groups] 42# interface: [The Dbus interface on the group members' object path] 43# property: [The property name and type on the interface to be used] 44# action: 45# name: [Name of an action from the list of actions] 46# [List each required action parameter with a defined type and value 47# for this event. The 'property' parameter utilizes the same type 48# defined under the 'property' attribute.] 49 50#Example: 51#groups: 52# - name: zone0_fans 53# description: Group of fan inventory objects for zone 0 54# type: /xyz/openbmc_project/inventory 55# members: 56# - /system/chassis/motherboard/fan0 57# - /system/chassis/motherboard/fan1 58# - /system/chassis/motherboard/fan2 59# - /system/chassis/motherboard/fan3 60# - name: zone0_ambient 61# description: Group of ambient temperature sensors for zone 0 62# type: /xyz/openbmc_project/sensors 63# members: 64# - /temperature/ambient 65# - name: occ0_object 66# description: Dbus object containing OCC0 properties 67# type: /org/open_power/control 68# members: 69# - /occ0 70# - name: zone0_regulators 71# description: Group of regulator temperature sensors for zone 0 72# type: /xyz/openbmc_project/sensors 73# members: 74# - /temperature/p0_vdd_temp 75# - /temperature/p1_vdd_temp 76# - name: zone0_dimms 77# description: Group of dimm temperature sensors for zone 0 78# type: /xyz/openbmc_project/sensors 79# members: 80# - /temperature/dimm0_temp 81# - /temperature/dimm1_temp 82# - /temperature/dimm2_temp 83# - /temperature/dimm3_temp 84# - /temperature/dimm4_temp 85# 86#signals: 87# - name: propertiesChanged 88# description: > 89# A property changed signal 90# parameters: 91# - object 92# - interface 93# handler: propertySignal 94# - name: interfacesAdded 95# description: > 96# An interfaces added signal 97# parameters: 98# - object 99# handler: objectSignal 100# 101#handlers: 102# - name: propertySignal 103# description: > 104# Handle property signals 105# parameters: 106# - type 107# - object 108# - interface 109# - property 110# - name: objectSignal 111# description: > 112# Handle object signals 113# parameters: 114# - type 115# - object 116# - interface 117# - property 118# 119#preconditions: 120# - name: property_states_match 121# description: > 122# All defined properties must match the values given to 123# enable a set speed event otherwise fan speeds are set to full 124# parameters: 125# - groups 126# 127#actions: 128# - name: count_state_before_speed 129# description: Set the speed when a number of properties at a state 130# parameters: 131# - count 132# - property 133# - speed 134# - name: set_floor_from_average_sensor_value 135# description: Set floor speed from first entry with average less than key 136# parameters: 137# - map 138# - name: set_ceiling_from_average_sensor_value 139# description: Set ceiling speed based on key transition values with average 140# parameters: 141# - map 142# - name: set_net_increase_speed 143# description: > 144# Set the speed increase delta based on the delta increase 145# size times the given value and property's value difference 146# parameters: 147# - property 148# - factor 149# - delta 150# - name: set_net_decrease_speed 151# description: > 152# Set the speed decrease delta based on the delta decrease 153# size times the given value and property's value difference 154# parameters: 155# - property 156# - factor 157# - delta 158# 159#events: 160# - name: missing_before_high_speed 161# zone_conditions: 162# - name: air_cooled_chassis 163# zones: 164# - 0 165# group: zone0_fans 166# interface: xyz.openbmc_project.Inventory.Item 167# property: 168# name: Present 169# type: bool 170# signals: 171# - name: interfacesAdded 172# - name: propertiesChanged 173# actions: 174# - name: count_state_before_speed 175# count: 1 176# property: false 177# speed: 178# value: 10500 179# type: uint64_t 180# - name: set_air_cooled_speed_boundaries_based_on_ambient 181# zone_conditions: 182# - name: air_cooled_chassis 183# zones: 184# - 0 185# group: zone0_ambient 186# interface: xyz.openbmc_project.Sensor.Value 187# property: 188# name: Value 189# type: int64_t 190# signals: 191# - name: propertiesChanged 192# actions: 193# - name: set_floor_from_average_sensor_value 194# map: 195# value: 196# - 27000: 3500 197# - 32000: 4600 198# - 37000: 5200 199# - 40000: 5800 200# type: std::map<int64_t, uint64_t> 201# - name: set_ceiling_from_average_sensor_value 202# map: 203# value: 204# - 25000: 7200 205# - 27000: 10500 206# type: std::map<int64_t, uint64_t> 207# - name: set_water_cooled_speed_boundaries_based_on_ambient 208# zone_conditions: 209# - name: water_and_air_cooled_chassis 210# zones: 211# - 0 212# group: zone0_ambient 213# interface: xyz.openbmc_project.Sensor.Value 214# property: 215# name: Value 216# type: int64_t 217# signals: 218# - name: propertiesChanged 219# actions: 220# - name: set_floor_from_average_sensor_value 221# map: 222# value: 223# - 27000: 3000 224# - 32000: 4300 225# - 37000: 5000 226# - 40000: 5800 227# type: std::map<int64_t, uint64_t> 228# - name: set_ceiling_from_average_sensor_value 229# map: 230# value: 231# - 25000: 7200 232# - 27000: 10500 233# type: std::map<int64_t, uint64_t> 234# - name: speed_changes_based_on_regulator_temps 235# zone_conditions: 236# - name: air_cooled_chassis 237# zones: 238# - 0 239# - name: water_and_air_cooled_chassis 240# zones: 241# - 0 242# group: zone0_regulators 243# interface: xyz.openbmc_project.Sensor.Value 244# property: 245# name: Value 246# type: int64_t 247# signals: 248# - name: propertiesChanged 249# actions: 250# - name: set_net_increase_speed 251# property: 85000 252# factor: 253# value: 1000 254# type: int64_t 255# delta: 256# value: 400 257# type: uint64_t 258# - name: set_net_decrease_speed 259# property: 82000 260# factor: 261# value: 1000 262# type: int64_t 263# delta: 264# value: 40 265# type: uint64_t 266# timer: 267# interval: 5 268# - name: occ_active_speed_changes 269# precondition: 270# name: property_states_match 271# groups: 272# - name: occ0_object 273# interface: org.open_power.OCC.Status 274# property: 275# name: OccActive 276# type: bool 277# value: true 278# - name: occ1_object 279# interface: org.open_power.OCC.Status 280# property: 281# name: OccActive 282# type: bool 283# value: true 284# signals: 285# - name: interfacesAdded 286# - name: propertiesChanged 287# events: 288# - name: speed_changes_based_on_dimm_temps 289# zone_conditions: 290# - name: air_cooled_chassis 291# zones: 292# - 0 293# - name: water_and_air_cooled_chassis 294# zones: 295# - 0 296# group: zone0_dimms 297# interface: xyz.openbmc_project.Sensor.Value 298# property: 299# name: Value 300# type: int64_t 301# signals: 302# - name: interfacesAdded 303# - name: propertiesChanged 304# actions: 305# - name: set_net_increase_speed 306# property: 64000 307# factor: 308# value: 1000 309# type: int64_t 310# delta: 311# value: 200 312# type: uint64_t 313# - name: set_net_decrease_speed 314# property: 61000 315# factor: 316# value: 1000 317# type: int64_t 318# delta: 319# value: 40 320# type: uint64_t 321# timer: 322# interval: 5 323