Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0 */
0002 #ifndef _ALPHA_AGP_BACKEND_H
0003 #define _ALPHA_AGP_BACKEND_H 1
0004 
0005 typedef union _alpha_agp_mode {
0006     struct {
0007         u32 rate : 3;
0008         u32 reserved0 : 1;
0009         u32 fw : 1;
0010         u32 fourgb : 1;
0011         u32 reserved1 : 2;
0012         u32 enable : 1;
0013         u32 sba : 1;
0014         u32 reserved2 : 14;
0015         u32 rq : 8;
0016     } bits;
0017     u32 lw;
0018 } alpha_agp_mode;
0019 
0020 typedef struct _alpha_agp_info {
0021     struct pci_controller *hose;
0022     struct {
0023         dma_addr_t bus_base;
0024         unsigned long size;
0025         void *sysdata;
0026     } aperture;
0027     alpha_agp_mode capability;
0028     alpha_agp_mode mode;
0029     void *private;
0030     struct alpha_agp_ops *ops;
0031 } alpha_agp_info;
0032 
0033 struct alpha_agp_ops {
0034     int (*setup)(alpha_agp_info *);
0035     void (*cleanup)(alpha_agp_info *);
0036     int (*configure)(alpha_agp_info *);
0037     int (*bind)(alpha_agp_info *, off_t, struct agp_memory *);
0038     int (*unbind)(alpha_agp_info *, off_t, struct agp_memory *);
0039     unsigned long (*translate)(alpha_agp_info *, dma_addr_t);
0040 };
0041 
0042 
0043 #endif /* _ALPHA_AGP_BACKEND_H */