blob: 4819d12dde90b6116168915314474eab06f97c86 [file] [log] [blame]
Matt Spinler14321842017-04-28 15:27:43 -05001#Example fan monitor definitions for phosphor-fan-monitor
2
3#List the fans that need to be monitored, along with some
4#properties that define how much slack is allowed in the actual
5#tach value as compared to the target tach value.
6
Matt Spinler956a0a52017-09-28 12:44:06 -05007#fans:
8# - inventory:
Matt Spinler14321842017-04-28 15:27:43 -05009# [The system inventory location for the fan]
10# allowed_out_of_range_time:
11# [Time (in secs) actual speed can be outside of deviation of
12# target speed]
13# deviation:
14# [Percentage that actual speed must be within target speed]
15# num_sensors_nonfunc_for_fan_nonfunc:
16# [How many sensors on the fan must be faulted before fan
17# will be considered faulted]
18# sensors: [array of speed sensors for the fan]
19# - name [The name of the fan sensor]
20# has_target [true|false If this sensor has a Target property for
21# setting a fan speed (otherwise just for reads)]
Lei YU80f271b2018-01-31 15:24:46 +080022# target_interface [The fan target interface used by the sensor.
23# Default is "xyz.openbmc_project.Control.FanSpeed"]
Lei YU8e5d1972018-01-26 17:14:00 +080024# factor [The factor to multiply with target to calculate the expected
25# fan speed. Default is 1 for fan speed target;
26# Customized value for pwm target]
27# offset [The offset to add to calculate the expected fan speed.
28# Default is 0 for fan speed target;
29# Customized value for pwm target]
Matt Spinler956a0a52017-09-28 12:44:06 -050030#
31#sensor_trust_groups:
32# - class: [Group class name
33# Available classes:
34# * NonzeroSpeed - Only trust if at least one sensor in the group
35# has a nonzero speed.]
Matthew Barthc63ef392018-02-16 13:06:36 -060036# group:
Matt Spinler956a0a52017-09-28 12:44:06 -050037# - name [The name of the fan sensor in this group]
Matthew Barthc63ef392018-02-16 13:06:36 -060038# in_trust: [true|false] (optional)
39# [Include in trust determination or not. Default = true]
Matt Spinler14321842017-04-28 15:27:43 -050040
41#The code uses these parameters as follows:
42# After a speed reading of a sensor is outside of the allowed deviation of
43# the target speed for the allowed out of range time, if at least
44# num_sensors_nonfunc_for_fan_nonfunc sensors meet this condition,
45# the fan will be set to nonfunctional in the inventory.
Matt Spinler956a0a52017-09-28 12:44:06 -050046#
47# Sensor trust groups are used to specify that the speed values for the
48# sensors in a group cannot be trusted based on some condition, where
49# the condition is based on the class used to implement the group. All
Matthew Barthc63ef392018-02-16 13:06:36 -060050# sensors in the group go in and out of trust based on those defined
51# to be part of determining the trust. This section is optional.
Matt Spinler14321842017-04-28 15:27:43 -050052
53#Example entries for 1 fan system:
Matt Spinler956a0a52017-09-28 12:44:06 -050054#fans:
Matt Spinler14321842017-04-28 15:27:43 -050055# - inventory: /system/chassis/motherboard/fan0
56# allowed_out_of_range_time: 15
57# deviation: 15
58# num_sensors_nonfunc_for_fan_nonfunc: 1
59# sensors:
60# - name: fan0
61# has_target: true
Matt Spinler956a0a52017-09-28 12:44:06 -050062#sensor_trust_groups:
63# - class: NonzeroSpeed
Matthew Barthc63ef392018-02-16 13:06:36 -060064# group:
Matt Spinler956a0a52017-09-28 12:44:06 -050065# - name: fan0_0
Matthew Barthc63ef392018-02-16 13:06:36 -060066# in_trust: false
67# - name: fan0_1