summaryrefslogtreecommitdiff
path: root/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans
diff options
context:
space:
mode:
Diffstat (limited to 'meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans')
-rw-r--r--meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan%.bbappend33
-rw-r--r--meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan%/fan-watchdog-conflicts.conf2
-rw-r--r--meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan%/fan-watchdog-monitor.conf5
-rw-r--r--meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan%/obmc/phosphor-fan/phosphor-cooling-type-0.conf6
-rw-r--r--meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan%/phosphor-cooling-type@.service15
-rw-r--r--meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-control-events-config-native.bbappend1
-rw-r--r--meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-control-events-config-native/events.yaml766
-rw-r--r--meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-control-fan-config%.bbappend1
-rwxr-xr-xmeta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-control-fan-config%/fans.yaml21
-rw-r--r--meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-control-zone-conditions-config-native.bbappend1
-rw-r--r--meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-control-zone-conditions-config-native/zone_conditions.yaml18
-rw-r--r--meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-control-zone-config-native.bbappend2
-rw-r--r--meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-control-zone-config-native/zones.yaml32
-rw-r--r--meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-monitor-config-native.bbappend1
-rw-r--r--meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-monitor-config-native/monitor.yaml73
-rw-r--r--meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-presence-config-native%.bbappend1
-rw-r--r--meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-presence-config-native%/config.yaml55
-rw-r--r--meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-policy-native.bb16
-rw-r--r--meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-policy/air-cooled.yaml328
-rw-r--r--meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-policy/fan-errors.yaml676
-rw-r--r--meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-policy/water-cooled.yaml322
-rw-r--r--meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-watchdog.bb22
-rw-r--r--meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-watchdog/obmc/witherspoon-fan-watchdog/fan-watchdog.conf3
-rw-r--r--meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-watchdog/obmc/witherspoon-fan-watchdog/reset-fan-watchdog.conf4
-rw-r--r--meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-watchdog/witherspoon-fan-watchdog-monitor@.service10
-rw-r--r--meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-watchdog/witherspoon-fan-watchdog.service13
-rw-r--r--meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-watchdog/witherspoon-reset-fan-watchdog.service12
-rw-r--r--meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-thermal-policy-native.bb12
-rw-r--r--meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-thermal-policy/thermal-policy.yaml187
29 files changed, 0 insertions, 2638 deletions
diff --git a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan%.bbappend b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan%.bbappend
deleted file mode 100644
index 8cc310e7c..000000000
--- a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan%.bbappend
+++ /dev/null
@@ -1,33 +0,0 @@
-FILESEXTRAPATHS_append := "${THISDIR}/${PN}:"
-
-# Package configuration
-FAN_PACKAGES += " \
- phosphor-cooling-type \
-"
-
-PACKAGECONFIG += "cooling-type"
-
-RDEPENDS_phosphor-cooling-type += "libevdev"
-
-TMPL_COOLING = "phosphor-cooling-type@.service"
-INSTFMT_COOLING = "phosphor-cooling-type@{0}.service"
-COOLING_TGT = "${SYSTEMD_DEFAULT_TARGET}"
-FMT_COOLING = "../${TMPL_COOLING}:${COOLING_TGT}.requires/${INSTFMT_COOLING}"
-
-FILES_phosphor-cooling-type = "${sbindir}/phosphor-cooling-type"
-SYSTEMD_SERVICE_phosphor-cooling-type += "${TMPL_COOLING}"
-SYSTEMD_LINK_phosphor-cooling-type += "${@compose_list(d, 'FMT_COOLING', 'OBMC_CHASSIS_INSTANCES')}"
-
-COOLING_ENV_FMT = "obmc/phosphor-fan/phosphor-cooling-type-{0}.conf"
-
-SYSTEMD_ENVIRONMENT_FILE_phosphor-cooling-type += "${@compose_list(d, 'COOLING_ENV_FMT', 'OBMC_CHASSIS_INSTANCES')}"
-
-#These services are protected by the watchdog
-SYSTEMD_OVERRIDE_phosphor-fan-control += "fan-watchdog-monitor.conf:phosphor-fan-control-init@0.service.d/fan-watchdog-monitor.conf"
-SYSTEMD_OVERRIDE_phosphor-fan-control += "fan-watchdog-monitor.conf:phosphor-fan-control@0.service.d/fan-watchdog-monitor.conf"
-SYSTEMD_OVERRIDE_phosphor-fan-monitor += "fan-watchdog-monitor.conf:phosphor-fan-monitor-init@0.service.d/fan-watchdog-monitor.conf"
-SYSTEMD_OVERRIDE_phosphor-fan-monitor += "fan-watchdog-monitor.conf:phosphor-fan-monitor@0.service.d/fan-watchdog-monitor.conf"
-
-#These services need to be stopped when watchdog expires
-SYSTEMD_OVERRIDE_phosphor-fan-control += "fan-watchdog-conflicts.conf:phosphor-fan-control@0.service.d/fan-watchdog-conflicts.conf"
-SYSTEMD_OVERRIDE_phosphor-fan-monitor += "fan-watchdog-conflicts.conf:phosphor-fan-monitor@0.service.d/fan-watchdog-conflicts.conf"
diff --git a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan%/fan-watchdog-conflicts.conf b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan%/fan-watchdog-conflicts.conf
deleted file mode 100644
index 90b1e810e..000000000
--- a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan%/fan-watchdog-conflicts.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-[Unit]
-Conflicts=obmc-fan-watchdog-takeover.target
diff --git a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan%/fan-watchdog-monitor.conf b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan%/fan-watchdog-monitor.conf
deleted file mode 100644
index 023e61a64..000000000
--- a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan%/fan-watchdog-monitor.conf
+++ /dev/null
@@ -1,5 +0,0 @@
-[Unit]
-#These overrides allow the fan watchdog to take over when this service dies
-OnFailure=witherspoon-fan-watchdog-monitor@%n.service
-StartLimitIntervalSec=5
-StartLimitBurst=3
diff --git a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan%/obmc/phosphor-fan/phosphor-cooling-type-0.conf b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan%/obmc/phosphor-fan/phosphor-cooling-type-0.conf
deleted file mode 100644
index e5e8f435e..000000000
--- a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan%/obmc/phosphor-fan/phosphor-cooling-type-0.conf
+++ /dev/null
@@ -1,6 +0,0 @@
-OBJPATH="--path=/system/chassis"
-AIR="--air"
-WATER=""
-DEVICE="--dev=/dev/input/by-path/platform-gpio-keys-event"
-CODE="--event=13"
-
diff --git a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan%/phosphor-cooling-type@.service b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan%/phosphor-cooling-type@.service
deleted file mode 100644
index 9086efb77..000000000
--- a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan%/phosphor-cooling-type@.service
+++ /dev/null
@@ -1,15 +0,0 @@
-[Unit]
-Description=Phosphor Cooling Type
-Wants=mapper-wait@-xyz-openbmc_project-inventory.service
-After=mapper-wait@-xyz-openbmc_project-inventory.service
-ConditionPathExists={envfiledir}/obmc/phosphor-fan/phosphor-cooling-type-%i.conf
-
-[Service]
-Type=oneshot
-RemainAfterExit=yes
-EnvironmentFile={envfiledir}/obmc/phosphor-fan/phosphor-cooling-type-%i.conf
-ExecStart=/usr/bin/env phosphor-cooling-type ${{OBJPATH}} ${{AIR}} ${{WATER}} ${{DEVICE}} ${{CODE}}
-SyslogIdentifier=phosphor-cooling-type
-
-[Install]
-RequiredBy={SYSTEMD_DEFAULT_TARGET}
diff --git a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-control-events-config-native.bbappend b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-control-events-config-native.bbappend
deleted file mode 100644
index 72d991c7e..000000000
--- a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-control-events-config-native.bbappend
+++ /dev/null
@@ -1 +0,0 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
diff --git a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-control-events-config-native/events.yaml b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-control-events-config-native/events.yaml
deleted file mode 100644
index 106202344..000000000
--- a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-control-events-config-native/events.yaml
+++ /dev/null
@@ -1,766 +0,0 @@
-groups:
- - name: air_cooled_zone0_fans
- description: Group of fan inventory objects for air cooled zone 0
- type: /xyz/openbmc_project/inventory
- members:
- - /system/chassis/motherboard/fan0
- - /system/chassis/motherboard/fan1
- - /system/chassis/motherboard/fan2
- - /system/chassis/motherboard/fan3
- - name: water_and_air_cooled_zone0_fans
- description: Group of fan inventory objects for water/air cooled zone 0
- type: /xyz/openbmc_project/inventory
- members:
- - /system/chassis/motherboard/fan0
- - /system/chassis/motherboard/fan2
- - /system/chassis/motherboard/fan3
- - name: zone0_ambient
- description: Group of ambient temperature sensors for zone 0
- type: /xyz/openbmc_project/sensors
- members:
- - /temperature/ambient
- - name: occ0_object
- description: Dbus object containing OCC0 properties
- type: /org/open_power/control
- members:
- - /occ0
- - name: occ1_object
- description: Dbus object containing OCC1 properties
- type: /org/open_power/control
- members:
- - /occ1
- - name: zone0_cores
- description: Group of core temperature sensors for zone 0
- type: /xyz/openbmc_project/sensors
- members:
- - /temperature/p0_core0_temp
- - /temperature/p0_core1_temp
- - /temperature/p0_core2_temp
- - /temperature/p0_core3_temp
- - /temperature/p0_core4_temp
- - /temperature/p0_core5_temp
- - /temperature/p0_core6_temp
- - /temperature/p0_core7_temp
- - /temperature/p0_core8_temp
- - /temperature/p0_core9_temp
- - /temperature/p0_core10_temp
- - /temperature/p0_core11_temp
- - /temperature/p0_core12_temp
- - /temperature/p0_core13_temp
- - /temperature/p0_core14_temp
- - /temperature/p0_core15_temp
- - /temperature/p0_core16_temp
- - /temperature/p0_core17_temp
- - /temperature/p0_core18_temp
- - /temperature/p0_core19_temp
- - /temperature/p0_core20_temp
- - /temperature/p0_core21_temp
- - /temperature/p0_core22_temp
- - /temperature/p0_core23_temp
- - /temperature/p1_core0_temp
- - /temperature/p1_core1_temp
- - /temperature/p1_core2_temp
- - /temperature/p1_core3_temp
- - /temperature/p1_core4_temp
- - /temperature/p1_core5_temp
- - /temperature/p1_core6_temp
- - /temperature/p1_core7_temp
- - /temperature/p1_core8_temp
- - /temperature/p1_core9_temp
- - /temperature/p1_core10_temp
- - /temperature/p1_core11_temp
- - /temperature/p1_core12_temp
- - /temperature/p1_core13_temp
- - /temperature/p1_core14_temp
- - /temperature/p1_core15_temp
- - /temperature/p1_core16_temp
- - /temperature/p1_core17_temp
- - /temperature/p1_core18_temp
- - /temperature/p1_core19_temp
- - /temperature/p1_core20_temp
- - /temperature/p1_core21_temp
- - /temperature/p1_core22_temp
- - /temperature/p1_core23_temp
- - name: zone0_regulators
- description: Group of regulator temperature sensors for zone 0
- type: /xyz/openbmc_project/sensors
- members:
- - /temperature/p0_vdd_temp
- - /temperature/p1_vdd_temp
- - name: zone0_dimms
- description: Group of dimm temperature sensors for zone 0
- type: /xyz/openbmc_project/sensors
- members:
- - /temperature/dimm0_temp
- - /temperature/dimm1_temp
- - /temperature/dimm2_temp
- - /temperature/dimm3_temp
- - /temperature/dimm4_temp
- - /temperature/dimm5_temp
- - /temperature/dimm6_temp
- - /temperature/dimm7_temp
- - /temperature/dimm8_temp
- - /temperature/dimm9_temp
- - /temperature/dimm10_temp
- - /temperature/dimm11_temp
- - /temperature/dimm12_temp
- - /temperature/dimm13_temp
- - /temperature/dimm14_temp
- - /temperature/dimm15_temp
- - name: zone0_gpu_cores
- description: Group of gpu core temperature sensors for zone 0
- type: /xyz/openbmc_project/sensors
- members:
- - /temperature/gpu0_core_temp
- - /temperature/gpu1_core_temp
- - /temperature/gpu2_core_temp
- - /temperature/gpu3_core_temp
- - /temperature/gpu4_core_temp
- - /temperature/gpu5_core_temp
- - name: zone0_gpu_memory
- description: Group of gpu memory temperature sensors for zone 0
- type: /xyz/openbmc_project/sensors
- members:
- - /temperature/gpu0_mem_temp
- - /temperature/gpu1_mem_temp
- - /temperature/gpu2_mem_temp
- - /temperature/gpu3_mem_temp
- - /temperature/gpu4_mem_temp
- - /temperature/gpu5_mem_temp
- - name: zone0_pcie
- description: Group of pcie temperature sensors for zone 0
- type: /xyz/openbmc_project/sensors
- members:
- - /temperature/pcie
-
-matches:
- - name: propertiesChanged
- description: >
- A property changed match
- parameters:
- - object
- - interface
- signal: propertySignal
- - name: interfacesAdded
- description: >
- An interfaces added match
- parameters:
- - object
- signal: objectSignal
- - name: interfacesRemoved
- description: >
- An interfaces removed match
- parameters:
- - object
- signal:
- name: objectSignal
- parameters:
- - object
- - interface
- handler: removeInterface
- - name: nameOwnerChanged
- description: >
- A name owner changed match
- parameters:
- - object
- - interface
- signal: ownerSignal
-
-signals:
- - name: propertySignal
- description: >
- Handle property signals
- parameters:
- - type
- - object
- - interface
- - property
- handler: setProperty
- - name: objectSignal
- description: >
- Handle object signals
- parameters:
- - type
- - object
- - interface
- - property
- handler: setProperty
- - name: ownerSignal
- description: >
- Handle owner signals
- parameters:
- - object
- - interface
- handler: setService
-
-handlers:
- - name: setProperty
- description: >
- Sets a value for the given object/interface/property
- parameters:
- - type
- - object
- - interface
- - property
- - name: setService
- description: >
- Sets the service name(s) for the given group
- parameters:
- - group
- - name: removeInterface
- description: >
- Removes an interface(and all associated properties) on the
- given object from use within actions
- parameters:
- - object
- - interface
-
-preconditions:
- - name: property_states_match
- description: >
- All defined properties must match the values given to
- enable a set speed event otherwise fan speeds are set to full
- parameters:
- - groups
-
-actions:
- - name: call_actions_based_on_timer
- description: >
- Sets up a list of actions to be invoked when the defined timer
- expires (or for each expiration of a repeating timer)
- parameters:
- - timer
- - actions
- - name: default_floor_on_missing_owner
- description: >
- Set the fan floor to the default floor
- - name: set_speed_on_missing_owner
- description: >
- Set fans to the given speed when any service within the group
- no longer exists
- parameters:
- - speed
- - name: set_request_speed_base_with_max
- description: >
- Set the base request speed of a zone to the max value of a group for
- calculating a new target speed
- - name: count_state_before_speed
- description: Set the speed when a number of properties at a state
- parameters:
- - count
- - property
- - speed
- - name: set_floor_from_average_sensor_value
- description: Set floor speed from first entry with average less than key
- parameters:
- - map
- - name: set_ceiling_from_average_sensor_value
- description: Set ceiling speed based on key transition values with average
- parameters:
- - map
- - name: set_net_increase_speed
- description: >
- Set the speed increase delta based on a factor applied to
- the delta increase size times the given value and property's
- value difference
- parameters:
- - property
- - factor
- - delta
- - name: set_net_decrease_speed
- description: >
- Set the speed decrease delta based on a factor applied to
- the delta decrease size times the given value and property's
- value difference
- parameters:
- - property
- - factor
- - delta
-
-events:
- - name: default_fan_floor_on_service_fail
- # No global zone conditions defined == all unless defined on group
- groups:
- - name: zone0_ambient
- interface: xyz.openbmc_project.Sensor.Value
- property:
- name: Value
- type: int64_t
- matches:
- - name: nameOwnerChanged
- actions:
- - name: call_actions_based_on_timer
- timer:
- delay: 5
- type: oneshot
- actions:
- - name: default_floor_on_missing_owner
- - name: high_speed_on_occ0_service_fail
- # No global zone conditions defined == all unless defined on group
- groups:
- - name: occ0_object
- interface: org.open_power.OCC.Status
- property:
- name: OccActive
- type: bool
- matches:
- - name: nameOwnerChanged
- actions:
- - name: call_actions_based_on_timer
- timer:
- delay: 5
- type: oneshot
- actions:
- - name: set_speed_on_missing_owner
- speed:
- value: 10500
- type: uint64_t
- - name: high_speed_on_occ1_service_fail
- # No global zone conditions defined == all unless defined on group
- groups:
- - name: occ1_object
- interface: org.open_power.OCC.Status
- property:
- name: OccActive
- type: bool
- matches:
- - name: nameOwnerChanged
- actions:
- - name: call_actions_based_on_timer
- timer:
- delay: 5
- type: oneshot
- actions:
- - name: set_speed_on_missing_owner
- speed:
- value: 10500
- type: uint64_t
- - name: missing_before_high_speed_air
- groups:
- - name: air_cooled_zone0_fans
- zone_conditions:
- - name: air_cooled_chassis
- zones:
- - 0
- interface: xyz.openbmc_project.Inventory.Item
- property:
- name: Present
- type: bool
- matches:
- - name: propertiesChanged
- actions:
- - name: count_state_before_speed
- count: 1
- property:
- value: false
- type: bool
- speed:
- value: 10500
- type: uint64_t
- - name: fails_before_high_speed_air
- groups:
- - name: air_cooled_zone0_fans
- zone_conditions:
- - name: air_cooled_chassis
- zones:
- - 0
- interface: xyz.openbmc_project.State.Decorator.OperationalStatus
- property:
- name: Functional
- type: bool
- matches:
- - name: interfacesAdded
- - name: propertiesChanged
- actions:
- - name: count_state_before_speed
- count: 1
- property:
- value: false
- type: bool
- speed:
- value: 10500
- type: uint64_t
- - name: missing_before_high_speed_water_and_air
- groups:
- - name: water_and_air_cooled_zone0_fans
- zone_conditions:
- - name: water_and_air_cooled_chassis
- zones:
- - 0
- interface: xyz.openbmc_project.Inventory.Item
- property:
- name: Present
- type: bool
- matches:
- - name: propertiesChanged
- actions:
- - name: count_state_before_speed
- count: 1
- property:
- value: false
- type: bool
- speed:
- value: 10500
- type: uint64_t
- - name: fails_before_high_speed_water_and_air
- groups:
- - name: water_and_air_cooled_zone0_fans
- zone_conditions:
- - name: water_and_air_cooled_chassis
- zones:
- - 0
- interface: xyz.openbmc_project.State.Decorator.OperationalStatus
- property:
- name: Functional
- type: bool
- matches:
- - name: interfacesAdded
- - name: propertiesChanged
- actions:
- - name: count_state_before_speed
- count: 1
- property:
- value: false
- type: bool
- speed:
- value: 10500
- type: uint64_t
- - name: set_air_cooled_speed_boundaries_based_on_ambient
- groups:
- - name: zone0_ambient
- zone_conditions:
- - name: air_cooled_chassis
- zones:
- - 0
- interface: xyz.openbmc_project.Sensor.Value
- property:
- name: Value
- type: int64_t
- matches:
- - name: propertiesChanged
- actions:
- - name: set_floor_from_average_sensor_value
- map:
- value:
- - 27000: 3500
- - 32000: 4600
- - 37000: 5200
- - 40000: 5800
- type: std::map<int64_t, uint64_t>
- - name: set_ceiling_from_average_sensor_value
- map:
- value:
- - 25000: 7200
- - 27000: 10500
- type: std::map<int64_t, uint64_t>
- - name: set_water_cooled_speed_boundaries_based_on_ambient
- groups:
- - name: zone0_ambient
- zone_conditions:
- - name: water_and_air_cooled_chassis
- zones:
- - 0
- interface: xyz.openbmc_project.Sensor.Value
- property:
- name: Value
- type: int64_t
- matches:
- - name: propertiesChanged
- actions:
- - name: set_floor_from_average_sensor_value
- map:
- value:
- - 27000: 3000
- - 32000: 4300
- - 37000: 5000
- - 40000: 5800
- type: std::map<int64_t, uint64_t>
- - name: set_ceiling_from_average_sensor_value
- map:
- value:
- - 25000: 7200
- - 27000: 10500
- type: std::map<int64_t, uint64_t>
- - name: speed_changes_based_on_regulator_temps
- # No global zone conditions defined == all unless defined on group
- groups:
- - name: zone0_regulators
- interface: xyz.openbmc_project.Sensor.Value
- property:
- name: Value
- type: int64_t
- matches:
- - name: interfacesAdded
- - name: propertiesChanged
- actions:
- - name: set_net_increase_speed
- property:
- value: 85000
- type: int64_t
- factor:
- value: 1000
- type: int64_t
- delta:
- value: 400
- type: uint64_t
- - name: set_net_decrease_speed
- property:
- value: 82000
- type: int64_t
- factor:
- value: 1000
- type: int64_t
- delta:
- value: 40
- type: uint64_t
- timer:
- interval: 5
- - name: speed_changes_based_on_pcie_temps
- # No global zone conditions defined == all unless defined on group
- groups:
- - name: zone0_pcie
- interface: xyz.openbmc_project.Sensor.Value
- property:
- name: Value
- type: int64_t
- matches:
- - name: interfacesAdded
- - name: propertiesChanged
- actions:
- - name: set_net_increase_speed
- property:
- value: 55000
- type: int64_t
- factor:
- value: 1000
- type: int64_t
- delta:
- value: 400
- type: uint64_t
- - name: set_net_decrease_speed
- property:
- value: 52000
- type: int64_t
- factor:
- value: 1000
- type: int64_t
- delta:
- value: 40
- type: uint64_t
- timer:
- interval: 5
- - name: occ_active_speed_changes
- precondition:
- name: property_states_match
- groups:
- - name: occ0_object
- interface: org.open_power.OCC.Status
- property:
- name: OccActive
- type: bool
- value: true
- - name: occ1_object
- interface: org.open_power.OCC.Status
- property:
- name: OccActive
- type: bool
- value: true
- matches:
- - name: interfacesAdded
- - name: propertiesChanged
- events:
- - name: fails_before_high_speed_air
- groups:
- - name: zone0_cores
- zone_conditions:
- - name: air_cooled_chassis
- zones:
- - 0
- interface: xyz.openbmc_project.State.Decorator.OperationalStatus
- property:
- name: Functional
- type: bool
- - name: zone0_dimms
- interface: xyz.openbmc_project.State.Decorator.OperationalStatus
- property:
- name: Functional
- type: bool
- - name: zone0_gpu_cores
- zone_conditions:
- - name: air_cooled_chassis
- zones:
- - 0
- interface: xyz.openbmc_project.State.Decorator.OperationalStatus
- property:
- name: Functional
- type: bool
- - name: zone0_gpu_memory
- zone_conditions:
- - name: air_cooled_chassis
- zones:
- - 0
- interface: xyz.openbmc_project.State.Decorator.OperationalStatus
- property:
- name: Functional
- type: bool
- matches:
- - name: interfacesAdded
- - name: propertiesChanged
- actions:
- - name: count_state_before_speed
- count: 1
- property:
- value: false
- type: bool
- speed:
- value: 10500
- type: uint64_t
- - name: speed_changes_based_on_core_temps
- groups:
- - name: zone0_cores
- zone_conditions:
- - name: air_cooled_chassis
- zones:
- - 0
- interface: xyz.openbmc_project.Sensor.Value
- property:
- name: Value
- type: int64_t
- matches:
- - name: interfacesAdded
- - name: propertiesChanged
- - name: interfacesRemoved
- actions:
- - name: set_net_increase_speed
- property:
- value: 73000
- type: int64_t
- factor:
- value: 1000
- type: int64_t
- delta:
- value: 400
- type: uint64_t
- - name: set_net_decrease_speed
- property:
- value: 70000
- type: int64_t
- factor:
- value: 1000
- type: int64_t
- delta:
- value: 40
- type: uint64_t
- timer:
- interval: 5
- - name: speed_changes_based_on_dimm_temps
- # No global zone conditions defined == all unless defined on group
- groups:
- - name: zone0_dimms
- interface: xyz.openbmc_project.Sensor.Value
- property:
- name: Value
- type: int64_t
- matches:
- - name: interfacesAdded
- - name: propertiesChanged
- - name: interfacesRemoved
- actions:
- - name: set_net_increase_speed
- property:
- value: 64000
- type: int64_t
- factor:
- value: 1000
- type: int64_t
- delta:
- value: 200
- type: uint64_t
- - name: set_net_decrease_speed
- property:
- value: 61000
- type: int64_t
- factor:
- value: 1000
- type: int64_t
- delta:
- value: 40
- type: uint64_t
- timer:
- interval: 5
- - name: speed_changes_based_on_gpu_core_temps
- groups:
- - name: zone0_gpu_cores
- zone_conditions:
- - name: air_cooled_chassis
- zones:
- - 0
- interface: xyz.openbmc_project.Sensor.Value
- property:
- name: Value
- type: int64_t
- matches:
- - name: interfacesAdded
- - name: propertiesChanged
- - name: interfacesRemoved
- actions:
- - name: set_net_increase_speed
- property:
- value: 78000
- type: int64_t
- factor:
- value: 1000
- type: int64_t
- delta:
- value: 600
- type: uint64_t
- - name: set_net_decrease_speed
- property:
- value: 75000
- type: int64_t
- factor:
- value: 1000
- type: int64_t
- delta:
- value: 40
- type: uint64_t
- timer:
- interval: 5
- - name: speed_changes_based_on_gpu_memory_temps
- groups:
- - name: zone0_gpu_memory
- zone_conditions:
- - name: air_cooled_chassis
- zones:
- - 0
- interface: xyz.openbmc_project.Sensor.Value
- property:
- name: Value
- type: int64_t
- matches:
- - name: interfacesAdded
- - name: propertiesChanged
- - name: interfacesRemoved
- actions:
- - name: set_net_increase_speed
- property:
- value: 80000
- type: int64_t
- factor:
- value: 1000
- type: int64_t
- delta:
- value: 600
- type: uint64_t
- - name: set_net_decrease_speed
- property:
- value: 77000
- type: int64_t
- factor:
- value: 1000
- type: int64_t
- delta:
- value: 40
- type: uint64_t
- timer:
- interval: 5
diff --git a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-control-fan-config%.bbappend b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-control-fan-config%.bbappend
deleted file mode 100644
index 72d991c7e..000000000
--- a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-control-fan-config%.bbappend
+++ /dev/null
@@ -1 +0,0 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
diff --git a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-control-fan-config%/fans.yaml b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-control-fan-config%/fans.yaml
deleted file mode 100755
index a70ac85a3..000000000
--- a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-control-fan-config%/fans.yaml
+++ /dev/null
@@ -1,21 +0,0 @@
-fans:
- - inventory: /system/chassis/motherboard/fan2
- cooling_zone: 0
- cooling_profile: all
- sensors:
- - fan2_0
- - inventory: /system/chassis/motherboard/fan0
- cooling_zone: 0
- cooling_profile: all
- sensors:
- - fan0_0
- - inventory: /system/chassis/motherboard/fan1
- cooling_zone: 0
- cooling_profile: air
- sensors:
- - fan1_0
- - inventory: /system/chassis/motherboard/fan3
- cooling_zone: 0
- cooling_profile: all
- sensors:
- - fan3_0
diff --git a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-control-zone-conditions-config-native.bbappend b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-control-zone-conditions-config-native.bbappend
deleted file mode 100644
index 72d991c7e..000000000
--- a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-control-zone-conditions-config-native.bbappend
+++ /dev/null
@@ -1 +0,0 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
diff --git a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-control-zone-conditions-config-native/zone_conditions.yaml b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-control-zone-conditions-config-native/zone_conditions.yaml
deleted file mode 100644
index 0c8b3c5ff..000000000
--- a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-control-zone-conditions-config-native/zone_conditions.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-conditions:
- - name: air_cooled_chassis
- type: getProperty
- properties:
- - property: WaterCooled
- interface: xyz.openbmc_project.Inventory.Decorator.CoolingType
- path: /xyz/openbmc_project/inventory/system/chassis
- type: bool
- value: false
-
- - name: water_and_air_cooled_chassis
- type: getProperty
- properties:
- - property: WaterCooled
- interface: xyz.openbmc_project.Inventory.Decorator.CoolingType
- path: /xyz/openbmc_project/inventory/system/chassis
- type: bool
- value: true
diff --git a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-control-zone-config-native.bbappend b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-control-zone-config-native.bbappend
deleted file mode 100644
index 6d4804d12..000000000
--- a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-control-zone-config-native.bbappend
+++ /dev/null
@@ -1,2 +0,0 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
-
diff --git a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-control-zone-config-native/zones.yaml b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-control-zone-config-native/zones.yaml
deleted file mode 100644
index 29dd2c79e..000000000
--- a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-control-zone-config-native/zones.yaml
+++ /dev/null
@@ -1,32 +0,0 @@
-manager_configuration:
- power_on_delay: 20
-
-zone_configuration:
-
-#Air cooled zones
-- zone_conditions:
- - name: air_cooled_chassis
-
- zones:
- - zone: 0
- cooling_profiles:
- - air
- - all
- full_speed: 10500
- default_floor: 8000
- increase_delay: 5
- decrease_interval: 30
-
-#Water cooled zones
-- zone_conditions:
- - name: water_and_air_cooled_chassis
-
- zones:
- - zone: 0
- cooling_profiles:
- - water
- - all
- full_speed: 10500
- default_floor: 8000
- increase_delay: 5
- decrease_interval: 30
diff --git a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-monitor-config-native.bbappend b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-monitor-config-native.bbappend
deleted file mode 100644
index 72d991c7e..000000000
--- a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-monitor-config-native.bbappend
+++ /dev/null
@@ -1 +0,0 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
diff --git a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-monitor-config-native/monitor.yaml b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-monitor-config-native/monitor.yaml
deleted file mode 100644
index 5db7966fa..000000000
--- a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-monitor-config-native/monitor.yaml
+++ /dev/null
@@ -1,73 +0,0 @@
-fans:
- - inventory: /system/chassis/motherboard/fan0
- functional_delay: 5
- allowed_out_of_range_time: 30
- deviation: 15
- num_sensors_nonfunc_for_fan_nonfunc: 1
- sensors:
- - name: fan0_0
- has_target: true
- - name: fan0_1
- has_target: false
-
- - inventory: /system/chassis/motherboard/fan1
- functional_delay: 5
- allowed_out_of_range_time: 30
- deviation: 15
- num_sensors_nonfunc_for_fan_nonfunc: 1
- sensors:
- - name: fan1_0
- has_target: true
- - name: fan1_1
- has_target: false
- # Create fan1 inventory & sensors on air cooled only
- condition:
- name: propertiesMatch
- properties:
- - object: /xyz/openbmc_project/inventory/system/chassis
- interface: xyz.openbmc_project.Inventory.Decorator.CoolingType
- property:
- name: WaterCooled
- type: bool
- value: false
-
- - inventory: /system/chassis/motherboard/fan2
- functional_delay: 5
- allowed_out_of_range_time: 30
- deviation: 15
- num_sensors_nonfunc_for_fan_nonfunc: 1
- sensors:
- - name: fan2_0
- has_target: true
- - name: fan2_1
- has_target: false
-
- - inventory: /system/chassis/motherboard/fan3
- functional_delay: 5
- allowed_out_of_range_time: 30
- deviation: 15
- num_sensors_nonfunc_for_fan_nonfunc: 1
- sensors:
- - name: fan3_0
- has_target: true
- - name: fan3_1
- has_target: false
-
-sensor_trust_groups:
- - class: NonzeroSpeed
- group:
- # Include all _1 fans to determine trust
- - name: fan0_1
- - name: fan1_1
- - name: fan2_1
- - name: fan3_1
- # Add all _0 fans to be included in trust result effects,
- # but not in determining trust
- - name: fan0_0
- in_trust: false
- - name: fan1_0
- in_trust: false
- - name: fan2_0
- in_trust: false
- - name: fan3_0
- in_trust: false
diff --git a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-presence-config-native%.bbappend b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-presence-config-native%.bbappend
deleted file mode 100644
index 72d991c7e..000000000
--- a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-presence-config-native%.bbappend
+++ /dev/null
@@ -1 +0,0 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
diff --git a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-presence-config-native%/config.yaml b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-presence-config-native%/config.yaml
deleted file mode 100644
index c5be29c1e..000000000
--- a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/phosphor-fan-presence-config-native%/config.yaml
+++ /dev/null
@@ -1,55 +0,0 @@
-- name: fan0
- path: /system/chassis/motherboard/fan0
- methods:
- - type: gpio
- key: 4
- physpath: /sys/devices/platform/ahb/ahb:apb/ahb:apb:i2c@1e78a000/1e78a100.i2c-bus/i2c-3/3-0060
- devpath: /dev/input/by-path/platform-gpio-keys-polled-event
- - type: tach
- sensors:
- - fan0_0
- - fan0_1
- rpolicy:
- type: anyof
-
-- name: fan1
- path: /system/chassis/motherboard/fan1
- methods:
- - type: gpio
- key: 5
- physpath: /sys/devices/platform/ahb/ahb:apb/ahb:apb:i2c@1e78a000/1e78a100.i2c-bus/i2c-3/3-0060
- devpath: /dev/input/by-path/platform-gpio-keys-polled-event
- - type: tach
- sensors:
- - fan1_0
- - fan1_1
- rpolicy:
- type: anyof
-
-- name: fan2
- path: /system/chassis/motherboard/fan2
- methods:
- - type: gpio
- key: 6
- physpath: /sys/devices/platform/ahb/ahb:apb/ahb:apb:i2c@1e78a000/1e78a100.i2c-bus/i2c-3/3-0060
- devpath: /dev/input/by-path/platform-gpio-keys-polled-event
- - type: tach
- sensors:
- - fan2_0
- - fan2_1
- rpolicy:
- type: anyof
-
-- name: fan3
- path: /system/chassis/motherboard/fan3
- methods:
- - type: gpio
- key: 7
- physpath: /sys/devices/platform/ahb/ahb:apb/ahb:apb:i2c@1e78a000/1e78a100.i2c-bus/i2c-3/3-0060
- devpath: /dev/input/by-path/platform-gpio-keys-polled-event
- - type: tach
- sensors:
- - fan3_0
- - fan3_1
- rpolicy:
- type: anyof
diff --git a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-policy-native.bb b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-policy-native.bb
deleted file mode 100644
index b7da45c01..000000000
--- a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-policy-native.bb
+++ /dev/null
@@ -1,16 +0,0 @@
-SUMMARY = "Fan policy for Witherspoon"
-PR = "r1"
-
-inherit native
-inherit obmc-phosphor-license
-inherit phosphor-dbus-monitor
-
-SRC_URI += "file://air-cooled.yaml"
-SRC_URI += "file://water-cooled.yaml"
-SRC_URI += "file://fan-errors.yaml"
-
-do_install() {
- install -D ${WORKDIR}/air-cooled.yaml ${D}${config_dir}/air-cooled.yaml
- install -D ${WORKDIR}/water-cooled.yaml ${D}${config_dir}/water-cooled.yaml
- install -D ${WORKDIR}/fan-errors.yaml ${D}${config_dir}/fan-errors.yaml
-}
diff --git a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-policy/air-cooled.yaml b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-policy/air-cooled.yaml
deleted file mode 100644
index d60aa9179..000000000
--- a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-policy/air-cooled.yaml
+++ /dev/null
@@ -1,328 +0,0 @@
-# Air cooled Witherspoon fan policy for PDM.
-#
-# An air cooled Witherspoon requires a minimum of three functional fans
-# enclosures or six functional fan rotors across all enclosures.
-# If the number of functional fan enclosures is below three, soft poweroff
-# the system, whereas if the number of fan rotors drop below six, an
-# immediate hard poweroff of the system occurs.
-
-- name: fan enclosures
- description: >
- 'An air cooled Witherspoon has four fan enclosures to monitor.'
- class: group
- group: path
- members:
- - meta: FAN
- path: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan0
- - meta: FAN
- path: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan1
- - meta: FAN
- path: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan2
- - meta: FAN
- path: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan3
-
-- name: fan rotors
- description: >
- 'An air cooled Witherspoon has eight fan rotors to monitor.'
- class: group
- group: path
- members:
- - meta: FAN
- path: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan0/fan0_0
- - meta: FAN
- path: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan0/fan0_1
- - meta: FAN
- path: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan1/fan1_0
- - meta: FAN
- path: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan1/fan1_1
- - meta: FAN
- path: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan2/fan2_0
- - meta: FAN
- path: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan2/fan2_1
- - meta: FAN
- path: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan3/fan3_0
- - meta: FAN
- path: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan3/fan3_1
-
-- name: chassis state
- description: >
- 'Witherspoon has a single chassis to monitor.'
- class: group
- group: path
- members:
- - meta: CHASSISSTATE
- path: /xyz/openbmc_project/state/chassis0
-
-- name: chassis
- description: >
- 'Witherspoon has a single chassis to monitor.'
- class: group
- group: path
- members:
- - meta: CHASSIS
- path: /xyz/openbmc_project/inventory/system/chassis
-
-- name: fan present
- description: >
- 'Monitor the presence state of each fan.'
- class: group
- group: property
- type: boolean
- members:
- - interface: xyz.openbmc_project.Inventory.Item
- meta: PRESENT
- property: Present
-
-- name: fan functional
- description: >
- 'Monitor the functional state of each fan.'
- class: group
- group: property
- type: boolean
- members:
- - interface: xyz.openbmc_project.State.Decorator.OperationalStatus
- meta: FUNCTIONAL
- property: Functional
-
-- name: chassis powered
- description: >
- 'Monitor the chassis power state.'
- class: group
- group: property
- type: string
- members:
- - interface: xyz.openbmc_project.State.Chassis
- meta: CHASSIS_STATE
- property: CurrentPowerState
-
-- name: chassis air cooled
- description: >
- 'Monitor the chassis cooling type.'
- class: group
- group: property
- type: boolean
- members:
- - interface: xyz.openbmc_project.Inventory.Decorator.CoolingType
- meta: COOLING_TYPE
- property: WaterCooled
-
-- name: watch fan present
- description: >
- 'Trigger logic on fan enclosure presence state changes.'
- class: watch
- watch: property
- paths: fan enclosures
- properties: fan present
- callback: check cooling type
-
-- name: watch fan functional
- description: >
- 'Trigger logic on fan enclosure functional state changes.'
- class: watch
- watch: property
- paths: fan enclosures
- properties: fan functional
- callback: check cooling type
-
-- name: watch fan rotor functional
- description: >
- 'Trigger logic on fan rotor functional state changes.'
- class: watch
- watch: property
- paths: fan rotors
- properties: fan functional
- callback: check cooling type
-
-- name: watch chassis state
- description: >
- 'Trigger logic on chassis power state changes.'
- class: watch
- watch: property
- paths: chassis state
- properties: chassis powered
- callback: check cooling type
-
-- name: watch cooling type
- description: >
- 'Maintain a cache of the chassis cooling type.'
- class: watch
- watch: property
- paths: chassis
- properties: chassis air cooled
-
-- name: check cooling type
- description: >
- 'If this condition passes the chassis is air cooled.'
- class: condition
- condition: count
- paths: chassis
- properties: chassis air cooled
- callback: check power
- countop: '=='
- countbound: 0
- op: '=='
- bound: true
-
-- name: check power
- description: >
- 'If the chassis has power, check fans.'
- class: condition
- condition: count
- paths: chassis state
- properties: chassis powered
- callback: check fans
- countop: '>'
- countbound: 0
- op: '=='
- bound: xyz.openbmc_project.State.Chassis.PowerState.On
-
-- name: check fans
- description: >
- 'Verify there are at least three functional fan enclosures and at least
- six functional fan rotors, power off if not.'
- class: callback
- callback: group
- members:
- - check group presence
- - check group functional enclosures
- - check group functional rotors
-
-- name: check group presence
- description: >
- 'If this condition passes more than one fan has been unplugged
- for more than 25 seconds. Shut the system down. Count present
- fans rather than non-present fans since the latter would pass
- if the fan has not been created for some reason.
-
- For a more detailed definition of unplugged, consult the documentation
- of xyz.openbmc_project.Inventory.Item and/or the documentation
- of the fan inventory object implementation.'
- class: condition
- condition: count
- paths: fan enclosures
- properties: fan present
- defer: 25000000us
- callback: log and shutdown
- countop: '<'
- countbound: 3
- op: '=='
- bound: true
-
-- name: check group functional enclosures
- description: >
- 'If this condition passes more than one fan enclosure in the group has been
- marked as nonfunctional for five seconds. Shut the system down.
-
- For a more detailed definition of nonfunctional, consult the documentation
- of xyz.openbmc_project.State.Decorator.OperationalStatus and/or the
- documentation of the fan inventory object implementation.'
- class: condition
- condition: count
- paths: fan enclosures
- properties: fan functional
- defer: 5000000us
- callback: log and shutdown
- countop: '>'
- countbound: 1
- op: '=='
- bound: false
-
-- name: check group functional rotors
- description: >
- 'If this condition passes more than two fan rotors in the group have been
- marked as nonfunctional for five seconds. Immediately power off.
-
- For a more detailed definition of nonfunctional, consult the documentation
- of xyz.openbmc_project.State.Decorator.OperationalStatus and/or the
- documentation of the fan inventory object implementation.'
- class: condition
- condition: count
- paths: fan rotors
- properties: fan functional
- defer: 5000000us
- callback: log and poweroff
- countop: '>'
- countbound: 2
- op: '=='
- bound: false
-
-- name: log and poweroff
- description: >
- 'Immediately poweroff, log an event in the journal, and create an
- error log.'
- class: callback
- callback: group
- members:
- - hard poweroff
- - log hard poweroff
- - create shutdown error
-
-- name: log and shutdown
- description: >
- 'Shut the system down, log an event in the journal, and create an
- error log.'
- class: callback
- callback: group
- members:
- - shutdown
- - log shutdown
- - create shutdown error
-
-- name: hard poweroff
- description: >
- 'Immediately power off the system.'
- class: callback
- callback: method
- service: org.freedesktop.systemd1
- path: /org/freedesktop/systemd1
- interface: org.freedesktop.systemd1.Manager
- method: StartUnit
- args:
- - value: obmc-chassis-hard-poweroff@0.target
- type: string
- - value: replace
- type: string
-
-- name: shutdown
- description: >
- 'Shut down the system.'
- class: callback
- callback: method
- service: org.freedesktop.systemd1
- path: /org/freedesktop/systemd1
- interface: org.freedesktop.systemd1.Manager
- method: StartUnit
- args:
- - value: obmc-host-shutdown@0.target
- type: string
- - value: replace
- type: string
-
-- name: log hard poweroff
- description: >
- 'Log a hard poweroff event to the systemd journal.'
- class: callback
- callback: journal
- paths: chassis state
- properties: chassis powered
- severity: ERR
- message: Immediate poweroff of system. There are not enough functional fans.
-
-- name: log shutdown
- description: >
- 'Log a shutdown event to the systemd journal.'
- class: callback
- callback: journal
- paths: chassis state
- properties: chassis powered
- severity: ERR
- message: Request shutdown of system. There are not enough functional fans.
-
-- name: create shutdown error
- description: >
- 'Create a Fan Shutdown Error log.'
- class: callback
- callback: elog
- paths: chassis state
- properties: chassis powered
- error: xyz::openbmc_project::State::Shutdown::Inventory::Error::Fan
diff --git a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-policy/fan-errors.yaml b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-policy/fan-errors.yaml
deleted file mode 100644
index 0c14627d2..000000000
--- a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-policy/fan-errors.yaml
+++ /dev/null
@@ -1,676 +0,0 @@
-# Witherspoon fan error policy for PDM.
-#
-# * Create a NotPresent error if fan 0, 1, 2, or 3 is not present for more
-# than 20 seconds.
-# * Create a Nonfunctional error if fan 0, 1, 2, or 3 is not
-# functional for any amount of time.
-#
-# The system must be powered on in both of these cases.
-# If a water cooled system, don't create errors for fan 1.
-# Note: An error is created each time the chassis powers on.
-#
-# * Watch for fans to become both present and functional, and then resolve
-# their errors
-
-- name: fan0
- class: group
- group: path
- members:
- - meta: FAN
- path: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan0
-
-- name: fan1
- class: group
- group: path
- members:
- - meta: FAN
- path: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan1
-
-- name: fan2
- class: group
- group: path
- members:
- - meta: FAN
- path: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan2
-
-- name: fan3
- class: group
- group: path
- members:
- - meta: FAN
- path: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan3
-
-- name: chassis state
- description: >
- 'Witherspoon has a single chassis to monitor.'
- class: group
- group: path
- members:
- - meta: CHASSISSTATE
- path: /xyz/openbmc_project/state/chassis0
-
-- name: chassis
- description: >
- 'Witherspoon has a single chassis to monitor.'
- class: group
- group: path
- members:
- - meta: CHASSIS
- path: /xyz/openbmc_project/inventory/system/chassis
-
-
-- name: fan present
- description: >
- 'Monitor the presence state of each fan.'
- class: group
- group: property
- type: boolean
- members:
- - interface: xyz.openbmc_project.Inventory.Item
- meta: PRESENT
- property: Present
-
-- name: fan functional
- description: >
- 'Monitor the functional state of each fan.'
- class: group
- group: property
- type: boolean
- members:
- - interface: xyz.openbmc_project.State.Decorator.OperationalStatus
- meta: FUNCTIONAL
- property: Functional
-
-- name: fan present and functional
- description: >
- 'Monitor the present and functional state of each fan.'
- class: group
- group: property
- type: boolean
- members:
- - interface: xyz.openbmc_project.Inventory.Item
- meta: PRESENT
- property: Present
- - interface: xyz.openbmc_project.State.Decorator.OperationalStatus
- meta: FUNCTIONAL
- property: Functional
-
-- name: chassis powered
- description: >
- 'Monitor the chassis power state.'
- class: group
- group: property
- type: string
- members:
- - interface: xyz.openbmc_project.State.Chassis
- meta: CHASSIS_STATE
- property: CurrentPowerState
-
-- name: chassis air cooled
- description: >
- 'The chassis cooling type.'
- class: group
- group: property
- type: boolean
- members:
- - interface: xyz.openbmc_project.Inventory.Decorator.CoolingType
- meta: COOLING_TYPE
- property: WaterCooled
-
-- name: watch chassis state
- description: >
- 'Trigger logic on chassis power state changes.'
- class: watch
- watch: property
- paths: chassis state
- properties: chassis powered
- callback: check power
-
-- name: watch fan0 presence
- description: >
- 'Trigger logic on fan0 presence state changes.'
- class: watch
- watch: property
- paths: fan0
- properties: fan present
- callback: check power fan0 presence
-
-- name: watch fan0 functional
- description: >
- 'Trigger logic on fan0 functional state changes.'
- class: watch
- watch: property
- paths: fan0
- properties: fan functional
- callback: check power fan0 functional
-
-- name: watch fan1 presence
- description: >
- 'Trigger logic on fan1 presence state changes.'
- class: watch
- watch: property
- paths: fan1
- properties: fan present
- callback: check power fan1 presence
-
-- name: watch fan1 functional
- description: >
- 'Trigger logic on fan1 functional state changes.'
- class: watch
- watch: property
- paths: fan1
- properties: fan functional
- callback: check power fan1 functional
-
-- name: watch fan2 presence
- description: >
- 'Trigger logic on fan2 presence state changes.'
- class: watch
- watch: property
- paths: fan2
- properties: fan present
- callback: check power fan2 presence
-
-- name: watch fan2 functional
- description: >
- 'Trigger logic on fan2 functional state changes.'
- class: watch
- watch: property
- paths: fan2
- properties: fan functional
- callback: check power fan2 functional
-
-- name: watch fan3 presence
- description: >
- 'Trigger logic on fan3 presence state changes.'
- class: watch
- watch: property
- paths: fan3
- properties: fan present
- callback: check power fan3 presence
-
-- name: watch fan3 functional
- description: >
- 'Trigger logic on fan3 functional state changes.'
- class: watch
- watch: property
- paths: fan3
- properties: fan functional
- callback: check power fan3 functional
-
-- name: watch fan0 present and functional for resolving error logs
- description: >
- 'On fan present or functional state changes, check if errors need to be resolved.'
- class: watch
- watch: property
- paths: fan0
- properties: fan present and functional
- callback: resolve fan0 errors if present and functional
-
-- name: watch fan1 present and functional for resolving error logs
- description: >
- 'On fan present or functional state changes, check if errors need to be resolved.'
- class: watch
- watch: property
- paths: fan1
- properties: fan present and functional
- callback: resolve fan1 errors if present and functional
-
-- name: watch fan2 present and functional for resolving error logs
- description: >
- 'On fan present or functional state changes, check if errors need to be resolved.'
- class: watch
- watch: property
- paths: fan2
- properties: fan present and functional
- callback: resolve fan2 errors if present and functional
-
-- name: watch fan3 present and functional for resolving error logs
- description: >
- 'On fan present or functional state changes, check if errors need to be resolved.'
- class: watch
- watch: property
- paths: fan3
- properties: fan present and functional
- callback: resolve fan3 errors if present and functional
-
-- name: check power
- description: >
- 'If the chassis has power, check all fans.'
- class: condition
- condition: count
- paths: chassis state
- properties: chassis powered
- callback: check fans
- countop: '>'
- countbound: 0
- op: '=='
- bound: xyz.openbmc_project.State.Chassis.PowerState.On
-
-- name: check power fan0 presence
- description: >
- 'If the chassis has power, check presence of fan0.'
- class: condition
- condition: count
- paths: chassis state
- properties: chassis powered
- callback: check fan0 presence
- countop: '>'
- countbound: 0
- op: '=='
- bound: xyz.openbmc_project.State.Chassis.PowerState.On
-
-- name: check power fan0 functional
- description: >
- 'If the chassis has power, check functional of fan0.'
- class: condition
- condition: count
- paths: chassis state
- properties: chassis powered
- callback: check fan0 functional
- countop: '>'
- countbound: 0
- op: '=='
- bound: xyz.openbmc_project.State.Chassis.PowerState.On
-
-- name: check power fan1 presence
- description: >
- 'If the chassis has power, check presence of fan1.'
- class: condition
- condition: count
- paths: chassis state
- properties: chassis powered
- callback: check fan1 presence
- countop: '>'
- countbound: 0
- op: '=='
- bound: xyz.openbmc_project.State.Chassis.PowerState.On
-
-- name: check power fan1 functional
- description: >
- 'If the chassis has power, check functional of fan1.'
- class: condition
- condition: count
- paths: chassis state
- properties: chassis powered
- callback: check fan1 functional
- countop: '>'
- countbound: 0
- op: '=='
- bound: xyz.openbmc_project.State.Chassis.PowerState.On
-
-- name: check power fan2 presence
- description: >
- 'If the chassis has power, check presence of fan2.'
- class: condition
- condition: count
- paths: chassis state
- properties: chassis powered
- callback: check fan2 presence
- countop: '>'
- countbound: 0
- op: '=='
- bound: xyz.openbmc_project.State.Chassis.PowerState.On
-
-- name: check power fan2 functional
- description: >
- 'If the chassis has power, check functional of fan2.'
- class: condition
- condition: count
- paths: chassis state
- properties: chassis powered
- callback: check fan2 functional
- countop: '>'
- countbound: 0
- op: '=='
- bound: xyz.openbmc_project.State.Chassis.PowerState.On
-
-- name: check power fan3 presence
- description: >
- 'If the chassis has power, check presence of fan3.'
- class: condition
- condition: count
- paths: chassis state
- properties: chassis powered
- callback: check fan3 presence
- countop: '>'
- countbound: 0
- op: '=='
- bound: xyz.openbmc_project.State.Chassis.PowerState.On
-
-- name: check power fan3 functional
- description: >
- 'If the chassis has power, check functional of fan3.'
- class: condition
- condition: count
- paths: chassis state
- properties: chassis powered
- callback: check fan3 functional
- countop: '>'
- countbound: 0
- op: '=='
- bound: xyz.openbmc_project.State.Chassis.PowerState.On
-
-- name: check fans
- description: >
- 'Verify each of the 3 fans are present.'
- class: callback
- callback: group
- members:
- - check fan0 presence
- - check fan1 presence
- - check fan2 presence
- - check fan3 presence
- - check fan0 functional
- - check fan1 functional
- - check fan2 functional
- - check fan3 functional
-
-- name: check fan0 presence
- description: >
- 'If this condition passes fan0 has been unplugged for more than 20 seconds.'
- class: condition
- condition: count
- paths: fan0
- properties: fan present
- defer: 20000000us
- callback: notpresent fan0 error
- countop: '<'
- countbound: 1
- op: '=='
- bound: true
-
-- name: check fan0 functional
- description: >
- 'If this condition passes fan0 has been marked as nonfunctional.'
- class: condition
- condition: count
- paths: fan0
- properties: fan functional
- callback: nonfunctional fan0 error
- countop: '>'
- countbound: 0
- op: '=='
- bound: false
-
-- name: check fan1 presence
- description: >
- 'If this condition passes fan1 has been unplugged for more than 20 seconds.
- Fan 1 is not in a water cooled Witherspoon, so check for cooling type
- before creating an error.'
- class: condition
- condition: count
- paths: fan1
- properties: fan present
- defer: 20000000us
- callback: check cooling type notpresent error
- countop: '<'
- countbound: 1
- op: '=='
- bound: true
-
-- name: check fan1 functional
- description: >
- 'If this condition passes fan1 has been marked as nonfunctional.
- Fan 1 is not in a water cooled Witherspoon, so check for cooling type
- before creating an error.'
- class: condition
- condition: count
- paths: fan1
- properties: fan functional
- callback: check cooling type nonfunctional error
- countop: '>'
- countbound: 0
- op: '=='
- bound: false
-
-- name: check fan2 presence
- description: >
- 'If this condition passes fan2 has been unplugged for more than 20 seconds.'
- class: condition
- condition: count
- paths: fan2
- properties: fan present
- defer: 20000000us
- callback: notpresent fan2 error
- countop: '<'
- countbound: 1
- op: '=='
- bound: true
-
-- name: check fan2 functional
- description: >
- 'If this condition passes fan2 has been marked as nonfunctional.'
- class: condition
- condition: count
- paths: fan2
- properties: fan functional
- callback: nonfunctional fan2 error
- countop: '>'
- countbound: 0
- op: '=='
- bound: false
-
-- name: check fan3 presence
- description: >
- 'If this condition passes fan3 has been unplugged for more than 20 seconds.'
- class: condition
- condition: count
- paths: fan3
- properties: fan present
- defer: 20000000us
- callback: notpresent fan3 error
- countop: '<'
- countbound: 1
- op: '=='
- bound: true
-
-- name: check fan3 functional
- description: >
- 'If this condition passes fan3 has been marked as nonfunctional.'
- class: condition
- condition: count
- paths: fan3
- properties: fan functional
- callback: nonfunctional fan3 error
- countop: '>'
- countbound: 0
- op: '=='
- bound: false
-
-- name: check cooling type nonfunctional error
- description: >
- 'If this condition passes the chassis is air cooled and will create a
- nonfunctional error for fan 1.'
- class: condition
- condition: count
- paths: chassis
- properties: chassis air cooled
- callback: nonfunctional fan1 error
- countop: '=='
- countbound: 0
- op: '=='
- bound: true
-
-- name: check cooling type notpresent error
- description: >
- 'If this condition passes the chassis is air cooled and will create a
- notpresent error for fan 1.'
- class: condition
- condition: count
- paths: chassis
- properties: chassis air cooled
- callback: notpresent fan1 error
- countop: '=='
- countbound: 0
- op: '=='
- bound: true
-
-- name: notpresent fan0 error
- class: callback
- callback: elog
- paths: fan0
- properties: fan present
- error: xyz::openbmc_project::Inventory::Error::NotPresent
- metadata:
- - name: xyz::openbmc_project::Inventory::NotPresent::CALLOUT_INVENTORY_PATH
- value: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan0
- type: string
-
-- name: nonfunctional fan0 error
- class: callback
- callback: elog
- paths: fan0
- properties: fan functional
- error: xyz::openbmc_project::Inventory::Error::Nonfunctional
- metadata:
- - name: xyz::openbmc_project::Inventory::Nonfunctional::CALLOUT_INVENTORY_PATH
- value: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan0
- type: string
-
-- name: notpresent fan1 error
- class: callback
- callback: elog
- paths: fan1
- properties: fan present
- error: xyz::openbmc_project::Inventory::Error::NotPresent
- metadata:
- - name: xyz::openbmc_project::Inventory::NotPresent::CALLOUT_INVENTORY_PATH
- value: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan1
- type: string
-
-- name: nonfunctional fan1 error
- class: callback
- callback: elog
- paths: fan1
- properties: fan functional
- error: xyz::openbmc_project::Inventory::Error::Nonfunctional
- metadata:
- - name: xyz::openbmc_project::Inventory::Nonfunctional::CALLOUT_INVENTORY_PATH
- value: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan1
- type: string
-
-- name: notpresent fan2 error
- class: callback
- callback: elog
- paths: fan2
- properties: fan present
- error: xyz::openbmc_project::Inventory::Error::NotPresent
- metadata:
- - name: xyz::openbmc_project::Inventory::NotPresent::CALLOUT_INVENTORY_PATH
- value: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan2
- type: string
-
-- name: nonfunctional fan2 error
- class: callback
- callback: elog
- paths: fan2
- properties: fan functional
- error: xyz::openbmc_project::Inventory::Error::Nonfunctional
- metadata:
- - name: xyz::openbmc_project::Inventory::Nonfunctional::CALLOUT_INVENTORY_PATH
- value: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan2
- type: string
-
-- name: notpresent fan3 error
- class: callback
- callback: elog
- paths: fan3
- properties: fan present
- error: xyz::openbmc_project::Inventory::Error::NotPresent
- metadata:
- - name: xyz::openbmc_project::Inventory::NotPresent::CALLOUT_INVENTORY_PATH
- value: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan3
- type: string
-
-- name: nonfunctional fan3 error
- class: callback
- callback: elog
- paths: fan3
- properties: fan functional
- error: xyz::openbmc_project::Inventory::Error::Nonfunctional
- metadata:
- - name: xyz::openbmc_project::Inventory::Nonfunctional::CALLOUT_INVENTORY_PATH
- value: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan3
- type: string
-
-- name: resolve fan0 errors if present and functional
- description: >
- 'If fan0 is present and functional, call the resolve fan0 errors callback.'
- class: condition
- condition: count
- paths: fan0
- properties: fan present and functional
- callback: resolve fan0 errors
- countop: '=='
- countbound: 2
- op: '=='
- bound: true
-
-#Go ahead and do this on water cooled as well
-- name: resolve fan1 errors if present and functional
- description: >
- 'If fan1 is present and functional, call the resolve fan1 errors callback.'
- class: condition
- condition: count
- paths: fan1
- properties: fan present and functional
- callback: resolve fan1 errors
- countop: '=='
- countbound: 2
- op: '=='
- bound: true
-
-- name: resolve fan2 errors if present and functional
- description: >
- 'If fan2 is present and functional, call the resolve fan2 errors callback.'
- class: condition
- condition: count
- paths: fan2
- properties: fan present and functional
- callback: resolve fan2 errors
- countop: '=='
- countbound: 2
- op: '=='
- bound: true
-
-- name: resolve fan3 errors if present and functional
- description: >
- 'If fan3 is present and functional, call the resolve fan3 errors callback.'
- class: condition
- condition: count
- paths: fan3
- properties: fan present and functional
- callback: resolve fan3 errors
- countop: '=='
- countbound: 2
- op: '=='
- bound: true
-
-- name: resolve fan0 errors
- class: callback
- callback: resolve callout
- paths: fan0
- properties: fan present and functional
- callout: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan0
-
-- name: resolve fan1 errors
- class: callback
- callback: resolve callout
- paths: fan1
- properties: fan present and functional
- callout: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan1
-
-- name: resolve fan2 errors
- class: callback
- callback: resolve callout
- paths: fan2
- properties: fan present and functional
- callout: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan2
-
-- name: resolve fan3 errors
- class: callback
- callback: resolve callout
- paths: fan3
- properties: fan present and functional
- callout: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan3
diff --git a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-policy/water-cooled.yaml b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-policy/water-cooled.yaml
deleted file mode 100644
index a279cfefa..000000000
--- a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-policy/water-cooled.yaml
+++ /dev/null
@@ -1,322 +0,0 @@
-# Water cooled Witherspoon fan policy for PDM.
-#
-# A water cooled Witherspoon requires a minimum of two functional fan
-# enclosures or four functional fan rotors across all enclosures.
-# If the number of functional fan enclosures is below two, soft poweroff
-# the system, whereas if the number of fan rotors drop below four, an
-# immediate hard poweroff of the system occurs.
-
-- name: fan enclosures
- description: >
- 'A water cooled Witherspoon has three fan enclosures to monitor.'
- class: group
- group: path
- members:
- - meta: FAN
- path: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan0
- - meta: FAN
- path: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan2
- - meta: FAN
- path: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan3
-
-- name: fan rotors
- description: >
- 'A water cooled Witherspoon has six fan rotors to monitor.'
- class: group
- group: path
- members:
- - meta: FAN
- path: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan0/fan0_0
- - meta: FAN
- path: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan0/fan0_1
- - meta: FAN
- path: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan2/fan2_0
- - meta: FAN
- path: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan2/fan2_1
- - meta: FAN
- path: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan3/fan3_0
- - meta: FAN
- path: /xyz/openbmc_project/inventory/system/chassis/motherboard/fan3/fan3_1
-
-- name: chassis state
- description: >
- 'Witherspoon has a single chassis to monitor.'
- class: group
- group: path
- members:
- - meta: CHASSISSTATE
- path: /xyz/openbmc_project/state/chassis0
-
-- name: chassis
- description: >
- 'Witherspoon has a single chassis to monitor.'
- class: group
- group: path
- members:
- - meta: CHASSIS
- path: /xyz/openbmc_project/inventory/system/chassis
-
-- name: fan present
- description: >
- 'Monitor the presence state of each fan.'
- class: group
- group: property
- type: boolean
- members:
- - interface: xyz.openbmc_project.Inventory.Item
- meta: PRESENT
- property: Present
-
-- name: fan functional
- description: >
- 'Monitor the functional state of each fan.'
- class: group
- group: property
- type: boolean
- members:
- - interface: xyz.openbmc_project.State.Decorator.OperationalStatus
- meta: FUNCTIONAL
- property: Functional
-
-- name: chassis powered
- description: >
- 'Monitor the chassis power state.'
- class: group
- group: property
- type: string
- members:
- - interface: xyz.openbmc_project.State.Chassis
- meta: CHASSIS_STATE
- property: CurrentPowerState
-
-- name: chassis water cooled
- description: >
- 'Monitor the chassis cooling type.'
- class: group
- group: property
- type: boolean
- members:
- - interface: xyz.openbmc_project.Inventory.Decorator.CoolingType
- meta: COOLING_TYPE
- property: WaterCooled
-
-- name: watch fan present
- description: >
- 'Trigger logic on fan enclosure presence state changes.'
- class: watch
- watch: property
- paths: fan enclosures
- properties: fan present
- callback: check cooling type
-
-- name: watch fan functional
- description: >
- 'Trigger logic on fan enclosure functional state changes.'
- class: watch
- watch: property
- paths: fan enclosures
- properties: fan functional
- callback: check cooling type
-
-- name: watch fan rotor functional
- description: >
- 'Trigger logic on fan rotor functional state changes.'
- class: watch
- watch: property
- paths: fan rotors
- properties: fan functional
- callback: check cooling type
-
-- name: watch chassis state
- description: >
- 'Trigger logic on chassis power state changes.'
- class: watch
- watch: property
- paths: chassis state
- properties: chassis powered
- callback: check cooling type
-
-- name: watch cooling type
- description: >
- 'Maintain a cache of the chassis cooling type.'
- class: watch
- watch: property
- paths: chassis
- properties: chassis water cooled
-
-- name: check cooling type
- description: >
- 'If this condition passes the chassis is water cooled.'
- class: condition
- condition: count
- paths: chassis
- properties: chassis water cooled
- callback: check power
- countop: '=='
- countbound: 1
- op: '=='
- bound: true
-
-- name: check power
- description: >
- 'If the chassis has power, check fans.'
- class: condition
- condition: count
- paths: chassis state
- properties: chassis powered
- callback: check fans
- countop: '>'
- countbound: 0
- op: '=='
- bound: xyz.openbmc_project.State.Chassis.PowerState.On
-
-- name: check fans
- description: >
- 'Verify there are at least two functional fan enclosures and at least
- four functional fan rotors, power off if not.'
- class: callback
- callback: group
- members:
- - check group presence
- - check group functional enclosures
- - check group functional rotors
-
-- name: check group presence
- description: >
- 'If this condition passes more than one fan has been unplugged
- for more than 25 seconds. Shut the system down. Count present
- fans rather than non-present fans since the latter would pass
- if the fan has not been created for some reason.
-
- For a more detailed definition of unplugged, consult the documentation
- of xyz.openbmc_project.Inventory.Item and/or the documentation
- of the fan inventory object implementation.'
- class: condition
- condition: count
- paths: fan enclosures
- properties: fan present
- defer: 25000000us
- callback: log and shutdown
- countop: '<'
- countbound: 2
- op: '=='
- bound: true
-
-- name: check group functional enclosures
- description: >
- 'If this condition passes more than one fan enclosure in the group has been
- marked as nonfunctional for five seconds. Shut the system down.
-
- For a more detailed definition of nonfunctional, consult the documentation
- of xyz.openbmc_project.State.Decorator.OperationalStatus and/or the
- documentation of the fan inventory object implementation.'
- class: condition
- condition: count
- paths: fan enclosures
- properties: fan functional
- defer: 5000000us
- callback: log and shutdown
- countop: '>'
- countbound: 1
- op: '=='
- bound: false
-
-- name: check group functional rotors
- description: >
- 'If this condition passes more than two fan rotors in the group have been
- marked as nonfunctional for five seconds. Immediately power off.
-
- For a more detailed definition of nonfunctional, consult the documentation
- of xyz.openbmc_project.State.Decorator.OperationalStatus and/or the
- documentation of the fan inventory object implementation.'
- class: condition
- condition: count
- paths: fan rotors
- properties: fan functional
- defer: 5000000us
- callback: log and poweroff
- countop: '>'
- countbound: 2
- op: '=='
- bound: false
-
-- name: log and poweroff
- description: >
- 'Immediately poweroff, log an event in the journal, and create an
- error log.'
- class: callback
- callback: group
- members:
- - hard poweroff
- - log hard poweroff
- - create shutdown error
-
-- name: log and shutdown
- description: >
- 'Shut the system down, log an event in the journal, and create an
- error log.'
- class: callback
- callback: group
- members:
- - shutdown
- - log shutdown
- - create shutdown error
-
-- name: hard poweroff
- description: >
- 'Immediately power off the system.'
- class: callback
- callback: method
- service: org.freedesktop.systemd1
- path: /org/freedesktop/systemd1
- interface: org.freedesktop.systemd1.Manager
- method: StartUnit
- args:
- - value: obmc-chassis-hard-poweroff@0.target
- type: string
- - value: replace
- type: string
-
-- name: shutdown
- description: >
- 'Shut down the system.'
- class: callback
- callback: method
- service: org.freedesktop.systemd1
- path: /org/freedesktop/systemd1
- interface: org.freedesktop.systemd1.Manager
- method: StartUnit
- args:
- - value: obmc-host-shutdown@0.target
- type: string
- - value: replace
- type: string
-
-- name: log hard poweroff
- description: >
- 'Log a hard poweroff event to the systemd journal.'
- class: callback
- callback: journal
- paths: chassis state
- properties: chassis powered
- severity: ERR
- message: Immediate poweroff of system. There are not enough functional fans.
-
-- name: log shutdown
- description: >
- 'Log a shutdown event to the systemd journal.'
- class: callback
- callback: journal
- paths: chassis state
- properties: chassis powered
- severity: ERR
- message: Request shutdown of system. There are not enough functional fans.
-
-- name: create shutdown error
- description: >
- 'Create a Fan Shutdown Error log.'
- class: callback
- callback: elog
- paths: chassis state
- properties: chassis powered
- error: xyz::openbmc_project::State::Shutdown::Inventory::Error::Fan
diff --git a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-watchdog.bb b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-watchdog.bb
deleted file mode 100644
index c09b9df24..000000000
--- a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-watchdog.bb
+++ /dev/null
@@ -1,22 +0,0 @@
-SUMMARY = "Witherspoon fan watchdog services"
-PR = "r1"
-
-inherit obmc-phosphor-license
-inherit obmc-phosphor-systemd
-
-RDEPENDS_${PN} += "virtual/obmc-gpio-monitor"
-RDEPENDS_${PN} += "busybox"
-
-RESET_SERVICE = "witherspoon-reset-fan-watchdog.service"
-TGTFMT = "obmc-chassis-poweron@0.target"
-RESET_FMT = "../${RESET_SERVICE}:${TGTFMT}.requires/${RESET_SERVICE}"
-
-MONITOR_SERVICE = "witherspoon-fan-watchdog-monitor@.service"
-
-WATCHDOG_SERVICE = "witherspoon-fan-watchdog.service"
-WATCHDOG_FMT = "../${WATCHDOG_SERVICE}:${TGTFMT}.requires/${WATCHDOG_SERVICE}"
-
-SYSTEMD_SERVICE_${PN} += "${RESET_SERVICE} ${MONITOR_SERVICE} ${WATCHDOG_SERVICE}"
-SYSTEMD_LINK_${PN} += "${RESET_FMT} ${WATCHDOG_FMT}"
-SYSTEMD_ENVIRONMENT_FILE_${PN} += "obmc/witherspoon-fan-watchdog/reset-fan-watchdog.conf"
-SYSTEMD_ENVIRONMENT_FILE_${PN} += "obmc/witherspoon-fan-watchdog/fan-watchdog.conf"
diff --git a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-watchdog/obmc/witherspoon-fan-watchdog/fan-watchdog.conf b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-watchdog/obmc/witherspoon-fan-watchdog/fan-watchdog.conf
deleted file mode 100644
index ce7824ccb..000000000
--- a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-watchdog/obmc/witherspoon-fan-watchdog/fan-watchdog.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-TIMEOUT=5
-INTERVAL=1
-DEVICE=/dev/watchdog0
diff --git a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-watchdog/obmc/witherspoon-fan-watchdog/reset-fan-watchdog.conf b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-watchdog/obmc/witherspoon-fan-watchdog/reset-fan-watchdog.conf
deleted file mode 100644
index b4e5ce74e..000000000
--- a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-watchdog/obmc/witherspoon-fan-watchdog/reset-fan-watchdog.conf
+++ /dev/null
@@ -1,4 +0,0 @@
-GPIO_PATH=/dev/gpiochip0
-GPIO=109
-DELAY=1
-ACTION=low_high
diff --git a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-watchdog/witherspoon-fan-watchdog-monitor@.service b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-watchdog/witherspoon-fan-watchdog-monitor@.service
deleted file mode 100644
index 945561b50..000000000
--- a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-watchdog/witherspoon-fan-watchdog-monitor@.service
+++ /dev/null
@@ -1,10 +0,0 @@
-[Unit]
-Description=Fan Watchdog Failure Monitor
-
-#This can get called every time a process dies, so ensure it's never limited
-StartLimitIntervalSec=0
-
-[Service]
-Type=oneshot
-ExecStart=/usr/bin/env phosphor-unit-failure-monitor --source %i --target obmc-fan-watchdog-takeover.target --action start
-SyslogIdentifier=phosphor-unit-failure-monitor
diff --git a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-watchdog/witherspoon-fan-watchdog.service b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-watchdog/witherspoon-fan-watchdog.service
deleted file mode 100644
index 5b59546e3..000000000
--- a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-watchdog/witherspoon-fan-watchdog.service
+++ /dev/null
@@ -1,13 +0,0 @@
-[Unit]
-Description=Witherspoon Fan Watchdog Daemon
-Wants=phosphor-fan-control-init@0.service
-Before=phosphor-fan-control-init@0.service
-Conflicts=obmc-fan-watchdog-takeover.target
-
-[Service]
-EnvironmentFile={envfiledir}/obmc/witherspoon-fan-watchdog/fan-watchdog.conf
-ExecStart=/sbin/watchdog -T ${{TIMEOUT}} -t ${{INTERVAL}} -F ${{DEVICE}}
-KillSignal=SIGKILL
-
-[Install]
-RequiredBy=obmc-chassis-poweron@0.target
diff --git a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-watchdog/witherspoon-reset-fan-watchdog.service b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-watchdog/witherspoon-reset-fan-watchdog.service
deleted file mode 100644
index e0ef0aeeb..000000000
--- a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-fan-watchdog/witherspoon-reset-fan-watchdog.service
+++ /dev/null
@@ -1,12 +0,0 @@
-[Unit]
-Description=Witherspoon Fan Watchdog Reset
-Wants=phosphor-fan-control-init@0.service
-Before=phosphor-fan-control-init@0.service
-Conflicts=obmc-chassis-poweroff@0.target
-
-[Service]
-Type=oneshot
-RemainAfterExit=yes
-EnvironmentFile={envfiledir}/obmc/witherspoon-fan-watchdog/reset-fan-watchdog.conf
-ExecStart=/usr/bin/env phosphor-gpio-util -p ${{GPIO_PATH}} -g ${{GPIO}} -a ${{ACTION}} -d ${{DELAY}}
-SyslogIdentifier=phosphor-gpio-util
diff --git a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-thermal-policy-native.bb b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-thermal-policy-native.bb
deleted file mode 100644
index 39831cf86..000000000
--- a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-thermal-policy-native.bb
+++ /dev/null
@@ -1,12 +0,0 @@
-SUMMARY = "Thermal policy for Witherspoon"
-PR = "r1"
-
-inherit native
-inherit obmc-phosphor-license
-inherit phosphor-dbus-monitor
-
-SRC_URI += "file://thermal-policy.yaml"
-
-do_install() {
- install -D ${WORKDIR}/thermal-policy.yaml ${D}${config_dir}/thermal-policy.yaml
-}
diff --git a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-thermal-policy/thermal-policy.yaml b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-thermal-policy/thermal-policy.yaml
deleted file mode 100644
index 1dd2306e9..000000000
--- a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipes-phosphor/fans/witherspoon-thermal-policy/thermal-policy.yaml
+++ /dev/null
@@ -1,187 +0,0 @@
-# Witherspoon thermal policy for PDM.
-#
-# Shut down a Witherspoon system if more than three POWER9 cores
-# have a temperature greater than 115 degrees Celcius.
-
-
-- name: core sensors
- description: >
- 'Witherspoon has two POWER9 chips with 24 cores each.'
- class: group
- group: path
- members:
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p0_core0_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p0_core1_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p0_core2_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p0_core3_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p0_core4_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p0_core5_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p0_core6_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p0_core7_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p0_core8_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p0_core9_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p0_core10_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p0_core11_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p0_core12_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p0_core13_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p0_core14_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p0_core15_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p0_core16_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p0_core17_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p0_core18_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p0_core19_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p0_core20_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p0_core21_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p0_core22_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p0_core23_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p1_core0_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p1_core1_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p1_core2_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p1_core3_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p1_core4_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p1_core5_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p1_core6_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p1_core7_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p1_core8_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p1_core9_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p1_core10_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p1_core11_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p1_core12_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p1_core13_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p1_core14_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p1_core15_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p1_core16_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p1_core17_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p1_core18_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p1_core19_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p1_core20_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p1_core21_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p1_core22_temp
- - meta: SENSOR
- path: /xyz/openbmc_project/sensors/temperature/p1_core23_temp
-
-- name: core temp
- description: >
- 'Monitor the temperature of each core.'
- class: group
- group: property
- type: int64
- members:
- - interface: xyz.openbmc_project.Sensor.Value
- meta: TEMP
- property: Value
-
-- name: watch core temps
- description: >
- 'Trigger logic on core temp changes.'
- class: watch
- watch: property
- paths: core sensors
- properties: core temp
- callback: check temps
-
-- name: check temps
- description: >
- 'If this condition passes at least three cores are running
- too hot. Shut the system down.'
- class: condition
- condition: count
- paths: core sensors
- properties: core temp
- callback: log and shutdown
- countop: '>='
- countbound: 3
- op: '>='
- bound: 115000
- oneshot: true
-
-- name: log and shutdown
- description: >
- 'Shut the system down and log an event.'
- class: callback
- callback: group
- members:
- - shutdown
- - create criticalhigh error
- - create shutdown error
-
-- name: shutdown
- description: >
- 'Shut down the system.'
- class: callback
- callback: method
- service: org.freedesktop.systemd1
- path: /org/freedesktop/systemd1
- interface: org.freedesktop.systemd1.Manager
- method: StartUnit
- args:
- - value: obmc-chassis-hard-poweroff@0.target
- type: string
- - value: replace
- type: string
-
-- name: create criticalhigh error
- description: >
- 'Create a CriticalHigh Error log.'
- class: callback
- callback: elog_with_metadata
- paths: core sensors
- properties: core temp
- error: xyz::openbmc_project::Sensor::Threshold::Error::CriticalHigh
- metadata: xyz::openbmc_project::Sensor::Threshold::CriticalHigh::SENSOR_DATA
-
-- name: create shutdown error
- description: >
- 'Create a SystemShutdown Error log.'
- class: callback
- callback: elog
- paths: core sensors
- properties: core temp
- error: xyz::openbmc_project::State::Shutdown::ThermalEvent::Error::Processor