[LinuxBIOS] BIOS-provided physical RAM map
joe at smittys.pointclark.net
joe at smittys.pointclark.net
Sun Oct 14 01:12:20 CEST 2007
Quoting ron minnich <rminnich at gmail.com>:
> On 10/13/07, joe at smittys.pointclark.net <joe at smittys.pointclark.net> wrote:
>> How can I adjust the "BIOS-provided physical RAM map" that the linux
>> kernel uses? Is this done in northbridge.c with ram_resource()???
>> Because mine does not look the same.
>>
>> ram_resource(dev, idx++, 0, 640);
>> ram_resource(dev, idx++, 1024, tolmk - 1024);
>>
>> BIOS-provided physical RAM map:
>>
>> BIOS-e820: 0000000000001000 - 00000000000a0000 (usable)
>>
>> BIOS-e820: 0000000000100000 - 0000000008000000 (usable)
>>
>> 128MB LOWMEM available.
>
> hi joe, I am not sure I understand your question? what is the value of
> tolmk in this case?
>
> When booting the kernel, there are a few cmdline parameters you can
> use and, if you do, it will IIRC ignore the e820 map. It's been a
> while since I looked at that code, though ...
>
> ron
Well the problem is I don't think the memory regions are allocating
memory properly still. For example here is the "BIOS-provided physical
RAM map" from the original bios:
BIOS-provided physical RAM map:
BIOS-e801: 0000000000000000 - 000000000009f000 (usable)
BIOS-e801: 0000000000100000 - 0000000007f00000 (usable)
127MB LOWMEM available.
See how the map ends at 127MB. The last 1MB of memory is pre-allocated
for the VGA frame buffer (IGD). The original bios excludes this from
the ram map while LinuxBIOS does not. Linux will think this area is
useable for system memory and the graphics will think it is useable
for graphics causing them to write over each other and not good stuff
will start to happen:-(
Anyways, I am tring to figure out in what code LinuxBIOS configures
this map so I can make adjustments. Basicly I need to tell LinuxBIOS to:
Total LOWMEM - IGD pre-allocated memory = New LOWMEM
I should be able to do this in northbridge.c right?? But would I
subtract it from tomk or tolmk??
Thanks - Joe
More information about the coreboot
mailing list