summaryrefslogtreecommitdiff
path: root/src/radeon_dri.c
AgeCommit message (Collapse)Author
2007-01-04radeon: fixup fastwrites to be always offDave Airlie
My 8500 in i845 doesn't work with fastwrites even setup by the firmware.
2006-12-19radeon: Default to leaving AGP transfer mode and fast writes unchanged.Michel Dänzer
Based on the assumption that firmware should have set up the card and host bridge appropriately for these settings, this may actually be safer, at least for the transfer rate; leaving fast writes enabled is hopefully safe as well, it certainly is on my sytem. See https://bugs.freedesktop.org/show_bug.cgi?id=9284 .
2006-12-07radeon: Make cache flushing for R300 series less invasive.Michel Dänzer
Instead of calling the DRM CP idle ioctl, just emit the cache flush commands into the CP stream.
2006-11-28radeon: initial move framebuffer away from zero prep.airlied
In theory the driver should be able to handle the front buffer not at VRAM 0 In practice it didn't.. this is cleanup for at least XAA parts of the driver to allow for the frontbuffer to move. It has to re-organise a large part of ScreenInit so things happen in the correct order otherwise some things get setup in-correctly. (not sure EXA with fb not at 0 works yet...)
2006-11-19radeon: Bug #8989: Fix page flipping artifacts with XAA.Michel Dänzer
We still have to force-sync the pages on enabling page flipping with XAA as the second page may have been clobbered by the offscreen pixmap cache since they were last synced.
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.accelerated_indirect-0-0-1Adam 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.