[U-Boot-Users] ECC DIMM's with walnut board

Hi all,
I tried to boot a walnut board with a 256 ECC DIMM using u-boot 0.3.0, but didn't succeed. When examining the code in the function spd_sdram in cpu/ppc4xx/spd_sdram, I found that the ECC configuration code is probably wrong. I suppose, that the following lines
/* now check for ECC ability of module. We only support ECC * on 32 bit wide devices with 8 bit ECC. */ if ( (read_spd(11)==2) && ((read_spd(6)==40) || (read_spd(14)==8)) ){ sdram0_ecccfg=0xf<<SDRAM0_ECCCFG_SHIFT; ecc_on = 1;
should be replaced with
/* now check for ECC ability of module. We only support ECC * on 32 bit wide devices with 8 bit ECC. */ ==> if ( (read_spd(11)==2) && ((read_spd(6)==40) && read_spd(14)==8)) ){ <== sdram0_ecccfg=0xf<<SDRAM0_ECCCFG_SHIFT; ecc_on = 1;
The reason is, that the if statement in the first code is also true for 72 bit ECC devices. So ECC is enabled for such a device which fails in the following. The changed code works for me with several DIMM types (32MB without ECC, 256 MB with ECC and without ECC), but I'm not an expert with all types of SDRAM and so I'm not sure if I fully understood the code in that place. Any ideas, comments?
Best regards
Thomas Schäfer
____________________________________
GIGA STREAM - UMTS Technologies GmbH
Konrad-Zuse-Str. 7 66115 Saarbrücken
Tel.: + 49 (0)681 / 95916 - 203 Fax: + 49 (0)681 / 95916 - 100 E-mail: tschaefer@giga-stream.de

On Mon, 2003-04-28 at 16:07, Thomas Schäfer wrote:
Hi all,
following. The changed code works for me with several DIMM types (32MB without ECC, 256 MB with ECC and without ECC), but I'm not an expert with all types of SDRAM and so I'm not sure if I fully understood the code in that place. Any ideas, comments?
Best regards
Thomas Schäfer
This clearly changes nothing for non ECC dimms and you are the first I heard of using ecc so you are probably right :)
Do a proper patch and send it over to Wolfgang. You could take out a few more parentheses

Dear Thomas,
in message FIEJJAKAABLMHFKFECNJGEAMGPAA.tschaefer@giga-stream.de you wrote:
I tried to boot a walnut board with a 256 ECC DIMM using u-boot 0.3.0, bu= t didn't succeed. When examining the code in the function spd_sdram in cpu/ppc4xx/spd_sdram, I found that the ECC configuration code is probably wrong. I suppose, that the following lines
I was waiting for a regular patch, but obviously you won't send one.
So I added this now manually.
Best regards,
Wolfgang Denk
participants (3)
-
Kenneth Johansson
-
Thomas Schäfer
-
Wolfgang Denk