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

xserver-xorg-video-intel: Changes to 'debian-unstable'



 ChangeLog                   | 1248 ++++++++++++++++++++++++++++++++++++++++++--
 config.guess                |    6 
 config.sub                  |   10 
 configure                   |  450 +++++++++++----
 configure.ac                |   21 
 debian/changelog            |   23 
 debian/control              |    2 
 debian/xsfbs/xsfbs.mk       |   50 -
 debian/xsfbs/xsfbs.sh       |    7 
 man/intel.man               |   27 
 src/Makefile.am             |    2 
 src/Makefile.in             |    2 
 src/bios_reader/Makefile.am |    2 
 src/bios_reader/Makefile.in |   16 
 src/ch7017/ch7017.c         |   75 +-
 src/ch7017/ch7017_reg.h     |   14 
 src/ch7xxx/ch7xxx.c         |   28 
 src/common.h                |   61 +-
 src/fix.5c                  |   14 
 src/i810.h                  |    9 
 src/i810_dri.c              |   20 
 src/i810_driver.c           |  252 ++++++++
 src/i810_reg.h              |   51 +
 src/i830.h                  |  187 +++++-
 src/i830_accel.c            |   13 
 src/i830_bios.c             |    4 
 src/i830_common.h           |   27 
 src/i830_cursor.c           |   58 ++
 src/i830_debug.c            |   70 ++
 src/i830_display.c          |  326 ++++++++---
 src/i830_dri.c              |  598 ++++++++++-----------
 src/i830_dri.h              |    2 
 src/i830_driver.c           |  932 ++++++++++++++++++--------------
 src/i830_dvo.c              |   22 
 src/i830_exa.c              |  151 ++++-
 src/i830_lvds.c             |  499 +++++++++++++++--
 src/i830_memory.c           | 1143 +++++++++++++++++++++++++---------------
 src/i830_quirks.c           |   38 +
 src/i830_render.c           |    3 
 src/i830_tv.c               |   78 ++
 src/i830_video.c            |  224 ++-----
 src/i830_video.h            |   17 
 src/i830_xaa.c              |  114 ++--
 src/i915_render.c           |   43 -
 src/i915_video.c            |   20 
 src/i965_render.c           |   26 
 src/i965_video.c            |    8 
 src/ivch/ivch.c             |   20 
 src/reg_dumper/main.c       |   10 
 src/scripts/clock-graph.5c  |  174 ++++++
 src/scripts/clock.5c        |   40 +
 src/scripts/fix.5c          |   14 
 src/scripts/tv.5c           |  128 ++++
 src/sil164/sil164.c         |   20 
 src/sil164/sil164_reg.h     |    1 
 src/tfp410/tfp410.c         |   28 
 src/tfp410/tfp410_reg.h     |    2 
 src/tv.5c                   |  128 ----
 src/xvmc/I810XvMC.h         |    1 
 59 files changed, 5419 insertions(+), 2140 deletions(-)

New commits:
commit ff13240b8f79609b4db51c432919525cede0029b
Author: Brice Goglin <bgoglin@debian.org>
Date:   Fri Nov 16 09:40:43 2007 +0100

    Prepare changelog for upload

diff --git a/debian/changelog b/debian/changelog
index 07377c4..d655cb5 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,10 +1,11 @@
-xserver-xorg-video-intel (2:2.2.0-1) UNRELEASED; urgency=low
+xserver-xorg-video-intel (2:2.2.0-1) unstable; urgency=low
 
   * New upstream release.
     + Also pull bugfix commit 4a2b0f340357c4ca58dc9586fad1337b83966362.
     + Fix backlight problems on various chipsets,
       closes: #443111, #438969, #439744.
     + Fix some issues with high resolution, closes: #420840.
+  * Add myself to Uploaders and remove Branden with his permission.
 
  -- Brice Goglin <bgoglin@debian.org>  Fri, 16 Nov 2007 09:30:26 +0100
 
diff --git a/debian/control b/debian/control
index b5cde9b..98c6585 100644
--- a/debian/control
+++ b/debian/control
@@ -2,7 +2,7 @@ Source: xserver-xorg-video-intel
 Section: x11
 Priority: optional
 Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
-Uploaders: David Nusinow <dnusinow@debian.org>, Branden Robinson <branden@debian.org>, Drew Parsons <dparsons@debian.org>, Julien Cristau <jcristau@debian.org>
+Uploaders: David Nusinow <dnusinow@debian.org>, Drew Parsons <dparsons@debian.org>, Julien Cristau <jcristau@debian.org>, Brice Goglin <bgoglin@debian.org>
 Build-Depends: debhelper (>= 5), quilt, pkg-config, xserver-xorg-dev (>= 2:1.4), x11proto-gl-dev, x11proto-video-dev, libgl1-mesa-dev | libgl-dev, libxvmc-dev (>= 1:1.0.1-1), x11proto-core-dev, x11proto-fonts-dev, x11proto-randr-dev (>= 1.2), x11proto-render-dev, x11proto-xinerama-dev, libdrm-dev (>= 2.2) [!hurd-i386], x11proto-xf86dri-dev
 Standards-Version: 3.7.2
 XS-Vcs-Git: git://git.debian.org/git/pkg-xorg/driver/xserver-xorg-video-intel

