From 3bdb9add3c32704a96b0a98bb7b779dee5ba307f Mon Sep 17 00:00:00 2001 From: Brandon Chuang Date: Mon, 20 Jan 2025 16:25:07 +0800 Subject: [PATCH] minipack3n: Initial config for fan_service Summary: Add fan_service.json for the minipack3n fan_service. **Description** - Set the default fan speed to 60 percent before the thermal policy takes effect. - This configuration has been tested on minipack3n. **Test Plan** - Run the fan_service with this configuration on minipack3n. - Verify that the PWM is programmed to 60 percent. [20250214_mp3n_fan_service.log.txt](https://github.com/user-attachments/files/18795231/20250214_mp3n_fan_service.log.txt) --- .../configs/minipack3n/fan_service.json | 274 ++++++++++++++++++ 1 file changed, 274 insertions(+) create mode 100644 fboss/platform/configs/minipack3n/fan_service.json diff --git a/fboss/platform/configs/minipack3n/fan_service.json b/fboss/platform/configs/minipack3n/fan_service.json new file mode 100644 index 0000000000000..6b842ad80cdfb --- /dev/null +++ b/fboss/platform/configs/minipack3n/fan_service.json @@ -0,0 +1,274 @@ +{ + "pwmBoostOnNumDeadFan": 0, + "pwmBoostOnNumDeadSensor": 0, + "pwmBoostOnNoQsfpAfterInSec": 55, + "pwmBoostValue": 60, + "pwmTransitionValue": 60, + "pwmLowerThreshold": 60, + "pwmUpperThreshold": 60, + "watchdog": { + "access": { + "accessType": "ACCESS_TYPE_SYSFS", + "path": "/run/devmap/watchdogs/FAN_WATCHDOG" + }, + "value": 0 + }, + "controlInterval": { + "sensorReadInterval": 5, + "pwmUpdateInterval": 5 + }, + "optics": [], + "sensors": [], + "fans": [ + { + "fanName": "FAN_1_F", + "rpmSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/fan1_input", + "pwmSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/pwm1", + "presenceSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/fan1_present", + "ledSysfsPath": "/sys/class/leds/fan1:blue:status/brightness", + "pwmMin": 0, + "pwmMax": 40, + "fanPresentVal": 1, + "fanMissingVal": 0, + "fanGoodLedVal": 1, + "fanFailLedVal": 2, + "rpmMin": 1500 + }, + { + "fanName": "FAN_1_R", + "rpmSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/fan2_input", + "pwmSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/pwm1", + "presenceSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/fan1_present", + "ledSysfsPath": "/sys/class/leds/fan1:blue:status/brightness", + "pwmMin": 0, + "pwmMax": 40, + "fanPresentVal": 1, + "fanMissingVal": 0, + "fanGoodLedVal": 1, + "fanFailLedVal": 2, + "rpmMin": 1500 + }, + { + "fanName": "FAN_2_F", + "rpmSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/fan3_input", + "pwmSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/pwm2", + "presenceSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/fan2_present", + "ledSysfsPath": "/sys/class/leds/fan2:blue:status/brightness", + "pwmMin": 0, + "pwmMax": 40, + "fanPresentVal": 1, + "fanMissingVal": 0, + "fanGoodLedVal": 1, + "fanFailLedVal": 2, + "rpmMin": 1500 + }, + { + "fanName": "FAN_2_R", + "rpmSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/fan4_input", + "pwmSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/pwm2", + "presenceSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/fan2_present", + "ledSysfsPath": "/sys/class/leds/fan2:blue:status/brightness", + "pwmMin": 0, + "pwmMax": 40, + "fanPresentVal": 1, + "fanMissingVal": 0, + "fanGoodLedVal": 1, + "fanFailLedVal": 2, + "rpmMin": 1500 + }, + { + "fanName": "FAN_3_F", + "rpmSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/fan5_input", + "pwmSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/pwm3", + "presenceSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/fan3_present", + "ledSysfsPath": "/sys/class/leds/fan3:blue:status/brightness", + "pwmMin": 0, + "pwmMax": 40, + "fanPresentVal": 1, + "fanMissingVal": 0, + "fanGoodLedVal": 1, + "fanFailLedVal": 2, + "rpmMin": 1500 + }, + { + "fanName": "FAN_3_R", + "rpmSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/fan6_input", + "pwmSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/pwm3", + "presenceSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/fan3_present", + "ledSysfsPath": "/sys/class/leds/fan3:blue:status/brightness", + "pwmMin": 0, + "pwmMax": 40, + "fanPresentVal": 1, + "fanMissingVal": 0, + "fanGoodLedVal": 1, + "fanFailLedVal": 2, + "rpmMin": 1500 + }, + { + "fanName": "FAN_4_F", + "rpmSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/fan7_input", + "pwmSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/pwm4", + "presenceSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/fan4_present", + "ledSysfsPath": "/sys/class/leds/fan4:blue:status/brightness", + "pwmMin": 0, + "pwmMax": 40, + "fanPresentVal": 1, + "fanMissingVal": 0, + "fanGoodLedVal": 1, + "fanFailLedVal": 2, + "rpmMin": 1500 + }, + { + "fanName": "FAN_4_R", + "rpmSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/fan8_input", + "pwmSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/pwm4", + "presenceSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/fan4_present", + "ledSysfsPath": "/sys/class/leds/fan4:blue:status/brightness", + "pwmMin": 0, + "pwmMax": 40, + "fanPresentVal": 1, + "fanMissingVal": 0, + "fanGoodLedVal": 1, + "fanFailLedVal": 2, + "rpmMin": 1500 + }, + { + "fanName": "FAN_5_F", + "rpmSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/fan9_input", + "pwmSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/pwm5", + "presenceSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/fan5_present", + "ledSysfsPath": "/sys/class/leds/fan5:blue:status/brightness", + "pwmMin": 0, + "pwmMax": 40, + "fanPresentVal": 1, + "fanMissingVal": 0, + "fanGoodLedVal": 1, + "fanFailLedVal": 2, + "rpmMin": 1500 + }, + { + "fanName": "FAN_5_R", + "rpmSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/fan10_input", + "pwmSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/pwm5", + "presenceSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/fan5_present", + "ledSysfsPath": "/sys/class/leds/fan5:blue:status/brightness", + "pwmMin": 0, + "pwmMax": 40, + "fanPresentVal": 1, + "fanMissingVal": 0, + "fanGoodLedVal": 1, + "fanFailLedVal": 2, + "rpmMin": 1500 + }, + { + "fanName": "FAN_6_F", + "rpmSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/fan11_input", + "pwmSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/pwm6", + "presenceSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/fan6_present", + "ledSysfsPath": "/sys/class/leds/fan6:blue:status/brightness", + "pwmMin": 0, + "pwmMax": 40, + "fanPresentVal": 1, + "fanMissingVal": 0, + "fanGoodLedVal": 1, + "fanFailLedVal": 2, + "rpmMin": 1500 + }, + { + "fanName": "FAN_6_R", + "rpmSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/fan12_input", + "pwmSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/pwm6", + "presenceSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/fan6_present", + "ledSysfsPath": "/sys/class/leds/fan6:blue:status/brightness", + "pwmMin": 0, + "pwmMax": 40, + "fanPresentVal": 1, + "fanMissingVal": 0, + "fanGoodLedVal": 1, + "fanFailLedVal": 2, + "rpmMin": 1500 + }, + { + "fanName": "FAN_7_F", + "rpmSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/fan13_input", + "pwmSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/pwm7", + "presenceSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/fan7_present", + "ledSysfsPath": "/sys/class/leds/fan7:blue:status/brightness", + "pwmMin": 0, + "pwmMax": 40, + "fanPresentVal": 1, + "fanMissingVal": 0, + "fanGoodLedVal": 1, + "fanFailLedVal": 2, + "rpmMin": 1500 + }, + { + "fanName": "FAN_7_R", + "rpmSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/fan14_input", + "pwmSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/pwm7", + "presenceSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/fan7_present", + "ledSysfsPath": "/sys/class/leds/fan7:blue:status/brightness", + "pwmMin": 0, + "pwmMax": 40, + "fanPresentVal": 1, + "fanMissingVal": 0, + "fanGoodLedVal": 1, + "fanFailLedVal": 2, + "rpmMin": 1500 + }, + { + "fanName": "FAN_8_F", + "rpmSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/fan15_input", + "pwmSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/pwm8", + "presenceSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/fan8_present", + "ledSysfsPath": "/sys/class/leds/fan8:blue:status/brightness", + "pwmMin": 0, + "pwmMax": 40, + "fanPresentVal": 1, + "fanMissingVal": 0, + "fanGoodLedVal": 1, + "fanFailLedVal": 2, + "rpmMin": 1500 + }, + { + "fanName": "FAN_8_R", + "rpmSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/fan16_input", + "pwmSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/pwm8", + "presenceSysfsPath": "/run/devmap/sensors/MCB_FAN_CPLD/fan8_present", + "ledSysfsPath": "/sys/class/leds/fan8:blue:status/brightness", + "pwmMin": 0, + "pwmMax": 40, + "fanPresentVal": 1, + "fanMissingVal": 0, + "fanGoodLedVal": 1, + "fanFailLedVal": 2, + "rpmMin": 1500 + } + ], + "zones": [ + { + "zoneType": "ZONE_TYPE_MAX", + "zoneName": "zone1", + "sensorNames": [], + "fanNames": [ + "FAN_1_F", + "FAN_1_R", + "FAN_2_F", + "FAN_2_R", + "FAN_3_F", + "FAN_3_R", + "FAN_4_F", + "FAN_4_R", + "FAN_5_F", + "FAN_5_R", + "FAN_6_F", + "FAN_6_R", + "FAN_7_F", + "FAN_7_R", + "FAN_8_F", + "FAN_8_R" + ], + "slope": 0 + } + ] +}