summaryrefslogtreecommitdiff
path: root/meta-facebook
diff options
context:
space:
mode:
authorBonnie Lo <Bonnie_Lo@wiwynn.com>2022-12-15 12:21:50 +0300
committerPatrick Williams <patrick@stwcx.xyz>2023-03-17 00:09:27 +0300
commit7c385b38e6ac04acd4cdded7295cd57e9e87b6ad (patch)
tree6d6830f950161e10393f64eb83cc9297aee309da /meta-facebook
parent910b35920c60629e7bac82600b7a3c8d8695eb7f (diff)
downloadopenbmc-7c385b38e6ac04acd4cdded7295cd57e9e87b6ad.tar.xz
meta-facebook: greatlakes: add draft fan table
Description: - Add draft fan table for Great Lakes. - Will set all PWMs to 70%. Design: - Add draft fan table to the default path for phosphor-pid-control service. Test Case: 1. Check status of phosphor-pid-control service. root@greatlakes:~# systemctl status phosphor-pid-control -l ... Mar 09 04:40:55 greatlakes swampd[2808]: Zone Id: 1 Mar 09 04:40:55 greatlakes swampd[2808]: PID name: Stepwise_BB_INLET_TEMP_C Mar 09 04:40:55 greatlakes swampd[2808]: inputs: BB_INLET_TEMP_C, Mar 09 04:40:55 greatlakes swampd[2808]: PID name: fan0 1 2 3 Mar 09 04:40:55 greatlakes swampd[2808]: inputs: BB_FAN0_TACH_RPM, BB_FAN1_TACH_RPM, BB_FAN2_TACH_RPM, BB_FAN3_TACH_RPM, Mar 09 04:40:55 greatlakes swampd[2808]: pushing zone 1 Mar 09 04:40:55 greatlakes swampd[2808]: PID Zone 1 max SetPoint 70 requested by Stepwise_BB_INLET_TEMP_C BB_FAN0_TACH_RPM BB_FAN1_TACH_RPM BB_FAN2_TACH_RPM BB_FAN3_TACH_RPM 2. Check fan PWM was set to 70%. root@greatlakes:~# busctl get-property \ xyz.openbmc_project.FanSensor \ /xyz/openbmc_project/sensors/fan_pwm/Pwm_1 \ xyz.openbmc_project.Sensor.Value Value d 69.8039 root@greatlakes:~# busctl get-property \ xyz.openbmc_project.FanSensor \ /xyz/openbmc_project/sensors/fan_pwm/Pwm_2 \ xyz.openbmc_project.Sensor.Value Value d 69.8039 root@greatlakes:~# busctl get-property \ xyz.openbmc_project.FanSensor \ /xyz/openbmc_project/sensors/fan_pwm/Pwm_3 \ xyz.openbmc_project.Sensor.Value Value d 69.8039 root@greatlakes:~# busctl get-property \ xyz.openbmc_project.FanSensor \ /xyz/openbmc_project/sensors/fan_pwm/Pwm_4 \ xyz.openbmc_project.Sensor.Value Value d 69.8039 Change-Id: Id2240fe7d2f4dd6521ef88fce8f95f221988ee4c Signed-off-by: Delphine CC Chiu <Delphine_CC_Chiu@wiwynn.com>
Diffstat (limited to 'meta-facebook')
-rw-r--r--meta-facebook/meta-greatlakes/recipes-phosphor/fans/phosphor-pid-control/config.json105
-rw-r--r--meta-facebook/meta-greatlakes/recipes-phosphor/fans/phosphor-pid-control_%.bbappend10
2 files changed, 115 insertions, 0 deletions
diff --git a/meta-facebook/meta-greatlakes/recipes-phosphor/fans/phosphor-pid-control/config.json b/meta-facebook/meta-greatlakes/recipes-phosphor/fans/phosphor-pid-control/config.json
new file mode 100644
index 0000000000..5e2b83cc9c
--- /dev/null
+++ b/meta-facebook/meta-greatlakes/recipes-phosphor/fans/phosphor-pid-control/config.json
@@ -0,0 +1,105 @@
+{
+ "sensors": [
+ {
+ "name": "BB_INLET_TEMP_C",
+ "type": "temp",
+ "readPath": "/xyz/openbmc_project/sensors/temperature/BB_INLET_TEMP_C",
+ "timeout": 0,
+ "ignoreDbusMinMax": true
+ },
+ {
+ "name": "BB_FAN0_TACH_RPM",
+ "type": "fan",
+ "readPath": "/xyz/openbmc_project/sensors/fan_tach/BB_FAN0_TACH_RPM",
+ "writePath": "/xyz/openbmc_project/control/fanpwm/Pwm_1",
+ "min": 0,
+ "max": 255,
+ "ignoreDbusMinMax": true
+ },
+ {
+ "name": "BB_FAN1_TACH_RPM",
+ "type": "fan",
+ "readPath": "/xyz/openbmc_project/sensors/fan_tach/BB_FAN1_TACH_RPM",
+ "writePath": "/xyz/openbmc_project/control/fanpwm/Pwm_2",
+ "min": 0,
+ "max": 255,
+ "ignoreDbusMinMax": true
+ },
+ {
+ "name": "BB_FAN2_TACH_RPM",
+ "type": "fan",
+ "readPath": "/xyz/openbmc_project/sensors/fan_tach/BB_FAN2_TACH_RPM",
+ "writePath": "/xyz/openbmc_project/control/fanpwm/Pwm_3",
+ "min": 0,
+ "max": 255,
+ "ignoreDbusMinMax": true
+ },
+ {
+ "name": "BB_FAN3_TACH_RPM",
+ "type": "fan",
+ "readPath": "/xyz/openbmc_project/sensors/fan_tach/BB_FAN3_TACH_RPM",
+ "writePath": "/xyz/openbmc_project/control/fanpwm/Pwm_4",
+ "min": 0,
+ "max": 255,
+ "ignoreDbusMinMax": true
+ }
+ ],
+ "zones" : [
+ {
+ "id": 1,
+ "failsafePercent": 90.0,
+ "minThermalOutput": 0.0,
+ "cycleTimeBaseMS": 1000,
+ "updateThermalsTimeMS": 1000,
+ "pids": [
+ {
+ "name": "fan0 1 2 3",
+ "type": "fan",
+ "inputs": [
+ "BB_FAN0_TACH_RPM",
+ "BB_FAN1_TACH_RPM",
+ "BB_FAN2_TACH_RPM",
+ "BB_FAN3_TACH_RPM"
+ ],
+ "setpoint": 0.0,
+ "pid": {
+ "samplePeriod": 1,
+ "proportionalCoeff": 0.0,
+ "integralCoeff": 0.0,
+ "derivativeCoeff": 0.0,
+ "feedFwdOffsetCoeff": 0.0,
+ "feedFwdGainCoeff": 1.0,
+ "integralLimit_min": 0.0,
+ "integralLimit_max": 0.0,
+ "outLim_min": 0.0,
+ "outLim_max": 100.0,
+ "slewNeg": 0.0,
+ "slewPos": 0.0,
+ "positiveHysteresis": 0,
+ "negativeHysteresis": 0
+ }
+ },
+ {
+ "name": "Stepwise_BB_INLET_TEMP_C",
+ "type": "stepwise",
+ "inputs": [
+ "BB_INLET_TEMP_C"
+ ],
+ "setpoint": 0.0,
+ "pid": {
+ "samplePeriod": 1,
+ "isCeiling": false,
+ "reading": {
+ "0": 20.0
+ },
+ "output": {
+ "0": 70.0
+ },
+ "positiveHysteresis": 0,
+ "negativeHysteresis": 2
+ }
+ }
+ ]
+ }
+ ]
+}
diff --git a/meta-facebook/meta-greatlakes/recipes-phosphor/fans/phosphor-pid-control_%.bbappend b/meta-facebook/meta-greatlakes/recipes-phosphor/fans/phosphor-pid-control_%.bbappend
new file mode 100644
index 0000000000..dd6006ac8e
--- /dev/null
+++ b/meta-facebook/meta-greatlakes/recipes-phosphor/fans/phosphor-pid-control_%.bbappend
@@ -0,0 +1,10 @@
+FILESEXTRAPATHS:prepend:greatlakes := "${THISDIR}/${PN}:"
+SRC_URI:append:greatlakes = " file://config.json \
+ "
+
+FILES:${PN}:append:greatlakes = " ${datadir}/swampd/config.json"
+
+do_install:append:greatlakes() {
+ install -d ${D}${datadir}/swampd
+ install -m 0644 -D ${WORKDIR}/config.json ${D}${datadir}/swampd/
+}