aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* nouveau: Drop mapping we were doing around glGetTexImage().Eric Anholt2011-09-271-14/+0
| | | | It's handled by MapTextureImage() now.
* intel: Drop our custom glGetTexImage() code.Eric Anholt2011-09-272-63/+7
| | | | | | | | | The mesa core code uses MapTextureImage() like we need now. v2: Drop mapping around _mesa_generate_mipmap for compressed, since the whole path ends up going through MapTextureImage(), and the meta decompression code ended up causing us to lose track of the region that was originally mapped and assertion fail.
* mesa: Finally, convert RGBA glGetTexImage() to using MapTextureImage().Brian Paul2011-09-272-44/+38
| | | | | | | v2: Changes by Brian to MapTexImage in the decompression path. v3: Changes by anholt to fix srcRowStride for decompression of NPOT. Tested-by: Brian Paul <[email protected]> (v2)
* mesa: Convert depth glGetTexImage() to using MapTextureImage().Brian Paul2011-09-272-8/+14
| | | | Tested-by: Brian Paul <[email protected]>
* mesa: Convert depth/stencil glGetTexImage() to using MapTextureImage().Brian Paul2011-09-272-8/+21
| | | | | | | Note that the implementation before and after appears to be broken in its handling of Z24_S8 vs S8_Z24. Tested-by: Brian Paul <[email protected]>
* mesa: Switch ycbcr glGetTexImage() to using MapTextureImage().Brian Paul2011-09-271-5/+12
| | | | Tested-by: Brian Paul <[email protected]>
* mesa: Switch memcpy fast-path of glGetTexImage() to using MapTextureImage().Brian Paul2011-09-271-9/+15
| | | | Tested-by: Brian Paul <[email protected]>
* mesa: Update comments/assertions about buffer mapping for glGetTexImage().Brian Paul2011-09-271-4/+3
| | | | | | This code is about to stop needing ->Data and using MapTextureImage(). Tested-by: Brian Paul <[email protected]>
* mesa: Convert GetCompressedTexImage to using MapTextureImage().Brian Paul2011-09-276-129/+37
| | | | | | | This changes drivers to not map the texture on their own before calling _mesa_get_compressed_teximage(). Tested-by: Brian Paul <[email protected]>
* gallium: move border color to be a color unionDave Airlie2011-09-2719-43/+44
| | | | | | | | | | EXT_texture_integer also specifies border color should be a color union, the values are used according to the texture sampler format. (update docs) Signed-off-by: Dave Airlie <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa: Allow override of GL version with environment variableChad Versace2011-09-272-0/+29
| | | | | | | | | | | | | It is necessary to manually set the GL version to 3.0 in order to run Piglit tests that use glGetUniform*(). This patch allows one to override the version of the OpenGL context by setting the environment variable MESA_GL_VERSION_OVERRIDE. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Ian Romanick <[email protected]> Signed-off-by: Chad Versace <[email protected]>
* mesa: Make enable.c and get.c properly range check clip flags.Paul Berry2011-09-272-14/+56
| | | | | | | | | | | | | | | | | | | | | | | This is a follow-up to commit 2d686fe911a89fa477ee3848da41ebfb100500bf, which added decoding of GL_CLIP_DISTANCE[67] to the _mesa_set_enable() function. This patch makes the following additional fixes: - Uses GL_CLIP_DISTANCEi enums consistently within enable.c rather than the deprecated GL_CLIP_PLANEi enums. - Generates an error if the user tries to access a clip flag that is unsupported by the hardware. - Applies the same change to _mesa_IsEnabled(), so that querying clip flags using glIsEnabled() works properly. - Applies corresponding changes to get.c, so that querying clip flags using glGet*() works properly. Fixes piglit test clip-flag-behavior. Reviewed-by: Brian Paul <[email protected]>
* mesa: fix indentation in mipmap.c (3 spaces)Brian Paul2011-09-261-2/+2
|
* i965/vs: Fix access beyond array bounds for non-GRF operands.Eric Anholt2011-09-261-3/+3
| | | | | Caught by valgrind. I never saw a segfault from it (probably because it's hard to have much more of any other file than GRF).
* intel: Rename region->buffer to region->bo, and remove accessor function.Eric Anholt2011-09-2619-96/+73
| | | | | | | We call all the other drm_intel_bo pointers in intel/*.h "bo", so this one was rather out of place. Acked-by: Kenneth Graunke <[email protected]>
* intel: Drop stale comment about CopyTexSubImage.Eric Anholt2011-09-261-4/+0
| | | | | | | We get called for TexImage higher up, and in a relatively normal way (pixels == NULL is common for FBO setup). Acked-by: Kenneth Graunke <[email protected]>
* intel: Rely on AllocTextureImageBuffer for our teximage fallbacks.Eric Anholt2011-09-261-19/+5
| | | | | | | It will do a more reliable job at getting the image size for _mesa_texstore right than us. Acked-by: Kenneth Graunke <[email protected]>
* intel: Rely on mesa core for compressed texture image uploading.Eric Anholt2011-09-261-58/+20
| | | | | | | | | There's nothing in our normal texture path we need for this. We don't PBO upload blit it. We don't need to worry about flushing because MapTextureImage handles it. hiz scattergather doesn't apply, but MTI handles it too. Acked-by: Kenneth Graunke <[email protected]>
* intel: Allow src == NULL and *dst != NULL in intel_miptree_reference().Eric Anholt2011-09-263-10/+11
| | | | | | | This makes this API consistent with intel_region_reference, and the consumers wanted it this way. Reviewed-by: Kenneth Graunke <[email protected]>
* intel: Drop the "intel" argument to intel_miptree_release().Eric Anholt2011-09-266-16/+10
| | | | | | | We don't have it in the other refcounting functions, and it was totally unused. Reviewed-by: Kenneth Graunke <[email protected]>
* intel: Drop the immediate validation of the texture object in TFP.Eric Anholt2011-09-261-10/+0
| | | | | | | | | It's totally gratuitous -- the image's miptree will be checked for binding to the object later, anyway, with zero-copy or blitting as appropriate. Tested-by: Kristian Høgsberg <[email protected]> Acked-by: Kenneth Graunke <[email protected]>
* intel: Fix improper freeing of texture data in TFP.Eric Anholt2011-09-261-4/+1
| | | | | | | | If there happened to be ->Data present, we assertion failed instead of handling it correctly. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=35234 Acked-by: Kenneth Graunke <[email protected]>
* intel: Refactor texture_from_pixmap and EGL_image region binding.Eric Anholt2011-09-261-55/+49
| | | | | Tested-by: Kristian Høgsberg <[email protected]> Acked-by: Kenneth Graunke <[email protected]>
* intel: Drop some extra equality checks on reference/release functions.Eric Anholt2011-09-262-22/+8
| | | | | | | _mesa_reference_renderbuffer already short-circuits equality, and intel_miptree_release does nothing on NULL. Reviewed-by: Kenneth Graunke <[email protected]>
* i965: Set the pre/post-blend color clamp flags.Eric Anholt2011-09-261-0/+20
| | | | | | | No change in piglit results on gen6, but the spec demands it so let's do it. Reviewed-by: Kenneth Graunke <[email protected]>
* i965/fs: Split generate_math into gen4/gen6 and 1/2 operand variants.Kenneth Graunke2011-09-262-54/+89
| | | | | | | | | | This mirrors the structure Eric used in the new VS backend, and seems simpler. In particular, the math1/math2 split will avoid having to figure out how many operands there are, as this is already known by the caller. Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* swrast: always call _swrast_choose_texture_sample_func()Brian Paul2011-09-261-1/+1
| | | | | | _swrast_choose_texture_sample_func() handles null texture object pointers and will return the "null" sampler function which returns (0,0,0,1). This fixes a minor regression from ce82914f5ad4bb9148370826099925590e9798fd
* mesa: Remove EXT_abgr extension enable flagIan Romanick2011-09-262-3/+1
| | | | | | | | | | All drivers remaining in Mesa support this extension. This extension is required in desktop OpenGL. The existing support is already partially broken in Mesa (e.g., using format=GL_ABGR for glTexImage2D in OpenGL ES 2.x). This patch does not change the situation in any way. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: Remove EXT_bgra and EXT_texture_format_BGRA8888 extension enable flagsIan Romanick2011-09-266-11/+9
| | | | | | | | | | | | | All drivers remaining in Mesa support this extension. This extension is either required or optional features in desktop OpenGL, OpenGL ES 1.x, and OpenGL ES 2.x. EXT_texture_format_BGRA8888 is mostly a subset of EXT_bgra. The only difference seems to be that EXT_texture_format_BGRA8888 allows GL_BGRA as an internal format to glTexImage2D and friends. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: Remove OES_read_format extension enable flagIan Romanick2011-09-263-11/+3
| | | | | | | | | | | | This extension is always enabled, and drivers do not have to option to disable it. I kept this one separate from the others because I was a little uncertain about the changes to get.c. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Kristian Høgsberg <[email protected]>
* mesa: Remove all mention of EXT_vertex_array_setIan Romanick2011-09-262-2/+0
| | | | | | | | Mesa has never any portion of this extension, and neither has any other vendor. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: Fix extension year for EXT_texture_env_combineIan Romanick2011-09-261-1/+1
| | | | | | | | | | The year 2006 apparently came from the "Last Modified Date" in the spec header. however, the revision history at the bottom say "2/22/00 mjk - added NVIDIA Implementation Details." From that we can safely infer that the spec is from at least 2000, and it may even be older. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: Remove many extension enable flagsIan Romanick2011-09-267-94/+23
| | | | | | | | | | | | | | | | | | | | | | | | | The following extensions are always enabled, and drivers do not have to option to disable them: GL_ARB_multisample GL_ARB_texture_compression GL_ARB_vertex_buffer_object / GL_OES_mapbuffer GL_EXT_copy_texture GL_EXT_multi_draw_arrays / GL_SUN_multi_draw_arrays GL_EXT_polygon_offset GL_EXT_subtexture GL_EXT_texture_edge_clamp / GL_SGIS_texture_edge_clamp GL_EXT_vertex_array GL_SGIS_generate_mipmap This set was picked because the are all either required or optional features in desktop OpenGL, OpenGL ES 1.x, and OpenGL ES 2.x. The existing support for some is already partially broken in Mesa (e.g., proxy texture targets in OpenGL ES). This patch does not change the situation in any way. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* intel: Remove redundant GL_ARB_window_pos enableIan Romanick2011-09-261-1/+0
| | | | | | | | This extension is enabled by default in _mesa_init_extensions, so drivers don't need to enable it again. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* dri: Remove redundant GL_SGIS_texture_edge_clamp enablesIan Romanick2011-09-265-5/+0
| | | | | | | | This extension is enabled by default in _mesa_init_extensions, so drivers don't need to enable it again. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* i965: Emit depth stalls and flushes before changing depth state on Gen6+.Kenneth Graunke2011-09-263-1/+44
| | | | | | | | | | | | Fixes OpenArena on Gen7. Technically, adding only the first depth stall fixes it, but the documentation says to do all three, and the Windows driver seems to do it. Not observed to fix anything on Gen6 yet. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=38863 Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* intel: Introduce a new intel_context::gt field to go along with gen.Kenneth Graunke2011-09-263-3/+11
| | | | | | | | | | It seems that GT1/GT2 sorts of variations are here to stay, and more special cases will likely be required in the future. Checking by PCI ID via the IS_xxx_GTx macros is cumbersome; introducing a new 'gt' field analogous to intel->gen will make this easier. Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* intel: Remove intel_context::has_xrgb_textures/has_luminance_srgb.Kenneth Graunke2011-09-262-28/+13
| | | | | | | | | | | | | Seeing as they were only used once (in the same function they were defined), having them as context members seemed rather pointless. Remove them entirely (rather than using local variables) since the chipset generation checks are actually just as straightforward. While we're at it, clean up the remainder of the if-tree that set them. Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* i965: Fix incorrect maximum PS thread count shift on Ivybridge.Kenneth Graunke2011-09-261-1/+1
| | | | | | | | | | | | | | At one point, the documentation said that max thread count in 3DSTATE_PS was at bit offset 23, but it's actually 24 on Ivybridge. Not only did this halve our thread count, it caused us to write 1 into a bit 23, which is marked as MBZ (must be zero). Furthermore, it made us write an even number into this field, which is apparently not allowed. Apparently we were just lucky it worked. NOTE: This is a candidate for the 7.11 branch. Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* r600g: add index_bias to index buffer boundsMarek Olšák2011-09-261-0/+5
| | | | | | This fixes ARB_draw_elements_base_vertex with max_index != ~0. NOTE: This is a candidate for the 7.11 branch.
* u_vbuf_mgr: fix uploading with a non-zero index biasMarek Olšák2011-09-261-4/+11
| | | | | | Also don't rely on pipe_draw_info being set correctly. NOTE: This is a candidate for the 7.11 branch.
* u_vbuf_mgr: dereference some pointers only once etc.Marek Olšák2011-09-261-10/+13
|
* u_vbuf_mgr: rework user buffer uploadsMarek Olšák2011-09-261-36/+58
| | | | | | | | | | | - first determine the buffer range to upload for each buffer by walking over vertex elements - take buffer_offset into account - take src_offset into account - take src_format into account in more places - don't just blindly upload (stride*count) bytes NOTE: This is a candidate for the 7.11 branch.
* u_vbuf_mgr: remove unused flag U_VBUF_UPLOAD_FLUSHEDMarek Olšák2011-09-262-21/+6
|
* u_vbuf_mgr: s/u_vbuf_mgr_/u_vbuf_Marek Olšák2011-09-269-82/+81
|
* u_vbuf_mgr: fix max_index computation for large src_offsetMarek Olšák2011-09-261-8/+8
| | | | NOTE: This is a candidate for the 7.11 branch.
* u_vbuf_mgr: don't take per-instance attribs into acc. when computing max indexMarek Olšák2011-09-261-1/+2
| | | | NOTE: This is a candidate for the 7.11 branch.
* u_vbuf_mgr: cleanup original vs real vertex buffer arraysMarek Olšák2011-09-265-47/+45
| | | | | | It can now override both buffer offsets and strides in additions to resources. Overriding buffer offsets was kinda hackish and could cause issues with non-native vertex formats.
* intel: fix potential segfault error at intel_(un)map_texture_imageYuanhan Liu2011-09-261-2/+3
| | | | | | | | | intel_image->mt might be NULL, say with border width set. It then would trigger a segfault at intel_map/unmap_texture_image function. This would fix the oglc misctest(basic.textureBorderIgnore) fail. Signed-off-by: Yuanhan Liu <[email protected]>
* nouveau: fix crash during fence emissionMarcin Slusarz2011-09-251-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | Fence emission can flush the push buffer, which through flush_notify unreferences recently emitted fence. If ref count is increased after fence emission, unreference deletes the fence, which causes SIGSEGV. Backtrace: nouveau_fence_del nouveau_fence_ref nouveau_fence_next nouveau_pushbuf_flush MARK_RING nv50_screen_fence_emit nouveau_fence_emit nv50_flush This bug manifested as an assertion failure in nouveau_fence.c, because SIGSEGV handler tried to shutdown the application and used messed up fence. This issue was reported by Maxim Levitsky. Note: This is a candidate for the 7.11 branch.