freebsd-skq/sys/dev/agp
Tijl Coosemans 4e612cddb9 In agp(4) avoid the need to flush all cpu caches with wbinvd between
updating the GTT and flushing the AGP TLB by storing the GTT in
write-combining memory.

On x86 flushing the AGP TLB is done by an I/O operation or a store to a
MMIO register in uncacheable memory.  Both cases imply that WC buffers are
flushed so no memory barriers are needed.

On powerpc there is no WC memory type.  It maps to uncacheable memory and
two stores to uncacheable memory, such as to the GTT and then to an MMIO
register, are strongly ordered, so no memory barriers are needed either.

MFC after:	1 month
2014-11-02 11:26:37 +00:00
..
agp_ali.c Remove unneeded semicolons. 2013-01-01 18:16:49 +00:00
agp_amd64.c In agp(4) avoid the need to flush all cpu caches with wbinvd between 2014-11-02 11:26:37 +00:00
agp_amd.c In agp(4) avoid the need to flush all cpu caches with wbinvd between 2014-11-02 11:26:37 +00:00
agp_apple.c In agp(4) avoid the need to flush all cpu caches with wbinvd between 2014-11-02 11:26:37 +00:00
agp_ati.c In agp(4) avoid the need to flush all cpu caches with wbinvd between 2014-11-02 11:26:37 +00:00
agp_i810.c In agp(4) avoid the need to flush all cpu caches with wbinvd between 2014-11-02 11:26:37 +00:00
agp_i810.h A rewrite of the i810 bits of the agp(4) driver. New driver supports 2012-05-22 10:59:26 +00:00
agp_if.m A rewrite of the i810 bits of the agp(4) driver. New driver supports 2012-05-22 10:59:26 +00:00
agp_intel.c Remove unneeded semicolons. 2013-01-01 18:16:49 +00:00
agp_nvidia.c Remove unneeded header from agp: opt_bus.h 2012-11-15 18:49:17 +00:00
agp_sis.c Remove unneeded semicolons. 2013-01-01 18:16:49 +00:00
agp_via.c Remove unneeded semicolons. 2013-01-01 18:16:49 +00:00
agp.c In agp(4) avoid the need to flush all cpu caches with wbinvd between 2014-11-02 11:26:37 +00:00
agppriv.h In agp(4) avoid the need to flush all cpu caches with wbinvd between 2014-11-02 11:26:37 +00:00
agpreg.h A rewrite of the i810 bits of the agp(4) driver. New driver supports 2012-05-22 10:59:26 +00:00
agpvar.h Add two new functions to the AGP driver KPI to bind/unbind arbitrary sets 2014-10-30 11:27:03 +00:00