summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/radeon/radeon_common.c
AgeCommit message (Collapse)Author
2010-10-13Drop GLcontext typedef and use struct gl_context insteadKristian Høgsberg
2010-08-02radeon: Add DRI2 flush extension support, so we synchronize properly.Mario Kleiner
When a DRI2 swap buffer is pending we need to make sure we have the flush extension so radeon doesn't resume rendering to or reading from the not yet blitted front buffer. This fixes: https://bugs.freedesktop.org/show_bug.cgi?id=28341 https://bugs.freedesktop.org/show_bug.cgi?id=28410 Signed-off-by: Jerome Glisse <jglisse@redhat.com> Signed-off-by: Mario Kleiner <mario.kleiner@tuebingen.mpg.de>
2010-03-07radeon: no need to emit full state twice after flushMaciej Cencora
2010-01-27radeon/r200/r300: don't clean non-emitted state.Dave Airlie
So if we don't actually emit an atom to the hw because we don't need it in the current state (e.g. lighting related atoms when lighting is off) then don't mark it as clean, because when lighting gets switched on we won't emit it at all. This fixes funky gears colors. Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-01-04Remove leftover __DRI{screen,drawable,context}Private referencesKristian Høgsberg
As part of the DRI driver interface rewrite I merged __DRIscreenPrivate and __DRIscreen, and likewise for __DRIdrawablePrivate and __DRIcontextPrivate. I left typedefs in place though, to avoid renaming all the *Private use internal to the driver. That was probably a mistake, and it turns out a one-line find+sed combo can do the mass rename. Better late than never.
2009-12-22mesa: Remove _mesa_exit wrapper for exit().Eric Anholt
It does nothing else while being less useful than exit() because it lacks attributes that real exit() has.
2009-12-18radeon: fix frontbuffer read/drawpixelsDave Airlie
Bug 25699 The main problem was the optimising flush wasn't doing the front rendering checks properly.
2009-12-08Merge branch 'mesa_7_7_branch'Andre Maasikas
Conflicts: src/mesa/drivers/dri/r600/r700_assembler.c src/mesa/main/version.h
2009-12-07Merge branch 'mesa_7_6_branch' into mesa_7_7_branchIan Romanick
Conflicts: progs/demos/projtex.c progs/xdemos/glxinfo.c src/mesa/main/version.h To fix the confilicts in projtex.c and glxinfo.c I just took the code from mesa_7_6_branch. The conflicts seem to have occured from cherry-picks from mesa_7_7_branch to mesa_7_6_branch followed by commmits just to mesa_7_6_branch.
2009-12-05radeon: Only get DRI2 front buffer information for glXBindTexImageEXT.Michel Dänzer
2009-12-04radeon: fix polygon stippleAlex Deucher
fixes fdo bug 25354 Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
2009-12-02Revert "radeon/r300: no need to flush the cmdbuf when changing scissors ↵Dave Airlie
state in KMM mode" This reverts commit 286bf89e5a1fc931dbf523ded861b809859485e2. This doesn't appear to be correct, regression so revert it. http://bugs.freedesktop.org/show_bug.cgi?id=25193
2009-11-14radeon: use radeon_bo_is_referenced_by_cs for query objectsMaciej Cencora
2009-11-14radeon/r300: no need to flush the cmdbuf when changing scissors state in KMM ↵Maciej Cencora
mode
2009-11-14radeon: remove unnecessary call to radeonEmitStateMaciej Cencora
fixes bo space accounting errors
2009-10-10Merge branch 'mesa_7_6_branch'Brian Paul
2009-10-09radeon: fix scissor regressionAlex Deucher
fixes fdo bug 24248
2009-09-24Merge branch 'mesa_7_6_branch'Pauli Nieminen
2009-09-24radeon: Fix scissors for r600 KMS.Pauli Nieminen
Radeon generic scissors code had problem that some of code was using exclusive and some inclusive bottom right corner. Only r600 driver is using exclusive coordinate so changed generic code to pass inclusive coordinate and r600 driver changes BR coordinate to be exclusive.
2009-09-19mesa: rename functions to be more consistant with rest of mesaBrian Paul
2009-09-09radeon: Add more verbose error message for failed command buffer.Pauli Nieminen
2009-09-01radeon: trim down #includesBrian Paul
2009-09-01radeon: use _mesa_meta_clear()Brian Paul
2009-09-01radeon: fix r100/r200 polygon stipple under kmsDave Airlie
There really need to use state emits under kms, otherwise we end up with some dwords in the command buffer before we've ever emitted any useful state. Signed-off-by: Dave Airlie <airlied@redhat.com>
2009-08-31r100: Use shared debug code.Pauli Nieminen
Converted r100 to use shared debug code with sed and fast compile check. New code has compability layer so old debugging code doesn't have to be changed all immidiatly.
2009-08-28radeon: Fix scissors for dri1.Pauli Nieminen
DRI1 has to set scissors in framebuffer coordinates.
2009-08-28r100/r200: Bring back old PolygonStripple for DRI1.Pauli Nieminen
DRI1 didn't have support for command buffer emit for stripple.
2009-08-28r100/r200: Share PolygonStripple code.Pauli Nieminen
2009-08-27radeon: fix scissor calcs.Dave Airlie
For non-FBOs we need to invert, for FBOs the scissors are non-inverted. no matter what we need to clamp them to the buffer sizes.
2009-08-27radeon: Fix loop en condition so debug output doesn't flood meaningless values.Pauli Nieminen
2009-08-27radeon: Make RADEON_CMDBUF more fine grained.Pauli Nieminen
2009-08-26r200: Add scissor to state atom list.Pauli Nieminen
Scissors are jsut one of states that we have to emit so it should be in state list
2009-08-24radeon: Add debug output to radeonCountStateEmitSize.Pauli Nieminen
2009-08-22radeon/r300: Code clean up and logic fix.Pauli Nieminen
2009-08-21radeon: protect against buffer overflow in state atom debug code.Pauli Nieminen
2009-08-21radeon: Improve state emit code.Pauli Nieminen
Trying to make understanding code easier with small refactoring and renaming.
2009-08-21r300: Predict emit size for next rendering operation.Pauli Nieminen
We do flush for cmd buffer in case there isn't enough space left for whole rendering operation. This protects dma regions from getting released in middle of state emit. Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
2009-08-21r200: Remove unnecessary calls to rcommonEnsureCmdBufSpace.Pauli Nieminen
Calling EnsureCmdBufSpace is not required because rendering pipeline has to quarentee free space. Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
2009-08-21r200: Fix atom->check call to return emit size for atom.Pauli Nieminen
This patch makes render emit size prediction count the corect maximum emit size for state. Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
2009-08-21r200: Prevent flush in middle of rendering.Pauli Nieminen
Patch adds prediction functionthat tries to predict emit size to the smallest possible values that is quarenteed to be higher than worst case scenario in rendering pipeline. State emit size prediction code is in place but fix for emit sizes is included in next patch. Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
2009-08-18radeon: Optimize memory handling for dma operations.Pauli Nieminen
We keep dma buffer objects in list untill they have been unused for many draw operations. Current limit of having 100 flushes is just guess for good performance/memory trade off. Moving WARN_ONCE macro to common context because it is used in multiple drivers. Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
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.
2009-08-15r300: clear not_flushed OQ list after flushMaciej Cencora
2009-08-11r600: use the drm ioctls for swap and texture uploadAlex Deucher
NOTE: THIS REQUIRES AN UPDATED DRM!
2009-08-03radeon: Fix inverted test for disabling flushing of front buffer output.Eric Anholt
(corresponding fix to the intel driver one)
2009-07-31radeon: Cliprects has to be updated before doing anything with clip rectanglesPauli Nieminen
Reported to fix corruption while dragging an active window by John Bridgman. Signed-off-by: Pauli Nieminen <suokkos@gmail.com> Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-15Merge branch 'master' of git+ssh://agd5f@git.freedesktop.org/git/mesa/mesa ↵Alex Deucher
into r6xx-rewrite This builds, but I get an assertion in radeonGetLock() due to the drawable being null.
2009-07-15make sure ctx->Driver.Flush is valid before calling itAlex Deucher
2009-07-15Use memcpy directly in the common codeAlex Deucher
This alleviates the need for an additional symbol.
2009-07-14R6xx/r7xx: implement memcpy buffer swapsAlex Deucher
This allows double buffered apps to run, but perfomance will be awful until we implement something faster. You must update to the latest kernel modules.