diff options
author | anholt <anholt@FreeBSD.org> | 2003-02-14 06:33:52 +0000 |
---|---|---|
committer | anholt <anholt@FreeBSD.org> | 2003-02-14 06:33:52 +0000 |
commit | c1f9432df87518b4a41027a8db43313201fdaf74 (patch) | |
tree | 15c6acae66f1380af036f5e4697f34c2531b44f7 | |
parent | fed8c49da5123b6e1a6ad7867ba0901312637273 (diff) | |
download | FreeBSD-src-c1f9432df87518b4a41027a8db43313201fdaf74.zip FreeBSD-src-c1f9432df87518b4a41027a8db43313201fdaf74.tar.gz |
Split the arch-specific AGP files into the appropriate files.* and do the same
for the agp module, and add agp to the list of modules to compile for alpha.
Add an alpha_mb() to agp_flush_cache for alpha -- it's not correct but may
improve the situation, and it's what linux and NetBSD do.
-rw-r--r-- | sys/conf/files | 6 | ||||
-rw-r--r-- | sys/conf/files.alpha | 1 | ||||
-rw-r--r-- | sys/conf/files.i386 | 6 | ||||
-rw-r--r-- | sys/conf/files.pc98 | 6 | ||||
-rw-r--r-- | sys/dev/agp/agp.c | 6 | ||||
-rw-r--r-- | sys/modules/Makefile | 3 | ||||
-rw-r--r-- | sys/modules/agp/Makefile | 9 | ||||
-rw-r--r-- | sys/pci/agp.c | 6 |
8 files changed, 34 insertions, 9 deletions
diff --git a/sys/conf/files b/sys/conf/files index f324c58..c9bbe9a 100644 --- a/sys/conf/files +++ b/sys/conf/files @@ -1479,12 +1479,6 @@ pccard/pcic_isa.c optional pcic card isa pccard/pcic_pci.c optional pcic card pci pci/agp.c optional agp pci/agp_if.m optional agp -pci/agp_intel.c optional agp -pci/agp_via.c optional agp -pci/agp_sis.c optional agp -pci/agp_ali.c optional agp -pci/agp_amd.c optional agp -pci/agp_i810.c optional agp pci/alpm.c optional alpm pci/amdpm.c optional amdpm pci/amdpm.c optional nfpm diff --git a/sys/conf/files.alpha b/sys/conf/files.alpha index 187c3fc..9f38b0d 100644 --- a/sys/conf/files.alpha +++ b/sys/conf/files.alpha @@ -211,3 +211,4 @@ dev/tga/tga_pci.c optional tga dev/fb/fb.c optional tga dev/fb/gfb.c optional tga dev/gfb/gfb_pci.c optional tga +pci/agp_amd.c optional agp diff --git a/sys/conf/files.i386 b/sys/conf/files.i386 index 97bec63..6e5f92d 100644 --- a/sys/conf/files.i386 +++ b/sys/conf/files.i386 @@ -418,3 +418,9 @@ libkern/ucmpdi2.c standard libkern/udivdi3.c standard libkern/umoddi3.c standard pci/cy_pci.c optional cy pci +pci/agp_intel.c optional agp +pci/agp_via.c optional agp +pci/agp_sis.c optional agp +pci/agp_ali.c optional agp +pci/agp_amd.c optional agp +pci/agp_i810.c optional agp diff --git a/sys/conf/files.pc98 b/sys/conf/files.pc98 index 79dd01d..daa2f1f 100644 --- a/sys/conf/files.pc98 +++ b/sys/conf/files.pc98 @@ -391,3 +391,9 @@ pc98/pc98/wd.c count wdc pc98/pc98/wd_cd.c count wcd wdc pccard/mecia.c optional mecia card pci/cy_pci.c optional cy pci +pci/agp_intel.c optional agp +pci/agp_via.c optional agp +pci/agp_sis.c optional agp +pci/agp_ali.c optional agp +pci/agp_amd.c optional agp +pci/agp_i810.c optional agp diff --git a/sys/dev/agp/agp.c b/sys/dev/agp/agp.c index ddd29b9..293011c 100644 --- a/sys/dev/agp/agp.c +++ b/sys/dev/agp/agp.c @@ -96,6 +96,12 @@ agp_flush_cache() #ifdef __i386__ wbinvd(); #endif +#ifdef __alpha__ + /* FIXME: This is most likely not correct as it doesn't flush CPU + * write caches, but we don't have a facility to do that and + * this is all linux does, too */ + alpha_mb(); +#endif } u_int8_t diff --git a/sys/modules/Makefile b/sys/modules/Makefile index ab15cba..d48fa8b 100644 --- a/sys/modules/Makefile +++ b/sys/modules/Makefile @@ -263,7 +263,8 @@ SUBDIR+=aic \ .endif .if ${MACHINE_ARCH} == "alpha" -SUBDIR+=linprocfs \ +SUBDIR+=agp \ + linprocfs \ linux \ osf1 \ sound \ diff --git a/sys/modules/agp/Makefile b/sys/modules/agp/Makefile index 67c46d0..b17be3a 100644 --- a/sys/modules/agp/Makefile +++ b/sys/modules/agp/Makefile @@ -3,8 +3,13 @@ .PATH: ${.CURDIR}/../../pci KMOD= agp -SRCS= agp.c agp_intel.c agp_via.c agp_sis.c agp_ali.c agp_amd.c -SRCS+= agp_i810.c agp_if.c +SRCS= agp.c agp_if.c +.if ${MACHINE_ARCH} == "i386" +SRCS+= agp_i810.c agp_intel.c agp_via.c agp_sis.c agp_ali.c agp_amd.c +.endif +.if ${MACHINE_ARCH} == "alpha" +SRCS+= agp_amd.c +.endif SRCS+= device_if.h bus_if.h agp_if.h pci_if.h SRCS+= opt_bdg.h opt_bus.h MFILES= kern/device_if.m kern/bus_if.m pci/agp_if.m dev/pci/pci_if.m diff --git a/sys/pci/agp.c b/sys/pci/agp.c index ddd29b9..293011c 100644 --- a/sys/pci/agp.c +++ b/sys/pci/agp.c @@ -96,6 +96,12 @@ agp_flush_cache() #ifdef __i386__ wbinvd(); #endif +#ifdef __alpha__ + /* FIXME: This is most likely not correct as it doesn't flush CPU + * write caches, but we don't have a facility to do that and + * this is all linux does, too */ + alpha_mb(); +#endif } u_int8_t |