From: Pauli Nieminen Date: Wed, 10 Feb 2010 01:00:12 +0000 (+0200) Subject: radeon: Define EXT_framebuffer_object constants to match hw. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=42026a8ccf4f02d4648d65763e18d8bf98eb9bfd;p=mesa.git radeon: Define EXT_framebuffer_object constants to match hw. This hides the assertion failure in glean/fbo test. Underlying problem when same texture is set twice to different attachments will cause assertion. --- diff --git a/src/mesa/drivers/dri/r200/r200_context.c b/src/mesa/drivers/dri/r200/r200_context.c index 8986191c393..6ecd46ecd9e 100644 --- a/src/mesa/drivers/dri/r200/r200_context.c +++ b/src/mesa/drivers/dri/r200/r200_context.c @@ -360,6 +360,7 @@ GLboolean r200CreateContext( const __GLcontextModes *glVisual, ctx->Const.Max3DTextureLevels = 9; ctx->Const.MaxCubeTextureLevels = 12; ctx->Const.MaxTextureRectSize = 2048; + ctx->Const.MaxRenderbufferSize = 2048; ctx->Const.MaxTextureMaxAnisotropy = 16.0; @@ -390,6 +391,7 @@ GLboolean r200CreateContext( const __GLcontextModes *glVisual, ctx->Const.VertexProgram.MaxNativeAddressRegs = 1; ctx->Const.MaxDrawBuffers = 1; + ctx->Const.MaxColorAttachments = 1; _mesa_set_mvp_with_dp4( ctx, GL_TRUE ); diff --git a/src/mesa/drivers/dri/r300/r300_context.c b/src/mesa/drivers/dri/r300/r300_context.c index 7c21efb1ded..fe2ed22dc24 100644 --- a/src/mesa/drivers/dri/r300/r300_context.c +++ b/src/mesa/drivers/dri/r300/r300_context.c @@ -345,11 +345,13 @@ static void r300InitConstValues(GLcontext *ctx, radeonScreenPtr screen) ctx->Const.MaxTextureLevels = 13; ctx->Const.MaxCubeTextureLevels = 13; ctx->Const.MaxTextureRectSize = 4096; + ctx->Const.MaxRenderbufferSize = 4096; } else { ctx->Const.MaxTextureLevels = 12; ctx->Const.MaxCubeTextureLevels = 12; ctx->Const.MaxTextureRectSize = 2048; + ctx->Const.MaxRenderbufferSize = 2048; } ctx->Const.MinPointSize = 1.0; @@ -363,6 +365,7 @@ static void r300InitConstValues(GLcontext *ctx, radeonScreenPtr screen) ctx->Const.MaxLineWidthAA = R300_LINESIZE_MAX; ctx->Const.MaxDrawBuffers = 1; + ctx->Const.MaxColorAttachments = 1; /* currently bogus data */ if (r300->options.hw_tcl_enabled) { diff --git a/src/mesa/drivers/dri/r600/r600_context.c b/src/mesa/drivers/dri/r600/r600_context.c index 5b7d7c28ec1..f575e74c3ed 100644 --- a/src/mesa/drivers/dri/r600/r600_context.c +++ b/src/mesa/drivers/dri/r600/r600_context.c @@ -270,6 +270,8 @@ static void r600InitConstValues(GLcontext *ctx, radeonScreenPtr screen) ctx->Const.MaxLineWidthAA = 0xffff / 8.0; ctx->Const.MaxDrawBuffers = 1; /* hw supports 8 */ + ctx->Const.MaxColorAttachments = 1; + ctx->Const.MaxRenderbufferSize = 4096; /* 256 for reg-based consts, inline consts also supported */ ctx->Const.VertexProgram.MaxInstructions = 8192; /* in theory no limit */ diff --git a/src/mesa/drivers/dri/radeon/radeon_context.c b/src/mesa/drivers/dri/radeon/radeon_context.c index 475e93bc05f..4625af14ad8 100644 --- a/src/mesa/drivers/dri/radeon/radeon_context.c +++ b/src/mesa/drivers/dri/radeon/radeon_context.c @@ -317,6 +317,8 @@ r100CreateContext( const __GLcontextModes *glVisual, rmesa->boxes = 0; ctx->Const.MaxDrawBuffers = 1; + ctx->Const.MaxColorAttachments = 1; + ctx->Const.MaxRenderbufferSize = 2048; _mesa_set_mvp_with_dp4( ctx, GL_TRUE );