diff options
Diffstat (limited to 'src/include/usr')
-rw-r--r-- | src/include/usr/hbotcompid.H | 26 | ||||
-rwxr-xr-x | src/include/usr/hwpf/plat/fapiPlatAttributeService.H | 4 | ||||
-rw-r--r-- | src/include/usr/mvpd/mvpdreasoncodes.H | 79 | ||||
-rw-r--r-- | src/include/usr/spd/spdif.H | 122 | ||||
-rw-r--r-- | src/include/usr/spd/spdreasoncodes.H | 94 | ||||
-rw-r--r-- | src/include/usr/vpd/mvpdenums.H (renamed from src/include/usr/mvpd/mvpdenums.H) | 6 | ||||
-rw-r--r-- | src/include/usr/vpd/spdenums.H (renamed from src/include/usr/spd/spdenums.H) | 90 | ||||
-rw-r--r-- | src/include/usr/vpd/vpdreasoncodes.H | 110 |
8 files changed, 148 insertions, 383 deletions
diff --git a/src/include/usr/hbotcompid.H b/src/include/usr/hbotcompid.H index 723e10c6c..ea2d20224 100644 --- a/src/include/usr/hbotcompid.H +++ b/src/include/usr/hbotcompid.H @@ -5,7 +5,7 @@ /* */ /* IBM CONFIDENTIAL */ /* */ -/* COPYRIGHT International Business Machines Corp. 2011,2012 */ +/* COPYRIGHT International Business Machines Corp. 2011,2013 */ /* */ /* p1 */ /* */ @@ -170,13 +170,7 @@ const compId_t INTR_COMP_ID = 0x0F00; const char INTR_COMP_NAME[] = "intr"; //@} -/** @name SPD - * DIMM SPD device driver component - */ -//@{ -const compId_t SPD_COMP_ID = 0x1000; -const char SPD_COMP_NAME[] = "spd"; -//@} +// 0x1000 - open to reclaim /** @name HBMBOX * MBOX component @@ -186,13 +180,7 @@ const compId_t HBMBOX_COMP_ID = 0x1100; const char HBMBOX_COMP_NAME[] = "mbox"; //@} -/** @name MVPD - * MVPD device driver component - */ -//@{ -const compId_t MVPD_COMP_ID = 0x1200; -const char MVPD_COMP_NAME[] = "mvpd"; -//@} +// 0x1200 - open to reclaim /** @name PRDF * PRDF component @@ -273,6 +261,14 @@ const compId_t IBSCOM_COMP_ID = 0x1C00; const char IBSCOM_COMP_NAME[] = "ibscom"; //@} +/** @name VPD + * Common VPD device driver component + */ +//@{ +const compId_t VPD_COMP_ID = 0x1D00; +const char VPD_COMP_NAME[] = "vpd"; +//@} + /** @name HSVC * Host Services component * For the code running under PHYP diff --git a/src/include/usr/hwpf/plat/fapiPlatAttributeService.H b/src/include/usr/hwpf/plat/fapiPlatAttributeService.H index c4cea0ecd..188eb04fc 100755 --- a/src/include/usr/hwpf/plat/fapiPlatAttributeService.H +++ b/src/include/usr/hwpf/plat/fapiPlatAttributeService.H @@ -5,7 +5,7 @@ /* */ /* IBM CONFIDENTIAL */ /* */ -/* COPYRIGHT International Business Machines Corp. 2011,2012 */ +/* COPYRIGHT International Business Machines Corp. 2011,2013 */ /* */ /* p1 */ /* */ @@ -53,7 +53,7 @@ #include <hwpf/fapi/fapiTarget.H> #include <hwpf/fapi/fapiAttributeTank.H> #include <hwpf/plat/fapiPlatAttrOverrideSync.H> -#include <spd/spdenums.H> +#include <vpd/spdenums.H> #include <dimmConsts.H> #include <util/singleton.H> #include <procMemConsts.H> diff --git a/src/include/usr/mvpd/mvpdreasoncodes.H b/src/include/usr/mvpd/mvpdreasoncodes.H deleted file mode 100644 index 8e9317b1a..000000000 --- a/src/include/usr/mvpd/mvpdreasoncodes.H +++ /dev/null @@ -1,79 +0,0 @@ -// IBM_PROLOG_BEGIN_TAG -// This is an automatically generated prolog. -// -// $Source: src/include/usr/mvpd/mvpdreasoncodes.H $ -// -// IBM CONFIDENTIAL -// -// COPYRIGHT International Business Machines Corp. 2012 -// -// 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 other- -// wise divested of its trade secrets, irrespective of what has -// been deposited with the U.S. Copyright Office. -// -// Origin: 30 -// -// IBM_PROLOG_END -/** - * @file mvpdreasoncodes.H - * - * @brief Reason codes and module ids for the MVPD device driver - * - */ -#ifndef __MVPDREASONCODES_H -#define __MVPDREASONCODES_H -// ----------------------------------------------- -// Includes -// ----------------------------------------------- -#include <hbotcompid.H> - -namespace MVPD -{ - -/** -* @enum mvpdModuleid -* -* @brief Module Ids used in created errorlogs. Indicates which -* functions an error log was created in. -* -*/ -enum mvpdModuleId -{ - MVPD_INVALID_MODULE = 0x00, - MVPD_READ_BINARY_FILE = 0x01, - MVPD_READ = 0x02, - MVPD_WRITE = 0x03, - MVPD_TRANSLATE_RECORD = 0x04, - MVPD_TRANSLATE_KEYWORD = 0x05, - MVPD_FIND_RECORD_OFFSET = 0x06, - MVPD_RETRIEVE_KEYWORD = 0x07, - MVPD_FETCH_DATA = 0x08, - MVPD_CHECK_BUFFER_SIZE = 0x09, -}; - -/** - * @enum mvpdReasonCode - * - * @brief Reasoncodes used to describe what errors are being indicated. - * - */ -enum mvpdReasonCode -{ - MVPD_INVALID_REASONCODE = MVPD_COMP_ID | 0x00, // Invalid Reasoncode - MVPD_INSUFFICIENT_FILE_SIZE = MVPD_COMP_ID | 0x01, - MVPD_OPERATION_NOT_SUPPORTED = MVPD_COMP_ID | 0x02, - MVPD_RECORD_NOT_FOUND = MVPD_COMP_ID | 0x03, - MVPD_KEYWORD_NOT_FOUND = MVPD_COMP_ID | 0x04, - MVPD_RECORD_MISMATCH = MVPD_COMP_ID | 0x05, - MVPD_INSUFFICIENT_BUFFER_SIZE = MVPD_COMP_ID | 0x06, -}; - -}; // end MVPD - -#endif diff --git a/src/include/usr/spd/spdif.H b/src/include/usr/spd/spdif.H deleted file mode 100644 index 41bd94ffc..000000000 --- a/src/include/usr/spd/spdif.H +++ /dev/null @@ -1,122 +0,0 @@ -/* IBM_PROLOG_BEGIN_TAG - * This is an automatically generated prolog. - * - * $Source: src/include/usr/spd/spdif.H $ - * - * IBM CONFIDENTIAL - * - * COPYRIGHT International Business Machines Corp. 2012 - * - * 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 other- - * wise divested of its trade secrets, irrespective of what has - * been deposited with the U.S. Copyright Office. - * - * Origin: 30 - * - * IBM_PROLOG_END_TAG - */ -/** - * @file spdif.H - * - * @brief External SPD interfaces - * - */ -#ifndef __SPDIF_H -#define __SPDIF_H -// ----------------------------------------------- -// Includes -// ----------------------------------------------- -#include <pnor/pnorif.H> - -namespace SPD -{ - -/** - * @brief This structure is used to transfer common information needed - * for reading the address from the PNOR RP. - */ -struct pnorInformation -{ - uint64_t segmentSize; - uint64_t maxSegments; - PNOR::SectionId pnorSection; - PNOR::SideSelect pnorSide; -}; - -/** - * @brief This Function is used to query the PNOR RP and get the address of - * the data section. It is also used to then read from that address the - * number of bytes requested. - * NOTE: This function is defined here because it is used by both the SPD - * and MVPD code. - * - * @param[in] i_byteAddr - The offset into the section of the data to be read. - * - * @param[in] i_numBytes - The number of bytes to read. - * - * @param[out] o_data - The data buffer. - * - * @param[in] i_target - The target to read the data for. - * - * @param[in] i_pnorInfo - Data required to query for the PNOR data address. - * - * @param[in/out] io_cachedAddr - This is the address that is, or will be read - * from the PNOR RP and saved for future use. - * - * @param[in] i_mutex - Mutex from calling code to be used for setting - * io_isAddrCached and io_cachedAddr. - * - * @return errHndl_t - NULL if successful, otherwise a pointer to the error - * log. -*/ -errlHndl_t readPNOR ( uint64_t i_byteAddr, - size_t i_numBytes, - void * o_data, - TARGETING::Target * i_target, - pnorInformation & i_pnorInfo, - uint64_t &io_cachedAddr, - mutex_t * i_mutex ); - -/** - * @brief This function will write the PNOR at the correct offset and number - * of bytes for the keyword requested. - * - * @param[in] i_byteAddr - The offset to access in the PNOR. - * - * @param[in] i_numBytes - The number of bytes to write. - * - * @param[in] i_data - The data buffer of the data to be written. - * - * @param[in] i_target - The chip target to access the data for. - * - * @param[in] i_pnorInfo - Information about the PNOR section and side that we - * need to know to make the request. - * - * @param[in/out] io_cachedAddr - The address offset to the data chunk in - * PNOR. - * - * @param[in] i_mutex - The mutex to lock/unlock while setting io_isAddrCached - * and io_cachedAddr. It is assumed that those parameters are global - * variables in the code where they reside. - * - * @return errlHndl_t - NULL if successful, otherwise a pointer to the error - * log. - */ -errlHndl_t writePNOR ( uint64_t i_byteAddr, - size_t i_numBytes, - void * i_data, - TARGETING::Target * i_target, - pnorInformation & i_pnorInfo, - uint64_t &io_cachedAddr, - mutex_t * i_mutex ); - - -}; // end SPD - -#endif diff --git a/src/include/usr/spd/spdreasoncodes.H b/src/include/usr/spd/spdreasoncodes.H deleted file mode 100644 index 96b207494..000000000 --- a/src/include/usr/spd/spdreasoncodes.H +++ /dev/null @@ -1,94 +0,0 @@ -/* IBM_PROLOG_BEGIN_TAG - * This is an automatically generated prolog. - * - * $Source: src/include/usr/spd/spdreasoncodes.H $ - * - * IBM CONFIDENTIAL - * - * COPYRIGHT International Business Machines Corp. 2012 - * - * 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 other- - * wise divested of its trade secrets, irrespective of what has - * been deposited with the U.S. Copyright Office. - * - * Origin: 30 - * - * IBM_PROLOG_END_TAG - */ -/** - * @file spdreasoncodes.H - * - * @brief Reason codes and module ids for the SPD device driver - * - */ -#ifndef __SPDREASONCODES_H -#define __SPDREASONCODES_H -// ----------------------------------------------- -// Includes -// ----------------------------------------------- -#include <hbotcompid.H> - -namespace SPD -{ - -/** -* @enum spdModuleid -* -* @brief Module Ids used in created errorlogs. Indicates which -* functions an error log was created in. -* -*/ -enum spdModuleId -{ - SPD_INVALID_MODULE = 0x00, - SPD_GET_KEYWORD_VALUE = 0x01, - SPD_GET_VALUE = 0x02, - SPD_CHECK_SIZE = 0x03, - SPD_READ_BINARY_FILE = 0x04, - SPD_WRITE_KEYWORD_VALUE = 0x05, - SPD_SPECIAL_CASES = 0x06, - SPD_PRESENCE_DETECT = 0x07, - SPD_CHECK_MODULE_SPECIFIC_KEYWORD = 0x08, - SPD_GET_PNOR_ADDR = 0x09, - SPD_WRITE_VALUE = 0x0a, - SPD_GET_KEYWORD_ENTRY = 0x0b, - SPD_WRITE_DATA = 0x0c, -}; - -/** - * @enum spdReasonCode - * - * @brief Reasoncodes used to describe what errors are being indicated. - * - */ -enum spdReasonCode -{ - SPD_INVALID_REASONCODE = SPD_COMP_ID | 0x00, // Invalid Reasoncode - SPD_INVALID_BASIC_MEMORY_TYPE = SPD_COMP_ID | 0x01, - SPD_BASIC_MEMORY_TYPE = SPD_COMP_ID | 0x02, - SPD_INVALID_SPD_KEYWORD = SPD_COMP_ID | 0x03, - SPD_MEMTYPE_NOT_SUPPORTED = SPD_COMP_ID | 0x04, - SPD_INSUFFICIENT_BUFFER_SIZE = SPD_COMP_ID | 0x05, - SPD_INSUFFICIENT_FILE_SIZE = SPD_COMP_ID | 0x06, - SPD_NOT_SUPPORTED = SPD_COMP_ID | 0x07, - SPD_KEYWORD_NOT_FOUND = SPD_COMP_ID | 0x08, - SPD_MOD_SPECIFIC_MISMATCH_UMM = SPD_COMP_ID | 0x09, - SPD_MOD_SPECIFIC_MISMATCH_RMM = SPD_COMP_ID | 0x0a, - SPD_MOD_SPECIFIC_MISMATCH_CMM = SPD_COMP_ID | 0x0b, - SPD_MOD_SPECIFIC_MISMATCH_LRMM = SPD_COMP_ID | 0x0c, - SPD_MOD_SPECIFIC_UNSUPPORTED = SPD_COMP_ID | 0x0d, - SPD_SIZE_MISMATCH = SPD_COMP_ID | 0x0e, - SPD_INVALID_WRITE_METHOD = SPD_COMP_ID | 0x0f, - SPD_NULL_ENTRY = SPD_COMP_ID | 0x10, - SPD_KEYWORD_NOT_WRITABLE = SPD_COMP_ID | 0x11, -}; - -}; // end SPD - -#endif diff --git a/src/include/usr/mvpd/mvpdenums.H b/src/include/usr/vpd/mvpdenums.H index 00fbfafe5..ec512694f 100644 --- a/src/include/usr/mvpd/mvpdenums.H +++ b/src/include/usr/vpd/mvpdenums.H @@ -1,11 +1,11 @@ /* IBM_PROLOG_BEGIN_TAG */ /* This is an automatically generated prolog. */ /* */ -/* $Source: src/include/usr/mvpd/mvpdenums.H $ */ +/* $Source: src/include/usr/vpd/mvpdenums.H $ */ /* */ /* IBM CONFIDENTIAL */ /* */ -/* COPYRIGHT International Business Machines Corp. 2012 */ +/* COPYRIGHT International Business Machines Corp. 2013 */ /* */ /* p1 */ /* */ @@ -21,7 +21,7 @@ /* */ /* IBM_PROLOG_END_TAG */ /** - * @file MVpdenums.H + * @file mvpdenums.H * * @brief Enums for the MVPD fields to be requested. * diff --git a/src/include/usr/spd/spdenums.H b/src/include/usr/vpd/spdenums.H index 09178c96f..98a428606 100644 --- a/src/include/usr/spd/spdenums.H +++ b/src/include/usr/vpd/spdenums.H @@ -1,32 +1,25 @@ -/* IBM_PROLOG_BEGIN_TAG - * This is an automatically generated prolog. - * - * $Source: src/include/usr/spd/spdenums.H $ - * - * IBM CONFIDENTIAL - * - * COPYRIGHT International Business Machines Corp. 2012 - * - * 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 other- - * wise divested of its trade secrets, irrespective of what has - * been deposited with the U.S. Copyright Office. - * - * Origin: 30 - * - * IBM_PROLOG_END_TAG - */ -/** - * @file spdenums.H - * - * @brief Enums for the SPD fields to be requested. - * - */ +/* IBM_PROLOG_BEGIN_TAG */ +/* This is an automatically generated prolog. */ +/* */ +/* $Source: src/include/usr/vpd/spdenums.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 __SPDENUMS_H #define __SPDENUMS_H @@ -260,45 +253,6 @@ enum INVALID_SPD_KEYWORD = 0xFFFF, }; -/** - * @brief VPD Message Types - */ -enum VPD_MSG_TYPE -{ - VPD_WRITE_DIMM = 0x00C1, //< DIMM SPD - VPD_WRITE_PROC = 0x00C2, //< Processor MVPD - VPD_WRITE_MEMBUF = 0x00C3, //< Centaur FRU VPD -}; - -/** - * @brief Message definition for VPD Write Request - * - * - data0 : - * - [16] VPD Record Number - * - [32] 4-byte ASCII String for record name - * 'XXXX'=Entire VPD section from PNOR - * - [16] 2-byte ASCII String for keyword or offset into SPD - * 'XX'=Entire VPD record - * - data1 : - * - [64] Size of binary data in bytes - * - extra data : Binary VPD Data - */ -union VpdWriteMsg_t -{ - uint64_t data0; - struct - { - uint16_t rec_num; //< VPD_REC_NUM - char record[4]; //< ASCII Record Name - union - { - char keyword[2]; //< ASCII Keyword (for IBM VPD) - uint16_t offset; //< Offset into record in bytes (for DIMM SPD) - }; - } PACKED; -}; - - }; // end SPD #endif diff --git a/src/include/usr/vpd/vpdreasoncodes.H b/src/include/usr/vpd/vpdreasoncodes.H new file mode 100644 index 000000000..55de5f773 --- /dev/null +++ b/src/include/usr/vpd/vpdreasoncodes.H @@ -0,0 +1,110 @@ +/* IBM_PROLOG_BEGIN_TAG */ +/* This is an automatically generated prolog. */ +/* */ +/* $Source: src/include/usr/vpd/vpdreasoncodes.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 __VPDREASONCODES_H +#define __VPDREASONCODES_H + +// ----------------------------------------------- +// Includes +// ----------------------------------------------- +#include <hbotcompid.H> + +namespace VPD +{ + +/** +* @enum vpdModuleid +* +* @brief Module Ids used in created errorlogs. Indicates which +* functions an error log was created in. +* +*/ +enum vpdModuleId +{ + 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, + + // DIMM SPD + VPD_SPD_GET_KEYWORD_VALUE = 0x61, + VPD_SPD_GET_VALUE = 0x62, + VPD_SPD_CHECK_SIZE = 0x63, + VPD_SPD_READ_BINARY_FILE = 0x64, + VPD_SPD_WRITE_KEYWORD_VALUE = 0x65, + 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, + + // Centaur FRU VPD + +}; + +/** + * @enum vpdReasonCode + * + * @brief Reasoncodes used to describe what errors are being indicated. + * + */ +enum vpdReasonCode +{ + VPD_INVALID_REASONCODE = VPD_COMP_ID | 0x00, // Invalid Reasoncode + VPD_INSUFFICIENT_FILE_SIZE = VPD_COMP_ID | 0x01, + VPD_OPERATION_NOT_SUPPORTED = VPD_COMP_ID | 0x02, + VPD_RECORD_NOT_FOUND = VPD_COMP_ID | 0x03, + VPD_KEYWORD_NOT_FOUND = VPD_COMP_ID | 0x04, + VPD_RECORD_MISMATCH = VPD_COMP_ID | 0x05, + VPD_INSUFFICIENT_BUFFER_SIZE = VPD_COMP_ID | 0x06, + VPD_INVALID_BASIC_MEMORY_TYPE = VPD_COMP_ID | 0x07, + VPD_BASIC_MEMORY_TYPE = VPD_COMP_ID | 0x08, + VPD_INVALID_SPD_KEYWORD = VPD_COMP_ID | 0x09, + VPD_MEMTYPE_NOT_SUPPORTED = VPD_COMP_ID | 0x0A, + VPD_KEYWORD_NOT_WRITABLE = VPD_COMP_ID | 0x0B, + VPD_NOT_SUPPORTED = VPD_COMP_ID | 0x0C, + VPD_MOD_SPECIFIC_MISMATCH_UMM = VPD_COMP_ID | 0x0D, + VPD_MOD_SPECIFIC_MISMATCH_RMM = VPD_COMP_ID | 0x0E, + VPD_MOD_SPECIFIC_MISMATCH_CMM = VPD_COMP_ID | 0x0F, + VPD_MOD_SPECIFIC_MISMATCH_LRMM = VPD_COMP_ID | 0x10, + VPD_MOD_SPECIFIC_UNSUPPORTED = VPD_COMP_ID | 0x11, + VPD_SIZE_MISMATCH = VPD_COMP_ID | 0x12, + VPD_INVALID_WRITE_METHOD = VPD_COMP_ID | 0x13, + VPD_NULL_ENTRY = VPD_COMP_ID | 0x14, +}; + +}; // end MVPD + +#endif |