summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/intel/intel_tex_copy.c
AgeCommit message (Collapse)Author
2009-07-13intel: Partially fix fallback detection for glCopyTexSubImage.Eric Anholt
Really, we should be checking that the MesaTexFormat for the read buffer and the texture match, but the previous code wasn't even doing that, so matching the cpp should be an improvement (and potentially fix some hangs!). The previous code also rejected GL_RGB even though blitting the alpha channel to the ignored channel of an x8r8g8b8 texture should be fine, which tripped up compiz's blur plugin.
2009-06-23intel: Avoid trying to do blits to Y tiled regions.Eric Anholt
This is somewhat nasty, but we need to do Y-tiled depth for FBO support. May help with corruption and hangs since enabling texture tiling, and since switching depth textures to Y tiled. Fixes piglit depthtex.c on 965.
2009-06-23intel: Fix some potential writes to zero-copy PBOs when used as regions.Eric Anholt
I was in the midst of fixing some blitting-with-Y-tiled issues when I noticed this. Hopefully PBO usage will be a little more robust, as a result.
2009-06-09intel: make a bunch of glTexImage-related functions staticBrian Paul
2009-06-09intel: whitespace clean-upsBrian Paul
2009-06-04intel: Add support for tiled textures.Eric Anholt
This is about a 30% performance win in OA with high settings on my GM45, and experiments with 915GM indicate that it'll be around a 20% win there. Currently, 915-class hardware is seriously hurt by the fact that we use fence regs to control the tiling even for 3D instructions that could live without them, so we spend a bunch of time waiting on previous rendering in order to pull fences off. Thus, the texture_tiling driconf option defaults off there for now.
2009-06-02intel: Clip to window after calling Driver.TexImage2DIan Romanick
This prevents the width / height from being clipped to the window size before the texture is allocated. This matches intelCopyTexImage1D. This should fix bug #21227 Signed-off-by: Ian Romanick <ian.romanick@intel.com>
2009-05-08intel: Add a metaops version of glGenerateMipmapEXT/SGIS_generate_mipmaps.Eric Anholt
In addition to being HW accelerated, it avoids the incorrect (black) rendering of the mipmaps that SW was doing in fbo-generatemipmap. Improves the performance of the mipmap generation and drawing in fbo-generatemipmap by 30%.
2008-12-18intel: Move copyteximage source clipping out of copytexsubimage.Eric Anholt
glCopyTexSubImage already gets the (correct) clipping for us, so it doesn't need the path. While moving the clipping out, replace the code with the mesa path to do the same job.
2008-12-06intel: Fix crash in automatic mipmap generation for glCopyTex{Sub,}Image.Eric Anholt
The images aren't mapped at this point, so we want the generic Mesa path for GenerateMipmapEXT that does the mapping/unmapping for us. Ideally Mesa would just call it for us.
2008-12-06intel: Put CopyTexImage fallback under DEBUG_FALLBACKS not DEBUG_TEXTURE.Eric Anholt
2008-11-21i965: Add support for accelerated CopyTexSubImage.Eric Anholt
There were hacks in EmitCopyBlit before to adjust offsets so that y=0 after the offsets had been adjusted for a negative pitch. It appears that those hacks were due to an unclear and surprising aspect of the hardware: inverting the pitch results in the blit into the specified rectangle being inverted, without the user needing to adjust y and base offset. Tested with piglit copytexsubimage test on 915GM and GM965. Should fix serious performance issues with ETQW and other applications.
2008-10-01Unify ARB_depth_texture and SGIX_depth_textureIan Romanick
The ARB extension is a superset of the older SGIX extension. Any hardware that can support the SGIX version can also support the ARB version. In Mesa, any driver that supports one also supports the other. This unification just simplifies some bits of code.
2008-09-18mesa: added "main/" prefix to includes, remove some -I paths from ↵Brian Paul
Makefile.template
2008-08-24Revert "Revert "Merge branch 'drm-gem'""Dave Airlie
This reverts commit 7c81124d7c4a4d1da9f48cbf7e82ab1a3a970a7a.
2008-08-24Revert "Merge branch 'drm-gem'"Dave Airlie
This reverts commit 53675e5c05c0598b7ea206d5c27dbcae786a2c03. Conflicts: src/mesa/drivers/dri/i965/brw_wm_surface_state.c
2008-07-23intel: Fix CopyTexSubImage's src tiling arg for the blit.Eric Anholt
Didn't hurt 915, but needed for 965.
2008-07-11drm-gem: Use new GEM ioctls for tiling state, and support new swizzle modes.Eric Anholt
2008-06-26intel: Replace sprinkled intel_batchbuffer_flush with MI_FLUSH or nothing.Eric Anholt
Most of these were to ensure that caches got synchronized between 2d (or meta) rendering and later use of the target as a source, such as for texture miptree setup. Those are replaced with intel_batchbuffer_emit_mi_flush(), which just drops an MI_FLUSH. Most of the remainder were to ensure that REFERENCES_CLIPRECTS batchbuffers got flushed before the lock was dropped. Those are now replaced by automatically flushing those when dropping the lock.
2008-05-09intel: use new mipmap generation hooks in driver.Dave Airlie
2008-01-22[intel] Clean up references to screen buffer metrics.Kristian Høgsberg
The screen wide info such as pitch and cpp are obsoleted by the FBO changes, so clean up the last few references to those, except for setting up the legacy screen regions.
2007-12-20[intel] Fix and reenable (software) SGIS_generate_mipmapEric Anholt
The core problem was that _mesa_generate_mipmap was not respecting RowStride of the source image. Additionally, the intel private data associated with the images (level and face) was not being initialized for the _mesa_generate_mipmap-generated images.
2007-11-16[intel] Add 965 support to shared intel_blit.cEric Anholt
This requires that regions grow a marker of whether they are tiled or not, because fence (surface) registers are ignored by the 965 2D engine.
2007-11-09[intel] Move over files that will be shared with 965-fbo work.Eric Anholt