[LinuxBIOS] RAM detection for Intel 430FX

popkonserve popkonserve at gmx.de
Fri Aug 10 00:09:36 CEST 2007


hi,

as promised the ram init routine for the intel 430fx chipset. completely 
untested yet, but seems to compile without errors (at least those i 
could have typed in ;))

the datasheet for the chipset is here:
http://download.intel.com/design/chipsets/datashts/29051801.pdf

the routine does the following:
1. disable all caches
2. set ram size to 0
3. take one row and set its ram size to the maximum value and its type 
to edo
4. write some data in the row
5. enable edo detection
6. read the data back
7. if the data read is the data written it is edo
8. if the data read is NOT the data written, write some more data
9. read the data back (without edo detection)
10. if the data read is the data written it is fpm
11. if the data read is NOT the data written, the row is empty
12. detect the real size of the row and the dram technology (i'll write 
some more about that tomorrow, sorry, it's late already :))
13. clear all settings for the current row
14. restart at 3. as long as not all rows have been processed
15. write the size and type (edo/fpm) of all rows
16. turn the caches back on ;)

the routine isn't doing any tests on dram timings yet. this COULD be 
implemented or we should ask the user to enter something useful. upto 
now the slowest dram timings are used which is not that nice but still 
it should work.
anyway, i could implement some more chipset settings regarding pci 
performance and behaviour but i guess it doesn't belong in the 
raminit.c, does it?
now have a look at the code and try to understand it ;)
Holger
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: raminit.c
URL: <http://www.coreboot.org/pipermail/coreboot/attachments/20070810/1e761e5b/attachment.c>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: raminit.h
URL: <http://www.coreboot.org/pipermail/coreboot/attachments/20070810/1e761e5b/attachment.h>


More information about the coreboot mailing list