summaryrefslogtreecommitdiff
path: root/src/gallium/winsys/r600/drm/r600_hw_context.c
AgeCommit message (Collapse)Author
2010-10-06r600g: fix dirty state handlingJerome Glisse
Avoid having object ending up in dead list of dirty object. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-10-06r600g: avoid segfault due to unintialized list pointerJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-10-05r600g: userspace fence to avoid kernel call for testing bo busy statusJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-10-05r600g: simplify block relocationJerome Glisse
Since flush rework there could be only one relocation per register in a block. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-10-05r600g: use dirty list to track dirty blocksBas Nieuwenhuizen
Got a speed up by tracking the dirty blocks in a seperate list instead of looping through all blocks. This version should work with block that get their dirty state disabled again and I added a dirty check during the flush as some blocks were already dirty.
2010-10-05r600g: improve bo flushingJerome Glisse
Flush read cache before writting register. Track flushing inside of a same cs and avoid reflushing same bo if not necessary. Allmost properly force flush if bo rendered too and then use as a texture in same cs (missing pipeline flush dunno if it's needed or not). Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-10-05r600g: store reloc information in bo structureJerome Glisse
Allow fast lookup of relocation information & id which was a CPU time consumming operation. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-10-05r600g: drop use_mem_constant.Dave Airlie
since we plan on using dx10 constant buffers everywhere.
2010-10-05r600g: add bo fenced list.Dave Airlie
this just keeps a list of bos submitted together, and uses them to decide bo busy state for the whole group.
2010-10-04r600g: use r600_bo for relocation argument, simplify codeJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-10-04r600g: allow r600_bo to be a sub allocation of a big boJerome Glisse
Add bo offset everywhere needed if r600_bo is ever a sub bo of a bigger bo. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-10-04r600g: rename radeon_ws_bo to r600_boJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-10-04r600g: TODO domain managementDave Airlie
no wonder it was slow, the code is deliberately forcing stuff into GTT, we used to have domain management but it seems to have disappeared.
2010-10-04r600g: break out of search for reloc bo after finding it.Dave Airlie
this function was taking quite a lot of pointless CPU.
2010-10-01r600g: setup basic loop consts on r600 + evergreen.Dave Airlie
this sets up a single loop constant like r600c does.
2010-10-01r600g: add cb flushing for extra buffers + depth buffer on r600/evergreenDave Airlie
2010-10-01r600g: add winsys support for CTL constants.Dave Airlie
These need to be emitted, we also need them to do proper vtx start, instead of abusing index offset.
2010-10-01r600g: use Elements macro instead of manual sizeofsDave Airlie
2010-09-30r600g: don't double count dirty blockJohn Doe
This avoid to overcount the number of dwords we need and thus avoid maximazation of cs buffer use. Signed-off-by: Jerome Glisse <jglisse@redhat.com
2010-09-30r600g: use constant buffer instead of register for constantJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-09-30r600g: clean up some code from move to new paths.Dave Airlie
mainly remove 2 suffix from function names
2010-09-29r600g: more cleanupJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>