| #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 */ |