Subversion Repositories Kolibri OS

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
5078 serge 1
 
2
#define R200_TRACK_MAX_TEXTURE 6
3
#define R300_TRACK_MAX_TEXTURE 16
4
5
 
6
#define R300_MAX_CB 4
7
8
 
9
 * CS functions
10
 */
11
struct r100_cs_track_cb {
12
	struct radeon_bo	*robj;
13
	unsigned		pitch;
14
	unsigned		cpp;
15
	unsigned		offset;
16
};
17
18
 
19
	struct radeon_bo	*robj;
20
	unsigned		esize;
21
};
22
23
 
24
	struct radeon_bo	*robj;
25
	unsigned		offset;
26
	unsigned		width;
27
	unsigned		height;
28
};
29
30
 
31
#define R100_TRACK_COMP_DXT1   1
32
#define R100_TRACK_COMP_DXT35  2
33
34
 
35
	struct radeon_bo	*robj;
36
	struct r100_cs_cube_info cube_info[5]; /* info for 5 non-primary faces */
37
	unsigned		pitch;
38
	unsigned		width;
39
	unsigned		height;
40
	unsigned		num_levels;
41
	unsigned		cpp;
42
	unsigned		tex_coord_type;
43
	unsigned		txdepth;
44
	unsigned		width_11;
45
	unsigned		height_11;
46
	bool			use_pitch;
47
	bool			enabled;
48
	bool                    lookup_disable;
49
	bool			roundup_w;
50
	bool			roundup_h;
51
	unsigned                compress_format;
52
};
53
54
 
55
	unsigned			num_cb;
56
	unsigned                        num_texture;
57
	unsigned			maxy;
58
	unsigned			vtx_size;
59
	unsigned			vap_vf_cntl;
60
	unsigned			vap_alt_nverts;
61
	unsigned			immd_dwords;
62
	unsigned			num_arrays;
63
	unsigned			max_indx;
64
	unsigned			color_channel_mask;
65
	struct r100_cs_track_array	arrays[16];
66
	struct r100_cs_track_cb 	cb[R300_MAX_CB];
67
	struct r100_cs_track_cb 	zb;
68
	struct r100_cs_track_cb 	aa;
69
	struct r100_cs_track_texture	textures[R300_TRACK_MAX_TEXTURE];
70
	bool				z_enabled;
71
	bool                            separate_cube;
72
	bool				zb_cb_clear;
73
	bool				blend_read_enable;
74
	bool				cb_dirty;
75
	bool				zb_dirty;
76
	bool				tex_dirty;
77
	bool				aa_dirty;
78
	bool				aaresolve;
79
};
80
81
 
82
void r100_cs_track_clear(struct radeon_device *rdev, struct r100_cs_track *track);
83
84
 
85
86
 
87
		       struct radeon_cs_packet *pkt,
88
		       unsigned idx, unsigned reg);
89
90
 
91
			    struct radeon_cs_packet *pkt,
92
			    unsigned idx,
93
			    unsigned reg);
94
int r100_packet3_load_vbpntr(struct radeon_cs_parser *p,
95
			     struct radeon_cs_packet *pkt,
96
			     int idx);
97