diff options
author | Kenneth Graunke <[email protected]> | 2013-04-06 10:27:28 -0700 |
---|---|---|
committer | Kenneth Graunke <[email protected]> | 2013-05-20 13:03:17 -0700 |
commit | 50e60bf8daabc473ab7caa23bb60cff8c2954d6f (patch) | |
tree | 6ed24d9d35a3e78d28254c78378cd142eb227d94 /src/mesa/drivers | |
parent | 9fd7ea786c0bc821253fcdd5c1b9e6309535385d (diff) |
i965: Bump kernel requirement to 3.3 on Ivybridge.
Kernel 3.3 introduced the SOL reset execbuf parameter, needed for GL 3.0
on Ivybridge. Bumping the requirement will give an obvious error
message rather than simply reporting GL 2.1.
Signed-off-by: Kenneth Graunke <[email protected]>
Reviewed-by: Eric Anholt <[email protected]>
Reviewed-by: Paul Berry <[email protected]>
Diffstat (limited to 'src/mesa/drivers')
-rw-r--r-- | src/mesa/drivers/dri/intel/intel_extensions.c | 5 | ||||
-rw-r--r-- | src/mesa/drivers/dri/intel/intel_screen.c | 26 | ||||
-rw-r--r-- | src/mesa/drivers/dri/intel/intel_screen.h | 2 |
3 files changed, 12 insertions, 21 deletions
diff --git a/src/mesa/drivers/dri/intel/intel_extensions.c b/src/mesa/drivers/dri/intel/intel_extensions.c index 8d8e325a2c9..5cb2fa38f33 100644 --- a/src/mesa/drivers/dri/intel/intel_extensions.c +++ b/src/mesa/drivers/dri/intel/intel_extensions.c @@ -91,12 +91,9 @@ intelInitExtensions(struct gl_context *ctx) ctx->Const.GLSLVersion = 120; _mesa_override_glsl_version(ctx); - if (intel->gen == 6 || - (intel->gen == 7 && intel->intelScreen->kernel_has_gen7_sol_reset)) - ctx->Extensions.EXT_transform_feedback = true; - if (intel->gen >= 6) { ctx->Extensions.EXT_framebuffer_multisample = true; + ctx->Extensions.EXT_transform_feedback = true; ctx->Extensions.ARB_blend_func_extended = !driQueryOptionb(&intel->optionCache, "disable_blend_func_extended"); ctx->Extensions.ARB_draw_buffers_blend = true; ctx->Extensions.ARB_ES3_compatibility = true; diff --git a/src/mesa/drivers/dri/intel/intel_screen.c b/src/mesa/drivers/dri/intel/intel_screen.c index 9c292d6029d..433f4ed2bd3 100644 --- a/src/mesa/drivers/dri/intel/intel_screen.c +++ b/src/mesa/drivers/dri/intel/intel_screen.c @@ -1196,17 +1196,10 @@ set_max_gl_versions(struct intel_screen *screen) switch (screen->gen) { case 7: - if (screen->kernel_has_gen7_sol_reset) { - screen->max_gl_core_version = 31; - screen->max_gl_compat_version = 30; - screen->max_gl_es1_version = 11; - screen->max_gl_es2_version = 30; - } else { - screen->max_gl_core_version = 0; - screen->max_gl_compat_version = 21; - screen->max_gl_es1_version = 11; - screen->max_gl_es2_version = 20; - } + screen->max_gl_core_version = 31; + screen->max_gl_compat_version = 30; + screen->max_gl_es1_version = 11; + screen->max_gl_es2_version = 30; break; case 6: screen->max_gl_core_version = 31; @@ -1294,10 +1287,6 @@ __DRIconfig **intelInitScreen2(__DRIscreen *psp) intelScreen->deviceID = drm_intel_bufmgr_gem_get_devid(intelScreen->bufmgr); - intelScreen->kernel_has_gen7_sol_reset = - intel_get_boolean(intelScreen->driScrnPriv, - I915_PARAM_HAS_GEN7_SOL_RESET); - if (IS_GEN7(intelScreen->deviceID)) { intelScreen->gen = 7; } else if (IS_GEN6(intelScreen->deviceID)) { @@ -1312,6 +1301,13 @@ __DRIconfig **intelInitScreen2(__DRIscreen *psp) intelScreen->gen = 2; } + if (intelScreen->gen == 7 && + !intel_get_boolean(intelScreen->driScrnPriv, + I915_PARAM_HAS_GEN7_SOL_RESET)) { + fprintf(stderr, "i965 requires Kernel 3.3 or later.\n"); + return false; + } + intelScreen->hw_has_separate_stencil = intelScreen->gen >= 6; intelScreen->hw_must_use_separate_stencil = intelScreen->gen >= 7; diff --git a/src/mesa/drivers/dri/intel/intel_screen.h b/src/mesa/drivers/dri/intel/intel_screen.h index 7da98950aca..48339373e46 100644 --- a/src/mesa/drivers/dri/intel/intel_screen.h +++ b/src/mesa/drivers/dri/intel/intel_screen.h @@ -60,8 +60,6 @@ struct intel_screen bool hw_has_separate_stencil; bool hw_must_use_separate_stencil; - bool kernel_has_gen7_sol_reset; - bool hw_has_llc; bool hw_has_swizzling; |