diff options
author | Roland Scheidegger <rscheidegger@gmx.ch> | 2006-01-07 20:42:16 +0000 |
---|---|---|
committer | Roland Scheidegger <rscheidegger@gmx.ch> | 2006-01-07 20:42:16 +0000 |
commit | 8bc4dae67e083c6415c07e6ff77e700f7395dc9e (patch) | |
tree | 823623859a8a34ef8f123ef9f139144fc25d2da3 /src/mesa/drivers/dri/radeon | |
parent | eda59aa87e6f651a734d2dfd9f30271764712f35 (diff) |
cube maps on r100 require newer drm than the same feature on r200 (regression from introducing unfied initialization). Fix wrong (so far unused) family assignment for r100 cards.
Diffstat (limited to 'src/mesa/drivers/dri/radeon')
-rw-r--r-- | src/mesa/drivers/dri/radeon/radeon_context.c | 2 | ||||
-rw-r--r-- | src/mesa/drivers/dri/radeon/radeon_screen.c | 5 | ||||
-rw-r--r-- | src/mesa/drivers/dri/radeon/radeon_screen.h | 3 | ||||
-rw-r--r-- | src/mesa/drivers/dri/radeon/radeon_state_init.c | 2 |
4 files changed, 7 insertions, 5 deletions
diff --git a/src/mesa/drivers/dri/radeon/radeon_context.c b/src/mesa/drivers/dri/radeon/radeon_context.c index e819566c01..abfe56dd9c 100644 --- a/src/mesa/drivers/dri/radeon/radeon_context.c +++ b/src/mesa/drivers/dri/radeon/radeon_context.c @@ -417,7 +417,7 @@ radeonCreateContext( const __GLcontextModes *glVisual, } driInitExtensions( ctx, card_extensions, GL_TRUE ); - if (rmesa->radeonScreen->drmSupportsCubeMaps) + if (rmesa->radeonScreen->drmSupportsCubeMapsR100) _mesa_enable_extension( ctx, "GL_ARB_texture_cube_map" ); if (rmesa->glCtx->Mesa_DXTn) { _mesa_enable_extension( ctx, "GL_EXT_texture_compression_s3tc" ); diff --git a/src/mesa/drivers/dri/radeon/radeon_screen.c b/src/mesa/drivers/dri/radeon/radeon_screen.c index 39e9ade931..0dcefe8d54 100644 --- a/src/mesa/drivers/dri/radeon/radeon_screen.c +++ b/src/mesa/drivers/dri/radeon/radeon_screen.c @@ -365,11 +365,12 @@ radeonCreateScreen( __DRIscreenPrivate *sPriv ) fprintf(stderr, "drm_radeon_getparam_t (RADEON_PARAM_IRQ_NR): %d\n", ret); return NULL; } - screen->drmSupportsCubeMaps = (sPriv->drmMinor >= 7); + screen->drmSupportsCubeMapsR200 = (sPriv->drmMinor >= 7); screen->drmSupportsBlendColor = (sPriv->drmMinor >= 11); screen->drmSupportsTriPerf = (sPriv->drmMinor >= 16); screen->drmSupportsFragShader = (sPriv->drmMinor >= 18); screen->drmSupportsPointSprites = (sPriv->drmMinor >= 13); + screen->drmSupportsCubeMapsR100 = (sPriv->drmMinor >= 15); } } @@ -586,7 +587,7 @@ radeonCreateScreen( __DRIscreenPrivate *sPriv ) } if (screen->chip_family <= CHIP_FAMILY_RS200) - screen->chip_flags |= RADEON_CLASS_R200; + screen->chip_flags |= RADEON_CLASS_R100; else if (screen->chip_family <= CHIP_FAMILY_RV280) screen->chip_flags |= RADEON_CLASS_R200; else diff --git a/src/mesa/drivers/dri/radeon/radeon_screen.h b/src/mesa/drivers/dri/radeon/radeon_screen.h index e8c58568a6..08433c445b 100644 --- a/src/mesa/drivers/dri/radeon/radeon_screen.h +++ b/src/mesa/drivers/dri/radeon/radeon_screen.h @@ -92,11 +92,12 @@ typedef struct { unsigned int gart_texture_offset; /* offset in card memory space */ unsigned int gart_base; - GLboolean drmSupportsCubeMaps; /* need radeon kernel module >= 1.7 */ + GLboolean drmSupportsCubeMapsR200; /* need radeon kernel module >= 1.7 */ GLboolean drmSupportsBlendColor; /* need radeon kernel module >= 1.11 */ GLboolean drmSupportsTriPerf; /* need radeon kernel module >= 1.16 */ GLboolean drmSupportsFragShader; /* need radeon kernel module >= 1.18 */ GLboolean drmSupportsPointSprites; /* need radeon kernel module >= 1.13 */ + GLboolean drmSupportsCubeMapsR100; /* need radeon kernel module >= 1.15 */ GLboolean depthHasSurface; /* Configuration cache with default values for all contexts */ diff --git a/src/mesa/drivers/dri/radeon/radeon_state_init.c b/src/mesa/drivers/dri/radeon/radeon_state_init.c index a2e3d1e5ea..5682d95ae1 100644 --- a/src/mesa/drivers/dri/radeon/radeon_state_init.c +++ b/src/mesa/drivers/dri/radeon/radeon_state_init.c @@ -238,7 +238,7 @@ void radeonInitState( radeonContextPtr rmesa ) ALLOC_STATE( tex[0], tex0, TEX_STATE_SIZE, "TEX/tex-0", 0 ); ALLOC_STATE( tex[1], tex1, TEX_STATE_SIZE, "TEX/tex-1", 0 ); ALLOC_STATE( tex[2], tex2, TEX_STATE_SIZE, "TEX/tex-2", 0 ); - if (rmesa->radeonScreen->drmSupportsCubeMaps) + if (rmesa->radeonScreen->drmSupportsCubeMapsR100) { ALLOC_STATE( cube[0], cube0, CUBE_STATE_SIZE, "CUBE/cube-0", 0 ); ALLOC_STATE( cube[1], cube1, CUBE_STATE_SIZE, "CUBE/cube-1", 0 ); |