summaryrefslogtreecommitdiff
path: root/src/radeon_dri.c
AgeCommit message (Collapse)Author
2006-10-15radeon: Track screen damage all the time for page flipping.Michel Dänzer
This way we don't ever have to forcedly synchronize the pages so we hopefully never clobber one page's contents when we shouldn't.
2006-10-14radeon: Don't try to synchronize pages when the CP isn't running.Michel Dänzer
Also move the DamageEmpty() call into RADEONDRIRefreshArea().
2006-09-30radeon: Add support for page flipping with EXA.Michel Dänzer
Also use the damage layer directly instead of via shadowfb and blit dirty rectangles to the second page in LeaveServer in order to try and improve the tradeoff between performance and correctness.
2006-09-25remove all CVS annotations from the ATI driver filesDave Airlie
2006-08-24Disable DRI on RN50 in a more pleasant way.Adam Jackson
Rather than publish a non-existant driver name for RN50, just don't bother initializing it in the first place.
2006-07-03Do even less cache flushing when the previous engine mode is known.Michel Dänzer
OTOH, flush everything when the previous engine mode is unknown, and mark the engine mode as unknown in a couple more cases.
2006-07-03Build and warning fixes for !defined(USE_XAA).Michel Dänzer
2006-07-02Bug #6939: Disable 3D acceleration on RN50 by setting invalid ClientDriverName.Weixing Zhang
2006-06-18Prefer visuals with stencil when it's hardware acclerated.Michel Dänzer
Also make the formatting of the if statements consistent.
2006-06-18Add Option "DepthBits".Michel Dänzer
This allows getting higher depth buffer precision and stencil hardware acceleration in depth 16 or saving some video RAM at the cost of these features in depth 24.
2006-06-15Fix semantic glitches pointed out by gcc -Wall.Michel Dänzer
The radeon driver builds warning-free with gcc -Wall here now.
2006-06-15remove all printf specifier warnings on LinuxDave Airlie
2006-06-15some more unused variable cleanupsDave Airlie
2006-06-08Bug #5678: Fix setting of transfer mode for AGPv3 devices (TilmanMichel Daenzer
Sauerbeck).
2006-05-09Drop support for radeon DRM <= 1.7. The 2.4 kernel has version 1.7, andMichel Daenzer
various problems up to system hangs on X server startup have been reported with that and DRI enabled.
2006-04-29Fix tests for (un)forcing HW cursor. The broken tests caused problems whenMichel Daenzer
switching to console with 3D clients running.
2006-04-29Prefer double-buffered visuals. As a consequence, the root window's visualMichel Daenzer
is double-buffered by default, which is desirable in a number of situations, in particular when running a GLX compositing manager with AIGLX.
2006-04-26Make the ATI driver use the PCI BAR size to determine the MMIO registerDave Airlie
aperture size. Otherwise it tries to overmap things if they are up near the end of memory.
2006-04-21Add support for backing up the PCIE GART table on VT switch. This makesDave Airlie
suspend/resume work a lot better on PCIE cards.
2006-03-22Convert use of xf86fopen() and other xf86 wrapped libc symbols to use libcKristian Høgsberg
symbols directly. The xf86* versions aren't supposed to be used directly. Drop libc wrapper; don't include xf86_ansic.h and add includes now missing.
2006-03-17Fix various small cosmetic issues. Change a driver message, get the orderRoland Scheidegger
right for requesting drm versions, replace the use of some numbers with the respective macro defines in radeon_video.c, and add some more macro defines. None of that really matters.
2006-03-15Fix various issues with DRI & server recycle by putting DRICloseSreen inBenjamin Herrenschmidt
the normal CloseScreen callback chain at a spot that matches the call to DRIFinishScreenInit in order to unwrap at the right time.
2006-03-09More memory map fixes !!! This time, we add a way to get the DRM kernelBenjamin Herrenschmidt
module version early, in order to properly limit the framebuffer size when a module that doesn't support the new map is loaded. That will improve backward compatibility. I also made the minimum required kernel module version 1.3 which hopefully shouldn't be a problem for anybody, and cleaned up the ordering in which we test for DRM version to enable features
2006-02-26Fix page flipping with XAA. The new code ended up calling ShadowFBInit()Benjamin Herrenschmidt
before XAAInit(), which breaks ShadowFB.
2006-02-16Memory map and misc fixes. This completely reworks the way the driverBenjamin Herrenschmidt
detects available & accessible video memory and initializes the card internal memory map. Along the way, I re-ordered some of the stuffs in pre-init in order to remove some dodgy codepath, fixed various init, exit and vt switch issues, and overall made the driver more robust. The full memory map fix requires an updated DRM. The X driver no longer tries to position the AGP aperture, this becomes entirely DRM responsibility.
2005-10-21Bug #4829: Remove some useless DRI symbol checks.Adam Jackson
2005-10-09Secure the Radeon PCIE GART tables in framebuffer memory by not allowingXORG-6_8_99_901Dave Airlie
the clients to get access to a secure area of framebuffer.
2005-09-27Move the RADEONEnablePageFlip/RADEONChangeSurfaces calls back to the end ofRoland Scheidegger
the function (the code above will cause pixmap cache to be freed and copied around, and these functions must be called after that otherwise pixmap damage will occur). May be related to #4440, #4456 (unclear if these setups involve 3d apps)
2005-09-24Disable the {Open,Close}FullScreen DRI protocol. Remove empty FullScreenAdam Jackson
stubs from drivers, comment the non-empty ones.
2005-09-17Switch radeon driver to using a card type rather than having a IsPCI flag,Dave Airlie
allow for PCI/AGP/PCIE cards. Set PCI gart allocation to only happen on PCIE cards. Add Radeon PCIE card detection using capability bits.
2005-09-11Add support for EXA to the radeon driver. Building EXA and XAA support isEric Anholt
controlled at compile time, plus the runtime option of Option "AccelMethod" "EXA" or "XAA". The XAA support appears to remain as before, while the EXA pieces need just a little more polishing. Notable features: - Render acceleration working on Radeon 100 and 200-series with DRI on. - DRI works with EXA Notable issues: - DGA disabled in the EXA case. - Backbuffer moves disabled in the EXA case. - No textured XVideo. - MMIO render acceleration is close but still has some issues. - Memory pressure while using Composite is really troublesome with DRI on. This patch is based on an initial patch by Zack Rusin, with significant work by Benjamin Herrenschmidt and myself.
2005-09-11Add support for allocating PCI GART table in framebuffer memory. This isDave Airlie
needed to support PCIE Radeons using a new DRM.
2005-08-28Bug #4148: Bump required DRM version for r300 to 1.17.Adam Jackson
2005-08-15Egbert's 64bit fixes for mixed 32/64bit clientsAlan Hourihane
2005-07-11Prep for modular builds by adding guarded #include "config.h" everywhere.XORG-6_8_99_16XORG-6_8_99_15Adam Jackson
2005-05-18Bug #3163: Create new DRIINFO_*_VERSION macros to indicate the versionXORG-6_8_99_8Adam Jackson
number of the DRIInfoRec, disambiguating it from the XF86DRI protocol version number. Modify DRIQueryVersion to return the libdri version number, which all DDXes were requesting implicitly. Fix the DDXes to check for the DRIINFO version they were compiled against.
2005-03-24- radeon PLL access errata workarounds (Benjamin Herrenschmidt, acked byAlex Deucher
Hui Yu)
2005-03-04programs/Xserver/hw/xfree86/drivers/ati/radeon_dri.c Let through all chipsVladimir Dergachev
R300 and above - presumably the filtering should take place at the DRM driver level. Correct cut'n'paste position misprint. Big thanks for Michel Danzer for pointing out both improvements.
2005-03-04programs/Xserver/hw/xfree86/drivers/ati/radeon_dri.c Turns out Radeon R420Vladimir Dergachev
chips work fine with R300 microcode. Thanks go to Rune Petersen for careful investigation.
2005-01-26(Stephane Marchesin, me) Add support for color (framebuffer) tiling.Roland Scheidegger
Convert all XAA accel code to use explicit dst and src offset pitch control to make it work. Use the new drm surface ioctls to set up the tiled surfaces (if dri is enabled).
2005-01-26fix issues with mergedfb + pageflip (fix up sarea frame values)Roland Scheidegger
2004-12-17Modified:Vladimir Dergachev
programs/Xserver/hw/xfree86/drivers/ati/radeon_accel.c programs/Xserver/hw/xfree86/drivers/ati/radeon_dri.c Move DMA robustness fix into radeon_dri.c::RADEONEnterServer() as per suggestion by Michel Dänzer. I could not trigger a lockup, even with r300_demo (possibly it has code that flushes cache inside ?), so this must be good enough..
2004-12-12Modified:Vladimir Dergachev
programs/Xserver/hw/xfree86/drivers/ati/radeon_driver.c programs/Xserver/hw/xfree86/drivers/ati/radeon_dri.c Enable DRM support permanently, allowing its use for any CHIP_FAMILY > R300. Fix bug in naming Mesa3d driver (it was defaulting to r200)
2004-12-12- missing diff from agp 8x supportAlex Deucher
2004-12-12Modified:Vladimir Dergachev
programs/Xserver/hw/xfree86/drivers/ati/radeon_accel.c programs/Xserver/hw/xfree86/drivers/ati/radeon_driver.c programs/Xserver/hw/xfree86/drivers/ati/radeon_dri.c programs/Xserver/hw/xfree86/drivers/ati/radeon_common.h programs/Xserver/hw/xfree86/drivers/ati/radeon_version.h Add R300 (and later) DRM support, protected by X_R300_DRM option. Note: at the moment this is for 2d support only, if enabled running glxgears locks up my machine, but DMAForXv=yes works fine.
2004-08-12Fix context switching on Radeons and build problem when XF86DRI is notXORG-6_7_99_2Kevin E Martin
defined (Bug #922, Eric Anholt).
2004-08-09Fix install problem on platforms not using xorg.cf/xfree86.cf (Bug #339,Kevin E Martin
Harold L. Hunt II, Alexander Gottwald). Fix crash when using X core font in zh_CN.UTF-8 locale (Bug #368, Yu Shao, David Dawes). Fix glXMakeCurrent(Dpy, None, NULL) crash (Bug #719, Adam Jackson). HP-PA build fix (Bug #828, Guy Martin, Paul Anderson). Fix SDK build for GATOS and Wacom driver (Bug #829, Bryan Stine). Fix attempt to read video ROM before enabling it (Bug #843, Ivan Kokshaysky, Mike A. Harris). Fix detection of primary adapter (Bug #843, Ivan Kokshaysky, Mike A. Harris). Clarify xset man page description of how to use the keyboard repeat rate settings (Bug #846, Mike A. Harris). Fix problem where print-screen key would get remapped to sys-req in certain keymaps, which broke GNOME printscreen functionality (Bug #847, Owen Taylor). Fix several render problems: - MMIO mode support - Hang on IGP chips - VT switching hang - 3D render corruption (Bug #922, Hui Yu).
2004-07-10Bugzilla #849: Fix DRI pagesize assumptions in radeon and r128 drivers.Adam Jackson
from mharris@, reviewed and applied to DRI by airlied@.
2004-06-20Bug #748:Eric Anholt
- Add Render acceleration for Radeon 100 and 200-series cards, enabled by default. Notable performance gains include 27fps in cairogears instead of 6fps (compared to 50 with glitz), and my disks are now the bottleneck in an ls -lR in gnome-terminal. Only supported in DRI mode because the MMIO submission hangs the card so far, but the code is left in because it may be supportable soon. - Add xorg.conf options to disable Render acceleration and to force the subpixel order in the server (Hui Yu). Many thanks to Hui Yu at ATI for the code this was based off of, Michel Daenzer for bugfixes and suggestions, and LinuxFund for sponsoring the work.
2004-06-16Merge DRI-trunk-20040613 changes in programs/Xserver/hw/xfree86/drivers,Eric Anholt
with the following notes: - Savage and Mach64 (= ati/ati*.[ch] changes) DRI not merged due to insecurity. - VIA driver converted to new drmContext and drmHandle names. - Radeon driver merge conflicted in many places, and MergedFB at least could probably use some checking at this point.