Explorar o código

powerpc/mpc8xxx: check SPD length before using part number

Only use DDR DIMM part number if SPD has valid length, to prevent from
display garbage in case SPD doesn't cover these fields.

Signed-off-by: York Sun <yorksun@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
York Sun %!s(int64=14) %!d(string=hai) anos
pai
achega
d2246549c7
Modificáronse 1 ficheiros con 2 adicións e 1 borrados
  1. 2 1
      arch/powerpc/cpu/mpc8xxx/ddr/ddr3_dimm_params.c

+ 2 - 1
arch/powerpc/cpu/mpc8xxx/ddr/ddr3_dimm_params.c

@@ -114,7 +114,8 @@ ddr_compute_dimm_parameters(const ddr3_spd_eeprom_t *spd,
 	 * and copying the part name in ASCII from the SPD onto it
 	 */
 	memset(pdimm->mpart, 0, sizeof(pdimm->mpart));
-	memcpy(pdimm->mpart, spd->mpart, sizeof(pdimm->mpart) - 1);
+	if ((spd->info_size_crc & 0xF) > 1)
+		memcpy(pdimm->mpart, spd->mpart, sizeof(pdimm->mpart) - 1);
 
 	/* DIMM organization parameters */
 	pdimm->n_ranks = ((spd->organization >> 3) & 0x7) + 1;