summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorClaus Michael Olsen <cmolsen@us.ibm.com>2016-07-23 10:10:46 -0500
committerSachin Gupta <sgupta2m@in.ibm.com>2016-09-26 13:34:39 -0400
commit5d11ff38897f56a56c21baf0663844545be24e37 (patch)
tree460a13df4218625baa007f91545e9b6c14b2ca21 /src
parent6f2a30d391e285c87dc6f4fb41b1638d36889d80 (diff)
downloadtalos-sbe-5d11ff38897f56a56c21baf0663844545be24e37.tar.gz
talos-sbe-5d11ff38897f56a56c21baf0663844545be24e37.zip
Updated ring_identification list: Now synchronized with ringId.H.
Also, updated to support Mvpd support in xip_customize - To ignore GPTR rings - To facilitate orderly appending of Vpd rings to Seeprom image Change-Id: I0c38adad3219e932a8b63082149038de734495e7 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/27403 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Hostboot CI <hostboot-ci+hostboot@us.ibm.com> Reviewed-by: Joseph E. Dery <dery@us.ibm.com> Dev-Ready: Joseph E. Dery <dery@us.ibm.com> Reviewed-by: Prachi Gupta <pragupta@us.ibm.com> Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/30309 Reviewed-by: Sachin Gupta <sgupta2m@in.ibm.com>
Diffstat (limited to 'src')
-rw-r--r--src/import/chips/p9/utils/imageProcs/p9_ring_identification.H28
1 files changed, 20 insertions, 8 deletions
diff --git a/src/import/chips/p9/utils/imageProcs/p9_ring_identification.H b/src/import/chips/p9/utils/imageProcs/p9_ring_identification.H
index 72c452f8..a5e1a9a0 100644
--- a/src/import/chips/p9/utils/imageProcs/p9_ring_identification.H
+++ b/src/import/chips/p9/utils/imageProcs/p9_ring_identification.H
@@ -30,7 +30,6 @@
#include <stdlib.h>
#include <string.h>
-
// General Ring ID list structure
typedef struct
{
@@ -168,22 +167,27 @@ extern const GenRingIdList RING_ID_LIST_INSTANCE[];
extern const RingVariantOrder RING_VARIANT_ORDER[];
}
-// VPD Ring ID list structure.
+// MVPD Ring ID list structure.
typedef struct
{
const char* ringName;
+ //@FIXME: CMO: Replace this with RingID asap.
uint8_t ringId;
uint8_t instanceIdMin; // the min instanceId
uint8_t instanceIdMax; // the max instanceId
uint8_t vpdKeyword;
+ uint8_t vpdRingClass; // Indicates std, gptr, or ex instance.
} RingIdList;
+typedef struct
+{
+ const RingIdList* ringIdList;
+ uint32_t ringIdListSize;
+} VPDRingList;
extern const RingIdList RING_ID_LIST_PG[], RING_ID_LIST_PR[];
-extern const uint32_t RING_ID_LIST_PG_SIZE, RING_ID_LIST_PR_SIZE;
-extern const RingIdList RING_ID_LIST[];
-extern const uint32_t RING_ID_LIST_SIZE;
+extern const VPDRingList ALL_VPD_RINGS[];
extern const uint32_t RING_ID_LIST_CHIP_SIZE, RING_ID_LIST_CORE_SIZE,
RING_ID_LIST_CME_SIZE, RING_ID_LIST_CC_SIZE;
@@ -204,10 +208,18 @@ enum VpdKeyword
};
+enum VpdRingClass
+{
+ VPD_RING_CLASS_NEST = 0, // Indicates NEST rings
+ VPD_RING_CLASS_EQ = 1, // Indicates EQ rings
+ VPD_RING_CLASS_EX = 2, // Indicates EX rings
+ VPD_RING_CLASS_EC = 3, // Indicates EC rings
+ VPD_RING_CLASS_GPTR = 4, // Indicates GPTR #G rings
+ VPD_RING_CLASS_LAST = 5,
+};
+
-int get_vpd_ring_list_entry(const char* i_ringName,
- const uint8_t i_ringId,
- RingIdList** i_ringIdList);
+#define MVPD_END_OF_DATA_MAGIC (uint32_t)0x454E4400 // "END "
#endif
OpenPOWER on IntegriCloud