On Sun, 2005-07-24 at 23:52 +0900, Jun OKAJIMA wrote:
I think that one solution is hard coding the params of mem in a BIOS image. But, how?
The documentation from VIA is simply crap. Nobody actually really know the correct value to program to the memory controller.
Sorry, My explanation was wrong. I tested many combination of M/B and DIMMs. And found most of then dont work at all, but a little of them work rarelly. I mean, some combination work but VERY unstable. For example, work once in 100 times reset.
So, My idea is, for this kind of very unstable combination, do like this.
- add a func outputting params to console.
- try, try, try. push reset, push reset and hope to run.
- If it works as it happens, hard code this param to the src.
- hope runs stably.
How about this way?
You can try it but the current implementation in the SVN tree is probably the best thing we can get.
The chipset is really a headache, even adding some console output in the DRAM init phase will crash the system.
If you do have a lot of time and MB/DIMM, you can try to boot with factory BIOS and compare the northbridge register value to figure out any relation between these values and the DIMM configuration.
The third issue is, VGA. I read the FreeVGA paper. Yes, it seems great. But such complicated technology is really necessary?
I am afraid we have to do it this way. It is probably the only way we can get VGA working without any vendor support.
For example, this guy succeeded to use normal VGA bios, although I failed. http://www.carbotpc.com/linux/index.html
I think this one uses the old "switch back to 16-bit mode and back" technology. It is actually much more complicated than an emulator.
You can try to add VGA support by yourself. Please take a look at arima/hdama and tyan/*. There is one problem you have to solve, the VGA BIOS on EPIA makes some BIOS call back to the system BIOS, you have to emulate this in the emulator (see pcibios.c).
Umm.. Then, how about porting LX1 VGA code to LX2? In my EPIA M/B, LX1 VGA init seems to work.
I don't think we are going to do that. The reason we are using the emulator is to eliminate the mode switch inside LB.
--- Okajima, Jun. Tokyo, Japan.