diff options
Diffstat (limited to 'linux/r128_drm.h')
-rw-r--r-- | linux/r128_drm.h | 44 |
1 files changed, 26 insertions, 18 deletions
diff --git a/linux/r128_drm.h b/linux/r128_drm.h index 756e33c3..68a55d5d 100644 --- a/linux/r128_drm.h +++ b/linux/r128_drm.h @@ -94,7 +94,7 @@ #define R128_LOCAL_TEX_HEAP 0 #define R128_AGP_TEX_HEAP 1 #define R128_NR_TEX_HEAPS 2 -#define R128_NR_TEX_REGIONS 16 +#define R128_NR_TEX_REGIONS 64 #define R128_LOG_TEX_GRANULARITY 16 #define R128_NR_CONTEXT_REGS 12 @@ -147,11 +147,11 @@ typedef struct { } drm_r128_texture_regs_t; -typedef struct drm_r128_tex_region { +typedef struct drm_tex_region { unsigned char next, prev; unsigned char in_use; int age; -} drm_r128_tex_region_t; +} drm_tex_region_t; typedef struct drm_r128_sarea { /* The channel for communication of state information to the kernel @@ -173,7 +173,7 @@ typedef struct drm_r128_sarea { unsigned int last_frame; unsigned int last_dispatch; - drm_r128_tex_region_t tex_list[R128_NR_TEX_HEAPS][R128_NR_TEX_REGIONS+1]; + drm_tex_region_t tex_list[R128_NR_TEX_HEAPS][R128_NR_TEX_REGIONS+1]; int tex_age[R128_NR_TEX_HEAPS]; int ctx_owner; } drm_r128_sarea_t; @@ -196,12 +196,10 @@ typedef struct drm_r128_init { unsigned int fb_bpp; unsigned int front_offset, front_pitch; - unsigned int front_x, front_y; unsigned int back_offset, back_pitch; - unsigned int back_x, back_y; unsigned int depth_bpp; unsigned int depth_offset, depth_pitch; - unsigned int depth_x, depth_y; + unsigned int span_offset; unsigned int fb_offset; unsigned int mmio_offset; @@ -221,8 +219,6 @@ typedef struct drm_r128_clear { int x, y, w, h; unsigned int clear_color; unsigned int clear_depth; - unsigned int color_mask; - unsigned int depth_mask; } drm_r128_clear_t; typedef struct drm_r128_vertex { @@ -240,21 +236,33 @@ typedef struct drm_r128_indices { int discard; /* Client finished with buffer? */ } drm_r128_indices_t; -typedef struct drm_r128_blit_rect { - int index; - unsigned short x, y; - unsigned short width, height; - int padding; -} drm_r128_blit_rect_t; - typedef struct drm_r128_blit { + int idx; int pitch; int offset; int format; - drm_r128_blit_rect_t *rects; - int count; + unsigned short x, y; + unsigned short width, height; } drm_r128_blit_t; +typedef struct drm_r128_depth { + enum { + R128_WRITE_SPAN = 0x01, + R128_WRITE_PIXELS = 0x02, + R128_READ_SPAN = 0x03, + R128_READ_PIXELS = 0x04 + } func; + int n; + int *x; + int *y; + unsigned int *buffer; + unsigned char *mask; +} drm_r128_depth_t; + +typedef struct drm_r128_stipple { + unsigned int *mask; +} drm_r128_stipple_t; + typedef struct drm_r128_packet { unsigned int *buffer; int count; |