diff options
author | Joe McGill <jmcgill@us.ibm.com> | 2017-12-04 22:40:30 -0600 |
---|---|---|
committer | Sachin Gupta <sgupta2m@in.ibm.com> | 2018-01-13 21:39:10 -0500 |
commit | 7d85e24ccf7d16ce4ee37d2e5092bb0fc51b60ed (patch) | |
tree | 1a8bb803720d685bea7cf24e3ba4d170cc56b2e3 /src/import/chips/centaur | |
parent | 73695142191524826400ec61d8853be6fa41029f (diff) | |
download | talos-sbe-7d85e24ccf7d16ce4ee37d2e5092bb0fc51b60ed.tar.gz talos-sbe-7d85e24ccf7d16ce4ee37d2e5092bb0fc51b60ed.zip |
apply rings from Centaur HW image
cen_ringId.CH
cen_ring_id.h
add entries to hold multiple PLL rings, 8 in total
cen_initf.C
cen_pll_initf.C
cen_pll_initf_errors.xml
replace invocation of generated initfile HWP with putRing API calls
(rings to be scanned gleamed from p8 cen assembly source)
select correct PLL ring image based on NEST,MEM frequency
cen_bucketX.txt
define frequency points for each PLL bucket
1 = 2000 MHz NEST, 1066 MHz MEM
2 = 2000 MHz NEST, 1333 MHz MEM
3 = 2000 MHz NEST, 1600 MHz MEM
4 = 2000 MHz NEST, 1866 MHz MEM
5 = 2400 MHz NEST, 1066 MHz MEM
6 = 2400 MHz NEST, 1333 MHz MEM
7 = 2400 MHz NEST, 1600 MHz MEM
8 = 2400 MHz NEST, 1866 MHz MEM
ipl_base.txt
ipl_risk.txt
remove frequency attributes from base attribute files
scan_procedures.mk
add rules to generate PLL buckets
Change-Id: I8aee5e82337800ea9afe9a9af12d8d34f6e1e01e
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/50475
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Tested-by: HWSV CI <hwsv-ci+hostboot@us.ibm.com>
Reviewed-by: Thi N. Tran <thi@us.ibm.com>
Reviewed-by: Richard J. Knight <rjknight@us.ibm.com>
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/50478
Reviewed-by: Sachin Gupta <sgupta2m@in.ibm.com>
Diffstat (limited to 'src/import/chips/centaur')
3 files changed, 141 insertions, 109 deletions
diff --git a/src/import/chips/centaur/utils/imageProcs/cen_ringId.C b/src/import/chips/centaur/utils/imageProcs/cen_ringId.C index ebd8e759..19163824 100644 --- a/src/import/chips/centaur/utils/imageProcs/cen_ringId.C +++ b/src/import/chips/centaur/utils/imageProcs/cen_ringId.C @@ -135,8 +135,14 @@ const GenRingIdList RING_ID_LIST_COMMON[] = {"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_pib_repr" , 0x63, 0x01, 0x01, CEN_RING, 0x00031006}, - {"tp_vitl" , 0x64, 0x01, 0x01, CEN_RING, 0x0003800c}, + {"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[] = { BASE, RL, NOT_VALID }; diff --git a/src/import/chips/centaur/utils/imageProcs/cen_ringId.H b/src/import/chips/centaur/utils/imageProcs/cen_ringId.H index f1672e40..a5f2d3ce 100644 --- a/src/import/chips/centaur/utils/imageProcs/cen_ringId.H +++ b/src/import/chips/centaur/utils/imageProcs/cen_ringId.H @@ -144,10 +144,16 @@ enum RingOffset tp_pib_fuse = 96, tp_pib_gptr = 97, tp_pll_bndy = 98, - tp_pib_repr = 99, - tp_vitl = 100, - // Instance rings - // ** none ** + tp_pll_bndy_bucket_1 = 99, + tp_pll_bndy_bucket_2 = 100, + tp_pll_bndy_bucket_3 = 101, + tp_pll_bndy_bucket_4 = 102, + tp_pll_bndy_bucket_5 = 103, + tp_pll_bndy_bucket_6 = 104, + tp_pll_bndy_bucket_7 = 105, + tp_pll_bndy_bucket_8 = 106 + // Instance rings + // ** none ** }; static const ChipletData_t g_chipletData = @@ -263,8 +269,14 @@ static const RingProperties_t RING_PROPERTIES[NUM_RING_IDS] = { 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 }, + { CEN::tp_pll_bndy_bucket_1, "tp_pll_bndy_bucket_1", CEN_TYPE }, + { CEN::tp_pll_bndy_bucket_2, "tp_pll_bndy_bucket_2", CEN_TYPE }, + { CEN::tp_pll_bndy_bucket_3, "tp_pll_bndy_bucket_3", CEN_TYPE }, + { CEN::tp_pll_bndy_bucket_4, "tp_pll_bndy_bucket_4", CEN_TYPE }, + { CEN::tp_pll_bndy_bucket_5, "tp_pll_bndy_bucket_5", CEN_TYPE }, + { CEN::tp_pll_bndy_bucket_6, "tp_pll_bndy_bucket_6", CEN_TYPE }, + { CEN::tp_pll_bndy_bucket_7, "tp_pll_bndy_bucket_7", CEN_TYPE }, + { CEN::tp_pll_bndy_bucket_8, "tp_pll_bndy_bucket_8", CEN_TYPE } }; #else @@ -372,6 +384,14 @@ static const RingProperties_t RING_PROPERTIES[NUM_RING_IDS] = { CEN::tp_pll_bndy , CEN_TYPE }, { CEN::tp_pib_repr , CEN_TYPE }, { CEN::tp_vitl , CEN_TYPE }, + { CEN::tp_pll_bndy_bucket_1, CEN_TYPE }, + { CEN::tp_pll_bndy_bucket_2, CEN_TYPE }, + { CEN::tp_pll_bndy_bucket_3, CEN_TYPE }, + { CEN::tp_pll_bndy_bucket_4, CEN_TYPE }, + { CEN::tp_pll_bndy_bucket_5, CEN_TYPE }, + { CEN::tp_pll_bndy_bucket_6, CEN_TYPE }, + { CEN::tp_pll_bndy_bucket_7, CEN_TYPE }, + { CEN::tp_pll_bndy_bucket_8, CEN_TYPE } }; #endif // __PPE__ diff --git a/src/import/chips/centaur/utils/imageProcs/cen_ring_id.h b/src/import/chips/centaur/utils/imageProcs/cen_ring_id.h index 680cd07b..342028d4 100644 --- a/src/import/chips/centaur/utils/imageProcs/cen_ring_id.h +++ b/src/import/chips/centaur/utils/imageProcs/cen_ring_id.h @@ -35,107 +35,113 @@ 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 + 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_pll_bndy_bucket_1 = 99, //0x63 + tp_pll_bndy_bucket_2 = 100,//0x64 + tp_pll_bndy_bucket_3 = 101,//0x65 + tp_pll_bndy_bucket_4 = 102,//0x66 + tp_pll_bndy_bucket_5 = 103,//0x67 + tp_pll_bndy_bucket_6 = 104,//0x68 + tp_pll_bndy_bucket_7 = 105,//0x69 + tp_pll_bndy_bucket_8 = 106,//0x6A NUM_RING_IDS }; // enum RingID |