summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/radeon/radeon_queryobj.c
AgeCommit message (Collapse)Author
2009-11-18Merge branch 'radeon-texrewrite-clean' into mesa_7_7_branchMaciej Cencora
2009-11-17radeon: Fix occlusion queries on big endian.Michel Dänzer
2009-11-14radeon: use radeon_bo_is_referenced_by_cs for query objectsMaciej Cencora
2009-10-28r600: add occlusion query supportAlex Deucher
Based on initial patch from Stephan Schmid <stephan_2303@gmx.de>. Basic idea is to dump the zpass count at the start and end of the query and subtract to get the total number of visible fragments. HW writes alternating qwords for up to 4 DBs. On the first pass, we start at buffer address + 0; on the second pass, we start at buffer address + 8 (bytes). The resulting buffer at the end of the query looks like: qw[0]: db0 start qw[1]: db0 end ... qw[6]: db3 start qw[7]: db3 end The MSB of each qword is the valid bit and the lower 63 bits are the zpass count for that DB. OQ on RV740 is disabled at the moment as it only seems to report results for half of its DBs. This needs further investigation. Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
2009-09-02radeon: Fix OQ to set ful lstate as dirty too.Pauli Nieminen
2009-08-31radeon: Make OQ to use new style debugging.Pauli Nieminen
2009-08-23radeon: use proper macroMaciej Cencora
2009-08-23radeon: use bo_is_idle interface for checking if OQ result is availableMaciej Cencora
2009-08-18r300: OQ reworkDave Airlie
Move to common code base so radeon/r200 can add support for this. Make OQ start a state emitted like all normal state, and make no-tcl flushing work in proper places. Really need a generic post emit space reservation mechanism like max_state so we can reserve some space for the emit this code passes demos/arbocclude, piglit occlusion query and glean occlusion query with TCL and NO-TCL on my rv530.