summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/intel/intel_fbo.c
AgeCommit message (Collapse)Author
2009-10-30intel: fix up some XRGB breakageBrian Paul
We weren't choosing the right XRGB span functions for reading the framebuffer. XRGB formats still aren't turned on yet though.
2009-10-29intel: update intel_create_renderbuffer(format), add XRGB supportBrian Paul
Pass a gl_format to intel_create_renderbuffer() instead of GLenum. Add cases for MESA_FORMAT_XRGB8888 textures and renderbuffers. However, we don't yet create any renderbuffers or textures with that format. It seems the default alpha value is zero instead of one. Need to investigate that first.
2009-10-28Merge branch 'texformat-rework'Brian Paul
Conflicts: src/mesa/drivers/dri/radeon/radeon_fbo.c src/mesa/drivers/dri/s3v/s3v_tex.c src/mesa/drivers/dri/s3v/s3v_xmesa.c src/mesa/drivers/dri/trident/trident_context.c src/mesa/main/debug.c src/mesa/main/mipmap.c src/mesa/main/texformat.c src/mesa/main/texgetimage.c
2009-10-28Merge branch 'mesa_7_6_branch'Brian Paul
2009-10-28intel: Fix memory leak in case of renderbuffer bad formatVinson Lee
Signed-off-by: Brian Paul <brianp@vmware.com>
2009-10-23Merge remote branch 'origin/mesa_7_6_branch'Eric Anholt
Conflicts: src/mesa/drivers/dri/intel/intel_fbo.c src/mesa/drivers/dri/intel/intel_mipmap_tree.c src/mesa/drivers/dri/intel/intel_mipmap_tree.h src/mesa/drivers/dri/intel/intel_tex_copy.c src/mesa/drivers/dri/intel/intel_tex_image.c
2009-10-23intel: Keep track of x,y offsets in miptrees and use them for blitting.Eric Anholt
By just using offsets, we confused the hardware's tiling calculations, resulting in failures in miptree validation and blit clears. Fixes piglit fbo-clearmipmap. Bug #23552. (automatic mipmap generation)
2009-10-21intel: use MESA_FORMAT_S8_Z24 format and avoid z24s8/s8z24 conversionsBrian Paul
2009-10-12intel: pass zslice to intel_miptree_image_offset()Brian Paul
This lets us get rid of intel_miptree_depth_offsets() and simplify all of the calling code.
2009-10-08mesa: remove a bunch of gl_renderbuffer fieldsBrian Paul
_ActualFormat is replaced by Format (MESA_FORMAT_x). ColorEncoding, ComponentType, RedBits, GreenBits, BlueBits, etc. are all replaced by MESA_FORMAT_x queries.
2009-10-05drivers: don't include texformat.hBrian Paul
And remove other unneeded #includes while we're at it.
2009-09-30mesa: replace gl_texture_format with gl_formatBrian Paul
Now gl_texture_image::TexFormat is a simple MESA_FORMAT_x enum. ctx->Driver.ChooseTexture format also returns a MESA_FORMAT_x. gl_texture_format will go away next.
2009-09-27drivers: use more mesa format functionsBrian Paul
2009-09-19mesa: rename functions to be more consistant with rest of mesaBrian Paul
2009-08-10intel: use new _mesa_meta_blit_framebuffer() functionBrian Paul
The previous version of framebuffer blit was a quick hack. The new meta version works pretty well.
2009-07-03Merge branch 'mesa_7_5_branch'Jakob Bornecrantz
Conflicts: src/mesa/main/dlist.c src/mesa/vbo/vbo_save_api.c
2009-07-03intel: Also update stencil bits in intel_update_wrapper().Michel Dänzer
Fixes assertion failure when binding depth/stencil texture to FBO stencil attachment.
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-05-21intel: Fall back on any rendering to texture with no miptree.Eric Anholt
Fixes segfault on an fbo.c negative test for FBO with texture width/height of 0. Previously we just tested for border != 0 to work around this segfault.
2009-05-21intel: Mark the FBO as incomplete if there's no intel_renderbuffer for it.Eric Anholt
This happens to rendering with textures with a border, which had resulted in a segfault on dereferencing the irb.
2009-04-16intel: Add support for argb1555, argb4444 FBOs and fix rgb565 fbo readpixels.Eric Anholt
Also enable them all regardless of screen bpp, as 32 bpp what I've been testing against, and haven't been able to detect any screen bpp-specific troubles with them.
2009-03-05i965: fix screen depth test in intel_validate_framebuffer)_Brian Paul
front_region may be null.
2009-02-26intel: no-op the intel_finish_render_texture() functionBrian Paul
It doesn't have to do anything. See comments for more details.
2009-02-26intel: check texture formats in intel_validate_framebuffer()Brian Paul
We can't render into any texture format; only certain formats. Check that render-to-texture's format is renderable in the intel_validate_framebuffer() There seems to be a bug somewhere that causes rendering to rgb565 textures to be corrupted so disallow that for now. This will be revisted.
2009-02-25intel: Fix up x8r8g8b8 renderbuffer format so that alpha=1 spans code happens.Eric Anholt
I was lured into a false sense of security by the fact that the spans code was already there, and a bunch of tests didn't catch the problem. oglconform's mask.c did, though. Bug #19970.
2009-02-21intel: tell libdrm whether we want a cpu-ready or gpu-ready BO for regions.Eric Anholt
This lets us avoid allocing new buffers for renderbuffers, finalized miptrees, and PBO-uploaded textures when there's an unreferenced but still active one cached, while also avoiding CPU waits for batchbuffers and CPU-uploaded textures. The size of BOs allocated for a desktop running current GL cairogears on i915 is cut in half with this. Note that this means we require libdrm 2.4.5.
2009-01-30intel: remove unused RenderToTexture fieldBrian Paul
2009-01-29intel: remove unused #includesBrian Paul
2009-01-29intel: formatting clean-upsBrian Paul
2009-01-27intel: clean up more pf mess.Eric Anholt
2009-01-22intel: add GL_EXT_framebuffer blit extensionBrian Paul
This functionality is required by GL_ARB_framebuffer_object. For now, implement it in terms of glCopyPixels(). This will need to be revisted though.
2009-01-22intel: remove/disable the "paired depth/stencil" codeBrian Paul
We only allow combined depth+stencil renderbuffers so the complicated code for splitting and combining separate depth and stencil buffers is no longer needed.
2009-01-22intel: remove unneeded call to ctx->Driver.DepthRange()Brian Paul
The preceeding call to intel_draw_buffer() does that.
2009-01-22i965: disallow separate depth/stencil renderbuffersBrian Paul
Take advantage of the GL_FRAMEBUFFER_UNSUPPORTED feature to disallow separate depth and stencil renderbuffers; only allow combined depth/stencil buffers. Next up: remove/simplify a bunch of the depth/stencil renderbuffer code. Also: restore the previously disabled GL_DEPTH_COMPONENT16 case
2009-01-22intel: plug in stub intel_validate_framebuffer() functionBrian Paul
2009-01-22intel: inline some renderbuffer functionsBrian Paul
2009-01-20Remove intel pageflipping support in its entirety.Owain G. Ainsworth
It's been broken and deprecated for a while, so it's time to die. This has the wonderful benefit of cleaning up the code a fair amount; making it marginally less twisty. I'm unsure if the for loops in IntelWindowMoved are still needed.
2009-01-14i965: asst. fixes, work-arounds for FBOs and render to textureBrian Paul
OpenGL allows mixing and matching depth and stencil renderbuffers in framebuffer objects while the hardware really only supports interleaved depth/stencil buffers. This makes for some tricky buffer management. An extra wrinkle is the situation where the user allocates a 16bpp depth texture or renderbuffer then tries to render to it along with a stencil buffer. We'd have to promote the 16bpp Z values to 24-bit Z values and mix in the stencil values to setup the depth/stencil renderbuffer. There's no support for that now, so always allocate 32bpp depth textures/ renderbuffers for now.
2009-01-14i965: fix incorrect renderbuffer DataType assignmentBrian Paul
2008-12-06intel: Fall back on rendering to a texture attachment with a border.Eric Anholt
Fixes a segfault in oglconform fbo.c test.
2008-09-24intel: Fix clears to depth_stencil texture attachments.Eric Anholt
Broken by 0adfd1021035e90995a25ec5f20b736e55075d92, showed up as an assertion failure in a software fallback in the shadowtex demo when we failed to recognize the texture format.
2008-09-18mesa: added "main/" prefix to includes, remove some -I paths from ↵Brian Paul
Makefile.template
2008-09-12intel: Add a width field to regions, and use it for making miptrees in TFP.Eric Anholt
Otherwise, we would use the pitch as width of the texture, and compiz would render the pitch padding on the right hand side.
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-26intel: Don't return a renderbuffer with alpha when just GL_RGB is requested.Eric Anholt
Fixes oglconform rbGetterFuncs testcase. The span code for this mode hasn't actually been tested.
2008-07-23intel: Add a little span cache to spead up readpixels by cutting syscalls.Eric Anholt
2008-07-23intel-gem: Use pread/pwrite for span access.Eric Anholt
This will avoid clflushing entire buffers for small acesses, such as those commonly used by regression tests.
2008-07-11drm-gem: Use new GEM ioctls for tiling state, and support new swizzle modes.Eric Anholt
2008-07-02intel-gem: Fix Y-tiling span setup.Eric Anholt
The boolean that the server gives us for whether the region is tiled was getting used as the enum for what tiling mode. Instead, guess the correct tiling in screen setup. Also, fix the Y-tiling pitch setup. The pitch to the next tile in Y is 32 scanlines, not 8.