summaryrefslogtreecommitdiff
path: root/src/radeon_exa_render.c
AgeCommit message (Collapse)Author
2018-07-12Replace 'foo == NULL' with '!foo'Michel Dänzer
Shorter and sweeter. :) (Ported from amdgpu commit e8e688f3852fb06b0c34ed5bce47c9493bcd1613) Acked-by: Alex Deucher <alexander.deucher@amd.com>
2013-07-22Fix RADEON_FALLBACK loggingGrigori Goronzy
2013-01-11radeon/r200: program RE_WIDTH_HEIGHT properlyAlex Deucher
Values are inclusive. Mesa already sets these correctly. Also bump EXA/Xv limits from 2047 to 2048. Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
2013-01-10Drop support for X servers older than 1.7.Michel Dänzer
The main purpose is to drop DRI2 compatibility code paths which are getting awkward to deal with and at this point are probably only tested lightly if at all. xserver 1.7 was released more than 3 years ago, and 1.6.2 was already required before. Mostly mechanical, there's probably potential for more cleanups. Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
2013-01-03video: add option to include disabled CRTCs in best CRTC searchIlija Hadzic
This patch adds an option called consider_disabled to radeon_pick_best_crtc function. If this option is set and searching for best-fit CRTC yields nothing, the search will be widened to include CRTCs in DPMS "off" state. The new option is not used yet; it will be in the patches to follow. v2: Do not look at the CRTC mode, we only care about its box. Signed-off-by: Ilija Hadzic <ihadzic@research.bell-labs.com> Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
2012-06-15radeon: drop more wrapper macros.Dave Airlie
Signed-off-by: Dave Airlie <airlied@redhat.com>
2012-06-15radeon: further macro cleanups.Dave Airlie
drop some more of the wrapper macros. Signed-off-by: Dave Airlie <airlied@redhat.com>
2012-06-15radeon: drop FUNC_NAME macro and ONCE_ONLY stuffDave Airlie
Drop all the CP vs MMIO macros that name functions. Signed-off-by: Dave Airlie <airlied@redhat.com>
2012-06-15drop RING_LOCALS/ACCEL_PREAMBLEDave Airlie
these were unused now. Signed-off-by: Dave Airlie <airlied@redhat.com>
2012-06-15radeon: drop all UMS/DRI1/XAA/overlay support.Dave Airlie
This overhauls the radeon driver and removes all the old UMS-only code, it drops all the UMS, DRI1, XAA, overlay Xv, video capture, tv tuners There are probably a lot more cleanups that will fall out of this afterwards. So far this is compile/build tested. Signed-off-by: Dave Airlie <airlied@redhat.com>
2012-05-23ati: convert to new screen conversion APIsDave Airlie
The compat header takes care of the old server vs new server. this commit was autogenerated from util/modular/x-driver-screen-scrn-conv.sh Signed-off-by: Dave Airlie <airlied@redhat.com>
2012-04-16EXA: Support acceleration of solid pictures on R2xx.Alex Deucher
Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
2012-04-16EXA: Support acceleration of solid pictures on R1xx.Alex Deucher
Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
2012-04-16EXA: Support acceleration of solid pictures on R3xx-R7xx.Michel Dänzer
Allocate 1x1 scratch pixmaps to hold the solid picture colours. This works around https://bugs.freedesktop.org/show_bug.cgi?id=47266 and might improve performance in other cases as well. Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
2011-04-14R520: Fix textures larger than 2kAdam Jackson
Ported from the equivalent fix in Mesa.
2011-03-16radeon/exa: correct function nameDave Airlie
this corrects the function name so it matches the contents. Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-12-03radeon/exa: fallback for non-affine transformsAlex Deucher
We need to implement a texture lookup with perspective divide for non-affine transforms. For now just fallback. Should fix: https://bugs.freedesktop.org/show_bug.cgi?id=31799 although it appears either EXA or the xserver gets this wrong too.
2010-08-01radeon/r600: restructure exa + vbo to provide more sharingDave Airlie
This is a precursor for r300/500 vbo support. Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-05-17r2xx exa: fix typo in 27c3326863deae36bc35e2c3b73fffd400208ff1Alex Deucher
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
2010-05-17r1xx/r2xx EXA: handle RepeatNone properly with transformsAlex Deucher
Fallback with unsupported ops like r3xx, r6xx. Should fix fdo bug 28142. Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
2010-02-26Use RADEON_ALIGN instead of open coding it.Matt Turner
Also fix some RADEON_ALIGN(x, 63), which would return incorrect results for odd x. Though this shouldn't happen, it's still not right. You wouldn't ever write (x + 62) & ~62 which is clearly wrong (and what it expands to). CC: Jerome Glisse <jglisse@redhat.com> CC: Alex Deucher <alexdeucher@gmail.com> CC: Dave Airlie <airlied@redhat.com> Signed-off-by: Matt Turner <mattst88@gmail.com>
2010-02-15EXA: Fix order of coordinates passed to radeon_pick_best_crtc().Michel Dänzer
The wrong order prevented tearing avoidance from working with EXA/DRI2.
2010-02-12radeon: consolidate crtc selector for vline waitAlex Deucher
Use the Xv version as it takes into account the area covered by the op rather than just picking the largest crtc area.
2009-11-20r300: render target limit is 2560Alex Deucher
limit was increased to 4021 in r4xx. fixes fdo bug 25191. Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
2009-11-05EXA: fallback if no pMaskPicture->pDrawableAlex Deucher
A solid or gradient mask could be used for blending the source picture onto the destination picture. Fixes fdo bug 24838 Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
2009-10-06Don't call radeon_cs_flush_indirect() without KMS.Michel Dänzer
Fixes http://bugs.freedesktop.org/show_bug.cgi?id=24316 .
2009-10-05R1/2xx EXA: Minimise number of draw primitives used for Composite operations.Alex Deucher
2009-10-04radeon: fix build without kmsDave Airlie
2009-10-03R3/5xx EXA: Add support for BGRA picture formats.Michel Dänzer
Also add mysteriously missing case statements for ABGR destination formats.
2009-10-03R3/5xx EXA: Minimise number of draw primitives used for Composite operations.Michel Dänzer
This should reduce the kernel CS checker overhead, if nothing else. I'll leave porting this to other chipset families to others who can test it.
2009-09-03EXA: Check for solid/gradient pictures the same way for all generations.Michel Dänzer
In particular, also catch them for >= R300.
2009-09-02EXA: Fix Composite restart dst/src switcheroo.Michel Dänzer
Fixes http://bugs.freedesktop.org/show_bug.cgi?id=22636 . Now, where's that brown paper bag? :}
2009-09-01r100/r200: seriously WRAP is illegal for rectangular texturesDave Airlie
unless we scale all the bos up to POT
2009-08-28EXA: RENDER repeat fix and more cleanup.Michel Dänzer
Apparently changing pPict->repeatType causes badness, see http://bugs.freedesktop.org/show_bug.cgi?id=23560 . Now we just use a normalized repeatType value derived from pPict->repeat and pPict->repeatType everywhere.
2009-08-27EXA: RENDER repeat cleanups.Michel Dänzer
We can't rely on the server setting pPict->repeatType to something sensible when pPict->repeat is FALSE, but we can do it ourselves.
2009-08-17r100/r200: dont emit wrong clamp modes.Dave Airlie
for rect textures you don't want to use wrap clamping which is the default.
2009-08-07r200: fixup scissors for DDX.Dave Airlie
a) turn of R200_RE_CNTL - SCISSOR_ENABLE - this save us emitting R200_RE_TOP_LEFT, note scissor is still enabled. b) disable aux scissors.
2009-07-15radeon: emit colorpitch relocs.Dave Airlie
This causes relocs to be emitted for the colorpitch. Shouldn't have no effect on current kernels, but will keep DDX going on kms kernels when tiling lands Also contains a missing reloc space for r200
2009-07-08Further non-KMS fixes / cleanups.Michel Dänzer
Only compile tested.
2009-07-08Fix the build for the !XF86DRM_MODE caseAlex Deucher
compile tested only.
2009-07-08KMS CS fixes, take two.Michel Dänzer
Avoid flushing CS in the middle of (setting up state for) an operation, properly finish/restart the operation.
2009-07-06radeon: port to new space checking in libdrm interfaceDave Airlie
This uses a new libdrm interface which shares code with mesa. It also fixes the bo to flush when full instead of never flushing. It survives gtkperf -a here which the driver didn't before now
2009-07-06Revert "KMS CS fixes."Dave Airlie
This reverts commit 11cf8a28eb46f48d101888552266921bee8b63fc. I'll bring this back in a few minutes, I've got a big change introducing a new cs space accounting scheme which this messes up and I think probably conflicts with what I've done. I promise i'll go over this and pick the bits that are still useful :)
2009-07-05KMS CS fixes.Michel Dänzer
* Flush CS before running out of space. * Don't flush CS every time when switching between 2D and 3D engine, but make sure to re-initialize 2D/3D state after flushing. Doesn't seem quite perfect yet (some rendering seems to get dropped on the floor sometimes), but this should fix a lot of CS failures people have been seeing.
2009-06-30radeon: initial preparation for kms patch.Dave Airlie
This patch contains most of the changes to the EXA and texture video accel code. It adds a few bits of pixmap support but doesn't actually do anything useful KMS yet. Testing this should not have any regressions over what we have already, biggest worries are r6xx, I've fixed a textured video one, but no idea what other might lurk It won't build against libdrm radeon yet either
2009-06-29Check if the composite op is supported in R200CheckComposite.Fredrik Höglund
2009-06-09r1xx/r2xx: clip 3D rendering to destination bufferAlex Deucher
2009-06-09r3xx/r4xx/r5xx: clip 3D rendering to destination bufferAlex Deucher
2009-06-09r3xx/r4xx/r5xx: refactor exa prepare compositeAlex Deucher
- consolidate code duplicated between r3xx/r4xx and r5xx - make pixel shader setup easier to read and less redundant
2009-05-26R3xx/R4xx: increase EXA render target limitsAlex Deucher
now that we are using 1/12 subpixel mode