[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

xserver-xorg-video-ati: Changes to 'debian-experimental'



 ChangeLog            |  202 ++++++++++++++++++++++
 configure            |   40 ++--
 configure.ac         |    4 
 debian/changelog     |    8 
 man/radeon.man       |    8 
 src/atidri.c         |    7 
 src/radeon.h         |   25 ++
 src/radeon_bios.c    |   32 +--
 src/radeon_crtc.c    |  123 +++++++------
 src/radeon_display.c |   25 ++
 src/radeon_dri.c     |   85 +++++++--
 src/radeon_driver.c  |  456 ++++++++++++++++-----------------------------------
 src/radeon_output.c  |   39 +---
 src/radeon_probe.c   |    1 
 src/radeon_reg.h     |    1 
 src/radeon_tv.c      |    9 -
 src/radeon_video.c   |   55 +++---
 src/theatre.c        |   15 +
 src/theatre200.c     |   19 +-
 src/theatre_detect.c |   15 +
 20 files changed, 665 insertions(+), 504 deletions(-)

New commits:
commit a62b39c445f399849fb255c94999c9f2b107f196
Author: Brice Goglin <bgoglin@debian.org>
Date:   Mon Aug 27 08:29:40 2007 +0200

    New upstream release candidate

diff --git a/ChangeLog b/ChangeLog
index 8666a08..7a0e0de 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,205 @@
+commit a12e4aa01bf1c5723c3c791ff9bdc26eef21d5ea
+Author: Alex Deucher <alex@botch2.(none)>
+Date:   Sun Aug 26 18:51:29 2007 -0400
+
+    Bump for new release
+
+commit d43596e5f5d7c60f96b57bc3e743a9b40eb7109d
+Author: Alex Deucher <alex@botch2.(none)>
+Date:   Sun Aug 26 18:07:50 2007 -0400
+
+    RADEON: Fix rotation.  works now
+
+commit 47eb3327c258bb0cfd9a1d5677624b9988a39057
+Author: Alex Deucher <alex@botch2.(none)>
+Date:   Sun Aug 26 15:43:22 2007 -0400
+
+    RADEON: minor tweak to tv out
+
+commit f36720377737210c985b196d9a988efdd767f1c7
+Author: Alex Deucher <alex@samba.(none)>
+Date:   Sun Aug 26 14:13:06 2007 -0400
+
+    RADEON: fix depth 16 palette for real this time
+
+commit f2b13f1457bf860b075310d3962254be0ed7bea3
+Author: Alex Deucher <alex@botch2.(none)>
+Date:   Sun Aug 26 13:27:19 2007 -0400
+
+    RADEON: Only update pixclks_cntl when updating tv routing
+    
+    No need to re-set all of the pll2 stuff
+
+commit 5d044b9f74c7aa7e12f2822896fed881e2ca9d19
+Author: Alex Deucher <alex@botch2.(none)>
+Date:   Sat Aug 25 21:03:08 2007 -0400
+
+    RADEON: fix crtc clipping for Xv
+
+commit 3fd2d22a02812d5f86cdc1c9503f48362b0c362b
+Author: Alex Deucher <alex@botch2.(none)>
+Date:   Sat Aug 25 17:37:35 2007 -0400
+
+    RADEON: remove fbdev option
+    
+    FBDev support is currently broken, and it not really compatible
+    with randr
+
+commit 3469e1aa08792890fa6a5c72da52a1992a0b382c
+Author: Alex Deucher <alex@botch2.(none)>
+Date:   Fri Aug 24 20:42:13 2007 -0400
+
+    RADEON: add extra green data in depth 16
+    
+    Apparently some radeons need this?
+
+commit 71f650d1bc432514516f7ac64a5e8a54c5227881
+Author: Michel Dänzer <michel@tungstengraphics.com>
+Date:   Fri Aug 24 09:21:39 2007 +0200
+
+    Require xorg-server >= 1.3 for RandR 1.2.
+
+commit d7230939f523610c57f92bdfc72966bdbc6f1070
+Author: Michel Dänzer <michel@tungstengraphics.com>
+Date:   Fri Aug 24 09:21:14 2007 +0200
+
+    64 bit warning fixes.
+    
+    For printf vs. CARD32, use %u or %x and and a cast to unsigned.
+
+commit 91c45fedfd155a153dcd2c3f3e30986bfbd44e6f
+Author: Dave Airlie <airlied@nx6125b.(none)>
+Date:   Fri Aug 24 15:05:01 2007 +1000
+
+    radeon: don't disable dac if either tv or vga is using it
+    
+    On my rs480 I had to vt switch to get hotplug VGA working due to the tv-out
+    code turning off the dac when the vga code was actually using it.
+
+commit 056ca6bb5adf974290693b55de6cd6880d2132d1
+Author: Alex Deucher <alex@t41p.hsd1.va.comcast.net>
+Date:   Thu Aug 23 20:19:47 2007 -0400
+
+    RADEON: NONE to None to match other port info
+
+commit 13fd53286bdda2c55683bdb5f63e7d345f6c63ef
+Author: Alex Deucher <alex@t41p.hsd1.va.comcast.net>
+Date:   Thu Aug 23 20:17:51 2007 -0400
+
+    RADEON: set (hopefully) reasonable default max desktop sizes
+    
+    Based on the amount of vram.  We really need ttm...
+
+commit 53bad86ca48a9b6529c1f0989ee568d9d48841c6
+Author: Alex Deucher <alex@t41p.hsd1.va.comcast.net>
+Date:   Thu Aug 23 19:24:59 2007 -0400
+
+    RADEON: clean up the logic in crtc_mode_set()
+
+commit 4712dedea225e9e07177aebda2ffc6290d1f53c7
+Author: Alex Deucher <alex@t41p.hsd1.va.comcast.net>
+Date:   Thu Aug 23 18:51:34 2007 -0400
+
+    RADEON: Always assume LVDS is connected
+    
+    Not all bioses seem to set the right scratch bits.  If we have
+    LVDS (via bios table or otherwise) assume it's connected.
+
+commit b0f170c5f736ecba1a5899d602c4173fe9b9b1fa
+Author: Michel Dänzer <michel@tungstengraphics.com>
+Date:   Thu Aug 23 12:55:40 2007 +0200
+
+    radeon: Remove unnecessary #include <time.h>.
+
+commit ac54c0e4360099697755d14b1030def73d8235b0
+Author: Michel Dänzer <michel@tungstengraphics.com>
+Date:   Wed Aug 22 14:33:59 2007 +0200
+
+    radeon: Warning fixes.
+
+commit de26e406f52b3b13f03eee2b8023924ec6406f0a
+Author: Alon Ziv <alonz@nolaviz.org>
+Date:   Mon Jul 30 22:47:59 2007 +0300
+
+    radeon: Sane handling of timeouts in WaitForVerticalSync(2).
+    
+    RADEONWaitForVerticalSync() and RADEONWaitForVerticalSync2() need to wait
+    for a timeout specified in milliseconds; looping around usleep() causes
+    the timeout to be unnecessarily long, as the OS may sleep longer than
+    requested (on Linux the minimum actual sleep value may be several ms).
+    
+    The new logic uses gettimeofday() in the loop to see when the (absolute)
+    timeout has arrived.
+    
+    Signed-off-by: Alon Ziv <alonz@nolaviz.org>
+
+commit c66e5de26ae93caa368213f3cce139aacec955d2
+Author: Sascha Sommer <saschasommer@freenet.de>
+Date:   Thu Aug 23 12:11:51 2007 +0200
+
+    radeon: Round down RMX stretch ratios.
+    
+    Fixes issues with RMX scaling, see
+    https://bugs.freedesktop.org/show_bug.cgi?id=8983 .
+
+commit 633c1fff10a3be4c9f48c1995e330d60bf6abbb2
+Author: Michel Dänzer <michel@tungstengraphics.com>
+Date:   Thu Aug 23 12:11:41 2007 +0200
+
+    radeon: Sync pages when enabling page flipping with EXA as well.
+    
+    Exclude the DRI window(s) though to avoid scribbling over 3D rendering.
+
+commit 4f8010ce22043c0f8d60c0f49d270ce98c9d2466
+Author: Michel Dänzer <michel@tungstengraphics.com>
+Date:   Thu Aug 23 12:11:12 2007 +0200
+
+    radeon: Don't synchronize DRI windows between pages when possible.
+
+commit 7b527054a7c81d1d1dbc79d41b9e53064dab68cb
+Author: Michel Dänzer <michel@tungstengraphics.com>
+Date:   Thu Aug 23 12:10:33 2007 +0200
+
+    radeon: Restore memmap registers even if only AGP location changed.
+
+commit d7ba9f001c0ab645984526afd0e64d1c6a6d654a
+Author: Michel Dänzer <michel@tungstengraphics.com>
+Date:   Thu Aug 23 11:39:54 2007 +0200
+
+    radeon: Change a test to info->IsIGP from several IGP families.
+
+commit 8c7c22e22b6076abc80e4e1aaa8d1f4cf2f3ed14
+Author: Michel Dänzer <michel@tungstengraphics.com>
+Date:   Thu Aug 23 11:38:17 2007 +0200
+
+    radeon: Wait for pending overlay flip to finish before emitting new one.
+
+commit 92fa7cc00688d7bfc1fb72e645ac30c6d92669c6
+Author: Michel Dänzer <michel@tungstengraphics.com>
+Date:   Thu Aug 23 11:38:16 2007 +0200
+
+    radeon: Don't call RADEONDRIRefreshArea when the damaged region is empty.
+
+commit 5cb20c2dc5eca9d7d7d78e9924ea1b90076e7253
+Author: Dave Airlie <airlied@linux.ie>
+Date:   Thu Aug 23 18:46:41 2007 +1000
+
+    radeon: bug 11899 + debian 435040 - test for usefbdev before calling int10
+    (cherry picked from commit 3334c247540b113f9c4a5ce1879d8648a45a959a)
+
+commit 9d6261c024c697a211da4b6300420153eb72a264
+Author: Roland Bär <roland@verifysoft.de>
+Date:   Thu Aug 23 18:33:34 2007 +1000
+
+    radeon: bug 11860 fix some mem leaks
+
+commit 7bc1f862bc5f992f213143fbafef52459ba7db4a
+Author: Roland Bär <roland@verifysoft.de>
+Date:   Thu Aug 23 18:37:35 2007 +1000
+
+    radeon: bug 11861 - dead code removal in radeon_video.c
+    (cherry picked from commit 8e3a6f83016cd8c4cfd43ceee4cbf0a8dc018b2a)
+
 commit 9d38c8aa1a7d6fb1af41ee8abdb4a95f94843538
 Author: Dave Airlie <airlied@clockmaker.usersys.redhat.com>
 Date:   Thu Aug 23 20:10:24 2007 +1000
diff --git a/configure b/configure
index e53309b..a3102bc 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.7.191.
+# Generated by GNU Autoconf 2.61 for xf86-video-ati 6.7.192.
 #
 # 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.7.191'
-PACKAGE_STRING='xf86-video-ati 6.7.191'
+PACKAGE_VERSION='6.7.192'
+PACKAGE_STRING='xf86-video-ati 6.7.192'
 PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=xorg'
 
 ac_unique_file="Makefile.am"
@@ -1438,7 +1438,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.7.191 to adapt to many kinds of systems.
+\`configure' configures xf86-video-ati 6.7.192 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1508,7 +1508,7 @@ fi
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of xf86-video-ati 6.7.191:";;
+     short | recursive ) echo "Configuration of xf86-video-ati 6.7.192:";;
    esac
   cat <<\_ACEOF
 
@@ -1624,7 +1624,7 @@ fi
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-xf86-video-ati configure 6.7.191
+xf86-video-ati configure 6.7.192
 generated by GNU Autoconf 2.61
 
 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
@@ -1638,7 +1638,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.7.191, which was
+It was created by xf86-video-ati $as_me 6.7.192, which was
 generated by GNU Autoconf 2.61.  Invocation command line was
 
   $ $0 $@
@@ -2333,7 +2333,7 @@ fi
 
 # Define the identity of the package.
  PACKAGE='xf86-video-ati'
- VERSION='6.7.191'
+ VERSION='6.7.192'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -20762,12 +20762,12 @@ if test -n "$PKG_CONFIG"; then
         pkg_cv_XORG_CFLAGS="$XORG_CFLAGS"
     else
         if test -n "$PKG_CONFIG" && \
-    { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xorg-server xproto fontsproto \$REQUIRED_MODULES\"") >&5
-  ($PKG_CONFIG --exists --print-errors "xorg-server xproto fontsproto $REQUIRED_MODULES") 2>&5
+    { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xorg-server >= 1.3 xproto fontsproto \$REQUIRED_MODULES\"") >&5
+  ($PKG_CONFIG --exists --print-errors "xorg-server >= 1.3 xproto fontsproto $REQUIRED_MODULES") 2>&5
   ac_status=$?
   echo "$as_me:$LINENO: \$? = $ac_status" >&5
   (exit $ac_status); }; then
-  pkg_cv_XORG_CFLAGS=`$PKG_CONFIG --cflags "xorg-server xproto fontsproto $REQUIRED_MODULES" 2>/dev/null`
+  pkg_cv_XORG_CFLAGS=`$PKG_CONFIG --cflags "xorg-server >= 1.3 xproto fontsproto $REQUIRED_MODULES" 2>/dev/null`
 else
   pkg_failed=yes
 fi
@@ -20780,12 +20780,12 @@ if test -n "$PKG_CONFIG"; then
         pkg_cv_XORG_LIBS="$XORG_LIBS"
     else
         if test -n "$PKG_CONFIG" && \
-    { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xorg-server xproto fontsproto \$REQUIRED_MODULES\"") >&5
-  ($PKG_CONFIG --exists --print-errors "xorg-server xproto fontsproto $REQUIRED_MODULES") 2>&5
+    { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xorg-server >= 1.3 xproto fontsproto \$REQUIRED_MODULES\"") >&5
+  ($PKG_CONFIG --exists --print-errors "xorg-server >= 1.3 xproto fontsproto $REQUIRED_MODULES") 2>&5
   ac_status=$?
   echo "$as_me:$LINENO: \$? = $ac_status" >&5
   (exit $ac_status); }; then
-  pkg_cv_XORG_LIBS=`$PKG_CONFIG --libs "xorg-server xproto fontsproto $REQUIRED_MODULES" 2>/dev/null`
+  pkg_cv_XORG_LIBS=`$PKG_CONFIG --libs "xorg-server >= 1.3 xproto fontsproto $REQUIRED_MODULES" 2>/dev/null`
 else
   pkg_failed=yes
 fi
@@ -20804,14 +20804,14 @@ else
         _pkg_short_errors_supported=no
 fi
         if test $_pkg_short_errors_supported = yes; then
-	        XORG_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "xorg-server xproto fontsproto $REQUIRED_MODULES"`
+	        XORG_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "xorg-server >= 1.3 xproto fontsproto $REQUIRED_MODULES"`
         else
-	        XORG_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "xorg-server xproto fontsproto $REQUIRED_MODULES"`
+	        XORG_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "xorg-server >= 1.3 xproto fontsproto $REQUIRED_MODULES"`
         fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$XORG_PKG_ERRORS" >&5
 
-	{ { echo "$as_me:$LINENO: error: Package requirements (xorg-server xproto fontsproto $REQUIRED_MODULES) were not met:
+	{ { echo "$as_me:$LINENO: error: Package requirements (xorg-server >= 1.3 xproto fontsproto $REQUIRED_MODULES) were not met:
 
 $XORG_PKG_ERRORS
 
@@ -20822,7 +20822,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.
 " >&5
-echo "$as_me: error: Package requirements (xorg-server xproto fontsproto $REQUIRED_MODULES) were not met:
+echo "$as_me: error: Package requirements (xorg-server >= 1.3 xproto fontsproto $REQUIRED_MODULES) were not met:
 
 $XORG_PKG_ERRORS
 
@@ -22445,7 +22445,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.7.191, which was
+This file was extended by xf86-video-ati $as_me 6.7.192, which was
 generated by GNU Autoconf 2.61.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -22498,7 +22498,7 @@ Report bugs to <bug-autoconf@gnu.org>."
 _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF
 ac_cs_version="\\
-xf86-video-ati config.status 6.7.191
+xf86-video-ati config.status 6.7.192
 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 05e6a64..7c27ee7 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,11 @@
+xserver-xorg-video-ati (1:6.7.192-1) experimental; urgency=low
+
+  * New upstream release candidate.
+    + UseFBDev option removed, closes: #372920.
+    + Monitor detection fixed, closes: #413500.
+
+ -- Brice Goglin <bgoglin@debian.org>  Mon, 27 Aug 2007 08:26:38 +0200
+
 xserver-xorg-video-ati (1:6.7.191-1) experimental; urgency=low
 
   * New upstream release candidate.

commit a12e4aa01bf1c5723c3c791ff9bdc26eef21d5ea
Author: Alex Deucher <alex@botch2.(none)>
Date:   Sun Aug 26 18:51:29 2007 -0400

    Bump for new release

diff --git a/configure.ac b/configure.ac
index cdc6377..0c413c8 100644
--- a/configure.ac
+++ b/configure.ac
@@ -22,7 +22,7 @@
 
 AC_PREREQ(2.57)
 AC_INIT([xf86-video-ati],
-        6.7.191,
+        6.7.192,
         [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
         xf86-video-ati)
 

commit d43596e5f5d7c60f96b57bc3e743a9b40eb7109d
Author: Alex Deucher <alex@botch2.(none)>
Date:   Sun Aug 26 18:07:50 2007 -0400

    RADEON: Fix rotation.  works now

diff --git a/src/radeon_crtc.c b/src/radeon_crtc.c
index 026cd8a..e976e2c 100644
--- a/src/radeon_crtc.c
+++ b/src/radeon_crtc.c
@@ -188,7 +188,7 @@ RADEONInitCrtcBase(xf86CrtcPtr crtc, RADEONSavePtr save,
 #endif
 	save->crtc_offset_cntl = 0;
 
-    if (info->tilingEnabled) {
+    if (info->tilingEnabled && (crtc->rotatedData == NULL)) {
        if (IS_R300_VARIANT)
           save->crtc_offset_cntl |= (R300_CRTC_X_Y_MODE_EN |
 				     R300_CRTC_MICRO_TILE_BUFFER_DIS |
@@ -207,7 +207,7 @@ RADEONInitCrtcBase(xf86CrtcPtr crtc, RADEONSavePtr save,
 
     Base = pScrn->fbOffset;
 
-    if (info->tilingEnabled) {
+    if (info->tilingEnabled && (crtc->rotatedData == NULL)) {
         if (IS_R300_VARIANT) {
 	/* On r300/r400 when tiling is enabled crtc_offset is set to the address of
 	 * the surface.  the x/y offsets are handled by the X_Y tile reg for each crtc
@@ -249,6 +249,10 @@ RADEONInitCrtcBase(xf86CrtcPtr crtc, RADEONSavePtr save,
        Base += offset;
     }
 
+    if (crtc->rotatedData != NULL) {
+	Base = pScrn->fbOffset + (char *)crtc->rotatedData - (char *)info->FB;
+    }
+
     Base &= ~7;                 /* 3 lower bits are always 0 */
 
 
@@ -419,7 +423,7 @@ RADEONInitCrtc2Base(xf86CrtcPtr crtc, RADEONSavePtr save,
 #endif
 	save->crtc2_offset_cntl = 0;
 
-    if (info->tilingEnabled) {
+    if (info->tilingEnabled && (crtc->rotatedData == NULL)) {
        if (IS_R300_VARIANT)
           save->crtc2_offset_cntl |= (R300_CRTC_X_Y_MODE_EN |
 				      R300_CRTC_MICRO_TILE_BUFFER_DIS |
@@ -438,7 +442,7 @@ RADEONInitCrtc2Base(xf86CrtcPtr crtc, RADEONSavePtr save,
 
     Base = pScrn->fbOffset;
 
-    if (info->tilingEnabled) {
+    if (info->tilingEnabled && (crtc->rotatedData == NULL)) {
         if (IS_R300_VARIANT) {
 	/* On r300/r400 when tiling is enabled crtc_offset is set to the address of
 	 * the surface.  the x/y offsets are handled by the X_Y tile reg for each crtc
@@ -480,6 +484,10 @@ RADEONInitCrtc2Base(xf86CrtcPtr crtc, RADEONSavePtr save,
        Base += offset;
     }
 
+    if (crtc->rotatedData != NULL) {
+	Base = pScrn->fbOffset + (char *)crtc->rotatedData - (char *)info->FB;
+    }
+
     Base &= ~7;                 /* 3 lower bits are always 0 */
 
 #ifdef XF86DRI
@@ -560,7 +568,7 @@ RADEONInitCrtc2Registers(xf86CrtcPtr crtc, RADEONSavePtr save,
 				      ? RADEON_CRTC2_V_SYNC_POL
 				      : 0));
 
-    save->crtc2_pitch  = ((info->CurrentLayout.displayWidth * pScrn->bitsPerPixel) +
+    save->crtc2_pitch  = ((pScrn->displayWidth * pScrn->bitsPerPixel) +
 			  ((pScrn->bitsPerPixel * 8) -1)) / (pScrn->bitsPerPixel * 8);
     save->crtc2_pitch |= save->crtc2_pitch << 16;
 

commit 47eb3327c258bb0cfd9a1d5677624b9988a39057
Author: Alex Deucher <alex@botch2.(none)>
Date:   Sun Aug 26 15:43:22 2007 -0400

    RADEON: minor tweak to tv out

diff --git a/src/radeon_tv.c b/src/radeon_tv.c
index c5917bc..3a26a0a 100644
--- a/src/radeon_tv.c
+++ b/src/radeon_tv.c
@@ -343,7 +343,7 @@ void RADEONInitTVRegisters(xf86OutputPtr output, RADEONSavePtr save,
 	                       | RADEON_SYNC_TIP_LEVEL
 	                       | RADEON_YFLT_EN
 	                       | RADEON_UVFLT_EN
-	                       | (2 << RADEON_CY_FILT_BLEND_SHIFT);
+	                       | (6 << RADEON_CY_FILT_BLEND_SHIFT);
 
     if (radeon_output->tvStd == TV_STD_NTSC ||
 	radeon_output->tvStd == TV_STD_NTSC_J) {

commit f36720377737210c985b196d9a988efdd767f1c7
Author: Alex Deucher <alex@samba.(none)>
Date:   Sun Aug 26 14:13:06 2007 -0400

    RADEON: fix depth 16 palette for real this time

diff --git a/src/radeon_crtc.c b/src/radeon_crtc.c
index 6a4116d..026cd8a 100644
--- a/src/radeon_crtc.c
+++ b/src/radeon_crtc.c
@@ -103,7 +103,7 @@ radeon_crtc_dpms(xf86CrtcPtr crtc, int mode)
     }
   
     if (mode != DPMSModeOff)
-	radeon_crtc_load_lut(crtc);  
+	radeon_crtc_load_lut(crtc);
 }
 
 static Bool
@@ -911,21 +911,8 @@ void radeon_crtc_load_lut(xf86CrtcPtr crtc)
 
     PAL_SELECT(radeon_crtc->crtc_id);
 
-    if (pScrn->depth == 15) {
-	for (i = 0; i < 32; i++) {
-	    OUTPAL(i * 8, radeon_crtc->lut_r[i], radeon_crtc->lut_g[i], radeon_crtc->lut_b[i]);
-	}
-    } else if (pScrn->depth == 16) {
-	for (i = 0; i < 64; i++) {
-	    OUTPAL(i * 4, radeon_crtc->lut_r[i], radeon_crtc->lut_g[i], radeon_crtc->lut_b[i]);
-	    if (i <= 31) {
-		OUTPAL(i * 8, radeon_crtc->lut_r[i + 64], radeon_crtc->lut_g[i + 64], radeon_crtc->lut_b[i + 64]);
-	    }
-	}
-    } else {
-	for (i = 0; i < 256; i++) {
-	    OUTPAL(i, radeon_crtc->lut_r[i], radeon_crtc->lut_g[i], radeon_crtc->lut_b[i]);
-	}
+    for (i = 0; i < 256; i++) {
+	OUTPAL(i, radeon_crtc->lut_r[i], radeon_crtc->lut_g[i], radeon_crtc->lut_b[i]);
     }
 
 }
@@ -937,17 +924,19 @@ radeon_crtc_gamma_set(xf86CrtcPtr crtc, CARD16 *red, CARD16 *green,
 {
     RADEONCrtcPrivatePtr radeon_crtc = crtc->driver_private;
     ScrnInfoPtr		pScrn = crtc->scrn;
-    int i;
+    int i, j;
 
     if (pScrn->depth == 16) {
 	for (i = 0; i < 64; i++) {
-	    radeon_crtc->lut_r[i] = red[i/2] >> 8;
-	    radeon_crtc->lut_g[i] = green[i] >> 8;
-	    radeon_crtc->lut_b[i] = blue[i/2] >> 8;
 	    if (i <= 31) {
-		radeon_crtc->lut_r[i + 64] = red[i] >> 8;
-		radeon_crtc->lut_g[i + 64] = green[(i * 2) + 1] >> 8;
-		radeon_crtc->lut_b[i + 64] = blue[i] >> 8;
+		for (j = 0; j < 8; j++) {
+		    radeon_crtc->lut_r[i * 8 + j] = red[i] >> 8;
+		    radeon_crtc->lut_b[i * 8 + j] = blue[i] >> 8;
+		}
+	    }
+
+	    for (j = 0; j < 4; j++) {
+		radeon_crtc->lut_g[i * 4 + j] = green[i] >> 8;
 	    }
 	}
     } else {
diff --git a/src/radeon_driver.c b/src/radeon_driver.c
index e445b9e..158e1e4 100644
--- a/src/radeon_driver.c
+++ b/src/radeon_driver.c
@@ -2856,7 +2856,7 @@ static void RADEONLoadPalette(ScrnInfoPtr pScrn, int numColors,
 	  case 16:
 	      for (i = 0; i < numColors; i++) {
 		  index = indices[i];
-		  
+
 		  if (i <= 31) {
 		      for (j = 0; j < 8; j++) {
 			  lut_r[index * 8 + j] = colors[index].red << 8;
@@ -2874,7 +2874,7 @@ static void RADEONLoadPalette(ScrnInfoPtr pScrn, int numColors,
 		  lut_r[index] = colors[index].red << 8;
 		  lut_g[index] = colors[index].green << 8;
 		  lut_b[index] = colors[index].blue << 8;
-	      } 
+	      }
 	      break;
 	  }
 

commit f2b13f1457bf860b075310d3962254be0ed7bea3
Author: Alex Deucher <alex@botch2.(none)>
Date:   Sun Aug 26 13:27:19 2007 -0400

    RADEON: Only update pixclks_cntl when updating tv routing
    
    No need to re-set all of the pll2 stuff

diff --git a/src/radeon_crtc.c b/src/radeon_crtc.c
index d42e482..6a4116d 100644
--- a/src/radeon_crtc.c
+++ b/src/radeon_crtc.c
@@ -752,6 +752,13 @@ RADEONInitPLL2Registers(ScrnInfoPtr pScrn, RADEONSavePtr save,
 }
 
 static void
+radeon_update_tv_routing(ScrnInfoPtr pScrn, RADEONSavePtr restore)
+{
+    /* pixclks_cntl controls tv clock routing */
+    OUTPLL(pScrn, RADEON_PIXCLKS_CNTL, restore->pixclks_cntl);
+}
+
+static void
 radeon_crtc_mode_set(xf86CrtcPtr crtc, DisplayModePtr mode,
 		     DisplayModePtr adjusted_mode, int x, int y)
 {
@@ -867,7 +874,7 @@ radeon_crtc_mode_set(xf86CrtcPtr crtc, DisplayModePtr mode,
 
     /* pixclks_cntl handles tv-out clock routing */
     if (update_tv_routing)
-	RADEONRestorePLL2Registers(pScrn, &info->ModeReg);
+	radeon_update_tv_routing(pScrn, &info->ModeReg);
 
     if (info->DispPriority)
         RADEONInitDispBandwidth(pScrn);

commit 5d044b9f74c7aa7e12f2822896fed881e2ca9d19
Author: Alex Deucher <alex@botch2.(none)>
Date:   Sat Aug 25 21:03:08 2007 -0400

    RADEON: fix crtc clipping for Xv

diff --git a/src/radeon_video.c b/src/radeon_video.c
index 5cbe9fc..271f7fe 100644
--- a/src/radeon_video.c
+++ b/src/radeon_video.c
@@ -1562,7 +1562,7 @@ RADEONSetupImageVideo(ScreenPtr pScreen)
 	return NULL;
 
     adapt->type = XvWindowMask | XvInputMask | XvImageMask;
-    adapt->flags = VIDEO_OVERLAID_IMAGES | VIDEO_CLIP_TO_VIEWPORT;
+    adapt->flags = VIDEO_OVERLAID_IMAGES /*| VIDEO_CLIP_TO_VIEWPORT*/;
     adapt->name = "ATI Radeon Video Overlay";
     adapt->nEncodings = 1;
     adapt->pEncodings = &DummyEncoding;
@@ -3330,8 +3330,8 @@ RADEONInitOffscreenImages(ScreenPtr pScreen)
 	return;
 
     offscreenImages[0].image = &Images[0];
-    offscreenImages[0].flags = VIDEO_OVERLAID_IMAGES |
-			       VIDEO_CLIP_TO_VIEWPORT;
+    offscreenImages[0].flags = VIDEO_OVERLAID_IMAGES /*|
+			       VIDEO_CLIP_TO_VIEWPORT*/;
     offscreenImages[0].alloc_surface = RADEONAllocateSurface;
     offscreenImages[0].free_surface = RADEONFreeSurface;
     offscreenImages[0].display = RADEONDisplaySurface;

commit 3fd2d22a02812d5f86cdc1c9503f48362b0c362b
Author: Alex Deucher <alex@botch2.(none)>
Date:   Sat Aug 25 17:37:35 2007 -0400

    RADEON: remove fbdev option
    
    FBDev support is currently broken, and it not really compatible
    with randr

diff --git a/man/radeon.man b/man/radeon.man
index 8423cc9..88665bf 100644
--- a/man/radeon.man
+++ b/man/radeon.man
@@ -150,14 +150,6 @@ affects the "true" overlay via xv, it won't affect things like textured video.
 .br
 The default value is either 1536 (for most chips) or 1920.
 .TP
-.BI "Option \*qUseFBDev\*q \*q" boolean \*q
-Enable or disable use of an OS\-specific framebuffer device interface
-(which is not supported on all OSs).  MergedFB does not work when this
-option is in use.  See fbdevhw(__drivermansuffix__) for further information. 
-.br
-The default is
-.B off.
-.TP
 .BI "Option \*qAGPMode\*q \*q" integer \*q
 Set AGP data transfer rate.
 (used only when DRI is enabled)
diff --git a/src/radeon.h b/src/radeon.h
index 6f880b8..53fb5f7 100644
--- a/src/radeon.h
+++ b/src/radeon.h
@@ -123,7 +123,6 @@ typedef enum {
 #endif
     OPTION_DDC_MODE,
     OPTION_IGNORE_EDID,
-    OPTION_FBDEV,
     OPTION_DISP_PRIORITY,
     OPTION_PANEL_SIZE,
     OPTION_MIN_DOTCLOCK,
@@ -437,8 +436,6 @@ typedef struct {
     RADEONChipFamily  ChipFamily;
     RADEONErrata      ChipErrata;
 
-    Bool              FBDev;
-
     unsigned long     LinearAddr;       /* Frame buffer physical address     */
     unsigned long     MMIOAddr;         /* MMIO region physical address      */
     unsigned long     BIOSAddr;         /* BIOS physical address             */
diff --git a/src/radeon_crtc.c b/src/radeon_crtc.c
index 3ee7760..d42e482 100644
--- a/src/radeon_crtc.c
+++ b/src/radeon_crtc.c
@@ -36,7 +36,6 @@
 /* X and server generic header files */
 #include "xf86.h"
 #include "xf86_OSproc.h"
-#include "fbdevhw.h"
 #include "vgaHW.h"
 #include "xf86Modes.h"
 
diff --git a/src/radeon_display.c b/src/radeon_display.c
index ed20409..ed45d79 100644
--- a/src/radeon_display.c
+++ b/src/radeon_display.c
@@ -36,7 +36,6 @@
 /* X and server generic header files */
 #include "xf86.h"
 #include "xf86_OSproc.h"
-#include "fbdevhw.h"
 #include "vgaHW.h"
 #include "xf86Modes.h"
 
diff --git a/src/radeon_driver.c b/src/radeon_driver.c
index a111e0d..e445b9e 100644
--- a/src/radeon_driver.c
+++ b/src/radeon_driver.c
@@ -98,11 +98,10 @@
 #include "xf86cmap.h"
 #include "vbe.h"
 
-				/* fbdevhw * vgaHW definitions */
+				/* vgaHW definitions */
 #ifdef WITH_VGAHW
 #include "vgaHW.h"
 #endif
-#include "fbdevhw.h"
 
 #define DPMS_SERVER
 #include <X11/extensions/dpms.h>
@@ -159,7 +158,6 @@ static const OptionInfoRec RADEONOptions[] = {
 #endif
     { OPTION_DDC_MODE,       "DDCMode",          OPTV_BOOLEAN, {0}, FALSE },
     { OPTION_IGNORE_EDID,    "IgnoreEDID",       OPTV_BOOLEAN, {0}, FALSE },
-    { OPTION_FBDEV,          "UseFBDev",         OPTV_BOOLEAN, {0}, FALSE },
     { OPTION_DISP_PRIORITY,  "DisplayPriority",  OPTV_ANYSTR,  {0}, FALSE },
     { OPTION_PANEL_SIZE,     "PanelSize",        OPTV_ANYSTR,  {0}, FALSE },
     { OPTION_MIN_DOTCLOCK,   "ForceMinDotClock", OPTV_FREQ,    {0}, FALSE },
@@ -208,34 +206,6 @@ static const char *vgahwSymbols[] = {
 };
 #endif
 
-static const char *fbdevHWSymbols[] = {
-    "fbdevHWInit",
-    "fbdevHWUseBuildinMode",
-
-    "fbdevHWGetVidmem",
-
-    "fbdevHWDPMSSet",
-
-    /* colormap */
-    "fbdevHWLoadPalette",
-    /* ScrnInfo hooks */
-    "fbdevHWAdjustFrame",
-    "fbdevHWEnterVT",
-    "fbdevHWLeaveVT",
-    "fbdevHWModeInit",
-    "fbdevHWRestore",
-    "fbdevHWSave",
-    "fbdevHWSwitchMode",
-    "fbdevHWValidModeWeak",
-
-    "fbdevHWMapMMIO",
-    "fbdevHWMapVidmem",
-    "fbdevHWUnmapMMIO",
-    "fbdevHWUnmapVidmem",
-
-    NULL
-};
-
 static const char *ddcSymbols[] = {
     "xf86PrintEDID",
     "xf86DoEDID_DDC1",
@@ -396,7 +366,6 @@ void RADEONLoaderRefSymLists(void)
 			  drmSymbols,
 			  driSymbols,
 #endif
-			  fbdevHWSymbols,
 			  vbeSymbols,
 			  int10Symbols,
 			  i2cSymbols,
@@ -553,15 +522,11 @@ static Bool RADEONMapMMIO(ScrnInfoPtr pScrn)
 {
     RADEONInfoPtr  info = RADEONPTR(pScrn);
 
-    if (info->FBDev) {
-	info->MMIO = fbdevHWMapMMIO(pScrn);
-    } else {
-	info->MMIO = xf86MapPciMem(pScrn->scrnIndex,
-				   VIDMEM_MMIO | VIDMEM_READSIDEEFFECT,
-				   info->PciTag,
-				   info->MMIOAddr,
-				   info->MMIOSize);
-    }
+    info->MMIO = xf86MapPciMem(pScrn->scrnIndex,
+			       VIDMEM_MMIO | VIDMEM_READSIDEEFFECT,
+			       info->PciTag,
+			       info->MMIOAddr,
+			       info->MMIOSize);
 
     if (!info->MMIO) return FALSE;
     return TRUE;
@@ -574,11 +539,8 @@ static Bool RADEONUnmapMMIO(ScrnInfoPtr pScrn)
 {
     RADEONInfoPtr  info = RADEONPTR(pScrn);
 
-    if (info->FBDev)
-	fbdevHWUnmapMMIO(pScrn);
-    else {
-	xf86UnMapVidMem(pScrn->scrnIndex, info->MMIO, info->MMIOSize);
-    }
+    xf86UnMapVidMem(pScrn->scrnIndex, info->MMIO, info->MMIOSize);
+
     info->MMIO = NULL;
     return TRUE;
 }
@@ -588,17 +550,13 @@ static Bool RADEONMapFB(ScrnInfoPtr pScrn)
 {
     RADEONInfoPtr  info = RADEONPTR(pScrn);
 
-    if (info->FBDev) {
-	info->FB = fbdevHWMapVidmem(pScrn);
-    } else {
-	xf86DrvMsgVerb(pScrn->scrnIndex, X_INFO, RADEON_LOGLEVEL_DEBUG,
-		       "Map: 0x%08lx, 0x%08lx\n", info->LinearAddr, info->FbMapSize);
-	info->FB = xf86MapPciMem(pScrn->scrnIndex,
-				 VIDMEM_FRAMEBUFFER,
-				 info->PciTag,
-				 info->LinearAddr,
-				 info->FbMapSize);
-    }
+    xf86DrvMsgVerb(pScrn->scrnIndex, X_INFO, RADEON_LOGLEVEL_DEBUG,
+		   "Map: 0x%08lx, 0x%08lx\n", info->LinearAddr, info->FbMapSize);
+    info->FB = xf86MapPciMem(pScrn->scrnIndex,
+			     VIDMEM_FRAMEBUFFER,
+			     info->PciTag,
+			     info->LinearAddr,
+			     info->FbMapSize);
 
     if (!info->FB) return FALSE;
     return TRUE;
@@ -609,10 +567,7 @@ static Bool RADEONUnmapFB(ScrnInfoPtr pScrn)
 {
     RADEONInfoPtr  info = RADEONPTR(pScrn);
 
-    if (info->FBDev)
-	fbdevHWUnmapVidmem(pScrn);
-    else
-	xf86UnMapVidMem(pScrn->scrnIndex, info->FB, info->FbMapSize);
+    xf86UnMapVidMem(pScrn->scrnIndex, info->FB, info->FbMapSize);
     info->FB = NULL;
     return TRUE;
 }
@@ -1211,8 +1166,7 @@ static void RADEONInitMemoryMap(ScrnInfoPtr pScrn)
     }
 #endif
 
-    /* We won't try to change MC_FB_LOCATION when using fbdev */
-    if (!info->FBDev) {
+    {
 	if (info->IsIGP)
 	    info->mc_fb_location = INREG(RADEON_NB_TOM);
 	else
@@ -1380,9 +1334,7 @@ static Bool RADEONPreInitVRAM(ScrnInfoPtr pScrn)
     MessageType    from = X_PROBED;
     CARD32         accessible, bar_size;
 
-    if (info->FBDev)
-	pScrn->videoRam      = fbdevHWGetVidmem(pScrn) / 1024;
-    else if ((info->IsIGP)) {
+    if ((info->IsIGP)) {
         CARD32 tom = INREG(RADEON_NB_TOM);
 
 	pScrn->videoRam = (((tom >> 16) -
@@ -2293,12 +2245,7 @@ static void RADEONPreInitColorTiling(ScrnInfoPtr pScrn)
     }
 #endif /* XF86DRI */
 
-    if ((info->allowColorTiling) && (info->FBDev)) {
-	xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
-		   "Color tiling not supported with UseFBDev option\n");
-	info->allowColorTiling = FALSE;
-    }
-    else if (info->allowColorTiling) {
+    if (info->allowColorTiling) {
 	xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Color tiling enabled by default\n");
     } else {
 	xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Color tiling disabled\n");
@@ -2715,30 +2662,8 @@ _X_EXPORT Bool RADEONPreInit(ScrnInfoPtr pScrn, int flags)
 	"X server will %skeep DPI constant for all screen sizes\n",
 	info->constantDPI ? "" : "not ");
 
-    if (xf86ReturnOptValBool(info->Options, OPTION_FBDEV, FALSE)) {
-	/* check for Linux framebuffer device */
-
-	if (xf86LoadSubModule(pScrn, "fbdevhw")) {
-	    xf86LoaderReqSymLists(fbdevHWSymbols, NULL);
-
-	    if (fbdevHWInit(pScrn, info->PciInfo, NULL)) {
-		pScrn->ValidMode     = fbdevHWValidModeWeak();
-		info->FBDev = TRUE;
-		xf86DrvMsg(pScrn->scrnIndex, X_CONFIG,
-			   "Using framebuffer device\n");
-	    } else {
-		xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
-			   "fbdevHWInit failed, not using framebuffer device\n");
-	    }
-	} else {
-	    xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
-		       "Couldn't load fbdevhw module, not using framebuffer device\n");
-	}
-    }
-
-    if (!info->FBDev)
-	if (!RADEONPreInitInt10(pScrn, &pInt10))
-	    goto fail;
+    if (!RADEONPreInitInt10(pScrn, &pInt10))
+	goto fail;
 
     RADEONPostInt10Check(pScrn, int10_save);
 
@@ -2906,9 +2831,7 @@ static void RADEONLoadPalette(ScrnInfoPtr pScrn, int numColors,
     if (info->accelOn && pScrn->pScreen)
         RADEON_SYNC(info, pScrn);
 
-    if (info->FBDev) {
-	fbdevHWLoadPalette(pScrn, numColors, indices, colors, pVisual);
-    } else {
+    {
 
       for (c = 0; c < xf86_config->num_crtc; c++) {
 	  xf86CrtcPtr crtc = xf86_config->crtc[c];
@@ -3365,6 +3288,7 @@ Bool RADEONScreenInit(int scrnIndex, ScreenPtr pScreen,
     RADEONInfoPtr  info  = RADEONPTR(pScrn);
     xf86CrtcConfigPtr   xf86_config = XF86_CRTC_CONFIG_PTR(pScrn);
     int            hasDRI = 0;
+    int i;
 #ifdef RENDER
     int            subPixelOrder = SubPixelUnknown;
     char*          s;
@@ -3465,11 +3389,11 @@ Bool RADEONScreenInit(int scrnIndex, ScreenPtr pScreen,
 
     /* empty the surfaces */
     unsigned char *RADEONMMIO = info->MMIO;
-    unsigned int i;
-    for (i = 0; i < 8; i++) {
-	OUTREG(RADEON_SURFACE0_INFO + 16 * i, 0);
-	OUTREG(RADEON_SURFACE0_LOWER_BOUND + 16 * i, 0);
-	OUTREG(RADEON_SURFACE0_UPPER_BOUND + 16 * i, 0);
+    unsigned int j;
+    for (j = 0; j < 8; j++) {
+	OUTREG(RADEON_SURFACE0_INFO + 16 * j, 0);
+	OUTREG(RADEON_SURFACE0_LOWER_BOUND + 16 * j, 0);
+	OUTREG(RADEON_SURFACE0_UPPER_BOUND + 16 * j, 0);
     }
 
 #ifdef XF86DRI
@@ -3642,35 +3566,22 @@ Bool RADEONScreenInit(int scrnIndex, ScreenPtr pScreen,
 #endif
 
     pScrn->vtSema = TRUE;



Reply to: