Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
move some registers about
|
|
|
|
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.
|
|
Thanks to Matthieu Herrb for pointing out some of these.
|
|
x11perf -getimage numbers only increase by about 20-30% on my PowerBook with an
M9, but by about 100 times(!) with a PCIe X550. I suspect the former could
perform better with PCI as opposed to AGP transfers, which would also remove
the need to disable this by default with AGP.
|
|
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.
|
|
|
|
|
|
#5536 <https://bugs.freedesktop.org/attachment.cgi?id=5536>:
Change HostDataBlit interface to take dst_offset_pitch and coordinates
instead of just a destination pointer, as the latter is not sufficient
with tiling. Also, use HW clipping to avoid overwriting destination
data outside of the specified width.
Adapt to new HostDataBlit interface. This fixes corruption with
UploadToScreen to the front buffer (from exaPutImage).
|
|
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.
|
|
- Add ConstantDPI option to force a particlar dpi across mode changes Both
based on Thomas Winischhofer's sis code.
|
|
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.
|
|
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
|
|
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.
|
|
before XAAInit(), which breaks ShadowFB.
|
|
entries which probably don't really exist (cancelled cards and such),
leave them as-is. Fix the name of some entries, mostly based on the
.inf file of the newest catalyst driver. Use own family id for rv410
and rs400, though there is no different code (yet?).
|
|
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.
|
|
Include "compiler.h" to define __inline__ on non-gcc compilers
|
|
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.
|
|
- adjust limits for tiled surfaces on r3/4xx
|
|
- non-rectangular mergedfb desktops
- screen offsets
|
|
change "foo.h" to <X11/foo.h> for core headers, e.g. X.h, Xpoll.h;
change "foo.h", "extensions/foo.h" and "X11/foo.h" to
<X11/extensions/foo.h> for extension headers, e.g. Xv.h;
change "foo.[ch]" to <X11/Xtrans/foo.[ch]> for Xtrans files.
|
|
RageTheatreMicrocType
|
|
attachment #2227 (https://bugs.freedesktop.org/attachment.cgi?id=2227)
Fix build problems introduced by previous Radeon PLL errata
workarounds.
|
|
Hui Yu)
|
|
caused by the tiling support (bug #2481)
|
|
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).
|
|
|
|
should now work on ppcs without usefbdev. To use this on ppc make sure
you set "usefbdev" to false. (bug 2089)
- Apply Benjamin Herrenschmidt's radeon patches (bug 2064)
|
|
- fix display detection (Hui Yu) bug 1559
- Add new option "BIOSHotkeys" to allow the bios to control output
switching (off by default) bug 2000
- update the savage man page to document the "CrtOnly" option
|
|
system memory to video RAM, which should reduce CPU usage especially
with larger videos. Can be disabled via Option "DMAForXv" if there
should be any stability issues, but it's been stable for me during a
week of testing. Based on a patch by Nikolaus Meine
<meine@tnt.uni-hannover.de>. Probably fix endianness issues in some
newer XVideo code, untested.
Also use hostdata blits to transfer RENDER image data to video RAM to avoid
idling the accelerator engine. Increases RENDER performance
significantly for me.
These changes were only tested on an M9 in a Titanium PowerBook but should
work with all Radeons where direct rendering is supported.
|
|
xc/programs/Xserver/hw/xfree86/drivers/ati/radeon.h
xc/programs/Xserver/hw/xfree86/drivers/ati/radeon_driver.c
xc/programs/Xserver/hw/xfree86/drivers/ati/radeon_video.[c,h]
xc/programs/Xserver/hw/xfree86/drivers/ati/theatre.c Detect and initialize
Rage Theatre (RT100)
|
|
xc/programs/Xserver/hw/xfree86/drivers/ati/radeon.h
xc/programs/Xserver/hw/xfree86/drivers/ati/radeon_video.c
xc/programs/Xserver/hw/xfree86/drivers/ati/radeon_video.h
xc/programs/Xserver/hw/xfree86/drivers/ati/radeon_mm_i2c.c Add code to
access and initialize multimedia i2c bus. Hook it up.
|
|
xc/programs/Xserver/hw/xfree86/drivers/ati/radeon.h Add TV-in specific
options. Add TV-in specific fields to radeon per-screen structure, add
code to initialize them. Preserve MM_TABLE (instead of whole VBIOS as
was done in GATOS drivers)
|
|
harmful. Bugzilla #1169: Add counting for
BEGIN_RING/OUT_RING/ADVANCE_RING to avoid these sorts of problems in
the future.
|
|
defined (Bug #922, Eric Anholt).
|
|
Add special handlings for DELL triple-head server (RV100). Misc. bug
fixes for flat panel, host aperture, etc (Bug #946)
|