From d9e5017e993999cdf966578b4aa8655d86400f20 Mon Sep 17 00:00:00 2001 From: marif-nexthop Date: Tue, 21 Jul 2026 10:06:02 -0700 Subject: [PATCH] [Nexthop][m4062nhp] Add embedded sensors Add the embedded temperature sensor devices on the m4062nhp SCM (CPU TCTL/TCCD, NVMe composite, NIC PHY/MAC) to platform_manager and sensor_service, with thresholds from the hardware thermal spec. --- .../configs/m4062nhp/platform_manager.json | 17 ++++++ .../configs/m4062nhp/sensor_service.json | 60 +++++++++++++++++++ 2 files changed, 77 insertions(+) diff --git a/fboss/platform/configs/m4062nhp/platform_manager.json b/fboss/platform/configs/m4062nhp/platform_manager.json index ca73516401ece..928900f72f5e1 100644 --- a/fboss/platform/configs/m4062nhp/platform_manager.json +++ b/fboss/platform/configs/m4062nhp/platform_manager.json @@ -59,6 +59,20 @@ "isEeprom": true } ], + "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" + } + ], "outgoingSlotConfigs": { "SMB_SLOT@0": { "slotType": "SMB_SLOT" @@ -430,6 +444,9 @@ "/run/devmap/eeproms/PSU4_EEPROM": "/SMB_SLOT@0/[PSU4_EEPROM]", "/run/devmap/sensors/DPM": "/[DPM]", "/run/devmap/sensors/DPM_2": "/[DPM_2]", + "/run/devmap/sensors/CPU_TEMP": "/[CPU_TEMP]", + "/run/devmap/sensors/NVME_TEMP": "/[NVME_TEMP]", + "/run/devmap/sensors/NIC_TEMP": "/[NIC_TEMP]", "/run/devmap/sensors/SWITCH_CARD_TEMP_SENSOR": "/SMB_SLOT@0/[SWITCH_CARD_TEMP_SENSOR]", "/run/devmap/fpgas/SCM_IOB": "/[SCM_IOB]", "/run/devmap/i2c-busses/SCM_IOB_I2C_0": "/[SCM_IOB_I2C_0]", diff --git a/fboss/platform/configs/m4062nhp/sensor_service.json b/fboss/platform/configs/m4062nhp/sensor_service.json index 3c4cafb57bdbc..dd299cece4d26 100644 --- a/fboss/platform/configs/m4062nhp/sensor_service.json +++ b/fboss/platform/configs/m4062nhp/sensor_service.json @@ -24,6 +24,66 @@ "lowerCriticalVal": 9 }, "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" } ] },