Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
Seems like a decent idea, especially since the big barrier now is
getting the VBOs back from the VRAM boundary.
|
|
Still not happy with this, but at least things seem to work.
|
|
This creates a cleaner winsys and drop the simple screen stuff.
It makes r300g use pb_bufmgr structs.
It also tries to avoid overheads from mapping too often.
v5: clean warnings
v6: break out of cache check on first buffer - since most likely
the first busy one implies all after it are busy.
v7: cleanup a bit
v8-merged: drop cman for now to just get all the interface changes in first.
rework to changes that happened upstream
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
E.g. when mapping buffers could flush CS or cause waiting
for a busy buffer.
The side effect of this is it also fixes progs/demos/arbocclude however
a separate fix should be proposed to address this issue in other cases
it might occur.
|
|
Not perfect, but the kernel should shut up now.
|
|
Make the kernel even less likely to barf on us.
|
|
Or, put another way, save 10% on rendering calls.
|
|
|
|
Conflicts:
src/gallium/auxiliary/cso_cache/cso_context.c
src/gallium/auxiliary/util/u_blit.c
src/gallium/auxiliary/util/u_gen_mipmap.c
src/gallium/drivers/i915/i915_context.h
src/gallium/drivers/i965/brw_draw_upload.c
src/gallium/drivers/r300/r300_blit.c
src/gallium/drivers/r300/r300_context.h
src/gallium/drivers/r300/r300_render.c
src/gallium/drivers/r300/r300_state_derived.c
src/mesa/state_tracker/st_cb_bitmap.c
src/mesa/state_tracker/st_cb_clear.c
|
|
|
|
|
|
Wine tends to pessimistically use ~0 for its max index, but r300s
only can go up to 2^24-1, causing the kernel checker to freak out.
Civ4 is marginally improved now. Still crashes, but not as bad.
|
|
|
|
Formerly known as vertex_format_state. These two are completely
unrelated when using HWTCL and decoupling them makes the design
less SWTCL-centric.
When bypass_vs_clip_and_viewport gets removed, the PSC setup will
no longer be a derived state.
This change shouldn't make unbreaking SWTCL harder.
|
|
Also cleaning up the nasty validation process.
|
|
Fixing bizarre reports that a vertex buffer is not large enough.
|
|
|
|
Signed-off-by: Corbin Simpson <MostAwesomeDude@gmail.com>
|
|
Reported-by: Andre Maasikas <amaasikas@gmail.com>
|
|
This reverts commit fff5be8e7b4557c221f2425dcafc2e7cbbba76ba.
Probably went too soon with this, dileX reported OA not working for him
it works here fine, but the optimisations I wanted aren't working properly
yet so I'll fix that now.
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
This creates a cleaner winsys and drop the simple screen stuff.
It makes r300g use pb_bufmgr structs and adds usage of the cached
bufmgr for vertex/index buffers.
It also avoids mapping too often.
I'm not 100% sure this is perfect but it won't find its own bugs.
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
The path for VAP_ALT_NUM_VERTICES is also in place (and tested)
but not enabled by default due to the missing support of this reg
in the upstream kernel.
Also, a non-zero BUFFER_BASE in the INDX_BUFFER packet3 hangs the machine.
Am I missing something? Because of this, only draw_arrays can render
more than 65535 vertices without the use of VAP_ALT_NUM_VERTICES.
|
|
|
|
|
|
|
|
|
|
Some delicious hax here.
|
|
Based on Marek's immd-mode patch.
|
|
This reverts commit 112239e9a66a155d36fe2ad0ab130e6f26eff298.
|
|
Nearly 100% performance increase in glxgears.
|
|
I swear ipers runs here after this commit.
After we flush we need to redo the space check
|
|
|
|
This fixes the code space checking VBOs, then resetting the space list
and space checking other buffers. it fixes demos/ipers
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
Sorry, it was a good game, but it just doesn't work.
|
|
|
|
Strangely enough, the code solidified pretty quickly.
|
|
Note that indexSize is changed by r300_translate_elts(). Also make sure
it's destroyed on errors.
|
|
progs/redbook/aapoly, among others, works fine now.
|
|
Will re-enable when the bugs are ironed out.
|
|
|
|
Useful for e.g. blitter.
|
|
If somebody goes through that much effort, they probably intended it.
So humor them. :3
|
|
Argfl. Some of this code is so questionable.
|
|
I want to stab things now.
|
|
Conflicts:
src/gallium/drivers/identity/id_context.c
|
|
|
|
draw_set_mapped_constant_buffer changed API
|