mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-04 22:49:13 +02:00
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 <kenneth@whitecape.org> Reviewed-by: Eric Anholt <eric@anholt.net> Reviewed-by: Paul Berry <stereotype441@gmail.com>
This commit is contained in:
parent
9fd7ea786c
commit
50e60bf8da
3 changed files with 12 additions and 21 deletions
|
|
@ -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;
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue