diff options
author | Chris Cain <cjcain@us.ibm.com> | 2015-06-18 12:46:05 -0500 |
---|---|---|
committer | A. Patrick Williams III <iawillia@us.ibm.com> | 2015-08-18 19:35:23 -0500 |
commit | 275ea30364bf2d831f213f9a73b5f8fa8ef851af (patch) | |
tree | 448949765c96bd8c4c83a109cb6ee8f7ca729c39 /src/usr/hwpf/hwp/occ | |
parent | 6ff3e00062b894a880937ce41f748e26105b579a (diff) | |
download | talos-hostboot-275ea30364bf2d831f213f9a73b5f8fa8ef851af.tar.gz talos-hostboot-275ea30364bf2d831f213f9a73b5f8fa8ef851af.zip |
HTMGT support for Pstate Table Biasing
Change-Id: I96aff34fb9b588d8546575b77655a6cf167469fb
RTC: 128436
Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/18789
Tested-by: Jenkins Server
Tested-by: Jenkins OP Build CI
Tested-by: Jenkins OP HW
Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/usr/hwpf/hwp/occ')
-rw-r--r-- | src/usr/hwpf/hwp/occ/runtime/rt_occ.C | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/src/usr/hwpf/hwp/occ/runtime/rt_occ.C b/src/usr/hwpf/hwp/occ/runtime/rt_occ.C index 6d3407677..cb68f46f6 100644 --- a/src/usr/hwpf/hwp/occ/runtime/rt_occ.C +++ b/src/usr/hwpf/hwp/occ/runtime/rt_occ.C @@ -140,6 +140,39 @@ namespace RT_OCC //------------------------------------------------------------------------ + int htmgt_pass_thru (uint16_t i_cmdLength, + uint8_t * i_cmdData, + uint16_t * o_rspLength, + uint8_t * o_rspData) + { + int rc = 0; +#ifdef CONFIG_HTMGT + errlHndl_t err = HTMGT::passThruCommand(i_cmdLength, i_cmdData, + *o_rspLength, o_rspData); + if (err) + { + rc = err->reasonCode(); + if (0 == rc) + { + // If there was a failure, be sure to return non-zero status + rc = -1; + } + if ((i_cmdLength > 0) && (NULL != i_cmdData)) + { + TRACFCOMP (g_fapiTd,ERR_MRK"htmgt_pass_thru: command 0x%02X" + " (%d bytes) failed with rc=0x%04X", + i_cmdData[0], i_cmdLength, err->reasonCode()); + } + errlCommit (err, HWPF_COMP_ID); + } +#else + o_rspLength = 0; +#endif + return rc; + } + + //------------------------------------------------------------------------ + int executeLoadOCC(uint64_t i_homer_addr_phys, uint64_t i_homer_addr_va, uint64_t i_common_addr_phys, @@ -427,6 +460,7 @@ namespace RT_OCC rt_intf->process_occ_error = &process_occ_error; rt_intf->process_occ_reset = &process_occ_reset; rt_intf->enable_occ_actuation = &enable_occ_actuation; + rt_intf->mfg_htmgt_pass_thru = &htmgt_pass_thru; // If we already loaded OCC during the IPL we need to fix up // the virtual address because we're now not using virtual |