diff options
author | backer@chromium.org <backer@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-05-24 14:34:21 +0000 |
---|---|---|
committer | backer@chromium.org <backer@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-05-24 14:34:21 +0000 |
commit | c18dfb934fe38d9e4a7fd1019d6eaacaca5b6348 (patch) | |
tree | c6c8f8ac6a11649f2120119cfd9c1cda84b17e37 /gpu | |
parent | d400c332d6c2fd6d8a60ed676b9b1eacc0f2571c (diff) | |
download | chromium_src-c18dfb934fe38d9e4a7fd1019d6eaacaca5b6348.zip chromium_src-c18dfb934fe38d9e4a7fd1019d6eaacaca5b6348.tar.gz chromium_src-c18dfb934fe38d9e4a7fd1019d6eaacaca5b6348.tar.bz2 |
GPU: Disable GL_OES_standard_derivatives on Intel Pineview.
Against the OpenGL 2.0 (big GL) spec, we don't have support for these on the
Gallium driver (which is what we're using on ChromeOS).
BUG=243038
TEST=by hand on device
R=piman@chromium.org
Review URL: https://codereview.chromium.org/15741020
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@202083 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'gpu')
-rw-r--r-- | gpu/command_buffer/service/feature_info.cc | 5 | ||||
-rw-r--r-- | gpu/config/gpu_driver_bug_list_json.cc | 15 | ||||
-rw-r--r-- | gpu/config/gpu_driver_bug_workaround_type.h | 2 |
3 files changed, 19 insertions, 3 deletions
diff --git a/gpu/command_buffer/service/feature_info.cc b/gpu/command_buffer/service/feature_info.cc index fa8abdd2..50f494d 100644 --- a/gpu/command_buffer/service/feature_info.cc +++ b/gpu/command_buffer/service/feature_info.cc @@ -548,8 +548,9 @@ void FeatureInfo::AddFeatures(const CommandLine& command_line) { validators_.render_buffer_format.AddValue(GL_DEPTH_COMPONENT24); } - if (extensions.Contains("GL_OES_standard_derivatives") || - gfx::HasDesktopGLFeatures()) { + if (!workarounds_.disable_oes_standard_derivatives && + (extensions.Contains("GL_OES_standard_derivatives") || + gfx::HasDesktopGLFeatures())) { AddExtensionString("GL_OES_standard_derivatives"); feature_flags_.oes_standard_derivatives = true; validators_.hint_target.AddValue(GL_FRAGMENT_SHADER_DERIVATIVE_HINT_OES); diff --git a/gpu/config/gpu_driver_bug_list_json.cc b/gpu/config/gpu_driver_bug_list_json.cc index e324231..dc9e5bf 100644 --- a/gpu/config/gpu_driver_bug_list_json.cc +++ b/gpu/config/gpu_driver_bug_list_json.cc @@ -85,7 +85,7 @@ const char kGpuDriverBugListJson[] = LONG_STRING_CONST( { "name": "gpu driver bug list", // Please update the version number whenever you change this file. - "version": "2.0", + "version": "2.1", "entries": [ { "id": 1, @@ -343,6 +343,19 @@ const char kGpuDriverBugListJson[] = LONG_STRING_CONST( "features": [ "unbind_fbo_on_context_switch" ] + }, + { + "id": 23, + "cr_bugs": [243038], + "description": "Disable OES_standard_derivative on Intel Pineview M Gallium drivers.", + "os": { + "type": "chromeos" + }, + "vendor_id": "0x8086", + "device_id": ["0xa011", "0xa012"], + "features": [ + "disable_oes_standard_derivatives" + ] } ] } diff --git a/gpu/config/gpu_driver_bug_workaround_type.h b/gpu/config/gpu_driver_bug_workaround_type.h index bb21425..1d78c97 100644 --- a/gpu/config/gpu_driver_bug_workaround_type.h +++ b/gpu/config/gpu_driver_bug_workaround_type.h @@ -22,6 +22,8 @@ disable_ext_draw_buffers) \ GPU_OP(DISABLE_EXT_OCCLUSION_QUERY, \ disable_ext_occlusion_query) \ + GPU_OP(DISABLE_OES_STANDARD_DERIVATIVES, \ + disable_oes_standard_derivatives) \ GPU_OP(ENABLE_CHROMIUM_FAST_NPOT_MO8_TEXTURES, \ enable_chromium_fast_npot_mo8_textures) \ GPU_OP(EXIT_ON_CONTEXT_LOST, \ |