From 54cfdab2070a7bf23b887286459cb6b8b10e14a4 Mon Sep 17 00:00:00 2001 From: "Thang Q. Nguyen" Date: Wed, 22 Dec 2021 07:53:52 +0000 Subject: meta-ampere: mtjade: support NVME Temperature Enable phosphor-nvme with configuration for nvme_max sensor for FAN control support later. Tested: 1. Check NVME Temp: $ busctl get-property xyz.openbmc_project.nvme.manager \ /xyz/openbmc_project/sensors/temperature/nvme20 \ xyz.openbmc_project.Sensor.Value Value d 22 2. Check nvme_max has valid value $ busctl introspect xyz.openbmc_project.VirtualSensor \ /xyz/openbmc_project/sensors/temperature/nvme_max Signed-off-by: Thang Q. Nguyen Change-Id: Ied609ba5b5d39877c09ed04faff5063c7882a689 --- meta-ampere/meta-jade/conf/machine/mtjade.conf | 1 + .../sensors/phosphor-nvme/nvme_config.json | 118 +++++++++++ .../sensors/phosphor-nvme_%.bbappend | 8 + .../virtual_sensor_config.json | 218 ++++++++++++++++++++- .../sensors/phosphor-virtual-sensor_%.bbappend | 8 +- 5 files changed, 346 insertions(+), 7 deletions(-) create mode 100644 meta-ampere/meta-jade/recipes-phosphor/sensors/phosphor-nvme/nvme_config.json create mode 100644 meta-ampere/meta-jade/recipes-phosphor/sensors/phosphor-nvme_%.bbappend (limited to 'meta-ampere/meta-jade') diff --git a/meta-ampere/meta-jade/conf/machine/mtjade.conf b/meta-ampere/meta-jade/conf/machine/mtjade.conf index ede176ad0..642e7469e 100644 --- a/meta-ampere/meta-jade/conf/machine/mtjade.conf +++ b/meta-ampere/meta-jade/conf/machine/mtjade.conf @@ -34,6 +34,7 @@ OBMC_IMAGE_EXTRA_INSTALL:append = "\ mtjade-gpio-config \ ampere-platform-init \ ampere-ipmi-oem \ + phosphor-nvme \ " PREFERRED_PROVIDER_virtual/obmc-chassis-mgmt = "packagegroup-ampere-apps" diff --git a/meta-ampere/meta-jade/recipes-phosphor/sensors/phosphor-nvme/nvme_config.json b/meta-ampere/meta-jade/recipes-phosphor/sensors/phosphor-nvme/nvme_config.json new file mode 100644 index 000000000..9c2aade75 --- /dev/null +++ b/meta-ampere/meta-jade/recipes-phosphor/sensors/phosphor-nvme/nvme_config.json @@ -0,0 +1,118 @@ +{ + "config": [ + { + "NVMeDriveIndex": 0, + "NVMeDriveBusID": 50 + }, + { + "NVMeDriveIndex": 1, + "NVMeDriveBusID": 51 + }, + { + "NVMeDriveIndex": 2, + "NVMeDriveBusID": 52 + }, + { + "NVMeDriveIndex": 3, + "NVMeDriveBusID": 53 + }, + { + "NVMeDriveIndex": 4, + "NVMeDriveBusID": 54 + }, + { + "NVMeDriveIndex": 5, + "NVMeDriveBusID": 55 + }, + { + "NVMeDriveIndex": 6, + "NVMeDriveBusID": 56 + }, + { + "NVMeDriveIndex": 7, + "NVMeDriveBusID": 57 + }, + { + "NVMeDriveIndex": 8, + "NVMeDriveBusID": 60 + }, + { + "NVMeDriveIndex": 9, + "NVMeDriveBusID": 61 + }, + { + "NVMeDriveIndex": 10, + "NVMeDriveBusID": 62 + }, + { + "NVMeDriveIndex": 11, + "NVMeDriveBusID": 63 + }, + { + "NVMeDriveIndex": 12, + "NVMeDriveBusID": 64 + }, + { + "NVMeDriveIndex": 13, + "NVMeDriveBusID": 65 + }, + { + "NVMeDriveIndex": 14, + "NVMeDriveBusID": 66 + }, + { + "NVMeDriveIndex": 15, + "NVMeDriveBusID": 67 + }, + { + "NVMeDriveIndex": 16, + "NVMeDriveBusID": 70 + }, + { + "NVMeDriveIndex": 17, + "NVMeDriveBusID": 71 + }, + { + "NVMeDriveIndex": 18, + "NVMeDriveBusID": 72 + }, + { + "NVMeDriveIndex": 19, + "NVMeDriveBusID": 73 + }, + { + "NVMeDriveIndex": 20, + "NVMeDriveBusID": 74 + }, + { + "NVMeDriveIndex": 21, + "NVMeDriveBusID": 75 + }, + { + "NVMeDriveIndex": 22, + "NVMeDriveBusID": 76 + }, + { + "NVMeDriveIndex": 23, + "NVMeDriveBusID": 77 + }, + { + "NVMeDriveIndex": 24, + "NVMeDriveBusID": 80 + }, + { + "NVMeDriveIndex": 25, + "NVMeDriveBusID": 81 + } + ], + "threshold": [ + { + "criticalHigh": 80, + "criticalLow": 0, + "warningHigh": 70, + "warningLow": 5, + "maxValue": 127, + "minValue": -128 + } + ] +} diff --git a/meta-ampere/meta-jade/recipes-phosphor/sensors/phosphor-nvme_%.bbappend b/meta-ampere/meta-jade/recipes-phosphor/sensors/phosphor-nvme_%.bbappend new file mode 100644 index 000000000..5eadc25f7 --- /dev/null +++ b/meta-ampere/meta-jade/recipes-phosphor/sensors/phosphor-nvme_%.bbappend @@ -0,0 +1,8 @@ +FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:" + +SRC_URI += " file://nvme_config.json" + +do_install:append() { + install -m 0644 -D ${WORKDIR}/nvme_config.json \ + ${D}/etc/nvme +} diff --git a/meta-ampere/meta-jade/recipes-phosphor/sensors/phosphor-virtual-sensor/virtual_sensor_config.json b/meta-ampere/meta-jade/recipes-phosphor/sensors/phosphor-virtual-sensor/virtual_sensor_config.json index d0dc76782..abacb4f65 100644 --- a/meta-ampere/meta-jade/recipes-phosphor/sensors/phosphor-virtual-sensor/virtual_sensor_config.json +++ b/meta-ampere/meta-jade/recipes-phosphor/sensors/phosphor-virtual-sensor/virtual_sensor_config.json @@ -8,12 +8,25 @@ "Threshold" : { }, + "Associations": + [ + [ + "chassis", + "all_sensors", + "/xyz/openbmc_project/inventory/system/chassis/Mt_Jade" + ], + [ + "inventory", + "sensors", + "/xyz/openbmc_project/inventory/system/chassis/Mt_Jade" + ] + ], "Params": { "DbusParam": [ { - "ParamName": "PSU0_POUTPUT", + "ParamName": "P0", "Desc": { "Name": "PSU0_POUTPUT", @@ -21,7 +34,7 @@ } }, { - "ParamName": "PSU1_POUTPUT", + "ParamName": "P1", "Desc": { "Name": "PSU1_POUTPUT", @@ -30,7 +43,206 @@ } ] }, - "Expression": "PSU0_POUTPUT + PSU1_POUTPUT" + "Expression": "(P0 + P1) >= 0 ? (P0 + P1) : NULL" + }, + { + "Desc":{ + "Name":"nvme_max", + "SensorType":"temperature" + }, + "Threshold":{ + "CriticalHigh": 80, + "CriticalLow": 0, + "WarningHigh": 70, + "WarningLow": 5 + }, + "Params":{ + "DbusParam": [ + { + "ParamName": "n0", + "Desc": { + "Name": "nvme0", + "SensorType": "temperature" + } + }, + { + "ParamName": "n1", + "Desc": { + "Name": "nvme1", + "SensorType": "temperature" + } + }, + { + "ParamName": "n2", + "Desc": { + "Name": "nvme2", + "SensorType": "temperature" + } + }, + { + "ParamName": "n3", + "Desc": { + "Name": "nvme3", + "SensorType": "temperature" + } + }, + { + "ParamName": "n4", + "Desc": { + "Name": "nvme4", + "SensorType": "temperature" + } + }, + { + "ParamName": "n5", + "Desc": { + "Name": "nvme5", + "SensorType": "temperature" + } + }, + { + "ParamName": "n6", + "Desc": { + "Name": "nvme6", + "SensorType": "temperature" + } + }, + { + "ParamName": "n7", + "Desc": { + "Name": "nvme7", + "SensorType": "temperature" + } + }, + { + "ParamName": "n8", + "Desc": { + "Name": "nvme8", + "SensorType": "temperature" + } + }, + { + "ParamName": "n9", + "Desc": { + "Name": "nvme9", + "SensorType": "temperature" + } + }, + { + "ParamName": "n10", + "Desc": { + "Name": "nvme10", + "SensorType": "temperature" + } + }, + { + "ParamName": "n11", + "Desc": { + "Name": "nvme11", + "SensorType": "temperature" + } + }, + { + "ParamName": "n12", + "Desc": { + "Name": "nvme12", + "SensorType": "temperature" + } + }, + { + "ParamName": "n13", + "Desc": { + "Name": "nvme13", + "SensorType": "temperature" + } + }, + { + "ParamName": "n14", + "Desc": { + "Name": "nvme14", + "SensorType": "temperature" + } + }, + { + "ParamName": "n15", + "Desc": { + "Name": "nvme15", + "SensorType": "temperature" + } + }, + { + "ParamName": "n16", + "Desc": { + "Name": "nvme16", + "SensorType": "temperature" + } + }, + { + "ParamName": "n17", + "Desc": { + "Name": "nvme17", + "SensorType": "temperature" + } + }, + { + "ParamName": "n18", + "Desc": { + "Name": "nvme18", + "SensorType": "temperature" + } + }, + { + "ParamName": "n19", + "Desc": { + "Name": "nvme19", + "SensorType": "temperature" + } + }, + { + "ParamName": "n20", + "Desc": { + "Name": "nvme20", + "SensorType": "temperature" + } + }, + { + "ParamName": "n21", + "Desc": { + "Name": "nvme21", + "SensorType": "temperature" + } + }, + { + "ParamName": "n22", + "Desc": { + "Name": "nvme22", + "SensorType": "temperature" + } + }, + { + "ParamName": "n23", + "Desc": { + "Name": "nvme23", + "SensorType": "temperature" + } + }, + { + "ParamName": "n24", + "Desc": { + "Name": "nvme24", + "SensorType": "temperature" + } + }, + { + "ParamName": "n25", + "Desc": { + "Name": "nvme25", + "SensorType": "temperature" + } + } + ] + }, + "Expression": "max(0,(n0 == n0) ? n0 : NULL,(n1 == n1) ? n1 : NULL,(n2 == n2) ? n2 : NULL,(n3 == n3) ? n3 : NULL,(n4 == n4) ? n4 : NULL,(n5 == n5) ? n5 : NULL,(n6 == n6) ? n6 : NULL,(n7 == n7) ? n7 : NULL,(n8 == n8) ? n8 : NULL,(n9 == n9) ? n9 : NULL,(n10 == n10) ? n10 : NULL,(n11 == n11) ? n11 : NULL,(n12 == n12) ? n12 : NULL,(n13 == n13) ? n13 : NULL,(n14 == n14) ? n14 : NULL,(n15 == n15) ? n15 : NULL,(n16 == n16) ? n16 : NULL,(n17 == n17) ? n17 : NULL,(n18 == n18) ? n18 : NULL,(n19 == n19) ? n19 : NULL,(n20 == n20) ? n20 : NULL,(n21 == n21) ? n21 : NULL,(n22 == n22) ? n22 : NULL,(n23 == n23) ? n23 : NULL,(n24 == n24) ? n24 : NULL,(n25 == n25) ? n25 : NULL)" } ] diff --git a/meta-ampere/meta-jade/recipes-phosphor/sensors/phosphor-virtual-sensor_%.bbappend b/meta-ampere/meta-jade/recipes-phosphor/sensors/phosphor-virtual-sensor_%.bbappend index 3a1af4f3b..0d1b5e63c 100644 --- a/meta-ampere/meta-jade/recipes-phosphor/sensors/phosphor-virtual-sensor_%.bbappend +++ b/meta-ampere/meta-jade/recipes-phosphor/sensors/phosphor-virtual-sensor_%.bbappend @@ -1,10 +1,10 @@ FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:" -SRC_URI:append:mtjade += " \ - file://virtual_sensor_config.json \ - " +SRC_URI:append += " \ + file://virtual_sensor_config.json \ + " -do_install:append:mtjade() { +do_install:append() { install -m 0644 ${WORKDIR}/virtual_sensor_config.json ${D}${datadir}/phosphor-virtual-sensor/ } -- cgit v1.2.3