commit d7378bcf4456cbaceefbdaebde05b7f3ebadfc61
Author: Brice Goglin <bgoglin@debian.org>
Date:   Fri Nov 16 09:39:22 2007 +0100

    New upstream release

diff --git a/configure b/configure
index 07ce1e3..77b3c18 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-intel 2.1.99.
+# Generated by GNU Autoconf 2.61 for xf86-video-intel 2.2.0.
 #
 # 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-intel'
 PACKAGE_TARNAME='xf86-video-intel'
-PACKAGE_VERSION='2.1.99'
-PACKAGE_STRING='xf86-video-intel 2.1.99'
+PACKAGE_VERSION='2.2.0'
+PACKAGE_STRING='xf86-video-intel 2.2.0'
 PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=xorg'
 
 ac_unique_file="Makefile.am"
@@ -1451,7 +1451,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-intel 2.1.99 to adapt to many kinds of systems.
+\`configure' configures xf86-video-intel 2.2.0 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1521,7 +1521,7 @@ fi
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of xf86-video-intel 2.1.99:";;
+     short | recursive ) echo "Configuration of xf86-video-intel 2.2.0:";;
    esac
   cat <<\_ACEOF
 
@@ -1646,7 +1646,7 @@ fi
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-xf86-video-intel configure 2.1.99
+xf86-video-intel configure 2.2.0
 generated by GNU Autoconf 2.61
 
 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
@@ -1660,7 +1660,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-intel $as_me 2.1.99, which was
+It was created by xf86-video-intel $as_me 2.2.0, which was
 generated by GNU Autoconf 2.61.  Invocation command line was
 
   $ $0 $@
@@ -2355,7 +2355,7 @@ fi
 
 # Define the identity of the package.
  PACKAGE='xf86-video-intel'
- VERSION='2.1.99'
+ VERSION='2.2.0'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -22759,7 +22759,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-intel $as_me 2.1.99, which was
+This file was extended by xf86-video-intel $as_me 2.2.0, which was
 generated by GNU Autoconf 2.61.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -22812,7 +22812,7 @@ Report bugs to <bug-autoconf@gnu.org>."
 _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF
 ac_cs_version="\\
-xf86-video-intel config.status 2.1.99
+xf86-video-intel config.status 2.2.0
 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 b19cd1c..07377c4 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,13 @@
+xserver-xorg-video-intel (2:2.2.0-1) UNRELEASED; urgency=low
+
+  * New upstream release.
+    + Also pull bugfix commit 4a2b0f340357c4ca58dc9586fad1337b83966362.
+    + Fix backlight problems on various chipsets,
+      closes: #443111, #438969, #439744.
+    + Fix some issues with high resolution, closes: #420840.
+
+ -- Brice Goglin <bgoglin@debian.org>  Fri, 16 Nov 2007 09:30:26 +0100
+
 xserver-xorg-video-intel (2:2.1.99-1) experimental; urgency=low
 
   [ David Nusinow ]

commit 4a2b0f340357c4ca58dc9586fad1337b83966362
Author: Jesse Barnes <jbarnes@hobbes.virtuousgeek.org>
Date:   Thu Nov 15 18:36:54 2007 -0800

    Fix typo in 1920x1080 resolution entry

diff --git a/src/i830_tv.c b/src/i830_tv.c
index 524a0d3..14f4089 100644
--- a/src/i830_tv.c
+++ b/src/i830_tv.c
@@ -1398,7 +1398,7 @@ static struct input_res {
 	{"1280x1024", 1280, 1024},
 	{"848x480", 848, 480},
 	{"1280x720", 1280, 720},
-	{"1920x108", 1920, 1080},
+	{"1920x1080", 1920, 1080},
 };
 
 /**

commit 04b60b6d3436fb57163c23acf335364f0ea2f79c
Author: Jesse Barnes <jbarnes@hobbes.virtuousgeek.org>
Date:   Thu Nov 15 11:49:53 2007 -0800

    Bump version to 2.2.0

diff --git a/configure.ac b/configure.ac
index b79aac8..20aebb4 100644
--- a/configure.ac
+++ b/configure.ac
@@ -22,7 +22,7 @@
 
 AC_PREREQ(2.57)
 AC_INIT([xf86-video-intel],
-        2.1.99,
+        2.2.0,
         [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
         xf86-video-intel)
 

commit 6eecef4fed8a21dfdabef42eb69fd150b96167b2
Author: Jesse Barnes <jbarnes@hobbes.virtuousgeek.org>
Date:   Thu Nov 15 10:10:59 2007 -0800

    Adjust default TV out paramaters
    
    According to several users, a default brightness of 0 results in much better TV
    output.  Improved control of these parameters will be provided by Randr1.3,
    which will standardize several output properties across various chips.

diff --git a/src/i830_tv.c b/src/i830_tv.c
index e54786a..524a0d3 100644
--- a/src/i830_tv.c
+++ b/src/i830_tv.c
@@ -1178,7 +1178,7 @@ i830_tv_mode_set(xf86OutputPtr output, DisplayModePtr mode,
 	    (i830_float_to_csc(color_conversion->bv) << 16) |
 	    (i830_float_to_luma(color_conversion->av)));
 
-    OUTREG(TV_CLR_KNOBS, 0x10606000);
+    OUTREG(TV_CLR_KNOBS, 0x00606000);
     OUTREG(TV_CLR_LEVEL, ((video_levels->black << TV_BLACK_LEVEL_SHIFT) |
 		(video_levels->blank << TV_BLANK_LEVEL_SHIFT)));
     {

commit 7552d80e367fe38bbc594fe94abd649917fe54d5
Author: Jesse Barnes <jbarnes@hobbes.virtuousgeek.org>
Date:   Thu Nov 15 10:07:34 2007 -0800

    Add 1920x1080 mode to TV out
    
    Allows users to use 1080p modes on TV out, see bug #13034.

diff --git a/src/i830_tv.c b/src/i830_tv.c
index ee2538a..e54786a 100644
--- a/src/i830_tv.c
+++ b/src/i830_tv.c
@@ -1398,6 +1398,7 @@ static struct input_res {
 	{"1280x1024", 1280, 1024},
 	{"848x480", 848, 480},
 	{"1280x720", 1280, 720},
+	{"1920x108", 1920, 1080},
 };
 
 /**

commit e56c166ceb8c1ceddd5020e8de2d0b9d51f535a4
Author: Zhenyu Wang <zhenyu.z.wang@intel.com>
Date:   Thu Nov 15 18:34:18 2007 +0800

    remove unnecessary i830_reg.h includes
    
    i830_reg.h only contains 3d engine cmds for 8XX chips.

diff --git a/src/i830_display.c b/src/i830_display.c
index 223a6aa..0e42624 100644
--- a/src/i830_display.c
+++ b/src/i830_display.c
@@ -38,7 +38,6 @@
 
 #include "xf86.h"
 #include "i830.h"
-#include "i830_reg.h"
 #include "i830_bios.h"
 #include "i830_display.h"
 #include "i830_debug.h"
diff --git a/src/i830_driver.c b/src/i830_driver.c
index 5d56104..7818ee4 100644
--- a/src/i830_driver.c
+++ b/src/i830_driver.c
@@ -194,7 +194,6 @@ USE OR OTHER DEALINGS IN THE SOFTWARE.
 #include "vbe.h"
 #include "shadow.h"
 #include "i830.h"
-#include "i830_reg.h"
 #include "i830_display.h"
 #include "i830_debug.h"
 #include "i830_bios.h"
diff --git a/src/i830_exa.c b/src/i830_exa.c
index 56bc15e..32c55dd 100644
--- a/src/i830_exa.c
+++ b/src/i830_exa.c
@@ -35,7 +35,6 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #include "xaarop.h"
 #include "i830.h"
 #include "i810_reg.h"
-#include "i830_reg.h"
 #include <string.h>
 
 #ifdef I830DEBUG
diff --git a/src/i830_memory.c b/src/i830_memory.c
index 1ad4438..85b6528 100644
--- a/src/i830_memory.c
+++ b/src/i830_memory.c
@@ -106,7 +106,6 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 
 #include "i830.h"
 #include "i810_reg.h"
-#include "i830_reg.h"
 
 #define ALIGN(i,m)    (((i) + (m) - 1) & ~((m) - 1))
 

commit 6f3de19159cd7a2d73ed212add909edb3aedce9c
Author: Zhenyu Wang <zhenyu.z.wang@intel.com>
Date:   Thu Nov 15 18:33:27 2007 +0800

    Move fb compression reg definition into i810_reg.h
    
    where we put MMIO control reg in, and shared with intel_reg_dump
    program.

diff --git a/src/i810_reg.h b/src/i810_reg.h
index 598fc8c..a6663a4 100644
--- a/src/i810_reg.h
+++ b/src/i810_reg.h
@@ -2596,4 +2596,37 @@ typedef enum {
 #define PALETTE_A		0x0a000
 #define PALETTE_B		0x0a800
 
+/* Framebuffer compression */
+#define FBC_CFB_BASE		0x03200 /* 4k page aligned */
+#define FBC_LL_BASE		0x03204 /* 4k page aligned */
+#define FBC_CONTROL		0x03208
+#define   FBC_CTL_EN		(1<<31)
+#define   FBC_CTL_PERIODIC	(1<<30)
+#define   FBC_CTL_INTERVAL_SHIFT (16)
+#define   FBC_CTL_UNCOMPRESSIBLE (1<<14)
+#define   FBC_CTL_STRIDE_SHIFT	(5)
+#define   FBC_CTL_FENCENO	(1<<0)
+#define FBC_COMMAND		0x0320c
+#define   FBC_CMD_COMPRESS	(1<<0)
+#define FBC_STATUS		0x03210
+#define   FBC_STAT_COMPRESSING	(1<<31)
+#define   FBC_STAT_COMPRESSED	(1<<30)
+#define   FBC_STAT_MODIFIED	(1<<29)
+#define   FBC_STAT_CURRENT_LINE	(1<<0)
+#define FBC_CONTROL2		0x03214
+#define   FBC_CTL_FENCE_DBL	(0<<4)
+#define   FBC_CTL_IDLE_IMM	(0<<2)
+#define   FBC_CTL_IDLE_FULL	(1<<2)
+#define   FBC_CTL_IDLE_LINE	(2<<2)
+#define   FBC_CTL_IDLE_DEBUG	(3<<2)
+#define   FBC_CTL_CPU_FENCE	(1<<1)
+#define   FBC_CTL_PLANEA	(0<<0)
+#define   FBC_CTL_PLANEB	(1<<0)
+#define FBC_FENCE_OFF		0x0321b
+#define FBC_MOD_NUM		0x03220
+#define FBC_TAG_DEBUG		0x03300
+
+#define FBC_LL_SIZE		(1536)
+#define FBC_LL_PAD		(32)
+
 #endif /* _I810_REG_H */
diff --git a/src/i830_debug.c b/src/i830_debug.c
index 6963c89..8f8ef9b 100644
--- a/src/i830_debug.c
+++ b/src/i830_debug.c
@@ -36,7 +36,6 @@
 
 #include "xf86.h"
 #include "i830.h"
-#include "i830_reg.h"
 #include "i830_debug.h"
 #include <strings.h>
 
diff --git a/src/i830_reg.h b/src/i830_reg.h
index 4d7736a..7a8df9f 100644
--- a/src/i830_reg.h
+++ b/src/i830_reg.h
@@ -29,39 +29,6 @@
 #ifndef _I830_REG_H_
 #define _I830_REG_H_
 
-/* Framebuffer compression */
-#define FBC_CFB_BASE		0x03200 /* 4k page aligned */
-#define FBC_LL_BASE		0x03204 /* 4k page aligned */
-#define FBC_CONTROL		0x03208
-#define   FBC_CTL_EN		(1<<31)
-#define   FBC_CTL_PERIODIC	(1<<30)
-#define   FBC_CTL_INTERVAL_SHIFT (16)
-#define   FBC_CTL_UNCOMPRESSIBLE (1<<14)
-#define   FBC_CTL_STRIDE_SHIFT	(5)
-#define   FBC_CTL_FENCENO	(1<<0)
-#define FBC_COMMAND		0x0320c
-#define   FBC_CMD_COMPRESS	(1<<0)
-#define FBC_STATUS		0x03210
-#define   FBC_STAT_COMPRESSING	(1<<31)
-#define   FBC_STAT_COMPRESSED	(1<<30)
-#define   FBC_STAT_MODIFIED	(1<<29)
-#define   FBC_STAT_CURRENT_LINE	(1<<0)
-#define FBC_CONTROL2		0x03214
-#define   FBC_CTL_FENCE_DBL	(0<<4)
-#define   FBC_CTL_IDLE_IMM	(0<<2)
-#define   FBC_CTL_IDLE_FULL	(1<<2)
-#define   FBC_CTL_IDLE_LINE	(2<<2)
-#define   FBC_CTL_IDLE_DEBUG	(3<<2)
-#define   FBC_CTL_CPU_FENCE	(1<<1)
-#define   FBC_CTL_PLANEA	(0<<0)
-#define   FBC_CTL_PLANEB	(1<<0)
-#define FBC_FENCE_OFF		0x0321b
-#define FBC_MOD_NUM		0x03220
-#define FBC_TAG_DEBUG		0x03300
-
-#define FBC_LL_SIZE		(1536)
-#define FBC_LL_PAD		(32)
-
 #define I830_SET_FIELD( var, mask, value ) (var &= ~(mask), var |= value)
 
 #define CMD_3D (0x3<<29)

commit e64f4929690a57701241334fbca17e95b39ba3d4
Author: Jesse Barnes <jesse.barnes@intel.com>
Date:   Wed Nov 14 16:44:34 2007 -0800

    Backlight fixes
    
    Open the "actual_brightness" file as read only, since we only read from it.
    Also set an initial backlight_duty_cycle at init time so we don't set the
    brightness to 0 at startup.

diff --git a/src/i830_lvds.c b/src/i830_lvds.c
index 0942d1c..a3a56f7 100644
--- a/src/i830_lvds.c
+++ b/src/i830_lvds.c
@@ -295,7 +295,7 @@ i830_lvds_get_backlight_kernel(xf86OutputPtr output)
 
     sprintf(path, "%s/%s/actual_brightness", BACKLIGHT_CLASS,
 	    backlight_interfaces[backlight_index]);
-    fd = open(path, O_RDWR);
+    fd = open(path, O_RDONLY);
     if (fd == -1) {
 	xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "failed to open %s for backlight "
 		   "control: %s\n", path, strerror(errno));
@@ -1015,6 +1015,8 @@ i830_lvds_init(ScrnInfoPtr pScrn)
 	break;
     }
 
+    dev_priv->backlight_duty_cycle = dev_priv->backlight_max;
+
     return;
 
 disable_exit:

commit 53e3693ef13f31f3fc33bcff7286ab2b03b2d430
Author: Jesse Barnes <jbarnes@hobbes.virtuousgeek.org>
Date:   Wed Nov 14 16:24:56 2007 -0800

    Disable FBC by default on 965GM
    
    Several people have reported that they see frequent FBC related display
    corruption on 965GM, so disable it for now.  Users wanting to enable it can use
    the driver option "Framebuffercompression" to override the default.

diff --git a/src/i830_driver.c b/src/i830_driver.c
index abe6932..5d56104 100644
--- a/src/i830_driver.c
+++ b/src/i830_driver.c
@@ -2449,7 +2449,7 @@ I830ScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
    }
 
    /* Enable FB compression if possible */
-   if (i830_fb_compression_supported(pI830))
+   if (i830_fb_compression_supported(pI830) && !IS_I965GM(pI830))
        pI830->fb_compression = TRUE;
    else
        pI830->fb_compression = FALSE;

commit b2726899bc6ebd108aa4a5dd66fe1d881bb778b3
Author: Jesse Barnes <jbarnes@hobbes.virtuousgeek.org>
Date:   Wed Nov 14 15:49:41 2007 -0800

    Add more FBC regs
    
    Needed for the new debug code

diff --git a/src/i830_reg.h b/src/i830_reg.h
index df22ed4..4d7736a 100644
--- a/src/i830_reg.h
+++ b/src/i830_reg.h
@@ -56,6 +56,8 @@
 #define   FBC_CTL_PLANEA	(0<<0)
 #define   FBC_CTL_PLANEB	(1<<0)
 #define FBC_FENCE_OFF		0x0321b
+#define FBC_MOD_NUM		0x03220
+#define FBC_TAG_DEBUG		0x03300
 
 #define FBC_LL_SIZE		(1536)
 #define FBC_LL_PAD		(32)

commit b7bc694c6b98dac17763426d905a22d3ae17a018
Author: Jesse Barnes <jbarnes@hobbes.virtuousgeek.org>
Date:   Wed Nov 14 15:46:57 2007 -0800

    Fix kernel get_brightness function
    
    We need to look at "actual_brightness" rather than "brightness".  The former
    contains the brightness value the kernel driver has actually set, while the
    latter is merely what the user requested.

diff --git a/src/i830_lvds.c b/src/i830_lvds.c
index 694414a..0942d1c 100644
--- a/src/i830_lvds.c
+++ b/src/i830_lvds.c
@@ -293,7 +293,7 @@ i830_lvds_get_backlight_kernel(xf86OutputPtr output)
     char path[BACKLIGHT_PATH_LEN], val[BACKLIGHT_VALUE_LEN];
     int fd;
 
-    sprintf(path, "%s/%s/brightness", BACKLIGHT_CLASS,
+    sprintf(path, "%s/%s/actual_brightness", BACKLIGHT_CLASS,
 	    backlight_interfaces[backlight_index]);
     fd = open(path, O_RDWR);
     if (fd == -1) {

commit 9ee96ed02aacd953ab58288fddf0fa60f60b668e
Author: Jesse Barnes <jbarnes@hobbes.virtuousgeek.org>
Date:   Wed Nov 14 15:44:56 2007 -0800

    Correct FBC debug message
    
    To be consistent, it should say 'plane' rather than 'pipe'.

diff --git a/src/i830_display.c b/src/i830_display.c
index ea10c8a..223a6aa 100644
--- a/src/i830_display.c
+++ b/src/i830_display.c
@@ -646,7 +646,7 @@ i830_disable_fb_compression(xf86CrtcPtr crtc)
     /* Wait for compressing bit to clear */
     while (INREG(FBC_STATUS) & FBC_STAT_COMPRESSING)
 	; /* nothing */
-    xf86DrvMsg(pScrn->scrnIndex, X_INFO, "fbc disabled on pipe %c\n", plane);
+    xf86DrvMsg(pScrn->scrnIndex, X_INFO, "fbc disabled on plane %c\n", plane);
 }
 
 /**

commit 675b9471d84059496ca41d427a4f95d419f82be9
Author: Jesse Barnes <jbarnes@hobbes.virtuousgeek.org>
Date:   Wed Nov 14 15:17:05 2007 -0800

    Add FBC registers to register dump output
    
    Just for completeness.

diff --git a/src/i830_debug.c b/src/i830_debug.c
index 0237182..6963c89 100644
--- a/src/i830_debug.c
+++ b/src/i830_debug.c
@@ -36,6 +36,7 @@
 
 #include "xf86.h"
 #include "i830.h"
+#include "i830_reg.h"
 #include "i830_debug.h"
 #include <strings.h>
 
@@ -403,6 +404,15 @@ static struct i830SnapshotRec {
     DEFINEREG2(PIPEACONF, i830_debug_pipeconf),
     DEFINEREG2(PIPEASRC, i830_debug_yxminus1),
 
+    DEFINEREG(FBC_CFB_BASE),
+    DEFINEREG(FBC_LL_BASE),
+    DEFINEREG(FBC_CONTROL),
+    DEFINEREG(FBC_COMMAND),
+    DEFINEREG(FBC_STATUS),
+    DEFINEREG(FBC_CONTROL2),
+    DEFINEREG(FBC_FENCE_OFF),
+    DEFINEREG(FBC_MOD_NUM),
+
     DEFINEREG2(FPA0, i830_debug_fp),
     DEFINEREG2(FPA1, i830_debug_fp),
     DEFINEREG2(DPLL_A, i830_debug_dpll),

commit a2a0821e74a61f53cc7f0c41ce629644ad712114
Author: Jesse Barnes <jbarnes@hobbes.virtuousgeek.org>
Date:   Wed Nov 14 11:30:20 2007 -0800

    Don't stop ring before restoring hw state
    
    Some of the hw state restoration callbacks may want to use the ring for various
    things like stopping video playback, so leave the ring enabled until we get
    back from RestoreHWState.  Also rename the functions so that their purpose is
    clearer and remove a couple of redundant lines.

diff --git a/src/i830.h b/src/i830.h
index 3abc800..2c1ac86 100644
--- a/src/i830.h
+++ b/src/i830.h
@@ -664,7 +664,7 @@ i830_crtc_hide_cursor (xf86CrtcPtr crtc);
 void
 i830_crtc_set_cursor_colors (xf86CrtcPtr crtc, int bg, int fg);
 
-extern void I830RefreshRing(ScrnInfoPtr pScrn);
+extern void i830_refresh_ring(ScrnInfoPtr pScrn);
 extern void I830EmitFlush(ScrnInfoPtr pScrn);
 
 #ifdef I830_XV
diff --git a/src/i830_accel.c b/src/i830_accel.c
index 4d9ea79..7501c2b 100644
--- a/src/i830_accel.c
+++ b/src/i830_accel.c
@@ -249,25 +249,6 @@ I830SelectBuffer(ScrnInfoPtr pScrn, int buffer)
 	     buffer, pI830->bufferOffset);
 }
 
-void
-I830RefreshRing(ScrnInfoPtr pScrn)
-{
-   I830Ptr pI830 = I830PTR(pScrn);
-
-   /* If we're reaching RefreshRing as a result of grabbing the DRI lock
-    * before we've set up the ringbuffer, don't bother.
-    */
-   if (pI830->LpRing->mem == NULL)
-       return;
-
-   pI830->LpRing->head = INREG(LP_RING + RING_HEAD) & I830_HEAD_MASK;
-   pI830->LpRing->tail = INREG(LP_RING + RING_TAIL);
-   pI830->LpRing->space = pI830->LpRing->head - (pI830->LpRing->tail + 8);
-   if (pI830->LpRing->space < 0)
-      pI830->LpRing->space += pI830->LpRing->mem->size;
-   i830MarkSync(pScrn);
-}
-
 /* The following function sets up the supported acceleration. Call it
  * from the FbInit() function in the SVGA driver, or before ScreenInit
  * in a monolithic server.
diff --git a/src/i830_dri.c b/src/i830_dri.c
index 4928808..b223b02 100644
--- a/src/i830_dri.c
+++ b/src/i830_dri.c
@@ -1093,7 +1093,7 @@ I830DRISwapContext(ScreenPtr pScreen, DRISyncType syncType,
       if (!pScrn->vtSema)
      	 return;
       pI830->LockHeld = 1;
-      I830RefreshRing(pScrn);
+      i830_refresh_ring(pScrn);
 
       I830EmitFlush(pScrn);
 
@@ -1777,7 +1777,7 @@ I830DRILock(ScrnInfoPtr pScrn)
    if (pI830->directRenderingEnabled && !pI830->LockHeld) {
       DRILock(screenInfo.screens[pScrn->scrnIndex], 0);
       pI830->LockHeld = 1;
-      I830RefreshRing(pScrn);
+      i830_refresh_ring(pScrn);
       return TRUE;
    }
    else
diff --git a/src/i830_driver.c b/src/i830_driver.c
index e000d92..abe6932 100644
--- a/src/i830_driver.c
+++ b/src/i830_driver.c
@@ -1730,7 +1730,7 @@ I830PreInit(ScrnInfoPtr pScrn, int flags)
  * whoever gets control next should do.
  */
 static void
-ResetState(ScrnInfoPtr pScrn, Bool flush)
+i830_stop_ring(ScrnInfoPtr pScrn, Bool flush)
 {
    I830Ptr pI830 = I830PTR(pScrn);
    unsigned long temp;
@@ -1743,34 +1743,23 @@ ResetState(ScrnInfoPtr pScrn, Bool flush)
       pI830->entityPrivate->RingRunning = 0;
 
    /* Flush the ring buffer (if enabled), then disable it. */
-   /* God this is ugly */
-#define flush_ring() do { \
-      temp = INREG(LP_RING + RING_LEN); \
-      if (temp & RING_VALID) { \
-	 I830RefreshRing(pScrn); \
-	 I830Sync(pScrn); \
-	 DO_RING_IDLE(); \
-      } \
-   } while(0)
-#ifdef I830_USE_XAA
-   if (!pI830->useEXA && flush && pI830->AccelInfoRec)
-       flush_ring();
-#endif
-#ifdef I830_USE_EXA
-   if (pI830->useEXA && flush && pI830->EXADriverPtr)
-       flush_ring();
-#endif
-
-   OUTREG(LP_RING + RING_LEN, 0);
-   OUTREG(LP_RING + RING_HEAD, 0);
-   OUTREG(LP_RING + RING_TAIL, 0);
-   OUTREG(LP_RING + RING_START, 0);
+   if (!pI830->noAccel) {
+      temp = INREG(LP_RING + RING_LEN);
+      if (temp & RING_VALID) {
+	 i830_refresh_ring(pScrn);
+	 I830Sync(pScrn);
+	 DO_RING_IDLE();
+      }
 
-   xf86_hide_cursors (pScrn);
+      OUTREG(LP_RING + RING_LEN, 0);
+      OUTREG(LP_RING + RING_HEAD, 0);
+      OUTREG(LP_RING + RING_TAIL, 0);
+      OUTREG(LP_RING + RING_START, 0);
+   }
 }
 
 static void
-SetRingRegs(ScrnInfoPtr pScrn)
+i830_start_ring(ScrnInfoPtr pScrn)
 {
    I830Ptr pI830 = I830PTR(pScrn);
    unsigned int itemp;
@@ -1807,7 +1796,26 @@ SetRingRegs(ScrnInfoPtr pScrn)
    itemp = (pI830->LpRing->mem->size - 4096) & I830_RING_NR_PAGES;
    itemp |= (RING_NO_REPORT | RING_VALID);
    OUTREG(LP_RING + RING_LEN, itemp);
-   I830RefreshRing(pScrn);
+   i830_refresh_ring(pScrn);
+}
+
+void
+i830_refresh_ring(ScrnInfoPtr pScrn)
+{
+   I830Ptr pI830 = I830PTR(pScrn);
+
+   /* If we're reaching RefreshRing as a result of grabbing the DRI lock
+    * before we've set up the ringbuffer, don't bother.
+    */
+   if (pI830->LpRing->mem == NULL)
+       return;
+
+   pI830->LpRing->head = INREG(LP_RING + RING_HEAD) & I830_HEAD_MASK;
+   pI830->LpRing->tail = INREG(LP_RING + RING_TAIL);
+   pI830->LpRing->space = pI830->LpRing->head - (pI830->LpRing->tail + 8);
+   if (pI830->LpRing->space < 0)
+      pI830->LpRing->space += pI830->LpRing->mem->size;
+   i830MarkSync(pScrn);
 }
 
 /*
@@ -1834,8 +1842,7 @@ SetHWOperatingState(ScrnInfoPtr pScrn)
       OUTREG(DSPCLK_GATE_D, OVRUNIT_CLOCK_GATE_DISABLE);
    }
 
-   if (!pI830->noAccel)
-      SetRingRegs(pScrn);
+   i830_start_ring(pScrn);
    if (!pI830->SWCursor)
       I830InitHWCursor(pScrn);
 }
@@ -3002,10 +3009,10 @@ I830LeaveVT(int scrnIndex, int flags)
 
    xf86_hide_cursors (pScrn);
 
-   ResetState(pScrn, TRUE);
-
    RestoreHWState(pScrn);
 
+   i830_stop_ring(pScrn, TRUE);
+
    if (pI830->debug_modes) {
       i830CompareRegsToSnapshot(pScrn, "After LeaveVT");
       i830DumpRegs (pScrn);
@@ -3078,7 +3085,7 @@ I830EnterVT(int scrnIndex, int flags)
 		 "Existing errors found in hardware state.\n");
    }
 
-   ResetState(pScrn, FALSE);
+   i830_stop_ring(pScrn, FALSE);
    SetHWOperatingState(pScrn);
 
    /* Clear the framebuffer */
@@ -3099,7 +3106,7 @@ I830EnterVT(int scrnIndex, int flags)
    }
    i830DescribeOutputConfiguration(pScrn);
 
-   ResetState(pScrn, TRUE);
+   i830_stop_ring(pScrn, TRUE);
    SetHWOperatingState(pScrn);
 
 #ifdef XF86DRI
@@ -3119,7 +3126,7 @@ I830EnterVT(int scrnIndex, int flags)
 
 	 I830DRIResume(screenInfo.screens[scrnIndex]);
       
-	 I830RefreshRing(pScrn);
+	 i830_refresh_ring(pScrn);
 	 I830Sync(pScrn);
 	 DO_RING_IDLE();
 

commit ad3bc0158d37e98fcbbe6a8e31413c142a260424
Author: Zhenyu Wang <zhenyu.z.wang@intel.com>
Date:   Wed Nov 14 22:46:46 2007 +0800

    Don't enable fbc with XAA or tiling is off.
    
    This slightly reworks my last fbc patch. We don't
    support tiled front buffer with XAA now, so also
    disable fbc on it. If tiled alloc failed, disable
    fbc too.

diff --git a/src/i830.h b/src/i830.h
index 17d2fe2..3abc800 100644
--- a/src/i830.h
+++ b/src/i830.h
@@ -805,6 +805,11 @@ static inline int i830_fb_compression_supported(I830Ptr pI830)
 	return FALSE;
     if (IS_I810(pI830) || IS_I815(pI830) || IS_I830(pI830))
 	return FALSE;
+    /* fbc depends on tiled surface. And we don't support tiled
+     * front buffer with XAA now.
+     */
+    if (!pI830->tiling || (IS_I965G(pI830) && !pI830->useEXA))
+	return FALSE;
     return TRUE;
 }
 
diff --git a/src/i830_driver.c b/src/i830_driver.c
index 8d58a08..e000d92 100644
--- a/src/i830_driver.c
+++ b/src/i830_driver.c
@@ -2554,15 +2554,17 @@ I830ScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
 			  "Couldn't allocate tiled memory, page flipping "
 			  "disabled\n");
 	    pI830->allowPageFlip = FALSE;
+	    if (pI830->fb_compression)
+	       xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
+			  "Couldn't allocate tiled memory, fb compression "
+			  "disabled\n");
+	    pI830->fb_compression = FALSE;
 	 }
 
 	 xf86DrvMsg(pScrn->scrnIndex, X_INFO,
 		    "Attempting memory allocation with %s buffers.\n",
 		    (i & 1) ? "untiled" : "tiled");
 
-	 if (!pI830->tiling && pI830->fb_compression)
-	     pI830->fb_compression = FALSE;
-
 	 if (i830_allocate_2d_memory(pScrn) &&
 	     i830_allocate_3d_memory(pScrn))
 	 {

commit 26194e19e1c80615697016e25640d4c8c244353f
Author: Keith Packard <keithp@koto.keithp.com>
Date:   Tue Nov 13 22:26:40 2007 -0800

    Review PLL spreadsheet and update register ranges.
    
    The PLL spreadsheet makes the precise register ranges allowed for each mode
    quite clear, and shows a few inaccuracies in the b-spec. In particular, the
    N register value may range from 1 to 6 instead of 3 to 8. This should close
    the gap we've seen in the reachable frequencies.

diff --git a/src/i830_display.c b/src/i830_display.c
index d988b86..ea10c8a 100644
--- a/src/i830_display.c
+++ b/src/i830_display.c
@@ -100,14 +100,26 @@ typedef struct {
 #define I9XX_DOT_MAX		 400000
 #define I9XX_VCO_MIN		1400000
 #define I9XX_VCO_MAX		2800000
-#define I9XX_N_MIN		      3
-#define I9XX_N_MAX		      8
+
+/* Haven't found any reason to go this fast, but newer chips support it */
+#define I96X_VCO_MAX		3200000
+
+/*
+ * These values are taken from the broadwater/crestline PLL spreadsheet.
+ * All of the defines here are for the programmed register value, not
+ * the 'counter' value (e.g. Ncounter = Nregister + 2)
+ */
+#define I9XX_N_MIN		      1
+#define I9XX_N_MAX		      6
 #define I9XX_M_MIN		     70
 #define I9XX_M_MAX		    120
+
+/* these two come from the calm1 macro */
 #define I9XX_M1_MIN		     10
-#define I9XX_M1_MAX		     20
+#define I9XX_M1_MAX		     22
 #define I9XX_M2_MIN		      5
 #define I9XX_M2_MAX		      9
+
 #define I9XX_P_SDVO_DAC_MIN	      5
 #define I9XX_P_SDVO_DAC_MAX	     80
 #define I9XX_P_LVDS_MIN		      7
diff --git a/src/scripts/clock-graph.5c b/src/scripts/clock-graph.5c
index e39e559..324febf 100644
--- a/src/scripts/clock-graph.5c
+++ b/src/scripts/clock-graph.5c
@@ -9,7 +9,7 @@ int max_vco = 2800000000;
 int min = 0xffffffff;
 int max = 0;
 
-int max_clocks = 1000;
+int max_clocks = 2000;
 int[4][max_clocks] clocks;
 int[4][max_clocks] vcos;
 int[4] clock_count = {0...};
@@ -35,9 +35,9 @@ void calc_p2(int p2i)
 		max_p = 80;
 	}
 
-	for (int m1 = 10; m1 <= 20; m1++) {
+	for (int m1 = 10; m1 <= 22; m1++) {
 		for (int m2 = 5; m2 <= 9; m2++) {
-			for (int n = 3; n <= 8; n++) {
+			for (int n = 1; n <= 5; n++) {
 				for (int p1 = 1; p1 <= 8; p1++) {
 					int ref = 96000000;
 					int m = 5 * (m1 + 2) + (m2 + 2);
diff --git a/src/scripts/clock.5c b/src/scripts/clock.5c
index 8ee9d90..c83c689 100644
--- a/src/scripts/clock.5c
+++ b/src/scripts/clock.5c
@@ -11,9 +11,9 @@ if (p2 == 7 || p2 == 14) {
 	max_p = 80;
 }
 
-for (int m1 = 10; m1 <= 20; m1++) {
+for (int m1 = 10; m1 <= 22; m1++) {
 	for (int m2 = 5; m2 <= 9; m2++) {
-		for (int n = 3; n <= 8; n++) {
+		for (int n = 1; n <= 6; n++) {
 			for (int p1 = 1; p1 <= 8; p1++) {
 				int ref = 96000000;
 				int m = 5 * (m1 + 2) + (m2 + 2);

commit 581509321e51becb8ee6ddcfaa15a2a713c9ef8e
Author: Zhenyu Wang <zhenyu.z.wang@intel.com>
Date:   Wed Nov 14 22:16:04 2007 +0800

    Remove one redundant line.

diff --git a/src/i830_driver.c b/src/i830_driver.c
index debe539..8d58a08 100644
--- a/src/i830_driver.c
+++ b/src/i830_driver.c
@@ -2606,8 +2606,6 @@ I830ScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
       pI830->directRenderingEnabled = FALSE;
    }
 
-   pScrn->displayWidth = pScrn->displayWidth;
-
 #ifdef HAS_MTRR_SUPPORT
    {
       int fd;

commit 8cea3c8cfa86600b5f2c3e1f21c19d4b2a320fd4
Author: Zhenyu Wang <zhenyu.z.wang@intel.com>



Reply to: