summaryrefslogtreecommitdiff
path: root/src/radeon_exa.c
AgeCommit message (Collapse)Author
2006-11-28fixup EXA after previous commitairlied
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-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-07-13Move variable declarations before statements to be C89 compatibleTilman Sauerbeck
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-03Bug #6762: Remove gratuitous cache flushing.Eric Anholt
2006-07-03Reserve HW cursor memory statically instead of from EXA offscreen.Michel Dänzer
As a result, quite a bit of code can be removed that attempted to deal with the EXA offscreen memory disappearing, with varying success. Because the HW cursor memory is now always immediately after the front buffer and before the back buffer, this also fixes bug #6808. As the HW cursor memory is now reserved statically with EXA and XAA, change RADEONUseHWCursor() to check info->cursor instead of info->cursor_offset, for which 0 might become valid with HW cursor enabled in the future. Change info->cursor_offset from unsigned long to CARD32 as the corresponding register is 32 bits wide, and to avoid issues with printf.
2006-06-21Bug #7283: Build fixes for !defined(XF86DRI).Michel Dänzer
Thanks to Matthieu Herrb for pointing out some of these.
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-15Remove another unused variable.Michel Dänzer
2006-03-09Update drivers that support EXA for the new EXA ABI. This consists ofEric Anholt
moving all the accel and card members into the driver ptr, filling in the exa_major/ exa_minor fields, and always using LoadSubModule so we can check the module version up front. Only tested on ATI.
2006-03-03Add Option "FBTexPercent" to override the amount of video RAM reserved forMichel Daenzer
OpenGL textures with EXA.
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-27Fix Radeon MMIO Render acceleration with EXA by writing out floating- pointEric Anholt
coordinates rather than integers.
2005-09-20Only include radeon_dri.h & radeon_sarea.h if XF86DRI is defined.Alan Coopersmith
Include "compiler.h" to define __inline__ on non-gcc compilers
2005-09-17- Don't try to upload 0 byte-per-pixel (PICT_a1) data usingEric Anholt
RADEONHostDataBlit. - Disable the shortcut for switching from 3d to 3d in radeon_exa.c. It appears that we do need the cache flush here, thought it's not clear why. Disable the 2d to 2d shortcut while here, since I'm unsure of what we're doing. Exposed by the following bit: - Bug #4485: Add a new routine, exaGlyphs, to handle font drawing. Glyphs were being accumulated in from non-migratable scratch pixmaps, causing the destination pixmap to move towards screen but the migration necessary for source never to happen, leading to abysmal performance. Instead, copy the scratch glyph data into a real pixmap first, then composite from that into the destination, allowing for migration. time ls -lR from programs/Xserver showed 26.9% (+/- 6.3%) decrease in wall time (n=3). - Create exaDrawableUse* wrapping exaPixmapUse*, but which are aware of windows needing backing store. Makes migration code prettier, and ensures that composited windows will be migrated as normal when we turn off cw for EXA. (issue brought up by keithp)
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-12Fix Radeon EXA for when RENDER isn't definedDave Airlie
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.