summaryrefslogtreecommitdiff
path: root/src/radeon_accel.c
AgeCommit message (Collapse)Author
2015-03-17Move #include "radeon_glamor.h" from radeon.h to where it's neededMichel Dänzer
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
2012-07-10Initial glamor support.Michel Dänzer
Enable at build time with --enable-glamor and runtime with Option "AccelMethod" "glamor" The most notable lack of functionality is XVideo. Use something like VDPAU for now. Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
2012-06-15radeon: more unused stuffDave Airlie
Remove all CurrentLayout stuff. Signed-off-by: Dave Airlie <airlied@redhat.com>
2012-06-15radeon: drop radeonGetPixmapOffsetDave Airlie
no longer needed. Signed-off-by: Dave Airlie <airlied@redhat.com>
2012-06-15radeon: move macros into radeon.hDave Airlie
Drop separate header file, there isn't many separate macros now. Signed-off-by: Dave Airlie <airlied@redhat.com>
2012-06-15radeon: make exa copy funcs static.Dave Airlie
These are no longer used outside this area. 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-15radeon: drop radeon_commonfuncs.Dave Airlie
modify all the macros and drop it into radeon_accel.c Signed-off-by: Dave Airlie <airlied@redhat.com>
2012-06-15radeon: misc cleanups.Dave Airlie
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-05-23radeon/xaa: drop scrnIndex parameter to some functionsDave Airlie
This isn't needed, and makes api changes later easier. Signed-off-by: Dave Airlie <airlied@redhat.com>
2012-04-16RADEONCopySwap: Fix RADEON_HOST_DATA_SWAP_16BIT case.Michel Dänzer
It was the same code as for RADEON_HOST_DATA_SWAP_32BIT. This caused bus errors on FreeBSD/PPC, but I'm not sure how it could not cause problems anywhere... Reported-by: Andreas Tobler <andreast@fgznet.ch> Signed-off-by: Michel Dänzer <michel.daenzer@amd.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
2010-12-01radeon: add some missing math.h and assert.h includesDave Airlie
2010-10-07fix the non-kms buildAlex Deucher
Should fix: https://bugs.freedesktop.org/show_bug.cgi?id=30685
2010-08-20Add initial EXA and Xv support for evergreenAlex Deucher
Based on the r6xx/r7xx code updated for evergreen. Still causes GPU hangs in some cases. We haven't tracked down why yet. Might be related to constant buffer persistence. Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
2010-06-29Remove HDP_SOFT_RESET function, there is no need to reset HDP block.Cooper Yuan
This commit can fix an issue reported on DELL server, system gets hang during soft resetting while another application tries to access PCI configuration space.
2010-04-22r3xx: fix gb pipe setup for SE cardsAlex Deucher
Noticed by Tormod Volden
2010-04-16r1xx texvid: deal with large numbers of vertsAlex Deucher
should fix fdo bug 25884
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-26Use/define RADEON_GPU_PAGE_SIZE instead of sprinkling 4096 everywhere.Matt Turner
Also, define RADEON_BUFFER_ALIGN in terms of it, and replace some RADEON_ALIGN(x, RADEON_BUFFER_ALIGN) with RADEON_ALIGN(x, RADEON_GPU_PAGE_SIZE) since this is really what was intended. 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-15Use memcpy instead of memove for RADEONSwapCopy.Pauli Nieminen
memcpy has about 25% better performance than memmove when destination is GTT (wc caching). Changing memmove to memcpy in SwapCopy will reduce CPU time spent moving data between host and GPU. memcpy will specially help Xv when playing high resolution videos. The swap path doesn't support overlapping memory copies either so extra safety is not worth the performance hit in commonly used code path. Signed-off-by: Pauli Nieminen <suokkos@gmail.com> [ Michel Dänzer: Fixed up whitespace ]
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-07-02radeon: add KMS support (still disabled)Dave Airlie
This adds DRI2 + KMS + driver pixmaps support to the driver. I've decided to just do a completely separate KMS driver file instead of hacking the crap out of radeon_driver.c. So now I do the KMS check in radeon_probe.c time and set the DDX pointed up to a completely different set at this stage. This avoids a lot of if (kms) type crap in the code at the expense of making sure we make changes to both files if necessary. This code is still disabled in configure.ac as I broke EXA composite rendering somehow in KMS mode
2009-06-30Warning fixes.Michel Dänzer
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-05-03r3xx-r5xx: switch to 1/12 subpixel precisionAlex Deucher
- based on similar patch in Jerome's cs ddx tree - also fix clipping offsets - should eventually allow for 4k render targets - mesa driver uses 1/12 mode, this avoids changing the subpixel mode when switching between ddx and mesa
2009-04-28RV410: SE variants only have 1 quad pipeAlex Deucher
Should fix EXA corruption with the 3D engine. Mesa and drm patches forthcoming. Reported by Kano on IRC.
2009-03-15Fix fallout from r6xx/r7xx EXA merge in IB handlingAlex Deucher
Noticed Christiaan van Dijk. Should fix bug 20510
2009-02-19R6xx/R7xx: add wait for idle MMIO pathAlex Deucher
2009-02-03Initial R6xx/R7xx EXA and textured video supportAlex Deucher
2009-01-23Make sure gb_num_pipes is initialized when DRI is disabledMaciej Cencora
Found with valgrind
2008-12-15r600: don't idle engineDave Airlie
(cherry picked from commit b77729448e487d37707ce028d8edc59352d1cc2d)
2008-08-25Switch to using radeon_drm.h from the drmAlex Deucher
modelled after Matthias' similar rhd change
2008-08-25Move DRI to a separate structAlex Deucher
based on Matthias' similar work in rhd
2008-08-25Cleanups from rhd portEgbert Eich
- remove unused vars - remove static exa render vars
2008-08-25Move accel state to a separate structAlex Deucher
2008-08-25Move CP into a separate structAlex Deucher
2008-08-13Remove reset of 3D scissor registers when using the CP in the ddxAlex Deucher
They should only affect 3D and init3d() should take care of that case noticed by libv on IRC.
2008-07-03radeon: drop all use of CPMode.Dave Airlie
We never test the other codepath and I don't think I've ever recommended it for anyone.
2008-06-26RADEON: fix copy/paste error in accel codeBrad Smith
2008-06-17radeon: X_ERROR -> X_WARNING for num gb pipesAlex Deucher
This just means your drm is old, not fatal or anything
2008-06-11R3xx: use DSTCACHE_CTLSTAT rather than RB2D_DSTCACHE_CTLSTATAlex Deucher
According to the hw guys, you should use DSTCACHE_CTLSTAT to flush the 2D dst cache rather than RB2D_DSTCACHE_CTLSTAT.
2008-06-03RADEON: minor cleanupsAlex Deucher
2008-05-27R3/4/5xx: use get_param to get the num_gb_pipes from the drmAlex Deucher
2008-05-14Add RS600 supportAlex Deucher
2008-05-13RS4xx: Split out RS400 and RS480 as separate familiesAlex Deucher
RS400 (intel based IGP) and RS480 (AMD based IGP) have different MC setups and need to be handled differently