summaryrefslogtreecommitdiffstats
path: root/src/import/chips/centaur/utils/imageProcs/cen_ringId.C
diff options
context:
space:
mode:
authorClaus Michael Olsen <cmolsen@us.ibm.com>2018-05-14 17:51:09 -0500
committerDaniel M. Crowell <dcrowell@us.ibm.com>2018-10-14 13:05:32 -0500
commit52b76be222254e59959db984606c09dae854270b (patch)
treea009b9fbeca0437d3552844bfd55f64147d4a0e1 /src/import/chips/centaur/utils/imageProcs/cen_ringId.C
parent62feee748b72ef5f7cb1032964dab2b0686cd916 (diff)
downloadtalos-hostboot-52b76be222254e59959db984606c09dae854270b.tar.gz
talos-hostboot-52b76be222254e59959db984606c09dae854270b.zip
P10 prep: Infrastructure (IS) ring Id metadata and API changes
Gerrit intent: - Applicable for P9 merge (co-req NOT required) - Co-req not req'd for any tests Includes the following changes: - Accommodates initCompiler's needs for additional ring Id APIs to retrieve IS's key ring identifiers, ringId and ringClass, and to align with our enumerated chipId - Elimination of redundancy in and reorg of IS's ring Id lists: RingProperties, GenRingIdList (gone) and ChipletData. - GenRingIdList has been removed. - Expand RingProperties to also include scanScomAddr and ringClass. - Member of ring and chiplet properties structs have been renamed in consistent camel style (no longer using "iv_" anywhere). - Note that with "infrastructure (IS)" we here mean the core infrastructure codes that directly interact with and affect the image. Key_Cronus_Test=XIP_REGRESS Change-Id: I7e92af04edd10c0994718e476f6e7b77c5d124d6 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/59087 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/import/chips/centaur/utils/imageProcs/cen_ringId.C')
-rw-r--r--src/import/chips/centaur/utils/imageProcs/cen_ringId.C178
1 files changed, 3 insertions, 175 deletions
diff --git a/src/import/chips/centaur/utils/imageProcs/cen_ringId.C b/src/import/chips/centaur/utils/imageProcs/cen_ringId.C
index 2f2f050b0..f6184af42 100644
--- a/src/import/chips/centaur/utils/imageProcs/cen_ringId.C
+++ b/src/import/chips/centaur/utils/imageProcs/cen_ringId.C
@@ -28,196 +28,24 @@
namespace CEN_RID
{
-
#include "cen_ringId.H"
-
-namespace CEN
-{
-
-const GenRingIdList RING_ID_LIST_COMMON[] =
-{
- {"tcm_perv_cmsk", 0x00, 0x01, 0x01, CEN_RING, 0x0303400a},
- {"tcm_perv_lbst", 0x01, 0x01, 0x01, CEN_RING, 0x03034004},
- {"tcm_perv_gptr", 0x02, 0x01, 0x01, CEN_RING, 0x03034002},
- {"tcm_perv_func", 0x03, 0x01, 0x01, CEN_RING, 0x03034000},
- {"tcm_perv_time", 0x04, 0x01, 0x01, CEN_RING, 0x03034007},
- {"tcm_perv_abst", 0x05, 0x01, 0x01, CEN_RING, 0x03034005},
- {"tcm_perv_repr", 0x06, 0x01, 0x01, CEN_RING, 0x03034006},
- {"tcm_perv_FARR", 0x07, 0x01, 0x01, CEN_RING, 0x03034009},
- {"tcm_memn_time", 0x08, 0x01, 0x01, CEN_RING, 0x03032007},
- {"tcm_memn_regf", 0x09, 0x01, 0x01, CEN_RING, 0x03032003},
- {"tcm_memn_gptr", 0x0a, 0x01, 0x01, CEN_RING, 0x03032002},
- {"tcm_memn_func", 0x0b, 0x01, 0x01, CEN_RING, 0x03032000},
- {"tcm_memn_lbst", 0x0c, 0x01, 0x01, CEN_RING, 0x03032004},
- {"tcm_memn_cmsk", 0x0d, 0x01, 0x01, CEN_RING, 0x0303200a},
- {"tcm_memn_abst", 0x0e, 0x01, 0x01, CEN_RING, 0x03032005},
- {"tcm_memn_repr", 0x0f, 0x01, 0x01, CEN_RING, 0x03032006},
- {"tcm_memn_FARR", 0x10, 0x01, 0x01, CEN_RING, 0x03032009},
- {"tcm_mems_time", 0x11, 0x01, 0x01, CEN_RING, 0x03031007},
- {"tcm_mems_regf", 0x12, 0x01, 0x01, CEN_RING, 0x03031003},
- {"tcm_mems_gptr", 0x13, 0x01, 0x01, CEN_RING, 0x03031002},
- {"tcm_mems_func", 0x14, 0x01, 0x01, CEN_RING, 0x03031000},
- {"tcm_mems_lbst", 0x15, 0x01, 0x01, CEN_RING, 0x03031004},
- {"tcm_mems_cmsk", 0x16, 0x01, 0x01, CEN_RING, 0x0303100a},
- {"tcm_mems_bndy", 0x17, 0x01, 0x01, CEN_RING, 0x03031008},
- {"tcm_mems_abst", 0x18, 0x01, 0x01, CEN_RING, 0x03031005},
- {"tcm_mems_repr", 0x19, 0x01, 0x01, CEN_RING, 0x03031006},
- {"tcm_mems_FARR", 0x1a, 0x01, 0x01, CEN_RING, 0x03031009},
- {"tcm_ddrn_bndy", 0x1b, 0x01, 0x01, CEN_RING, 0x03030408},
- {"tcm_ddrn_gptr", 0x1c, 0x01, 0x01, CEN_RING, 0x03030402},
- {"tcm_ddrn_func", 0x1d, 0x01, 0x01, CEN_RING, 0x03030400},
- {"tcm_ddrn_cmsk", 0x1e, 0x01, 0x01, CEN_RING, 0x0303040a},
- {"tcm_ddrn_lbst", 0x1f, 0x01, 0x01, CEN_RING, 0x03030404},
- {"tcm_ddrs_bndy", 0x20, 0x01, 0x01, CEN_RING, 0x03030208},
- {"tcm_ddrs_gptr", 0x21, 0x01, 0x01, CEN_RING, 0x03030202},
- {"tcm_ddrs_func", 0x22, 0x01, 0x01, CEN_RING, 0x03030200},
- {"tcm_ddrs_lbst", 0x23, 0x01, 0x01, CEN_RING, 0x03030204},
- {"tcm_ddrs_cmsk", 0x24, 0x01, 0x01, CEN_RING, 0x0303020a},
- {"tcn_perv_cmsk", 0x25, 0x01, 0x01, CEN_RING, 0x0203400a},
- {"tcn_perv_lbst", 0x26, 0x01, 0x01, CEN_RING, 0x02034004},
- {"tcn_perv_gptr", 0x27, 0x01, 0x01, CEN_RING, 0x02034002},
- {"tcn_perv_func", 0x28, 0x01, 0x01, CEN_RING, 0x02034000},
- {"tcn_perv_time", 0x29, 0x01, 0x01, CEN_RING, 0x02034007},
- {"tcn_perv_FARR", 0x2a, 0x01, 0x01, CEN_RING, 0x02034009},
- {"tcn_perv_abst", 0x2b, 0x01, 0x01, CEN_RING, 0x02034005},
- {"tcn_mbi_FARR" , 0x2c, 0x01, 0x01, CEN_RING, 0x02032009},
- {"tcn_mbi_time" , 0x2d, 0x01, 0x01, CEN_RING, 0x02032007},
- {"tcn_mbi_repr" , 0x2e, 0x01, 0x01, CEN_RING, 0x02032006},
- {"tcn_mbi_abst" , 0x2f, 0x01, 0x01, CEN_RING, 0x02032005},
- {"tcn_mbi_regf" , 0x30, 0x01, 0x01, CEN_RING, 0x02032003},
- {"tcn_mbi_gptr" , 0x31, 0x01, 0x01, CEN_RING, 0x02032002},
- {"tcn_mbi_func" , 0x32, 0x01, 0x01, CEN_RING, 0x02032000},
- {"tcn_mbi_cmsk" , 0x33, 0x01, 0x01, CEN_RING, 0x0203200a},
- {"tcn_mbi_lbst" , 0x34, 0x01, 0x01, CEN_RING, 0x02032004},
- {"tcn_dmi_bndy" , 0x35, 0x01, 0x01, CEN_RING, 0x02031008},
- {"tcn_dmi_gptr" , 0x36, 0x01, 0x01, CEN_RING, 0x02031002},
- {"tcn_dmi_func" , 0x37, 0x01, 0x01, CEN_RING, 0x02031000},
- {"tcn_dmi_cmsk" , 0x38, 0x01, 0x01, CEN_RING, 0x0203100a},
- {"tcn_dmi_lbst" , 0x39, 0x01, 0x01, CEN_RING, 0x02031004},
- {"tcn_msc_gptr" , 0x3a, 0x01, 0x01, CEN_RING, 0x02030802},
- {"tcn_msc_func" , 0x3b, 0x01, 0x01, CEN_RING, 0x02030800},
- {"tcn_mbs_FARR" , 0x3c, 0x01, 0x01, CEN_RING, 0x02030409},
- {"tcn_mbs_time" , 0x3d, 0x01, 0x01, CEN_RING, 0x02030407},
- {"tcn_mbs_repr" , 0x3e, 0x01, 0x01, CEN_RING, 0x02030406},
- {"tcn_mbs_abst" , 0x3f, 0x01, 0x01, CEN_RING, 0x02030405},
- {"tcn_mbs_regf" , 0x40, 0x01, 0x01, CEN_RING, 0x02030403},
- {"tcn_mbs_gptr" , 0x41, 0x01, 0x01, CEN_RING, 0x02030402},
- {"tcn_mbs_func" , 0x42, 0x01, 0x01, CEN_RING, 0x02030400},
- {"tcn_mbs_lbst" , 0x43, 0x01, 0x01, CEN_RING, 0x02030404},
- {"tcn_mbs_cmsk" , 0x44, 0x01, 0x01, CEN_RING, 0x0203040a},
- {"tcn_refr_cmsk", 0x45, 0x01, 0x01, CEN_RING, 0x0203010a},
- {"tcn_refr_FARR", 0x46, 0x01, 0x01, CEN_RING, 0x02030109},
- {"tcn_refr_time", 0x47, 0x01, 0x01, CEN_RING, 0x02030107},
- {"tcn_refr_repr", 0x48, 0x01, 0x01, CEN_RING, 0x02030106},
- {"tcn_refr_abst", 0x49, 0x01, 0x01, CEN_RING, 0x02030105},
- {"tcn_refr_lbst", 0x4a, 0x01, 0x01, CEN_RING, 0x02030104},
- {"tcn_refr_regf", 0x4b, 0x01, 0x01, CEN_RING, 0x02030103},
- {"tcn_refr_gptr", 0x4c, 0x01, 0x01, CEN_RING, 0x02030102},
- {"tcn_refr_func", 0x4d, 0x01, 0x01, CEN_RING, 0x02030100},
- {"tcn_perv_repr", 0x4e, 0x01, 0x01, CEN_RING, 0x02034006},
- {"tp_perv_func" , 0x4f, 0x01, 0x01, CEN_RING, 0x01034000},
- {"tp_perv_gptr" , 0x50, 0x01, 0x01, CEN_RING, 0x01034002},
- {"tp_perv_mode" , 0x51, 0x01, 0x01, CEN_RING, 0x01034001},
- {"tp_perv_regf" , 0x52, 0x01, 0x01, CEN_RING, 0x01034003},
- {"tp_perv_lbst" , 0x53, 0x01, 0x01, CEN_RING, 0x01034004},
- {"tp_perv_abst" , 0x54, 0x01, 0x01, CEN_RING, 0x01034005},
- {"tp_perv_repr" , 0x55, 0x01, 0x01, CEN_RING, 0x01034006},
- {"tp_perv_time" , 0x56, 0x01, 0x01, CEN_RING, 0x01034007},
- {"tp_perv_bndy" , 0x57, 0x01, 0x01, CEN_RING, 0x01034008},
- {"tp_perv_farr" , 0x58, 0x01, 0x01, CEN_RING, 0x01034009},
- {"tp_perv_cmsk" , 0x59, 0x01, 0x01, CEN_RING, 0x0103400a},
- {"tp_pll_func" , 0x5a, 0x01, 0x01, CEN_RING, 0x01030080},
- {"tp_pll_gptr" , 0x5b, 0x01, 0x01, CEN_RING, 0x01030082},
- {"tp_net_func" , 0x5c, 0x01, 0x01, CEN_RING, 0x00032000},
- {"tp_net_gptr" , 0x5d, 0x01, 0x01, CEN_RING, 0x00032002},
- {"tp_net_abst" , 0x5e, 0x01, 0x01, CEN_RING, 0x00032005},
- {"tp_pib_func" , 0x5f, 0x01, 0x01, CEN_RING, 0x00031000},
- {"tp_pib_fuse" , 0x60, 0x01, 0x01, CEN_RING, 0x00031005},
- {"tp_pib_gptr" , 0x61, 0x01, 0x01, CEN_RING, 0x00031002},
- {"tp_pll_bndy" , 0x62, 0x01, 0x01, CEN_RING, 0x01030088},
- {"tp_pll_bndy_bucket_1", 0x63, 0x01, 0x01, CEN_RING, 0x01030088},
- {"tp_pll_bndy_bucket_2", 0x64, 0x01, 0x01, CEN_RING, 0x01030088},
- {"tp_pll_bndy_bucket_3", 0x65, 0x01, 0x01, CEN_RING, 0x01030088},
- {"tp_pll_bndy_bucket_4", 0x66, 0x01, 0x01, CEN_RING, 0x01030088},
- {"tp_pll_bndy_bucket_5", 0x67, 0x01, 0x01, CEN_RING, 0x01030088},
- {"tp_pll_bndy_bucket_6", 0x68, 0x01, 0x01, CEN_RING, 0x01030088},
- {"tp_pll_bndy_bucket_7", 0x69, 0x01, 0x01, CEN_RING, 0x01030088},
- {"tp_pll_bndy_bucket_8", 0x6a, 0x01, 0x01, CEN_RING, 0x01030088},
};
-const RingVariantOrder RING_VARIANT_ORDER[] = { RV_BASE, RV_RL, UNDEFINED_RING_VARIANT, UNDEFINED_RING_VARIANT, UNDEFINED_RING_VARIANT, UNDEFINED_RING_VARIANT, UNDEFINED_RING_VARIANT };
-
-}; // namespace CEN
-
-}; // namespace CEN_RID
-
using namespace CEN_RID;
-ChipletType_t CEN_RID::ringid_get_chiplet(RingId_t i_ringId)
-{
- return RING_PROPERTIES[i_ringId].iv_type;
-}
-
void CEN_RID::ringid_get_chiplet_properties(
ChipletType_t i_chipletType,
- ChipletData_t** o_cpltData,
- GenRingIdList** o_ringComm,
- GenRingIdList** o_ringInst,
- RingVariantOrder** o_varOrder,
- uint8_t* o_numVariants)
+ ChipletData_t** o_chipletData)
{
switch (i_chipletType)
{
case CEN_TYPE :
- *o_cpltData = (ChipletData_t*) &CEN::g_chipletData;
- *o_ringComm = (GenRingIdList*) CEN::RING_ID_LIST_COMMON;
- *o_ringInst = NULL;
- *o_varOrder = (RingVariantOrder*) CEN::RING_VARIANT_ORDER;
- *o_numVariants = (*(*o_cpltData)).iv_num_common_ring_variants;
+ *o_chipletData = (ChipletData_t*)&CEN::g_chipletData;
break;
default :
- *o_cpltData = NULL;
- *o_ringComm = NULL;
- *o_ringInst = NULL;
- *o_varOrder = NULL;
- *o_numVariants = 0;
+ *o_chipletData = NULL;
break;
}
}
-
-GenRingIdList* CEN_RID::_ringid_get_ring_list(RingId_t i_ringId)
-{
- ChipletData_t* l_cpltData;
- GenRingIdList* l_ringList[2]; // 0: common, 1: instance
- RingVariantOrder* l_varOrder;
- uint8_t l_numVariants;;
- int i, j, n;
-
- CEN_RID::ringid_get_chiplet_properties(
- CEN_RID::ringid_get_chiplet(i_ringId),
- &l_cpltData, &l_ringList[0], &l_ringList[1], &l_varOrder, &l_numVariants);
-
- if (!l_ringList[0])
- {
- return NULL;
- }
-
- for (j = 0; j < 2; j++) // 0: common, 1: instance
- {
- n = (j ? l_cpltData->iv_num_instance_rings
- : l_cpltData->iv_num_common_rings);
-
- for (i = 0; i < n; i++)
- {
- if (!strcmp(l_ringList[j][i].ringName,
- RING_PROPERTIES[i_ringId].iv_name))
- {
- return &(l_ringList[j][i]);
- }
- }
- }
-
- return NULL;
-}
OpenPOWER on IntegriCloud