Age | Commit message (Collapse) | Author | Files | Lines |
|
programs/Xserver/hw/xfree86/drivers/ati/radeon_video.c
Patch from Antti Ajanki - provide VBI capture support for PAL and SECAM
(You need GATOS km module to actually get at the data, the change
merely configures the hardware to handle it correctly).
|
|
attachment #2230 (http://bugs.freedesktop.org/attachment.cgi?id=2230)
Wait for idle before uploading HW cursor data to the framebuffer to
avoid lockups when moving the mouse on some machines.
|
|
attachment #2227 (https://bugs.freedesktop.org/attachment.cgi?id=2227)
Fix build problems introduced by previous Radeon PLL errata
workarounds.
|
|
attachment #1516 (https://bugs.freedesktop.org/attachment.cgi?id=1516)
Add TVOUT Support for Mach64 (Leif Delgass, fixed up for Xorg by me).
|
|
Hui Yu)
|
|
Inc.)
|
|
programs/Xserver/hw/xfree86/drivers/ati/radeon_mergedfb.c Back out
RadeonWaitForIdleMMIO that I put in earlier.
From discussion on dri-devel we do not need to be as careful with INREG()
access on Radeons as we are on mach64 chips.
The fix is backed out due to:
it breaks DRI on SMP systems (due to absense of the lock in mouse handling
functions)
I am no longer able to reproduce the lockup I saw before
|
|
multiple of 32 pixels (bug #788)
|
|
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.
|
|
caused by the tiling support (bug #2481)
|
|
programs/Xserver/hw/xfree86/drivers/ati/radeon_video.c
Fix an INREG without WaitForIdleMMIO. This one should be unlikely to
trigger, but we should still do this in the name of correctness.
|
|
programs/Xserver/hw/xfree86/drivers/ati/radeon_mergedfb.c
Add a call to RADEONWaitForIdleMMIO() within RADEONChooseCursorCRTC() as
this function uses OUTREGP() which, internally, calls INREG().
Thus (due to SilkenMouse) INREG() could be called while CP engine was busy.
I have observed this lockup on RV350 + R300 3d driver and have no idea
why no issues were reported for R200 cards. Perhaps, few of them have
enough memory to run merged fb and 3d simultaneously ?
This fix is the right thing to do, however, we might also need to put fifo
management calls into other cursor handling functions (in particular
those that write cursor image directly to video memory).
|
|
|
|
|
|
(yet) (Bugzilla #2504)
|
|
need the special treatment, after all (reported by Stephane Marchesin)
|
|
|
|
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).
|
|
|
|
with DRI support (Bugzilla #2370)
|
|
programs/Xserver/hw/xfree86/drivers/ati/radeon_driver.c
Some of the newer Radeons (R420 for example) have MM_TABLE's with size 0x33
(instead of 0x0c that we know). Furthermore, they lockup during access
of I2C bus !
Add a check to validate MM_TABLE. Note: the check is not more stringent as
other card manufacturers (like Asus or Tekram) might make cards with
slightly different MM_TABLE.
|
|
- formatting cleanup
|
|
|
|
|
|
|
|
|
|
|
|
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)
|
|
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_accel.c
Add DMA robustness fix from Nicolai Haehnle.
TODO: move this fix into DRM driver or other parts of Xserver when R300
support is more stable.
This fix affects only R300 and later variants and results in small slowdown
when using CP acceleration in comparison to the previous version of the
driver.
We are still a lot faster in CP mode than using MMIO register access.
|
|
|
|
programs/Xserver/hw/xfree86/drivers/ati/radeon_render.c
programs/Xserver/hw/xfree86/drivers/ati/radeon_accel.c
Make DMA blitting code more robust.
|
|
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.
|
|
|
|
- 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
|
|
memory (a symptom of incompletely coming up from D3 power state), which
fixes some Dell laptops (closes: #1890).
|
|
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.
|
|
preventing lockups (closes: #1886).
Allow pitches with a granularity of 32, rather than 64, because some
clamshell iBooks have 800-byte pitches. Change Xv allocation
granularity to 8 bytes, rather than 16 bytes, also (closes: #1888).
|
|
stop the engine if we totally fail -- gets rid of serious performance
issues and lockups with r128 DRI.
|
|
|
|
Avoid PIO access on IA64. Some IA64 machine check if legacy ports outside
the VGA range are accessed. The ATi driver however does this to probe
for ISA Mach8/32/64. Since no IA64 has ISA slots this restriction
should not be relevant to the user.
Avoid recursive calls of xf86scanpci(). This function normally detects that
it has been called before by checking if the PCI structure is filled
out. So far if this was not the case (because PCI probing has failed
for some reason) the function is traversed again. With the chipset
specific PCI bus probing this can lead to an endless recursive loop as
the post-probing code calls xf86scanpci() from within this function.
The OS specific PCI code for Linux worked only if bus 0 was populated as it
checked for the presence of /proc/bus/pci/00. Fixed to check for
/proc/bus/pci/<bus_to_look_for> instead.
|
|
factor calculation in panel size derivation in the Radeon driver
(closes: #1881).
|
|
|
|
- make PutVideo() MergedFB aware
|
|
problems'.
|
|
platforms.
Compress all font encodings (Stefan Dirsch).
Fixed warnings.
Turn on forwarding XNSpotLocation event to XIM server in OffTheSpot and
Root mode (bugzilla #1580, James Su).
Added another compose key combination for the Euro symbol (Stefan Dirsch).
Added support for UTF-8 in ja_JP, ko_KR and zh_TW locales (Mike Fabian).
Changed default encoding for ru from KOI8-R to ISO8859-5 (Mike Fabian).
This is the encoding that is also used by glibc. We may break other
libcs - lets see who complains.
Added explanation for DESTDIR to install to a different directory than /.
Added some early bailouts to atiprobe if PCI structure pointer is NULL to
prevent sig11.
XV support doesn't depend on 2D acceleration any more. This patch removes
this limitation from the NSC driver. This is a patch that I have
committed to XFree86 a while ago but never ported over to X.Org.
Matthieu Herrb contributed some build fixes.
Fixing SetDPMSTimers() so that DPMS*Time == 0 disables the appropriate
timer. This takes advantage of the fact that TimerSet() with a timeout
argument 0 behaves like TimerCanel().
Use /dev/xconsole (named pipe) or devpts for system logger (Werner Fink).
Create missing links for backward compatibility to XFree86 (Stefan Dirsch).
Changed comment to mention xorg.
Changed cursor for the 'kill' action from XC_draped_box to XC_Pirate. If
you don't like it we can change it back (original author unkown).
Added 'pic' to the man page rendering command pipeline (Werner Fink).
Added missing return value (Stefan Dirsch, Roland Mainz)
|
|
- Fix EmulateWheelInertia defaults (bug 1115, Andrew Pimlott)
|