summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatt K. Light <mklight@us.ibm.com>2015-06-09 15:08:55 -0500
committerDerk Rembold <rembold@de.ibm.com>2015-09-03 07:30:59 -0500
commit1facda677272b3b6f6394d329723116a9430b24c (patch)
treefef6b26fe45d0c86387366bf6b61037a220e86a1
parent8959bb7a94ff2cb7a56690dd6e824ac5fa02ccbf (diff)
downloadtalos-sbe-1facda677272b3b6f6394d329723116a9430b24c.tar.gz
talos-sbe-1facda677272b3b6f6394d329723116a9430b24c.zip
added module vpd get/set interfaces
Change-Id: Ib356940399d428d48fc9cf523495fec4c8ceaa15 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/18322 Tested-by: Jenkins Server Reviewed-by: Derk Rembold <rembold@de.ibm.com> Reviewed-by: Thi N. Tran <thi@us.ibm.com> Reviewed-by: Joseph J. McGill <jmcgill@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com> Reviewed-by: Brian Silver <bsilver@us.ibm.com> Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/20154
-rw-r--r--import/hwpf/fapi2/include/fapi2.H23
-rw-r--r--import/hwpf/fapi2/include/mvpd_access.H159
2 files changed, 180 insertions, 2 deletions
diff --git a/import/hwpf/fapi2/include/fapi2.H b/import/hwpf/fapi2/include/fapi2.H
index 1056811b..4e7121fd 100644
--- a/import/hwpf/fapi2/include/fapi2.H
+++ b/import/hwpf/fapi2/include/fapi2.H
@@ -1,3 +1,21 @@
+/* IBM_PROLOG_BEGIN_TAG */
+/* This is an automatically generated prolog. */
+/* */
+/* $Source: hwpf/fapi2/include/fapi2.H $ */
+/* */
+/* IBM CONFIDENTIAL */
+/* */
+/* EKB Project */
+/* */
+/* COPYRIGHT 2015 */
+/* [+] International Business Machines Corp. */
+/* */
+/* */
+/* The source code for this program is not published or otherwise */
+/* divested of its trade secrets, irrespective of what has been */
+/* deposited with the U.S. Copyright Office. */
+/* */
+/* IBM_PROLOG_END_TAG */
///
/// @file fapi2.H
/// @brief top level header for fapi2
@@ -19,10 +37,11 @@
#include <hwp_executor.H>
+#include <mvpd_access.H>
+
// Block of headers not currently in fapi2
#ifdef FAPI2_MISSING_HEADERS
- #include <mvpdAccess.H>
- #include <mbvpdAccess.H>
+ #include <mbvpdAccess.H>
#endif
#endif // __FAPI2_TOP_LEVEL__
diff --git a/import/hwpf/fapi2/include/mvpd_access.H b/import/hwpf/fapi2/include/mvpd_access.H
new file mode 100644
index 00000000..8288d8b8
--- /dev/null
+++ b/import/hwpf/fapi2/include/mvpd_access.H
@@ -0,0 +1,159 @@
+/* IBM_PROLOG_BEGIN_TAG */
+/* This is an automatically generated prolog. */
+/* */
+/* $Source: hwpf/fapi2/include/mvpd_access.H $ */
+/* */
+/* IBM CONFIDENTIAL */
+/* */
+/* EKB Project */
+/* */
+/* COPYRIGHT 2015 */
+/* [+] International Business Machines Corp. */
+/* */
+/* */
+/* The source code for this program is not published or otherwise */
+/* divested of its trade secrets, irrespective of what has been */
+/* deposited with the U.S. Copyright Office. */
+/* */
+/* IBM_PROLOG_END_TAG */
+
+///
+/// @file mvpd_access.H
+///
+/// @brief Defines the Module VPD functions that platform must implement
+///
+
+#ifndef _FAPI2_MVPDACCESS_H_
+#define _FAPI2_MVPDACCESS_H_
+
+#include <stdint.h>
+#include <return_code.H>
+#include <target.H>
+
+namespace fapi2
+{
+enum MvpdRecord
+{
+ MVPD_RECORD_CRP0 = 0x00,
+ MVPD_RECORD_CP00 = 0x01,
+ MVPD_RECORD_VINI = 0x02,
+ MVPD_RECORD_LRP0 = 0x03,
+ MVPD_RECORD_LRP1 = 0x04,
+ MVPD_RECORD_LRP2 = 0x05,
+ MVPD_RECORD_LRP3 = 0x06,
+ MVPD_RECORD_LRP4 = 0x07,
+ MVPD_RECORD_LRP5 = 0x08,
+ MVPD_RECORD_LRP6 = 0x09,
+ MVPD_RECORD_LRP7 = 0x0a,
+ MVPD_RECORD_LRP8 = 0x0b,
+ MVPD_RECORD_LRP9 = 0x0c,
+ MVPD_RECORD_LRPA = 0x0d,
+ MVPD_RECORD_LRPB = 0x0e,
+ MVPD_RECORD_LRPC = 0x0f,
+ MVPD_RECORD_LRPD = 0x10,
+ MVPD_RECORD_LRPE = 0x11,
+ MVPD_RECORD_LWP0 = 0x12,
+ MVPD_RECORD_LWP1 = 0x13,
+ MVPD_RECORD_LWP2 = 0x14,
+ MVPD_RECORD_LWP3 = 0x15,
+ MVPD_RECORD_LWP4 = 0x16,
+ MVPD_RECORD_LWP5 = 0x17,
+ MVPD_RECORD_LWP6 = 0x18,
+ MVPD_RECORD_LWP7 = 0x19,
+ MVPD_RECORD_LWP8 = 0x1a,
+ MVPD_RECORD_LWP9 = 0x1b,
+ MVPD_RECORD_LWPA = 0x1c,
+ MVPD_RECORD_LWPB = 0x1d,
+ MVPD_RECORD_LWPC = 0x1e,
+ MVPD_RECORD_LWPD = 0x1f,
+ MVPD_RECORD_LWPE = 0x20,
+ MVPD_RECORD_VWML = 0x21,
+ MVPD_RECORD_MER0 = 0x22,
+};
+
+enum MvpdKeyword
+{
+ MVPD_KEYWORD_VD = 0x00,
+ MVPD_KEYWORD_ED = 0x01,
+ MVPD_KEYWORD_TE = 0x02,
+ MVPD_KEYWORD_DD = 0x03,
+ MVPD_KEYWORD_PDP = 0x04,
+ MVPD_KEYWORD_ST = 0x05,
+ MVPD_KEYWORD_DN = 0x06,
+ MVPD_KEYWORD_PG = 0x07,
+ MVPD_KEYWORD_PK = 0x08,
+ MVPD_KEYWORD_PDR = 0x09,
+ MVPD_KEYWORD_PDV = 0x0a,
+ MVPD_KEYWORD_PDH = 0x0b,
+ MVPD_KEYWORD_SB = 0x0c,
+ MVPD_KEYWORD_DR = 0x0d,
+ MVPD_KEYWORD_VZ = 0x0e,
+ MVPD_KEYWORD_CC = 0x0f,
+ MVPD_KEYWORD_CE = 0x10,
+ MVPD_KEYWORD_FN = 0x11,
+ MVPD_KEYWORD_PN = 0x12,
+ MVPD_KEYWORD_SN = 0x13,
+ MVPD_KEYWORD_PR = 0x14,
+ MVPD_KEYWORD_HE = 0x15,
+ MVPD_KEYWORD_CT = 0x16,
+ MVPD_KEYWORD_HW = 0x17,
+ MVPD_KEYWORD_PDM = 0x18,
+ MVPD_KEYWORD_IN = 0x19,
+ MVPD_KEYWORD_PD2 = 0x1a,
+ MVPD_KEYWORD_PD3 = 0x1b,
+ MVPD_KEYWORD_OC = 0x1c,
+ MVPD_KEYWORD_FO = 0x1d,
+ MVPD_KEYWORD_PDI = 0x1e,
+ MVPD_KEYWORD_PDG = 0x1f,
+ MVPD_KEYWORD_MK = 0x20,
+ MVPD_KEYWORD_PB = 0x21,
+ MVPD_KEYWORD_CH = 0x22,
+ MVPD_KEYWORD_IQ = 0x23,
+};
+
+///
+/// @brief Get Module VPD field.
+///
+/// A Module VPD field is specified using a record and keyword enumerator
+///
+/// Suggested way to call this routine is to call it once with a NULL buffer
+/// pointer to to retrieve the size of the record, then allocate the proper
+/// size of the buffer and call again.
+///
+/// @param[in] i_record Record enumerator
+/// @param[in] i_keyword Keyword enumerator
+/// @param[in] i_target Reference to processor chip target for the record
+/// @param[in] i_pBuffer Pointer to buffer where record will be stored. If
+/// NULL then the size of record will be stored in
+/// io_fieldSize
+/// @param[in,out] io_fieldSize Size of i_pBuffer in bytes
+///
+/// @return fapi2::ReturnCode. FAPI_RC_SUCCESS, or failure value.
+///
+ReturnCode getMvpdField(const MvpdRecord i_record,
+ const MvpdKeyword i_keyword,
+ const Target<TARGET_TYPE_PROC_CHIP> &i_target,
+ uint8_t * const i_pBuffer,
+ uint32_t &io_fieldSize);
+
+///
+/// @brief Set Module VPD field.
+///
+/// A Module VPD field is specified using a record and keyword enumerator
+///
+/// @param[in] i_record Record enumerator
+/// @param[in] i_keyword Keyword enumerator
+/// @param[in] i_target Reference to processor chip target for the record
+/// @param[in] i_pBuffer Pointer to buffer where data to set is stored
+/// @param[in] i_fieldSize Size of i_pBuffer in bytes
+///
+/// @return fapi2::ReturnCode. FAPI_RC_SUCCESS, or failure value.
+///
+ReturnCode setMvpdField(const MvpdRecord i_record,
+ const MvpdKeyword i_keyword,
+ const Target<TARGET_TYPE_PROC_CHIP> &i_target,
+ const uint8_t * const i_pBuffer,
+ const uint32_t i_fieldSize);
+}
+
+#endif
OpenPOWER on IntegriCloud