Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
r600_blit_shaders.c
Go to the documentation of this file.
1 /*
2  * Copyright 2009 Advanced Micro Devices, Inc.
3  *
4  * Permission is hereby granted, free of charge, to any person obtaining a
5  * copy of this software and associated documentation files (the "Software"),
6  * to deal in the Software without restriction, including without limitation
7  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
8  * and/or sell copies of the Software, and to permit persons to whom the
9  * Software is furnished to do so, subject to the following conditions:
10  *
11  * The above copyright notice and this permission notice (including the next
12  * paragraph) shall be included in all copies or substantial portions of the
13  * Software.
14  *
15  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
18  * THE COPYRIGHT HOLDER(S) AND/OR ITS SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
19  * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
20  * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
21  * DEALINGS IN THE SOFTWARE.
22  *
23  * Authors:
24  * Alex Deucher <[email protected]>
25  */
26 
27 #include <linux/bug.h>
28 #include <linux/types.h>
29 #include <linux/kernel.h>
30 
31 /*
32  * R6xx+ cards need to use the 3D engine to blit data which requires
33  * quite a bit of hw state setup. Rather than pull the whole 3D driver
34  * (which normally generates the 3D state) into the DRM, we opt to use
35  * statically generated state tables. The regsiter state and shaders
36  * were hand generated to support blitting functionality. See the 3D
37  * driver or documentation for descriptions of the registers and
38  * shader instructions.
39  */
40 
42 {
43  0xc0002400, /* START_3D_CMDBUF */
44  0x00000000,
45 
46  0xc0012800, /* CONTEXT_CONTROL */
47  0x80000000,
48  0x80000000,
49 
50  0xc0016800,
51  0x00000010,
52  0x00008000, /* WAIT_UNTIL */
53 
54  0xc0016800,
55  0x00000542,
56  0x07000003, /* TA_CNTL_AUX */
57 
58  0xc0016800,
59  0x000005c5,
60  0x00000000, /* VC_ENHANCE */
61 
62  0xc0016800,
63  0x00000363,
64  0x00000000, /* SQ_DYN_GPR_CNTL_PS_FLUSH_REQ */
65 
66  0xc0016800,
67  0x0000060c,
68  0x82000000, /* DB_DEBUG */
69 
70  0xc0016800,
71  0x0000060e,
72  0x01020204, /* DB_WATERMARKS */
73 
74  0xc0026f00,
75  0x00000000,
76  0x00000000, /* SQ_VTX_BASE_VTX_LOC */
77  0x00000000, /* SQ_VTX_START_INST_LOC */
78 
79  0xc0096900,
80  0x0000022a,
81  0x00000000, /* SQ_ESGS_RING_ITEMSIZE */
82  0x00000000,
83  0x00000000,
84  0x00000000,
85  0x00000000,
86  0x00000000,
87  0x00000000,
88  0x00000000,
89  0x00000000,
90 
91  0xc0016900,
92  0x00000004,
93  0x00000000, /* DB_DEPTH_INFO */
94 
95  0xc0026900,
96  0x0000000a,
97  0x00000000, /* DB_STENCIL_CLEAR */
98  0x00000000, /* DB_DEPTH_CLEAR */
99 
100  0xc0016900,
101  0x00000200,
102  0x00000000, /* DB_DEPTH_CONTROL */
103 
104  0xc0026900,
105  0x00000343,
106  0x00000060, /* DB_RENDER_CONTROL */
107  0x00000040, /* DB_RENDER_OVERRIDE */
108 
109  0xc0016900,
110  0x00000351,
111  0x0000aa00, /* DB_ALPHA_TO_MASK */
112 
113  0xc00f6900,
114  0x00000100,
115  0x00000800, /* VGT_MAX_VTX_INDX */
116  0x00000000, /* VGT_MIN_VTX_INDX */
117  0x00000000, /* VGT_INDX_OFFSET */
118  0x00000000, /* VGT_MULTI_PRIM_IB_RESET_INDX */
119  0x00000000, /* SX_ALPHA_TEST_CONTROL */
120  0x00000000, /* CB_BLEND_RED */
121  0x00000000,
122  0x00000000,
123  0x00000000,
124  0x00000000, /* CB_FOG_RED */
125  0x00000000,
126  0x00000000,
127  0x00000000, /* DB_STENCILREFMASK */
128  0x00000000, /* DB_STENCILREFMASK_BF */
129  0x00000000, /* SX_ALPHA_REF */
130 
131  0xc0046900,
132  0x0000030c,
133  0x01000000, /* CB_CLRCMP_CNTL */
134  0x00000000,
135  0x00000000,
136  0x00000000,
137 
138  0xc0046900,
139  0x00000048,
140  0x3f800000, /* CB_CLEAR_RED */
141  0x00000000,
142  0x3f800000,
143  0x3f800000,
144 
145  0xc0016900,
146  0x00000080,
147  0x00000000, /* PA_SC_WINDOW_OFFSET */
148 
149  0xc00a6900,
150  0x00000083,
151  0x0000ffff, /* PA_SC_CLIP_RECT_RULE */
152  0x00000000, /* PA_SC_CLIPRECT_0_TL */
153  0x20002000,
154  0x00000000,
155  0x20002000,
156  0x00000000,
157  0x20002000,
158  0x00000000,
159  0x20002000,
160  0x00000000, /* PA_SC_EDGERULE */
161 
162  0xc0406900,
163  0x00000094,
164  0x80000000, /* PA_SC_VPORT_SCISSOR_0_TL */
165  0x20002000, /* PA_SC_VPORT_SCISSOR_0_BR */
166  0x80000000, /* PA_SC_VPORT_SCISSOR_1_TL */
167  0x20002000,
168  0x80000000,
169  0x20002000,
170  0x80000000,
171  0x20002000,
172  0x80000000,
173  0x20002000,
174  0x80000000,
175  0x20002000,
176  0x80000000,
177  0x20002000,
178  0x80000000,
179  0x20002000,
180  0x80000000,
181  0x20002000,
182  0x80000000,
183  0x20002000,
184  0x80000000,
185  0x20002000,
186  0x80000000,
187  0x20002000,
188  0x80000000,
189  0x20002000,
190  0x80000000,
191  0x20002000,
192  0x80000000,
193  0x20002000,
194  0x80000000,
195  0x20002000,
196  0x00000000, /* PA_SC_VPORT_ZMIN_0 */
197  0x3f800000,
198  0x00000000,
199  0x3f800000,
200  0x00000000,
201  0x3f800000,
202  0x00000000,
203  0x3f800000,
204  0x00000000,
205  0x3f800000,
206  0x00000000,
207  0x3f800000,
208  0x00000000,
209  0x3f800000,
210  0x00000000,
211  0x3f800000,
212  0x00000000,
213  0x3f800000,
214  0x00000000,
215  0x3f800000,
216  0x00000000,
217  0x3f800000,
218  0x00000000,
219  0x3f800000,
220  0x00000000,
221  0x3f800000,
222  0x00000000,
223  0x3f800000,
224  0x00000000,
225  0x3f800000,
226  0x00000000,
227  0x3f800000,
228 
229  0xc0026900,
230  0x00000292,
231  0x00000000, /* PA_SC_MPASS_PS_CNTL */
232  0x00004010, /* PA_SC_MODE_CNTL */
233 
234  0xc0096900,
235  0x00000300,
236  0x00000000, /* PA_SC_LINE_CNTL */
237  0x00000000, /* PA_SC_AA_CONFIG */
238  0x0000002d, /* PA_SU_VTX_CNTL */
239  0x3f800000, /* PA_CL_GB_VERT_CLIP_ADJ */
240  0x3f800000,
241  0x3f800000,
242  0x3f800000,
243  0x00000000, /* PA_SC_SAMPLE_LOCS_MCTX */
244  0x00000000,
245 
246  0xc0016900,
247  0x00000312,
248  0xffffffff, /* PA_SC_AA_MASK */
249 
250  0xc0066900,
251  0x0000037e,
252  0x00000000, /* PA_SU_POLY_OFFSET_DB_FMT_CNTL */
253  0x00000000, /* PA_SU_POLY_OFFSET_CLAMP */
254  0x00000000, /* PA_SU_POLY_OFFSET_FRONT_SCALE */
255  0x00000000, /* PA_SU_POLY_OFFSET_FRONT_OFFSET */
256  0x00000000, /* PA_SU_POLY_OFFSET_BACK_SCALE */
257  0x00000000, /* PA_SU_POLY_OFFSET_BACK_OFFSET */
258 
259  0xc0046900,
260  0x000001b6,
261  0x00000000, /* SPI_INPUT_Z */
262  0x00000000, /* SPI_FOG_CNTL */
263  0x00000000, /* SPI_FOG_FUNC_SCALE */
264  0x00000000, /* SPI_FOG_FUNC_BIAS */
265 
266  0xc0016900,
267  0x00000225,
268  0x00000000, /* SQ_PGM_START_FS */
269 
270  0xc0016900,
271  0x00000229,
272  0x00000000, /* SQ_PGM_RESOURCES_FS */
273 
274  0xc0016900,
275  0x00000237,
276  0x00000000, /* SQ_PGM_CF_OFFSET_FS */
277 
278  0xc0026900,
279  0x000002a8,
280  0x00000000, /* VGT_INSTANCE_STEP_RATE_0 */
281  0x00000000, /* VGT_INSTANCE_STEP_RATE_1 */
282 
283  0xc0116900,
284  0x00000280,
285  0x00000000, /* PA_SU_POINT_SIZE */
286  0x00000000, /* PA_SU_POINT_MINMAX */
287  0x00000008, /* PA_SU_LINE_CNTL */
288  0x00000000, /* PA_SC_LINE_STIPPLE */
289  0x00000000, /* VGT_OUTPUT_PATH_CNTL */
290  0x00000000, /* VGT_HOS_CNTL */
291  0x00000000, /* VGT_HOS_MAX_TESS_LEVEL */
292  0x00000000, /* VGT_HOS_MIN_TESS_LEVEL */
293  0x00000000, /* VGT_HOS_REUSE_DEPTH */
294  0x00000000, /* VGT_GROUP_PRIM_TYPE */
295  0x00000000, /* VGT_GROUP_FIRST_DECR */
296  0x00000000, /* VGT_GROUP_DECR */
297  0x00000000, /* VGT_GROUP_VECT_0_CNTL */
298  0x00000000, /* VGT_GROUP_VECT_1_CNTL */
299  0x00000000, /* VGT_GROUP_VECT_0_FMT_CNTL */
300  0x00000000, /* VGT_GROUP_VECT_1_FMT_CNTL */
301  0x00000000, /* VGT_GS_MODE */
302 
303  0xc0016900,
304  0x000002a1,
305  0x00000000, /* VGT_PRIMITIVEID_EN */
306 
307  0xc0016900,
308  0x000002a5,
309  0x00000000, /* VGT_MULTI_PRIM_ID_RESET_EN */
310 
311  0xc0036900,
312  0x000002ac,
313  0x00000000, /* VGT_STRMOUT_EN */
314  0x00000000, /* VGT_REUSE_OFF */
315  0x00000000, /* VGT_VTX_CNT_EN */
316 
317  0xc0016900,
318  0x000000d4,
319  0x00000000, /* SX_MISC */
320 
321  0xc0016900,
322  0x000002c8,
323  0x00000000, /* VGT_STRMOUT_BUFFER_EN */
324 
325  0xc0076900,
326  0x00000202,
327  0x00cc0000, /* CB_COLOR_CONTROL */
328  0x00000210, /* DB_SHADER_CNTL */
329  0x00010000, /* PA_CL_CLIP_CNTL */
330  0x00000244, /* PA_SU_SC_MODE_CNTL */
331  0x00000100, /* PA_CL_VTE_CNTL */
332  0x00000000, /* PA_CL_VS_OUT_CNTL */
333  0x00000000, /* PA_CL_NANINF_CNTL */
334 
335  0xc0026900,
336  0x0000008e,
337  0x0000000f, /* CB_TARGET_MASK */
338  0x0000000f, /* CB_SHADER_MASK */
339 
340  0xc0016900,
341  0x000001e8,
342  0x00000001, /* CB_SHADER_CONTROL */
343 
344  0xc0016900,
345  0x00000185,
346  0x00000000, /* SPI_VS_OUT_ID_0 */
347 
348  0xc0016900,
349  0x00000191,
350  0x00000b00, /* SPI_PS_INPUT_CNTL_0 */
351 
352  0xc0056900,
353  0x000001b1,
354  0x00000000, /* SPI_VS_OUT_CONFIG */
355  0x00000000, /* SPI_THREAD_GROUPING */
356  0x00000001, /* SPI_PS_IN_CONTROL_0 */
357  0x00000000, /* SPI_PS_IN_CONTROL_1 */
358  0x00000000, /* SPI_INTERP_CONTROL_0 */
359 
360  0xc0036e00, /* SET_SAMPLER */
361  0x00000000,
362  0x00000012,
363  0x00000000,
364  0x00000000,
365 };
366 
368 {
369  0xc0012800, /* CONTEXT_CONTROL */
370  0x80000000,
371  0x80000000,
372 
373  0xc0016800,
374  0x00000010,
375  0x00008000, /* WAIT_UNTIL */
376 
377  0xc0016800,
378  0x00000542,
379  0x07000002, /* TA_CNTL_AUX */
380 
381  0xc0016800,
382  0x000005c5,
383  0x00000000, /* VC_ENHANCE */
384 
385  0xc0016800,
386  0x00000363,
387  0x00004000, /* SQ_DYN_GPR_CNTL_PS_FLUSH_REQ */
388 
389  0xc0016800,
390  0x0000060c,
391  0x00000000, /* DB_DEBUG */
392 
393  0xc0016800,
394  0x0000060e,
395  0x00420204, /* DB_WATERMARKS */
396 
397  0xc0026f00,
398  0x00000000,
399  0x00000000, /* SQ_VTX_BASE_VTX_LOC */
400  0x00000000, /* SQ_VTX_START_INST_LOC */
401 
402  0xc0096900,
403  0x0000022a,
404  0x00000000, /* SQ_ESGS_RING_ITEMSIZE */
405  0x00000000,
406  0x00000000,
407  0x00000000,
408  0x00000000,
409  0x00000000,
410  0x00000000,
411  0x00000000,
412  0x00000000,
413 
414  0xc0016900,
415  0x00000004,
416  0x00000000, /* DB_DEPTH_INFO */
417 
418  0xc0026900,
419  0x0000000a,
420  0x00000000, /* DB_STENCIL_CLEAR */
421  0x00000000, /* DB_DEPTH_CLEAR */
422 
423  0xc0016900,
424  0x00000200,
425  0x00000000, /* DB_DEPTH_CONTROL */
426 
427  0xc0026900,
428  0x00000343,
429  0x00000060, /* DB_RENDER_CONTROL */
430  0x00000000, /* DB_RENDER_OVERRIDE */
431 
432  0xc0016900,
433  0x00000351,
434  0x0000aa00, /* DB_ALPHA_TO_MASK */
435 
436  0xc0096900,
437  0x00000100,
438  0x00000800, /* VGT_MAX_VTX_INDX */
439  0x00000000, /* VGT_MIN_VTX_INDX */
440  0x00000000, /* VGT_INDX_OFFSET */
441  0x00000000, /* VGT_MULTI_PRIM_IB_RESET_INDX */
442  0x00000000, /* SX_ALPHA_TEST_CONTROL */
443  0x00000000, /* CB_BLEND_RED */
444  0x00000000,
445  0x00000000,
446  0x00000000,
447 
448  0xc0036900,
449  0x0000010c,
450  0x00000000, /* DB_STENCILREFMASK */
451  0x00000000, /* DB_STENCILREFMASK_BF */
452  0x00000000, /* SX_ALPHA_REF */
453 
454  0xc0046900,
455  0x0000030c, /* CB_CLRCMP_CNTL */
456  0x01000000,
457  0x00000000,
458  0x00000000,
459  0x00000000,
460 
461  0xc0016900,
462  0x00000080,
463  0x00000000, /* PA_SC_WINDOW_OFFSET */
464 
465  0xc00a6900,
466  0x00000083,
467  0x0000ffff, /* PA_SC_CLIP_RECT_RULE */
468  0x00000000, /* PA_SC_CLIPRECT_0_TL */
469  0x20002000,
470  0x00000000,
471  0x20002000,
472  0x00000000,
473  0x20002000,
474  0x00000000,
475  0x20002000,
476  0xaaaaaaaa, /* PA_SC_EDGERULE */
477 
478  0xc0406900,
479  0x00000094,
480  0x80000000, /* PA_SC_VPORT_SCISSOR_0_TL */
481  0x20002000, /* PA_SC_VPORT_SCISSOR_0_BR */
482  0x80000000, /* PA_SC_VPORT_SCISSOR_1_TL */
483  0x20002000,
484  0x80000000,
485  0x20002000,
486  0x80000000,
487  0x20002000,
488  0x80000000,
489  0x20002000,
490  0x80000000,
491  0x20002000,
492  0x80000000,
493  0x20002000,
494  0x80000000,
495  0x20002000,
496  0x80000000,
497  0x20002000,
498  0x80000000,
499  0x20002000,
500  0x80000000,
501  0x20002000,
502  0x80000000,
503  0x20002000,
504  0x80000000,
505  0x20002000,
506  0x80000000,
507  0x20002000,
508  0x80000000,
509  0x20002000,
510  0x80000000,
511  0x20002000,
512  0x00000000, /* PA_SC_VPORT_ZMIN_0 */
513  0x3f800000,
514  0x00000000,
515  0x3f800000,
516  0x00000000,
517  0x3f800000,
518  0x00000000,
519  0x3f800000,
520  0x00000000,
521  0x3f800000,
522  0x00000000,
523  0x3f800000,
524  0x00000000,
525  0x3f800000,
526  0x00000000,
527  0x3f800000,
528  0x00000000,
529  0x3f800000,
530  0x00000000,
531  0x3f800000,
532  0x00000000,
533  0x3f800000,
534  0x00000000,
535  0x3f800000,
536  0x00000000,
537  0x3f800000,
538  0x00000000,
539  0x3f800000,
540  0x00000000,
541  0x3f800000,
542  0x00000000,
543  0x3f800000,
544 
545  0xc0026900,
546  0x00000292,
547  0x00000000, /* PA_SC_MPASS_PS_CNTL */
548  0x00514000, /* PA_SC_MODE_CNTL */
549 
550  0xc0096900,
551  0x00000300,
552  0x00000000, /* PA_SC_LINE_CNTL */
553  0x00000000, /* PA_SC_AA_CONFIG */
554  0x0000002d, /* PA_SU_VTX_CNTL */
555  0x3f800000, /* PA_CL_GB_VERT_CLIP_ADJ */
556  0x3f800000,
557  0x3f800000,
558  0x3f800000,
559  0x00000000, /* PA_SC_SAMPLE_LOCS_MCTX */
560  0x00000000,
561 
562  0xc0016900,
563  0x00000312,
564  0xffffffff, /* PA_SC_AA_MASK */
565 
566  0xc0066900,
567  0x0000037e,
568  0x00000000, /* PA_SU_POLY_OFFSET_DB_FMT_CNTL */
569  0x00000000, /* PA_SU_POLY_OFFSET_CLAMP */
570  0x00000000, /* PA_SU_POLY_OFFSET_FRONT_SCALE */
571  0x00000000, /* PA_SU_POLY_OFFSET_FRONT_OFFSET */
572  0x00000000, /* PA_SU_POLY_OFFSET_BACK_SCALE */
573  0x00000000, /* PA_SU_POLY_OFFSET_BACK_OFFSET */
574 
575  0xc0046900,
576  0x000001b6,
577  0x00000000, /* SPI_INPUT_Z */
578  0x00000000, /* SPI_FOG_CNTL */
579  0x00000000, /* SPI_FOG_FUNC_SCALE */
580  0x00000000, /* SPI_FOG_FUNC_BIAS */
581 
582  0xc0016900,
583  0x00000225,
584  0x00000000, /* SQ_PGM_START_FS */
585 
586  0xc0016900,
587  0x00000229,
588  0x00000000, /* SQ_PGM_RESOURCES_FS */
589 
590  0xc0016900,
591  0x00000237,
592  0x00000000, /* SQ_PGM_CF_OFFSET_FS */
593 
594  0xc0026900,
595  0x000002a8,
596  0x00000000, /* VGT_INSTANCE_STEP_RATE_0 */
597  0x00000000, /* VGT_INSTANCE_STEP_RATE_1 */
598 
599  0xc0116900,
600  0x00000280,
601  0x00000000, /* PA_SU_POINT_SIZE */
602  0x00000000, /* PA_SU_POINT_MINMAX */
603  0x00000008, /* PA_SU_LINE_CNTL */
604  0x00000000, /* PA_SC_LINE_STIPPLE */
605  0x00000000, /* VGT_OUTPUT_PATH_CNTL */
606  0x00000000, /* VGT_HOS_CNTL */
607  0x00000000, /* VGT_HOS_MAX_TESS_LEVEL */
608  0x00000000, /* VGT_HOS_MIN_TESS_LEVEL */
609  0x00000000, /* VGT_HOS_REUSE_DEPTH */
610  0x00000000, /* VGT_GROUP_PRIM_TYPE */
611  0x00000000, /* VGT_GROUP_FIRST_DECR */
612  0x00000000, /* VGT_GROUP_DECR */
613  0x00000000, /* VGT_GROUP_VECT_0_CNTL */
614  0x00000000, /* VGT_GROUP_VECT_1_CNTL */
615  0x00000000, /* VGT_GROUP_VECT_0_FMT_CNTL */
616  0x00000000, /* VGT_GROUP_VECT_1_FMT_CNTL */
617  0x00000000, /* VGT_GS_MODE */
618 
619  0xc0016900,
620  0x000002a1,
621  0x00000000, /* VGT_PRIMITIVEID_EN */
622 
623  0xc0016900,
624  0x000002a5,
625  0x00000000, /* VGT_MULTI_PRIM_ID_RESET_EN */
626 
627  0xc0036900,
628  0x000002ac,
629  0x00000000, /* VGT_STRMOUT_EN */
630  0x00000000, /* VGT_REUSE_OFF */
631  0x00000000, /* VGT_VTX_CNT_EN */
632 
633  0xc0016900,
634  0x000000d4,
635  0x00000000, /* SX_MISC */
636 
637  0xc0016900,
638  0x000002c8,
639  0x00000000, /* VGT_STRMOUT_BUFFER_EN */
640 
641  0xc0076900,
642  0x00000202,
643  0x00cc0000, /* CB_COLOR_CONTROL */
644  0x00000210, /* DB_SHADER_CNTL */
645  0x00010000, /* PA_CL_CLIP_CNTL */
646  0x00000244, /* PA_SU_SC_MODE_CNTL */
647  0x00000100, /* PA_CL_VTE_CNTL */
648  0x00000000, /* PA_CL_VS_OUT_CNTL */
649  0x00000000, /* PA_CL_NANINF_CNTL */
650 
651  0xc0026900,
652  0x0000008e,
653  0x0000000f, /* CB_TARGET_MASK */
654  0x0000000f, /* CB_SHADER_MASK */
655 
656  0xc0016900,
657  0x000001e8,
658  0x00000001, /* CB_SHADER_CONTROL */
659 
660  0xc0016900,
661  0x00000185,
662  0x00000000, /* SPI_VS_OUT_ID_0 */
663 
664  0xc0016900,
665  0x00000191,
666  0x00000b00, /* SPI_PS_INPUT_CNTL_0 */
667 
668  0xc0056900,
669  0x000001b1,
670  0x00000000, /* SPI_VS_OUT_CONFIG */
671  0x00000001, /* SPI_THREAD_GROUPING */
672  0x00000001, /* SPI_PS_IN_CONTROL_0 */
673  0x00000000, /* SPI_PS_IN_CONTROL_1 */
674  0x00000000, /* SPI_INTERP_CONTROL_0 */
675 
676  0xc0036e00, /* SET_SAMPLER */
677  0x00000000,
678  0x00000012,
679  0x00000000,
680  0x00000000,
681 };
682 
683 /* same for r6xx/r7xx */
684 const u32 r6xx_vs[] =
685 {
686  0x00000004,
687  0x81000000,
688  0x0000203c,
689  0x94000b08,
690  0x00004000,
691  0x14200b1a,
692  0x00000000,
693  0x00000000,
694  0x3c000000,
695  0x68cd1000,
696 #ifdef __BIG_ENDIAN
697  0x000a0000,
698 #else
699  0x00080000,
700 #endif
701  0x00000000,
702 };
703 
704 const u32 r6xx_ps[] =
705 {
706  0x00000002,
707  0x80800000,
708  0x00000000,
709  0x94200688,
710  0x00000010,
711  0x000d1000,
712  0xb0800000,
713  0x00000000,
714 };
715