Lines Matching refs:pdimm

86 					 dimm_params_t *pdimm,  in ddr_compute_dimm_parameters()  argument
100 memset(pdimm, 0, sizeof(dimm_params_t)); in ddr_compute_dimm_parameters()
115 memset(pdimm->mpart, 0, sizeof(pdimm->mpart)); in ddr_compute_dimm_parameters()
117 memcpy(pdimm->mpart, spd->mpart, sizeof(pdimm->mpart) - 1); in ddr_compute_dimm_parameters()
120 pdimm->n_ranks = ((spd->organization >> 3) & 0x7) + 1; in ddr_compute_dimm_parameters()
121 pdimm->rank_density = compute_ranksize(spd); in ddr_compute_dimm_parameters()
122 pdimm->capacity = pdimm->n_ranks * pdimm->rank_density; in ddr_compute_dimm_parameters()
123 pdimm->primary_sdram_width = 1 << (3 + (spd->bus_width & 0x7)); in ddr_compute_dimm_parameters()
125 pdimm->ec_sdram_width = 8; in ddr_compute_dimm_parameters()
127 pdimm->ec_sdram_width = 0; in ddr_compute_dimm_parameters()
128 pdimm->data_width = pdimm->primary_sdram_width in ddr_compute_dimm_parameters()
129 + pdimm->ec_sdram_width; in ddr_compute_dimm_parameters()
130 pdimm->device_width = 1 << ((spd->organization & 0x7) + 2); in ddr_compute_dimm_parameters()
133 pdimm->mirrored_dimm = 0; in ddr_compute_dimm_parameters()
134 pdimm->registered_dimm = 0; in ddr_compute_dimm_parameters()
140 pdimm->registered_dimm = 1; in ddr_compute_dimm_parameters()
143 pdimm->rcw[i] = (rcw >> 0) & 0x0F; in ddr_compute_dimm_parameters()
144 pdimm->rcw[i+1] = (rcw >> 4) & 0x0F; in ddr_compute_dimm_parameters()
160 pdimm->mirrored_dimm = 1; in ddr_compute_dimm_parameters()
169 pdimm->n_row_addr = ((spd->addressing >> 3) & 0x7) + 12; in ddr_compute_dimm_parameters()
170 pdimm->n_col_addr = (spd->addressing & 0x7) + 9; in ddr_compute_dimm_parameters()
171 pdimm->n_banks_per_sdram_device = 8 << ((spd->density_banks >> 4) & 0x7); in ddr_compute_dimm_parameters()
178 if (pdimm->ec_sdram_width) in ddr_compute_dimm_parameters()
179 pdimm->edc_config = 0x02; in ddr_compute_dimm_parameters()
181 pdimm->edc_config = 0x00; in ddr_compute_dimm_parameters()
188 pdimm->burst_lengths_bitmask = 0x0c; in ddr_compute_dimm_parameters()
189 pdimm->row_density = __ilog2(pdimm->rank_density); in ddr_compute_dimm_parameters()
197 pdimm->mtb_ps = mtb_ps; in ddr_compute_dimm_parameters()
206 pdimm->ftb_10th_ps = ftb_10th_ps; in ddr_compute_dimm_parameters()
215 pdimm->tckmin_x_ps = spd->tck_min * mtb_ps + in ddr_compute_dimm_parameters()
224 pdimm->caslat_x = ((spd->caslat_msb << 8) | spd->caslat_lsb) << 4; in ddr_compute_dimm_parameters()
234 pdimm->taa_ps = spd->taa_min * mtb_ps + in ddr_compute_dimm_parameters()
242 pdimm->twr_ps = spd->twr_min * mtb_ps; in ddr_compute_dimm_parameters()
252 pdimm->trcd_ps = spd->trcd_min * mtb_ps + in ddr_compute_dimm_parameters()
261 pdimm->trrd_ps = spd->trrd_min * mtb_ps; in ddr_compute_dimm_parameters()
271 pdimm->trp_ps = spd->trp_min * mtb_ps + in ddr_compute_dimm_parameters()
281 pdimm->tras_ps = (((spd->tras_trc_ext & 0xf) << 8) | spd->tras_min_lsb) in ddr_compute_dimm_parameters()
291 pdimm->trc_ps = (((spd->tras_trc_ext & 0xf0) << 4) | spd->trc_min_lsb) in ddr_compute_dimm_parameters()
300 pdimm->trfc_ps = ((spd->trfc_min_msb << 8) | spd->trfc_min_lsb) in ddr_compute_dimm_parameters()
307 pdimm->twtr_ps = spd->twtr_min * mtb_ps; in ddr_compute_dimm_parameters()
314 pdimm->trtp_ps = spd->trtp_min * mtb_ps; in ddr_compute_dimm_parameters()
321 pdimm->refresh_rate_ps = 7800000; in ddr_compute_dimm_parameters()
323 pdimm->refresh_rate_ps = 3900000; in ddr_compute_dimm_parameters()
324 pdimm->extended_op_srt = 1; in ddr_compute_dimm_parameters()
335 pdimm->tfaw_ps = (((spd->tfaw_msb & 0xf) << 8) | spd->tfaw_min) in ddr_compute_dimm_parameters()