[coreboot] More details about ram issues

Charlotte Plusplus pluspluscharlotte at gmail.com
Fri Nov 11 08:14:32 CET 2016


So I did many more tests today (more than 6h, and flashing around 30
times), with SPD settings hardcoded into raminit, and without the mrc cache
interfering.

TLDR: coreboot tries to increase the frequency without increasing the
voltage, and that doesn't work for all memory.

Basically, with the problematic ram sticks, I can boot perfectly fine at
DDR3-1866 speed, but even the slower setting 11-11-11-31 gives errors on
the memtest. This is inconsistent with information I found about my memory
from its SPD information, and from other people who overclock this exact
same memory.

Even at 10-10-10-27, I still get errors at DDR3-1600 speeds. Far fewer than
before, but some errors sill.

After reading more about XMP and SPD, it is my understanding that :
 - JEDEC specs stop at 1600, and after that XMP is required
 - even before 1600, XMP also offers profiles, and they are not optional:
some memory is otherwise unable to work at its advertised speed
 - XMP profiles are some kind of overclocking: they usually require
adjusting the voltage, to deal with this increased speed
 - in XMP profile bytes, voltage increase information is given precisely
 - nowhere in the code I saw anything increasing the voltage, while XMP
requires that

I conclude that while there may be errors in selecting the SPD settings,
even if the SPD is manually corrected with known-good settings, or if
overshooting with very generous latencies, some errors do remain as the ram
is being asked to operate outside its voltage specifications (given the
frequency)

1.5V is a JEDEC spec, but RAM is advertised based on the information
contained in the XMP profiles, which at the moment do not seem fully
supported.

I do not know how to adjust the voltage (it should require talking to the
IMC of the CPU)  but I think that as soon as this is done, stability should
improve.

If someone can propose a patch doing that (either using the voltage read
from SPD, or by manually entering voltage information), I will be happy to
test it.

For now, I urge caution when operating even at DDR-1866 frequencies. Most
boards do set up 933 as their max_mem_clock_mhz. It is not very prudent to
do that until the voltage situation can be solved.

Charlote
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.coreboot.org/pipermail/coreboot/attachments/20161111/d55da438/attachment.html>


More information about the coreboot mailing list