summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/i965/brw_screen_texture.c
diff options
context:
space:
mode:
authorKeith Whitwell <keithw@vmware.com>2009-11-05 10:59:02 +0000
committerKeith Whitwell <keithw@vmware.com>2009-11-05 10:59:02 +0000
commit6ac38232ee1ebde5ed390e3ccc22cba59ad00854 (patch)
tree52a16150ad90340a400de478e93c569e99d29609 /src/gallium/drivers/i965/brw_screen_texture.c
parentb2bf5f98d923b8d52473e069576fc6514c0ffd0a (diff)
i965g: add data type tags to aid dumping/decoding
Diffstat (limited to 'src/gallium/drivers/i965/brw_screen_texture.c')
-rw-r--r--src/gallium/drivers/i965/brw_screen_texture.c18
1 files changed, 7 insertions, 11 deletions
diff --git a/src/gallium/drivers/i965/brw_screen_texture.c b/src/gallium/drivers/i965/brw_screen_texture.c
index c318b07f97a..ba6dc7dfdee 100644
--- a/src/gallium/drivers/i965/brw_screen_texture.c
+++ b/src/gallium/drivers/i965/brw_screen_texture.c
@@ -186,6 +186,7 @@ static struct pipe_texture *brw_texture_create( struct pipe_screen *screen,
{
struct brw_screen *bscreen = brw_screen(screen);
struct brw_texture *tex;
+ enum brw_buffer_type buffer_type;
tex = CALLOC_STRUCT(brw_texture);
if (tex == NULL)
@@ -226,21 +227,16 @@ static struct pipe_texture *brw_texture_create( struct pipe_screen *screen,
goto fail;
- if (templ->tex_usage & PIPE_TEXTURE_USAGE_RENDER_TARGET) {
- }
- else if (templ->tex_usage & (PIPE_TEXTURE_USAGE_DISPLAY_TARGET |
- PIPE_TEXTURE_USAGE_PRIMARY)) {
- }
- else if (templ->tex_usage & PIPE_TEXTURE_USAGE_DEPTH_STENCIL) {
- }
- else if (templ->tex_usage & PIPE_TEXTURE_USAGE_SAMPLER) {
+ if (templ->tex_usage & (PIPE_TEXTURE_USAGE_DISPLAY_TARGET |
+ PIPE_TEXTURE_USAGE_PRIMARY)) {
+ buffer_type = BRW_BUFFER_TYPE_SCANOUT;
}
-
- if (templ->tex_usage & PIPE_TEXTURE_USAGE_DYNAMIC) {
+ else {
+ buffer_type = BRW_BUFFER_TYPE_TEXTURE;
}
tex->bo = bscreen->sws->bo_alloc( bscreen->sws,
- BRW_USAGE_SAMPLER,
+ buffer_type,
tex->pitch * tex->total_height * tex->cpp,
64 );