Age | Commit message (Collapse) | Author |
|
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.
|
|
Also move the DamageEmpty() call into RADEONDRIRefreshArea().
|
|
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.
|
|
|
|
Rather than publish a non-existant driver name for RN50, just don't bother
initializing it in the first place.
|
|
OTOH, flush everything when the previous engine mode is unknown, and mark the
engine mode as unknown in a couple more cases.
|
|
|
|
|
|
Also make the formatting of the if statements consistent.
|
|
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.
|
|
The radeon driver builds warning-free with gcc -Wall here now.
|
|
|
|
|
|
Sauerbeck).
|
|
various problems up to system hangs on X server startup have been
reported with that and DRI enabled.
|
|
switching to console with 3D clients running.
|
|
is double-buffered by default, which is desirable in a number of
situations, in particular when running a GLX compositing manager with
AIGLX.
|
|
aperture size. Otherwise it tries to overmap things if they are up near
the end of memory.
|
|
suspend/resume work a lot better on PCIE cards.
|
|
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.
|
|
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.
|
|
the normal CloseScreen callback chain at a spot that matches the call
to DRIFinishScreenInit in order to unwrap at the right time.
|
|
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
|
|
before XAAInit(), which breaks ShadowFB.
|
|
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.
|
|
|
|
the clients to get access to a secure area of framebuffer.
|
|
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)
|
|
stubs from drivers, comment the non-empty ones.
|
|
allow for PCI/AGP/PCIE cards. Set PCI gart allocation to only happen on
PCIE cards. Add Radeon PCIE card detection using capability bits.
|
|
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.
|
|
needed to support PCIE Radeons using a new DRM.
|
|
|
|
|
|
|
|
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.
|
|
Hui Yu)
|
|
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.
|
|
chips work fine with R300 microcode. Thanks go to Rune Petersen for
careful investigation.
|
|
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).
|
|
|
|
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..
|
|
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)
|
|
|
|
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.
|
|
defined (Bug #922, Eric Anholt).
|
|
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).
|
|
from mharris@, reviewed and applied to DRI by airlied@.
|
|
- 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.
|
|
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.
|