Lines Matching refs:spd_data
16 int mv_ddr_spd_supported_cls_calc(union mv_ddr_spd_data *spd_data) in mv_ddr_spd_supported_cls_calc() argument
20 start_cl = (spd_data->all_bytes[23] & 0x8) ? 23 : 7; in mv_ddr_spd_supported_cls_calc()
24 if (spd_data->all_bytes[byte] & (1 << bit)) in mv_ddr_spd_supported_cls_calc()
32 if (spd_data->all_bytes[byte] & (1 << bit)) in mv_ddr_spd_supported_cls_calc()
58 int mv_ddr_spd_timing_calc(union mv_ddr_spd_data *spd_data, unsigned int timing_data[]) in mv_ddr_spd_timing_calc() argument
63 calc_val = spd_data->byte_fields.byte_18 * MV_DDR_SPD_DATA_MTB + in mv_ddr_spd_timing_calc()
64 (signed char)spd_data->byte_fields.byte_125 * MV_DDR_SPD_DATA_FTB; in mv_ddr_spd_timing_calc()
70 calc_val = spd_data->byte_fields.byte_24 * MV_DDR_SPD_DATA_MTB + in mv_ddr_spd_timing_calc()
71 (signed char)spd_data->byte_fields.byte_123 * MV_DDR_SPD_DATA_FTB; in mv_ddr_spd_timing_calc()
77 timing_data[MV_DDR_TRFC1_MIN] = (spd_data->byte_fields.byte_30 + in mv_ddr_spd_timing_calc()
78 (spd_data->byte_fields.byte_31 << MV_DDR_SPD_MSB_OFFS)) * MV_DDR_SPD_DATA_MTB; in mv_ddr_spd_timing_calc()
81 timing_data[MV_DDR_TWR_MIN] = (spd_data->byte_fields.byte_42 + in mv_ddr_spd_timing_calc()
82 (spd_data->byte_fields.byte_41.bit_fields.t_wr_min_msn << MV_DDR_SPD_MSB_OFFS)) * in mv_ddr_spd_timing_calc()
86 calc_val = spd_data->byte_fields.byte_25 * MV_DDR_SPD_DATA_MTB + in mv_ddr_spd_timing_calc()
87 (signed char)spd_data->byte_fields.byte_122 * MV_DDR_SPD_DATA_FTB; in mv_ddr_spd_timing_calc()
93 calc_val = spd_data->byte_fields.byte_26 * MV_DDR_SPD_DATA_MTB + in mv_ddr_spd_timing_calc()
94 (signed char)spd_data->byte_fields.byte_121 * MV_DDR_SPD_DATA_FTB; in mv_ddr_spd_timing_calc()
100 calc_val = (spd_data->byte_fields.byte_29 + in mv_ddr_spd_timing_calc()
101 (spd_data->byte_fields.byte_27.bit_fields.t_rc_min_msn << MV_DDR_SPD_MSB_OFFS)) * in mv_ddr_spd_timing_calc()
103 (signed char)spd_data->byte_fields.byte_120 * MV_DDR_SPD_DATA_FTB; in mv_ddr_spd_timing_calc()
109 timing_data[MV_DDR_TRAS_MIN] = (spd_data->byte_fields.byte_28 + in mv_ddr_spd_timing_calc()
110 (spd_data->byte_fields.byte_27.bit_fields.t_ras_min_msn << MV_DDR_SPD_MSB_OFFS)) * in mv_ddr_spd_timing_calc()
114 calc_val = spd_data->byte_fields.byte_38 * MV_DDR_SPD_DATA_MTB + in mv_ddr_spd_timing_calc()
115 (signed char)spd_data->byte_fields.byte_119 * MV_DDR_SPD_DATA_FTB; in mv_ddr_spd_timing_calc()
121 calc_val = spd_data->byte_fields.byte_39 * MV_DDR_SPD_DATA_MTB + in mv_ddr_spd_timing_calc()
122 (signed char)spd_data->byte_fields.byte_118 * MV_DDR_SPD_DATA_FTB; in mv_ddr_spd_timing_calc()
128 calc_val = spd_data->byte_fields.byte_40 * MV_DDR_SPD_DATA_MTB + in mv_ddr_spd_timing_calc()
129 (signed char)spd_data->byte_fields.byte_117 * MV_DDR_SPD_DATA_FTB; in mv_ddr_spd_timing_calc()
135 timing_data[MV_DDR_TFAW_MIN] = (spd_data->byte_fields.byte_37 + in mv_ddr_spd_timing_calc()
136 (spd_data->byte_fields.byte_36.bit_fields.t_faw_min_msn << MV_DDR_SPD_MSB_OFFS)) * in mv_ddr_spd_timing_calc()
140 timing_data[MV_DDR_TWTR_S_MIN] = (spd_data->byte_fields.byte_44 + in mv_ddr_spd_timing_calc()
141 (spd_data->byte_fields.byte_43.bit_fields.t_wtr_s_min_msn << MV_DDR_SPD_MSB_OFFS)) * in mv_ddr_spd_timing_calc()
145 timing_data[MV_DDR_TWTR_L_MIN] = (spd_data->byte_fields.byte_45 + in mv_ddr_spd_timing_calc()
146 (spd_data->byte_fields.byte_43.bit_fields.t_wtr_l_min_msn << MV_DDR_SPD_MSB_OFFS)) * in mv_ddr_spd_timing_calc()
152 enum mv_ddr_dev_width mv_ddr_spd_dev_width_get(union mv_ddr_spd_data *spd_data) in mv_ddr_spd_dev_width_get() argument
154 unsigned char dev_width = spd_data->byte_fields.byte_12.bit_fields.device_width; in mv_ddr_spd_dev_width_get()
177 enum mv_ddr_die_capacity mv_ddr_spd_die_capacity_get(union mv_ddr_spd_data *spd_data) in mv_ddr_spd_die_capacity_get() argument
179 unsigned char die_cap = spd_data->byte_fields.byte_4.bit_fields.die_capacity; in mv_ddr_spd_die_capacity_get()
220 unsigned char mv_ddr_spd_mem_mirror_get(union mv_ddr_spd_data *spd_data) in mv_ddr_spd_mem_mirror_get() argument
222 unsigned char mem_mirror = spd_data->byte_fields.byte_131.bit_fields.rank_1_mapping; in mv_ddr_spd_mem_mirror_get()
227 enum mv_ddr_pkg_rank mv_ddr_spd_pri_bus_width_get(union mv_ddr_spd_data *spd_data) in mv_ddr_spd_pri_bus_width_get() argument
229 unsigned char pri_bus_width = spd_data->byte_fields.byte_13.bit_fields.primary_bus_width; in mv_ddr_spd_pri_bus_width_get()
252 enum mv_ddr_pkg_rank mv_ddr_spd_bus_width_ext_get(union mv_ddr_spd_data *spd_data) in mv_ddr_spd_bus_width_ext_get() argument
254 unsigned char bus_width_ext = spd_data->byte_fields.byte_13.bit_fields.bus_width_ext; in mv_ddr_spd_bus_width_ext_get()
271 static enum mv_ddr_pkg_rank mv_ddr_spd_pkg_rank_get(union mv_ddr_spd_data *spd_data) in mv_ddr_spd_pkg_rank_get() argument
273 unsigned char pkg_rank = spd_data->byte_fields.byte_12.bit_fields.dimm_pkg_ranks_num; in mv_ddr_spd_pkg_rank_get()
308 static enum mv_ddr_die_count mv_ddr_spd_die_count_get(union mv_ddr_spd_data *spd_data) in mv_ddr_spd_die_count_get() argument
310 unsigned char die_count = spd_data->byte_fields.byte_6.bit_fields.die_count; in mv_ddr_spd_die_count_get()
345 unsigned char mv_ddr_spd_cs_bit_mask_get(union mv_ddr_spd_data *spd_data) in mv_ddr_spd_cs_bit_mask_get() argument
348 enum mv_ddr_pkg_rank pkg_rank = mv_ddr_spd_pkg_rank_get(spd_data); in mv_ddr_spd_cs_bit_mask_get()
349 enum mv_ddr_die_count die_cnt = mv_ddr_spd_die_count_get(spd_data); in mv_ddr_spd_cs_bit_mask_get()
363 unsigned char mv_ddr_spd_dev_type_get(union mv_ddr_spd_data *spd_data) in mv_ddr_spd_dev_type_get() argument
365 unsigned char dev_type = spd_data->byte_fields.byte_2; in mv_ddr_spd_dev_type_get()
370 unsigned char mv_ddr_spd_module_type_get(union mv_ddr_spd_data *spd_data) in mv_ddr_spd_module_type_get() argument
372 unsigned char module_type = spd_data->byte_fields.byte_3.bit_fields.module_type; in mv_ddr_spd_module_type_get()