On Tue, Nov 26, 2013 at 04:59:33PM +0100, Gerd Hoffmann wrote: > > Hi, > > > > > Yes, I think it's a start. Q35 is a bit harder because of the MMIO > > > > region. > > > > > > ??? Do you mean mmconfig? That can live inside the window. > > > > Are you sure? When I tried windows crashed but maybe I'm wrong. > > Did you try some windows guests? > > At least it looks that way on my laptop: > > nilsson root ~# cat /proc/iomem > [ ... ] > dfa00000-febfffff : PCI Bus 0000:00 > [ ... ] > f8000000-fbffffff : PCI MMCONFIG 0000 [bus 00-3f] > f80f8000-f80f8fff : reserved > fec00000-fec003ff : IOAPIC 0 > [ ... ]
True. Mine also has: _CRS in DSDT: DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite, 0x00000000, // Granularity 0x00100000, // Range Minimum 0xFEBFFFFF, // Range Maximum 0x00000000, // Translation Offset 0xFEB00000, // Length ,, _Y23, AddressRangeMemory, TypeStatic) MCFG [02Ch 0044 8] Base Address : 00000000F8000000 [034h 0052 2] Segment Group Number : 0000 [036h 0054 1] Start Bus Number : 00 [037h 0055 1] End Bus Number : 3F [038h 0056 4] Reserved : 00000000 so they do overlap apparently without issues. Well, this definitely simplifies things: this probably means we can just do the same thing for piix and q35. > The reservation seems to be different from what we are doing though. We > (aka seabios) are creating a e820 reserved region, on my laptop mmconfig > is declared in acpi: > > nilsson root ~# grep f8000000 /var/log/dmesg > [ 0.103320] PCI: MMCONFIG for domain 0000 [bus 00-3f] at [mem > 0xf8000000-0xfbffffff] (base 0xf8000000) > [ 0.126943] PCI: MMCONFIG for domain 0000 [bus 00-3f] at [mem > 0xf8000000-0xfbffffff] (base 0xf8000000) > [ 0.128697] PCI: MMCONFIG at [mem 0xf8000000-0xfbffffff] reserved in > ACPI motherboard resources > [ 0.160979] system 00:01: [mem 0xf8000000-0xfbffffff] could not be > reserved > > Maybe this is what windows doesn't like ... > > cheers, > Gerd > >