From df3359935e826d6719a96962483ad7079ed55db5 Mon Sep 17 00:00:00 2001 From: Raptor Engineering Development Team Date: Thu, 13 Feb 2020 12:13:05 +0000 Subject: As a COTS solution in the ATX ecosystem, Talos II doesn't have dedicated PSU power monitoring capabilities Report CPU power consumption in BMC Web GUI instead of total system power consumption --- .../webui/phosphor-webui/cpu-power-reporting.patch | 148 +++++++++++++++++++++ .../webui/phosphor-webui_git.bbappend | 4 +- 2 files changed, 151 insertions(+), 1 deletion(-) create mode 100644 meta-rcs/meta-talos/recipes-phosphor/webui/phosphor-webui/cpu-power-reporting.patch diff --git a/meta-rcs/meta-talos/recipes-phosphor/webui/phosphor-webui/cpu-power-reporting.patch b/meta-rcs/meta-talos/recipes-phosphor/webui/phosphor-webui/cpu-power-reporting.patch new file mode 100644 index 000000000..749033eba --- /dev/null +++ b/meta-rcs/meta-talos/recipes-phosphor/webui/phosphor-webui/cpu-power-reporting.patch @@ -0,0 +1,148 @@ +diff --git a/app/common/services/api-utils.js b/app/common/services/api-utils.js +index 7643a4e..df0e7cf 100644 +--- a/app/common/services/api-utils.js ++++ b/app/common/services/api-utils.js +@@ -1488,22 +1488,40 @@ window.angular && (function(angular) { + }); + return $q.all(promises); + }, +- getPowerConsumption: function() { ++ getCPUPowerConsumption: function() { + return $http({ + method: 'GET', + url: DataService.getHost() + +- '/xyz/openbmc_project/sensors/power/total_power', ++ '/xyz/openbmc_project/sensors/power/p0_power', + withCredentials: true + }) + .then( + function(response) { + var json = JSON.stringify(response.data); + var content = JSON.parse(json); ++ var first_cpu_data = content.data; + +- return getScaledValue( +- content.data.Value, content.data.Scale) + +- ' ' + +- Constants.POWER_CONSUMPTION_TEXT[content.data.Unit]; ++ return $http({ ++ method: 'GET', ++ url: DataService.getHost() + ++ '/xyz/openbmc_project/sensors/power/p1_power', ++ withCredentials: true ++ }) ++ .then( ++ function(response) { ++ var second_cpu_value = content.data.Value; ++ ++ return getScaledValue( ++ first_cpu_data.Value + second_cpu_value, first_cpu_data.Scale) + ++ ' ' + ++ Constants.POWER_CONSUMPTION_TEXT[first_cpu_data.Unit]; ++ }, ++ function(error) { ++ return getScaledValue( ++ first_cpu_data.Value, first_cpu_data.Scale) + ++ ' ' + ++ Constants.POWER_CONSUMPTION_TEXT[first_cpu_data.Unit]; ++ }); + }, + function(error) { + if ('Not Found' == error.statusText) { +diff --git a/app/overview/controllers/system-overview-controller.html b/app/overview/controllers/system-overview-controller.html +index 629e0ab..03644c6 100644 +--- a/app/overview/controllers/system-overview-controller.html ++++ b/app/overview/controllers/system-overview-controller.html +@@ -83,8 +83,8 @@ +