diff options
author | Kevin E Martin <kem@kem.org> | 2001-01-05 22:57:55 +0000 |
---|---|---|
committer | Kevin E Martin <kem@kem.org> | 2001-01-05 22:57:55 +0000 |
commit | 0994e635b2f002c8e9f177037a46c26ccd98c59d (patch) | |
tree | ff9f8c1c8c5197f1690297bbaa70a8b364e6bdff /linux/r128_drm.h | |
parent | 833af23c5d21b1ab139327861d25d96dcd91af6f (diff) |
Merged ati-5-0-0
Diffstat (limited to 'linux/r128_drm.h')
-rw-r--r-- | linux/r128_drm.h | 41 |
1 files changed, 22 insertions, 19 deletions
diff --git a/linux/r128_drm.h b/linux/r128_drm.h index 68a55d5d..94dba1ed 100644 --- a/linux/r128_drm.h +++ b/linux/r128_drm.h @@ -30,8 +30,8 @@ * */ -#ifndef _R128_DRM_H_ -#define _R128_DRM_H_ +#ifndef __R128_DRM_H__ +#define __R128_DRM_H__ /* WARNING: If you change any of these defines, make sure to change the * defines in the X server file (r128_sarea.h) @@ -69,21 +69,13 @@ /* Vertex/indirect buffer size */ -#if 1 #define R128_BUFFER_SIZE 16384 -#else -#define R128_BUFFER_SIZE (128 * 1024) -#endif /* Byte offsets for indirect buffer data */ #define R128_INDEX_PRIM_OFFSET 20 #define R128_HOSTDATA_BLIT_OFFSET 32 -/* 2048x2048 @ 32bpp texture requires this many indirect buffers - */ -#define R128_MAX_BLIT_BUFFERS ((2048 * 2048 * 4) / R128_BUFFER_SIZE) - /* Keep these small for testing. */ #define R128_NR_SAREA_CLIPRECTS 12 @@ -98,7 +90,9 @@ #define R128_LOG_TEX_GRANULARITY 16 #define R128_NR_CONTEXT_REGS 12 -#define R128_TEX_MAXLEVELS 11 + +#define R128_MAX_TEXTURE_LEVELS 11 +#define R128_MAX_TEXTURE_UNITS 2 #endif /* __R128_SAREA_DEFINES__ */ @@ -137,12 +131,13 @@ typedef struct { unsigned int scale_3d_cntl; } drm_r128_context_regs_t; -/* Setup registers for each texture unit */ +/* Setup registers for each texture unit + */ typedef struct { unsigned int tex_cntl; unsigned int tex_combine_cntl; unsigned int tex_size_pitch; - unsigned int tex_offset[R128_TEX_MAXLEVELS]; + unsigned int tex_offset[R128_MAX_TEXTURE_LEVELS]; unsigned int tex_border_color; } drm_r128_texture_regs_t; @@ -158,7 +153,7 @@ typedef struct drm_r128_sarea { * on firing a vertex buffer. */ drm_r128_context_regs_t context_state; - drm_r128_texture_regs_t tex_state[R128_NR_TEX_HEAPS]; + drm_r128_texture_regs_t tex_state[R128_MAX_TEXTURE_UNITS]; unsigned int dirty; unsigned int vertsize; unsigned int vc_format; @@ -214,6 +209,13 @@ typedef struct drm_r128_cce_stop { int idle; } drm_r128_cce_stop_t; +typedef struct drm_r128_fullscreen { + enum { + R128_INIT_FULLSCREEN = 0x01, + R128_CLEANUP_FULLSCREEN = 0x02 + } func; +} drm_r128_fullscreen_t; + typedef struct drm_r128_clear { unsigned int flags; int x, y, w, h; @@ -263,10 +265,11 @@ typedef struct drm_r128_stipple { unsigned int *mask; } drm_r128_stipple_t; -typedef struct drm_r128_packet { - unsigned int *buffer; - int count; - int flags; -} drm_r128_packet_t; +typedef struct drm_r128_indirect { + int idx; + int start; + int end; + int discard; +} drm_r128_indirect_t; #endif |