[LinuxBIOS] Very confused about ram initialization

Segher Boessenkool segher at kernel.crashing.org
Thu Nov 30 02:25:41 CET 2006


> I am have serious issues getting my DDR SDRAM to initialize properly.
>
> Is there any documenation that outlines the basic steps required and
> what order to do it.

Sure there is -- see JESD-79, the DDR SDRAM spec.

Other than that, you'll have to use common sense, Intel's
memory controller docs don't go into details (and their
data sheets don't say _how_ to use the hardware ever, it
seems).

> The memory controller I am using is a intel 855gme. I noticed in other
> intel source files lots of comments curse about the lack of
> documentation, I have noticed this as well. Does this mean that I
> probably won't get this to work?

You'll need quite some time, and a good understanding of
how DDR SDRAM works.  Read the data sheets, and try to
put the puzzle together from every little scrap of information
you can find.  It can be done, DDR-I isn't *that* hard.

> I am really at a loss of what to do next. I am having a hard time
> debugging this, mostly because I don't exactly know what I need to do
> in the first place.
>
> Any tips for getting ram to work correctly?

Start with a single DIMM, one rank (i.e., a single-sided DIMM).
Decode the SPD on it and use the slowest valid setting first.
Hardcode all values until you have something working, only
then start doing generic memory initialisation.  It helps using
ECC memory (the ECC checker will tell you when your settings
are seriously wrong).  Make sure you program the MRS registers
properly.  Don't despair (although that would be a rational
plan sometimes, heh).  Use a good oscilloscope if you can.


Segher





More information about the coreboot mailing list