From 60f0428ecc8e36dc6032550b48b66a7208568c5a Mon Sep 17 00:00:00 2001 From: Andre Marin Date: Sun, 17 Apr 2016 10:25:38 -0500 Subject: [PATCH] Add eff_config functionality needed for RIT, fix cas_latency bug & attr files Change-Id: I508ea4b156ff26ff7c652e28510a535b90030434 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/23796 Reviewed-by: STEPHEN GLANCY Tested-by: Jenkins Server Reviewed-by: Brian R. Silver Tested-by: Hostboot CI Reviewed-by: Jennifer A. Stofer Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/69766 Reviewed-by: Sachin Gupta Tested-by: Sachin Gupta --- .../attribute_info/memory_mcs_attributes.xml | 429 ++---------------- 1 file changed, 36 insertions(+), 393 deletions(-) diff --git a/src/import/chips/p9/procedures/xml/attribute_info/memory_mcs_attributes.xml b/src/import/chips/p9/procedures/xml/attribute_info/memory_mcs_attributes.xml index a76992bbc..b1bca442a 100644 --- a/src/import/chips/p9/procedures/xml/attribute_info/memory_mcs_attributes.xml +++ b/src/import/chips/p9/procedures/xml/attribute_info/memory_mcs_attributes.xml @@ -64,11 +64,9 @@ Consumed by mss_freq. The default of AUTO means mss_freq will find the best frequencies given the DIMMs plugged in and other rules. Otherwise, this is the system frequency. - firmware notes: Platforms should initialize this attribute to AUTO (0) uint64 AUTO = 0 - freq_override @@ -93,7 +91,6 @@ MT2666 = 2666 - MT/s freq @@ -112,7 +109,6 @@ uint32 - freq_bias_percentage @@ -140,7 +136,6 @@ uint8 2 2 - eff_num_ranks_per_dimm @@ -158,7 +153,6 @@ NO = 0, YES = 1 2 2 - eff_custom_dimm @@ -198,262 +192,6 @@ eff_dram_rank_mix - - ATTR_EFF_PRIMARY_RANK_GROUP0 - TARGET_TYPE_MCS - - RankGroup. Used in various locations and is computed in mss_eff_cnfg_rank_group. - creator: mss_eff_cnfg_rank_group - consumer: various - firmware notes: none - - uint8 - INVALID = 255 - - 2 - eff_primary_rank_group0 - - - - ATTR_EFF_PRIMARY_RANK_GROUP1 - TARGET_TYPE_MCS - - RankGroup. Used in various locations and is computed in mss_eff_cnfg_rank_group. - creator: mss_eff_cnfg_rank_group - consumer: various - firmware notes: none - - uint8 - INVALID = 255 - - 2 - eff_primary_rank_group1 - - - - ATTR_EFF_PRIMARY_RANK_GROUP2 - TARGET_TYPE_MCS - - RankGroup. Used in various locations and is computed in mss_eff_cnfg_rank_group. - creator: mss_eff_cnfg_rank_group - consumer: various - firmware notes: none - - uint8 - INVALID = 255 - - 2 - eff_primary_rank_group2 - - - - ATTR_EFF_PRIMARY_RANK_GROUP3 - TARGET_TYPE_MCS - - RankGroup. Used in various locations and is computed in mss_eff_cnfg_rank_group. - creator: mss_eff_cnfg_rank_group - consumer: various - firmware notes: none - - uint8 - INVALID = 255 - - 2 - eff_primary_rank_group3 - - - - ATTR_EFF_SECONDARY_RANK_GROUP0 - TARGET_TYPE_MCS - - RankGroup. Used in various locations and is computed in mss_eff_cnfg_rank_group. - creator: mss_eff_cnfg_rank_group - consumer: various - firmware notes: none - - uint8 - INVALID = 255 - - 2 - eff_secondary_rank_group0 - - - - ATTR_EFF_SECONDARY_RANK_GROUP1 - TARGET_TYPE_MCS - - RankGroup. Used in various locations and is computed in mss_eff_cnfg_rank_group. - creator: mss_eff_cnfg_rank_group - consumer: various - firmware notes: none - - uint8 - INVALID = 255 - - 2 - eff_secondary_rank_group1 - - - - ATTR_EFF_SECONDARY_RANK_GROUP2 - TARGET_TYPE_MCS - - RankGroup. Used in various locations and is computed in mss_eff_cnfg_rank_group. - creator: mss_eff_cnfg_rank_group - consumer: various - firmware notes: none - - uint8 - INVALID = 255 - - 2 - eff_secondary_rank_group2 - - - - ATTR_EFF_SECONDARY_RANK_GROUP3 - TARGET_TYPE_MCS - - RankGroup. Used in various locations and is computed in mss_eff_cnfg_rank_group. - creator: mss_eff_cnfg_rank_group - consumer: various - firmware notes: none - - uint8 - INVALID = 255 - - 2 - eff_secondary_rank_group3 - - - - ATTR_EFF_TERTIARY_RANK_GROUP0 - TARGET_TYPE_MCS - - RankGroup. Used in various locations and is computed in mss_eff_cnfg_rank_group. - creator: mss_eff_cnfg_rank_group - consumer: various - firmware notes: none - - uint8 - INVALID = 255 - - 2 - eff_tertiary_rank_group0 - - - - ATTR_EFF_TERTIARY_RANK_GROUP1 - TARGET_TYPE_MCS - - RankGroup. Used in various locations and is computed in mss_eff_cnfg_rank_group. - creator: mss_eff_cnfg_rank_group - consumer: various - firmware notes: none - - uint8 - INVALID = 255 - - 2 - eff_tertiary_rank_group1 - - - - ATTR_EFF_TERTIARY_RANK_GROUP2 - TARGET_TYPE_MCS - - RankGroup. Used in various locations and is computed in mss_eff_cnfg_rank_group. - creator: mss_eff_cnfg_rank_group - consumer: various - firmware notes: none - - uint8 - INVALID = 255 - - 2 - eff_tertiary_rank_group2 - - - - ATTR_EFF_TERTIARY_RANK_GROUP3 - TARGET_TYPE_MCS - - RankGroup. Used in various locations and is computed in mss_eff_cnfg_rank_group. - creator: mss_eff_cnfg_rank_group - consumer: various - firmware notes: none - - uint8 - INVALID = 255 - - 2 - eff_tertiary_rank_group3 - - - - ATTR_EFF_QUATERNARY_RANK_GROUP0 - TARGET_TYPE_MCS - - RankGroup. Used in various locations and is computed in mss_eff_cnfg_rank_group. - creator: mss_eff_cnfg_rank_group - consumer: various - firmware notes: none - - uint8 - INVALID = 255 - - 2 - eff_quaternary_rank_group0 - - - - ATTR_EFF_QUATERNARY_RANK_GROUP1 - TARGET_TYPE_MCS - - RankGroup. Used in various locations and is computed in mss_eff_cnfg_rank_group. - creator: mss_eff_cnfg_rank_group - consumer: various - firmware notes: none - - uint8 - INVALID = 255 - - 2 - eff_quaternary_rank_group1 - - - - ATTR_EFF_QUATERNARY_RANK_GROUP2 - TARGET_TYPE_MCS - - RankGroup. Used in various locations and is computed in mss_eff_cnfg_rank_group. - creator: mss_eff_cnfg_rank_group - consumer: various - firmware notes: none - - uint8 - INVALID = 255 - - 2 - eff_quaternary_rank_group2 - - - - ATTR_EFF_QUATERNARY_RANK_GROUP3 - TARGET_TYPE_MCS - - RankGroup. Used in various locations and is computed in mss_eff_cnfg_rank_group. - creator: mss_eff_cnfg_rank_group - consumer: various - firmware notes: none - - uint8 - INVALID = 255 - - 2 - eff_quaternary_rank_group3 - - ATTR_EFF_DIMM_SPARE TARGET_TYPE_MCS @@ -557,7 +295,6 @@ 2 2 GB - eff_dimm_size @@ -576,7 +313,7 @@ BL8 = 0, OTF = 1, BC4 = 2 2 - eff_dram_burst_length + eff_dram_bl @@ -592,7 +329,7 @@ uint8 2 - eff_dram_cas_latency + eff_dram_cl @@ -645,7 +382,7 @@ SEQUENTIAL = 0, INTERLEAVE = 1 2 2 - eff_dram_read_burst_type + eff_dram_rbt @@ -972,7 +709,7 @@ uint8 2 2 - eff_dimm_ddr4_rc67 + eff_dimm_ddr4_rc06_07 @@ -1095,7 +832,7 @@ uint8 2 2 - eff_dimm_ddr4_rc1x + eff_dimm_ddr4_rc_1x @@ -1108,7 +845,7 @@ uint8 2 2 - eff_dimm_ddr4_rc2x + eff_dimm_ddr4_rc_2x @@ -1121,7 +858,7 @@ uint8 2 2 - eff_dimm_ddr4_rc3x + eff_dimm_ddr4_rc_3x @@ -1134,7 +871,7 @@ uint8 2 2 - eff_dimm_ddr4_rc4x + eff_dimm_ddr4_rc_4x @@ -1147,7 +884,7 @@ uint8 2 2 - eff_dimm_ddr4_rc5x + eff_dimm_ddr4_rc_5x @@ -1160,7 +897,7 @@ uint8 2 2 - eff_dimm_ddr4_rc6x + eff_dimm_ddr4_rc_6x @@ -1173,7 +910,7 @@ uint8 2 2 - eff_dimm_ddr4_rc7x + eff_dimm_ddr4_rc_7x @@ -1186,7 +923,7 @@ uint8 2 2 - eff_dimm_ddr4_rc8x + eff_dimm_ddr4_rc_8x @@ -1199,7 +936,7 @@ uint8 2 2 - eff_dimm_ddr4_rc9x + eff_dimm_ddr4_rc_9x @@ -1216,7 +953,7 @@ uint8 2 2 - eff_dimm_ddr4_rcax + eff_dimm_ddr4_rc_ax @@ -1233,7 +970,7 @@ uint8 2 2 - eff_dimm_ddr4_rcbx + eff_dimm_ddr4_rc_bx @@ -1492,7 +1229,6 @@ uint32 2 - mem_throttled_n_commands_per_port @@ -1509,7 +1245,6 @@ uint32 2 - mem_m_dram_clocks @@ -1520,7 +1255,6 @@ uint32 2 - mem_throttled_n_commands_per_slot @@ -1537,7 +1271,6 @@ uint32 2 - mem_watt_target @@ -1549,7 +1282,6 @@ uint32 2 2 - master_pwr_slope @@ -1560,7 +1292,6 @@ uint32 2 2 - supplier_pwr_slope @@ -1571,7 +1302,6 @@ uint32 2 2 - master_pwr_intercept @@ -1582,7 +1312,6 @@ uint32 2 2 - supplier_pwr_intercept @@ -1593,7 +1322,6 @@ uint32 2 2 - dimm_maxbandwidth_gbs @@ -1604,7 +1332,6 @@ uint32 2 2 - dimm_maxbandwidth_mrs @@ -1615,7 +1342,6 @@ uint32 2 - channel_pair_maxbandwidth_gbs @@ -1626,7 +1352,6 @@ uint32 2 - channel_pair_maxbandwidth_mrs @@ -1637,7 +1362,6 @@ uint32 2 2 - dimm_maxpower @@ -1648,7 +1372,6 @@ uint32 2 - channel_pair_maxpower @@ -1662,7 +1385,6 @@ uint32 2 - runtime_mem_throttled_n_commands_per_port @@ -1673,7 +1395,6 @@ uint32 2 - runtime_mem_m_dram_clocks @@ -1684,34 +1405,9 @@ uint32 2 - runtime_mem_throttled_n_commands_per_slot - - ATTR_MSS_PREFETCH_ENABLE - TARGET_TYPE_SYSTEM - Value of on or off. Determines if prefetching enabled or not. See chapter 7 of the Centaur Workbook. - uint8 - OFF = 0, ON = 1 - - prefetch_enable - - - - ATTR_MSS_CLEANER_ENABLE - TARGET_TYPE_SYSTEM - - Value of on or off. - Determines if the cleaner of the L4 cache (write modified entries to memory on idle cycles) - enabled or not. See chapter 7 of the Centaur Workbook. - - uint8 - OFF = 0, ON = 1 - - cleaner_enable - - ATTR_MSS_EFF_DIMM_FUNCTIONAL_VECTOR TARGET_TYPE_MCS @@ -1728,7 +1424,6 @@ uint8 2 - eff_dimm_functional_vector @@ -1883,7 +1578,7 @@ - ATTR_EFF_TEMP_REF_MODE + ATTR_EFF_TEMP_REFRESH_MODE TARGET_TYPE_MCS Temp controlled ref mode. This is for DDR4 MRS4. @@ -1897,11 +1592,11 @@ DISABLE = 0, ENABLE = 1 2 - eff_temp_ref_mode + eff_temp_refresh_mode - ATTR_EFF_INT_VREF_MON + ATTR_EFF_INTERNAL_VREF_MONITOR TARGET_TYPE_MCS Internal Vref Monitor. @@ -1916,7 +1611,7 @@ DISABLE = 0, ENABLE = 1 2 - eff_int_vref_mon + eff_internal_vref_monitor @@ -2162,7 +1857,7 @@ - ATTR_VREF_DQ_TRAIN_VALUE + ATTR_EFF_VREF_DQ_TRAIN_VALUE TARGET_TYPE_MCS vrefdq_train value. This is for DDR4 MRS6. @@ -2174,11 +1869,11 @@ uint8 2 2 4 - vref_dq_train_value + eff_vref_dq_train_value - ATTR_VREF_DQ_TRAIN_RANGE + ATTR_EFF_VREF_DQ_TRAIN_RANGE TARGET_TYPE_MCS vrefdq_train range. This is for DDR4 MRS6. @@ -2191,11 +1886,11 @@ RANGE1 = 0, RANGE2 = 1 2 2 4 - vref_dq_train_range + eff_vref_dq_train_range - ATTR_VREF_DQ_TRAIN_ENABLE + ATTR_EFF_VREF_DQ_TRAIN_ENABLE TARGET_TYPE_MCS vrefdq_train enable. This is for DDR4 MRS6. @@ -2208,7 +1903,7 @@ DISABLE = 0, ENABLE = 1 2 2 4 - vref_dq_train_enable + eff_vref_dq_train_enable @@ -2250,21 +1945,9 @@ uint16 2 - cal_step_enable - - ATTR_MSS_DRAMINIT_RESET_DISABLE - TARGET_TYPE_SYSTEM - A disable switch for resetting the phy delay values at the beginning of calling mss_draminit_training. - uint8 - DISABLE = 1, ENABLE = 0 - - - draminit_reset_disable - - ATTR_MSS_SLEW_RATE_DATA TARGET_TYPE_MCS @@ -2297,35 +1980,6 @@ slew_rate_adr - - ATTR_MSS_ALLOW_SINGLE_PORT - TARGET_TYPE_MCS - - When this value is true, then mss_eff config will allow a single port to have one dimm and will allow ports to have different sizes. - Used in eff_config - - uint8 - FALSE = 0, TRUE = 1 - - 2 - allow_single_port - - - - ATTR_MSS_DQS_SWIZZLE_TYPE - TARGET_TYPE_MCS - - DQS Swizzle type is set by the platform to describe what kind of DQS connection is being used for register acceses. - Type 0 is normal, type 1 is for systems with wiring like glacier 1, type 2 is for Pallmeto. - Additional types maybe defined if new boards have even different DQS swizzle features - - uint8 - NORMAL_TYPE_0 = 0, GLACIER_TYPE_1 = 1, ISDIMM_TYPE2 = 2 - - 2 - dqs_swizzle_type - - ATTR_SCHMOO_MULTIPLE_SETUP_CALL TARGET_TYPE_MCS @@ -2453,36 +2107,23 @@ ATTR_MSS_VOLT_OVERRIDE TARGET_TYPE_MCBIST - Possible DRAM voltage override. - Firmware notes: Default should be NONE (0x00). - + Possible DRAM voltage override. + Firmware notes: Default should be NONE (0x00). + uint8 NONE = 0x00, VOLT_120 = 0x02 - + volt_override - + ATTR_MSS_VDDR_OVERIDE_SPD TARGET_TYPE_SYSTEM Possible VDDR voltage override. uint8 NONE = 0x00, VOLT_1350 = 0x01, VOLT_1200 = 0x02 - - vddr_overide_spd - - - - ATTR_ISDIMM_POWER_CURVE_ALGORITHM_VERSION - TARGET_TYPE_SYSTEM - - Version of algorithm and dependent attributes used - to calculate ISDIMM power curve attributes - - uint32 - - isdimm_power_curve_algorithm_version + vddr_overide_spd @@ -2505,7 +2146,6 @@ uint8 2 2 - databus_util @@ -2522,7 +2162,6 @@ uint32 2 2 - throttled_n_commands @@ -3214,6 +2853,7 @@ firmware notes: none uint8 2 2 4 + eff_odt_rd @@ -3228,6 +2868,7 @@ firmware notes: none uint8 2 2 4 + eff_odt_wr @@ -3242,6 +2883,7 @@ uint8 INVALID = 0, OHM34 = 34, OHM40 = 40, OHM48 = 48 2 2 + eff_dram_ron @@ -3266,6 +2908,7 @@ OHM240 = 240 2 2 4 + eff_dram_rtt_nom @@ -3324,7 +2967,7 @@ consumer: various firmware notes: none - uint8 + uint16 2 nck