agp_i810 not built on amd64?
nate at root.org
Fri May 4 22:04:12 UTC 2007
Eric Anholt wrote:
> On Fri, 2007-05-04 at 13:13 -0700, Nate Lawson wrote:
>> I have a desktop with i945GMS builtin video. It appears agp_i810.c is
>> not built on amd64, hence no support for agp. This is on 6.x.
>> none0 at pci0:2:0: class=0x030000 card=0x31031565 chip=0x27728086 rev=0x02
>> vendor = 'Intel Corporation'
>> device = 'Integrated Graphics Controller'
>> class = display
>> subclass = VGA
>> sys/conf/files.i386:pci/agp_i810.c optional agp
>> $ ls /sys/amd64/compile/SMP/*agp*
>> /sys/amd64/compile/SMP/agp.o /sys/amd64/compile/SMP/agp_if.h
>> /sys/amd64/compile/SMP/agp_amd64.o /sys/amd64/compile/SMP/agp_if.o
>> /sys/amd64/compile/SMP/agp_if.c /sys/amd64/compile/SMP/agp_intel.o
>> Is there any reason not to use i810 on amd64? A quick glance through
>> doesn't show it doing anything 32-bit specific. On -current, it appears
>> to be enabled for amd64. It appears this MFC never happened:
>> revision 1.93
>> date: 2006/09/05 16:55:12; author: anholt; state: Exp; lines: +1 -0
>> Include agp_i810.c in amd64 AGP builds to get support for the Intel 915
>> Express chipsets.
> Nope, there's no good reason for the MFC to have not happened.
> We've only got one amd64 issue that I know of, but it's actually not
> unique to amd64. We're not allocating our pages to back aperture
> allocations to meet the requirements of the page tables, so for example
> on i915-class hardware with 4GB of ram, you'll get pages sometimes that
> are above the 4GB range, and we'll just drop the top bit of the address
> when filling in the page table, resulting in pain. We need a way for
> AGP drivers to communicate their requirements for AGP memory to the
> core, likely through busdma tags.
> In the current agp_i810.c patch I've been working on, I at least panic
> when we get out-of-range pages, instead of scribbling on random memory.
Ok, I've tested it and it works. I will MFC now.
More information about the freebsd-current