Skip to contentSkip to conversation

AGPGART preliminary SiS648 support

PATCH New Heilmann, Oliver 1 participant 1 message Jan 20, 2004 Agpgart driver

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 AGPGART preliminary SiS648 support

Preliminary 648FX agp support.

The delay problem described in
http://www.ussg.iu.edu/hypermail/linux/kernel/0401.1/0053.html
still exists. Dave: any luck with that data sheet yet?

agp3 specifies things that had been left up to implementers in previous versions hence the new generic-agp3.c file. Apart from the problem described above the 648 chipset seems to stick to the spec.
If this is also true for other chipset it might be possible to turn this into a generic agp3 driver at some point?

Obviously, users of the fglrx driver will want to turn off the internalagp option.

Oliver

drivers/char/agp/Makefile +1 -1
diff -urN -X dontdiff linux-2.6.1/drivers/char/agp/Makefile linux/drivers/char/agp/Makefile
@@ -1,4 +1,4 @@
-agpgart-y := backend.o frontend.o generic.o isoch.o
+agpgart-y := backend.o frontend.o generic.o generic-agp3.o isoch.o
 
 obj-$(CONFIG_AGP)		+= agpgart.o
 obj-$(CONFIG_AGP_ALI)		+= ali-agp.o
drivers/char/agp/agp.h +18 -0
diff -urN -X dontdiff linux-2.6.1/drivers/char/agp/agp.h linux/drivers/char/agp/agp.h
@@ -402,6 +402,17 @@
 void get_agp_version(struct agp_bridge_data *bridge);
 unsigned long agp_generic_mask_memory(unsigned long addr, int type);
 
+/* generic routines for agp>=3 */
+int agp3_generic_fetch_size(void);
+void agp3_generic_tlbflush(struct agp_memory *mem);
+int agp3_generic_configure(void);
+void agp3_generic_cleanup(void);
+
+/* aperture sizes have been standardised since v3 */
+#define AGP_GENERIC_SIZES_ENTRIES 11
+extern struct aper_size_info_16 agp3_generic_sizes[];
+
+
 extern int agp_off;
 extern int agp_try_unsupported_boot;
 
@@ -410,7 +421,10 @@
 #define AGPCMD			0x8
 #define AGPNISTAT		0xc
 #define AGPCTRL                 0x10
+#define AGPAPSIZE               0x14
 #define AGPNEPG			0x16
+#define AGPGARTLO               0x18
+#define AGPGARTHI               0x1c
 #define AGPNICMD		0x20
 
 #define AGP_MAJOR_VERSION_SHIFT	(20)
@@ -435,4 +449,8 @@
 #define AGPSTAT3_8X		(1<<1)
 #define AGPSTAT3_4X		(1)
 
+#define AGPCTRL_APERENB         (1<<8)
+#define AGPCTRL_GTLBEN          (1<<7)
+
+
 #endif				/* _AGP_BACKEND_PRIV_H */
drivers/char/agp/generic-agp3.c +115 -0

115 lines not on this page · raw message

drivers/char/agp/sis-agp.c +99 -13

158 lines not on this page · raw message

--------------------------------------------------------------------------------
The information contained herein is confidential and is intended solely for the addressee. Access by any other party is unauthorised without the express written permission of the sender. If you are not the intended recipient, please contact the sender either via the company switchboard on +44 (0)20 7623 8000, or via e-mail return. If you have received this e-mail in error or wish to read our e-mail disclaimer statement and monitoring policy, please refer to
http://www.drkw.com/disc/email/ or contact the sender.
--------------------------------------------------------------------------------