Presently at least for amd64 (the early init stuff is copied from i386 so it's probably the same), Linux kernel hard codes the below 1M bios area. I'm looking for a way to pass that info to the kernel (from linuxbios table?) similar to e820, so that can be used as RAM. (keyword: legacy removal)
I'm curious to know what depends on the below 1MB alias, and could they be adjusted to use the high BIOS area. Is the low 1MB alias where the standards put $PIR and other tables read from the BIOS by the OS?
Jeremy
It should also update the below 1MB (and maybe below 16MB) aliases in /proc/iomem, according to their actual status in the hardware. For example, the K8 northbridge fixed MTRRs could be disabled, rendering any aliasing of the southbridge or LPC/FWH parts moot (from the processor's perspective at least)
How is this thing done today? Is it part of the e820 table? Or does Linux hardcode that area?
Stefan