[LinuxBIOS] E7501 Raminit rewrite

Lu, Yinghai yinghai.lu at amd.com
Wed Sep 14 20:10:42 CEST 2005


Every define have SPD_DDR_ prefix,
or with ddr_spd.h and SPD_ prefix....

YH

-----Original Message-----
From: Steven J. Magnani [mailto:steve at digidescorp.com] 
Sent: Wednesday, September 14, 2005 11:06 AM
To: Lu, Yinghai; linuxbios at openbios.org
Subject: RE: [LinuxBIOS] E7501 Raminit rewrite

Can you be more specific about the changes you'd like to see?

Steve

-----Original Message-----
From: Lu, Yinghai [mailto:yinghai.lu at amd.com] 
Sent: Tuesday, September 13, 2005 10:27 AM
To: Steven J. Magnani; linuxbios at openbios.org
Subject: RE: [LinuxBIOS] E7501 Raminit rewrite


It's good to have spd.h there.

But the name should be changed for support DDR2...etc.

YH

-----Original Message-----
From: linuxbios-bounces at openbios.org
[mailto:linuxbios-bounces at openbios.org] On Behalf Of Steven J. Magnani
Sent: Tuesday, September 13, 2005 8:08 AM
To: linuxbios at openbios.org
Subject: [LinuxBIOS] E7501 Raminit rewrite

This one ends up being a little more than a "patch".
I ended up reorganizing the E7501 raminit code so I could follow it, and
fixed some bugs along the way.

Significant logical changes:

* Added support for "fast" (64-clock) refresh
* Added code to support remap window for 3 - 4 GB systems
* Fixed premature configuration of true row boundaries that resulted in
some sections of DRAM not receiving JEDEC commands (see
http://openbios.org/pipermail/linuxbios/2005-June/011752.html).
* Redefined RCOMP_MMIO so that RCOMP registers can be configured on
systems where A20M# is asserted.
* Disabled subsystem (vendor) ID configuration
* #ifdef'd out suspicious looking code (see
http://openbios.org/pipermail/linuxbios/2005-June/011759.html)
* Added optional run-time checking of dual-channel compatibility of
installed DIMMs 
* Move JEDEC SPD and SDRAM definitions into reusable #include files

Probably, the rewritten code should be reviewed as if it were new. My
hope is that it is now easy enough to follow that this shouldn't be too
bad.

The original code is, of course, in Subversion. Since I reordered the
functions as part of the rewrite, a 'diff' of of the new code against
the original won't tell you much. I've attached a reordered copy of the
Subversion code that won't compile, but should be a little easier to
diff against the new code so you can see what's changed.

I will hold off on committing this for awhile to give people time to
look at it. I know that radical changes are a pain to review, but IMHO
the improvement in maintainability is significant.

New files that are part of this 'patch', but not included here (I
committed these to Subversion): src/include/spd.h
src/include/sdram_mode.h src/include/northbridge/intel/e7501/e7501.h

Thanks,
Steve

------------------------------------------------------------------------
 Steven J. Magnani               "I claim this network for MARS!
 www.digidescorp.com              Earthling, return my space modulator!"
 
 #include <standard.disclaimer>










More information about the coreboot mailing list