Details | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
808 | serge | 1 | |
2 | #define DRAW_RECT 2 |
||
3 | #define LINE_2P 3 |
||
4 | #define BLIT 4 |
||
810 | serge | 5 | |
808 | serge | 6 | |
810 | serge | 7 | |
808 | serge | 8 | typedef unsigned int u32_t; |
9 | |||
10 | |||
11 | { |
||
12 | int x; |
||
13 | int y; |
||
14 | int w; |
||
15 | int h; |
||
16 | u32 color; |
||
17 | }draw_t; |
||
18 | |||
19 | |||
20 | { |
||
21 | int x; |
||
22 | int y; |
||
23 | int w; |
||
24 | int h; |
||
25 | |||
26 | |||
27 | color_t fcolor; |
||
28 | |||
29 | |||
30 | u32_t bmp1; |
||
31 | }fill_t; |
||
32 | |||
33 | |||
34 | { |
||
35 | int src_x; |
||
810 | serge | 36 | int src_y; |
37 | int dst_x; |
||
38 | int dst_y; |
||
39 | int w; |
||
40 | int h; |
||
41 | }blit_t; |
||
42 | |||
43 | |||
44 | { |
||
45 | int x0; |
||
808 | serge | 46 | int y0; |
47 | int x1; |
||
48 | int y1; |
||
49 | u32 color; |
||
50 | }line2p_t; |
||
51 | |||
52 | |||
53 | int BlockClip( int *x1, int *y1, int *x2, int* y2); |
||
54 | |||
55 | |||
56 | int FillRect(fill_t * fill); |
||
57 | |||
58 | |||
59 | |||
60 | |||
810 | serge | 61 | |
808 | serge | 62 | |
63 | # define RADEON_GMC_DST_PITCH_OFFSET_CNTL (1 << 1) |
||
64 | # define RADEON_GMC_BRUSH_SOLID_COLOR (13 << 4) |
||
65 | # define RADEON_GMC_BRUSH_NONE (15 << 4) |
||
66 | # define RADEON_GMC_DST_16BPP (4 << 8) |
||
67 | # define RADEON_GMC_DST_24BPP (5 << 8) |
||
68 | # define RADEON_GMC_DST_32BPP (6 << 8) |
||
69 | # define RADEON_GMC_DST_DATATYPE_SHIFT 8 |
||
70 | # define RADEON_GMC_SRC_DATATYPE_COLOR (3 << 12) |
||
71 | # define RADEON_DP_SRC_SOURCE_MEMORY (2 << 24) |
||
72 | # define RADEON_DP_SRC_SOURCE_HOST_DATA (3 << 24) |
||
73 | # define RADEON_GMC_CLR_CMP_CNTL_DIS (1 << 28) |
||
74 | # define RADEON_GMC_WR_MSK_DIS (1 << 30) |
||
75 | # define RADEON_ROP3_S 0x00cc0000 |
||
76 | # define RADEON_ROP3_P 0x00f00000 |
||
77 | |||
78 | |||
79 | |||
80 | |||
81 | # define RADEON_CNTL_BITBLT 0x00009200 |
||
810 | serge | 82 | |
83 | |||
808 | serge | 84 | # define RADEON_CNTL_PAINT_MULTI 0x00009A00 |
85 | |||
86 | |||
87 | (RADEON_CP_PACKET3 | (pkt) | ((n) << 16)) |
||
88 | |||
89 | |||
90 | ring = rhd.ring_base; \ |
||
91 | write = rhd.ring_wp; \ |
||
92 | } while (0) |
||
93 | |||
94 | |||
95 | ring[write++] = (x); \ |
||
96 | } while (0) |
||
97 | |||
98 | |||
99 | |||
100 | |||
101 | rhd.ring_wp = write & 0x1FFF; \ |
||
102 | /* Flush writes to ring */ \ |
||
103 | DRM_MEMORYBARRIER(); \ |
||
104 | /*GET_RING_HEAD( dev_priv ); */ \ |
||
105 | OUTREG( RADEON_CP_RB_WPTR, rhd.ring_wp); \ |
||
106 | /* read from PCI bus to ensure correct posting */ \ |
||
107 | INREG( RADEON_CP_RB_RPTR ); \ |
||
108 | } while (0)><>><>><>><>><>><>><>><>><>><>><>><>><> |
||
109 |