Hi,
My board Kontron 986lcd-m (i945) sometimes fails in quick_ram_check_or_die() with
RAM INIT FAILURE!
The failure occurs in about 33% of reboots. RAM modules are fine (multiple memtest checks over the years), used RAM modules are rated with a reserve (DDR2-800 compatible modules and i945 supports up to DDR2-667). If the check will not fail the system will be long term stable. The checked memory is in the valid RAM (below top of the ram, below stolen IGD memory, below SMM region). If I force the checked word to not be the last 32b word (ex. 0x7fbffffc) but to be aligned to 256 bytes (ex. 0x7fbfff00) the test didn't fail even during multiple reset spamming.
During the failed test the tested word looks like this (modification for printing the tested 32bit word):
[DEBUG] ===FAIL1 5555b2ef //test for 0x5555555 [DEBUG] ===FAIL2 aaaab2aa //test for 0xaaaaaaa [DEBUG] ===FAIL3 0000b2ef //test for 0x0000000 [DEBUG] ===FAIL4 ffffb2ef //test for 0xfffffff
At least the top half of the read_phys() value seems to be valid over subsequent reads (for loop).
RFC: Could this be some problem with cache initialization, DDR2 controller impedance settings, or something else? Does anybody with i945 board or directly with 986lcd-m have the same problem?
Regards, Petr