diff options
Diffstat (limited to 'arch/powerpc/cpu/mpc8xxx/ddr/ddr3_dimm_params.c')
| -rw-r--r-- | arch/powerpc/cpu/mpc8xxx/ddr/ddr3_dimm_params.c | 6 | 
1 files changed, 5 insertions, 1 deletions
diff --git a/arch/powerpc/cpu/mpc8xxx/ddr/ddr3_dimm_params.c b/arch/powerpc/cpu/mpc8xxx/ddr/ddr3_dimm_params.c index d4199baa8..29cea5326 100644 --- a/arch/powerpc/cpu/mpc8xxx/ddr/ddr3_dimm_params.c +++ b/arch/powerpc/cpu/mpc8xxx/ddr/ddr3_dimm_params.c @@ -90,6 +90,7 @@ ddr_compute_dimm_parameters(const ddr3_spd_eeprom_t *spd,  {  	unsigned int retval;  	unsigned int mtb_ps; +	int i;  	if (spd->mem_type) {  		if (spd->mem_type != SPD_MEMTYPE_DDR3) { @@ -131,8 +132,11 @@ ddr_compute_dimm_parameters(const ddr3_spd_eeprom_t *spd,  	case 0x01:	/* RDIMM */  	case 0x05:	/* Mini-RDIMM */  		pdimm->registered_dimm = 1; /* register buffered */ +		for (i = 0; i < 16; i += 2) { +			pdimm->rcw[i] = spd->mod_section.registered.rcw[i/2] & 0x0F; +			pdimm->rcw[i+1] = (spd->mod_section.registered.rcw[i/2] >> 4) & 0x0F; +		}  		break; -  	case 0x02:	/* UDIMM */  	case 0x03:	/* SO-DIMM */  	case 0x04:	/* Micro-DIMM */  |