In it's current state LinuxBIOS does not handle > 2GB of ram very well at all. The mttr codes fails, the pci code fails, and we don't have support adding a memory hole.
I have my linuxbios tree I have hard coded some short term fixes, and it works. The next step is to do rewok on the significant pieces of the infrastructure so that we are in better shape. The big change is to change sizeram for returning a single number, to filling out an array of memory segments, and having everything else use that array instead of the totalram variable. Currently my configuration is: 0-640K RAM 1M-3G RAM 4G-5G RAM. I should be able to remove a lot of the special cases in setting up the mtrrs and in reporting valid memory ranges with this change. I will have the array as of memory segments a fixed size per motherboard. The other big change is that in the pci resource allocator we currently start assigning memory resources at 2G and work our way up. The only sane way to do this is to start just below 4G and assign the memory resources. To get efficient packing of resources I may need to dig into the code a little deeper. I will be working on this in the next couple of days, and these changes will be in my next commit. I should be able to make it work without breaking anyones code. But mistakes happen. Eric
