[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] RE: [Xen-devel] allocating AGP aperture memory
I'm still working on getting IOMMU support for Opterons under Xen. > > > > AGP controller initialization, fails to reserve > > > > the GART address space because the necessary > > > > pages are PageReserved in the mem_map. > > > > > > Trying to looks a bus (machine) address up in > > > dom0's mem_map (pseudo-physical) won't yield > > > anything sensible. > > > > So how do I do this? > > Don't! Bus addresses should never be looked up in mem_map. > The mem_map array is indexed by pseudo-physical address, and > refers just to the DRAM the domain has. > > If the existing driver is trying to lookup a io bus address > in mem_map, that's a bug and you'll need to fix it. It's trying to make sure that the page range isn't being used by something else, and for no reason that I can determine, it's failing. e820_reserve_resources() is creating a "reserved" memory gap from d000000 to ff700000 or so. When I request the e0000000 address to put the 256 MB GART there, I get collision with something. > > The aperture is an address space that is not supported by > > DRAM. Writes to the aperture get shifted to other physical > > addresses through the magic of the GART. > > Exactly -- the adress shouldn't be looked up in mem_map. > > I suspect what the driver should be doing is just bumping > pci_mem_start to avoid the aperture clashing with other > pci resources. I've tried that, but it doesn't seem to help. At some point I need to be able to remap the actual, physical e0000000 address range into something locally addressable. ioremap_cache is failing, though that might be because of the page reserve collision above. -Mark Langsdorf AMD, Inc. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |