Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
This avoids hangs when the vblank sequence numbers are not in sync between
pipes, in particular when they run at different refresh rates.
|
|
|
|
This should be safe now that we no longer use the MI_WAIT_FOR_EVENT instruction
incorrectly and should also work correctly with applications that render to the
front buffer.
|
|
The MI_WAIT_FOR_EVENT instruction does not support waiting for several events
at once, so this should fix the lockups with page flipping when both pipes are
enabled.
|
|
Fixes issues with apps that don't call glViewport by default.
|
|
Cubemaps aren't working fully correctly yet, but at least they don't seem to
cause crashes anymore.
|
|
Use _mesa_reference_framebuffer() and _mesa_unreference_framebuffer() functions
to be sure reference counting is done correctly. Additional assertions are
done too. Note _mesa_dereference_framebuffer() renamed to "unreference" as
that's more accurate.
|
|
call _mesa_dereference_framebuffer instead of _mesa_dereference_framebuffer
in i810, i915, i915tex, i965 drivers.
|
|
Don't flip (up to twice) immediately but just arrange things such that the
pages will be in sync on both pipes on the next flip.
|
|
|
|
|
|
In i915_miptree_layout() change the width, height parameters that are passed
to intel_miptree_set_level_info(). As it was, the width, height values were
larger than the source image dimensions and we segfaulted in memcpy() when
copying the original texture data into the texture buffer region.
This fix should probably be checked by someone more familiar with the code (Keith?)
|
|
|
|
|
|
Also move vsync related state from context to window, so it's possible to
schedule several flips ahead of time with triple buffering.
|
|
Pending flips are tracked per renderbuffer and the colour renderbuffer
attachments of window framebuffer objects are rotated on flips to avoid
stalling the pipeline for pending flips unnecessarily.
|
|
|
|
|
|
intel_get_rb_region already takes the current page into account.
This would result in broken rendering when multiple 3D windows are visible
and the pages are reversed.
|
|
No longer track page flipping state per context but per window, via struct
intel_framebuffer which wraps struct gl_framebuffer for windows.
|
|
|
|
With current memory preferences, vbos ended up in AGP space
where reading from them got a bit slow.
Make sure buffer objects are initially created in system memory.
|
|
batch buffer after a resolution / rotation switch.
|
|
Conflicts:
src/mesa/main/texcompress_s3tc.c
src/mesa/tnl/t_array_api.c
|
|
|
|
Increase the number of allowed relocations per batchbuffer.
Fix an assert to avoid an array index overflow.
(Reported by Steve Wilkins)
|
|
|
|
into vbo-0.2
Conflicts:
src/mesa/array_cache/sources
src/mesa/drivers/dri/i965/brw_context.c
src/mesa/drivers/dri/i965/brw_draw.c
src/mesa/drivers/dri/i965/brw_fallback.c
src/mesa/drivers/dri/i965/brw_vs_emit.c
src/mesa/drivers/dri/i965/brw_vs_tnl.c
src/mesa/drivers/dri/mach64/mach64_context.c
src/mesa/main/extensions.c
src/mesa/main/getstring.c
src/mesa/tnl/sources
src/mesa/tnl/t_save_api.c
src/mesa/tnl/t_save_playback.c
src/mesa/tnl/t_vtx_api.c
src/mesa/tnl/t_vtx_exec.c
src/mesa/vbo/vbo_attrib.h
src/mesa/vbo/vbo_exec_api.c
src/mesa/vbo/vbo_save_api.c
src/mesa/vbo/vbo_save_draw.c
|
|
|
|
|
|
This may not be the proper way to fix this but it does work easily.
|
|
Cube maps still aren't working quite correctly though.
|
|
Use the i965 version as it has some fixes over the i915tex version.
|
|
These are taken from the i965 driver and fix corruption of some mipmap levels
under some circumsances with 945 chipsets at least.
Also flush the batchbuffer after copying data between trees, or some apps fail
an assertion elsewhere.
|
|
This is a legitimate situation when copying texture data between mipmap trees.
|
|
|
|
This fixes vertically displaced rendering with some apps like Google Earth.
Simplify other parts of the function somewhat.
|
|
|
|
|
|
|
|
|
|
how to fix SubTexImage with compressed textures
|
|
|
|
|
|
|
|
1. add PROGRAM_CONSTANT to switch() in src_vector().
2. use _mesa_append_fog_code() to handle fog options in i915ProgramStringNotify().
3. Re-enable some vertex attribute emit code that was previously disabled in i915ValidateFragmentProgram().
|