[U-Boot] PPC440GX: DDR ECC init time.

Grant Erickson gerickson at nuovations.com
Tue Sep 8 17:19:36 CEST 2009


On 9/8/09 2:49 AM, Stefan Roese wrote:
> On Tuesday 08 September 2009 11:19:41 Felix Radensky wrote:
>> Not exactly related to the subject under discussion, but I thought I'd
>> mention it.
>> 
>> I had problems with ecc_init() on a custom 460EX board with soldered DDR2.
>> Right after ecc_init() u-boot was crashing on PLB access. I've modified
>> the code
>> to use program_ecc_addr() instead of ecc_init(), and problem was solved.
>> I was
>> wandering why use two different ECC initialization routines for SPD and
>> soldered
>> cases, when program_ecc_addr() can do the job in both cases, while
>> ecc_init()
>> apparently has issues ?
> 
> Most likely historic reasons. I added Grant Erickson to Cc, IIRC he
> added/tested this ecc_init() code. Maybe he can shed some more light into
> this.
> 
> But from looking at it, it seems to me that we should get rid of one of those
> routines. program_ecc_addr() seems more generic to me. Patches welcome. ;)
> 
> Thanks.
> 
> Cheers,
> Stefan

Felix:

Stefan is correct. IIRC, bits of the various 4xx/44x RAM initialization
functions were evolving in parallel at that time. I believe I used ecc_init
at the time because it was more fitting to the soldered DDR2 405EXr board I
was using vs. program_ecc_addr which was more tuned to 440, SPD socketed
RAM.

Looking at the code today, that no longer appears to be the case. So, I
agree with Stefan. For the present, these implementations should be merged
and unified and any duplicate code eliminated.

Regards,

Grant




More information about the U-Boot mailing list