Hello David,Keir,
I am trying to increase the PCI aperture in my vista guest using the direct approach outlined by David above, i.e. modifying dsdt.asl and recompiling.
This does not work, and I am wondering about the statement made above by Keir,
" Actually that's a bad way to do it. I've just checked in a patch which modifies the DSDT to fetch the PCI hole parameters from a memory location which is initialised by hvmloader. "
Is this update the code in hvmloader.c:pci_setup.c
struct resource mem_resource = { 0xf0000000, 0xfc000000 }; ...
By modifying that constant to 0xc0000000, I do see devices enumerated in vista starting at 0xc0000000, but the acpi pci bus device in vista still reports an aperture starting at 0xf0000000, which I believe is fetched from dsdt tables.?
Thanks,
Dan.
On Mon, Jan 21, 2008 at 11:28 AM, David Stone < unclestoner@xxxxxxxxx> wrote:
> > My only hesitation is that 0xF0000000-0xF4FFFFFF = 80Mb is smallish, > > especially considering the wasteful algorithm the Xen HVM BIOS > > currently uses to assign addresses (it can waste a lot of space).
> > How is it wasteful? We could only do better if we assigned PCI resources in > descending order of size (and hence alignment requirement). Which we *could* > do, I suppose. Certainly the resource assignment code is going to get rather
> more exciting anyway, to fully support the dynamic PCI hole.
Pretty much that...the way it is now if the order in which BARs are enumerated is such that the first BAR wants a small amount (say 1KB
and gets 0xF0000000-0xF00003FF) and then the second BAR wants a large amout (say 64 MB and gets 0xF4000000-0xF7FFFFFF) then a there is a big waste (0xF0000400-0xF3FFFFFF == ~64 MB). In the various configurations I was running almost as much PCI device address space
got wasted as assigned.
Thanks, Dave
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|