summaryrefslogtreecommitdiffstats
path: root/import/chips/centaur/utils
diff options
context:
space:
mode:
authorSumit Kumar <sumit_kumar@in.ibm.com>2017-01-31 04:50:15 -0600
committerJoshua Hunsberger <jahunsbe@us.ibm.com>2017-11-17 15:01:01 -0600
commit08409192d6e8732fc2aa6d91a1bad47c5de0a2ea (patch)
tree6b7dc5fbbccb90a383e11832ead8020464174e89 /import/chips/centaur/utils
parent547407639b17fb65af3ed447b96cd113e63c810d (diff)
downloadtalos-hcode-08409192d6e8732fc2aa6d91a1bad47c5de0a2ea.tar.gz
talos-hcode-08409192d6e8732fc2aa6d91a1bad47c5de0a2ea.zip
Centaur ring support - ring_apply and ring data
- Introduces Centaur ring ID header files and ring_apply support to generate a separate Centaur ring image file. - Introduces common ring ID header file consumed by both P9 and Centaur and all user codes, e.g. putRing, ipl_build, xip_tool, etc. - Introduces a namespace approach for complete separation of P9 and Centaur ring data and to facilitate execution time selection of either P9 and Centaur ring data. - Added Centaur image .rings generation function to p9_ring_apply. - This commit does NOT support Centaur in the TOR API nor in xip_tool. See commit 38018 for that support. - Modified hw_image.mk file to support Centaur XIP image generation. - Updated ring_apply to also support .overrides ring gen for Centaur. Change-Id: I12a27b194dc14d906fea7bc273eb9f766f0fc5bf Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/35639 Tested-by: HWSV CI <hwsv-ci+hostboot@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Sumit Kumar <sumit_kumar@in.ibm.com> Tested-by: PPE CI <ppe-ci+hostboot@us.ibm.com> Reviewed-by: Richard J. Knight <rjknight@us.ibm.com> Reviewed-by: Thi N. Tran <thi@us.ibm.com> Tested-by: Hostboot CI <hostboot-ci+hostboot@us.ibm.com> Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com>
Diffstat (limited to 'import/chips/centaur/utils')
-rw-r--r--import/chips/centaur/utils/imageProcs/cen_ringId.H452
-rw-r--r--import/chips/centaur/utils/imageProcs/cen_ring_id.h225
2 files changed, 455 insertions, 222 deletions
diff --git a/import/chips/centaur/utils/imageProcs/cen_ringId.H b/import/chips/centaur/utils/imageProcs/cen_ringId.H
index e8cf8460..3f30128d 100644
--- a/import/chips/centaur/utils/imageProcs/cen_ringId.H
+++ b/import/chips/centaur/utils/imageProcs/cen_ringId.H
@@ -27,127 +27,359 @@
#define _CEN_RINGID_H_
#include <stdint.h>
+#include <stddef.h>
+#include <common_ringId.H>
#include <cen_ring_id.h>
enum CHIPLET_TYPE
{
- PERV_TYPE,
+ CEN_TYPE,
+ CEN_NOOF_CHIPLETS
};
+namespace CEN
+{
+extern const GenRingIdList RING_ID_LIST_COMMON[];
+extern const RingVariantOrder RING_VARIANT_ORDER[];
+
+struct RingVariants
+{
+ uint16_t iv_base;
+ uint16_t iv_riskLevel;
+};
-static const uint8_t INVALID_RING = 0xFF;
+enum RingOffset
+{
+ // Common Rings
+ tcm_perv_cmsk = 0,
+ tcm_perv_lbst = 1,
+ tcm_perv_gptr = 2,
+ tcm_perv_func = 3,
+ tcm_perv_time = 4,
+ tcm_perv_abst = 5,
+ tcm_perv_repr = 6,
+ tcm_perv_FARR = 7,
+ tcm_memn_time = 8,
+ tcm_memn_regf = 9,
+ tcm_memn_gptr = 10,
+ tcm_memn_func = 11,
+ tcm_memn_lbst = 12,
+ tcm_memn_cmsk = 13,
+ tcm_memn_abst = 14,
+ tcm_memn_repr = 15,
+ tcm_memn_FARR = 16,
+ tcm_mems_time = 17,
+ tcm_mems_regf = 18,
+ tcm_mems_gptr = 19,
+ tcm_mems_func = 20,
+ tcm_mems_lbst = 21,
+ tcm_mems_cmsk = 22,
+ tcm_mems_bndy = 23,
+ tcm_mems_abst = 24,
+ tcm_mems_repr = 25,
+ tcm_mems_FARR = 26,
+ tcm_ddrn_bndy = 27,
+ tcm_ddrn_gptr = 28,
+ tcm_ddrn_func = 29,
+ tcm_ddrn_cmsk = 30,
+ tcm_ddrn_lbst = 31,
+ tcm_ddrs_bndy = 32,
+ tcm_ddrs_gptr = 33,
+ tcm_ddrs_func = 34,
+ tcm_ddrs_lbst = 35,
+ tcm_ddrs_cmsk = 36,
+ tcn_perv_cmsk = 37,
+ tcn_perv_lbst = 38,
+ tcn_perv_gptr = 39,
+ tcn_perv_func = 40,
+ tcn_perv_time = 41,
+ tcn_perv_FARR = 42,
+ tcn_perv_abst = 43,
+ tcn_mbi_FARR = 44,
+ tcn_mbi_time = 45,
+ tcn_mbi_repr = 46,
+ tcn_mbi_abst = 47,
+ tcn_mbi_regf = 48,
+ tcn_mbi_gptr = 49,
+ tcn_mbi_func = 50,
+ tcn_mbi_cmsk = 51,
+ tcn_mbi_lbst = 52,
+ tcn_dmi_bndy = 53,
+ tcn_dmi_gptr = 54,
+ tcn_dmi_func = 55,
+ tcn_dmi_cmsk = 56,
+ tcn_dmi_lbst = 57,
+ tcn_msc_gptr = 58,
+ tcn_msc_func = 59,
+ tcn_mbs_FARR = 60,
+ tcn_mbs_time = 61,
+ tcn_mbs_repr = 62,
+ tcn_mbs_abst = 63,
+ tcn_mbs_regf = 64,
+ tcn_mbs_gptr = 65,
+ tcn_mbs_func = 66,
+ tcn_mbs_lbst = 67,
+ tcn_mbs_cmsk = 68,
+ tcn_refr_cmsk = 69,
+ tcn_refr_FARR = 70,
+ tcn_refr_time = 71,
+ tcn_refr_repr = 72,
+ tcn_refr_abst = 73,
+ tcn_refr_lbst = 74,
+ tcn_refr_regf = 75,
+ tcn_refr_gptr = 76,
+ tcn_refr_func = 77,
+ tcn_perv_repr = 78,
+ tp_perv_func = 79,
+ tp_perv_gptr = 80,
+ tp_perv_mode = 81,
+ tp_perv_regf = 82,
+ tp_perv_lbst = 83,
+ tp_perv_abst = 84,
+ tp_perv_repr = 85,
+ tp_perv_time = 86,
+ tp_perv_bndy = 87,
+ tp_perv_farr = 88,
+ tp_perv_cmsk = 89,
+ tp_pll_func = 90,
+ tp_pll_gptr = 91,
+ tp_net_func = 92,
+ tp_net_gptr = 93,
+ tp_net_abst = 94,
+ tp_pib_func = 95,
+ tp_pib_fuse = 96,
+ tp_pib_gptr = 97,
+ tp_pll_bndy = 98,
+ tp_pib_repr = 99,
+ tp_vitl = 100,
+ // Instance rings
+ // ** none **
+};
-// This structure is needed for mapping a RingID to it's corresponding name.
-// The names will be used by the build scripts when generating the TOR.
-struct ringProperties_t
+static const CHIPLET_DATA g_cenData =
{
- uint8_t iv_torOffSet;
- char iv_name[50];
- CHIPLET_TYPE iv_type;
+ 0x01, // Centaur chiplet ID
+ NUM_RING_IDS, // Num of common rings for Centaur chiplet
+ 0, // Num of instance rings for Centaur chiplet
+ 0
};
+}; // namespace CEN
+
+#ifndef __PPE__
+
static const ringProperties_t RING_PROPERTIES[NUM_RING_IDS] =
{
- { 0 , "tcm_perv_cmsk" , PERV_TYPE },
- { 0 , "tcm_perv_lbst" , PERV_TYPE },
- { 0 , "tcm_perv_gptr" , PERV_TYPE },
- { 0 , "tcm_perv_func" , PERV_TYPE },
- { 0 , "tcm_perv_time" , PERV_TYPE },
- { 0 , "tcm_perv_abst" , PERV_TYPE },
- { 0 , "tcm_perv_repr" , PERV_TYPE },
- { 0 , "tcm_perv_FARR" , PERV_TYPE },
- { 0 , "tcm_memn_time" , PERV_TYPE },
- { 0 , "tcm_memn_regf" , PERV_TYPE },
- { 0 , "tcm_memn_gptr" , PERV_TYPE },
- { 0 , "tcm_memn_func" , PERV_TYPE },
- { 0 , "tcm_memn_lbst" , PERV_TYPE },
- { 0 , "tcm_memn_cmsk" , PERV_TYPE },
- { 0 , "tcm_memn_abst" , PERV_TYPE },
- { 0 , "tcm_memn_repr" , PERV_TYPE },
- { 0 , "tcm_memn_FARR" , PERV_TYPE },
- { 0 , "tcm_mems_time" , PERV_TYPE },
- { 0 , "tcm_mems_regf" , PERV_TYPE },
- { 0 , "tcm_mems_gptr" , PERV_TYPE },
- { 0 , "tcm_mems_func" , PERV_TYPE },
- { 0 , "tcm_mems_lbst" , PERV_TYPE },
- { 0 , "tcm_mems_cmsk" , PERV_TYPE },
- { 0 , "tcm_mems_bndy" , PERV_TYPE },
- { 0 , "tcm_mems_abst" , PERV_TYPE },
- { 0 , "tcm_mems_repr" , PERV_TYPE },
- { 0 , "tcm_mems_FARR" , PERV_TYPE },
- { 0 , "tcm_ddrn_bndy" , PERV_TYPE },
- { 0 , "tcm_ddrn_gptr" , PERV_TYPE },
- { 0 , "tcm_ddrn_func" , PERV_TYPE },
- { 0 , "tcm_ddrn_cmsk" , PERV_TYPE },
- { 0 , "tcm_ddrn_lbst" , PERV_TYPE },
- { 0 , "tcm_ddrs_bndy" , PERV_TYPE },
- { 0 , "tcm_ddrs_gptr" , PERV_TYPE },
- { 0 , "tcm_ddrs_func" , PERV_TYPE },
- { 0 , "tcm_ddrs_lbst" , PERV_TYPE },
- { 0 , "tcm_ddrs_cmsk" , PERV_TYPE },
- { 0 , "tcn_perv_cmsk" , PERV_TYPE },
- { 0 , "tcn_perv_lbst" , PERV_TYPE },
- { 0 , "tcn_perv_gptr" , PERV_TYPE },
- { 0 , "tcn_perv_func" , PERV_TYPE },
- { 0 , "tcn_perv_time" , PERV_TYPE },
- { 0 , "tcn_perv_FARR" , PERV_TYPE },
- { 0 , "tcn_perv_abst" , PERV_TYPE },
- { 0 , "tcn_mbi_FARR" , PERV_TYPE },
- { 0 , "tcn_mbi_time" , PERV_TYPE },
- { 0 , "tcn_mbi_repr" , PERV_TYPE },
- { 0 , "tcn_mbi_abst" , PERV_TYPE },
- { 0 , "tcn_mbi_regf" , PERV_TYPE },
- { 0 , "tcn_mbi_gptr" , PERV_TYPE },
- { 0 , "tcn_mbi_func" , PERV_TYPE },
- { 0 , "tcn_mbi_cmsk" , PERV_TYPE },
- { 0 , "tcn_mbi_lbst" , PERV_TYPE },
- { 0 , "tcn_dmi_bndy" , PERV_TYPE },
- { 0 , "tcn_dmi_gptr" , PERV_TYPE },
- { 0 , "tcn_dmi_func" , PERV_TYPE },
- { 0 , "tcn_dmi_cmsk" , PERV_TYPE },
- { 0 , "tcn_dmi_lbst" , PERV_TYPE },
- { 0 , "tcn_msc_gptr" , PERV_TYPE },
- { 0 , "tcn_msc_func" , PERV_TYPE },
- { 0 , "tcn_mbs_FARR" , PERV_TYPE },
- { 0 , "tcn_mbs_time" , PERV_TYPE },
- { 0 , "tcn_mbs_repr" , PERV_TYPE },
- { 0 , "tcn_mbs_abst" , PERV_TYPE },
- { 0 , "tcn_mbs_regf" , PERV_TYPE },
- { 0 , "tcn_mbs_gptr" , PERV_TYPE },
- { 0 , "tcn_mbs_func" , PERV_TYPE },
- { 0 , "tcn_mbs_lbst" , PERV_TYPE },
- { 0 , "tcn_mbs_cmsk" , PERV_TYPE },
- { 0 , "tcn_refr_cmsk" , PERV_TYPE },
- { 0 , "tcn_refr_FARR" , PERV_TYPE },
- { 0 , "tcn_refr_time" , PERV_TYPE },
- { 0 , "tcn_refr_repr" , PERV_TYPE },
- { 0 , "tcn_refr_abst" , PERV_TYPE },
- { 0 , "tcn_refr_lbst" , PERV_TYPE },
- { 0 , "tcn_refr_regf" , PERV_TYPE },
- { 0 , "tcn_refr_gptr" , PERV_TYPE },
- { 0 , "tcn_refr_func" , PERV_TYPE },
- { 0 , "tcn_perv_repr" , PERV_TYPE },
- { 0 , "tp_perv_func" , PERV_TYPE },
- { 0 , "tp_perv_gptr" , PERV_TYPE },
- { 0 , "tp_perv_mode" , PERV_TYPE },
- { 0 , "tp_perv_regf" , PERV_TYPE },
- { 0 , "tp_perv_lbst" , PERV_TYPE },
- { 0 , "tp_perv_abst" , PERV_TYPE },
- { 0 , "tp_perv_repr" , PERV_TYPE },
- { 0 , "tp_perv_time" , PERV_TYPE },
- { 0 , "tp_perv_bndy" , PERV_TYPE },
- { 0 , "tp_perv_farr" , PERV_TYPE },
- { 0 , "tp_perv_cmsk" , PERV_TYPE },
- { 0 , "tp_pll_func" , PERV_TYPE },
- { 0 , "tp_pll_gptr" , PERV_TYPE },
- { 0 , "tp_net_func" , PERV_TYPE },
- { 0 , "tp_net_gptr" , PERV_TYPE },
- { 0 , "tp_net_abst" , PERV_TYPE },
- { 0 , "tp_pib_func" , PERV_TYPE },
- { 0 , "tp_pib_fuse" , PERV_TYPE },
- { 0 , "tp_pib_gptr" , PERV_TYPE },
- { 0 , "tp_pll_bndy" , PERV_TYPE },
- { 0 , "tp_pib_repr" , PERV_TYPE },
- { 0 , "tp_vitl" , PERV_TYPE },
+ { CEN::tcm_perv_cmsk, "tcm_perv_cmsk", CEN_TYPE },
+ { CEN::tcm_perv_lbst, "tcm_perv_lbst", CEN_TYPE },
+ { CEN::tcm_perv_gptr, "tcm_perv_gptr", CEN_TYPE },
+ { CEN::tcm_perv_func, "tcm_perv_func", CEN_TYPE },
+ { CEN::tcm_perv_time, "tcm_perv_time", CEN_TYPE },
+ { CEN::tcm_perv_abst, "tcm_perv_abst", CEN_TYPE },
+ { CEN::tcm_perv_repr, "tcm_perv_repr", CEN_TYPE },
+ { CEN::tcm_perv_FARR, "tcm_perv_FARR", CEN_TYPE },
+ { CEN::tcm_memn_time, "tcm_memn_time", CEN_TYPE },
+ { CEN::tcm_memn_regf, "tcm_memn_regf", CEN_TYPE },
+ { CEN::tcm_memn_gptr, "tcm_memn_gptr", CEN_TYPE },
+ { CEN::tcm_memn_func, "tcm_memn_func", CEN_TYPE },
+ { CEN::tcm_memn_lbst, "tcm_memn_lbst", CEN_TYPE },
+ { CEN::tcm_memn_cmsk, "tcm_memn_cmsk", CEN_TYPE },
+ { CEN::tcm_memn_abst, "tcm_memn_abst", CEN_TYPE },
+ { CEN::tcm_memn_repr, "tcm_memn_repr", CEN_TYPE },
+ { CEN::tcm_memn_FARR, "tcm_memn_FARR", CEN_TYPE },
+ { CEN::tcm_mems_time, "tcm_mems_time", CEN_TYPE },
+ { CEN::tcm_mems_regf, "tcm_mems_regf", CEN_TYPE },
+ { CEN::tcm_mems_gptr, "tcm_mems_gptr", CEN_TYPE },
+ { CEN::tcm_mems_func, "tcm_mems_func", CEN_TYPE },
+ { CEN::tcm_mems_lbst, "tcm_mems_lbst", CEN_TYPE },
+ { CEN::tcm_mems_cmsk, "tcm_mems_cmsk", CEN_TYPE },
+ { CEN::tcm_mems_bndy, "tcm_mems_bndy", CEN_TYPE },
+ { CEN::tcm_mems_abst, "tcm_mems_abst", CEN_TYPE },
+ { CEN::tcm_mems_repr, "tcm_mems_repr", CEN_TYPE },
+ { CEN::tcm_mems_FARR, "tcm_mems_FARR", CEN_TYPE },
+ { CEN::tcm_ddrn_bndy, "tcm_ddrn_bndy", CEN_TYPE },
+ { CEN::tcm_ddrn_gptr, "tcm_ddrn_gptr", CEN_TYPE },
+ { CEN::tcm_ddrn_func, "tcm_ddrn_func", CEN_TYPE },
+ { CEN::tcm_ddrn_cmsk, "tcm_ddrn_cmsk", CEN_TYPE },
+ { CEN::tcm_ddrn_lbst, "tcm_ddrn_lbst", CEN_TYPE },
+ { CEN::tcm_ddrs_bndy, "tcm_ddrs_bndy", CEN_TYPE },
+ { CEN::tcm_ddrs_gptr, "tcm_ddrs_gptr", CEN_TYPE },
+ { CEN::tcm_ddrs_func, "tcm_ddrs_func", CEN_TYPE },
+ { CEN::tcm_ddrs_lbst, "tcm_ddrs_lbst", CEN_TYPE },
+ { CEN::tcm_ddrs_cmsk, "tcm_ddrs_cmsk", CEN_TYPE },
+ { CEN::tcn_perv_cmsk, "tcn_perv_cmsk", CEN_TYPE },
+ { CEN::tcn_perv_lbst, "tcn_perv_lbst", CEN_TYPE },
+ { CEN::tcn_perv_gptr, "tcn_perv_gptr", CEN_TYPE },
+ { CEN::tcn_perv_func, "tcn_perv_func", CEN_TYPE },
+ { CEN::tcn_perv_time, "tcn_perv_time", CEN_TYPE },
+ { CEN::tcn_perv_FARR, "tcn_perv_FARR", CEN_TYPE },
+ { CEN::tcn_perv_abst, "tcn_perv_abst", CEN_TYPE },
+ { CEN::tcn_mbi_FARR , "tcn_mbi_FARR" , CEN_TYPE },
+ { CEN::tcn_mbi_time , "tcn_mbi_time" , CEN_TYPE },
+ { CEN::tcn_mbi_repr , "tcn_mbi_repr" , CEN_TYPE },
+ { CEN::tcn_mbi_abst , "tcn_mbi_abst" , CEN_TYPE },
+ { CEN::tcn_mbi_regf , "tcn_mbi_regf" , CEN_TYPE },
+ { CEN::tcn_mbi_gptr , "tcn_mbi_gptr" , CEN_TYPE },
+ { CEN::tcn_mbi_func , "tcn_mbi_func" , CEN_TYPE },
+ { CEN::tcn_mbi_cmsk , "tcn_mbi_cmsk" , CEN_TYPE },
+ { CEN::tcn_mbi_lbst , "tcn_mbi_lbst" , CEN_TYPE },
+ { CEN::tcn_dmi_bndy , "tcn_dmi_bndy" , CEN_TYPE },
+ { CEN::tcn_dmi_gptr , "tcn_dmi_gptr" , CEN_TYPE },
+ { CEN::tcn_dmi_func , "tcn_dmi_func" , CEN_TYPE },
+ { CEN::tcn_dmi_cmsk , "tcn_dmi_cmsk" , CEN_TYPE },
+ { CEN::tcn_dmi_lbst , "tcn_dmi_lbst" , CEN_TYPE },
+ { CEN::tcn_msc_gptr , "tcn_msc_gptr" , CEN_TYPE },
+ { CEN::tcn_msc_func , "tcn_msc_func" , CEN_TYPE },
+ { CEN::tcn_mbs_FARR , "tcn_mbs_FARR" , CEN_TYPE },
+ { CEN::tcn_mbs_time , "tcn_mbs_time" , CEN_TYPE },
+ { CEN::tcn_mbs_repr , "tcn_mbs_repr" , CEN_TYPE },
+ { CEN::tcn_mbs_abst , "tcn_mbs_abst" , CEN_TYPE },
+ { CEN::tcn_mbs_regf , "tcn_mbs_regf" , CEN_TYPE },
+ { CEN::tcn_mbs_gptr , "tcn_mbs_gptr" , CEN_TYPE },
+ { CEN::tcn_mbs_func , "tcn_mbs_func" , CEN_TYPE },
+ { CEN::tcn_mbs_lbst , "tcn_mbs_lbst" , CEN_TYPE },
+ { CEN::tcn_mbs_cmsk , "tcn_mbs_cmsk" , CEN_TYPE },
+ { CEN::tcn_refr_cmsk, "tcn_refr_cmsk", CEN_TYPE },
+ { CEN::tcn_refr_FARR, "tcn_refr_FARR", CEN_TYPE },
+ { CEN::tcn_refr_time, "tcn_refr_time", CEN_TYPE },
+ { CEN::tcn_refr_repr, "tcn_refr_repr", CEN_TYPE },
+ { CEN::tcn_refr_abst, "tcn_refr_abst", CEN_TYPE },
+ { CEN::tcn_refr_lbst, "tcn_refr_lbst", CEN_TYPE },
+ { CEN::tcn_refr_regf, "tcn_refr_regf", CEN_TYPE },
+ { CEN::tcn_refr_gptr, "tcn_refr_gptr", CEN_TYPE },
+ { CEN::tcn_refr_func, "tcn_refr_func", CEN_TYPE },
+ { CEN::tcn_perv_repr, "tcn_perv_repr", CEN_TYPE },
+ { CEN::tp_perv_func , "tp_perv_func" , CEN_TYPE },
+ { CEN::tp_perv_gptr , "tp_perv_gptr" , CEN_TYPE },
+ { CEN::tp_perv_mode , "tp_perv_mode" , CEN_TYPE },
+ { CEN::tp_perv_regf , "tp_perv_regf" , CEN_TYPE },
+ { CEN::tp_perv_lbst , "tp_perv_lbst" , CEN_TYPE },
+ { CEN::tp_perv_abst , "tp_perv_abst" , CEN_TYPE },
+ { CEN::tp_perv_repr , "tp_perv_repr" , CEN_TYPE },
+ { CEN::tp_perv_time , "tp_perv_time" , CEN_TYPE },
+ { CEN::tp_perv_bndy , "tp_perv_bndy" , CEN_TYPE },
+ { CEN::tp_perv_farr , "tp_perv_farr" , CEN_TYPE },
+ { CEN::tp_perv_cmsk , "tp_perv_cmsk" , CEN_TYPE },
+ { CEN::tp_pll_func , "tp_pll_func" , CEN_TYPE },
+ { CEN::tp_pll_gptr , "tp_pll_gptr" , CEN_TYPE },
+ { CEN::tp_net_func , "tp_net_func" , CEN_TYPE },
+ { CEN::tp_net_gptr , "tp_net_gptr" , CEN_TYPE },
+ { CEN::tp_net_abst , "tp_net_abst" , CEN_TYPE },
+ { CEN::tp_pib_func , "tp_pib_func" , CEN_TYPE },
+ { CEN::tp_pib_fuse , "tp_pib_fuse" , CEN_TYPE },
+ { CEN::tp_pib_gptr , "tp_pib_gptr" , CEN_TYPE },
+ { CEN::tp_pll_bndy , "tp_pll_bndy" , CEN_TYPE },
+ { CEN::tp_pib_repr , "tp_pib_repr" , CEN_TYPE },
+ { CEN::tp_vitl , "tp_vitl" , CEN_TYPE },
};
-#endif
+
+#else
+
+static const ringProperties_t RING_PROPERTIES[NUM_RING_IDS] =
+{
+ { CEN::tcm_perv_cmsk, CEN_TYPE },
+ { CEN::tcm_perv_lbst, CEN_TYPE },
+ { CEN::tcm_perv_gptr, CEN_TYPE },
+ { CEN::tcm_perv_func, CEN_TYPE },
+ { CEN::tcm_perv_time, CEN_TYPE },
+ { CEN::tcm_perv_abst, CEN_TYPE },
+ { CEN::tcm_perv_repr, CEN_TYPE },
+ { CEN::tcm_perv_FARR, CEN_TYPE },
+ { CEN::tcm_memn_time, CEN_TYPE },
+ { CEN::tcm_memn_regf, CEN_TYPE },
+ { CEN::tcm_memn_gptr, CEN_TYPE },
+ { CEN::tcm_memn_func, CEN_TYPE },
+ { CEN::tcm_memn_lbst, CEN_TYPE },
+ { CEN::tcm_memn_cmsk, CEN_TYPE },
+ { CEN::tcm_memn_abst, CEN_TYPE },
+ { CEN::tcm_memn_repr, CEN_TYPE },
+ { CEN::tcm_memn_FARR, CEN_TYPE },
+ { CEN::tcm_mems_time, CEN_TYPE },
+ { CEN::tcm_mems_regf, CEN_TYPE },
+ { CEN::tcm_mems_gptr, CEN_TYPE },
+ { CEN::tcm_mems_func, CEN_TYPE },
+ { CEN::tcm_mems_lbst, CEN_TYPE },
+ { CEN::tcm_mems_cmsk, CEN_TYPE },
+ { CEN::tcm_mems_bndy, CEN_TYPE },
+ { CEN::tcm_mems_abst, CEN_TYPE },
+ { CEN::tcm_mems_repr, CEN_TYPE },
+ { CEN::tcm_mems_FARR, CEN_TYPE },
+ { CEN::tcm_ddrn_bndy, CEN_TYPE },
+ { CEN::tcm_ddrn_gptr, CEN_TYPE },
+ { CEN::tcm_ddrn_func, CEN_TYPE },
+ { CEN::tcm_ddrn_cmsk, CEN_TYPE },
+ { CEN::tcm_ddrn_lbst, CEN_TYPE },
+ { CEN::tcm_ddrs_bndy, CEN_TYPE },
+ { CEN::tcm_ddrs_gptr, CEN_TYPE },
+ { CEN::tcm_ddrs_func, CEN_TYPE },
+ { CEN::tcm_ddrs_lbst, CEN_TYPE },
+ { CEN::tcm_ddrs_cmsk, CEN_TYPE },
+ { CEN::tcn_perv_cmsk, CEN_TYPE },
+ { CEN::tcn_perv_lbst, CEN_TYPE },
+ { CEN::tcn_perv_gptr, CEN_TYPE },
+ { CEN::tcn_perv_func, CEN_TYPE },
+ { CEN::tcn_perv_time, CEN_TYPE },
+ { CEN::tcn_perv_FARR, CEN_TYPE },
+ { CEN::tcn_perv_abst, CEN_TYPE },
+ { CEN::tcn_mbi_FARR , CEN_TYPE },
+ { CEN::tcn_mbi_time , CEN_TYPE },
+ { CEN::tcn_mbi_repr , CEN_TYPE },
+ { CEN::tcn_mbi_abst , CEN_TYPE },
+ { CEN::tcn_mbi_regf , CEN_TYPE },
+ { CEN::tcn_mbi_gptr , CEN_TYPE },
+ { CEN::tcn_mbi_func , CEN_TYPE },
+ { CEN::tcn_mbi_cmsk , CEN_TYPE },
+ { CEN::tcn_mbi_lbst , CEN_TYPE },
+ { CEN::tcn_dmi_bndy , CEN_TYPE },
+ { CEN::tcn_dmi_gptr , CEN_TYPE },
+ { CEN::tcn_dmi_func , CEN_TYPE },
+ { CEN::tcn_dmi_cmsk , CEN_TYPE },
+ { CEN::tcn_dmi_lbst , CEN_TYPE },
+ { CEN::tcn_msc_gptr , CEN_TYPE },
+ { CEN::tcn_msc_func , CEN_TYPE },
+ { CEN::tcn_mbs_FARR , CEN_TYPE },
+ { CEN::tcn_mbs_time , CEN_TYPE },
+ { CEN::tcn_mbs_repr , CEN_TYPE },
+ { CEN::tcn_mbs_abst , CEN_TYPE },
+ { CEN::tcn_mbs_regf , CEN_TYPE },
+ { CEN::tcn_mbs_gptr , CEN_TYPE },
+ { CEN::tcn_mbs_func , CEN_TYPE },
+ { CEN::tcn_mbs_lbst , CEN_TYPE },
+ { CEN::tcn_mbs_cmsk , CEN_TYPE },
+ { CEN::tcn_refr_cmsk, CEN_TYPE },
+ { CEN::tcn_refr_FARR, CEN_TYPE },
+ { CEN::tcn_refr_time, CEN_TYPE },
+ { CEN::tcn_refr_repr, CEN_TYPE },
+ { CEN::tcn_refr_abst, CEN_TYPE },
+ { CEN::tcn_refr_lbst, CEN_TYPE },
+ { CEN::tcn_refr_regf, CEN_TYPE },
+ { CEN::tcn_refr_gptr, CEN_TYPE },
+ { CEN::tcn_refr_func, CEN_TYPE },
+ { CEN::tcn_perv_repr, CEN_TYPE },
+ { CEN::tp_perv_func , CEN_TYPE },
+ { CEN::tp_perv_gptr , CEN_TYPE },
+ { CEN::tp_perv_mode , CEN_TYPE },
+ { CEN::tp_perv_regf , CEN_TYPE },
+ { CEN::tp_perv_lbst , CEN_TYPE },
+ { CEN::tp_perv_abst , CEN_TYPE },
+ { CEN::tp_perv_repr , CEN_TYPE },
+ { CEN::tp_perv_time , CEN_TYPE },
+ { CEN::tp_perv_bndy , CEN_TYPE },
+ { CEN::tp_perv_farr , CEN_TYPE },
+ { CEN::tp_perv_cmsk , CEN_TYPE },
+ { CEN::tp_pll_func , CEN_TYPE },
+ { CEN::tp_pll_gptr , CEN_TYPE },
+ { CEN::tp_net_func , CEN_TYPE },
+ { CEN::tp_net_gptr , CEN_TYPE },
+ { CEN::tp_net_abst , CEN_TYPE },
+ { CEN::tp_pib_func , CEN_TYPE },
+ { CEN::tp_pib_fuse , CEN_TYPE },
+ { CEN::tp_pib_gptr , CEN_TYPE },
+ { CEN::tp_pll_bndy , CEN_TYPE },
+ { CEN::tp_pib_repr , CEN_TYPE },
+ { CEN::tp_vitl , CEN_TYPE },
+};
+
+#endif // __PPE__
+
+#endif // _CEN_RINGID_H_
diff --git a/import/chips/centaur/utils/imageProcs/cen_ring_id.h b/import/chips/centaur/utils/imageProcs/cen_ring_id.h
index 5df97696..d6175016 100644
--- a/import/chips/centaur/utils/imageProcs/cen_ring_id.h
+++ b/import/chips/centaur/utils/imageProcs/cen_ring_id.h
@@ -22,121 +22,122 @@
/* permissions and limitations under the License. */
/* */
/* IBM_PROLOG_END_TAG */
-#ifndef _CEN_RINGID_ENUM_H_
-#define _CEN_RINGID_ENUM_H_
+#ifndef _CEN_RING_ID_H_
+#define _CEN_RING_ID_H_
-///
-/// @enum RingID
-/// @brief Enumeration of Ring ID values. These values are used to traverse
-/// an image having Ring Containers.
+//
+// @brief Enumeration of Ring ID values. These values are used to organize
+// rings and to traverse TOR ring sections.
// NOTE: Do not change the numbering, the sequence or add new constants to
// the below enum, unless you know the effect it has on the traversing
-// of the image for Ring Containers.
+// TOR.
+//
+
enum RingID
{
- // temp centaur rings
- tcm_perv_cmsk,
- tcm_perv_lbst,
- tcm_perv_gptr,
- tcm_perv_func,
- tcm_perv_time,
- tcm_perv_abst,
- tcm_perv_repr,
- tcm_perv_FARR,
- tcm_memn_time,
- tcm_memn_regf,
- tcm_memn_gptr,
- tcm_memn_func,
- tcm_memn_lbst,
- tcm_memn_cmsk,
- tcm_memn_abst,
- tcm_memn_repr,
- tcm_memn_FARR,
- tcm_mems_time,
- tcm_mems_regf,
- tcm_mems_gptr,
- tcm_mems_func,
- tcm_mems_lbst,
- tcm_mems_cmsk,
- tcm_mems_bndy,
- tcm_mems_abst,
- tcm_mems_repr,
- tcm_mems_FARR,
- tcm_ddrn_bndy,
- tcm_ddrn_gptr,
- tcm_ddrn_func,
- tcm_ddrn_cmsk,
- tcm_ddrn_lbst,
- tcm_ddrs_bndy,
- tcm_ddrs_gptr,
- tcm_ddrs_func,
- tcm_ddrs_lbst,
- tcm_ddrs_cmsk,
- tcn_perv_cmsk,
- tcn_perv_lbst,
- tcn_perv_gptr,
- tcn_perv_func,
- tcn_perv_time,
- tcn_perv_FARR,
- tcn_perv_abst,
- tcn_mbi_FARR,
- tcn_mbi_time,
- tcn_mbi_repr,
- tcn_mbi_abst,
- tcn_mbi_regf,
- tcn_mbi_gptr,
- tcn_mbi_func,
- tcn_mbi_cmsk,
- tcn_mbi_lbst,
- tcn_dmi_bndy,
- tcn_dmi_gptr,
- tcn_dmi_func,
- tcn_dmi_cmsk,
- tcn_dmi_lbst,
- tcn_msc_gptr,
- tcn_msc_func,
- tcn_mbs_FARR,
- tcn_mbs_time,
- tcn_mbs_repr,
- tcn_mbs_abst,
- tcn_mbs_regf,
- tcn_mbs_gptr,
- tcn_mbs_func,
- tcn_mbs_lbst,
- tcn_mbs_cmsk,
- tcn_refr_cmsk,
- tcn_refr_FARR,
- tcn_refr_time,
- tcn_refr_repr,
- tcn_refr_abst,
- tcn_refr_lbst,
- tcn_refr_regf,
- tcn_refr_gptr,
- tcn_refr_func,
- tcn_perv_repr,
- tp_perv_func,
- tp_perv_gptr,
- tp_perv_mode,
- tp_perv_regf,
- tp_perv_lbst,
- tp_perv_abst,
- tp_perv_repr,
- tp_perv_time,
- tp_perv_bndy,
- tp_perv_farr,
- tp_perv_cmsk,
- tp_pll_func,
- tp_pll_gptr,
- tp_net_func,
- tp_net_gptr,
- tp_net_abst,
- tp_pib_func,
- tp_pib_fuse,
- tp_pib_gptr,
- tp_pll_bndy,
- tp_pib_repr,
- tp_vitl,
- NUM_RING_IDS // This shoud always be the last constant
-}; // end of enum RingID
+ tcm_perv_cmsk = 0, //0x00
+ tcm_perv_lbst = 1, //0x01
+ tcm_perv_gptr = 2, //0x02
+ tcm_perv_func = 3, //0x03
+ tcm_perv_time = 4, //0x04
+ tcm_perv_abst = 5, //0x05
+ tcm_perv_repr = 6, //0x06
+ tcm_perv_FARR = 7, //0x07
+ tcm_memn_time = 8, //0x08
+ tcm_memn_regf = 9, //0x09
+ tcm_memn_gptr = 10,//0x0A
+ tcm_memn_func = 11,//0x0B
+ tcm_memn_lbst = 12,//0x0C
+ tcm_memn_cmsk = 13,//0x0D
+ tcm_memn_abst = 14,//0x0E
+ tcm_memn_repr = 15,//0x0F
+ tcm_memn_FARR = 16,//0x10
+ tcm_mems_time = 17,//0x11
+ tcm_mems_regf = 18,//0x12
+ tcm_mems_gptr = 19,//0x13
+ tcm_mems_func = 20,//0x14
+ tcm_mems_lbst = 21,//0x15
+ tcm_mems_cmsk = 22,//0x16
+ tcm_mems_bndy = 23,//0x17
+ tcm_mems_abst = 24,//0x18
+ tcm_mems_repr = 25,//0x19
+ tcm_mems_FARR = 26,//0x1A
+ tcm_ddrn_bndy = 27,//0x1B
+ tcm_ddrn_gptr = 28,//0x1C
+ tcm_ddrn_func = 29,//0x1D
+ tcm_ddrn_cmsk = 30,//0x1E
+ tcm_ddrn_lbst = 31,//0x1F
+ tcm_ddrs_bndy = 32,//0x20
+ tcm_ddrs_gptr = 33,//0x21
+ tcm_ddrs_func = 34,//0x22
+ tcm_ddrs_lbst = 35,//0x23
+ tcm_ddrs_cmsk = 36,//0x24
+ tcn_perv_cmsk = 37,//0x25
+ tcn_perv_lbst = 38,//0x26
+ tcn_perv_gptr = 39,//0x27
+ tcn_perv_func = 40,//0x28
+ tcn_perv_time = 41,//0x29
+ tcn_perv_FARR = 42,//0x2A
+ tcn_perv_abst = 43,//0x2B
+ tcn_mbi_FARR = 44,//0x2C
+ tcn_mbi_time = 45,//0x2D
+ tcn_mbi_repr = 46,//0x2E
+ tcn_mbi_abst = 47,//0x2F
+ tcn_mbi_regf = 48,//0x30
+ tcn_mbi_gptr = 49,//0x31
+ tcn_mbi_func = 50,//0x32
+ tcn_mbi_cmsk = 51,//0x33
+ tcn_mbi_lbst = 52,//0x34
+ tcn_dmi_bndy = 53,//0x35
+ tcn_dmi_gptr = 54,//0x36
+ tcn_dmi_func = 55,//0x37
+ tcn_dmi_cmsk = 56,//0x38
+ tcn_dmi_lbst = 57,//0x39
+ tcn_msc_gptr = 58,//0x3A
+ tcn_msc_func = 59,//0x3B
+ tcn_mbs_FARR = 60,//0x3C
+ tcn_mbs_time = 61,//0x3D
+ tcn_mbs_repr = 62,//0x3E
+ tcn_mbs_abst = 63,//0x3F
+ tcn_mbs_regf = 64,//0x40
+ tcn_mbs_gptr = 65,//0x41
+ tcn_mbs_func = 66,//0x42
+ tcn_mbs_lbst = 67,//0x43
+ tcn_mbs_cmsk = 68,//0x44
+ tcn_refr_cmsk = 69,//0x45
+ tcn_refr_FARR = 70,//0x46
+ tcn_refr_time = 71,//0x47
+ tcn_refr_repr = 72,//0x48
+ tcn_refr_abst = 73,//0x49
+ tcn_refr_lbst = 74,//0x4A
+ tcn_refr_regf = 75,//0x4B
+ tcn_refr_gptr = 76,//0x4C
+ tcn_refr_func = 77,//0x4D
+ tcn_perv_repr = 78,//0x4E
+ tp_perv_func = 79,//0x4F
+ tp_perv_gptr = 80,//0x50
+ tp_perv_mode = 81,//0x51
+ tp_perv_regf = 82,//0x52
+ tp_perv_lbst = 83,//0x53
+ tp_perv_abst = 84,//0x54
+ tp_perv_repr = 85,//0x55
+ tp_perv_time = 86,//0x56
+ tp_perv_bndy = 87,//0x57
+ tp_perv_farr = 88,//0x58
+ tp_perv_cmsk = 89,//0x59
+ tp_pll_func = 90,//0x5A
+ tp_pll_gptr = 91,//0x5B
+ tp_net_func = 92,//0x5C
+ tp_net_gptr = 93,//0x5D
+ tp_net_abst = 94,//0x5E
+ tp_pib_func = 95,//0x5F
+ tp_pib_fuse = 96,//0x60
+ tp_pib_gptr = 97,//0x61
+ tp_pll_bndy = 98,//0x62
+ tp_pib_repr = 99,//0x63
+ tp_vitl = 100,//0x64
+ NUM_RING_IDS
+
+}; // enum RingID
-#endif // _P9_RINGID_ENUM_H_
+#endif // _CEN_RING_ID_H_
OpenPOWER on IntegriCloud