diff options
Diffstat (limited to 'drivers/char/drm/ffb_drv.h')
-rw-r--r-- | drivers/char/drm/ffb_drv.h | 433 |
1 files changed, 263 insertions, 170 deletions
diff --git a/drivers/char/drm/ffb_drv.h b/drivers/char/drm/ffb_drv.h index 8bf7f1e143f1..582afa6dd2b4 100644 --- a/drivers/char/drm/ffb_drv.h +++ b/drivers/char/drm/ffb_drv.h | |||
@@ -5,7 +5,7 @@ | |||
5 | */ | 5 | */ |
6 | 6 | ||
7 | /* Auxilliary clips. */ | 7 | /* Auxilliary clips. */ |
8 | typedef struct { | 8 | typedef struct { |
9 | volatile unsigned int min; | 9 | volatile unsigned int min; |
10 | volatile unsigned int max; | 10 | volatile unsigned int max; |
11 | } ffb_auxclip, *ffb_auxclipPtr; | 11 | } ffb_auxclip, *ffb_auxclipPtr; |
@@ -15,172 +15,265 @@ typedef struct _ffb_fbc { | |||
15 | /* Next vertex registers, on the right we list which drawops | 15 | /* Next vertex registers, on the right we list which drawops |
16 | * use said register and the logical name the register has in | 16 | * use said register and the logical name the register has in |
17 | * that context. | 17 | * that context. |
18 | */ /* DESCRIPTION DRAWOP(NAME) */ | 18 | *//* DESCRIPTION DRAWOP(NAME) */ |
19 | /*0x00*/unsigned int pad1[3]; /* Reserved */ | 19 | /*0x00*/ unsigned int pad1[3]; |
20 | /*0x0c*/volatile unsigned int alpha; /* ALPHA Transparency */ | 20 | /* Reserved */ |
21 | /*0x10*/volatile unsigned int red; /* RED */ | 21 | /*0x0c*/ volatile unsigned int alpha; |
22 | /*0x14*/volatile unsigned int green; /* GREEN */ | 22 | /* ALPHA Transparency */ |
23 | /*0x18*/volatile unsigned int blue; /* BLUE */ | 23 | /*0x10*/ volatile unsigned int red; |
24 | /*0x1c*/volatile unsigned int z; /* DEPTH */ | 24 | /* RED */ |
25 | /*0x20*/volatile unsigned int y; /* Y triangle(DOYF) */ | 25 | /*0x14*/ volatile unsigned int green; |
26 | /* aadot(DYF) */ | 26 | /* GREEN */ |
27 | /* ddline(DYF) */ | 27 | /*0x18*/ volatile unsigned int blue; |
28 | /* aaline(DYF) */ | 28 | /* BLUE */ |
29 | /*0x24*/volatile unsigned int x; /* X triangle(DOXF) */ | 29 | /*0x1c*/ volatile unsigned int z; |
30 | /* aadot(DXF) */ | 30 | /* DEPTH */ |
31 | /* ddline(DXF) */ | 31 | /*0x20*/ volatile unsigned int y; |
32 | /* aaline(DXF) */ | 32 | /* Y triangle(DOYF) */ |
33 | /*0x28*/unsigned int pad2[2]; /* Reserved */ | 33 | /* aadot(DYF) */ |
34 | /*0x30*/volatile unsigned int ryf; /* Y (alias to DOYF) ddline(RYF) */ | 34 | /* ddline(DYF) */ |
35 | /* aaline(RYF) */ | 35 | /* aaline(DYF) */ |
36 | /* triangle(RYF) */ | 36 | /*0x24*/ volatile unsigned int x; |
37 | /*0x34*/volatile unsigned int rxf; /* X ddline(RXF) */ | 37 | /* X triangle(DOXF) */ |
38 | /* aaline(RXF) */ | 38 | /* aadot(DXF) */ |
39 | /* triangle(RXF) */ | 39 | /* ddline(DXF) */ |
40 | /*0x38*/unsigned int pad3[2]; /* Reserved */ | 40 | /* aaline(DXF) */ |
41 | /*0x40*/volatile unsigned int dmyf; /* Y (alias to DOYF) triangle(DMYF) */ | 41 | /*0x28*/ unsigned int pad2[2]; |
42 | /*0x44*/volatile unsigned int dmxf; /* X triangle(DMXF) */ | 42 | /* Reserved */ |
43 | /*0x48*/unsigned int pad4[2]; /* Reserved */ | 43 | /*0x30*/ volatile unsigned int ryf; |
44 | /*0x50*/volatile unsigned int ebyi; /* Y (alias to RYI) polygon(EBYI) */ | 44 | /* Y (alias to DOYF) ddline(RYF) */ |
45 | /*0x54*/volatile unsigned int ebxi; /* X polygon(EBXI) */ | 45 | /* aaline(RYF) */ |
46 | /*0x58*/unsigned int pad5[2]; /* Reserved */ | 46 | /* triangle(RYF) */ |
47 | /*0x60*/volatile unsigned int by; /* Y brline(RYI) */ | 47 | /*0x34*/ volatile unsigned int rxf; |
48 | /* fastfill(OP) */ | 48 | /* X ddline(RXF) */ |
49 | /* polygon(YI) */ | 49 | /* aaline(RXF) */ |
50 | /* rectangle(YI) */ | 50 | /* triangle(RXF) */ |
51 | /* bcopy(SRCY) */ | 51 | /*0x38*/ unsigned int pad3[2]; |
52 | /* vscroll(SRCY) */ | 52 | /* Reserved */ |
53 | /*0x64*/volatile unsigned int bx; /* X brline(RXI) */ | 53 | /*0x40*/ volatile unsigned int dmyf; |
54 | /* polygon(XI) */ | 54 | /* Y (alias to DOYF) triangle(DMYF) */ |
55 | /* rectangle(XI) */ | 55 | /*0x44*/ volatile unsigned int dmxf; |
56 | /* bcopy(SRCX) */ | 56 | /* X triangle(DMXF) */ |
57 | /* vscroll(SRCX) */ | 57 | /*0x48*/ unsigned int pad4[2]; |
58 | /* fastfill(GO) */ | 58 | /* Reserved */ |
59 | /*0x68*/volatile unsigned int dy; /* destination Y fastfill(DSTY) */ | 59 | /*0x50*/ volatile unsigned int ebyi; |
60 | /* bcopy(DSRY) */ | 60 | /* Y (alias to RYI) polygon(EBYI) */ |
61 | /* vscroll(DSRY) */ | 61 | /*0x54*/ volatile unsigned int ebxi; |
62 | /*0x6c*/volatile unsigned int dx; /* destination X fastfill(DSTX) */ | 62 | /* X polygon(EBXI) */ |
63 | /* bcopy(DSTX) */ | 63 | /*0x58*/ unsigned int pad5[2]; |
64 | /* vscroll(DSTX) */ | 64 | /* Reserved */ |
65 | /*0x70*/volatile unsigned int bh; /* Y (alias to RYI) brline(DYI) */ | 65 | /*0x60*/ volatile unsigned int by; |
66 | /* dot(DYI) */ | 66 | /* Y brline(RYI) */ |
67 | /* polygon(ETYI) */ | 67 | /* fastfill(OP) */ |
68 | /* Height fastfill(H) */ | 68 | /* polygon(YI) */ |
69 | /* bcopy(H) */ | 69 | /* rectangle(YI) */ |
70 | /* vscroll(H) */ | 70 | /* bcopy(SRCY) */ |
71 | /* Y count fastfill(NY) */ | 71 | /* vscroll(SRCY) */ |
72 | /*0x74*/volatile unsigned int bw; /* X dot(DXI) */ | 72 | /*0x64*/ volatile unsigned int bx; |
73 | /* brline(DXI) */ | 73 | /* X brline(RXI) */ |
74 | /* polygon(ETXI) */ | 74 | /* polygon(XI) */ |
75 | /* fastfill(W) */ | 75 | /* rectangle(XI) */ |
76 | /* bcopy(W) */ | 76 | /* bcopy(SRCX) */ |
77 | /* vscroll(W) */ | 77 | /* vscroll(SRCX) */ |
78 | /* fastfill(NX) */ | 78 | /* fastfill(GO) */ |
79 | /*0x78*/unsigned int pad6[2]; /* Reserved */ | 79 | /*0x68*/ volatile unsigned int dy; |
80 | /*0x80*/unsigned int pad7[32]; /* Reserved */ | 80 | /* destination Y fastfill(DSTY) */ |
81 | 81 | /* bcopy(DSRY) */ | |
82 | /* vscroll(DSRY) */ | ||
83 | /*0x6c*/ volatile unsigned int dx; | ||
84 | /* destination X fastfill(DSTX) */ | ||
85 | /* bcopy(DSTX) */ | ||
86 | /* vscroll(DSTX) */ | ||
87 | /*0x70*/ volatile unsigned int bh; | ||
88 | /* Y (alias to RYI) brline(DYI) */ | ||
89 | /* dot(DYI) */ | ||
90 | /* polygon(ETYI) */ | ||
91 | /* Height fastfill(H) */ | ||
92 | /* bcopy(H) */ | ||
93 | /* vscroll(H) */ | ||
94 | /* Y count fastfill(NY) */ | ||
95 | /*0x74*/ volatile unsigned int bw; | ||
96 | /* X dot(DXI) */ | ||
97 | /* brline(DXI) */ | ||
98 | /* polygon(ETXI) */ | ||
99 | /* fastfill(W) */ | ||
100 | /* bcopy(W) */ | ||
101 | /* vscroll(W) */ | ||
102 | /* fastfill(NX) */ | ||
103 | /*0x78*/ unsigned int pad6[2]; | ||
104 | /* Reserved */ | ||
105 | /*0x80*/ unsigned int pad7[32]; | ||
106 | /* Reserved */ | ||
107 | |||
82 | /* Setup Unit's vertex state register */ | 108 | /* Setup Unit's vertex state register */ |
83 | /*100*/ volatile unsigned int suvtx; | 109 | /*100*/ volatile unsigned int suvtx; |
84 | /*104*/ unsigned int pad8[63]; /* Reserved */ | 110 | /*104*/ unsigned int pad8[63]; |
85 | 111 | /* Reserved */ | |
112 | |||
86 | /* Frame Buffer Control Registers */ | 113 | /* Frame Buffer Control Registers */ |
87 | /*200*/ volatile unsigned int ppc; /* Pixel Processor Control */ | 114 | /*200*/ volatile unsigned int ppc; |
88 | /*204*/ volatile unsigned int wid; /* Current WID */ | 115 | /* Pixel Processor Control */ |
89 | /*208*/ volatile unsigned int fg; /* FG data */ | 116 | /*204*/ volatile unsigned int wid; |
90 | /*20c*/ volatile unsigned int bg; /* BG data */ | 117 | /* Current WID */ |
91 | /*210*/ volatile unsigned int consty; /* Constant Y */ | 118 | /*208*/ volatile unsigned int fg; |
92 | /*214*/ volatile unsigned int constz; /* Constant Z */ | 119 | /* FG data */ |
93 | /*218*/ volatile unsigned int xclip; /* X Clip */ | 120 | /*20c*/ volatile unsigned int bg; |
94 | /*21c*/ volatile unsigned int dcss; /* Depth Cue Scale Slope */ | 121 | /* BG data */ |
95 | /*220*/ volatile unsigned int vclipmin; /* Viewclip XY Min Bounds */ | 122 | /*210*/ volatile unsigned int consty; |
96 | /*224*/ volatile unsigned int vclipmax; /* Viewclip XY Max Bounds */ | 123 | /* Constant Y */ |
97 | /*228*/ volatile unsigned int vclipzmin; /* Viewclip Z Min Bounds */ | 124 | /*214*/ volatile unsigned int constz; |
98 | /*22c*/ volatile unsigned int vclipzmax; /* Viewclip Z Max Bounds */ | 125 | /* Constant Z */ |
99 | /*230*/ volatile unsigned int dcsf; /* Depth Cue Scale Front Bound */ | 126 | /*218*/ volatile unsigned int xclip; |
100 | /*234*/ volatile unsigned int dcsb; /* Depth Cue Scale Back Bound */ | 127 | /* X Clip */ |
101 | /*238*/ volatile unsigned int dczf; /* Depth Cue Z Front */ | 128 | /*21c*/ volatile unsigned int dcss; |
102 | /*23c*/ volatile unsigned int dczb; /* Depth Cue Z Back */ | 129 | /* Depth Cue Scale Slope */ |
103 | /*240*/ unsigned int pad9; /* Reserved */ | 130 | /*220*/ volatile unsigned int vclipmin; |
104 | /*244*/ volatile unsigned int blendc; /* Alpha Blend Control */ | 131 | /* Viewclip XY Min Bounds */ |
105 | /*248*/ volatile unsigned int blendc1; /* Alpha Blend Color 1 */ | 132 | /*224*/ volatile unsigned int vclipmax; |
106 | /*24c*/ volatile unsigned int blendc2; /* Alpha Blend Color 2 */ | 133 | /* Viewclip XY Max Bounds */ |
107 | /*250*/ volatile unsigned int fbramitc; /* FB RAM Interleave Test Control */ | 134 | /*228*/ volatile unsigned int vclipzmin; |
108 | /*254*/ volatile unsigned int fbc; /* Frame Buffer Control */ | 135 | /* Viewclip Z Min Bounds */ |
109 | /*258*/ volatile unsigned int rop; /* Raster OPeration */ | 136 | /*22c*/ volatile unsigned int vclipzmax; |
110 | /*25c*/ volatile unsigned int cmp; /* Frame Buffer Compare */ | 137 | /* Viewclip Z Max Bounds */ |
111 | /*260*/ volatile unsigned int matchab; /* Buffer AB Match Mask */ | 138 | /*230*/ volatile unsigned int dcsf; |
112 | /*264*/ volatile unsigned int matchc; /* Buffer C(YZ) Match Mask */ | 139 | /* Depth Cue Scale Front Bound */ |
113 | /*268*/ volatile unsigned int magnab; /* Buffer AB Magnitude Mask */ | 140 | /*234*/ volatile unsigned int dcsb; |
114 | /*26c*/ volatile unsigned int magnc; /* Buffer C(YZ) Magnitude Mask */ | 141 | /* Depth Cue Scale Back Bound */ |
115 | /*270*/ volatile unsigned int fbcfg0; /* Frame Buffer Config 0 */ | 142 | /*238*/ volatile unsigned int dczf; |
116 | /*274*/ volatile unsigned int fbcfg1; /* Frame Buffer Config 1 */ | 143 | /* Depth Cue Z Front */ |
117 | /*278*/ volatile unsigned int fbcfg2; /* Frame Buffer Config 2 */ | 144 | /*23c*/ volatile unsigned int dczb; |
118 | /*27c*/ volatile unsigned int fbcfg3; /* Frame Buffer Config 3 */ | 145 | /* Depth Cue Z Back */ |
119 | /*280*/ volatile unsigned int ppcfg; /* Pixel Processor Config */ | 146 | /*240*/ unsigned int pad9; |
120 | /*284*/ volatile unsigned int pick; /* Picking Control */ | 147 | /* Reserved */ |
121 | /*288*/ volatile unsigned int fillmode; /* FillMode */ | 148 | /*244*/ volatile unsigned int blendc; |
122 | /*28c*/ volatile unsigned int fbramwac; /* FB RAM Write Address Control */ | 149 | /* Alpha Blend Control */ |
123 | /*290*/ volatile unsigned int pmask; /* RGB PlaneMask */ | 150 | /*248*/ volatile unsigned int blendc1; |
124 | /*294*/ volatile unsigned int xpmask; /* X PlaneMask */ | 151 | /* Alpha Blend Color 1 */ |
125 | /*298*/ volatile unsigned int ypmask; /* Y PlaneMask */ | 152 | /*24c*/ volatile unsigned int blendc2; |
126 | /*29c*/ volatile unsigned int zpmask; /* Z PlaneMask */ | 153 | /* Alpha Blend Color 2 */ |
127 | /*2a0*/ ffb_auxclip auxclip[4]; /* Auxilliary Viewport Clip */ | 154 | /*250*/ volatile unsigned int fbramitc; |
128 | 155 | /* FB RAM Interleave Test Control */ | |
156 | /*254*/ volatile unsigned int fbc; | ||
157 | /* Frame Buffer Control */ | ||
158 | /*258*/ volatile unsigned int rop; | ||
159 | /* Raster OPeration */ | ||
160 | /*25c*/ volatile unsigned int cmp; | ||
161 | /* Frame Buffer Compare */ | ||
162 | /*260*/ volatile unsigned int matchab; | ||
163 | /* Buffer AB Match Mask */ | ||
164 | /*264*/ volatile unsigned int matchc; | ||
165 | /* Buffer C(YZ) Match Mask */ | ||
166 | /*268*/ volatile unsigned int magnab; | ||
167 | /* Buffer AB Magnitude Mask */ | ||
168 | /*26c*/ volatile unsigned int magnc; | ||
169 | /* Buffer C(YZ) Magnitude Mask */ | ||
170 | /*270*/ volatile unsigned int fbcfg0; | ||
171 | /* Frame Buffer Config 0 */ | ||
172 | /*274*/ volatile unsigned int fbcfg1; | ||
173 | /* Frame Buffer Config 1 */ | ||
174 | /*278*/ volatile unsigned int fbcfg2; | ||
175 | /* Frame Buffer Config 2 */ | ||
176 | /*27c*/ volatile unsigned int fbcfg3; | ||
177 | /* Frame Buffer Config 3 */ | ||
178 | /*280*/ volatile unsigned int ppcfg; | ||
179 | /* Pixel Processor Config */ | ||
180 | /*284*/ volatile unsigned int pick; | ||
181 | /* Picking Control */ | ||
182 | /*288*/ volatile unsigned int fillmode; | ||
183 | /* FillMode */ | ||
184 | /*28c*/ volatile unsigned int fbramwac; | ||
185 | /* FB RAM Write Address Control */ | ||
186 | /*290*/ volatile unsigned int pmask; | ||
187 | /* RGB PlaneMask */ | ||
188 | /*294*/ volatile unsigned int xpmask; | ||
189 | /* X PlaneMask */ | ||
190 | /*298*/ volatile unsigned int ypmask; | ||
191 | /* Y PlaneMask */ | ||
192 | /*29c*/ volatile unsigned int zpmask; | ||
193 | /* Z PlaneMask */ | ||
194 | /*2a0*/ ffb_auxclip auxclip[4]; | ||
195 | /* Auxilliary Viewport Clip */ | ||
196 | |||
129 | /* New 3dRAM III support regs */ | 197 | /* New 3dRAM III support regs */ |
130 | /*2c0*/ volatile unsigned int rawblend2; | 198 | /*2c0*/ volatile unsigned int rawblend2; |
131 | /*2c4*/ volatile unsigned int rawpreblend; | 199 | /*2c4*/ volatile unsigned int rawpreblend; |
132 | /*2c8*/ volatile unsigned int rawstencil; | 200 | /*2c8*/ volatile unsigned int rawstencil; |
133 | /*2cc*/ volatile unsigned int rawstencilctl; | 201 | /*2cc*/ volatile unsigned int rawstencilctl; |
134 | /*2d0*/ volatile unsigned int threedram1; | 202 | /*2d0*/ volatile unsigned int threedram1; |
135 | /*2d4*/ volatile unsigned int threedram2; | 203 | /*2d4*/ volatile unsigned int threedram2; |
136 | /*2d8*/ volatile unsigned int passin; | 204 | /*2d8*/ volatile unsigned int passin; |
137 | /*2dc*/ volatile unsigned int rawclrdepth; | 205 | /*2dc*/ volatile unsigned int rawclrdepth; |
138 | /*2e0*/ volatile unsigned int rawpmask; | 206 | /*2e0*/ volatile unsigned int rawpmask; |
139 | /*2e4*/ volatile unsigned int rawcsrc; | 207 | /*2e4*/ volatile unsigned int rawcsrc; |
140 | /*2e8*/ volatile unsigned int rawmatch; | 208 | /*2e8*/ volatile unsigned int rawmatch; |
141 | /*2ec*/ volatile unsigned int rawmagn; | 209 | /*2ec*/ volatile unsigned int rawmagn; |
142 | /*2f0*/ volatile unsigned int rawropblend; | 210 | /*2f0*/ volatile unsigned int rawropblend; |
143 | /*2f4*/ volatile unsigned int rawcmp; | 211 | /*2f4*/ volatile unsigned int rawcmp; |
144 | /*2f8*/ volatile unsigned int rawwac; | 212 | /*2f8*/ volatile unsigned int rawwac; |
145 | /*2fc*/ volatile unsigned int fbramid; | 213 | /*2fc*/ volatile unsigned int fbramid; |
146 | 214 | ||
147 | /*300*/ volatile unsigned int drawop; /* Draw OPeration */ | 215 | /*300*/ volatile unsigned int drawop; |
148 | /*304*/ unsigned int pad10[2]; /* Reserved */ | 216 | /* Draw OPeration */ |
149 | /*30c*/ volatile unsigned int lpat; /* Line Pattern control */ | 217 | /*304*/ unsigned int pad10[2]; |
150 | /*310*/ unsigned int pad11; /* Reserved */ | 218 | /* Reserved */ |
151 | /*314*/ volatile unsigned int fontxy; /* XY Font coordinate */ | 219 | /*30c*/ volatile unsigned int lpat; |
152 | /*318*/ volatile unsigned int fontw; /* Font Width */ | 220 | /* Line Pattern control */ |
153 | /*31c*/ volatile unsigned int fontinc; /* Font Increment */ | 221 | /*310*/ unsigned int pad11; |
154 | /*320*/ volatile unsigned int font; /* Font bits */ | 222 | /* Reserved */ |
155 | /*324*/ unsigned int pad12[3]; /* Reserved */ | 223 | /*314*/ volatile unsigned int fontxy; |
156 | /*330*/ volatile unsigned int blend2; | 224 | /* XY Font coordinate */ |
157 | /*334*/ volatile unsigned int preblend; | 225 | /*318*/ volatile unsigned int fontw; |
158 | /*338*/ volatile unsigned int stencil; | 226 | /* Font Width */ |
159 | /*33c*/ volatile unsigned int stencilctl; | 227 | /*31c*/ volatile unsigned int fontinc; |
228 | /* Font Increment */ | ||
229 | /*320*/ volatile unsigned int font; | ||
230 | /* Font bits */ | ||
231 | /*324*/ unsigned int pad12[3]; | ||
232 | /* Reserved */ | ||
233 | /*330*/ volatile unsigned int blend2; | ||
234 | /*334*/ volatile unsigned int preblend; | ||
235 | /*338*/ volatile unsigned int stencil; | ||
236 | /*33c*/ volatile unsigned int stencilctl; | ||
160 | 237 | ||
161 | /*340*/ unsigned int pad13[4]; /* Reserved */ | 238 | /*340*/ unsigned int pad13[4]; |
162 | /*350*/ volatile unsigned int dcss1; /* Depth Cue Scale Slope 1 */ | 239 | /* Reserved */ |
163 | /*354*/ volatile unsigned int dcss2; /* Depth Cue Scale Slope 2 */ | 240 | /*350*/ volatile unsigned int dcss1; |
164 | /*358*/ volatile unsigned int dcss3; /* Depth Cue Scale Slope 3 */ | 241 | /* Depth Cue Scale Slope 1 */ |
165 | /*35c*/ volatile unsigned int widpmask; | 242 | /*354*/ volatile unsigned int dcss2; |
166 | /*360*/ volatile unsigned int dcs2; | 243 | /* Depth Cue Scale Slope 2 */ |
167 | /*364*/ volatile unsigned int dcs3; | 244 | /*358*/ volatile unsigned int dcss3; |
168 | /*368*/ volatile unsigned int dcs4; | 245 | /* Depth Cue Scale Slope 3 */ |
169 | /*36c*/ unsigned int pad14; /* Reserved */ | 246 | /*35c*/ volatile unsigned int widpmask; |
170 | /*370*/ volatile unsigned int dcd2; | 247 | /*360*/ volatile unsigned int dcs2; |
171 | /*374*/ volatile unsigned int dcd3; | 248 | /*364*/ volatile unsigned int dcs3; |
172 | /*378*/ volatile unsigned int dcd4; | 249 | /*368*/ volatile unsigned int dcs4; |
173 | /*37c*/ unsigned int pad15; /* Reserved */ | 250 | /*36c*/ unsigned int pad14; |
174 | /*380*/ volatile unsigned int pattern[32]; /* area Pattern */ | 251 | /* Reserved */ |
175 | /*400*/ unsigned int pad16[8]; /* Reserved */ | 252 | /*370*/ volatile unsigned int dcd2; |
176 | /*420*/ volatile unsigned int reset; /* chip RESET */ | 253 | /*374*/ volatile unsigned int dcd3; |
177 | /*424*/ unsigned int pad17[247]; /* Reserved */ | 254 | /*378*/ volatile unsigned int dcd4; |
178 | /*800*/ volatile unsigned int devid; /* Device ID */ | 255 | /*37c*/ unsigned int pad15; |
179 | /*804*/ unsigned int pad18[63]; /* Reserved */ | 256 | /* Reserved */ |
180 | /*900*/ volatile unsigned int ucsr; /* User Control & Status Register */ | 257 | /*380*/ volatile unsigned int pattern[32]; |
181 | /*904*/ unsigned int pad19[31]; /* Reserved */ | 258 | /* area Pattern */ |
182 | /*980*/ volatile unsigned int mer; /* Mode Enable Register */ | 259 | /*400*/ unsigned int pad16[8]; |
183 | /*984*/ unsigned int pad20[1439]; /* Reserved */ | 260 | /* Reserved */ |
261 | /*420*/ volatile unsigned int reset; | ||
262 | /* chip RESET */ | ||
263 | /*424*/ unsigned int pad17[247]; | ||
264 | /* Reserved */ | ||
265 | /*800*/ volatile unsigned int devid; | ||
266 | /* Device ID */ | ||
267 | /*804*/ unsigned int pad18[63]; | ||
268 | /* Reserved */ | ||
269 | /*900*/ volatile unsigned int ucsr; | ||
270 | /* User Control & Status Register */ | ||
271 | /*904*/ unsigned int pad19[31]; | ||
272 | /* Reserved */ | ||
273 | /*980*/ volatile unsigned int mer; | ||
274 | /* Mode Enable Register */ | ||
275 | /*984*/ unsigned int pad20[1439]; | ||
276 | /* Reserved */ | ||
184 | } ffb_fbc, *ffb_fbcPtr; | 277 | } ffb_fbc, *ffb_fbcPtr; |
185 | 278 | ||
186 | struct ffb_hw_context { | 279 | struct ffb_hw_context { |
@@ -263,16 +356,16 @@ enum ffb_chip_type { | |||
263 | 356 | ||
264 | typedef struct ffb_dev_priv { | 357 | typedef struct ffb_dev_priv { |
265 | /* Misc software state. */ | 358 | /* Misc software state. */ |
266 | int prom_node; | 359 | int prom_node; |
267 | enum ffb_chip_type ffb_type; | 360 | enum ffb_chip_type ffb_type; |
268 | u64 card_phys_base; | 361 | u64 card_phys_base; |
269 | struct miscdevice miscdev; | 362 | struct miscdevice miscdev; |
270 | 363 | ||
271 | /* Controller registers. */ | 364 | /* Controller registers. */ |
272 | ffb_fbcPtr regs; | 365 | ffb_fbcPtr regs; |
273 | 366 | ||
274 | /* Context table. */ | 367 | /* Context table. */ |
275 | struct ffb_hw_context *hw_state[FFB_MAX_CTXS]; | 368 | struct ffb_hw_context *hw_state[FFB_MAX_CTXS]; |
276 | } ffb_dev_priv_t; | 369 | } ffb_dev_priv_t; |
277 | 370 | ||
278 | extern unsigned long ffb_get_unmapped_area(struct file *filp, | 371 | extern unsigned long ffb_get_unmapped_area(struct file *filp, |
@@ -283,4 +376,4 @@ extern unsigned long ffb_get_unmapped_area(struct file *filp, | |||
283 | extern void ffb_set_context_ioctls(void); | 376 | extern void ffb_set_context_ioctls(void); |
284 | extern drm_ioctl_desc_t DRM(ioctls)[]; | 377 | extern drm_ioctl_desc_t DRM(ioctls)[]; |
285 | 378 | ||
286 | extern int ffb_driver_context_switch(drm_device_t *dev, int old, int new); | 379 | extern int ffb_driver_context_switch(drm_device_t * dev, int old, int new); |