43 lines
		
	
	
	
		
			909 B
			
		
	
	
	
		
			C
		
	
	
	
	
	
		
		
			
		
	
	
			43 lines
		
	
	
	
		
			909 B
			
		
	
	
	
		
			C
		
	
	
	
	
	
|   | #ifndef _ALPHA_AGP_BACKEND_H
 | ||
|  | #define _ALPHA_AGP_BACKEND_H 1
 | ||
|  | 
 | ||
|  | typedef	union _alpha_agp_mode { | ||
|  | 	struct { | ||
|  | 		u32 rate : 3; | ||
|  | 		u32 reserved0 : 1; | ||
|  | 		u32 fw : 1; | ||
|  | 		u32 fourgb : 1; | ||
|  | 		u32 reserved1 : 2; | ||
|  | 		u32 enable : 1; | ||
|  | 		u32 sba : 1; | ||
|  | 		u32 reserved2 : 14; | ||
|  | 		u32 rq : 8; | ||
|  | 	} bits; | ||
|  | 	u32 lw; | ||
|  | } alpha_agp_mode; | ||
|  | 
 | ||
|  | typedef struct _alpha_agp_info { | ||
|  | 	struct pci_controller *hose; | ||
|  | 	struct { | ||
|  | 		dma_addr_t bus_base; | ||
|  | 		unsigned long size; | ||
|  | 		void *sysdata; | ||
|  | 	} aperture; | ||
|  | 	alpha_agp_mode capability; | ||
|  | 	alpha_agp_mode mode; | ||
|  | 	void *private; | ||
|  | 	struct alpha_agp_ops *ops; | ||
|  | } alpha_agp_info; | ||
|  | 
 | ||
|  | struct alpha_agp_ops { | ||
|  | 	int (*setup)(alpha_agp_info *); | ||
|  | 	void (*cleanup)(alpha_agp_info *); | ||
|  | 	int (*configure)(alpha_agp_info *); | ||
|  | 	int (*bind)(alpha_agp_info *, off_t, struct agp_memory *); | ||
|  | 	int (*unbind)(alpha_agp_info *, off_t, struct agp_memory *); | ||
|  | 	unsigned long (*translate)(alpha_agp_info *, dma_addr_t); | ||
|  | }; | ||
|  | 
 | ||
|  | 
 | ||
|  | #endif /* _ALPHA_AGP_BACKEND_H */
 |