xserver-xorg-video-ati: Changes to 'debian-experimental'
ChangeLog | 251 +++++
aclocal.m4 | 2
configure | 32
configure.ac | 6
debian/changelog | 17
debian/patches/01_ati_r128_update_chip_identification.diff | 75 -
debian/patches/02_radeon_manpage.diff | 13
debian/patches/series | 2
man/ati.man | 4
man/radeon.man | 4
src/atimach64xv.c | 3
src/r128_driver.c | 3
src/radeon.h | 22
src/radeon_accel.c | 38
src/radeon_bios.c | 21
src/radeon_common.h | 7
src/radeon_commonfuncs.c | 14
src/radeon_cursor.c | 64 -
src/radeon_display.c | 611 +++++--------
src/radeon_dri.c | 51 +
src/radeon_driver.c | 493 +++++-----
src/radeon_exa.c | 17
src/radeon_probe.h | 3
src/radeon_reg.h | 8
src/radeon_video.c | 16
25 files changed, 981 insertions(+), 796 deletions(-)
New commits:
commit 3a2172a097ca2053f4d57850a01b54c9a98f7c23
Author: Brice Goglin <Brice.Goglin@ens-lyon.org>
Date: Sat Aug 4 12:09:48 2007 +0200
Drop 01_ati_r128_update_chip_identification.diff and 02_radeon_manpage.diff
diff --git a/debian/changelog b/debian/changelog
index e53f1e7..15744c6 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -6,6 +6,11 @@ xserver-xorg-video-ati (1:6.6.193-1) UNRELEASED; urgency=low
in the ati(4) manpage (closes: #386001).
+ Fix typo in "specifying" in the radeon(4) manpage
(closes: #432059).
+ + Drop 01_ati_r128_update_chip_identification.diff since
+ this information is redundant and does not matter anyway
+ since the driver auto-detects how the card is connected
+ to the system.
+ + Drop 02_radeon_manpage.diff, merged upstream.
[ Julien Cristau ]
* Add upstream URL to debian/copyright. Thanks, Loïc Minier.
diff --git a/debian/patches/01_ati_r128_update_chip_identification.diff b/debian/patches/01_ati_r128_update_chip_identification.diff
deleted file mode 100644
index ce9f892..0000000
--- a/debian/patches/01_ati_r128_update_chip_identification.diff
+++ /dev/null
@@ -1,75 +0,0 @@
-Index: xf86-video-ati-X11R7.0-6.5.7.3/src/r128_chipset.h
-===================================================================
---- xf86-video-ati-X11R7.0-6.5.7.3.orig/src/r128_chipset.h 2006-01-12 22:54:09.000000000 -0500
-+++ xf86-video-ati-X11R7.0-6.5.7.3/src/r128_chipset.h 2006-02-26 17:42:19.000000000 -0500
-@@ -7,43 +7,43 @@
- { PCI_CHIP_RAGE128LF, "ATI Rage 128 Mobility M3 LF (AGP)" },
- { PCI_CHIP_RAGE128MF, "ATI Rage 128 Mobility M4 MF (AGP)" },
- { PCI_CHIP_RAGE128ML, "ATI Rage 128 Mobility M4 ML (AGP)" },
-- { PCI_CHIP_RAGE128PA, "ATI Rage 128 Pro GL PA (PCI/AGP)" },
-- { PCI_CHIP_RAGE128PB, "ATI Rage 128 Pro GL PB (PCI/AGP)" },
-- { PCI_CHIP_RAGE128PC, "ATI Rage 128 Pro GL PC (PCI/AGP)" },
-+ { PCI_CHIP_RAGE128PA, "ATI Rage 128 Pro GL PA (AGP?)" },
-+ { PCI_CHIP_RAGE128PB, "ATI Rage 128 Pro GL PB (AGP?)" },
-+ { PCI_CHIP_RAGE128PC, "ATI Rage 128 Pro GL PC (AGP?)" },
- { PCI_CHIP_RAGE128PD, "ATI Rage 128 Pro GL PD (PCI)" },
-- { PCI_CHIP_RAGE128PE, "ATI Rage 128 Pro GL PE (PCI/AGP)" },
-+ { PCI_CHIP_RAGE128PE, "ATI Rage 128 Pro GL PE (AGP?)" },
- { PCI_CHIP_RAGE128PF, "ATI Rage 128 Pro GL PF (AGP)" },
-- { PCI_CHIP_RAGE128PG, "ATI Rage 128 Pro VR PG (PCI/AGP)" },
-- { PCI_CHIP_RAGE128PH, "ATI Rage 128 Pro VR PH (PCI/AGP)" },
-- { PCI_CHIP_RAGE128PI, "ATI Rage 128 Pro VR PI (PCI/AGP)" },
-- { PCI_CHIP_RAGE128PJ, "ATI Rage 128 Pro VR PJ (PCI/AGP)" },
-- { PCI_CHIP_RAGE128PK, "ATI Rage 128 Pro VR PK (PCI/AGP)" },
-- { PCI_CHIP_RAGE128PL, "ATI Rage 128 Pro VR PL (PCI/AGP)" },
-- { PCI_CHIP_RAGE128PM, "ATI Rage 128 Pro VR PM (PCI/AGP)" },
-- { PCI_CHIP_RAGE128PN, "ATI Rage 128 Pro VR PN (PCI/AGP)" },
-- { PCI_CHIP_RAGE128PO, "ATI Rage 128 Pro VR PO (PCI/AGP)" },
-+ { PCI_CHIP_RAGE128PG, "ATI Rage 128 Pro VR PG (AGP?)" },
-+ { PCI_CHIP_RAGE128PH, "ATI Rage 128 Pro VR PH (AGP?)" },
-+ { PCI_CHIP_RAGE128PI, "ATI Rage 128 Pro VR PI (AGP?)" },
-+ { PCI_CHIP_RAGE128PJ, "ATI Rage 128 Pro VR PJ (AGP?)" },
-+ { PCI_CHIP_RAGE128PK, "ATI Rage 128 Pro VR PK (AGP?)" },
-+ { PCI_CHIP_RAGE128PL, "ATI Rage 128 Pro VR PL (AGP?)" },
-+ { PCI_CHIP_RAGE128PM, "ATI Rage 128 Pro VR PM (AGP?)" },
-+ { PCI_CHIP_RAGE128PN, "ATI Rage 128 Pro VR PN (AGP?)" },
-+ { PCI_CHIP_RAGE128PO, "ATI Rage 128 Pro VR PO (AGP?)" },
- { PCI_CHIP_RAGE128PP, "ATI Rage 128 Pro VR PP (PCI)" },
-- { PCI_CHIP_RAGE128PQ, "ATI Rage 128 Pro VR PQ (PCI/AGP)" },
-+ { PCI_CHIP_RAGE128PQ, "ATI Rage 128 Pro VR PQ (AGP?)" },
- { PCI_CHIP_RAGE128PR, "ATI Rage 128 Pro VR PR (PCI)" },
-- { PCI_CHIP_RAGE128PS, "ATI Rage 128 Pro VR PS (PCI/AGP)" },
-- { PCI_CHIP_RAGE128PT, "ATI Rage 128 Pro VR PT (PCI/AGP)" },
-- { PCI_CHIP_RAGE128PU, "ATI Rage 128 Pro VR PU (PCI/AGP)" },
-- { PCI_CHIP_RAGE128PV, "ATI Rage 128 Pro VR PV (PCI/AGP)" },
-- { PCI_CHIP_RAGE128PW, "ATI Rage 128 Pro VR PW (PCI/AGP)" },
-- { PCI_CHIP_RAGE128PX, "ATI Rage 128 Pro VR PX (PCI/AGP)" },
-+ { PCI_CHIP_RAGE128PS, "ATI Rage 128 Pro VR PS (AGP?)" },
-+ { PCI_CHIP_RAGE128PT, "ATI Rage 128 Pro VR PT (AGP?)" },
-+ { PCI_CHIP_RAGE128PU, "ATI Rage 128 Pro VR PU (AGP?)" },
-+ { PCI_CHIP_RAGE128PV, "ATI Rage 128 Pro VR PV (AGP?)" },
-+ { PCI_CHIP_RAGE128PW, "ATI Rage 128 Pro VR PW (AGP?)" },
-+ { PCI_CHIP_RAGE128PX, "ATI Rage 128 Pro VR PX (AGP?)" },
- { PCI_CHIP_RAGE128RE, "ATI Rage 128 GL RE (PCI)" },
- { PCI_CHIP_RAGE128RF, "ATI Rage 128 GL RF (AGP)" },
- { PCI_CHIP_RAGE128RG, "ATI Rage 128 RG (AGP)" },
- { PCI_CHIP_RAGE128RK, "ATI Rage 128 VR RK (PCI)" },
- { PCI_CHIP_RAGE128RL, "ATI Rage 128 VR RL (AGP)" },
-- { PCI_CHIP_RAGE128SE, "ATI Rage 128 4X SE (PCI/AGP)" },
-- { PCI_CHIP_RAGE128SF, "ATI Rage 128 4X SF (PCI/AGP)" },
-- { PCI_CHIP_RAGE128SG, "ATI Rage 128 4X SG (PCI/AGP)" },
-- { PCI_CHIP_RAGE128SH, "ATI Rage 128 4X SH (PCI/AGP)" },
-- { PCI_CHIP_RAGE128SK, "ATI Rage 128 4X SK (PCI/AGP)" },
-- { PCI_CHIP_RAGE128SL, "ATI Rage 128 4X SL (PCI/AGP)" },
-+ { PCI_CHIP_RAGE128SE, "ATI Rage 128 4X SE (AGP?)" },
-+ { PCI_CHIP_RAGE128SF, "ATI Rage 128 4X SF (AGP?)" },
-+ { PCI_CHIP_RAGE128SG, "ATI Rage 128 4X SG (AGP?)" },
-+ { PCI_CHIP_RAGE128SH, "ATI Rage 128 4X SH (AGP?)" },
-+ { PCI_CHIP_RAGE128SK, "ATI Rage 128 4X SK (AGP?)" },
-+ { PCI_CHIP_RAGE128SL, "ATI Rage 128 4X SL (AGP?)" },
- { PCI_CHIP_RAGE128SM, "ATI Rage 128 4X SM (AGP)" },
-- { PCI_CHIP_RAGE128SN, "ATI Rage 128 4X SN (PCI/AGP)" },
-+ { PCI_CHIP_RAGE128SN, "ATI Rage 128 4X SN (AGP?)" },
- { PCI_CHIP_RAGE128TF, "ATI Rage 128 Pro ULTRA TF (AGP)" },
- { PCI_CHIP_RAGE128TL, "ATI Rage 128 Pro ULTRA TL (AGP)" },
- { PCI_CHIP_RAGE128TR, "ATI Rage 128 Pro ULTRA TR (AGP)" },
diff --git a/debian/patches/02_radeon_manpage.diff b/debian/patches/02_radeon_manpage.diff
deleted file mode 100644
index 7cdd526..0000000
--- a/debian/patches/02_radeon_manpage.diff
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: xserver-xorg-video-ati/man/radeon.man
-===================================================================
---- xserver-xorg-video-ati.orig/man/radeon.man 2007-05-21 00:59:25.000000000 +0200
-+++ xserver-xorg-video-ati/man/radeon.man 2007-05-21 00:59:29.000000000 +0200
-@@ -644,7 +644,7 @@
- Alan Hourihane \fIalanh@fairlite.demon.co.uk\fP
- Marc Aurele La France \fItsi@xfree86.org\fP
- Benjamin Herrenschmidt \fIbenh@kernel.crashing.org\fP
--Michel Dänzer \fImichel@tungstengraphics.com\fP
-+Michel D\(:anzer \fImichel@tungstengraphics.com\fP
- Alex Deucher \fIalexdeucher@gmail.com\fP
- Bogdan D. \fIbogdand@users.sourceforge.net\fP
- Eric Anholt \fIeric@anholt.net\fP
diff --git a/debian/patches/series b/debian/patches/series
index 639c724..e69de29 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,2 +0,0 @@
-01_ati_r128_update_chip_identification.diff
-02_radeon_manpage.diff
commit 4161818fc1276c2eda1c11ddc332edff82f5721d
Author: Brice Goglin <Brice.Goglin@ens-lyon.org>
Date: Sat Aug 4 12:01:20 2007 +0200
New upstream release 6.6.193
diff --git a/ChangeLog b/ChangeLog
index 0dafab0..c3f5057 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,242 @@
+commit 1de52d91ff3a04b9b587b858e1e5be40d3a7fd0a
+Author: Dave Airlie <airlied@linux.ie>
+Date: Sat Aug 4 17:58:58 2007 +1000
+
+ update configure.ac for 6.6.193 release
+
+commit 371001c0433db1d17e468f3ea99ea57f922145a3
+Author: Dave Airlie <airlied@linux.ie>
+Date: Sat Aug 4 17:51:19 2007 +1000
+
+ radeon: remove unused variables
+
+commit 90946c53d7a4b23d03270ad6da0450759a11de3d
+Author: Dave Airlie <airlied@linux.ie>
+Date: Sat Aug 4 17:51:06 2007 +1000
+
+ ati: add -Wall for gcc
+
+ As per luc's "suggestion" in Novell bug.
+
+ This may generate warnings on 64-bit until we get rid of CARD32
+
+commit e30a145934df8f6a7f71290d6c75e4239f9d52f7
+Author: Dave Airlie <airlied@linux.ie>
+Date: Sat Aug 4 17:44:46 2007 +1000
+
+ radeon: cleanup some pieces of the dpms/blank register programming
+
+commit a156db5e8b037ed12a448f70045453baf9d0c504
+Author: Luc Verhaegen <libv@skynet.be>
+Date: Sat Aug 4 17:37:18 2007 +1000
+
+ Clean up PortInfo to CRTC mapping
+
+ Also sanitise blanking and DPMS functions
+
+ Fixes from Novell Bug 264720, and fd.o 10772
+
+commit 165a07cbbfcd94e3d1fac434b8fada8d29428a09
+Author: Brice Goglin <Brice.Goglin@ens-lyon.org>
+Date: Wed Jul 25 19:01:02 2007 +0200
+
+ Minor fixes in the manpages
+
+ - ati.man
+ . add references to radeon and r128 manpages in SEE ALSO
+ (Xavier Bestel in Debian bug #386001).
+ . remove the manpage suffix from atimisc reference in the text
+ since there is no such manpage for now.
+ - radeon.man
+ . typo in "specifying" (reported by A. Costa in Debian bug #432059).
+ . replace a non-ascii character with the corresponding groff escape
+ sequence so that it works whatever the locale (Julien Cristau).
+
+commit 18b00b47a483e7854727e99126808ddf361e7a4a
+Author: Alex Deucher <alex@t41p.hsd1.va.comcast.net>
+Date: Thu Jul 19 19:01:42 2007 -0400
+
+ R128: don't clip modes to panel on laptops when only using the CRT port
+
+ fixes bug 5832
+
+commit 882fe7631586b0a7919f808588a2ea4fb555f7e8
+Author: Brice Goglin <brice.goglin@ens-lyon.org>
+Date: Thu Jul 19 18:44:27 2007 -0400
+
+ MACH64: avoid crash in Xv code
+
+ fixes bug 11054
+
+commit ac9cbaf32176cf144bc694ac879e7c9e2920f762
+Author: Michel Dänzer <michel@tungstengraphics.com>
+Date: Mon Jul 2 10:06:02 2007 +0200
+
+ radeon: Fully zero-initialize info->CRT2pScrn->monitor.
+
+ This prevents modes from getting rejected due to the uninitialized maxPixClock
+ value.
+
+ Fixes http://bugs.freedesktop.org/show_bug.cgi?id=9816 .
+
+commit 5b5b90c2cea7e36895354f5872acd3fc769653f9
+Author: Alex Deucher <alex@t41p.hsd1.va.comcast.net>
+Date: Mon Jun 25 16:27:54 2007 -0400
+
+ RADEON: fix possible segfault on mobility chips with MM tables
+
+ spotted by Stefan Buehler
+
+commit 92e65d5e0d6817ff4c9a08020a0a9b3a8c3c98b0
+Author: Andrew Randrianasulu <randrik@mail.ru>
+Date: Fri Jun 22 00:55:00 2007 -0400
+
+ RADEON: Fix VT switch hangs
+
+ - reorder RADEONDRISetVBlankInterrupt() and RADEONDRIResume()
+ - see bug 11287
+
+commit b72ff160f908bf3aa9f64705377e92d80360a4f7
+Author: Alex Deucher <alex@t41p.hsd1.va.comcast.net>
+Date: Mon Jun 18 21:51:45 2007 -0400
+
+ RADEON: only touch LVDS on mobility chips
+
+commit 80313621ffa8c409ae63fc1b28c15fc4abdc3a7b
+Author: Henry Zhao <henryz@localhost.localdomain>
+Date: Fri Jun 15 17:00:05 2007 -0700
+
+ Update CRT2pScrn->monitor->Last to reflect the
+ last mode of CRT2pScrn. See bug 11278.
+
+commit f19a6f7ee5bf4ec632e7813359f167599c08e823
+Author: Alex Deucher <alex@t41p.hsd1.va.comcast.net>
+Date: Tue Jun 12 23:44:41 2007 -0400
+
+ RADEON: additional LVDS off fix (missed in previous commit)
+
+commit 44748a826b52924a6e050215d8d62755e0ac7fb2
+Author: Tormod Volden <bugzi06.fdo.tormod@xoxy.net>
+Date: Tue Jun 12 23:23:49 2007 -0400
+
+ RADEON: limit PanelPwrDly to 2000 ms on ATOM bios as per legacy bios
+
+ - fixes bug 11238
+
+commit c292fc64499ff4cc135c07deda99cf4169f8fef4
+Author: Alex Deucher <alex@t41p.hsd1.va.comcast.net>
+Date: Tue Jun 12 23:20:18 2007 -0400
+
+ RADEON: make sure RADEON_LVDS_ON is cleared when turning LVDS off
+
+ - fixes bug 3483
+
+commit c6a3286d6f6ddda89115d98d45665dadd78bf41d
+Author: Michel Dänzer <michel@tungstengraphics.com>
+Date: Mon Jun 11 09:39:38 2007 +0200
+
+ radeon: Fix panel size detection from registers with stretched mode programmed.
+
+commit 7a6b3c0f77c69019268f585c51c3dcbcc99014d4
+Author: Michel Dänzer <michel@tungstengraphics.com>
+Date: Mon Jun 11 09:39:38 2007 +0200
+
+ radeon: Don't loop indefinitely if no mode matches detected panel size.
+
+commit f31fd9ce598841c505a0b5ed32bf124f49fea332
+Author: Michel Dänzer <michel@tungstengraphics.com>
+Date: Mon Jun 11 09:39:38 2007 +0200
+
+ radeon: Fix some more ErrorFs when setting mode.
+
+commit 2d40fa55e8d7a1cfb204d66ca4a4d95a3b13d5b5
+Author: Dave Airlie <airlied@linux.ie>
+Date: Sun Jun 3 17:32:43 2007 +1000
+
+ radeon: disable irqs at server start until 3D app starts
+
+commit dcb64a4d3947e5a9fbda4b72e29a5b6102370f07
+Author: Dave Airlie <airlied@linux.ie>
+Date: Sun Jun 3 17:10:49 2007 +1000
+
+ radeon: disable vbl interrupts when no 3d is running on a new enough drm
+
+commit 4c61c0ee91a2ffeefce30972a584486f1df1d1ae
+Author: Matthieu Herrb <matthieu@deville.herrb.com>
+Date: Tue May 29 21:35:35 2007 -0600
+
+ Fix build without XF86DRI
+
+commit 5337e7bd0069a3f2c4ab22b21a19471427ad3d81
+Author: Dave Airlie <airlied@nx6125b.(none)>
+Date: Wed May 30 08:10:44 2007 +1000
+
+ radeon: add bios quirk for nx6125 monid
+
+commit bff809dc8ed07ac39e9b576a87916486a5e37156
+Author: Dave Airlie <airlied@nx6125b.(none)>
+Date: Wed May 30 08:02:26 2007 +1000
+
+ rs480: more unknown regs
+
+ Hardcode the values from a working fglrx run, this works for me now
+
+ I've no idea what it might do for anyone else
+
+commit 104105fee5c3945d3f210e6a4cb73ab492c61543
+Author: Dave Airlie <airlied@nx6125b.(none)>
+Date: Tue May 29 19:09:33 2007 +1000
+
+ rs480: make second crtc work with magic number in magic register.
+
+ I've no idea why or what this does.
+
+commit 5aa603bcabbb077dec169c48438c2e2ebe1195d7
+Author: Dave Airlie <airlied@nx6125b.(none)>
+Date: Tue May 29 07:23:24 2007 +1000
+
+ rs480: only has single dac
+
+commit c52322354fe64725733842b3356798c50e7735d5
+Merge: dd6a966... 975da59...
+Author: Dave Airlie <airlied@nx6125b.(none)>
+Date: Tue May 29 07:21:48 2007 +1000
+
+ Merge branch 'origin'
+
+commit 975da595f032c145ad74079ff8edeaead779dc7b
+Author: Michel Dänzer <michel@tungstengraphics.com>
+Date: Tue May 22 10:56:47 2007 +0200
+
+ radeon: Provide new DRI texOffsetStart hook when available with EXA.
+
+commit 8275151baac22c34149cef0b7d922771d24abc3e
+Author: Michel Dänzer <michel@tungstengraphics.com>
+Date: Mon May 21 10:25:48 2007 +0200
+
+ radeon: HW cursor cleanup.
+
+ Don't needlessly turn the HW cursor on/off in RADEONLoadCursor*().
+
+ Besides cleaning up the code, this semms to avoid some HW cursor related 3D
+ lockups, see https://bugs.freedesktop.org/show_bug.cgi?id=10815 . My best
+ guess is that this is because the engine is now always idled before touching
+ the CRTC registers.
+
+commit 137e3fc1899078af0f72303ab0a4e6cf35804a7b
+Author: Michel Dänzer <michel@tungstengraphics.com>
+Date: Mon May 21 10:25:48 2007 +0200
+
+ radeon: Suppress debugging output by default.
+
+ It can be enabled at runtime by increasing the log verbosity level.
+
+ Also change the prefix from (**) to (II) to make grepping the log file for
+ defaults overridden by xorg.conf more useful again.
+
+ Turn some MC related debugging output into normal informational output as it's
+ useful for recognizing corner cases that can cause stability issues.
+
commit 09bfc8ed000f95ede5b73f2bad69edc1a4d9bac6
Author: Alex Deucher <alex@t41p.hsd1.va.comcast.net>
Date: Sun May 20 18:06:22 2007 -0400
@@ -37,6 +276,18 @@ Date: Sun Apr 22 11:36:00 2007 +1000
So now I get DDC from the LCD on this laptop.
+commit dd6a966e862b774a8e8b9e1a085309219673efad
+Author: Dave Airlie <airlied@nx6125b.(none)>
+Date: Sun Apr 22 11:36:00 2007 +1000
+
+ radeon: add support for DDC on some laptop chipsets
+
+ I noticed fglrx has DDC for the panel in the rs480 laptop, however radeon
+ didn't pick it up, so I valgrinded fglrx and spotted 0x1a0/0x1a4 accesses
+ I actually noticed this before from the BIOS but never figured it out.
+
+ So now I get DDC from the LCD on this laptop.
+
commit c81ed9bd7b37c9d02141d10f6c7bad3d0c57032f
Author: Dave Airlie <airlied@linux.ie>
Date: Sat Apr 21 18:58:40 2007 +1000
diff --git a/aclocal.m4 b/aclocal.m4
index aaae5ad..f8a69fa 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -6528,7 +6528,7 @@ path to pkg-config.
_PKG_TEXT
-To get pkg-config, see <http://www.freedesktop.org/software/pkgconfig>.])],
+To get pkg-config, see <http://pkg-config.freedesktop.org/>.])],
[$4])
else
$1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
diff --git a/configure b/configure
index f8257d0..83d5852 100755
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.61 for xf86-video-ati 6.6.192.
+# Generated by GNU Autoconf 2.61 for xf86-video-ati 6.6.193.
#
# Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=xorg>.
#
@@ -728,8 +728,8 @@ SHELL=${CONFIG_SHELL-/bin/sh}
# Identity of this package.
PACKAGE_NAME='xf86-video-ati'
PACKAGE_TARNAME='xf86-video-ati'
-PACKAGE_VERSION='6.6.192'
-PACKAGE_STRING='xf86-video-ati 6.6.192'
+PACKAGE_VERSION='6.6.193'
+PACKAGE_STRING='xf86-video-ati 6.6.193'
PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=xorg'
ac_unique_file="Makefile.am"
@@ -1436,7 +1436,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures xf86-video-ati 6.6.192 to adapt to many kinds of systems.
+\`configure' configures xf86-video-ati 6.6.193 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1506,7 +1506,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of xf86-video-ati 6.6.192:";;
+ short | recursive ) echo "Configuration of xf86-video-ati 6.6.193:";;
esac
cat <<\_ACEOF
@@ -1622,7 +1622,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-xf86-video-ati configure 6.6.192
+xf86-video-ati configure 6.6.193
generated by GNU Autoconf 2.61
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
@@ -1636,7 +1636,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by xf86-video-ati $as_me 6.6.192, which was
+It was created by xf86-video-ati $as_me 6.6.193, which was
generated by GNU Autoconf 2.61. Invocation command line was
$ $0 $@
@@ -2311,7 +2311,7 @@ fi
# Define the identity of the package.
PACKAGE='xf86-video-ati'
- VERSION='6.6.192'
+ VERSION='6.6.193'
cat >>confdefs.h <<_ACEOF
@@ -19976,6 +19976,10 @@ fi
+if test "x$GCC" = "xyes"; then
+ CFLAGS="$CFLAGS -Wall"
+fi
+
@@ -20566,7 +20570,7 @@ Alternatively, you may set the environment variables XORG_CFLAGS
and XORG_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
-To get pkg-config, see <http://www.freedesktop.org/software/pkgconfig>.
+To get pkg-config, see <http://pkg-config.freedesktop.org/>.
See \`config.log' for more details." >&5
echo "$as_me: error: The pkg-config script could not be found or is too old. Make sure it
is in your PATH or set the PKG_CONFIG environment variable to the full
@@ -20576,7 +20580,7 @@ Alternatively, you may set the environment variables XORG_CFLAGS
and XORG_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
-To get pkg-config, see <http://www.freedesktop.org/software/pkgconfig>.
+To get pkg-config, see <http://pkg-config.freedesktop.org/>.
See \`config.log' for more details." >&2;}
{ (exit 1); exit 1; }; }
else
@@ -20985,7 +20989,7 @@ Alternatively, you may set the environment variables DRI_CFLAGS
and DRI_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
-To get pkg-config, see <http://www.freedesktop.org/software/pkgconfig>.
+To get pkg-config, see <http://pkg-config.freedesktop.org/>.
See \`config.log' for more details." >&5
echo "$as_me: error: The pkg-config script could not be found or is too old. Make sure it
is in your PATH or set the PKG_CONFIG environment variable to the full
@@ -20995,7 +20999,7 @@ Alternatively, you may set the environment variables DRI_CFLAGS
and DRI_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
-To get pkg-config, see <http://www.freedesktop.org/software/pkgconfig>.
+To get pkg-config, see <http://pkg-config.freedesktop.org/>.
See \`config.log' for more details." >&2;}
{ (exit 1); exit 1; }; }
else
@@ -22182,7 +22186,7 @@ exec 6>&1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by xf86-video-ati $as_me 6.6.192, which was
+This file was extended by xf86-video-ati $as_me 6.6.193, which was
generated by GNU Autoconf 2.61. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -22235,7 +22239,7 @@ Report bugs to <bug-autoconf@gnu.org>."
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF
ac_cs_version="\\
-xf86-video-ati config.status 6.6.192
+xf86-video-ati config.status 6.6.193
configured by $0, generated by GNU Autoconf 2.61,
with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
diff --git a/debian/changelog b/debian/changelog
index 04dbb9c..e53f1e7 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,8 +1,16 @@
-xserver-xorg-video-ati (1:6.6.192-2) UNRELEASED; urgency=low
+xserver-xorg-video-ati (1:6.6.193-1) UNRELEASED; urgency=low
+ [ Brice Goglin ]
+ * New upstream release candidate.
+ + Add references to radeon and r128 manpages in SEE ALSO
+ in the ati(4) manpage (closes: #386001).
+ + Fix typo in "specifying" in the radeon(4) manpage
+ (closes: #432059).
+
+ [ Julien Cristau ]
* Add upstream URL to debian/copyright. Thanks, Loïc Minier.
- -- Julien Cristau <jcristau@debian.org> Fri, 06 Jul 2007 17:36:51 +0200
+ -- Brice Goglin <Brice.Goglin@ens-lyon.org> Sat, 04 Aug 2007 11:51:07 +0200
xserver-xorg-video-ati (1:6.6.192-1) experimental; urgency=low
commit 1de52d91ff3a04b9b587b858e1e5be40d3a7fd0a
Author: Dave Airlie <airlied@linux.ie>
Date: Sat Aug 4 17:58:58 2007 +1000
update configure.ac for 6.6.193 release
diff --git a/configure.ac b/configure.ac
index f444afb..441e723 100644
--- a/configure.ac
+++ b/configure.ac
@@ -22,7 +22,7 @@
AC_PREREQ(2.57)
AC_INIT([xf86-video-ati],
- 6.6.192,
+ 6.6.193,
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
xf86-video-ati)
commit 371001c0433db1d17e468f3ea99ea57f922145a3
Author: Dave Airlie <airlied@linux.ie>
Date: Sat Aug 4 17:51:19 2007 +1000
radeon: remove unused variables
diff --git a/src/radeon_display.c b/src/radeon_display.c
index 95e669d..02f5960 100644
--- a/src/radeon_display.c
+++ b/src/radeon_display.c
@@ -2071,7 +2071,6 @@ RADEONCRTC2Blank(RADEONInfoPtr info, Bool Blank)
void RADEONBlank(ScrnInfoPtr pScrn, Bool Blank)
{
RADEONInfoPtr info = RADEONPTR(pScrn);
- unsigned char *RADEONMMIO = info->MMIO;
RADEONEntPtr pRADEONEnt = RADEONEntPriv(pScrn);
if (!pRADEONEnt->HasSecondary ||
@@ -2223,7 +2222,6 @@ RADEONDisplayPowerManagementSet(ScrnInfoPtr pScrn, int PowerManagementMode, int
{
RADEONInfoPtr info = RADEONPTR(pScrn);
RADEONEntPtr pRADEONEnt = RADEONEntPriv(pScrn);
- RADEONConnector *pPort;
if (!pScrn->vtSema)
return;
commit 90946c53d7a4b23d03270ad6da0450759a11de3d
Author: Dave Airlie <airlied@linux.ie>
Date: Sat Aug 4 17:51:06 2007 +1000
ati: add -Wall for gcc
As per luc's "suggestion" in Novell bug.
This may generate warnings on 64-bit until we get rid of CARD32
diff --git a/configure.ac b/configure.ac
index 8b29d8d..f444afb 100644
--- a/configure.ac
+++ b/configure.ac
@@ -39,6 +39,10 @@ AC_DISABLE_STATIC
AC_PROG_LIBTOOL
AC_PROG_CC
+if test "x$GCC" = "xyes"; then
+ CFLAGS="$CFLAGS -Wall"
+fi
+
AH_TOP([#include "xorg-server.h"])
AC_ARG_WITH(xorg-module-dir,
commit e30a145934df8f6a7f71290d6c75e4239f9d52f7
Author: Dave Airlie <airlied@linux.ie>
Date: Sat Aug 4 17:44:46 2007 +1000
radeon: cleanup some pieces of the dpms/blank register programming
diff --git a/src/radeon_display.c b/src/radeon_display.c
index 0bf7271..95e669d 100644
--- a/src/radeon_display.c
+++ b/src/radeon_display.c
@@ -2020,33 +2020,26 @@ RADEONOutputsBlank(ScrnInfoPtr pScrn, RADEONConnector *pPort, Bool Blank)
{
RADEONInfoPtr info = RADEONPTR(pScrn);
unsigned char *RADEONMMIO = info->MMIO;
+ CARD32 val;
switch(pPort->MonType) {
case MT_LCD:
- if (Blank)
- OUTREGP(RADEON_LVDS_GEN_CNTL, RADEON_LVDS_DISPLAY_DIS, ~RADEON_LVDS_DISPLAY_DIS);
- else
- OUTREGP(RADEON_LVDS_GEN_CNTL, 0, ~RADEON_LVDS_DISPLAY_DIS);
+ val = (Blank == TRUE) ? RADEON_LVDS_DISPLAY_DIS : 0;
+ OUTREGP(RADEON_LVDS_GEN_CNTL, val, ~RADEON_LVDS_DISPLAY_DIS);
break;
case MT_CRT:
if ((info->ChipFamily == CHIP_FAMILY_R200) && (pPort->DACType == DAC_TVDAC)) {
- if (Blank)
- OUTREGP(RADEON_FP2_GEN_CNTL, RADEON_FP2_BLANK_EN, ~RADEON_FP2_BLANK_EN);
- else
- OUTREGP(RADEON_FP2_GEN_CNTL, 0, ~RADEON_FP2_BLANK_EN);
+ val = (Blank == TRUE) ? RADEON_FP2_BLANK_EN : 0;
+ OUTREGP(RADEON_FP2_GEN_CNTL, val, ~RADEON_FP2_BLANK_EN);
}
break;
case MT_DFP:
if (pPort->TMDSType == TMDS_EXT) {
- if (Blank)
- OUTREGP(RADEON_FP2_GEN_CNTL, RADEON_FP2_BLANK_EN, ~RADEON_FP2_BLANK_EN);
- else
- OUTREGP(RADEON_FP2_GEN_CNTL, 0, ~RADEON_FP2_BLANK_EN);
+ val = Blank ? RADEON_FP2_BLANK_EN : 0;
+ OUTREGP(RADEON_FP2_GEN_CNTL, val, ~RADEON_FP2_BLANK_EN);
} else {
- if (Blank)
- OUTREGP(RADEON_FP_GEN_CNTL, RADEON_FP_BLANK_EN, ~RADEON_FP_BLANK_EN);
- else
- OUTREGP(RADEON_FP_GEN_CNTL, 0, ~RADEON_FP_BLANK_EN);
+ val = Blank ? RADEON_FP_BLANK_EN : 0;
+ OUTREGP(RADEON_FP_GEN_CNTL, val, ~RADEON_FP_BLANK_EN);
}
break;
case MT_NONE:
@@ -2059,28 +2052,19 @@ static void
RADEONCRTC1Blank(RADEONInfoPtr info, Bool Blank)
{
unsigned char *RADEONMMIO = info->MMIO;
-
- if (Blank)
- OUTREGP(RADEON_CRTC_EXT_CNTL,
- RADEON_CRTC_DISPLAY_DIS | RADEON_CRTC_VSYNC_DIS | RADEON_CRTC_HSYNC_DIS,
- ~(RADEON_CRTC_DISPLAY_DIS | RADEON_CRTC_VSYNC_DIS | RADEON_CRTC_HSYNC_DIS));
- else
- OUTREGP(RADEON_CRTC_EXT_CNTL, 0,
- ~(RADEON_CRTC_DISPLAY_DIS | RADEON_CRTC_VSYNC_DIS | RADEON_CRTC_HSYNC_DIS));
+ CARD32 val = (Blank == TRUE) ? (RADEON_CRTC_DISPLAY_DIS | RADEON_CRTC_VSYNC_DIS | RADEON_CRTC_HSYNC_DIS) : 0;
+
+ OUTREGP(RADEON_CRTC_EXT_CNTL, val,
+ ~(RADEON_CRTC_DISPLAY_DIS | RADEON_CRTC_VSYNC_DIS | RADEON_CRTC_HSYNC_DIS));
}
static void
RADEONCRTC2Blank(RADEONInfoPtr info, Bool Blank)
{
unsigned char *RADEONMMIO = info->MMIO;
-
- if (Blank)
- OUTREGP(RADEON_CRTC2_GEN_CNTL,
- RADEON_CRTC2_DISP_DIS | RADEON_CRTC2_VSYNC_DIS | RADEON_CRTC2_HSYNC_DIS,
- ~(RADEON_CRTC2_DISP_DIS | RADEON_CRTC2_VSYNC_DIS | RADEON_CRTC2_HSYNC_DIS));
- else
- OUTREGP(RADEON_CRTC2_GEN_CNTL, 0,
- ~(RADEON_CRTC2_DISP_DIS | RADEON_CRTC2_VSYNC_DIS | RADEON_CRTC2_HSYNC_DIS));
+ CARD32 val = (Blank == TRUE) ? (RADEON_CRTC2_DISP_DIS | RADEON_CRTC2_VSYNC_DIS | RADEON_CRTC2_HSYNC_DIS) : 0;
+ OUTREGP(RADEON_CRTC2_GEN_CNTL, val,
+ ~(RADEON_CRTC2_DISP_DIS | RADEON_CRTC2_VSYNC_DIS | RADEON_CRTC2_HSYNC_DIS));
}
/* Blank screen */
@@ -2178,63 +2162,58 @@ void
RADEONCRTC1DPMS(RADEONInfoPtr info, int Mode)
{
unsigned char *RADEONMMIO = info->MMIO;
-
+ CARD32 val;
switch (Mode) {
case DPMSModeOn:
/* Screen: On; HSync: On, VSync: On */
- OUTREGP(RADEON_CRTC_EXT_CNTL, 0,
- ~(RADEON_CRTC_DISPLAY_DIS | RADEON_CRTC_HSYNC_DIS | RADEON_CRTC_VSYNC_DIS));
+ val = 0;
break;
case DPMSModeStandby:
/* Screen: Off; HSync: Off, VSync: On */
- OUTREGP(RADEON_CRTC_EXT_CNTL, (RADEON_CRTC_DISPLAY_DIS | RADEON_CRTC_HSYNC_DIS),
- ~(RADEON_CRTC_DISPLAY_DIS | RADEON_CRTC_HSYNC_DIS | RADEON_CRTC_VSYNC_DIS));
+ val = (RADEON_CRTC_DISPLAY_DIS | RADEON_CRTC_HSYNC_DIS);
break;
case DPMSModeSuspend:
/* Screen: Off; HSync: On, VSync: Off */
- OUTREGP(RADEON_CRTC_EXT_CNTL, (RADEON_CRTC_DISPLAY_DIS | RADEON_CRTC_VSYNC_DIS),
- ~(RADEON_CRTC_DISPLAY_DIS | RADEON_CRTC_HSYNC_DIS | RADEON_CRTC_VSYNC_DIS));
+ val = (RADEON_CRTC_DISPLAY_DIS | RADEON_CRTC_VSYNC_DIS);
break;
case DPMSModeOff:
default:
/* Screen: Off; HSync: Off, VSync: Off */
- OUTREGP(RADEON_CRTC_EXT_CNTL,
- (RADEON_CRTC_DISPLAY_DIS | RADEON_CRTC_HSYNC_DIS | RADEON_CRTC_VSYNC_DIS),
- ~(RADEON_CRTC_DISPLAY_DIS | RADEON_CRTC_HSYNC_DIS | RADEON_CRTC_VSYNC_DIS));
+ val = (RADEON_CRTC_DISPLAY_DIS | RADEON_CRTC_HSYNC_DIS | RADEON_CRTC_VSYNC_DIS);
break;
}
+ OUTREGP(RADEON_CRTC_EXT_CNTL, val,
+ ~(RADEON_CRTC_DISPLAY_DIS | RADEON_CRTC_HSYNC_DIS | RADEON_CRTC_VSYNC_DIS));
+
}
void
RADEONCRTC2DPMS(RADEONInfoPtr info, int Mode)
{
unsigned char *RADEONMMIO = info->MMIO;
-
+ CARD32 val;
switch (Mode) {
case DPMSModeOn:
/* Screen: On; HSync: On, VSync: On */
- OUTREGP(RADEON_CRTC2_GEN_CNTL, 0,
- ~(RADEON_CRTC2_DISP_DIS | RADEON_CRTC2_VSYNC_DIS | RADEON_CRTC2_HSYNC_DIS));
+ val = 0;
break;
case DPMSModeStandby:
/* Screen: Off; HSync: Off, VSync: On */
- OUTREGP(RADEON_CRTC2_GEN_CNTL, (RADEON_CRTC2_DISP_DIS | RADEON_CRTC2_HSYNC_DIS),
- ~(RADEON_CRTC2_DISP_DIS | RADEON_CRTC2_VSYNC_DIS | RADEON_CRTC2_HSYNC_DIS));
+ val = (RADEON_CRTC2_DISP_DIS | RADEON_CRTC2_HSYNC_DIS);
break;
case DPMSModeSuspend:
/* Screen: Off; HSync: On, VSync: Off */
- OUTREGP(RADEON_CRTC2_GEN_CNTL, (RADEON_CRTC2_DISP_DIS | RADEON_CRTC2_VSYNC_DIS),
- ~(RADEON_CRTC2_DISP_DIS | RADEON_CRTC2_VSYNC_DIS | RADEON_CRTC2_HSYNC_DIS));
+ val = (RADEON_CRTC2_DISP_DIS | RADEON_CRTC2_VSYNC_DIS);
break;
case DPMSModeOff:
default:
/* Screen: Off; HSync: Off, VSync: Off */
- OUTREGP(RADEON_CRTC2_GEN_CNTL,
- (RADEON_CRTC2_DISP_DIS | RADEON_CRTC2_VSYNC_DIS | RADEON_CRTC2_HSYNC_DIS),
- ~(RADEON_CRTC2_DISP_DIS | RADEON_CRTC2_VSYNC_DIS | RADEON_CRTC2_HSYNC_DIS));
+ val = (RADEON_CRTC2_DISP_DIS | RADEON_CRTC2_VSYNC_DIS | RADEON_CRTC2_HSYNC_DIS);
break;
}
+ OUTREGP(RADEON_CRTC2_GEN_CNTL, val,
+ ~(RADEON_CRTC2_DISP_DIS | RADEON_CRTC2_VSYNC_DIS | RADEON_CRTC2_HSYNC_DIS));
}
commit a156db5e8b037ed12a448f70045453baf9d0c504
Author: Luc Verhaegen <libv@skynet.be>
Date: Sat Aug 4 17:37:18 2007 +1000
Clean up PortInfo to CRTC mapping
Also sanitise blanking and DPMS functions
Fixes from Novell Bug 264720, and fd.o 10772
diff --git a/src/radeon.h b/src/radeon.h
index a22e481..5f3f4ab 100644
--- a/src/radeon.h
+++ b/src/radeon.h
@@ -904,14 +904,12 @@ extern void RADEONEnableDisplay(ScrnInfoPtr pScrn, RADEONConnector* pPort
extern void RADEONDisableDisplays(ScrnInfoPtr pScrn);
extern void RADEONGetPanelInfo(ScrnInfoPtr pScrn);
extern void RADEONGetTVDacAdjInfo(ScrnInfoPtr pScrn);
-extern void RADEONUnblank(ScrnInfoPtr pScrn);
-extern void RADEONBlank(ScrnInfoPtr pScrn);
+extern void RADEONBlank(ScrnInfoPtr pScrn, Bool Blank);
extern void RADEONDisplayPowerManagementSet(ScrnInfoPtr pScrn,
int PowerManagementMode,
int flags);
extern Bool RADEONAllocateControllers(ScrnInfoPtr pScrn);
extern Bool RADEONAllocateConnectors(ScrnInfoPtr pScrn);
-extern RADEONConnector *RADEONGetCrtcConnector(ScrnInfoPtr pScrn, int crtc_num);
extern int RADEONValidateMergeModes(ScrnInfoPtr pScrn);
extern int RADEONValidateDDCModes(ScrnInfoPtr pScrn1, char **ppModeName,
RADEONMonitorType DisplayType, int crtc2);
diff --git a/src/radeon_display.c b/src/radeon_display.c
index 6ae8862..0bf7271 100644
--- a/src/radeon_display.c
+++ b/src/radeon_display.c
@@ -941,6 +941,16 @@ void RADEONGetTVDacAdjInfo(ScrnInfoPtr pScrn)
}
}
+static void
+RADEONConnectorReverse(RADEONEntPtr pRADEONEnt)
+{
+ RADEONConnector *connector;
+
+ connector = pRADEONEnt->PortInfo[0];
+ pRADEONEnt->PortInfo[0] = pRADEONEnt->PortInfo[1];
+ pRADEONEnt->PortInfo[1] = connector;
+}
+
/*
* initialise the static data sos we don't have to re-do at randr change */
void RADEONSetupConnectors(ScrnInfoPtr pScrn)
@@ -998,12 +1008,9 @@ void RADEONSetupConnectors(ScrnInfoPtr pScrn)
}
/* always make TMDS_INT port first*/
- if (pRADEONEnt->PortInfo[1]->TMDSType == TMDS_INT) {
- RADEONConnector *connector;
- connector = pRADEONEnt->PortInfo[0];
- pRADEONEnt->PortInfo[0] = pRADEONEnt->PortInfo[1];
- pRADEONEnt->PortInfo[1] = connector;
- } else if ((pRADEONEnt->PortInfo[0]->TMDSType != TMDS_INT &&
+ if (pRADEONEnt->PortInfo[1]->TMDSType == TMDS_INT)
+ RADEONConnectorReverse(pRADEONEnt);
+ else if ((pRADEONEnt->PortInfo[0]->TMDSType != TMDS_INT &&
pRADEONEnt->PortInfo[1]->TMDSType != TMDS_INT)) {
/* no TMDS_INT port, make primary DAC port first */
/* On my Inspiron 8600 both internal and external ports are
@@ -1011,10 +1018,7 @@ void RADEONSetupConnectors(ScrnInfoPtr pScrn)
swap when the first port is not DAC_PRIMARY */
if ((!(pRADEONEnt->PortInfo[0]->ConnectorType == CONNECTOR_PROPRIETARY)) && (pRADEONEnt->PortInfo[1]->DACType == DAC_PRIMARY) &&
(pRADEONEnt->PortInfo[0]->DACType != DAC_PRIMARY)) {
- RADEONConnector *connector;
- connector = pRADEONEnt->PortInfo[0];
- pRADEONEnt->PortInfo[0] = pRADEONEnt->PortInfo[1];
- pRADEONEnt->PortInfo[1] = connector;
+ RADEONConnectorReverse(pRADEONEnt);
}
}
@@ -1269,10 +1273,7 @@ static void RADEONQueryConnectedDisplays(ScrnInfoPtr pScrn)
pRADEONEnt->PortInfo[1]->DACType = DAC_UNKNOWN;
pRADEONEnt->PortInfo[1]->TMDSType = TMDS_UNKNOWN;
pRADEONEnt->PortInfo[1]->ConnectorType = CONNECTOR_NONE;
-
- pRADEONEnt->PortInfo[0]->crtc_num = 1;
- pRADEONEnt->PortInfo[1]->crtc_num = 2;
-
+
return;
}
@@ -1307,16 +1308,12 @@ Bool RADEONMapControllers(ScrnInfoPtr pScrn)
RADEONEntPtr pRADEONEnt = RADEONEntPriv(pScrn);
unsigned char *RADEONMMIO = info->MMIO;
Bool head_reversed = FALSE;
- RADEONConnector *connector;
info->MergeType = MT_NONE;
if (!info->IsSecondary) {
RADEONQueryConnectedDisplays(pScrn);
- pRADEONEnt->PortInfo[0]->crtc_num = 1;
- pRADEONEnt->PortInfo[1]->crtc_num = 2;
-
xf86DrvMsg(pScrn->scrnIndex, X_INFO,
"Port1:\n Monitor -- %s\n Connector -- %s\n DAC Type -- %s\n TMDS Type -- %s\n DDC Type -- %s\n",
MonTypeName[pRADEONEnt->PortInfo[0]->MonType+1],
@@ -1341,8 +1338,8 @@ Bool RADEONMapControllers(ScrnInfoPtr pScrn)
if (pRADEONEnt->PortInfo[0]->MonType == MT_NONE) {
if (pRADEONEnt->PortInfo[1]->MonType != MT_NONE) {
/* Only one detected on secondary, let it to be primary */
- pRADEONEnt->PortInfo[0]->crtc_num = 2;
- pRADEONEnt->PortInfo[1]->crtc_num = 1;
+ if (!head_reversed)
+ RADEONConnectorReverse(pRADEONEnt);
head_reversed = TRUE;
} else {
/* None detected, Default to a CRT connected */
@@ -1354,10 +1351,10 @@ Bool RADEONMapControllers(ScrnInfoPtr pScrn)
(pRADEONEnt->PortInfo[1]->MonType == MT_CRT)) {
if (!(INREG(RADEON_LVDS_GEN_CNTL) & RADEON_LVDS_ON)) {
/* LCD is switched off, don't turn it on, otherwise it may casue lockup due to SS issue. */
- pRADEONEnt->PortInfo[0]->crtc_num = 2;
- pRADEONEnt->PortInfo[1]->crtc_num = 1;
- pRADEONEnt->PortInfo[0]->MonType = MT_NONE;
+ if (!head_reversed)
+ RADEONConnectorReverse(pRADEONEnt);
head_reversed = TRUE;
+ pRADEONEnt->PortInfo[0]->MonType = MT_NONE;
xf86DrvMsg(pScrn->scrnIndex, X_CONFIG, "LCD is switched off, only CRT will be used\n");
}
}
@@ -1371,8 +1368,8 @@ Bool RADEONMapControllers(ScrnInfoPtr pScrn)
*/
xf86DrvMsg(pScrn->scrnIndex, X_CONFIG, "Reverse Display cannot be used for mobility chip\n");
} else {
- pRADEONEnt->PortInfo[0]->crtc_num = 2;
- pRADEONEnt->PortInfo[1]->crtc_num = 1;
+ if (!head_reversed)
+ RADEONConnectorReverse(pRADEONEnt);
head_reversed = TRUE;
xf86DrvMsg(pScrn->scrnIndex, X_CONFIG, "Primary and Secondary mapping is reversed\n");
}
@@ -1386,46 +1383,33 @@ Bool RADEONMapControllers(ScrnInfoPtr pScrn)
if(pRADEONEnt->HasCRTC2) {
if(info->IsSecondary) {
- connector = RADEONGetCrtcConnector(pScrn, 2);
pRADEONEnt->Controller[1]->binding = 2;
- if (connector) {
- info->DisplayType = connector->MonType;
- pScrn->monitor->DDC = connector->MonInfo;
- }
+ info->DisplayType = pRADEONEnt->PortInfo[1]->MonType;
+ pScrn->monitor->DDC = pRADEONEnt->PortInfo[1]->MonInfo;
} else {
- connector = RADEONGetCrtcConnector(pScrn, 1);
Reply to: