summaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers/dri/i965/brw_vtbl.c
Commit message (Collapse)AuthorAgeFilesLines
* intel: Move note_unlock() implementation to the one place it's needed.Eric Anholt2009-06-291-9/+0
|
* i965: Don't set a reserved bit in MI_FLUSH.Eric Anholt2009-06-231-1/+1
| | | | | I noticed this when this MI_FLUSH showed up in IPEHR for the ut2004 hang. Not setting the reserved bit didn't help, though.
* i965: checkpoint commit: VS constant buffersBrian Paul2009-04-141-0/+1
| | | | | | Hook up a constant buffer, binding table, etc for the VS unit. This will allow using large constant buffers with vertex shaders. The new code is disabled at this time (use_const_buffer=FALSE).
* i965: Remove dead flushing code.Eric Anholt2009-03-051-18/+0
|
* i965: rename draw_regions -> color_regionsroot2009-02-261-11/+11
| | | | Be a little more specific about what these are.
* intel: Clean up several 965 memory leaks on context destroy.Eric Anholt2009-02-171-0/+3
|
* i965: Delete old metaops code now that there are no remaining consumers.Eric Anholt2009-02-021-1/+0
|
* i965: formatting, comments, whitespace clean-upsBrian Paul2009-01-301-33/+39
|
* i965: Remove BRW_WM_LOCK dirty bit, introduced to work around lack of relocs.Eric Anholt2008-11-281-2/+0
| | | | This was causing a prepare of wm state at every primitive emit.
* i965: Fix compiler warning from unused var.Eric Anholt2008-10-271-1/+0
|
* i965: Add ARB_occlusion_query support.Eric Anholt2008-10-071-0/+10
|
* Remove TNL-to-VP tracking from i965Ian Romanick2008-09-281-1/+0
| | | | | | | | The i965 driver previously had it's own set of code to convert fixed-function TNL state to a vertex program. Core Mesa has code to do this, so there is no reason to duplicate that effort in the driver. In fact, this duplication leads to bugs when other aspects of the Mesa infrastructure change.
* intel: Fix a number of memory leaks on context destroy.Eric Anholt2008-09-261-0/+34
|
* i965: Cope with batch getting flushed in the middle of batchbuffer emits.Eric Anholt2008-09-231-2/+1
| | | | | | | | | This isn't required for GEM (at least, yet), but the check_aperture code for non-GEM results in batch getting flushed during emit. brw_state_upload restarts state emits, but a bunch of the state emit functions were assuming that they would be called exactly once, after prepare and before new_batch. Bug #17179.
* mesa: added "main/" prefix to includes, remove some -I paths from ↵Brian Paul2008-09-181-5/+5
| | | | Makefile.template
* intel: Fix refcounting on depth buffer initialization in DRI2.Eric Anholt2008-09-031-15/+3
| | | | (Reverts a change to work around the problem on 965).
* DRI2: Drop sarea, implement swap buffers in the X server.Kristian Høgsberg2008-08-291-3/+15
|
* [i965] multiple rendering target supportZou Nan hai2008-03-131-6/+9
|
* [965] Convert brw_draw_upload to managing dri_bos, not gl_buffer_objects.Eric Anholt2008-02-041-1/+5
| | | | | This helps us avoid a bunch of mess with gl_client_arrays that we filled with unused data and confused readers.
* [965] Force a new vertex upload buffer at new batch time.Eric Anholt2008-01-141-0/+5
| | | | | Otherwise, we could choose to upload into the temporary VBO that we just fired off to the hardware. Good for a 60% OA performance improvement.
* [965] Improve performance by allocating CURBE buffers a page at a time.Eric Anholt2008-01-101-0/+3
| | | | | | Since each one is only 64b, and kernel allocations are a page anyway, this lets us reduce buffer allocation by packing many CURBEs into one buffer, for each batchbuffer submitted. Improves openarena performance by around 10%.
* [965] Allow more than one draw_prims per batchbuffer.Eric Anholt2008-01-091-0/+3
| | | | | | | | The comment about (vbo)_exec_api.c appeared to be stale, as the VBO code seems to only use non-named VBOs (not actual VBOs) or freshly-allocated VBO data. This brings a 2x speedup to openarena, because we can submit nearly-full batchbuffers instead of many 450-byte ones.
* [965] Replace the always_update dirty flag with BRW_NEW_BATCH.Eric Anholt2008-01-091-0/+3
| | | | | | | This allows us to avoid re-emitting some state when validate_state happens multiple times per batchbuffer. Even though we flush batch per primitive currently, that may still happen already if the primitive changed (this should probably be fixed as well).
* [intel] Rename lost_hardware vtbl entry to new_batch.Eric Anholt2008-01-091-10/+5
| | | | | | | Both drivers have ended up relying on lost_hardware being called after each batch buffer, so update the name. This removes one of the calls on 965 whic h was outside of the batchbuffer handling code and just duplicating what had already happened through batchbuffer handling.
* [965] Use shared intel_regions.c.Eric Anholt2007-12-151-2/+2
| | | | | This adds (so far) unused PBO functions, and holding the lock while writing to regions (which may be shared static screen regions).
* [965] Replace the state cache suballocator with direct dri_bufmgr use.Eric Anholt2007-12-141-3/+2
| | | | | | | | | | | | | | | | | | | | | | | The user-space suballocator that was used avoided relocation computations by using the general and surface state base registers and allocating those types of buffers out of pools built on top of single buffer objects. It also avoided calls into the buffer manager for these small state allocations, since only one buffer object was being used. However, the buffer allocation cost appears to be low, and with relocation caching, computing relocations for buffers is essentially free. Additionally, implementing the suballocator required a don't-fence-subdata flag to disable waiting on buffer maps so that writing new data didn't block on rendering using old data, and careful handling when mapping to update old data (which we need to do for unavoidable relocations with FBOs). More importantly, when the suballocator filled, it had no replacement algorithm and just threw out all of the contents and forced them to be recomputed, which is a significant cost. This is the first step, which just changes the buffer type, but doesn't yet improve the hash table to not result in full recompute on overflow. Because the buffers are all allocated out of the general buffer allocator, we can no longer use the general/surface state bases to avoid relocations, and they are set to 0 instead.
* [965] Convert the driver to dri_bufmgr interface and enable TTM.Eric Anholt2007-12-071-5/+3
| | | | | | | | | | | | | This is currently believed to work but be a significant performance loss. Performance recovery should be soon to follow. The dri_bo_fake_disable_backing_store() call was added to allow backing store disable like bufmgr_fake.c did, which is a significant performance win (though it's missing the no-fence-subdata part). This commit is a squash merge of the 965-ttm branch, which had some history I wanted to avoid pulling due to noisiness and brokenness at many points for git-bisecting.
* [965] Remove AUB file support.Eric Anholt2007-09-271-3/+0
| | | | | This code existed to dump logs of hardware access to be replayed in simulation. Since we have real hardware now, it's not really needed.
* Merge branch 'master' of git+ssh://keithw@git.freedesktop.org/git/mesa/mesa ↵Keith Whitwell2007-01-161-0/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * Add accelerated CopyPixels for non-overlapping, 1:1 blits.Eric Anholt2006-11-291-0/+1
| | | | | | | | Submitted by Gary Wong <gtw@gnu.org>
* | cleanup code, compiles with vbo changesKeith Whitwell2006-10-311-9/+1
|/
* Make sure bmBufferOffset is called for all active buffers every timeKeith Whitwell2006-09-071-0/+2
| | | | | we render. Currenly requires that some state be re-examined after every LOCK_HARDWARE().
* Add Intel i965G/Q DRI driver.Eric Anholt2006-08-091-0/+190
This driver comes from Tungsten Graphics, with a few further modifications by Intel.