Age | Commit message (Collapse) | Author |
|
It is not necessary to always emit a OUTPLL/INPLL pair when we display
a video frame. On some chips there are erratas for which the workarounds
cause a 10ms delay by those calls. This is related to #5876 though those
affected may suffer from other slowness issues too.
|
|
Instead of calling the DRM CP idle ioctl, just emit the cache flush commands
into the CP stream.
|
|
Still not allowing any clone modes, but heading in the correct direction
I hope... there is a chance this will regress something from superpatch..
|
|
|
|
This is leading towards randr-1.2 believe me :-)
|
|
|
|
Use the overlay scaler's predownscale capability to make videos with large
horizontal resolution work if it exceeds the scaler buffer width. Make the
scaler buffer width user-configurable since we don't know it for all chips,
and using predownscaling may otherwise reduce quality even if it wouldn't
be needed. This should fix bug #1462.
|
|
|
|
|
|
|
|
Always use normalized texture coordinates on R200 and fall back if a POT
texture pitch doesn't match the HW's implicit pitch.
|
|
enabled by RADEONEnableDisplay().
|
|
shouldn't be needed with xrandr++.
Also remove commented out Bioshotkey code.
|
|
Most distros enable this option by defalt anyway, and with xrandr++
it won't be an issue anyway.
|
|
|
|
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.
|
|
|
|
|
|
|
|
|
|
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
|