aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/char/agp/agp.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/char/agp/agp.h')
-rw-r--r--drivers/char/agp/agp.h15
1 files changed, 9 insertions, 6 deletions
diff --git a/drivers/char/agp/agp.h b/drivers/char/agp/agp.h
index 178e2e9e9f09..d6f36c004d9b 100644
--- a/drivers/char/agp/agp.h
+++ b/drivers/char/agp/agp.h
@@ -107,7 +107,7 @@ struct agp_bridge_driver {
107 void (*agp_enable)(struct agp_bridge_data *, u32); 107 void (*agp_enable)(struct agp_bridge_data *, u32);
108 void (*cleanup)(void); 108 void (*cleanup)(void);
109 void (*tlb_flush)(struct agp_memory *); 109 void (*tlb_flush)(struct agp_memory *);
110 unsigned long (*mask_memory)(struct agp_bridge_data *, struct page *, int); 110 unsigned long (*mask_memory)(struct agp_bridge_data *, dma_addr_t, int);
111 void (*cache_flush)(void); 111 void (*cache_flush)(void);
112 int (*create_gatt_table)(struct agp_bridge_data *); 112 int (*create_gatt_table)(struct agp_bridge_data *);
113 int (*free_gatt_table)(struct agp_bridge_data *); 113 int (*free_gatt_table)(struct agp_bridge_data *);
@@ -121,6 +121,11 @@ struct agp_bridge_driver {
121 void (*agp_destroy_pages)(struct agp_memory *); 121 void (*agp_destroy_pages)(struct agp_memory *);
122 int (*agp_type_to_mask_type) (struct agp_bridge_data *, int); 122 int (*agp_type_to_mask_type) (struct agp_bridge_data *, int);
123 void (*chipset_flush)(struct agp_bridge_data *); 123 void (*chipset_flush)(struct agp_bridge_data *);
124
125 int (*agp_map_page)(struct page *page, dma_addr_t *ret);
126 void (*agp_unmap_page)(struct page *page, dma_addr_t dma);
127 int (*agp_map_memory)(struct agp_memory *mem);
128 void (*agp_unmap_memory)(struct agp_memory *mem);
124}; 129};
125 130
126struct agp_bridge_data { 131struct agp_bridge_data {
@@ -134,7 +139,8 @@ struct agp_bridge_data {
134 u32 __iomem *gatt_table; 139 u32 __iomem *gatt_table;
135 u32 *gatt_table_real; 140 u32 *gatt_table_real;
136 unsigned long scratch_page; 141 unsigned long scratch_page;
137 unsigned long scratch_page_real; 142 struct page *scratch_page_page;
143 dma_addr_t scratch_page_dma;
138 unsigned long gart_bus_addr; 144 unsigned long gart_bus_addr;
139 unsigned long gatt_bus_addr; 145 unsigned long gatt_bus_addr;
140 u32 mode; 146 u32 mode;
@@ -291,7 +297,7 @@ int agp_3_5_enable(struct agp_bridge_data *bridge);
291void global_cache_flush(void); 297void global_cache_flush(void);
292void get_agp_version(struct agp_bridge_data *bridge); 298void get_agp_version(struct agp_bridge_data *bridge);
293unsigned long agp_generic_mask_memory(struct agp_bridge_data *bridge, 299unsigned long agp_generic_mask_memory(struct agp_bridge_data *bridge,
294 struct page *page, int type); 300 dma_addr_t phys, int type);
295int agp_generic_type_to_mask_type(struct agp_bridge_data *bridge, 301int agp_generic_type_to_mask_type(struct agp_bridge_data *bridge,
296 int type); 302 int type);
297struct agp_bridge_data *agp_generic_find_bridge(struct pci_dev *pdev); 303struct agp_bridge_data *agp_generic_find_bridge(struct pci_dev *pdev);
@@ -312,9 +318,6 @@ void agp3_generic_cleanup(void);
312#define AGP_GENERIC_SIZES_ENTRIES 11 318#define AGP_GENERIC_SIZES_ENTRIES 11
313extern const struct aper_size_info_16 agp3_generic_sizes[]; 319extern const struct aper_size_info_16 agp3_generic_sizes[];
314 320
315#define virt_to_gart(x) (phys_to_gart(virt_to_phys(x)))
316#define gart_to_virt(x) (phys_to_virt(gart_to_phys(x)))
317
318extern int agp_off; 321extern int agp_off;
319extern int agp_try_unsupported_boot; 322extern int agp_try_unsupported_boot;
320 323