The diff to that in the K8 version is this (in tolm_test()):
- if (!best || (best->base > new->base))
- /* Skip VGA. */
- if (!best || (best->base > new->base && new->base > 0xa0000)) {
Small fix which could also be moved into the global tolm_test(). Depending on whether or not we want _all_ northbridges to skip that VGA range, we could add a parameter to the funtion, or just always skip it.
Any comments on this? Why does K8 have an exception for 0xa0000, but the other implementations don't? This doesn't sound like it's K8 specific to me. Should all northbridges do this?
My guess is that most northbridges don't need to specify the "VGA compatibility" range. K8 requires that range to be set up explicitly, so we've got a resource for it. If you just look for the "lowest" resource to find the top of RAM, it won't allow you to have any RAM above 0xa0000. I don't think it would hurt any other northbridges to add this, but it will break K8 if you remove it.
Thanks, Myles