summaryrefslogtreecommitdiffstats
path: root/src/import/chips/p9/procedures/hwp/accessors/p9_get_mem_vpd_keyword.H
diff options
context:
space:
mode:
authorMatt Derksen <v2cibmd@us.ibm.com>2016-09-09 10:51:57 -0500
committerChristian R. Geddes <crgeddes@us.ibm.com>2016-09-16 15:24:08 -0400
commit3023dfca018c30c87072c4376c6f69dc35aef0d3 (patch)
tree40149cac472df14c4a3449ea00c61ae46f0e59a2 /src/import/chips/p9/procedures/hwp/accessors/p9_get_mem_vpd_keyword.H
parent48f5f0b3e5f1ec65e90d2307caed92ab000f869b (diff)
downloadtalos-hostboot-3023dfca018c30c87072c4376c6f69dc35aef0d3.tar.gz
talos-hostboot-3023dfca018c30c87072c4376c6f69dc35aef0d3.zip
Added CK and DQ vpd accessors
Change-Id: Ic72c985b1fe064273bc39f14bcc31595117c6a08 RTC:159347 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/29421 Tested-by: PPE CI <ppe-ci+hostboot@us.ibm.com> Reviewed-by: Martin Gloff <mgloff@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Matt K. Light <mklight@us.ibm.com> Tested-by: Hostboot CI <hostboot-ci+hostboot@us.ibm.com> Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com> Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/29426 Reviewed-by: Hostboot Team <hostboot@us.ibm.com> Tested-by: Christian R. Geddes <crgeddes@us.ibm.com>
Diffstat (limited to 'src/import/chips/p9/procedures/hwp/accessors/p9_get_mem_vpd_keyword.H')
-rw-r--r--src/import/chips/p9/procedures/hwp/accessors/p9_get_mem_vpd_keyword.H21
1 files changed, 15 insertions, 6 deletions
diff --git a/src/import/chips/p9/procedures/hwp/accessors/p9_get_mem_vpd_keyword.H b/src/import/chips/p9/procedures/hwp/accessors/p9_get_mem_vpd_keyword.H
index cff749fa2..4baff3fa9 100644
--- a/src/import/chips/p9/procedures/hwp/accessors/p9_get_mem_vpd_keyword.H
+++ b/src/import/chips/p9/procedures/hwp/accessors/p9_get_mem_vpd_keyword.H
@@ -43,7 +43,7 @@
namespace fapi2
{
-/// vpd keyword to be read based on input parameters and MR/MT mapping.
+/// vpd keyword to be read based on input parameters and MR/MT/DQ mapping.
/// For example, X0...XZ for MT or J0...JZ for MR vpd data.
/// Return as a string for convenient debug traces.
enum
@@ -51,6 +51,14 @@ enum
KEYWORD_BYTE_SIZE = 2,
};
typedef char keywordName_t [KEYWORD_BYTE_SIZE + 1];
+
+typedef struct kwInfo
+{
+ keywordName_t kwName; // keyword, like X0..XZ, J0..JZ, Q1..Q8, or CK
+ uint16_t kwBlobSize; // blob size (valid for Q# and CK)
+ uint16_t kwBlobIndex; // offset of blob from start of keyword data
+} keywordInfo_t;
+
}
typedef fapi2::ReturnCode (*p9_get_mem_vpd_keyword_FP_t)(
@@ -58,7 +66,7 @@ typedef fapi2::ReturnCode (*p9_get_mem_vpd_keyword_FP_t)(
const fapi2::VPDInfo<fapi2::TARGET_TYPE_MCS>&,
const uint8_t*,
const size_t,
- fapi2::keywordName_t&);
+ fapi2::keywordInfo_t&);
extern "C"
{
@@ -88,7 +96,7 @@ extern "C"
/// 0x80 index 0
/// ... through ..
/// 0x10 index 3
- // (frequency index 4-7 reserved)
+ /// (frequency index 4-7 reserved)
/// dddd second char in keyword name
///
/// All the configurations for a particular keyword are 'OR'ed into the
@@ -98,19 +106,20 @@ extern "C"
///
/// Note: this interface should not be called directly by HWPs,
/// it is provided for platform use behind the getVPD() interface.
+ /// DQ keyword uses Q0 as a map to Q1-Q8 keywords. Q0 and CK have a header.
///
/// @param[in] i_target, the MCS
/// @param[in] i_vpd_info, vpd criteria
- /// @param[in] i_pMapping, MR or MT keyword data
+ /// @param[in] i_pMapping, MR, MT, Q0, or CK keyword data
/// @param[in] i_mappingSize, size of i_pMapping buffer
- /// @param[out] o_keywordName, keyword with vpd
+ /// @param[out] o_keywordInfo, keyword with its vpd information
/// @return FAPI2_RC_SUCCESS iff ok
fapi2::ReturnCode p9_get_mem_vpd_keyword (
const fapi2::Target<fapi2::TARGET_TYPE_MCS>& i_target,
const fapi2::VPDInfo<fapi2::TARGET_TYPE_MCS>& i_vpd_info,
const uint8_t* i_pMapping,
const size_t i_mappingSize,
- fapi2::keywordName_t& o_keywordName);
+ fapi2::keywordInfo_t& o_keywordInfo);
}
OpenPOWER on IntegriCloud