diff options
| author | Adam Muhle <armuhle@us.ibm.com> | 2013-01-21 16:52:43 -0600 |
|---|---|---|
| committer | A. Patrick Williams III <iawillia@us.ibm.com> | 2013-02-14 15:38:34 -0600 |
| commit | a753459c20affff821477924808ea5b9412504c5 (patch) | |
| tree | 32bc3f2581564f53167440b76cb7ad1db3a8fe58 /src/include/usr/vpd | |
| parent | 5f5ecb46d1838847dedd33791d4da86d3df39638 (diff) | |
| download | talos-hostboot-a753459c20affff821477924808ea5b9412504c5.tar.gz talos-hostboot-a753459c20affff821477924808ea5b9412504c5.zip | |
CVPD Device Driver updates.
Implemented Device Driver support for Centaur VPD.
Since CVPD is almost identical to MVPD, I moved the MVPD
code to a base class so the actual logic is now common between
the two. To support CVPD in the standalone configs, the
hb-preload script was updated to populate the CVPD partition
as well. I also started migrating the VPD code to a common
trace buffer.
RTC: 44009
Change-Id: I6e96d5e993d6d74d40df3d296cdcf8f34e4b5cc5
Reviewed-on: http://gfw160.austin.ibm.com:8080/gerrit/3029
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Tested-by: Jenkins Server
Reviewed-by: Douglas R. Gilbert <dgilbert@us.ibm.com>
Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/include/usr/vpd')
| -rw-r--r-- | src/include/usr/vpd/cvpdenums.H | 62 | ||||
| -rw-r--r-- | src/include/usr/vpd/vpdreasoncodes.H | 31 |
2 files changed, 74 insertions, 19 deletions
diff --git a/src/include/usr/vpd/cvpdenums.H b/src/include/usr/vpd/cvpdenums.H new file mode 100644 index 000000000..2f52ee07a --- /dev/null +++ b/src/include/usr/vpd/cvpdenums.H @@ -0,0 +1,62 @@ +/* IBM_PROLOG_BEGIN_TAG */ +/* This is an automatically generated prolog. */ +/* */ +/* $Source: src/include/usr/vpd/cvpdenums.H $ */ +/* */ +/* IBM CONFIDENTIAL */ +/* */ +/* COPYRIGHT International Business Machines Corp. 2013 */ +/* */ +/* p1 */ +/* */ +/* Object Code Only (OCO) source materials */ +/* Licensed Internal Code Source Materials */ +/* IBM HostBoot Licensed Internal Code */ +/* */ +/* 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. */ +/* */ +/* Origin: 30 */ +/* */ +/* IBM_PROLOG_END_TAG */ +#ifndef __CVPDENUMS_H +#define __CVPDENUMS_H + +namespace CVPD +{ + + /** + * @brief Enumeration for the CVPD Records that contain + * the keyword enumerations below. + */ + enum cvpdRecord + { + CVPD_FIRST_RECORD = 0x00, + VEIR = CVPD_FIRST_RECORD, + VER0 = 0x01, + MER0 = 0x02, + // Last Record + CVPD_LAST_RECORD, + CVPD_TEST_RECORD, // Test purposes ONLY! + CVPD_INVALID_RECORD = 0xFFFF, + }; + + /** + * @brief Enumerations for CVPD keywords that can be + * accessed in the CVPD. + */ + enum cvpdKeyword + { + CVPD_FIRST_KEYWORD = 0x00, + pdI = CVPD_FIRST_KEYWORD, + PF = 0x01, + // Last Keyword + CVPD_LAST_KEYWORD, + CVPD_TEST_KEYWORD, // Test purposes ONLY! + CVPD_INVALID_KEYWORD = 0xFFFF, + }; + +}; // end CVPD + +#endif diff --git a/src/include/usr/vpd/vpdreasoncodes.H b/src/include/usr/vpd/vpdreasoncodes.H index 2ecbba770..7e95afa58 100644 --- a/src/include/usr/vpd/vpdreasoncodes.H +++ b/src/include/usr/vpd/vpdreasoncodes.H @@ -40,23 +40,17 @@ namespace VPD */ enum vpdModuleId { - VPD_INVALID_MODULE = 0x00, + VPD_INVALID_MODULE = 0x00, // Common VPD - - // Proc MVPD - VPD_MVPD_READ_BINARY_FILE = 0x31, - VPD_MVPD_READ = 0x32, - VPD_MVPD_WRITE = 0x33, - VPD_MVPD_TRANSLATE_RECORD = 0x34, - VPD_MVPD_TRANSLATE_KEYWORD = 0x35, - VPD_MVPD_FIND_RECORD_OFFSET = 0x36, - VPD_MVPD_RETRIEVE_KEYWORD = 0x37, - VPD_MVPD_FETCH_DATA = 0x38, - VPD_MVPD_CHECK_BUFFER_SIZE = 0x39, - VPD_MVPD_WRITE_KEYWORD = 0x3A, - VPD_MVPD_FIND_KEYWORD_ADDR = 0x3B, + // IPVPD + VPD_IPVPD_TRANSLATE_RECORD = 0x20, + VPD_IPVPD_TRANSLATE_KEYWORD = 0x21, + VPD_IPVPD_FIND_RECORD_OFFSET = 0x22, + VPD_IPVPD_FIND_KEYWORD_ADDR = 0x23, + VPD_IPVPD_CHECK_BUFFER_SIZE = 0x24, + // DIMM SPD VPD_SPD_GET_KEYWORD_VALUE = 0x61, @@ -67,10 +61,9 @@ enum vpdModuleId VPD_SPD_SPECIAL_CASES = 0x66, VPD_SPD_PRESENCE_DETECT = 0x67, VPD_SPD_CHECK_MODULE_SPECIFIC_KEYWORD = 0x68, - VPD_SPD_GET_PNOR_ADDR = 0x69, - VPD_SPD_WRITE_VALUE = 0x6A, - VPD_SPD_GET_KEYWORD_ENTRY = 0x6B, - VPD_SPD_WRITE_DATA = 0x6C, + VPD_SPD_WRITE_VALUE = 0x69, + VPD_SPD_GET_KEYWORD_ENTRY = 0x6A, + VPD_SPD_WRITE_DATA = 0x6B, // Centaur FRU VPD @@ -84,7 +77,7 @@ enum vpdModuleId */ enum vpdReasonCode { - VPD_INVALID_REASONCODE = VPD_COMP_ID | 0x00, // Invalid Reasoncode + VPD_INVALID_REASONCODE = VPD_COMP_ID | 0x00, // Invalid RC VPD_INSUFFICIENT_FILE_SIZE = VPD_COMP_ID | 0x01, VPD_OPERATION_NOT_SUPPORTED = VPD_COMP_ID | 0x02, VPD_RECORD_NOT_FOUND = VPD_COMP_ID | 0x03, |

