diff options
author | Chris Cain <cjcain@us.ibm.com> | 2017-06-05 11:48:32 -0500 |
---|---|---|
committer | Daniel M. Crowell <dcrowell@us.ibm.com> | 2017-06-22 09:30:04 -0400 |
commit | 7d4cab0615138ae20cc02013b595f36f02e21a63 (patch) | |
tree | a23cd06845aba746e8194fadc0f7cc4652cad51b /src/usr/htmgt/test | |
parent | ccb74685e3205a1f74e4a2264f27775144600d2c (diff) | |
download | talos-hostboot-7d4cab0615138ae20cc02013b595f36f02e21a63.tar.gz talos-hostboot-7d4cab0615138ae20cc02013b595f36f02e21a63.zip |
HTMGT: Memory Throttling and Power Capping support
- Enable DIMM thermal monitoring
- Implement VRM thermal monitoring support
- Implement memory throttle calculations
- Move HTMGT only attributes to _openpower xml files
System owner will need to update the following for full support:
OPEN_POWER_MIN_MEM_UTILIZATION_POWER_CAP
OPEN_POWER_VRM_READ_TIMEOUT_SEC
Change-Id: Ib7f31e58c62af4b66edc3989156ebc6e636cc741
RTC: 153942
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/41982
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Reviewed-by: Martha Broyles <mbroyles@us.ibm.com>
Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/usr/htmgt/test')
-rw-r--r-- | src/usr/htmgt/test/htmgtcfgtest.H | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/src/usr/htmgt/test/htmgtcfgtest.H b/src/usr/htmgt/test/htmgtcfgtest.H index 776d24e2a..ab71ec034 100644 --- a/src/usr/htmgt/test/htmgtcfgtest.H +++ b/src/usr/htmgt/test/htmgtcfgtest.H @@ -127,31 +127,37 @@ public: //Make sure all of the numerators are set for (mba=mbas.begin();mba!=mbas.end();++mba) { - if (0 == (*mba)->getAttr<ATTR_OT_MIN_N_PER_MBA>()) + ATTR_OT_MIN_N_PER_MBA_type n; + (*mba)->tryGetAttr<ATTR_OT_MIN_N_PER_MBA>(n); + if ((0 == n[0]) && (0 == n[1])) { TS_FAIL("MBA 0x%X has value of zero for OT_MIN_N_PER_MBA", (*mba)->getAttr<ATTR_HUID>()); } - if (0 == (*mba)->getAttr<ATTR_N_PLUS_ONE_N_PER_MBA>()) + (*mba)->tryGetAttr<ATTR_N_PLUS_ONE_N_PER_MBA>(n); + if ((0 == n[0]) && (0 == n[1])) { TS_FAIL("MBA 0x%X has value of zero for N_PLUS_ONE_N_PER_MBA", (*mba)->getAttr<ATTR_HUID>()); } - if (0 == (*mba)->getAttr<ATTR_N_PLUS_ONE_N_PER_CHIP>()) + (*mba)->tryGetAttr<ATTR_N_PLUS_ONE_N_PER_CHIP>(n); + if ((0 == n[0]) && (0 == n[1])) { TS_FAIL("MBA 0x%X has value of zero for N_PLUS_ONE_N_PER_CHIP", (*mba)->getAttr<ATTR_HUID>()); } - if (0 == (*mba)->getAttr<ATTR_OVERSUB_N_PER_MBA>()) + (*mba)->tryGetAttr<ATTR_OVERSUB_N_PER_MBA>(n); + if ((0 == n[0]) && (0 == n[1])) { TS_FAIL("MBA 0x%X has value of zero for OVERSUB_N_PER_MBA", (*mba)->getAttr<ATTR_HUID>()); } - if (0 == (*mba)->getAttr<ATTR_OVERSUB_N_PER_CHIP>()) + (*mba)->tryGetAttr<ATTR_OVERSUB_N_PER_CHIP>(n); + if ((0 == n[0]) && (0 == n[1])) { TS_FAIL("MBA 0x%X has value of zero for OVERSUB_N_PER_CHIP", (*mba)->getAttr<ATTR_HUID>()); @@ -179,7 +185,7 @@ public: { memset(data, 0, 4*KILOBYTE); - getMemThrottleMessageData(*occ, data, size); + getMemThrottleMessageData(*occ, 0, data, size); if (data[0] != OCC_CFGDATA_MEM_THROTTLE) { |