diff --git a/fboss-image/image_builder/templates/centos-09.0/root_files/usr/lib/systemd/system/fan_service.service b/fboss-image/image_builder/templates/centos-09.0/root_files/usr/lib/systemd/system/fan_service.service index 5340fc8f636b8..2bcff9f4c8bac 100644 --- a/fboss-image/image_builder/templates/centos-09.0/root_files/usr/lib/systemd/system/fan_service.service +++ b/fboss-image/image_builder/templates/centos-09.0/root_files/usr/lib/systemd/system/fan_service.service @@ -14,7 +14,7 @@ LimitCORE=32G Environment="PATH=/opt/fboss/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin" Environment="LD_LIBRARY_PATH=/opt/fboss/lib" WorkingDirectory=/opt/fboss -ExecStart=/bin/bash -c 'source /opt/fboss/bin/setup_fboss_env && exec /opt/fboss/bin/fan_service --thrift_ssl_policy=disabled' +ExecStart=/bin/bash -c 'source /opt/fboss/bin/setup_fboss_env && exec /opt/fboss/bin/fan_service --subscribe_to_stats_from_fsdb=true --fsdb_client_ssl_preferred=false --thrift_ssl_policy=disabled' Restart=always RestartSec=30 diff --git a/fboss/agent/hw/sai/switch/SaiSwitchManager.cpp b/fboss/agent/hw/sai/switch/SaiSwitchManager.cpp index a54cdc219ad7e..5451fe865ec4e 100644 --- a/fboss/agent/hw/sai/switch/SaiSwitchManager.cpp +++ b/fboss/agent/hw/sai/switch/SaiSwitchManager.cpp @@ -1302,7 +1302,7 @@ const HwSwitchTemperatureStats SaiSwitchManager::getHwSwitchTemperatureStats() std::chrono::system_clock::now().time_since_epoch().count(); if (currReadTimestamp - lastReadTimestamp < kReadInterval) { - return switchTemperatureStats; + return switchTemperatureStats_; } lastReadTimestamp = currReadTimestamp; diff --git a/fboss/configs/platforms/nexthop/m4340nhp/platform_stack/fan_service.json b/fboss/configs/platforms/nexthop/m4340nhp/platform_stack/fan_service.json new file mode 100644 index 0000000000000..b99c716a1f9da --- /dev/null +++ b/fboss/configs/platforms/nexthop/m4340nhp/platform_stack/fan_service.json @@ -0,0 +1,867 @@ +{ + "pwmBoostOnNumDeadFan": 1, + "pwmBoostOnNumDeadSensor": 0, + "pwmBoostOnNoQsfpAfterInSec": 0, + "pwmBoostValue": 100, + "pwmTransitionValue": 70, + "pwmLowerThreshold": 70, + "pwmUpperThreshold": 100, + "controlInterval": { + "sensorReadInterval": 5, + "pwmUpdateInterval": 5 + }, + "shutdownCmd": "/usr/sbin/shutdown -h now", + "shutdownCondition": { + "numOvertempSensorForShutdown": 2, + "conditions": [ + { + "sensorName": "asic_temp_0_0", + "overtempThreshold": 112.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "asic_temp_0_1", + "overtempThreshold": 112.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "asic_temp_0_2", + "overtempThreshold": 112.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "asic_temp_0_3", + "overtempThreshold": 112.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "asic_temp_0_4", + "overtempThreshold": 112.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "asic_temp_0_5", + "overtempThreshold": 112.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "asic_temp_0_6", + "overtempThreshold": 112.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "asic_temp_0_7", + "overtempThreshold": 112.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "asic_temp_0_8", + "overtempThreshold": 112.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "asic_temp_0_9", + "overtempThreshold": 112.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "asic_temp_0_10", + "overtempThreshold": 112.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "asic_temp_0_11", + "overtempThreshold": 112.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "asic_temp_0_12", + "overtempThreshold": 112.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "asic_temp_0_13", + "overtempThreshold": 112.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "asic_temp_0_14", + "overtempThreshold": 112.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "asic_temp_0_15", + "overtempThreshold": 112.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "ASIC_D0_TEMP0", + "overtempThreshold": 122.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "ASIC_D0_TEMP1", + "overtempThreshold": 122.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "ASIC_D0_TEMP2", + "overtempThreshold": 122.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "ASIC_D0_TEMP3", + "overtempThreshold": 122.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "ASIC_D0_TEMP4", + "overtempThreshold": 122.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "ASIC_D0_TEMP5", + "overtempThreshold": 122.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "ASIC_D0_TEMP6", + "overtempThreshold": 122.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "ASIC_D0_TEMP7", + "overtempThreshold": 122.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "ASIC_D1_TEMP0", + "overtempThreshold": 122.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "ASIC_D1_TEMP1", + "overtempThreshold": 122.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "ASIC_D1_TEMP2", + "overtempThreshold": 122.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "ASIC_D1_TEMP3", + "overtempThreshold": 122.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "ASIC_D1_TEMP4", + "overtempThreshold": 122.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "ASIC_D1_TEMP5", + "overtempThreshold": 122.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "ASIC_D1_TEMP6", + "overtempThreshold": 122.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "ASIC_D1_TEMP7", + "overtempThreshold": 122.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "NIF0_TEMP0", + "overtempThreshold": 122.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "NIF0_TEMP1", + "overtempThreshold": 122.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "NIF1_TEMP0", + "overtempThreshold": 122.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "NIF1_TEMP1", + "overtempThreshold": 122.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "NIF2_TEMP0", + "overtempThreshold": 122.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "NIF2_TEMP1", + "overtempThreshold": 122.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "NIF3_TEMP0", + "overtempThreshold": 122.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "NIF3_TEMP1", + "overtempThreshold": 122.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "SWITCH_CARD_LEFT", + "overtempThreshold": 122.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "SWITCH_CARD_RIGHT", + "overtempThreshold": 122.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "SWITCH_CARD_REAR", + "overtempThreshold": 122.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "SWITCH_CARD_INTAKE", + "overtempThreshold": 122.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "DCDC0_POS0V78_D0_VDDC_TEMP", + "overtempThreshold": 130.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "DCDC1_POS0V78_D1_VDDC_TEMP", + "overtempThreshold": 130.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "CHASSIS_INTAKE_TEMP", + "overtempThreshold": 65.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "CPU_TCTL_TEMP", + "overtempThreshold": 120.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "CPU_TCCD1_TEMP", + "overtempThreshold": 120.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "CPU_TCCD2_TEMP", + "overtempThreshold": 120.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "DIMM1_TEMP", + "overtempThreshold": 95.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "DIMM2_TEMP", + "overtempThreshold": 95.0, + "slidingWindowSize": 10 + }, + { + "sensorName": "NVME_COMPOSITE_TEMP", + "overtempThreshold": 95.0, + "slidingWindowSize": 10 + } + ] + }, + "optics": [ + { + "opticName": "osfp_group", + "aggregationType": "OPTIC_AGGREGATION_TYPE_MAX", + "tempToPwmMaps": { + "OPTIC_TYPE_800_GENERIC": { + "0": 70, + "70": 100 + }, + "OPTIC_TYPE_800_ZR": { + "0": 70, + "70": 100 + }, + "OPTIC_TYPE_400_GENERIC": { + "0": 70, + "70": 100 + }, + "OPTIC_TYPE_200_GENERIC": { + "0": 70, + "70": 100 + }, + "OPTIC_TYPE_100_GENERIC": { + "0": 70, + "70": 100 + } + } + } + ], + "sensors": [ + { + "sensorName": "asic_temp_0_0", + "pwmCalcType": "SENSOR_PWM_CALC_TYPE_FOUR_LINEAR_TABLE", + "normalUpTable": { + "0": 70, + "100": 100 + }, + "normalDownTable": { + "0": 70, + "100": 100 + }, + "failUpTable": { + "0": 70, + "100": 100 + }, + "failDownTable": { + "0": 70, + "100": 100 + } + }, + { + "sensorName": "asic_temp_0_1", + "pwmCalcType": "SENSOR_PWM_CALC_TYPE_FOUR_LINEAR_TABLE", + "normalUpTable": { + "0": 70, + "100": 100 + }, + "normalDownTable": { + "0": 70, + "100": 100 + }, + "failUpTable": { + "0": 70, + "100": 100 + }, + "failDownTable": { + "0": 70, + "100": 100 + } + }, + { + "sensorName": "asic_temp_0_2", + "pwmCalcType": "SENSOR_PWM_CALC_TYPE_FOUR_LINEAR_TABLE", + "normalUpTable": { + "0": 70, + "100": 100 + }, + "normalDownTable": { + "0": 70, + "100": 100 + }, + "failUpTable": { + "0": 70, + "100": 100 + }, + "failDownTable": { + "0": 70, + "100": 100 + } + }, + { + "sensorName": "asic_temp_0_3", + "pwmCalcType": "SENSOR_PWM_CALC_TYPE_FOUR_LINEAR_TABLE", + "normalUpTable": { + "0": 70, + "100": 100 + }, + "normalDownTable": { + "0": 70, + "100": 100 + }, + "failUpTable": { + "0": 70, + "100": 100 + }, + "failDownTable": { + "0": 70, + "100": 100 + } + }, + { + "sensorName": "asic_temp_0_4", + "pwmCalcType": "SENSOR_PWM_CALC_TYPE_FOUR_LINEAR_TABLE", + "normalUpTable": { + "0": 70, + "100": 100 + }, + "normalDownTable": { + "0": 70, + "100": 100 + }, + "failUpTable": { + "0": 70, + "100": 100 + }, + "failDownTable": { + "0": 70, + "100": 100 + } + }, + { + "sensorName": "asic_temp_0_5", + "pwmCalcType": "SENSOR_PWM_CALC_TYPE_FOUR_LINEAR_TABLE", + "normalUpTable": { + "0": 70, + "100": 100 + }, + "normalDownTable": { + "0": 70, + "100": 100 + }, + "failUpTable": { + "0": 70, + "100": 100 + }, + "failDownTable": { + "0": 70, + "100": 100 + } + }, + { + "sensorName": "asic_temp_0_6", + "pwmCalcType": "SENSOR_PWM_CALC_TYPE_FOUR_LINEAR_TABLE", + "normalUpTable": { + "0": 70, + "100": 100 + }, + "normalDownTable": { + "0": 70, + "100": 100 + }, + "failUpTable": { + "0": 70, + "100": 100 + }, + "failDownTable": { + "0": 70, + "100": 100 + } + }, + { + "sensorName": "asic_temp_0_7", + "pwmCalcType": "SENSOR_PWM_CALC_TYPE_FOUR_LINEAR_TABLE", + "normalUpTable": { + "0": 70, + "100": 100 + }, + "normalDownTable": { + "0": 70, + "100": 100 + }, + "failUpTable": { + "0": 70, + "100": 100 + }, + "failDownTable": { + "0": 70, + "100": 100 + } + }, + { + "sensorName": "asic_temp_0_8", + "pwmCalcType": "SENSOR_PWM_CALC_TYPE_FOUR_LINEAR_TABLE", + "normalUpTable": { + "0": 70, + "100": 100 + }, + "normalDownTable": { + "0": 70, + "100": 100 + }, + "failUpTable": { + "0": 70, + "100": 100 + }, + "failDownTable": { + "0": 70, + "100": 100 + } + }, + { + "sensorName": "asic_temp_0_9", + "pwmCalcType": "SENSOR_PWM_CALC_TYPE_FOUR_LINEAR_TABLE", + "normalUpTable": { + "0": 70, + "100": 100 + }, + "normalDownTable": { + "0": 70, + "100": 100 + }, + "failUpTable": { + "0": 70, + "100": 100 + }, + "failDownTable": { + "0": 70, + "100": 100 + } + }, + { + "sensorName": "asic_temp_0_10", + "pwmCalcType": "SENSOR_PWM_CALC_TYPE_FOUR_LINEAR_TABLE", + "normalUpTable": { + "0": 70, + "100": 100 + }, + "normalDownTable": { + "0": 70, + "100": 100 + }, + "failUpTable": { + "0": 70, + "100": 100 + }, + "failDownTable": { + "0": 70, + "100": 100 + } + }, + { + "sensorName": "asic_temp_0_11", + "pwmCalcType": "SENSOR_PWM_CALC_TYPE_FOUR_LINEAR_TABLE", + "normalUpTable": { + "0": 70, + "100": 100 + }, + "normalDownTable": { + "0": 70, + "100": 100 + }, + "failUpTable": { + "0": 70, + "100": 100 + }, + "failDownTable": { + "0": 70, + "100": 100 + } + }, + { + "sensorName": "asic_temp_0_12", + "pwmCalcType": "SENSOR_PWM_CALC_TYPE_FOUR_LINEAR_TABLE", + "normalUpTable": { + "0": 70, + "100": 100 + }, + "normalDownTable": { + "0": 70, + "100": 100 + }, + "failUpTable": { + "0": 70, + "100": 100 + }, + "failDownTable": { + "0": 70, + "100": 100 + } + }, + { + "sensorName": "asic_temp_0_13", + "pwmCalcType": "SENSOR_PWM_CALC_TYPE_FOUR_LINEAR_TABLE", + "normalUpTable": { + "0": 70, + "100": 100 + }, + "normalDownTable": { + "0": 70, + "100": 100 + }, + "failUpTable": { + "0": 70, + "100": 100 + }, + "failDownTable": { + "0": 70, + "100": 100 + } + }, + { + "sensorName": "asic_temp_0_14", + "pwmCalcType": "SENSOR_PWM_CALC_TYPE_FOUR_LINEAR_TABLE", + "normalUpTable": { + "0": 70, + "100": 100 + }, + "normalDownTable": { + "0": 70, + "100": 100 + }, + "failUpTable": { + "0": 70, + "100": 100 + }, + "failDownTable": { + "0": 70, + "100": 100 + } + }, + { + "sensorName": "asic_temp_0_15", + "pwmCalcType": "SENSOR_PWM_CALC_TYPE_FOUR_LINEAR_TABLE", + "normalUpTable": { + "0": 70, + "100": 100 + }, + "normalDownTable": { + "0": 70, + "100": 100 + }, + "failUpTable": { + "0": 70, + "100": 100 + }, + "failDownTable": { + "0": 70, + "100": 100 + } + }, + { + "sensorName": "DCDC0_POS0V78_D0_VDDC_TEMP", + "pwmCalcType": "SENSOR_PWM_CALC_TYPE_FOUR_LINEAR_TABLE", + "normalUpTable": { + "0": 70, + "120": 100 + }, + "normalDownTable": { + "0": 70, + "120": 100 + }, + "failUpTable": { + "0": 70, + "120": 100 + }, + "failDownTable": { + "0": 70, + "120": 100 + } + }, + { + "sensorName": "DCDC1_POS0V78_D1_VDDC_TEMP", + "pwmCalcType": "SENSOR_PWM_CALC_TYPE_FOUR_LINEAR_TABLE", + "normalUpTable": { + "0": 70, + "120": 100 + }, + "normalDownTable": { + "0": 70, + "120": 100 + }, + "failUpTable": { + "0": 70, + "120": 100 + }, + "failDownTable": { + "0": 70, + "120": 100 + } + }, + { + "sensorName": "CHASSIS_INTAKE_TEMP", + "pwmCalcType": "SENSOR_PWM_CALC_TYPE_FOUR_LINEAR_TABLE", + "normalUpTable": { + "0": 70, + "45": 100 + }, + "normalDownTable": { + "0": 70, + "45": 100 + }, + "failUpTable": { + "0": 70, + "45": 100 + }, + "failDownTable": { + "0": 70, + "45": 100 + } + } + ], + "fans": [ + { + "fanName": "fan_1_inner", + "rpmSysfsPath": "/run/devmap/sensors/FAN_CTRL/fan1_input", + "pwmSysfsPath": "/run/devmap/sensors/FAN_CTRL/pwm1", + "presenceSysfsPath": "/run/devmap/sensors/FAN_CTRL/fan1_present", + "goodLedSysfsPath": "/sys/class/leds/fan1_led:blue:status", + "failLedSysfsPath": "/sys/class/leds/fan1_led:amber:status", + "pwmMin": 1, + "pwmMax": 255, + "fanPresentVal": 1, + "fanMissingVal": 0, + "rpmMin": 6000 + }, + { + "fanName": "fan_1_outer", + "rpmSysfsPath": "/run/devmap/sensors/FAN_CTRL/fan2_input", + "pwmSysfsPath": "/run/devmap/sensors/FAN_CTRL/pwm1", + "presenceSysfsPath": "/run/devmap/sensors/FAN_CTRL/fan1_present", + "goodLedSysfsPath": "/sys/class/leds/fan1_led:blue:status", + "failLedSysfsPath": "/sys/class/leds/fan1_led:amber:status", + "pwmMin": 1, + "pwmMax": 255, + "fanPresentVal": 1, + "fanMissingVal": 0, + "rpmMin": 6000 + }, + { + "fanName": "fan_2_inner", + "rpmSysfsPath": "/run/devmap/sensors/FAN_CTRL/fan3_input", + "pwmSysfsPath": "/run/devmap/sensors/FAN_CTRL/pwm2", + "presenceSysfsPath": "/run/devmap/sensors/FAN_CTRL/fan2_present", + "goodLedSysfsPath": "/sys/class/leds/fan2_led:blue:status", + "failLedSysfsPath": "/sys/class/leds/fan2_led:amber:status", + "pwmMin": 1, + "pwmMax": 255, + "fanPresentVal": 1, + "fanMissingVal": 0, + "rpmMin": 6000 + }, + { + "fanName": "fan_2_outer", + "rpmSysfsPath": "/run/devmap/sensors/FAN_CTRL/fan4_input", + "pwmSysfsPath": "/run/devmap/sensors/FAN_CTRL/pwm2", + "presenceSysfsPath": "/run/devmap/sensors/FAN_CTRL/fan2_present", + "goodLedSysfsPath": "/sys/class/leds/fan2_led:blue:status", + "failLedSysfsPath": "/sys/class/leds/fan2_led:amber:status", + "pwmMin": 1, + "pwmMax": 255, + "fanPresentVal": 1, + "fanMissingVal": 0, + "rpmMin": 6000 + }, + { + "fanName": "fan_3_inner", + "rpmSysfsPath": "/run/devmap/sensors/FAN_CTRL/fan5_input", + "pwmSysfsPath": "/run/devmap/sensors/FAN_CTRL/pwm3", + "presenceSysfsPath": "/run/devmap/sensors/FAN_CTRL/fan3_present", + "goodLedSysfsPath": "/sys/class/leds/fan3_led:blue:status", + "failLedSysfsPath": "/sys/class/leds/fan3_led:amber:status", + "pwmMin": 1, + "pwmMax": 255, + "fanPresentVal": 1, + "fanMissingVal": 0, + "rpmMin": 6000 + }, + { + "fanName": "fan_3_outer", + "rpmSysfsPath": "/run/devmap/sensors/FAN_CTRL/fan6_input", + "pwmSysfsPath": "/run/devmap/sensors/FAN_CTRL/pwm3", + "presenceSysfsPath": "/run/devmap/sensors/FAN_CTRL/fan3_present", + "goodLedSysfsPath": "/sys/class/leds/fan3_led:blue:status", + "failLedSysfsPath": "/sys/class/leds/fan3_led:amber:status", + "pwmMin": 1, + "pwmMax": 255, + "fanPresentVal": 1, + "fanMissingVal": 0, + "rpmMin": 6000 + }, + { + "fanName": "fan_4_inner", + "rpmSysfsPath": "/run/devmap/sensors/FAN_CTRL/fan7_input", + "pwmSysfsPath": "/run/devmap/sensors/FAN_CTRL/pwm4", + "presenceSysfsPath": "/run/devmap/sensors/FAN_CTRL/fan4_present", + "goodLedSysfsPath": "/sys/class/leds/fan4_led:blue:status", + "failLedSysfsPath": "/sys/class/leds/fan4_led:amber:status", + "pwmMin": 1, + "pwmMax": 255, + "fanPresentVal": 1, + "fanMissingVal": 0, + "rpmMin": 6000 + }, + { + "fanName": "fan_4_outer", + "rpmSysfsPath": "/run/devmap/sensors/FAN_CTRL/fan8_input", + "pwmSysfsPath": "/run/devmap/sensors/FAN_CTRL/pwm4", + "presenceSysfsPath": "/run/devmap/sensors/FAN_CTRL/fan4_present", + "goodLedSysfsPath": "/sys/class/leds/fan4_led:blue:status", + "failLedSysfsPath": "/sys/class/leds/fan4_led:amber:status", + "pwmMin": 1, + "pwmMax": 255, + "fanPresentVal": 1, + "fanMissingVal": 0, + "rpmMin": 6000 + }, + { + "fanName": "fan_5_inner", + "rpmSysfsPath": "/run/devmap/sensors/FAN_CTRL/fan9_input", + "pwmSysfsPath": "/run/devmap/sensors/FAN_CTRL/pwm5", + "presenceSysfsPath": "/run/devmap/sensors/FAN_CTRL/fan5_present", + "goodLedSysfsPath": "/sys/class/leds/fan5_led:blue:status", + "failLedSysfsPath": "/sys/class/leds/fan5_led:amber:status", + "pwmMin": 1, + "pwmMax": 255, + "fanPresentVal": 1, + "fanMissingVal": 0, + "rpmMin": 6000 + }, + { + "fanName": "fan_5_outer", + "rpmSysfsPath": "/run/devmap/sensors/FAN_CTRL/fan10_input", + "pwmSysfsPath": "/run/devmap/sensors/FAN_CTRL/pwm5", + "presenceSysfsPath": "/run/devmap/sensors/FAN_CTRL/fan5_present", + "goodLedSysfsPath": "/sys/class/leds/fan5_led:blue:status", + "failLedSysfsPath": "/sys/class/leds/fan5_led:amber:status", + "pwmMin": 1, + "pwmMax": 255, + "fanPresentVal": 1, + "fanMissingVal": 0, + "rpmMin": 6000 + } + ], + "zones": [ + { + "zoneType": "ZONE_TYPE_MAX", + "zoneName": "zone1", + "sensorNames": [ + "asic_temp_0_0", + "asic_temp_0_1", + "asic_temp_0_2", + "asic_temp_0_3", + "asic_temp_0_4", + "asic_temp_0_5", + "asic_temp_0_6", + "asic_temp_0_7", + "asic_temp_0_8", + "asic_temp_0_9", + "asic_temp_0_10", + "asic_temp_0_11", + "asic_temp_0_12", + "asic_temp_0_13", + "asic_temp_0_14", + "asic_temp_0_15", + "DCDC0_POS0V78_D0_VDDC_TEMP", + "DCDC1_POS0V78_D1_VDDC_TEMP", + "CHASSIS_INTAKE_TEMP", + "osfp_group" + ], + "fanNames": [ + "fan_1_inner", + "fan_1_outer", + "fan_2_inner", + "fan_2_outer", + "fan_3_inner", + "fan_3_outer", + "fan_4_inner", + "fan_4_outer", + "fan_5_inner", + "fan_5_outer" + ], + "slope": 5 + } + ] +} diff --git a/fboss/configs/platforms/nexthop/m4340nhp/platform_stack/led_manager.json b/fboss/configs/platforms/nexthop/m4340nhp/platform_stack/led_manager.json new file mode 100644 index 0000000000000..35a2652f9ce21 --- /dev/null +++ b/fboss/configs/platforms/nexthop/m4340nhp/platform_stack/led_manager.json @@ -0,0 +1,108 @@ +{ + "systemLedConfig": { + "presentLedSysfsPath": "/sys/class/leds/sys_led:blue:status/brightness", + "absentLedSysfsPath": "/sys/class/leds/sys_led:amber:status/brightness" + }, + "fruTypeLedConfigs": { + "FAN": { + "presentLedSysfsPath": "/sys/class/leds/fan_led:blue:status/brightness", + "absentLedSysfsPath": "/sys/class/leds/fan_led:amber:status/brightness" + }, + "PSU": { + "presentLedSysfsPath": "/sys/class/leds/psu_led:blue:status/brightness", + "absentLedSysfsPath": "/sys/class/leds/psu_led:amber:status/brightness" + } + }, + "fruConfigs": [ + { + "fruName": "FAN1", + "fruType": "FAN", + "presenceDetection": { + "sysfsFileHandle": { + "presenceFilePath": "/run/devmap/sensors/FAN_CTRL/fan1_present", + "desiredValue": 1 + } + } + }, + { + "fruName": "FAN2", + "fruType": "FAN", + "presenceDetection": { + "sysfsFileHandle": { + "presenceFilePath": "/run/devmap/sensors/FAN_CTRL/fan2_present", + "desiredValue": 1 + } + } + }, + { + "fruName": "FAN3", + "fruType": "FAN", + "presenceDetection": { + "sysfsFileHandle": { + "presenceFilePath": "/run/devmap/sensors/FAN_CTRL/fan3_present", + "desiredValue": 1 + } + } + }, + { + "fruName": "FAN4", + "fruType": "FAN", + "presenceDetection": { + "sysfsFileHandle": { + "presenceFilePath": "/run/devmap/sensors/FAN_CTRL/fan4_present", + "desiredValue": 1 + } + } + }, + { + "fruName": "FAN5", + "fruType": "FAN", + "presenceDetection": { + "sysfsFileHandle": { + "presenceFilePath": "/run/devmap/sensors/FAN_CTRL/fan5_present", + "desiredValue": 1 + } + } + }, + { + "fruName": "PSU1", + "fruType": "PSU", + "presenceDetection": { + "sysfsFileHandle": { + "presenceFilePath": "/run/devmap/sensors/PSU_PRESENT/psu1_present", + "desiredValue": 1 + } + } + }, + { + "fruName": "PSU2", + "fruType": "PSU", + "presenceDetection": { + "sysfsFileHandle": { + "presenceFilePath": "/run/devmap/sensors/PSU_PRESENT/psu2_present", + "desiredValue": 1 + } + } + }, + { + "fruName": "PSU3", + "fruType": "PSU", + "presenceDetection": { + "sysfsFileHandle": { + "presenceFilePath": "/run/devmap/sensors/PSU_PRESENT/psu3_present", + "desiredValue": 1 + } + } + }, + { + "fruName": "PSU4", + "fruType": "PSU", + "presenceDetection": { + "sysfsFileHandle": { + "presenceFilePath": "/run/devmap/sensors/PSU_PRESENT/psu4_present", + "desiredValue": 1 + } + } + } + ] +} diff --git a/fboss/configs/platforms/nexthop/m4340nhp/platform_stack/platform_manager.json b/fboss/configs/platforms/nexthop/m4340nhp/platform_stack/platform_manager.json new file mode 100644 index 0000000000000..00790c389b3ca --- /dev/null +++ b/fboss/configs/platforms/nexthop/m4340nhp/platform_stack/platform_manager.json @@ -0,0 +1,766 @@ +{ + "platformName": "M4340NHP", + "rootPmUnitName": "SCM", + "rootSlotType": "SCM_SLOT", + "slotTypeConfigs": { + "SCM_SLOT": { + "numOutgoingI2cBuses": 10, + "idpromConfig": { + "busName": "CPU_BUS@0", + "address": "0x50", + "kernelDeviceName": "24c64" + }, + "pmUnitName": "SCM" + }, + "SMB_SLOT": { + "numOutgoingI2cBuses": 2, + "idpromConfig": { + "busName": "INCOMING@1", + "address": "0x50", + "kernelDeviceName": "24c64" + }, + "pmUnitName": "SMB" + } + }, + "pmUnitConfigs": { + "SCM": { + "pluggedInSlotType": "SCM_SLOT", + "pciDeviceConfigs": [ + { + "pmUnitScopedName": "SCM_IOB", + "vendorId": "0x10ee", + "deviceId": "0x7016", + "subSystemVendorId": "0x20a4", + "subSystemDeviceId": "0x0001", + "i2cAdapterBlockConfigs": [ + { + "pmUnitScopedNamePrefix": "SCM_IOB_I2C", + "deviceName": "i2c_master", + "csrOffsetCalc": "0x40000 + ({adapterIndex} - {startAdapterIndex}) * 0x200", + "startAdapterIndex": 0, + "numAdapters": 10 + } + ], + "infoRomConfigs": [ + { + "pmUnitScopedName": "SCM_IOB_INFO_ROM", + "deviceName": "fpga_info_iob", + "csrOffset": "0x0000" + } + ] + } + ], + "i2cDeviceConfigs": [ + { + "busName": "SCM_IOB_I2C_3", + "address": "0x41", + "kernelDeviceName": "adm1266", + "pmUnitScopedName": "DPM" + }, + { + "busName": "SCM_IOB_I2C_4", + "address": "0x60", + "kernelDeviceName": "isl68221", + "pmUnitScopedName": "SVI_VR" + } + ], + "embeddedSensorConfigs": [ + { + "pmUnitScopedName": "CPU_TEMP", + "sysfsPath": "/sys/bus/pci/drivers/k10temp/0000:00:18.3" + }, + { + "pmUnitScopedName": "NVME_TEMP", + "sysfsPath": "/sys/class/nvme/nvme0" + }, + { + "pmUnitScopedName": "NIC_TEMP", + "sysfsPath": "/sys/bus/pci/devices/0000:02:00.0" + }, + { + "pmUnitScopedName": "DIMM1_TEMP", + "sysfsPath": "/run/nexthop_bsp/sensors/DIMM1_TEMP" + }, + { + "pmUnitScopedName": "DIMM2_TEMP", + "sysfsPath": "/run/nexthop_bsp/sensors/DIMM2_TEMP" + } + ], + "outgoingSlotConfigs": { + "SMB_SLOT@0": { + "slotType": "SMB_SLOT", + "outgoingI2cBusNames": [ + "SCM_IOB_I2C_5", + "SCM_IOB_I2C_6" + ] + } + } + }, + "SMB": { + "pluggedInSlotType": "SMB_SLOT", + "pciDeviceConfigs": [ + { + "pmUnitScopedName": "SMB_IOB", + "vendorId": "0x10ee", + "deviceId": "0x7024", + "subSystemVendorId": "0x10ee", + "subSystemDeviceId": "0x0007", + "miscCtrlConfigs": [ + { + "pmUnitScopedName": "SMB_IOB_PSU_PRESENT", + "deviceName": "psu_present", + "csrOffset": "0x2c" + } + ], + "i2cAdapterBlockConfigs": [ + { + "pmUnitScopedNamePrefix": "SMB_IOB_I2C", + "deviceName": "i2c_master", + "csrOffsetCalc": "0x40000 + ({adapterIndex} - {startAdapterIndex}) * 0x200", + "startAdapterIndex": 0, + "numAdapters": 7 + }, + { + "pmUnitScopedNamePrefix": "SMB_OSFP_I2C", + "deviceName": "i2c_master", + "csrOffsetCalc": "0x40E00 + ({adapterIndex} - {startAdapterIndex}) * 0x200", + "startAdapterIndex": 1, + "numAdapters": 64 + } + ], + "fanTachoPwmConfigs": [ + { + "fpgaIpBlockConfig": { + "pmUnitScopedName": "FAN_CTRL", + "deviceName": "fan_ctrl", + "csrOffset": "0x00a0" + }, + "numFans": 5 + } + ], + "ledCtrlConfigs": [ + { + "fpgaIpBlockConfig": { + "pmUnitScopedName": "SYSTEM_STATUS_LED", + "deviceName": "sys_led", + "csrOffset": "0x9c" + }, + "portNumber": -1, + "ledId": 1 + }, + { + "fpgaIpBlockConfig": { + "pmUnitScopedName": "FAN_STATUS_LED", + "deviceName": "fan_led", + "csrOffset": "0x9c" + }, + "portNumber": -1, + "ledId": 1 + }, + { + "fpgaIpBlockConfig": { + "pmUnitScopedName": "PSU_STATUS_LED", + "deviceName": "psu_led", + "csrOffset": "0x9c" + }, + "portNumber": -1, + "ledId": 1 + } + ], + "ledCtrlBlockConfigs": [ + { + "pmUnitScopedNamePrefix": "SMB_PORT_LED", + "deviceName": "port_led", + "csrOffsetCalc": "0x60", + "numPorts": 8, + "ledPerPort": 1, + "startPort": 1 + }, + { + "pmUnitScopedNamePrefix": "SMB_PORT_LED", + "deviceName": "port_led", + "csrOffsetCalc": "0x64", + "numPorts": 8, + "ledPerPort": 1, + "startPort": 9 + }, + { + "pmUnitScopedNamePrefix": "SMB_PORT_LED", + "deviceName": "port_led", + "csrOffsetCalc": "0x68", + "numPorts": 8, + "ledPerPort": 1, + "startPort": 17 + }, + { + "pmUnitScopedNamePrefix": "SMB_PORT_LED", + "deviceName": "port_led", + "csrOffsetCalc": "0x6c", + "numPorts": 8, + "ledPerPort": 1, + "startPort": 25 + }, + { + "pmUnitScopedNamePrefix": "SMB_PORT_LED", + "deviceName": "port_led", + "csrOffsetCalc": "0x70", + "numPorts": 8, + "ledPerPort": 1, + "startPort": 33 + }, + { + "pmUnitScopedNamePrefix": "SMB_PORT_LED", + "deviceName": "port_led", + "csrOffsetCalc": "0x74", + "numPorts": 8, + "ledPerPort": 1, + "startPort": 41 + }, + { + "pmUnitScopedNamePrefix": "SMB_PORT_LED", + "deviceName": "port_led", + "csrOffsetCalc": "0x78", + "numPorts": 8, + "ledPerPort": 1, + "startPort": 49 + }, + { + "pmUnitScopedNamePrefix": "SMB_PORT_LED", + "deviceName": "port_led", + "csrOffsetCalc": "0x7c", + "numPorts": 8, + "ledPerPort": 1, + "startPort": 57 + }, + { + "pmUnitScopedNamePrefix": "MGMT_QSFP_LED", + "deviceName": "port_led", + "csrOffsetCalc": "0x9c", + "numPorts": 2, + "ledPerPort": 1, + "lanesPerPort": 4, + "startPort": 65 + } + ], + "xcvrCtrlBlockConfigs": [ + { + "pmUnitScopedNamePrefix": "OSFP", + "deviceName": "xcvr_ctrl", + "csrOffsetCalc": "0x0030", + "startPort": 1, + "numPorts": 32 + }, + { + "pmUnitScopedNamePrefix": "OSFP", + "deviceName": "xcvr_ctrl", + "csrOffsetCalc": "0x0040", + "startPort": 33, + "numPorts": 32 + }, + { + "pmUnitScopedNamePrefix": "QSFP", + "deviceName": "xcvr_ctrl", + "csrOffsetCalc": "0x0", + "startPort": 65, + "numPorts": 2 + } + ], + "infoRomConfigs": [ + { + "pmUnitScopedName": "SMB_IOB_INFO_ROM", + "deviceName": "fpga_info_iob", + "csrOffset": "0x0000" + } + ] + } + ], + "i2cDeviceConfigs": [ + { + "busName": "INCOMING@0", + "address": "0x41", + "kernelDeviceName": "adm1266", + "pmUnitScopedName": "DPM_1" + }, + { + "busName": "INCOMING@0", + "address": "0x43", + "kernelDeviceName": "adm1266", + "pmUnitScopedName": "DPM_2" + }, + { + "busName": "INCOMING@0", + "address": "0x45", + "kernelDeviceName": "adm1266", + "pmUnitScopedName": "DPM_3" + }, + { + "busName": "SMB_IOB_I2C_0", + "address": "0x71", + "kernelDeviceName": "fpga-mux", + "pmUnitScopedName": "SMB_MUX_0", + "numOutgoingChannels": 4 + }, + { + "busName": "SMB_IOB_I2C_1", + "address": "0x71", + "kernelDeviceName": "fpga-mux", + "pmUnitScopedName": "SMB_MUX_1", + "numOutgoingChannels": 4 + }, + { + "busName": "SMB_IOB_I2C_2", + "address": "0x71", + "kernelDeviceName": "fpga-mux", + "pmUnitScopedName": "SMB_MUX_2", + "numOutgoingChannels": 3 + }, + { + "busName": "SMB_IOB_I2C_3", + "address": "0x71", + "kernelDeviceName": "fpga-mux", + "pmUnitScopedName": "SMB_MUX_3", + "numOutgoingChannels": 4 + }, + { + "busName": "SMB_MUX_1@3", + "address": "0x48", + "kernelDeviceName": "tmp464", + "pmUnitScopedName": "SWITCH_CARD_TEMP_SENSOR" + }, + { + "busName": "SMB_MUX_1@3", + "address": "0x49", + "kernelDeviceName": "tmp468", + "pmUnitScopedName": "SWITCH_CARD_TEMP_SENSOR_1" + }, + { + "busName": "SMB_MUX_1@3", + "address": "0x4a", + "kernelDeviceName": "tmp468", + "pmUnitScopedName": "SWITCH_CARD_TEMP_SENSOR_2" + }, + { + "busName": "SMB_MUX_1@3", + "address": "0x4b", + "kernelDeviceName": "tmp468", + "pmUnitScopedName": "SWITCH_CARD_TEMP_SENSOR_3" + }, + { + "busName": "SMB_MUX_1@1", + "address": "0x70", + "kernelDeviceName": "pmbus", + "pmUnitScopedName": "DCDC0" + }, + { + "busName": "SMB_MUX_1@1", + "address": "0x72", + "kernelDeviceName": "pmbus", + "pmUnitScopedName": "DCDC1" + }, + { + "busName": "SMB_MUX_3@0", + "address": "0x60", + "kernelDeviceName": "raa228228", + "pmUnitScopedName": "DCDC2" + }, + { + "busName": "SMB_MUX_1@0", + "address": "0x60", + "kernelDeviceName": "raa228228", + "pmUnitScopedName": "DCDC3" + }, + { + "busName": "SMB_MUX_3@0", + "address": "0x61", + "kernelDeviceName": "raa228228", + "pmUnitScopedName": "DCDC4" + }, + { + "busName": "SMB_MUX_1@0", + "address": "0x61", + "kernelDeviceName": "raa228228", + "pmUnitScopedName": "DCDC5" + }, + { + "busName": "SMB_MUX_1@0", + "address": "0x76", + "kernelDeviceName": "raa228228", + "pmUnitScopedName": "DCDC6" + }, + { + "busName": "SMB_MUX_3@0", + "address": "0x62", + "kernelDeviceName": "raa228228", + "pmUnitScopedName": "DCDC7" + }, + { + "busName": "SMB_MUX_1@0", + "address": "0x62", + "kernelDeviceName": "raa228228", + "pmUnitScopedName": "DCDC8" + }, + { + "busName": "SMB_MUX_3@0", + "address": "0x63", + "kernelDeviceName": "raa228228", + "pmUnitScopedName": "DCDC9" + }, + { + "busName": "SMB_MUX_1@0", + "address": "0x63", + "kernelDeviceName": "raa228228", + "pmUnitScopedName": "DCDC10" + }, + { + "busName": "SMB_MUX_1@0", + "address": "0x72", + "kernelDeviceName": "raa228228", + "pmUnitScopedName": "DCDC11" + }, + { + "busName": "SMB_MUX_3@0", + "address": "0x72", + "kernelDeviceName": "raa228228", + "pmUnitScopedName": "DCDC12" + }, + { + "busName": "SMB_MUX_3@0", + "address": "0x74", + "kernelDeviceName": "raa228228", + "pmUnitScopedName": "DCDC13" + }, + { + "busName": "SMB_MUX_1@0", + "address": "0x74", + "kernelDeviceName": "raa228228", + "pmUnitScopedName": "DCDC14" + }, + { + "busName": "SMB_MUX_3@0", + "address": "0x75", + "kernelDeviceName": "raa228228", + "pmUnitScopedName": "DCDC15" + }, + { + "busName": "SMB_MUX_1@0", + "address": "0x75", + "kernelDeviceName": "raa228228", + "pmUnitScopedName": "DCDC16" + }, + { + "busName": "SMB_MUX_3@0", + "address": "0x76", + "kernelDeviceName": "raa228228", + "pmUnitScopedName": "DCDC17" + }, + { + "busName": "SMB_MUX_0@3", + "address": "0x5a", + "kernelDeviceName": "pmbus", + "pmUnitScopedName": "PSU1" + }, + { + "busName": "SMB_MUX_0@3", + "address": "0x52", + "kernelDeviceName": "24c02", + "pmUnitScopedName": "PSU1_EEPROM", + "isEeprom": true + }, + { + "busName": "SMB_MUX_0@2", + "address": "0x5a", + "kernelDeviceName": "pmbus", + "pmUnitScopedName": "PSU2" + }, + { + "busName": "SMB_MUX_0@2", + "address": "0x52", + "kernelDeviceName": "24c02", + "pmUnitScopedName": "PSU2_EEPROM", + "isEeprom": true + }, + { + "busName": "SMB_MUX_0@1", + "address": "0x5a", + "kernelDeviceName": "pmbus", + "pmUnitScopedName": "PSU3" + }, + { + "busName": "SMB_MUX_0@1", + "address": "0x52", + "kernelDeviceName": "24c02", + "pmUnitScopedName": "PSU3_EEPROM", + "isEeprom": true + }, + { + "busName": "SMB_MUX_0@0", + "address": "0x5a", + "kernelDeviceName": "pmbus", + "pmUnitScopedName": "PSU4" + }, + { + "busName": "SMB_MUX_0@0", + "address": "0x52", + "kernelDeviceName": "24c02", + "pmUnitScopedName": "PSU4_EEPROM", + "isEeprom": true + }, + { + "busName": "SMB_MUX_2@0", + "address": "0x4c", + "kernelDeviceName": "lm90", + "pmUnitScopedName": "MGMT_TEMP_SENSOR" + }, + { + "busName": "SMB_IOB_I2C_0", + "address": "0x50", + "kernelDeviceName": "24c64", + "pmUnitScopedName": "PDC_EEPROM", + "isEeprom": true + }, + { + "busName": "SMB_IOB_I2C_4", + "address": "0x50", + "kernelDeviceName": "24c64", + "pmUnitScopedName": "FAN_EEPROM", + "isEeprom": true + }, + { + "busName": "SMB_IOB_I2C_4", + "address": "0x40", + "kernelDeviceName": "ina230", + "pmUnitScopedName": "FAN_POWER_MONITOR" + }, + { + "busName": "SMB_MUX_2@0", + "address": "0x50", + "kernelDeviceName": "24c64", + "pmUnitScopedName": "MGMT_EEPROM", + "isEeprom": true + } + ] + } + }, + "i2cAdaptersFromCpu": [ + "CPU_BUS@0" + ], + "symbolicLinkToDevicePath": { + "/run/devmap/eeproms/CHASSIS_EEPROM": "/SMB_SLOT@0/[IDPROM]", + "/run/devmap/eeproms/SCM_EEPROM": "/[IDPROM]", + "/run/devmap/sensors/DPM": "/[DPM]", + "/run/devmap/sensors/SVI_VR": "/[SVI_VR]", + "/run/devmap/sensors/DPM_1": "/SMB_SLOT@0/[DPM_1]", + "/run/devmap/sensors/DPM_2": "/SMB_SLOT@0/[DPM_2]", + "/run/devmap/sensors/DPM_3": "/SMB_SLOT@0/[DPM_3]", + "/run/devmap/sensors/DIMM1_TEMP": "/[DIMM1_TEMP]", + "/run/devmap/sensors/DIMM2_TEMP": "/[DIMM2_TEMP]", + "/run/devmap/sensors/CPU_TEMP": "/[CPU_TEMP]", + "/run/devmap/sensors/NVME_TEMP": "/[NVME_TEMP]", + "/run/devmap/sensors/NIC_TEMP": "/[NIC_TEMP]", + "/run/devmap/fpgas/SCM_IOB": "/[SCM_IOB]", + "/run/devmap/inforoms/SCM_IOB_INFO_ROM": "/[SCM_IOB_INFO_ROM]", + "/run/devmap/i2c-busses/SCM_IOB_I2C_0": "/[SCM_IOB_I2C_0]", + "/run/devmap/i2c-busses/SCM_IOB_I2C_1": "/[SCM_IOB_I2C_1]", + "/run/devmap/i2c-busses/SCM_IOB_I2C_2": "/[SCM_IOB_I2C_2]", + "/run/devmap/i2c-busses/SCM_IOB_I2C_3": "/[SCM_IOB_I2C_3]", + "/run/devmap/i2c-busses/SCM_IOB_I2C_4": "/[SCM_IOB_I2C_4]", + "/run/devmap/i2c-busses/SCM_IOB_I2C_5": "/[SCM_IOB_I2C_5]", + "/run/devmap/i2c-busses/SCM_IOB_I2C_6": "/[SCM_IOB_I2C_6]", + "/run/devmap/i2c-busses/SCM_IOB_I2C_7": "/[SCM_IOB_I2C_7]", + "/run/devmap/i2c-busses/SCM_IOB_I2C_8": "/[SCM_IOB_I2C_8]", + "/run/devmap/i2c-busses/SCM_IOB_I2C_9": "/[SCM_IOB_I2C_9]", + "/run/devmap/fpgas/SMB_IOB": "/SMB_SLOT@0/[SMB_IOB]", + "/run/devmap/inforoms/SMB_IOB_INFO_ROM": "/SMB_SLOT@0/[SMB_IOB_INFO_ROM]", + "/run/devmap/i2c-busses/SMB_IOB_I2C_0": "/SMB_SLOT@0/[SMB_IOB_I2C_0]", + "/run/devmap/i2c-busses/SMB_IOB_I2C_1": "/SMB_SLOT@0/[SMB_IOB_I2C_1]", + "/run/devmap/i2c-busses/SMB_IOB_I2C_2": "/SMB_SLOT@0/[SMB_IOB_I2C_2]", + "/run/devmap/i2c-busses/SMB_IOB_I2C_3": "/SMB_SLOT@0/[SMB_IOB_I2C_3]", + "/run/devmap/i2c-busses/SMB_IOB_I2C_4": "/SMB_SLOT@0/[SMB_IOB_I2C_4]", + "/run/devmap/i2c-busses/SMB_IOB_I2C_5": "/SMB_SLOT@0/[SMB_IOB_I2C_5]", + "/run/devmap/i2c-busses/SMB_IOB_I2C_6": "/SMB_SLOT@0/[SMB_IOB_I2C_6]", + "/run/devmap/sensors/PSU_PRESENT": "/SMB_SLOT@0/[SMB_IOB_PSU_PRESENT]", + "/run/devmap/sensors/FAN_CTRL": "/SMB_SLOT@0/[FAN_CTRL]", + "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR": "/SMB_SLOT@0/[SWITCH_CARD_TEMP_SENSOR]", + "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR_1": "/SMB_SLOT@0/[SWITCH_CARD_TEMP_SENSOR_1]", + "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR_2": "/SMB_SLOT@0/[SWITCH_CARD_TEMP_SENSOR_2]", + "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR_3": "/SMB_SLOT@0/[SWITCH_CARD_TEMP_SENSOR_3]", + "/run/devmap/eeproms/PSU1_EEPROM": "/SMB_SLOT@0/[PSU1_EEPROM]", + "/run/devmap/eeproms/PSU2_EEPROM": "/SMB_SLOT@0/[PSU2_EEPROM]", + "/run/devmap/eeproms/PSU3_EEPROM": "/SMB_SLOT@0/[PSU3_EEPROM]", + "/run/devmap/eeproms/PSU4_EEPROM": "/SMB_SLOT@0/[PSU4_EEPROM]", + "/run/devmap/sensors/PSU1": "/SMB_SLOT@0/[PSU1]", + "/run/devmap/sensors/PSU2": "/SMB_SLOT@0/[PSU2]", + "/run/devmap/sensors/PSU3": "/SMB_SLOT@0/[PSU3]", + "/run/devmap/sensors/PSU4": "/SMB_SLOT@0/[PSU4]", + "/run/devmap/sensors/MGMT_TEMP_SENSOR": "/SMB_SLOT@0/[MGMT_TEMP_SENSOR]", + "/run/devmap/sensors/DCDC0": "/SMB_SLOT@0/[DCDC0]", + "/run/devmap/sensors/DCDC1": "/SMB_SLOT@0/[DCDC1]", + "/run/devmap/sensors/DCDC2": "/SMB_SLOT@0/[DCDC2]", + "/run/devmap/sensors/DCDC3": "/SMB_SLOT@0/[DCDC3]", + "/run/devmap/sensors/DCDC4": "/SMB_SLOT@0/[DCDC4]", + "/run/devmap/sensors/DCDC5": "/SMB_SLOT@0/[DCDC5]", + "/run/devmap/sensors/DCDC6": "/SMB_SLOT@0/[DCDC6]", + "/run/devmap/sensors/DCDC7": "/SMB_SLOT@0/[DCDC7]", + "/run/devmap/sensors/DCDC8": "/SMB_SLOT@0/[DCDC8]", + "/run/devmap/sensors/DCDC9": "/SMB_SLOT@0/[DCDC9]", + "/run/devmap/sensors/DCDC10": "/SMB_SLOT@0/[DCDC10]", + "/run/devmap/sensors/DCDC11": "/SMB_SLOT@0/[DCDC11]", + "/run/devmap/sensors/DCDC12": "/SMB_SLOT@0/[DCDC12]", + "/run/devmap/sensors/DCDC13": "/SMB_SLOT@0/[DCDC13]", + "/run/devmap/sensors/DCDC14": "/SMB_SLOT@0/[DCDC14]", + "/run/devmap/sensors/DCDC15": "/SMB_SLOT@0/[DCDC15]", + "/run/devmap/sensors/DCDC16": "/SMB_SLOT@0/[DCDC16]", + "/run/devmap/sensors/DCDC17": "/SMB_SLOT@0/[DCDC17]", + "/run/devmap/xcvrs/xcvr_io_1": "/SMB_SLOT@0/[SMB_OSFP_I2C_1]", + "/run/devmap/xcvrs/xcvr_ctrl_1": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_1]", + "/run/devmap/xcvrs/xcvr_io_2": "/SMB_SLOT@0/[SMB_OSFP_I2C_2]", + "/run/devmap/xcvrs/xcvr_ctrl_2": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_2]", + "/run/devmap/xcvrs/xcvr_io_3": "/SMB_SLOT@0/[SMB_OSFP_I2C_3]", + "/run/devmap/xcvrs/xcvr_ctrl_3": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_3]", + "/run/devmap/xcvrs/xcvr_io_4": "/SMB_SLOT@0/[SMB_OSFP_I2C_4]", + "/run/devmap/xcvrs/xcvr_ctrl_4": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_4]", + "/run/devmap/xcvrs/xcvr_io_5": "/SMB_SLOT@0/[SMB_OSFP_I2C_5]", + "/run/devmap/xcvrs/xcvr_ctrl_5": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_5]", + "/run/devmap/xcvrs/xcvr_io_6": "/SMB_SLOT@0/[SMB_OSFP_I2C_6]", + "/run/devmap/xcvrs/xcvr_ctrl_6": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_6]", + "/run/devmap/xcvrs/xcvr_io_7": "/SMB_SLOT@0/[SMB_OSFP_I2C_7]", + "/run/devmap/xcvrs/xcvr_ctrl_7": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_7]", + "/run/devmap/xcvrs/xcvr_io_8": "/SMB_SLOT@0/[SMB_OSFP_I2C_8]", + "/run/devmap/xcvrs/xcvr_ctrl_8": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_8]", + "/run/devmap/xcvrs/xcvr_io_9": "/SMB_SLOT@0/[SMB_OSFP_I2C_9]", + "/run/devmap/xcvrs/xcvr_ctrl_9": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_9]", + "/run/devmap/xcvrs/xcvr_io_10": "/SMB_SLOT@0/[SMB_OSFP_I2C_10]", + "/run/devmap/xcvrs/xcvr_ctrl_10": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_10]", + "/run/devmap/xcvrs/xcvr_io_11": "/SMB_SLOT@0/[SMB_OSFP_I2C_11]", + "/run/devmap/xcvrs/xcvr_ctrl_11": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_11]", + "/run/devmap/xcvrs/xcvr_io_12": "/SMB_SLOT@0/[SMB_OSFP_I2C_12]", + "/run/devmap/xcvrs/xcvr_ctrl_12": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_12]", + "/run/devmap/xcvrs/xcvr_io_13": "/SMB_SLOT@0/[SMB_OSFP_I2C_13]", + "/run/devmap/xcvrs/xcvr_ctrl_13": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_13]", + "/run/devmap/xcvrs/xcvr_io_14": "/SMB_SLOT@0/[SMB_OSFP_I2C_14]", + "/run/devmap/xcvrs/xcvr_ctrl_14": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_14]", + "/run/devmap/xcvrs/xcvr_io_15": "/SMB_SLOT@0/[SMB_OSFP_I2C_15]", + "/run/devmap/xcvrs/xcvr_ctrl_15": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_15]", + "/run/devmap/xcvrs/xcvr_io_16": "/SMB_SLOT@0/[SMB_OSFP_I2C_16]", + "/run/devmap/xcvrs/xcvr_ctrl_16": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_16]", + "/run/devmap/xcvrs/xcvr_io_17": "/SMB_SLOT@0/[SMB_OSFP_I2C_17]", + "/run/devmap/xcvrs/xcvr_ctrl_17": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_17]", + "/run/devmap/xcvrs/xcvr_io_18": "/SMB_SLOT@0/[SMB_OSFP_I2C_18]", + "/run/devmap/xcvrs/xcvr_ctrl_18": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_18]", + "/run/devmap/xcvrs/xcvr_io_19": "/SMB_SLOT@0/[SMB_OSFP_I2C_19]", + "/run/devmap/xcvrs/xcvr_ctrl_19": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_19]", + "/run/devmap/xcvrs/xcvr_io_20": "/SMB_SLOT@0/[SMB_OSFP_I2C_20]", + "/run/devmap/xcvrs/xcvr_ctrl_20": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_20]", + "/run/devmap/xcvrs/xcvr_io_21": "/SMB_SLOT@0/[SMB_OSFP_I2C_21]", + "/run/devmap/xcvrs/xcvr_ctrl_21": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_21]", + "/run/devmap/xcvrs/xcvr_io_22": "/SMB_SLOT@0/[SMB_OSFP_I2C_22]", + "/run/devmap/xcvrs/xcvr_ctrl_22": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_22]", + "/run/devmap/xcvrs/xcvr_io_23": "/SMB_SLOT@0/[SMB_OSFP_I2C_23]", + "/run/devmap/xcvrs/xcvr_ctrl_23": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_23]", + "/run/devmap/xcvrs/xcvr_io_24": "/SMB_SLOT@0/[SMB_OSFP_I2C_24]", + "/run/devmap/xcvrs/xcvr_ctrl_24": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_24]", + "/run/devmap/xcvrs/xcvr_io_25": "/SMB_SLOT@0/[SMB_OSFP_I2C_25]", + "/run/devmap/xcvrs/xcvr_ctrl_25": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_25]", + "/run/devmap/xcvrs/xcvr_io_26": "/SMB_SLOT@0/[SMB_OSFP_I2C_26]", + "/run/devmap/xcvrs/xcvr_ctrl_26": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_26]", + "/run/devmap/xcvrs/xcvr_io_27": "/SMB_SLOT@0/[SMB_OSFP_I2C_27]", + "/run/devmap/xcvrs/xcvr_ctrl_27": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_27]", + "/run/devmap/xcvrs/xcvr_io_28": "/SMB_SLOT@0/[SMB_OSFP_I2C_28]", + "/run/devmap/xcvrs/xcvr_ctrl_28": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_28]", + "/run/devmap/xcvrs/xcvr_io_29": "/SMB_SLOT@0/[SMB_OSFP_I2C_29]", + "/run/devmap/xcvrs/xcvr_ctrl_29": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_29]", + "/run/devmap/xcvrs/xcvr_io_30": "/SMB_SLOT@0/[SMB_OSFP_I2C_30]", + "/run/devmap/xcvrs/xcvr_ctrl_30": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_30]", + "/run/devmap/xcvrs/xcvr_io_31": "/SMB_SLOT@0/[SMB_OSFP_I2C_31]", + "/run/devmap/xcvrs/xcvr_ctrl_31": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_31]", + "/run/devmap/xcvrs/xcvr_io_32": "/SMB_SLOT@0/[SMB_OSFP_I2C_32]", + "/run/devmap/xcvrs/xcvr_ctrl_32": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_32]", + "/run/devmap/xcvrs/xcvr_io_33": "/SMB_SLOT@0/[SMB_OSFP_I2C_33]", + "/run/devmap/xcvrs/xcvr_ctrl_33": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_33]", + "/run/devmap/xcvrs/xcvr_io_34": "/SMB_SLOT@0/[SMB_OSFP_I2C_34]", + "/run/devmap/xcvrs/xcvr_ctrl_34": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_34]", + "/run/devmap/xcvrs/xcvr_io_35": "/SMB_SLOT@0/[SMB_OSFP_I2C_35]", + "/run/devmap/xcvrs/xcvr_ctrl_35": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_35]", + "/run/devmap/xcvrs/xcvr_io_36": "/SMB_SLOT@0/[SMB_OSFP_I2C_36]", + "/run/devmap/xcvrs/xcvr_ctrl_36": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_36]", + "/run/devmap/xcvrs/xcvr_io_37": "/SMB_SLOT@0/[SMB_OSFP_I2C_37]", + "/run/devmap/xcvrs/xcvr_ctrl_37": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_37]", + "/run/devmap/xcvrs/xcvr_io_38": "/SMB_SLOT@0/[SMB_OSFP_I2C_38]", + "/run/devmap/xcvrs/xcvr_ctrl_38": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_38]", + "/run/devmap/xcvrs/xcvr_io_39": "/SMB_SLOT@0/[SMB_OSFP_I2C_39]", + "/run/devmap/xcvrs/xcvr_ctrl_39": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_39]", + "/run/devmap/xcvrs/xcvr_io_40": "/SMB_SLOT@0/[SMB_OSFP_I2C_40]", + "/run/devmap/xcvrs/xcvr_ctrl_40": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_40]", + "/run/devmap/xcvrs/xcvr_io_41": "/SMB_SLOT@0/[SMB_OSFP_I2C_41]", + "/run/devmap/xcvrs/xcvr_ctrl_41": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_41]", + "/run/devmap/xcvrs/xcvr_io_42": "/SMB_SLOT@0/[SMB_OSFP_I2C_42]", + "/run/devmap/xcvrs/xcvr_ctrl_42": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_42]", + "/run/devmap/xcvrs/xcvr_io_43": "/SMB_SLOT@0/[SMB_OSFP_I2C_43]", + "/run/devmap/xcvrs/xcvr_ctrl_43": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_43]", + "/run/devmap/xcvrs/xcvr_io_44": "/SMB_SLOT@0/[SMB_OSFP_I2C_44]", + "/run/devmap/xcvrs/xcvr_ctrl_44": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_44]", + "/run/devmap/xcvrs/xcvr_io_45": "/SMB_SLOT@0/[SMB_OSFP_I2C_45]", + "/run/devmap/xcvrs/xcvr_ctrl_45": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_45]", + "/run/devmap/xcvrs/xcvr_io_46": "/SMB_SLOT@0/[SMB_OSFP_I2C_46]", + "/run/devmap/xcvrs/xcvr_ctrl_46": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_46]", + "/run/devmap/xcvrs/xcvr_io_47": "/SMB_SLOT@0/[SMB_OSFP_I2C_47]", + "/run/devmap/xcvrs/xcvr_ctrl_47": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_47]", + "/run/devmap/xcvrs/xcvr_io_48": "/SMB_SLOT@0/[SMB_OSFP_I2C_48]", + "/run/devmap/xcvrs/xcvr_ctrl_48": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_48]", + "/run/devmap/xcvrs/xcvr_io_49": "/SMB_SLOT@0/[SMB_OSFP_I2C_49]", + "/run/devmap/xcvrs/xcvr_ctrl_49": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_49]", + "/run/devmap/xcvrs/xcvr_io_50": "/SMB_SLOT@0/[SMB_OSFP_I2C_50]", + "/run/devmap/xcvrs/xcvr_ctrl_50": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_50]", + "/run/devmap/xcvrs/xcvr_io_51": "/SMB_SLOT@0/[SMB_OSFP_I2C_51]", + "/run/devmap/xcvrs/xcvr_ctrl_51": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_51]", + "/run/devmap/xcvrs/xcvr_io_52": "/SMB_SLOT@0/[SMB_OSFP_I2C_52]", + "/run/devmap/xcvrs/xcvr_ctrl_52": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_52]", + "/run/devmap/xcvrs/xcvr_io_53": "/SMB_SLOT@0/[SMB_OSFP_I2C_53]", + "/run/devmap/xcvrs/xcvr_ctrl_53": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_53]", + "/run/devmap/xcvrs/xcvr_io_54": "/SMB_SLOT@0/[SMB_OSFP_I2C_54]", + "/run/devmap/xcvrs/xcvr_ctrl_54": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_54]", + "/run/devmap/xcvrs/xcvr_io_55": "/SMB_SLOT@0/[SMB_OSFP_I2C_55]", + "/run/devmap/xcvrs/xcvr_ctrl_55": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_55]", + "/run/devmap/xcvrs/xcvr_io_56": "/SMB_SLOT@0/[SMB_OSFP_I2C_56]", + "/run/devmap/xcvrs/xcvr_ctrl_56": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_56]", + "/run/devmap/xcvrs/xcvr_io_57": "/SMB_SLOT@0/[SMB_OSFP_I2C_57]", + "/run/devmap/xcvrs/xcvr_ctrl_57": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_57]", + "/run/devmap/xcvrs/xcvr_io_58": "/SMB_SLOT@0/[SMB_OSFP_I2C_58]", + "/run/devmap/xcvrs/xcvr_ctrl_58": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_58]", + "/run/devmap/xcvrs/xcvr_io_59": "/SMB_SLOT@0/[SMB_OSFP_I2C_59]", + "/run/devmap/xcvrs/xcvr_ctrl_59": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_59]", + "/run/devmap/xcvrs/xcvr_io_60": "/SMB_SLOT@0/[SMB_OSFP_I2C_60]", + "/run/devmap/xcvrs/xcvr_ctrl_60": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_60]", + "/run/devmap/xcvrs/xcvr_io_61": "/SMB_SLOT@0/[SMB_OSFP_I2C_61]", + "/run/devmap/xcvrs/xcvr_ctrl_61": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_61]", + "/run/devmap/xcvrs/xcvr_io_62": "/SMB_SLOT@0/[SMB_OSFP_I2C_62]", + "/run/devmap/xcvrs/xcvr_ctrl_62": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_62]", + "/run/devmap/xcvrs/xcvr_io_63": "/SMB_SLOT@0/[SMB_OSFP_I2C_63]", + "/run/devmap/xcvrs/xcvr_ctrl_63": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_63]", + "/run/devmap/xcvrs/xcvr_io_64": "/SMB_SLOT@0/[SMB_OSFP_I2C_64]", + "/run/devmap/xcvrs/xcvr_ctrl_64": "/SMB_SLOT@0/[OSFP_XCVR_CTRL_PORT_64]", + "/run/devmap/xcvrs/xcvr_io_65": "/SMB_SLOT@0/[SMB_MUX_2@1]", + "/run/devmap/xcvrs/xcvr_ctrl_65": "/SMB_SLOT@0/[QSFP_XCVR_CTRL_PORT_65]", + "/run/devmap/xcvrs/xcvr_io_66": "/SMB_SLOT@0/[SMB_MUX_2@2]", + "/run/devmap/xcvrs/xcvr_ctrl_66": "/SMB_SLOT@0/[QSFP_XCVR_CTRL_PORT_66]", + "/run/devmap/eeproms/PDC_EEPROM": "/SMB_SLOT@0/[PDC_EEPROM]", + "/run/devmap/eeproms/FAN_EEPROM": "/SMB_SLOT@0/[FAN_EEPROM]", + "/run/devmap/eeproms/MGMT_EEPROM": "/SMB_SLOT@0/[MGMT_EEPROM]", + "/run/devmap/sensors/FAN_POWER_MONITOR": "/SMB_SLOT@0/[FAN_POWER_MONITOR]" + }, + "chassisEepromDevicePath": "/SMB_SLOT@0/[IDPROM]", + "numXcvrs": 66, + "bspKmodsRpmName": "nexthop_bsp_kmods", + "bspKmodsRpmVersion": "1.0.0-1", + "nonBspKmodsToLoad": [ + "i2c_i801", + "i2c_piix4", + "spd5118", + "i2c_mux", + "tmp464", + "adm1266", + "pmbus", + "lm90", + "isl68137" + ] +} diff --git a/fboss/configs/platforms/nexthop/m4340nhp/platform_stack/sensor_service.json b/fboss/configs/platforms/nexthop/m4340nhp/platform_stack/sensor_service.json new file mode 100644 index 0000000000000..e1da0337371ac --- /dev/null +++ b/fboss/configs/platforms/nexthop/m4340nhp/platform_stack/sensor_service.json @@ -0,0 +1,2864 @@ +{ + "platformName": "M4340NHP", + "pmUnitSensorsList": [ + { + "slotPath": "/", + "pmUnitName": "SCM", + "sensors": [ + { + "name": "DPM_POS12V", + "sysfsPath": "/run/devmap/sensors/DPM/in1_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 13.2, + "minAlarmVal": 10.8, + "upperCriticalVal": 13.8, + "lowerCriticalVal": 10.2 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_POS5V0", + "sysfsPath": "/run/devmap/sensors/DPM/in2_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 5.5, + "minAlarmVal": 4.5, + "upperCriticalVal": 5.75, + "lowerCriticalVal": 4.25 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_POS2V0_PHY", + "sysfsPath": "/run/devmap/sensors/DPM/in3_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 2.104, + "minAlarmVal": 1.911, + "upperCriticalVal": 2.207, + "lowerCriticalVal": 1.822 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_POS5V0_S0", + "sysfsPath": "/run/devmap/sensors/DPM/in4_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 5.5, + "minAlarmVal": 4.5, + "upperCriticalVal": 5.75, + "lowerCriticalVal": 4.25 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_POS1V0_A7", + "sysfsPath": "/run/devmap/sensors/DPM/in5_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 1.05, + "minAlarmVal": 0.9, + "upperCriticalVal": 1.1, + "lowerCriticalVal": 0.85 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_POS1V8_A7", + "sysfsPath": "/run/devmap/sensors/DPM/in6_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 1.89, + "minAlarmVal": 1.62, + "upperCriticalVal": 1.98, + "lowerCriticalVal": 1.53 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_POS3V3", + "sysfsPath": "/run/devmap/sensors/DPM/in7_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 3.465, + "minAlarmVal": 2.97, + "upperCriticalVal": 3.63, + "lowerCriticalVal": 2.805 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_POS0V74_PHY", + "sysfsPath": "/run/devmap/sensors/DPM/in8_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.785, + "minAlarmVal": 0.71, + "upperCriticalVal": 0.83, + "lowerCriticalVal": 0.681 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_POS1V2_A7", + "sysfsPath": "/run/devmap/sensors/DPM/in9_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 1.26, + "minAlarmVal": 1.08, + "upperCriticalVal": 1.32, + "lowerCriticalVal": 1.02 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_POS0V75_S5", + "sysfsPath": "/run/devmap/sensors/DPM/in10_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.785, + "minAlarmVal": 0.711, + "upperCriticalVal": 0.822, + "lowerCriticalVal": 0.674 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_POS1V8_S5", + "sysfsPath": "/run/devmap/sensors/DPM/in11_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 1.89, + "minAlarmVal": 1.62, + "upperCriticalVal": 1.98, + "lowerCriticalVal": 1.53 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_POS3V3_S5", + "sysfsPath": "/run/devmap/sensors/DPM/in12_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 3.465, + "minAlarmVal": 2.97, + "upperCriticalVal": 3.63, + "lowerCriticalVal": 2.805 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_POS1V1_S0", + "sysfsPath": "/run/devmap/sensors/DPM/in13_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 1.155, + "minAlarmVal": 0.99, + "upperCriticalVal": 1.2, + "lowerCriticalVal": 0.935 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_POS1V5_SWT", + "sysfsPath": "/run/devmap/sensors/DPM/in14_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 1.658, + "minAlarmVal": 1.441, + "upperCriticalVal": 1.766, + "lowerCriticalVal": 1.333 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_POS1V05_SWT", + "sysfsPath": "/run/devmap/sensors/DPM/in15_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 1.149, + "minAlarmVal": 1.0, + "upperCriticalVal": 1.211, + "lowerCriticalVal": 0.95 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_POS1V8_S0", + "sysfsPath": "/run/devmap/sensors/DPM/in16_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 1.89, + "minAlarmVal": 1.62, + "upperCriticalVal": 1.98, + "lowerCriticalVal": 1.53 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_POS3V3_S0", + "sysfsPath": "/run/devmap/sensors/DPM/in17_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 3.465, + "minAlarmVal": 2.97, + "upperCriticalVal": 3.63, + "lowerCriticalVal": 2.805 + }, + "compute": "@/1000.0" + }, + { + "name": "CPU_TCTL_TEMP", + "sysfsPath": "/run/devmap/sensors/CPU_TEMP/temp1_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 95, + "upperCriticalVal": 120 + }, + "compute": "@/1000.0" + }, + { + "name": "CPU_TCCD1_TEMP", + "sysfsPath": "/run/devmap/sensors/CPU_TEMP/temp3_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 95, + "upperCriticalVal": 120 + }, + "compute": "@/1000.0" + }, + { + "name": "CPU_TCCD2_TEMP", + "sysfsPath": "/run/devmap/sensors/CPU_TEMP/temp4_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 95, + "upperCriticalVal": 120 + }, + "compute": "@/1000.0" + }, + { + "name": "NVME_COMPOSITE_TEMP", + "sysfsPath": "/run/devmap/sensors/NVME_TEMP/temp1_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 90, + "upperCriticalVal": 95 + }, + "compute": "@/1000.0" + }, + { + "name": "NIC_PHY_TEMP", + "sysfsPath": "/run/devmap/sensors/NIC_TEMP/temp1_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 100, + "upperCriticalVal": 110 + }, + "compute": "@/1000.0" + }, + { + "name": "NIC_MAC_TEMP", + "sysfsPath": "/run/devmap/sensors/NIC_TEMP/temp2_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 100, + "upperCriticalVal": 110 + }, + "compute": "@/1000.0" + }, + { + "name": "DIMM1_TEMP", + "sysfsPath": "/run/devmap/sensors/DIMM1_TEMP/temp1_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 85, + "upperCriticalVal": 95 + }, + "compute": "@/1000.0" + }, + { + "name": "DIMM2_TEMP", + "sysfsPath": "/run/devmap/sensors/DIMM2_TEMP/temp1_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 85, + "upperCriticalVal": 95 + }, + "compute": "@/1000.0" + } + ] + }, + { + "slotPath": "/SMB_SLOT@0", + "pmUnitName": "SMB", + "sensors": [ + { + "name": "DPM_1_POS12V", + "sysfsPath": "/run/devmap/sensors/DPM_1/in1_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 13.2, + "minAlarmVal": 10.8, + "upperCriticalVal": 13.8, + "lowerCriticalVal": 10.2 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_1_POS5V0", + "sysfsPath": "/run/devmap/sensors/DPM_1/in2_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 5.25, + "minAlarmVal": 4.75, + "upperCriticalVal": 5.5, + "lowerCriticalVal": 4.5 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_1_POS3V3", + "sysfsPath": "/run/devmap/sensors/DPM_1/in3_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 3.465, + "minAlarmVal": 3.135, + "upperCriticalVal": 3.63, + "lowerCriticalVal": 2.97 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_1_POS1V8", + "sysfsPath": "/run/devmap/sensors/DPM_1/in4_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 1.89, + "minAlarmVal": 1.71, + "upperCriticalVal": 1.98, + "lowerCriticalVal": 1.62 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_1_POS1V2_CP", + "sysfsPath": "/run/devmap/sensors/DPM_1/in5_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 1.26, + "minAlarmVal": 1.14, + "upperCriticalVal": 1.32, + "lowerCriticalVal": 1.08 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_1_POS1V0", + "sysfsPath": "/run/devmap/sensors/DPM_1/in6_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 1.05, + "minAlarmVal": 0.95, + "upperCriticalVal": 1.1, + "lowerCriticalVal": 0.9 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_1_POS0V78_D0_VDDC", + "sysfsPath": "/run/devmap/sensors/DPM_1/in7_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.892, + "minAlarmVal": 0.665, + "upperCriticalVal": 0.936, + "lowerCriticalVal": 0.65 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_1_POS0V78_D1_VDDC", + "sysfsPath": "/run/devmap/sensors/DPM_1/in8_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.892, + "minAlarmVal": 0.665, + "upperCriticalVal": 0.936, + "lowerCriticalVal": 0.65 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_1_POS0V78_NIF0_VDDC", + "sysfsPath": "/run/devmap/sensors/DPM_1/in9_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.892, + "minAlarmVal": 0.741, + "upperCriticalVal": 0.98, + "lowerCriticalVal": 0.702 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_1_POS0V78_NIF3_VDDC", + "sysfsPath": "/run/devmap/sensors/DPM_1/in10_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.892, + "minAlarmVal": 0.741, + "upperCriticalVal": 0.98, + "lowerCriticalVal": 0.702 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_1_POS0V78_NIF1_VDDC", + "sysfsPath": "/run/devmap/sensors/DPM_1/in11_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.892, + "minAlarmVal": 0.741, + "upperCriticalVal": 0.98, + "lowerCriticalVal": 0.702 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_1_POS0V78_NIF2_VDDC", + "sysfsPath": "/run/devmap/sensors/DPM_1/in12_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.892, + "minAlarmVal": 0.741, + "upperCriticalVal": 0.98, + "lowerCriticalVal": 0.702 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_1_POS0V75_NIF_0_3_TRVDD", + "sysfsPath": "/run/devmap/sensors/DPM_1/in13_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.788, + "minAlarmVal": 0.712, + "upperCriticalVal": 0.9, + "lowerCriticalVal": 0.675 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_1_POS0V9_NIF_0_3_TRVDD", + "sysfsPath": "/run/devmap/sensors/DPM_1/in14_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.945, + "minAlarmVal": 0.855, + "upperCriticalVal": 1.08, + "lowerCriticalVal": 0.81 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_1_POS0V75_NIF_1_2_TRVDD", + "sysfsPath": "/run/devmap/sensors/DPM_1/in15_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.788, + "minAlarmVal": 0.712, + "upperCriticalVal": 0.9, + "lowerCriticalVal": 0.675 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_1_POS0V9_NIF_1_2_TRVDD", + "sysfsPath": "/run/devmap/sensors/DPM_1/in16_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.945, + "minAlarmVal": 0.855, + "upperCriticalVal": 1.08, + "lowerCriticalVal": 0.81 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_1_POS0V72_C2C_PB0_TRVDD", + "sysfsPath": "/run/devmap/sensors/DPM_1/in17_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.756, + "minAlarmVal": 0.684, + "upperCriticalVal": 0.864, + "lowerCriticalVal": 0.648 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_2_POS12V", + "sysfsPath": "/run/devmap/sensors/DPM_2/in1_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 13.2, + "minAlarmVal": 10.8, + "upperCriticalVal": 13.8, + "lowerCriticalVal": 10.2 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_2_POS0V75_HBM0_PHYVDD", + "sysfsPath": "/run/devmap/sensors/DPM_2/in2_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.788, + "minAlarmVal": 0.712, + "upperCriticalVal": 0.9, + "lowerCriticalVal": 0.675 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_2_POS0V72_C2C_PB1_TRVDD", + "sysfsPath": "/run/devmap/sensors/DPM_2/in3_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.756, + "minAlarmVal": 0.684, + "upperCriticalVal": 0.864, + "lowerCriticalVal": 0.648 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_2_POS0V75_HBM1_PHYVDD", + "sysfsPath": "/run/devmap/sensors/DPM_2/in4_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.788, + "minAlarmVal": 0.712, + "upperCriticalVal": 0.9, + "lowerCriticalVal": 0.675 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_2_POS0V72_NIF0_PB_TRVDD", + "sysfsPath": "/run/devmap/sensors/DPM_2/in5_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.756, + "minAlarmVal": 0.684, + "upperCriticalVal": 0.864, + "lowerCriticalVal": 0.648 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_2_POS1V1_HBM0_VDDQC", + "sysfsPath": "/run/devmap/sensors/DPM_2/in6_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 1.155, + "minAlarmVal": 1.045, + "upperCriticalVal": 1.32, + "lowerCriticalVal": 0.99 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_2_POS0V72_NIF1_PB_TRVDD", + "sysfsPath": "/run/devmap/sensors/DPM_2/in7_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.756, + "minAlarmVal": 0.684, + "upperCriticalVal": 0.864, + "lowerCriticalVal": 0.648 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_2_POS1V1_HBM1_VDDQC", + "sysfsPath": "/run/devmap/sensors/DPM_2/in8_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 1.155, + "minAlarmVal": 1.045, + "upperCriticalVal": 1.32, + "lowerCriticalVal": 0.99 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_2_POS0V72_NIF2_PB_TRVDD", + "sysfsPath": "/run/devmap/sensors/DPM_2/in9_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.756, + "minAlarmVal": 0.684, + "upperCriticalVal": 0.864, + "lowerCriticalVal": 0.648 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_2_POS1V1_HBM2_VDDQC", + "sysfsPath": "/run/devmap/sensors/DPM_2/in10_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 1.155, + "minAlarmVal": 1.045, + "upperCriticalVal": 1.32, + "lowerCriticalVal": 0.99 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_2_POS0V72_NIF3_PB_TRVDD", + "sysfsPath": "/run/devmap/sensors/DPM_2/in11_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.756, + "minAlarmVal": 0.684, + "upperCriticalVal": 0.864, + "lowerCriticalVal": 0.648 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_2_POS1V1_HBM3_VDDQC", + "sysfsPath": "/run/devmap/sensors/DPM_2/in12_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 1.155, + "minAlarmVal": 1.045, + "upperCriticalVal": 1.32, + "lowerCriticalVal": 0.99 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_2_POS3V3_EAST", + "sysfsPath": "/run/devmap/sensors/DPM_2/in13_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 3.465, + "minAlarmVal": 3.135, + "upperCriticalVal": 3.6, + "lowerCriticalVal": 2 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_2_POS0V75_HBM3_PHYVDD", + "sysfsPath": "/run/devmap/sensors/DPM_2/in14_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.788, + "minAlarmVal": 0.712, + "upperCriticalVal": 0.9, + "lowerCriticalVal": 0.675 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_2_POS3V3_WEST", + "sysfsPath": "/run/devmap/sensors/DPM_2/in15_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 3.465, + "minAlarmVal": 3.135, + "upperCriticalVal": 3.6, + "lowerCriticalVal": 2 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_2_POS0V75_HBM2_PHYVDD", + "sysfsPath": "/run/devmap/sensors/DPM_2/in16_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.788, + "minAlarmVal": 0.712, + "upperCriticalVal": 0.9, + "lowerCriticalVal": 0.675 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_2_POS1V8_DP", + "sysfsPath": "/run/devmap/sensors/DPM_2/in17_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 1.89, + "minAlarmVal": 1.71, + "upperCriticalVal": 1.98, + "lowerCriticalVal": 1.62 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_3_POS12V", + "sysfsPath": "/run/devmap/sensors/DPM_3/in1_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 13.2, + "minAlarmVal": 10.8, + "upperCriticalVal": 13.8, + "lowerCriticalVal": 10.2 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_3_POS1V2_DP", + "sysfsPath": "/run/devmap/sensors/DPM_3/in2_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 1.26, + "minAlarmVal": 1.14, + "upperCriticalVal": 1.32, + "lowerCriticalVal": 1.08 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_3_POS0V8_DP", + "sysfsPath": "/run/devmap/sensors/DPM_3/in7_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.84, + "minAlarmVal": 0.76, + "upperCriticalVal": 0.88, + "lowerCriticalVal": 0.72 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_3_POS0V9_NIF_PVDD_0", + "sysfsPath": "/run/devmap/sensors/DPM_3/in8_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.945, + "minAlarmVal": 0.855, + "upperCriticalVal": 0.99, + "lowerCriticalVal": 0.81 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_3_POS0V9_NIF_PVDD_1", + "sysfsPath": "/run/devmap/sensors/DPM_3/in9_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.945, + "minAlarmVal": 0.855, + "upperCriticalVal": 0.99, + "lowerCriticalVal": 0.81 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_3_POS0V9_NIF_PVDD_2", + "sysfsPath": "/run/devmap/sensors/DPM_3/in10_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.945, + "minAlarmVal": 0.855, + "upperCriticalVal": 0.99, + "lowerCriticalVal": 0.81 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_3_POS0V9_NIF_PVDD_3", + "sysfsPath": "/run/devmap/sensors/DPM_3/in11_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.945, + "minAlarmVal": 0.855, + "upperCriticalVal": 0.99, + "lowerCriticalVal": 0.81 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_3_POS1V5_D0_PVDD", + "sysfsPath": "/run/devmap/sensors/DPM_3/in12_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 1.575, + "minAlarmVal": 1.425, + "upperCriticalVal": 1.65, + "lowerCriticalVal": 1.35 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_3_POS1V5_D1_PVDD", + "sysfsPath": "/run/devmap/sensors/DPM_3/in13_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 1.575, + "minAlarmVal": 1.425, + "upperCriticalVal": 1.65, + "lowerCriticalVal": 1.35 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_3_POS1V8_HBM03_VPP", + "sysfsPath": "/run/devmap/sensors/DPM_3/in14_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 1.89, + "minAlarmVal": 1.71, + "upperCriticalVal": 1.98, + "lowerCriticalVal": 1.62 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_3_POS1V8_HBM12_VPP", + "sysfsPath": "/run/devmap/sensors/DPM_3/in15_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 1.89, + "minAlarmVal": 1.71, + "upperCriticalVal": 1.98, + "lowerCriticalVal": 1.62 + }, + "compute": "@/1000.0" + }, + { + "name": "DPM_3_POS1V5_PB_PVDD", + "sysfsPath": "/run/devmap/sensors/DPM_3/in16_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 1.575, + "minAlarmVal": 1.425, + "upperCriticalVal": 1.65, + "lowerCriticalVal": 1.35 + }, + "compute": "@/1000.0" + }, + { + "name": "SWITCH_CARD_TMP464_LOCAL", + "sysfsPath": "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR/temp1_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 115, + "upperCriticalVal": 122 + }, + "compute": "@/1000.0" + }, + { + "name": "SWITCH_CARD_LEFT", + "sysfsPath": "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR/temp2_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 115, + "upperCriticalVal": 122 + }, + "compute": "@/1000.0" + }, + { + "name": "SWITCH_CARD_RIGHT", + "sysfsPath": "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR/temp3_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 115, + "upperCriticalVal": 122 + }, + "compute": "@/1000.0" + }, + { + "name": "SWITCH_CARD_REAR", + "sysfsPath": "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR/temp4_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 115, + "upperCriticalVal": 122 + }, + "compute": "@/1000.0" + }, + { + "name": "SWITCH_CARD_INTAKE", + "sysfsPath": "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR/temp5_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 115, + "upperCriticalVal": 122 + }, + "compute": "@/1000.0" + }, + { + "name": "ASIC_D0_TMP468_LOCAL", + "sysfsPath": "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR_1/temp1_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 115, + "upperCriticalVal": 122 + }, + "compute": "@/1000.0" + }, + { + "name": "ASIC_D0_TEMP0", + "sysfsPath": "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR_1/temp2_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 115, + "upperCriticalVal": 122 + }, + "compute": "@/1000.0" + }, + { + "name": "ASIC_D0_TEMP1", + "sysfsPath": "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR_1/temp3_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 115, + "upperCriticalVal": 122 + }, + "compute": "@/1000.0" + }, + { + "name": "ASIC_D0_TEMP2", + "sysfsPath": "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR_1/temp4_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 115, + "upperCriticalVal": 122 + }, + "compute": "@/1000.0" + }, + { + "name": "ASIC_D0_TEMP3", + "sysfsPath": "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR_1/temp5_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 115, + "upperCriticalVal": 122 + }, + "compute": "@/1000.0" + }, + { + "name": "ASIC_D0_TEMP4", + "sysfsPath": "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR_1/temp6_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 115, + "upperCriticalVal": 122 + }, + "compute": "@/1000.0" + }, + { + "name": "ASIC_D0_TEMP5", + "sysfsPath": "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR_1/temp7_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 115, + "upperCriticalVal": 122 + }, + "compute": "@/1000.0" + }, + { + "name": "ASIC_D0_TEMP6", + "sysfsPath": "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR_1/temp8_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 115, + "upperCriticalVal": 122 + }, + "compute": "@/1000.0" + }, + { + "name": "ASIC_D0_TEMP7", + "sysfsPath": "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR_1/temp9_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 115, + "upperCriticalVal": 122 + }, + "compute": "@/1000.0" + }, + { + "name": "ASIC_D1_TMP468_LOCAL", + "sysfsPath": "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR_2/temp1_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 115, + "upperCriticalVal": 122 + }, + "compute": "@/1000.0" + }, + { + "name": "ASIC_D1_TEMP0", + "sysfsPath": "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR_2/temp2_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 115, + "upperCriticalVal": 122 + }, + "compute": "@/1000.0" + }, + { + "name": "ASIC_D1_TEMP1", + "sysfsPath": "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR_2/temp3_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 115, + "upperCriticalVal": 122 + }, + "compute": "@/1000.0" + }, + { + "name": "ASIC_D1_TEMP2", + "sysfsPath": "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR_2/temp4_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 115, + "upperCriticalVal": 122 + }, + "compute": "@/1000.0" + }, + { + "name": "ASIC_D1_TEMP3", + "sysfsPath": "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR_2/temp5_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 115, + "upperCriticalVal": 122 + }, + "compute": "@/1000.0" + }, + { + "name": "ASIC_D1_TEMP4", + "sysfsPath": "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR_2/temp6_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 115, + "upperCriticalVal": 122 + }, + "compute": "@/1000.0" + }, + { + "name": "ASIC_D1_TEMP5", + "sysfsPath": "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR_2/temp7_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 115, + "upperCriticalVal": 122 + }, + "compute": "@/1000.0" + }, + { + "name": "ASIC_D1_TEMP6", + "sysfsPath": "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR_2/temp8_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 115, + "upperCriticalVal": 122 + }, + "compute": "@/1000.0" + }, + { + "name": "ASIC_D1_TEMP7", + "sysfsPath": "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR_2/temp9_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 115, + "upperCriticalVal": 122 + }, + "compute": "@/1000.0" + }, + { + "name": "NIF_TMP468_LOCAL", + "sysfsPath": "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR_3/temp1_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 115, + "upperCriticalVal": 122 + }, + "compute": "@/1000.0" + }, + { + "name": "NIF0_TEMP0", + "sysfsPath": "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR_3/temp2_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 115, + "upperCriticalVal": 122 + }, + "compute": "@/1000.0" + }, + { + "name": "NIF0_TEMP1", + "sysfsPath": "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR_3/temp3_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 115, + "upperCriticalVal": 122 + }, + "compute": "@/1000.0" + }, + { + "name": "NIF1_TEMP0", + "sysfsPath": "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR_3/temp4_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 115, + "upperCriticalVal": 122 + }, + "compute": "@/1000.0" + }, + { + "name": "NIF1_TEMP1", + "sysfsPath": "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR_3/temp5_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 115, + "upperCriticalVal": 122 + }, + "compute": "@/1000.0" + }, + { + "name": "NIF2_TEMP0", + "sysfsPath": "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR_3/temp6_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 115, + "upperCriticalVal": 122 + }, + "compute": "@/1000.0" + }, + { + "name": "NIF2_TEMP1", + "sysfsPath": "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR_3/temp7_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 115, + "upperCriticalVal": 122 + }, + "compute": "@/1000.0" + }, + { + "name": "NIF3_TEMP0", + "sysfsPath": "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR_3/temp8_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 115, + "upperCriticalVal": 122 + }, + "compute": "@/1000.0" + }, + { + "name": "NIF3_TEMP1", + "sysfsPath": "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR_3/temp9_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 115, + "upperCriticalVal": 122 + }, + "compute": "@/1000.0" + }, + { + "name": "MGMT_TMP451_LOCAL", + "sysfsPath": "/run/devmap/sensors/MGMT_TEMP_SENSOR/temp1_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 115, + "upperCriticalVal": 122 + }, + "compute": "@/1000.0" + }, + { + "name": "CHASSIS_INTAKE_TEMP", + "sysfsPath": "/run/devmap/sensors/MGMT_TEMP_SENSOR/temp2_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 45, + "upperCriticalVal": 65 + }, + "compute": "@/1000.0" + }, + { + "name": "FAN1_INNER_RPM", + "sysfsPath": "/run/devmap/sensors/FAN_CTRL/fan1_input", + "type": 4, + "thresholds": { + "upperCriticalVal": 25000, + "lowerCriticalVal": 6000 + } + }, + { + "name": "FAN1_OUTER_RPM", + "sysfsPath": "/run/devmap/sensors/FAN_CTRL/fan2_input", + "type": 4, + "thresholds": { + "upperCriticalVal": 25000, + "lowerCriticalVal": 6000 + } + }, + { + "name": "FAN2_INNER_RPM", + "sysfsPath": "/run/devmap/sensors/FAN_CTRL/fan3_input", + "type": 4, + "thresholds": { + "upperCriticalVal": 25000, + "lowerCriticalVal": 6000 + } + }, + { + "name": "FAN2_OUTER_RPM", + "sysfsPath": "/run/devmap/sensors/FAN_CTRL/fan4_input", + "type": 4, + "thresholds": { + "upperCriticalVal": 25000, + "lowerCriticalVal": 6000 + } + }, + { + "name": "FAN3_INNER_RPM", + "sysfsPath": "/run/devmap/sensors/FAN_CTRL/fan5_input", + "type": 4, + "thresholds": { + "upperCriticalVal": 25000, + "lowerCriticalVal": 6000 + } + }, + { + "name": "FAN3_OUTER_RPM", + "sysfsPath": "/run/devmap/sensors/FAN_CTRL/fan6_input", + "type": 4, + "thresholds": { + "upperCriticalVal": 25000, + "lowerCriticalVal": 6000 + } + }, + { + "name": "FAN4_INNER_RPM", + "sysfsPath": "/run/devmap/sensors/FAN_CTRL/fan7_input", + "type": 4, + "thresholds": { + "upperCriticalVal": 25000, + "lowerCriticalVal": 6000 + } + }, + { + "name": "FAN4_OUTER_RPM", + "sysfsPath": "/run/devmap/sensors/FAN_CTRL/fan8_input", + "type": 4, + "thresholds": { + "upperCriticalVal": 25000, + "lowerCriticalVal": 6000 + } + }, + { + "name": "FAN5_INNER_RPM", + "sysfsPath": "/run/devmap/sensors/FAN_CTRL/fan9_input", + "type": 4, + "thresholds": { + "upperCriticalVal": 25000, + "lowerCriticalVal": 6000 + } + }, + { + "name": "FAN5_OUTER_RPM", + "sysfsPath": "/run/devmap/sensors/FAN_CTRL/fan10_input", + "type": 4, + "thresholds": { + "upperCriticalVal": 25000, + "lowerCriticalVal": 6000 + } + }, + { + "name": "PSU1_PIN", + "sysfsPath": "/run/devmap/sensors/PSU1/power1_input", + "type": 0, + "thresholds": { + "upperCriticalVal": 2700 + }, + "compute": "@/1000000" + }, + { + "name": "PSU1_VIN", + "sysfsPath": "/run/devmap/sensors/PSU1/in1_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 264, + "minAlarmVal": 180, + "upperCriticalVal": 300 + }, + "compute": "@/1000.0" + }, + { + "name": "PSU1_VOUT", + "sysfsPath": "/run/devmap/sensors/PSU1/in3_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 12.6, + "minAlarmVal": 11.4, + "upperCriticalVal": 13.6, + "lowerCriticalVal": 10.8 + }, + "compute": "@/1000.0" + }, + { + "name": "PSU1_IIN", + "sysfsPath": "/run/devmap/sensors/PSU1/curr1_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 14.7, + "upperCriticalVal": 17.9 + }, + "compute": "@/1000.0" + }, + { + "name": "PSU1_IOUT", + "sysfsPath": "/run/devmap/sensors/PSU1/curr2_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 197, + "upperCriticalVal": 233 + }, + "compute": "@/1000.0" + }, + { + "name": "PSU1_POUT", + "sysfsPath": "/run/devmap/sensors/PSU1/power2_input", + "type": 0, + "thresholds": { + "maxAlarmVal": 2400, + "upperCriticalVal": 2800 + }, + "compute": "@/1000000" + }, + { + "name": "PSU1_INLET_TEMP", + "sysfsPath": "/run/devmap/sensors/PSU1/temp1_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 60, + "upperCriticalVal": 65 + }, + "compute": "@/1000.0" + }, + { + "name": "PSU1_HOTSPOT_TEMP", + "sysfsPath": "/run/devmap/sensors/PSU1/temp2_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 125 + }, + "compute": "@/1000.0" + }, + { + "name": "PSU1_EXHAUST_TEMP", + "sysfsPath": "/run/devmap/sensors/PSU1/temp3_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 75 + }, + "compute": "@/1000.0" + }, + { + "name": "PSU1_FAN1_RPM", + "sysfsPath": "/run/devmap/sensors/PSU1/fan1_input", + "type": 4, + "thresholds": { + "lowerCriticalVal": 1000 + } + }, + { + "name": "PSU2_PIN", + "sysfsPath": "/run/devmap/sensors/PSU2/power1_input", + "type": 0, + "thresholds": { + "upperCriticalVal": 2700 + }, + "compute": "@/1000000" + }, + { + "name": "PSU2_VIN", + "sysfsPath": "/run/devmap/sensors/PSU2/in1_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 264, + "minAlarmVal": 180, + "upperCriticalVal": 300 + }, + "compute": "@/1000.0" + }, + { + "name": "PSU2_VOUT", + "sysfsPath": "/run/devmap/sensors/PSU2/in3_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 12.6, + "minAlarmVal": 11.4, + "upperCriticalVal": 13.6, + "lowerCriticalVal": 10.8 + }, + "compute": "@/1000.0" + }, + { + "name": "PSU2_IIN", + "sysfsPath": "/run/devmap/sensors/PSU2/curr1_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 14.7, + "upperCriticalVal": 17.9 + }, + "compute": "@/1000.0" + }, + { + "name": "PSU2_IOUT", + "sysfsPath": "/run/devmap/sensors/PSU2/curr2_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 197, + "upperCriticalVal": 233 + }, + "compute": "@/1000.0" + }, + { + "name": "PSU2_POUT", + "sysfsPath": "/run/devmap/sensors/PSU2/power2_input", + "type": 0, + "thresholds": { + "maxAlarmVal": 2400, + "upperCriticalVal": 2800 + }, + "compute": "@/1000000" + }, + { + "name": "PSU2_INLET_TEMP", + "sysfsPath": "/run/devmap/sensors/PSU2/temp1_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 60, + "upperCriticalVal": 65 + }, + "compute": "@/1000.0" + }, + { + "name": "PSU2_HOTSPOT_TEMP", + "sysfsPath": "/run/devmap/sensors/PSU2/temp2_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 125 + }, + "compute": "@/1000.0" + }, + { + "name": "PSU2_EXHAUST_TEMP", + "sysfsPath": "/run/devmap/sensors/PSU2/temp3_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 75 + }, + "compute": "@/1000.0" + }, + { + "name": "PSU2_FAN1_RPM", + "sysfsPath": "/run/devmap/sensors/PSU2/fan1_input", + "type": 4, + "thresholds": { + "lowerCriticalVal": 1000 + } + }, + { + "name": "PSU3_PIN", + "sysfsPath": "/run/devmap/sensors/PSU3/power1_input", + "type": 0, + "thresholds": { + "upperCriticalVal": 2700 + }, + "compute": "@/1000000" + }, + { + "name": "PSU3_VIN", + "sysfsPath": "/run/devmap/sensors/PSU3/in1_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 264, + "minAlarmVal": 180, + "upperCriticalVal": 300 + }, + "compute": "@/1000.0" + }, + { + "name": "PSU3_VOUT", + "sysfsPath": "/run/devmap/sensors/PSU3/in3_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 12.6, + "minAlarmVal": 11.4, + "upperCriticalVal": 13.6, + "lowerCriticalVal": 10.8 + }, + "compute": "@/1000.0" + }, + { + "name": "PSU3_IIN", + "sysfsPath": "/run/devmap/sensors/PSU3/curr1_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 14.7, + "upperCriticalVal": 17.9 + }, + "compute": "@/1000.0" + }, + { + "name": "PSU3_IOUT", + "sysfsPath": "/run/devmap/sensors/PSU3/curr2_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 197, + "upperCriticalVal": 233 + }, + "compute": "@/1000.0" + }, + { + "name": "PSU3_POUT", + "sysfsPath": "/run/devmap/sensors/PSU3/power2_input", + "type": 0, + "thresholds": { + "maxAlarmVal": 2400, + "upperCriticalVal": 2800 + }, + "compute": "@/1000000" + }, + { + "name": "PSU3_INLET_TEMP", + "sysfsPath": "/run/devmap/sensors/PSU3/temp1_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 60, + "upperCriticalVal": 65 + }, + "compute": "@/1000.0" + }, + { + "name": "PSU3_HOTSPOT_TEMP", + "sysfsPath": "/run/devmap/sensors/PSU3/temp2_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 125 + }, + "compute": "@/1000.0" + }, + { + "name": "PSU3_EXHAUST_TEMP", + "sysfsPath": "/run/devmap/sensors/PSU3/temp3_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 75 + }, + "compute": "@/1000.0" + }, + { + "name": "PSU3_FAN1_RPM", + "sysfsPath": "/run/devmap/sensors/PSU3/fan1_input", + "type": 4, + "thresholds": { + "lowerCriticalVal": 1000 + } + }, + { + "name": "PSU4_PIN", + "sysfsPath": "/run/devmap/sensors/PSU4/power1_input", + "type": 0, + "thresholds": { + "upperCriticalVal": 2700 + }, + "compute": "@/1000000" + }, + { + "name": "PSU4_VIN", + "sysfsPath": "/run/devmap/sensors/PSU4/in1_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 264, + "minAlarmVal": 180, + "upperCriticalVal": 300 + }, + "compute": "@/1000.0" + }, + { + "name": "PSU4_VOUT", + "sysfsPath": "/run/devmap/sensors/PSU4/in3_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 12.6, + "minAlarmVal": 11.4, + "upperCriticalVal": 13.6, + "lowerCriticalVal": 10.8 + }, + "compute": "@/1000.0" + }, + { + "name": "PSU4_IIN", + "sysfsPath": "/run/devmap/sensors/PSU4/curr1_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 14.7, + "upperCriticalVal": 17.9 + }, + "compute": "@/1000.0" + }, + { + "name": "PSU4_IOUT", + "sysfsPath": "/run/devmap/sensors/PSU4/curr2_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 197, + "upperCriticalVal": 233 + }, + "compute": "@/1000.0" + }, + { + "name": "PSU4_POUT", + "sysfsPath": "/run/devmap/sensors/PSU4/power2_input", + "type": 0, + "thresholds": { + "maxAlarmVal": 2400, + "upperCriticalVal": 2800 + }, + "compute": "@/1000000" + }, + { + "name": "PSU4_INLET_TEMP", + "sysfsPath": "/run/devmap/sensors/PSU4/temp1_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 60, + "upperCriticalVal": 65 + }, + "compute": "@/1000.0" + }, + { + "name": "PSU4_HOTSPOT_TEMP", + "sysfsPath": "/run/devmap/sensors/PSU4/temp2_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 125 + }, + "compute": "@/1000.0" + }, + { + "name": "PSU4_EXHAUST_TEMP", + "sysfsPath": "/run/devmap/sensors/PSU4/temp3_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 75 + }, + "compute": "@/1000.0" + }, + { + "name": "PSU4_FAN1_RPM", + "sysfsPath": "/run/devmap/sensors/PSU4/fan1_input", + "type": 4, + "thresholds": { + "lowerCriticalVal": 1000 + } + }, + { + "name": "DCDC0_POS0V78_D0_VDDC_TEMP", + "sysfsPath": "/run/devmap/sensors/DCDC0/temp1_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 130 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC1_POS0V78_D1_VDDC_TEMP", + "sysfsPath": "/run/devmap/sensors/DCDC1/temp1_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 130 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC2_POS0V78_NIF0_VDDC_VOUT", + "sysfsPath": "/run/devmap/sensors/DCDC2/in3_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.892, + "minAlarmVal": 0.665, + "upperCriticalVal": 0.935, + "lowerCriticalVal": 0.63 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC2_POS0V78_NIF0_VDDC_IOUT", + "sysfsPath": "/run/devmap/sensors/DCDC2/curr3_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 94 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC2_POS0V78_NIF0_VDDC_POUT", + "sysfsPath": "/run/devmap/sensors/DCDC2/power3_input", + "type": 0, + "compute": "@/1000000" + }, + { + "name": "DCDC2_POS0V78_NIF0_VDDC_TEMP", + "sysfsPath": "/run/devmap/sensors/DCDC2/temp1_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 130 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC2_POS0V78_NIF3_VDDC_VOUT", + "sysfsPath": "/run/devmap/sensors/DCDC2/in4_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.892, + "minAlarmVal": 0.665, + "upperCriticalVal": 0.935, + "lowerCriticalVal": 0.63 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC2_POS0V78_NIF3_VDDC_IOUT", + "sysfsPath": "/run/devmap/sensors/DCDC2/curr4_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 94 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC2_POS0V78_NIF3_VDDC_POUT", + "sysfsPath": "/run/devmap/sensors/DCDC2/power4_input", + "type": 0, + "compute": "@/1000000" + }, + { + "name": "DCDC2_POS0V78_NIF3_VDDC_TEMP", + "sysfsPath": "/run/devmap/sensors/DCDC2/temp2_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 130 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC3_POS0V78_NIF1_VDDC_VOUT", + "sysfsPath": "/run/devmap/sensors/DCDC3/in3_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.892, + "minAlarmVal": 0.665, + "upperCriticalVal": 0.935, + "lowerCriticalVal": 0.63 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC3_POS0V78_NIF1_VDDC_IOUT", + "sysfsPath": "/run/devmap/sensors/DCDC3/curr3_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 94 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC3_POS0V78_NIF1_VDDC_POUT", + "sysfsPath": "/run/devmap/sensors/DCDC3/power3_input", + "type": 0, + "compute": "@/1000000" + }, + { + "name": "DCDC3_POS0V78_NIF1_VDDC_TEMP", + "sysfsPath": "/run/devmap/sensors/DCDC3/temp1_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 130 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC3_POS0V78_NIF2_VDDC_VOUT", + "sysfsPath": "/run/devmap/sensors/DCDC3/in4_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.892, + "minAlarmVal": 0.665, + "upperCriticalVal": 0.935, + "lowerCriticalVal": 0.63 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC3_POS0V78_NIF2_VDDC_IOUT", + "sysfsPath": "/run/devmap/sensors/DCDC3/curr4_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 94 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC3_POS0V78_NIF2_VDDC_POUT", + "sysfsPath": "/run/devmap/sensors/DCDC3/power4_input", + "type": 0, + "compute": "@/1000000" + }, + { + "name": "DCDC3_POS0V78_NIF2_VDDC_TEMP", + "sysfsPath": "/run/devmap/sensors/DCDC3/temp2_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 130 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC4_POS0V75_NIF_0_3_TRVDD_VOUT", + "sysfsPath": "/run/devmap/sensors/DCDC4/in3_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.788, + "minAlarmVal": 0.712, + "upperCriticalVal": 0.825, + "lowerCriticalVal": 0.675 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC4_POS0V75_NIF_0_3_TRVDD_IOUT", + "sysfsPath": "/run/devmap/sensors/DCDC4/curr3_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 36 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC4_POS0V75_NIF_0_3_TRVDD_POUT", + "sysfsPath": "/run/devmap/sensors/DCDC4/power3_input", + "type": 0, + "compute": "@/1000000" + }, + { + "name": "DCDC4_POS0V75_NIF_0_3_TRVDD_TEMP", + "sysfsPath": "/run/devmap/sensors/DCDC4/temp1_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 130 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC4_POS0V9_NIF_0_3_TRVDD_VOUT", + "sysfsPath": "/run/devmap/sensors/DCDC4/in4_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.945, + "minAlarmVal": 0.855, + "upperCriticalVal": 0.99, + "lowerCriticalVal": 0.81 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC4_POS0V9_NIF_0_3_TRVDD_IOUT", + "sysfsPath": "/run/devmap/sensors/DCDC4/curr4_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 64 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC4_POS0V9_NIF_0_3_TRVDD_POUT", + "sysfsPath": "/run/devmap/sensors/DCDC4/power4_input", + "type": 0, + "compute": "@/1000000" + }, + { + "name": "DCDC4_POS0V9_NIF_0_3_TRVDD_TEMP", + "sysfsPath": "/run/devmap/sensors/DCDC4/temp2_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 130 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC5_POS0V75_NIF_1_2_TRVDD_VOUT", + "sysfsPath": "/run/devmap/sensors/DCDC5/in3_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.788, + "minAlarmVal": 0.712, + "upperCriticalVal": 0.825, + "lowerCriticalVal": 0.675 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC5_POS0V75_NIF_1_2_TRVDD_IOUT", + "sysfsPath": "/run/devmap/sensors/DCDC5/curr3_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 36 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC5_POS0V75_NIF_1_2_TRVDD_POUT", + "sysfsPath": "/run/devmap/sensors/DCDC5/power3_input", + "type": 0, + "compute": "@/1000000" + }, + { + "name": "DCDC5_POS0V75_NIF_1_2_TRVDD_TEMP", + "sysfsPath": "/run/devmap/sensors/DCDC5/temp1_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 130 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC5_POS0V9_NIF_1_2_TRVDD_VOUT", + "sysfsPath": "/run/devmap/sensors/DCDC5/in4_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.945, + "minAlarmVal": 0.855, + "upperCriticalVal": 0.99, + "lowerCriticalVal": 0.81 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC5_POS0V9_NIF_1_2_TRVDD_IOUT", + "sysfsPath": "/run/devmap/sensors/DCDC5/curr4_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 64 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC5_POS0V9_NIF_1_2_TRVDD_POUT", + "sysfsPath": "/run/devmap/sensors/DCDC5/power4_input", + "type": 0, + "compute": "@/1000000" + }, + { + "name": "DCDC5_POS0V9_NIF_1_2_TRVDD_TEMP", + "sysfsPath": "/run/devmap/sensors/DCDC5/temp2_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 130 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC6_POS0V72_C2C_PB0_TRVDD_VOUT", + "sysfsPath": "/run/devmap/sensors/DCDC6/in3_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.756, + "minAlarmVal": 0.684, + "upperCriticalVal": 0.792, + "lowerCriticalVal": 0.648 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC6_POS0V72_C2C_PB0_TRVDD_IOUT", + "sysfsPath": "/run/devmap/sensors/DCDC6/curr3_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 35 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC6_POS0V72_C2C_PB0_TRVDD_POUT", + "sysfsPath": "/run/devmap/sensors/DCDC6/power3_input", + "type": 0, + "compute": "@/1000000" + }, + { + "name": "DCDC6_POS0V72_C2C_PB0_TRVDD_TEMP", + "sysfsPath": "/run/devmap/sensors/DCDC6/temp1_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 130 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC6_POS0V72_C2C_PB1_TRVDD_VOUT", + "sysfsPath": "/run/devmap/sensors/DCDC6/in4_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.756, + "minAlarmVal": 0.684, + "upperCriticalVal": 0.792, + "lowerCriticalVal": 0.648 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC6_POS0V72_C2C_PB1_TRVDD_IOUT", + "sysfsPath": "/run/devmap/sensors/DCDC6/curr4_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 35 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC6_POS0V72_C2C_PB1_TRVDD_POUT", + "sysfsPath": "/run/devmap/sensors/DCDC6/power4_input", + "type": 0, + "compute": "@/1000000" + }, + { + "name": "DCDC6_POS0V72_C2C_PB1_TRVDD_TEMP", + "sysfsPath": "/run/devmap/sensors/DCDC6/temp2_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 130 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC7_POS0V72_NIF0_PB_TRVDD_VOUT", + "sysfsPath": "/run/devmap/sensors/DCDC7/in3_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.756, + "minAlarmVal": 0.684, + "upperCriticalVal": 0.792, + "lowerCriticalVal": 0.648 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC7_POS0V72_NIF0_PB_TRVDD_IOUT", + "sysfsPath": "/run/devmap/sensors/DCDC7/curr3_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 35 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC7_POS0V72_NIF0_PB_TRVDD_POUT", + "sysfsPath": "/run/devmap/sensors/DCDC7/power3_input", + "type": 0, + "compute": "@/1000000" + }, + { + "name": "DCDC7_POS0V72_NIF0_PB_TRVDD_TEMP", + "sysfsPath": "/run/devmap/sensors/DCDC7/temp1_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 130 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC7_POS0V72_NIF3_PB_TRVDD_VOUT", + "sysfsPath": "/run/devmap/sensors/DCDC7/in4_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.756, + "minAlarmVal": 0.684, + "upperCriticalVal": 0.792, + "lowerCriticalVal": 0.648 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC7_POS0V72_NIF3_PB_TRVDD_IOUT", + "sysfsPath": "/run/devmap/sensors/DCDC7/curr4_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 35 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC7_POS0V72_NIF3_PB_TRVDD_POUT", + "sysfsPath": "/run/devmap/sensors/DCDC7/power4_input", + "type": 0, + "compute": "@/1000000" + }, + { + "name": "DCDC7_POS0V72_NIF3_PB_TRVDD_TEMP", + "sysfsPath": "/run/devmap/sensors/DCDC7/temp2_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 130 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC8_POS0V72_NIF1_PB_TRVDD_VOUT", + "sysfsPath": "/run/devmap/sensors/DCDC8/in3_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.756, + "minAlarmVal": 0.684, + "upperCriticalVal": 0.792, + "lowerCriticalVal": 0.648 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC8_POS0V72_NIF1_PB_TRVDD_IOUT", + "sysfsPath": "/run/devmap/sensors/DCDC8/curr3_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 35 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC8_POS0V72_NIF1_PB_TRVDD_POUT", + "sysfsPath": "/run/devmap/sensors/DCDC8/power3_input", + "type": 0, + "compute": "@/1000000" + }, + { + "name": "DCDC8_POS0V72_NIF1_PB_TRVDD_TEMP", + "sysfsPath": "/run/devmap/sensors/DCDC8/temp1_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 130 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC8_POS0V72_NIF2_PB_TRVDD_VOUT", + "sysfsPath": "/run/devmap/sensors/DCDC8/in4_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.756, + "minAlarmVal": 0.684, + "upperCriticalVal": 0.792, + "lowerCriticalVal": 0.648 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC8_POS0V72_NIF2_PB_TRVDD_IOUT", + "sysfsPath": "/run/devmap/sensors/DCDC8/curr4_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 35 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC8_POS0V72_NIF2_PB_TRVDD_POUT", + "sysfsPath": "/run/devmap/sensors/DCDC8/power4_input", + "type": 0, + "compute": "@/1000000" + }, + { + "name": "DCDC8_POS0V72_NIF2_PB_TRVDD_TEMP", + "sysfsPath": "/run/devmap/sensors/DCDC8/temp2_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 130 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC9_POS1V1_HBM0_VDDQC_VOUT", + "sysfsPath": "/run/devmap/sensors/DCDC9/in3_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 1.155, + "minAlarmVal": 1.045, + "upperCriticalVal": 1.21, + "lowerCriticalVal": 0.99 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC9_POS1V1_HBM0_VDDQC_IOUT", + "sysfsPath": "/run/devmap/sensors/DCDC9/curr3_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 43 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC9_POS1V1_HBM0_VDDQC_POUT", + "sysfsPath": "/run/devmap/sensors/DCDC9/power3_input", + "type": 0, + "compute": "@/1000000" + }, + { + "name": "DCDC9_POS1V1_HBM0_VDDQC_TEMP", + "sysfsPath": "/run/devmap/sensors/DCDC9/temp1_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 130 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC9_POS0V75_HBM0_PHYVDD_VOUT", + "sysfsPath": "/run/devmap/sensors/DCDC9/in4_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.788, + "minAlarmVal": 0.712, + "upperCriticalVal": 0.825, + "lowerCriticalVal": 0.675 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC9_POS0V75_HBM0_PHYVDD_IOUT", + "sysfsPath": "/run/devmap/sensors/DCDC9/curr4_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 15 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC9_POS0V75_HBM0_PHYVDD_POUT", + "sysfsPath": "/run/devmap/sensors/DCDC9/power4_input", + "type": 0, + "compute": "@/1000000" + }, + { + "name": "DCDC9_POS0V75_HBM0_PHYVDD_TEMP", + "sysfsPath": "/run/devmap/sensors/DCDC9/temp2_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 130 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC10_POS1V1_HBM1_VDDQC_VOUT", + "sysfsPath": "/run/devmap/sensors/DCDC10/in3_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 1.155, + "minAlarmVal": 1.045, + "upperCriticalVal": 1.21, + "lowerCriticalVal": 0.99 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC10_POS1V1_HBM1_VDDQC_IOUT", + "sysfsPath": "/run/devmap/sensors/DCDC10/curr3_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 43 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC10_POS1V1_HBM1_VDDQC_POUT", + "sysfsPath": "/run/devmap/sensors/DCDC10/power3_input", + "type": 0, + "compute": "@/1000000" + }, + { + "name": "DCDC10_POS1V1_HBM1_VDDQC_TEMP", + "sysfsPath": "/run/devmap/sensors/DCDC10/temp1_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 130 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC10_POS0V75_HBM1_PHYVDD_VOUT", + "sysfsPath": "/run/devmap/sensors/DCDC10/in4_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.788, + "minAlarmVal": 0.712, + "upperCriticalVal": 0.825, + "lowerCriticalVal": 0.675 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC10_POS0V75_HBM1_PHYVDD_IOUT", + "sysfsPath": "/run/devmap/sensors/DCDC10/curr4_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 15 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC10_POS0V75_HBM1_PHYVDD_POUT", + "sysfsPath": "/run/devmap/sensors/DCDC10/power4_input", + "type": 0, + "compute": "@/1000000" + }, + { + "name": "DCDC10_POS0V75_HBM1_PHYVDD_TEMP", + "sysfsPath": "/run/devmap/sensors/DCDC10/temp2_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 130 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC11_POS1V1_HBM2_VDDQC_VOUT", + "sysfsPath": "/run/devmap/sensors/DCDC11/in3_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 1.155, + "minAlarmVal": 1.045, + "upperCriticalVal": 1.21, + "lowerCriticalVal": 0.99 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC11_POS1V1_HBM2_VDDQC_IOUT", + "sysfsPath": "/run/devmap/sensors/DCDC11/curr3_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 43 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC11_POS1V1_HBM2_VDDQC_POUT", + "sysfsPath": "/run/devmap/sensors/DCDC11/power3_input", + "type": 0, + "compute": "@/1000000" + }, + { + "name": "DCDC11_POS1V1_HBM2_VDDQC_TEMP", + "sysfsPath": "/run/devmap/sensors/DCDC11/temp1_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 130 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC11_POS0V75_HBM2_PHYVDD_VOUT", + "sysfsPath": "/run/devmap/sensors/DCDC11/in4_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.788, + "minAlarmVal": 0.712, + "upperCriticalVal": 0.825, + "lowerCriticalVal": 0.675 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC11_POS0V75_HBM2_PHYVDD_IOUT", + "sysfsPath": "/run/devmap/sensors/DCDC11/curr4_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 15 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC11_POS0V75_HBM2_PHYVDD_POUT", + "sysfsPath": "/run/devmap/sensors/DCDC11/power4_input", + "type": 0, + "compute": "@/1000000" + }, + { + "name": "DCDC11_POS0V75_HBM2_PHYVDD_TEMP", + "sysfsPath": "/run/devmap/sensors/DCDC11/temp2_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 130 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC12_POS1V1_HBM3_VDDQC_VOUT", + "sysfsPath": "/run/devmap/sensors/DCDC12/in3_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 1.155, + "minAlarmVal": 1.045, + "upperCriticalVal": 1.21, + "lowerCriticalVal": 0.99 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC12_POS1V1_HBM3_VDDQC_IOUT", + "sysfsPath": "/run/devmap/sensors/DCDC12/curr3_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 43 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC12_POS1V1_HBM3_VDDQC_POUT", + "sysfsPath": "/run/devmap/sensors/DCDC12/power3_input", + "type": 0, + "compute": "@/1000000" + }, + { + "name": "DCDC12_POS1V1_HBM3_VDDQC_TEMP", + "sysfsPath": "/run/devmap/sensors/DCDC12/temp1_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 130 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC12_POS0V75_HBM3_PHYVDD_VOUT", + "sysfsPath": "/run/devmap/sensors/DCDC12/in4_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.788, + "minAlarmVal": 0.712, + "upperCriticalVal": 0.825, + "lowerCriticalVal": 0.675 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC12_POS0V75_HBM3_PHYVDD_IOUT", + "sysfsPath": "/run/devmap/sensors/DCDC12/curr4_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 15 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC12_POS0V75_HBM3_PHYVDD_POUT", + "sysfsPath": "/run/devmap/sensors/DCDC12/power4_input", + "type": 0, + "compute": "@/1000000" + }, + { + "name": "DCDC12_POS0V75_HBM3_PHYVDD_TEMP", + "sysfsPath": "/run/devmap/sensors/DCDC12/temp2_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 130 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC13_POS0V4_HBM0_VDDQL_VOUT", + "sysfsPath": "/run/devmap/sensors/DCDC13/in3_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.42, + "minAlarmVal": 0.38, + "upperCriticalVal": 0.44, + "lowerCriticalVal": 0.36 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC13_POS0V4_HBM0_VDDQL_IOUT", + "sysfsPath": "/run/devmap/sensors/DCDC13/curr3_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 4 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC13_POS0V4_HBM0_VDDQL_POUT", + "sysfsPath": "/run/devmap/sensors/DCDC13/power3_input", + "type": 0, + "compute": "@/1000000" + }, + { + "name": "DCDC13_POS0V4_HBM0_VDDQL_TEMP", + "sysfsPath": "/run/devmap/sensors/DCDC13/temp1_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 130 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC13_POS0V4_HBM3_VDDQL_VOUT", + "sysfsPath": "/run/devmap/sensors/DCDC13/in4_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.42, + "minAlarmVal": 0.38, + "upperCriticalVal": 0.44, + "lowerCriticalVal": 0.36 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC13_POS0V4_HBM3_VDDQL_IOUT", + "sysfsPath": "/run/devmap/sensors/DCDC13/curr4_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 4 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC13_POS0V4_HBM3_VDDQL_POUT", + "sysfsPath": "/run/devmap/sensors/DCDC13/power4_input", + "type": 0, + "compute": "@/1000000" + }, + { + "name": "DCDC13_POS0V4_HBM3_VDDQL_TEMP", + "sysfsPath": "/run/devmap/sensors/DCDC13/temp2_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 130 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC14_POS0V4_HBM1_VDDQL_VOUT", + "sysfsPath": "/run/devmap/sensors/DCDC14/in3_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.42, + "minAlarmVal": 0.38, + "upperCriticalVal": 0.44, + "lowerCriticalVal": 0.36 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC14_POS0V4_HBM1_VDDQL_IOUT", + "sysfsPath": "/run/devmap/sensors/DCDC14/curr3_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 4 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC14_POS0V4_HBM1_VDDQL_POUT", + "sysfsPath": "/run/devmap/sensors/DCDC14/power3_input", + "type": 0, + "compute": "@/1000000" + }, + { + "name": "DCDC14_POS0V4_HBM1_VDDQL_TEMP", + "sysfsPath": "/run/devmap/sensors/DCDC14/temp1_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 130 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC14_POS0V4_HBM2_VDDQL_VOUT", + "sysfsPath": "/run/devmap/sensors/DCDC14/in4_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 0.42, + "minAlarmVal": 0.38, + "upperCriticalVal": 0.44, + "lowerCriticalVal": 0.36 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC14_POS0V4_HBM2_VDDQL_IOUT", + "sysfsPath": "/run/devmap/sensors/DCDC14/curr4_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 4 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC14_POS0V4_HBM2_VDDQL_POUT", + "sysfsPath": "/run/devmap/sensors/DCDC14/power4_input", + "type": 0, + "compute": "@/1000000" + }, + { + "name": "DCDC14_POS0V4_HBM2_VDDQL_TEMP", + "sysfsPath": "/run/devmap/sensors/DCDC14/temp2_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 130 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC15_POS3V3_EAST_VOUT", + "sysfsPath": "/run/devmap/sensors/DCDC15/in3_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 3.465, + "minAlarmVal": 3.135, + "upperCriticalVal": 3.63, + "lowerCriticalVal": 2.97 + }, + "compute": "(6/5)*@/1000.0" + }, + { + "name": "DCDC15_POS3V3_EAST_IOUT", + "sysfsPath": "/run/devmap/sensors/DCDC15/curr3_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 320 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC15_POS3V3_EAST_POUT", + "sysfsPath": "/run/devmap/sensors/DCDC15/power3_input", + "type": 0, + "compute": "(6/5)*@/1000000" + }, + { + "name": "DCDC15_POS3V3_EAST_TEMP", + "sysfsPath": "/run/devmap/sensors/DCDC15/temp1_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 130 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC16_POS3V3_WEST_VOUT", + "sysfsPath": "/run/devmap/sensors/DCDC16/in3_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 3.465, + "minAlarmVal": 3.135, + "upperCriticalVal": 3.63, + "lowerCriticalVal": 2.97 + }, + "compute": "(6/5)*@/1000.0" + }, + { + "name": "DCDC16_POS3V3_WEST_IOUT", + "sysfsPath": "/run/devmap/sensors/DCDC16/curr3_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 320 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC16_POS3V3_WEST_POUT", + "sysfsPath": "/run/devmap/sensors/DCDC16/power3_input", + "type": 0, + "compute": "(6/5)*@/1000000" + }, + { + "name": "DCDC16_POS3V3_WEST_TEMP", + "sysfsPath": "/run/devmap/sensors/DCDC16/temp1_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 130 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC17_POS1V8_DP_VOUT", + "sysfsPath": "/run/devmap/sensors/DCDC17/in3_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 1.89, + "minAlarmVal": 1.71, + "upperCriticalVal": 1.98, + "lowerCriticalVal": 1.62 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC17_POS1V8_DP_IOUT", + "sysfsPath": "/run/devmap/sensors/DCDC17/curr3_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 20 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC17_POS1V8_DP_POUT", + "sysfsPath": "/run/devmap/sensors/DCDC17/power3_input", + "type": 0, + "compute": "@/1000000" + }, + { + "name": "DCDC17_POS1V8_DP_TEMP", + "sysfsPath": "/run/devmap/sensors/DCDC17/temp1_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 130 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC17_POS1V2_DP_VOUT", + "sysfsPath": "/run/devmap/sensors/DCDC17/in4_input", + "type": 1, + "thresholds": { + "maxAlarmVal": 1.26, + "minAlarmVal": 1.14, + "upperCriticalVal": 1.32, + "lowerCriticalVal": 1.08 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC17_POS1V2_DP_IOUT", + "sysfsPath": "/run/devmap/sensors/DCDC17/curr4_input", + "type": 2, + "thresholds": { + "maxAlarmVal": 13 + }, + "compute": "@/1000.0" + }, + { + "name": "DCDC17_POS1V2_DP_POUT", + "sysfsPath": "/run/devmap/sensors/DCDC17/power4_input", + "type": 0, + "compute": "@/1000000" + }, + { + "name": "DCDC17_POS1V2_DP_TEMP", + "sysfsPath": "/run/devmap/sensors/DCDC17/temp2_input", + "type": 3, + "thresholds": { + "maxAlarmVal": 120, + "upperCriticalVal": 130 + }, + "compute": "@/1000.0" + } + ] + } + ], + "temperatureConfigs": [ + { + "name": "ASIC", + "temperatureSensorNames": [ + "ASIC_D0_TEMP0", + "ASIC_D0_TEMP1", + "ASIC_D0_TEMP2", + "ASIC_D0_TEMP3", + "ASIC_D0_TEMP4", + "ASIC_D0_TEMP5", + "ASIC_D0_TEMP6", + "ASIC_D0_TEMP7", + "ASIC_D1_TEMP0", + "ASIC_D1_TEMP1", + "ASIC_D1_TEMP2", + "ASIC_D1_TEMP3", + "ASIC_D1_TEMP4", + "ASIC_D1_TEMP5", + "ASIC_D1_TEMP6", + "ASIC_D1_TEMP7" + ] + } + ], + "powerConfig": { + "perSlotPowerConfigs": [ + { + "name": "PSU1", + "powerSensorName": "PSU1_PIN", + "slotPath": "/SMB_SLOT@0" + }, + { + "name": "PSU2", + "powerSensorName": "PSU2_PIN", + "slotPath": "/SMB_SLOT@0" + }, + { + "name": "PSU3", + "powerSensorName": "PSU3_PIN", + "slotPath": "/SMB_SLOT@0" + }, + { + "name": "PSU4", + "powerSensorName": "PSU4_PIN", + "slotPath": "/SMB_SLOT@0" + } + ], + "inputVoltageSensors": [ + "PSU1_VIN", + "PSU2_VIN", + "PSU3_VIN", + "PSU4_VIN" + ], + "minAcPsuCount": 2, + "minDcPsuCount": 0 + } +} diff --git a/fboss/platform/config_lib/ConfigLibTest.cpp b/fboss/platform/config_lib/ConfigLibTest.cpp index 62bea2a6f7094..0fc9b05a1ded8 100644 --- a/fboss/platform/config_lib/ConfigLibTest.cpp +++ b/fboss/platform/config_lib/ConfigLibTest.cpp @@ -20,6 +20,7 @@ const std::string kBlackwolf800banw = "blackwolf800banw"; const std::string kIcecube = "icecube"; const std::string kM4061nhp = "m4061nhp"; const std::string kM4062nhp = "m4062nhp"; +const std::string kM4340nhp = "m4340nhp"; const std::string kSample = "sample"; const std::string kWedge800cact = "wedge800cact"; const std::string kWedge800cnhp = "wedge800cnhp"; @@ -36,6 +37,7 @@ TEST(ConfigLibTest, Basic) { EXPECT_NO_THROW(ConfigLib().getSensorServiceConfig(kTahan800bc)); EXPECT_NO_THROW(ConfigLib().getSensorServiceConfig(kBlackwolf800banw)); EXPECT_NO_THROW(ConfigLib().getSensorServiceConfig(kM4061nhp)); + EXPECT_NO_THROW(ConfigLib().getSensorServiceConfig(kM4340nhp)); EXPECT_THROW( ConfigLib().getSensorServiceConfig(kNonExistentPlatform), std::runtime_error); @@ -50,6 +52,7 @@ TEST(ConfigLibTest, Basic) { EXPECT_NO_THROW(ConfigLib().getFanServiceConfig(kBlackwolf800banw)); EXPECT_NO_THROW(ConfigLib().getFanServiceConfig(kSample)); EXPECT_NO_THROW(ConfigLib().getFanServiceConfig(kM4061nhp)); + EXPECT_NO_THROW(ConfigLib().getFanServiceConfig(kM4340nhp)); EXPECT_THROW( ConfigLib().getFanServiceConfig(kNonExistentPlatform), std::runtime_error); @@ -60,6 +63,7 @@ TEST(ConfigLibTest, Basic) { EXPECT_NO_THROW(ConfigLib().getPlatformManagerConfig(kMontblanc)); EXPECT_NO_THROW(ConfigLib().getPlatformManagerConfig(kM4061nhp)); EXPECT_NO_THROW(ConfigLib().getPlatformManagerConfig(kM4062nhp)); + EXPECT_NO_THROW(ConfigLib().getPlatformManagerConfig(kM4340nhp)); EXPECT_NO_THROW(ConfigLib().getPlatformManagerConfig(kMorgan800cc)); EXPECT_NO_THROW(ConfigLib().getPlatformManagerConfig(kJanga800bic)); EXPECT_NO_THROW(ConfigLib().getPlatformManagerConfig(kTahan800bc)); @@ -84,6 +88,7 @@ TEST(ConfigLibTest, Basic) { EXPECT_NO_THROW(ConfigLib().getLedManagerConfig(kDarwin)); EXPECT_NO_THROW(ConfigLib().getLedManagerConfig(kMorgan800cc)); EXPECT_NO_THROW(ConfigLib().getLedManagerConfig(kM4061nhp)); + EXPECT_NO_THROW(ConfigLib().getLedManagerConfig(kM4340nhp)); EXPECT_THROW( ConfigLib().getLedManagerConfig(kNonExistentPlatform), std::runtime_error); diff --git a/fboss/platform/config_lib/CrossConfigValidator.cpp b/fboss/platform/config_lib/CrossConfigValidator.cpp index 99864555cd539..5fa60edd62965 100644 --- a/fboss/platform/config_lib/CrossConfigValidator.cpp +++ b/fboss/platform/config_lib/CrossConfigValidator.cpp @@ -13,6 +13,7 @@ namespace { const re2::RE2 kRuntimePathRegex{ "(?P/run/devmap/(sensors|gpiochips|fpgas|cplds)/[^/]+)($|(/.+)+)"}; +const re2::RE2 kAgentAsicTempSensorRegex{"asic_temp_\\d+_\\d+"}; }; // namespace namespace facebook::fboss::platform { @@ -73,17 +74,20 @@ bool CrossConfigValidator::isValidFanServiceConfig( *pmConfig_.platformName()); return false; } + auto isValidSensorName = [&](const std::string& sensorName) { + return re2::RE2::FullMatch(sensorName, kAgentAsicTempSensorRegex) || + sensor_service::ConfigValidator().isValidSensorName( + *sensorConfig, sensorName); + }; for (const auto& sensor : *fanConfig.sensors()) { - if (!sensor_service::ConfigValidator().isValidSensorName( - *sensorConfig, *sensor.sensorName())) { + if (!isValidSensorName(*sensor.sensorName())) { return false; } } // add the sensor name validation check for shutdownCondition config if (fanConfig.shutdownCondition()) { for (const auto& condition : *fanConfig.shutdownCondition()->conditions()) { - if (!sensor_service::ConfigValidator().isValidSensorName( - *sensorConfig, *condition.sensorName())) { + if (!isValidSensorName(*condition.sensorName())) { return false; } } diff --git a/fboss/platform/config_lib/tests/CrossConfigValidatorTest.cpp b/fboss/platform/config_lib/tests/CrossConfigValidatorTest.cpp index e3bbbda65c148..626f89547edbf 100644 --- a/fboss/platform/config_lib/tests/CrossConfigValidatorTest.cpp +++ b/fboss/platform/config_lib/tests/CrossConfigValidatorTest.cpp @@ -129,6 +129,18 @@ TEST_F(CrossConfigValidatorTest, ValidFanConfig) { config.sensors() = {fanSensor}; EXPECT_TRUE( crossConfigValidator_->isValidFanServiceConfig(config, sensorConfig)); + + // Test agent ASIC temperature sensor names + fan_service::Sensor asicSensor; + asicSensor.sensorName() = "asic_temp_0_15"; + config.sensors() = {fanSensor, asicSensor}; + fan_service::OvertempEntry overtempEntry; + overtempEntry.sensorName() = "asic_temp_0_0"; + fan_service::ShutdownCondition shutdownCondition; + shutdownCondition.conditions() = {overtempEntry}; + config.shutdownCondition() = shutdownCondition; + EXPECT_TRUE( + crossConfigValidator_->isValidFanServiceConfig(config, sensorConfig)); } TEST_F(CrossConfigValidatorTest, InvalidFanConfig) { @@ -186,6 +198,13 @@ TEST_F(CrossConfigValidatorTest, InvalidFanConfig) { sensorConfig.pmUnitSensorsList() = {pmUnitSensors}; EXPECT_FALSE( crossConfigValidator_->isValidFanServiceConfig(config, sensorConfig)); + + // Malformed agent ASIC temperature sensor name + config.fans() = {validFan}; + fanSensor.sensorName() = "asic_temp_0"; + config.sensors() = {fanSensor}; + EXPECT_FALSE( + crossConfigValidator_->isValidFanServiceConfig(config, sensorConfig)); } TEST_F(CrossConfigValidatorTest, ValidWeutilConfig) { diff --git a/fboss/platform/fan_service/OvertempCondition.cpp b/fboss/platform/fan_service/OvertempCondition.cpp index 1ee0c1af2ab85..a1c0e773d6533 100644 --- a/fboss/platform/fan_service/OvertempCondition.cpp +++ b/fboss/platform/fan_service/OvertempCondition.cpp @@ -77,7 +77,7 @@ bool OvertempCondition::checkIfOvertemp() { overtempItem++) { auto& entry = overtempItem->second; if (entry.length == 0) { - return false; + continue; } float movingAverage = entry.sumTotal / entry.length; if (movingAverage > entry.overtempThreshold) { diff --git a/fboss/platform/fan_service/tests/OvertempTests.cpp b/fboss/platform/fan_service/tests/OvertempTests.cpp index cc0307b3cb199..36fa1aa0e1202 100644 --- a/fboss/platform/fan_service/tests/OvertempTests.cpp +++ b/fboss/platform/fan_service/tests/OvertempTests.cpp @@ -68,3 +68,15 @@ TEST(OvertempConditionTest, SlidingWindow) { overtempCondition.processSensorData("Zinclake_Hotswap_Temp", 120.1); EXPECT_TRUE(overtempCondition.checkIfOvertemp()); } + +TEST(OvertempConditionTest, SensorWithoutData) { + OvertempCondition overtempCondition; + overtempCondition.setNumOvertempSensorForShutdown(1); + overtempCondition.addSensorForTracking("Asic_Core_Temp", 112.0, 1); + overtempCondition.addSensorForTracking("Board_Diode_Temp", 122.0, 1); + EXPECT_FALSE(overtempCondition.checkIfOvertemp()); + + // A sensor that never reported must not disable the check for the others. + overtempCondition.processSensorData("Board_Diode_Temp", 125.3); + EXPECT_TRUE(overtempCondition.checkIfOvertemp()); +} diff --git a/fboss/platform/platform_manager/platform_manager_validators.thrift b/fboss/platform/platform_manager/platform_manager_validators.thrift index ddd21c93fb0f4..ce8196a79e13c 100644 --- a/fboss/platform/platform_manager/platform_manager_validators.thrift +++ b/fboss/platform/platform_manager/platform_manager_validators.thrift @@ -97,6 +97,7 @@ const list PLATFORMS_WITH_IDPROM_CHASSIS_EEPROM = [ "JANGA800BIC", "TAHAN800BC", "M4062NHP", + "M4340NHP", ]; // List of platforms that are allowed to have logical EEPROMs.