Hello community,
here is the log from the commit of package xorg-x11-driver-video for openSUSE:Factory
checked in at Sat Oct 2 00:11:41 CEST 2010.
--------
--- xorg-x11-driver-video/xorg-x11-driver-video.changes 2010-09-15 06:38:51.000000000 +0200
+++ /mounts/work_src_done/STABLE/xorg-x11-driver-video/xorg-x11-driver-video.changes 2010-09-30 12:56:31.000000000 +0200
@@ -1,0 +2,34 @@
+Thu Sep 30 10:54:46 UTC 2010 - sndirsch@novell.com
+
+- 0001-Re-add-XVideo-option-as-XVideo-on-SandyBridge-freez.patch
+ * Re-add XVideo option, as XVideo on SandyBridge freezes the chip
+
+-------------------------------------------------------------------
+Thu Sep 30 09:58:04 UTC 2010 - sndirsch@novell.com
+
+- xf86-video-intel-345c963.diff
+ * Always use tiling on Sandybridge
+
+-------------------------------------------------------------------
+Wed Sep 29 12:20:08 UTC 2010 - sndirsch@novell.com
+
+- xf86-video-intel 2.12.902 (2.13 RC2)
+ * 2nd prerelease of intel's 2.13 driver
+- obsoletes xf86-video-intel-55b5fe8.diff,
+ xf86-video-intel-f63c7df.diff
+
+-------------------------------------------------------------------
+Fri Sep 17 12:53:08 UTC 2010 - sndirsch@novell.com
+
+- xf86-video-intel-55b5fe8.diff
+ * Add alternate pci-id for B43
+- xf86-video-intel-f63c7df.diff
+ * Disable swap buffer wait on Sandybridge
+
+-------------------------------------------------------------------
+Wed Sep 15 12:52:03 UTC 2010 - sndirsch@novell.com
+
+- xf86-video-intel-2.12.0-20100912-08c2cac
+ * latest intel git master driver (2010-09-12)
+
+-------------------------------------------------------------------
calling whatdependson for head-i586
Old:
----
xf86-video-intel-2.12.0-20100910-ae160d7.tar.bz2
New:
----
0001-Re-add-XVideo-option-as-XVideo-on-SandyBridge-freez.patch
xf86-video-intel-2.12.902.tar.bz2
xf86-video-intel-345c963.diff
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ xorg-x11-driver-video.spec ++++++
--- /var/tmp/diff_new_pack.ZMviCM/_old 2010-10-02 00:11:01.000000000 +0200
+++ /var/tmp/diff_new_pack.ZMviCM/_new 2010-10-02 00:11:01.000000000 +0200
@@ -23,7 +23,7 @@
BuildRequires: Mesa-devel libdrm-devel pkgconfig xorg-x11-proto-devel xorg-x11-server-sdk
Url: http://xorg.freedesktop.org/
Version: 7.5
-Release: 23
+Release: 24
License: MIT License (or similar)
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Group: System/X11/Servers/XF86_4
@@ -66,7 +66,7 @@
Source41: xf86-video-vmware-11.0.2.tar.bz2
Source42: xf86-video-voodoo-1.2.4.tar.bz2
Source44: HALlib-4.1.tar.gz
-Source45: xf86-video-intel-2.12.0-20100910-ae160d7.tar.bz2
+Source45: xf86-video-intel-2.12.902.tar.bz2
Source46: xf86-video-ati-6.13.99-20100901-2b98ec1.tar.bz2
Source51: xf86-video-geode-2.11.9.tar.bz2
Source54: xf86-video-mach64-6.8.2.tar.bz2
@@ -99,6 +99,8 @@
Patch140: xf86-video-ati-6.7.197-r128-xvideo.patch
Patch141: xf86-video-ati-theatre.patch
Patch142: xf86-video-ati-theatre-pciaccess.patch
+Patch143: xf86-video-intel-345c963.diff
+Patch144: 0001-Re-add-XVideo-option-as-XVideo-on-SandyBridge-freez.patch
%description
This package contains X.Org video drivers.
@@ -153,6 +155,8 @@
#%patch112 -p1
%patch130 -p0
%patch139 -p1
+%patch143 -p1
+%patch144 -p1
popd
pushd xf86-video-nv-*
%patch132 -p1
++++++ 0001-Re-add-XVideo-option-as-XVideo-on-SandyBridge-freez.patch ++++++
From 3d09310f51a178075b5a4e2e87e9eaf55ae2d195 Mon Sep 17 00:00:00 2001
From: Matthias Hopf
Date: Thu, 30 Sep 2010 12:48:11 +0200
Subject: [PATCH] Re-add XVideo option, as XVideo on SandyBridge freezes the chip.
---
man/intel.man | 5 +++++
src/intel_driver.c | 6 +++++-
2 files changed, 10 insertions(+), 1 deletions(-)
diff --git a/man/intel.man b/man/intel.man
index 31860f2..3f3b6f2 100644
--- a/man/intel.man
+++ b/man/intel.man
@@ -187,6 +187,11 @@ performance.
.IP
Default: enabled.
.TP
+.BI "Option \*qXVideo\*q \*q" boolean \*q
+Enable XVideo support.
+.IP
+Default: Enabled, except on SandyBridge
+.TP
.BI "Option \*qXvMC\*q \*q" boolean \*q
Enable XvMC driver. Current support MPEG2 MC on 915/945 and G33 series.
User should provide absolute path to libIntelXvMC.so in XvMCConfig file.
diff --git a/src/intel_driver.c b/src/intel_driver.c
index 79c850b..c975822 100644
--- a/src/intel_driver.c
+++ b/src/intel_driver.c
@@ -107,6 +107,7 @@ typedef enum {
OPTION_DEBUG_FLUSH_BATCHES,
OPTION_DEBUG_FLUSH_CACHES,
OPTION_DEBUG_WAIT,
+ OPTION_XVIDEO,
} I830Opts;
static OptionInfoRec I830Options[] = {
@@ -125,6 +126,7 @@ static OptionInfoRec I830Options[] = {
{OPTION_DEBUG_FLUSH_BATCHES, "DebugFlushBatches", OPTV_BOOLEAN, {0}, FALSE},
{OPTION_DEBUG_FLUSH_CACHES, "DebugFlushCaches", OPTV_BOOLEAN, {0}, FALSE},
{OPTION_DEBUG_WAIT, "DebugWait", OPTV_BOOLEAN, {0}, FALSE},
+ {OPTION_XVIDEO, "DebugWait", OPTV_BOOLEAN, {0}, FALSE},
{-1, NULL, OPTV_NONE, {0}, FALSE}
};
/* *INDENT-ON* */
@@ -883,7 +885,9 @@ I830ScreenInit(int scrnIndex, ScreenPtr screen, int argc, char **argv)
* Set this so that the overlay allocation is factored in when
* appropriate.
*/
- intel->XvEnabled = TRUE;
+ intel->XvEnabled = xf86ReturnOptValBool(intel->Options,
+ OPTION_XVIDEO,
+ !IS_GEN6(intel));
xf86DrvMsg(scrn->scrnIndex,
intel->pEnt->device->videoRam ? X_CONFIG : X_DEFAULT,
--
1.6.0.2
++++++ xf86-video-intel-2.12.0-20100910-ae160d7.tar.bz2 -> xf86-video-intel-2.12.902.tar.bz2 ++++++
++++ 8486 lines of diff (skipped)
++++ retrying with extended exclude list
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xf86-video-intel-2.12.0/ChangeLog new/xf86-video-intel-2.12.902/ChangeLog
--- old/xf86-video-intel-2.12.0/ChangeLog 2010-09-15 06:25:01.000000000 +0200
+++ new/xf86-video-intel-2.12.902/ChangeLog 2010-09-29 05:51:04.000000000 +0200
@@ -1,3 +1,138 @@
+commit d4c013cb9d92d2959c9a98eca20e43ab14ae22e3
+Author: Carl Worth
+Date: Tue Sep 28 20:49:52 2010 -0700
+
+ Increment version to 2.12.902
+
+ Just before making the 2.12.902 (2.13-rc2) snapshot.
+
+commit 35e7da7df0b286b5168a85d540cc9fdf55c1cae6
+Author: Carl Worth
+Date: Tue Sep 28 20:49:10 2010 -0700
+
+ Add release notes for the 2.12.902 snapshot.
+
+ Summarizing the 5 recent changes to the driver.
+
+commit 5704955538f59a2b7a5eff67cc23953d2f27d523
+Author: Carl Worth
+Date: Tue Sep 28 20:44:40 2010 -0700
+
+ Fix to depend on the (just-released) libdrm >= 2.4.22
+
+ With libdrm < 2.4.22, the compilation of xf86-video-intel would fail
+ due to an undefined DRM_MODE_CONNECTOR_eDP. We now ensure that a
+ sufficiently new libdrm is available before compiling.
+
+commit 40c9d180bf43af84ae05d88e993deedf76e263e6
+Author: Chris Wilson
+Date: Sun Sep 26 23:09:04 2010 +0100
+
+ Retry framebuffer allocation if first attempt fails.
+
+ If we are tiled, we may fail the allocation due to an EIO and so not
+ being able to set tiling. Try again with an untiled request in this
+ case.
+
+ Signed-off-by: Chris Wilson
+
+commit 537e73f3f935b917f2f5f9b51499cb29d65e3889
+Author: Chris Wilson
+Date: Fri Sep 24 17:37:41 2010 +0100
+
+ Disable dri2 after forcing fallbacks
+
+ If we force fallbacks, then we will only create pixmaps in system
+ memory, preventing DRI2 from passing valid bo names to the clients. In
+ this case, they will just fallback to swrast. If we disable DRI2 after
+ forcing fallbacks (e.g. regenerating after a GPU hang or explicitly
+ disabled with the shadow buffer) then it is simpler just to disable the
+ extension and allow mesa to use pure swrast.
+
+ Reported-by: Julien Cristau
+ Signed-off-by: Chris Wilson
+
+commit b84925b9c0842ba4dfa3481c09d3a80f84db4838
+Author: Matthias Hopf
+Date: Tue Aug 17 18:05:02 2010 +0200
+
+ Make driver compile for 1.6 Xserver series again.
+
+ Signed-off-by: Matthias Hopf
+
+commit 99f8d68d3dbc54fdd7de4a6df546cfa89422a0c2
+Author: Chris Wilson
+Date: Wed Sep 22 12:34:00 2010 +0100
+
+ display: Refactor is_panel()
+
+ Signed-off-by: Chris Wilson
+
+commit 4ba27e1f2198fc10a1dd268ed9f137bac6e80086
+Author: Carl Worth
+Date: Tue Sep 21 17:43:01 2010 -0700
+
+ Bump version to 2.12.901
+
+ Just prior to pushing out this new snapshot.
+
+commit 334265fa5ef18405bd8c897343fff49ad53f5fce
+Author: Carl Worth
+Date: Tue Sep 21 17:42:21 2010 -0700
+
+ NEWS: Add notes for the 2.12.901 snapshot
+
+ (Otherwise known as rc1 for 2.13)
+
+commit bfba6d6148b938588ffbefdf04f4e71683c66dfd
+Author: Krzysztof Halasa
+Date: Tue Sep 21 22:56:26 2010 +0100
+
+ Allow interlaced modes.
+
+ This may not the best method, but it should be a good base on which to
+ build...
+
+ Signed-off-by: Chris Wilson
+
+commit f63c7df6866fed61551d39209b1a262e2a0c4b28
+Author: Zhenyu Wang
+Date: Fri Sep 17 16:39:12 2010 +0800
+
+ Disable swap buffer wait on Sandybridge
+
+ MI_LOAD_SCAN_LINE_INCL command is not available on sandybridge.
+ I haven't got reply on any substitution for it, so turn it off for now.
+
+ Signed-off-by: Zhenyu Wang
+
+commit 55b5fe888002258dd863d41977bfbfcf1a922179
+Author: Chris Wilson
+Date: Thu Sep 16 16:50:13 2010 +0100
+
+ Add alternate pci-id for B43
+
+ Confirmed by http://en.wikipedia.org/wiki/Intel_GMA
+
+ Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=30221
+ Signed-off-by: Chris Wilson
+
+commit 08c2caca48323d6d5701dcef3486f850619d7905
+Author: Chris Wilson
+Date: Sun Sep 12 12:34:51 2010 +0100
+
+ uxa: Apply source clipping to blits
+
+ Yes, this should be done in the higher layers. Yes, I have written code
+ to that. No, it is not ready, hence add the sanity check to the
+ SRC_COPY_BLT.
+
+ This isn't the first report that I've seen, but will be the last.
+
+ Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=30120
+ Reported-by: rezbit.hex@gmail.com
+ Signed-off-by: Chris Wilson
+
commit ae160d7fbfc79e78dad8702efcc55d9c0c25ff67
Author: Chris Wilson
Date: Fri Sep 10 13:19:12 2010 +0100
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xf86-video-intel-2.12.0/INSTALL new/xf86-video-intel-2.12.902/INSTALL
--- old/xf86-video-intel-2.12.0/INSTALL 2010-09-15 06:25:01.000000000 +0200
+++ new/xf86-video-intel-2.12.902/INSTALL 2010-09-29 05:51:04.000000000 +0200
@@ -0,0 +1,291 @@
+Installation Instructions
+*************************
+
+Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005,
+2006, 2007, 2008 Free Software Foundation, Inc.
+
+ This file is free documentation; the Free Software Foundation gives
+unlimited permission to copy, distribute and modify it.
+
+Basic Installation
+==================
+
+ Briefly, the shell commands `./configure; make; make install' should
+configure, build, and install this package. The following
+more-detailed instructions are generic; see the `README' file for
+instructions specific to this package.
+
+ The `configure' shell script attempts to guess correct values for
+various system-dependent variables used during compilation. It uses
+those values to create a `Makefile' in each directory of the package.
+It may also create one or more `.h' files containing system-dependent
+definitions. Finally, it creates a shell script `config.status' that
+you can run in the future to recreate the current configuration, and a
+file `config.log' containing compiler output (useful mainly for
+debugging `configure').
+
+ It can also use an optional file (typically called `config.cache'
+and enabled with `--cache-file=config.cache' or simply `-C') that saves
+the results of its tests to speed up reconfiguring. Caching is
+disabled by default to prevent problems with accidental use of stale
+cache files.
+
+ If you need to do unusual things to compile the package, please try
+to figure out how `configure' could check whether to do them, and mail
+diffs or instructions to the address given in the `README' so they can
+be considered for the next release. If you are using the cache, and at
+some point `config.cache' contains results you don't want to keep, you
+may remove or edit it.
+
+ The file `configure.ac' (or `configure.in') is used to create
+`configure' by a program called `autoconf'. You need `configure.ac' if
+you want to change it or regenerate `configure' using a newer version
+of `autoconf'.
+
+The simplest way to compile this package is:
+
+ 1. `cd' to the directory containing the package's source code and type
+ `./configure' to configure the package for your system.
+
+ Running `configure' might take a while. While running, it prints
+ some messages telling which features it is checking for.
+
+ 2. Type `make' to compile the package.
+
+ 3. Optionally, type `make check' to run any self-tests that come with
+ the package.
+
+ 4. Type `make install' to install the programs and any data files and
+ documentation.
+
+ 5. You can remove the program binaries and object files from the
+ source code directory by typing `make clean'. To also remove the
+ files that `configure' created (so you can compile the package for
+ a different kind of computer), type `make distclean'. There is
+ also a `make maintainer-clean' target, but that is intended mainly
+ for the package's developers. If you use it, you may have to get
+ all sorts of other programs in order to regenerate files that came
+ with the distribution.
+
+ 6. Often, you can also type `make uninstall' to remove the installed
+ files again.
+
+Compilers and Options
+=====================
+
+ Some systems require unusual options for compilation or linking that
+the `configure' script does not know about. Run `./configure --help'
+for details on some of the pertinent environment variables.
+
+ You can give `configure' initial values for configuration parameters
+by setting variables in the command line or in the environment. Here
+is an example:
+
+ ./configure CC=c99 CFLAGS=-g LIBS=-lposix
+
+ *Note Defining Variables::, for more details.
+
+Compiling For Multiple Architectures
+====================================
+
+ You can compile the package for more than one kind of computer at the
+same time, by placing the object files for each architecture in their
+own directory. To do this, you can use GNU `make'. `cd' to the
+directory where you want the object files and executables to go and run
+the `configure' script. `configure' automatically checks for the
+source code in the directory that `configure' is in and in `..'.
+
+ With a non-GNU `make', it is safer to compile the package for one
+architecture at a time in the source code directory. After you have
+installed the package for one architecture, use `make distclean' before
+reconfiguring for another architecture.
+
+ On MacOS X 10.5 and later systems, you can create libraries and
+executables that work on multiple system types--known as "fat" or
+"universal" binaries--by specifying multiple `-arch' options to the
+compiler but only a single `-arch' option to the preprocessor. Like
+this:
+
+ ./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
+ CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
+ CPP="gcc -E" CXXCPP="g++ -E"
+
+ This is not guaranteed to produce working output in all cases, you
+may have to build one architecture at a time and combine the results
+using the `lipo' tool if you have problems.
+
+Installation Names
+==================
+
+ By default, `make install' installs the package's commands under
+`/usr/local/bin', include files under `/usr/local/include', etc. You
+can specify an installation prefix other than `/usr/local' by giving
+`configure' the option `--prefix=PREFIX'.
+
+ You can specify separate installation prefixes for
+architecture-specific files and architecture-independent files. If you
+pass the option `--exec-prefix=PREFIX' to `configure', the package uses
+PREFIX as the prefix for installing programs and libraries.
+Documentation and other data files still use the regular prefix.
+
+ In addition, if you use an unusual directory layout you can give
+options like `--bindir=DIR' to specify different values for particular
+kinds of files. Run `configure --help' for a list of the directories
+you can set and what kinds of files go in them.
+
+ If the package supports it, you can cause programs to be installed
+with an extra prefix or suffix on their names by giving `configure' the
+option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
+
+Optional Features
+=================
+
+ Some packages pay attention to `--enable-FEATURE' options to
+`configure', where FEATURE indicates an optional part of the package.
+They may also pay attention to `--with-PACKAGE' options, where PACKAGE
+is something like `gnu-as' or `x' (for the X Window System). The
+`README' should mention any `--enable-' and `--with-' options that the
+package recognizes.
+
+ For packages that use the X Window System, `configure' can usually
+find the X include and library files automatically, but if it doesn't,
+you can use the `configure' options `--x-includes=DIR' and
+`--x-libraries=DIR' to specify their locations.
+
+Particular systems
+==================
+
+ On HP-UX, the default C compiler is not ANSI C compatible. If GNU
+CC is not installed, it is recommended to use the following options in
+order to use an ANSI C compiler:
+
+ ./configure CC="cc -Ae"
+
+and if that doesn't work, install pre-built binaries of GCC for HP-UX.
+
+ On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot
+parse its `' header file. The option `-nodtk' can be used as
+a workaround. If GNU CC is not installed, it is therefore recommended
+to try
+
+ ./configure CC="cc"
+
+and if that doesn't work, try
+
+ ./configure CC="cc -nodtk"
+
+Specifying the System Type
+==========================
+
+ There may be some features `configure' cannot figure out
+automatically, but needs to determine by the type of machine the package
+will run on. Usually, assuming the package is built to be run on the
+_same_ architectures, `configure' can figure that out, but if it prints
+a message saying it cannot guess the machine type, give it the
+`--build=TYPE' option. TYPE can either be a short name for the system
+type, such as `sun4', or a canonical name which has the form:
+
+ CPU-COMPANY-SYSTEM
+
+where SYSTEM can have one of these forms:
+
+ OS KERNEL-OS
+
+ See the file `config.sub' for the possible values of each field. If
+`config.sub' isn't included in this package, then this package doesn't
+need to know the machine type.
+
+ If you are _building_ compiler tools for cross-compiling, you should
+use the option `--target=TYPE' to select the type of system they will
+produce code for.
+
+ If you want to _use_ a cross compiler, that generates code for a
+platform different from the build platform, you should specify the
+"host" platform (i.e., that on which the generated programs will
+eventually be run) with `--host=TYPE'.
+
+Sharing Defaults
+================
+
+ If you want to set default values for `configure' scripts to share,
+you can create a site shell script called `config.site' that gives
+default values for variables like `CC', `cache_file', and `prefix'.
+`configure' looks for `PREFIX/share/config.site' if it exists, then
+`PREFIX/etc/config.site' if it exists. Or, you can set the
+`CONFIG_SITE' environment variable to the location of the site script.
+A warning: not all `configure' scripts look for a site script.
+
+Defining Variables
+==================
+
+ Variables not defined in a site shell script can be set in the
+environment passed to `configure'. However, some packages may run
+configure again during the build, and the customized values of these
+variables may be lost. In order to avoid this problem, you should set
+them in the `configure' command line, using `VAR=value'. For example:
+
+ ./configure CC=/usr/local2/bin/gcc
+
+causes the specified `gcc' to be used as the C compiler (unless it is
+overridden in the site shell script).
+
+Unfortunately, this technique does not work for `CONFIG_SHELL' due to
+an Autoconf bug. Until the bug is fixed you can use this workaround:
+
+ CONFIG_SHELL=/bin/bash /bin/bash ./configure CONFIG_SHELL=/bin/bash
+
+`configure' Invocation
+======================
+
+ `configure' recognizes the following options to control how it
+operates.
+
+`--help'
+`-h'
+ Print a summary of all of the options to `configure', and exit.
+
+`--help=short'
+`--help=recursive'
+ Print a summary of the options unique to this package's
+ `configure', and exit. The `short' variant lists options used
+ only in the top level, while the `recursive' variant lists options
+ also present in any nested packages.
+
+`--version'
+`-V'
+ Print the version of Autoconf used to generate the `configure'
+ script, and exit.
+
+`--cache-file=FILE'
+ Enable the cache: use and save the results of the tests in FILE,
+ traditionally `config.cache'. FILE defaults to `/dev/null' to
+ disable caching.
+
+`--config-cache'
+`-C'
+ Alias for `--cache-file=config.cache'.
+
+`--quiet'
+`--silent'
+`-q'
+ Do not print messages saying which checks are being made. To
+ suppress all normal output, redirect it to `/dev/null' (any error
+ messages will still be shown).
+
+`--srcdir=DIR'
+ Look for the package's source code in directory DIR. Usually
+ `configure' can determine that directory automatically.
+
+`--prefix=DIR'
+ Use DIR as the installation prefix. *Note Installation Names::
+ for more details, including other options available for fine-tuning
+ the installation locations.
+
+`--no-create'
+`-n'
+ Run the configure checks, but stop before creating any output
+ files.
+
+`configure' also accepts some other, not widely useful, options. Run
+`configure --help' for more details.
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xf86-video-intel-2.12.0/NEWS new/xf86-video-intel-2.12.902/NEWS
--- old/xf86-video-intel-2.12.0/NEWS 2010-08-31 11:48:49.000000000 +0200
+++ new/xf86-video-intel-2.12.902/NEWS 2010-09-29 05:49:03.000000000 +0200
@@ -1,5 +1,62 @@
-Snapshot 2.12.0 (2010-06-24)
-=============================
+Snapshot 2.12.902 (2010-09-28)
+==============================
+This is the second release candidate in preparation for the upcoming
+2.13.0 release. The comes exactly one week after 2.12.902 and includes
+only a handful of changes.
+
+One significant change is that the drive now requires libdrm 2.4.22
+(or newer), as several people reported compilation failures of
+xf86-video-intel 2.12.901 with libdrm 2.4.21.
+
+Other changes include a fix to compile for the 1.6 series X server, a
+fix to retry framebuffer allocation after an initial failure, and a
+fix to disable dri2 after fallbacks are forced on.
+
+Snapshot 2.12.901 (2010-09-21)
+==============================
+This is the first release candidate in preparation for the upcoming
+2.13.0 release. We will appreciate any feedback we can get from
+testing of this snapshot.
+
+Bugs fixed in this snapshot (compared to 2.12.0)
+------------------------------------------------
+ * Attempt to fix infinite MI_WAIT_FOR_EVENT while watching video
+ https://bugs.freedesktop.org/show_bug.cgi?id=28964
+
+ [Various new checks have been added to the video code here, but the
+ bug fix hasn't yet been verified by the original reporter.]
+
+ * Fix buffer-object leak
+ https://bugs.freedesktop.org/show_bug.cgi?id=26946
+
+ * Fix memory leak on server reset
+
+ * Fix crash due to unchecked pixmap allocation
+ https://bugs.freedesktop.org/show_bug.cgi?id=29187
+
+ * Fix for video artifacts when using dualscreen
+ https://bugs.freedesktop.org/show_bug.cgi?id=29213
+
+ * Fix for incorrect characters in gnome-terminal when using compiz
+ https://bugs.freedesktop.org/show_bug.cgi?id=28438
+
+ * Fix for hanging, full-screen applications, (flash, compiz, etc.)
+ https://bugs.freedesktop.org/show_bug.cgi?id=29584
+
+ * Fix selection of backlight device on multi-GPU systems
+ https://bugs.freedesktop.org/show_bug.cgi?id=29273
+
+ * Fix to avoid crash with extremely large glyphs
+ https://bugs.freedesktop.org/show_bug.cgi?id=29430
+
+ * Fix for eDP panels incorrectly being given only a single, valid mode
+ https://bugs.freedesktop.org/show_bug.cgi?id=30069
+
+ * Fix GPU hang involving clipped SRC copies
+ https://bugs.freedesktop.org/show_bug.cgi?id=30120
+
+Release 2.12.0 (2010-06-24)
+===========================
We are pleased to announce this major release of the xf86-video-intel
2D driver. It contains many correctness and performance improvements
compared to the 2.11 releases. We encourage everyone using 2.11 to
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xf86-video-intel-2.12.0/compile new/xf86-video-intel-2.12.902/compile
--- old/xf86-video-intel-2.12.0/compile 1970-01-01 01:00:00.000000000 +0100
+++ new/xf86-video-intel-2.12.902/compile 2008-06-30 22:28:04.000000000 +0200
@@ -0,0 +1,142 @@
+#! /bin/sh
+# Wrapper for compilers which do not understand `-c -o'.
+
+scriptversion=2005-05-14.22
+
+# Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc.
+# Written by Tom Tromey .
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program that contains a
+# configuration script generated by Autoconf, you may include it under
+# the same distribution terms that you use for the rest of that program.
+
+# This file is maintained in Automake, please report
+# bugs to or send patches to
+# .
+
+case $1 in
+ '')
+ echo "$0: No command. Try \`$0 --help' for more information." 1>&2
+ exit 1;
+ ;;
+ -h | --h*)
+ cat <<\EOF
+Usage: compile [--help] [--version] PROGRAM [ARGS]
+
+Wrapper for compilers which do not understand `-c -o'.
+Remove `-o dest.o' from ARGS, run PROGRAM with the remaining
+arguments, and rename the output as expected.
+
+If you are trying to build a whole package this is not the
+right script to run: please start by reading the file `INSTALL'.
+
+Report bugs to .
+EOF
+ exit $?
+ ;;
+ -v | --v*)
+ echo "compile $scriptversion"
+ exit $?
+ ;;
+esac
+
+ofile=
+cfile=
+eat=
+
+for arg
+do
+ if test -n "$eat"; then
+ eat=
+ else
+ case $1 in
+ -o)
+ # configure might choose to run compile as `compile cc -o foo foo.c'.
+ # So we strip `-o arg' only if arg is an object.
+ eat=1
+ case $2 in
+ *.o | *.obj)
+ ofile=$2
+ ;;
+ *)
+ set x "$@" -o "$2"
+ shift
+ ;;
+ esac
+ ;;
+ *.c)
+ cfile=$1
+ set x "$@" "$1"
+ shift
+ ;;
+ *)
+ set x "$@" "$1"
+ shift
+ ;;
+ esac
+ fi
+ shift
+done
+
+if test -z "$ofile" || test -z "$cfile"; then
+ # If no `-o' option was seen then we might have been invoked from a
+ # pattern rule where we don't need one. That is ok -- this is a
+ # normal compilation that the losing compiler can handle. If no
+ # `.c' file was seen then we are probably linking. That is also
+ # ok.
+ exec "$@"
+fi
+
+# Name of file we expect compiler to create.
+cofile=`echo "$cfile" | sed -e 's|^.*/||' -e 's/\.c$/.o/'`
+
+# Create the lock directory.
+# Note: use `[/.-]' here to ensure that we don't use the same name
+# that we are using for the .o file. Also, base the name on the expected
+# object file name, since that is what matters with a parallel build.
+lockdir=`echo "$cofile" | sed -e 's|[/.-]|_|g'`.d
+while true; do
+ if mkdir "$lockdir" >/dev/null 2>&1; then
+ break
+ fi
+ sleep 1
+done
+# FIXME: race condition here if user kills between mkdir and trap.
+trap "rmdir '$lockdir'; exit 1" 1 2 15
+
+# Run the compile.
+"$@"
+ret=$?
+
+if test -f "$cofile"; then
+ mv "$cofile" "$ofile"
+elif test -f "${cofile}bj"; then
+ mv "${cofile}bj" "$ofile"
+fi
+
+rmdir "$lockdir"
+exit $ret
+
+# Local Variables:
+# mode: shell-script
+# sh-indentation: 2
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-end: "$"
+# End:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xf86-video-intel-2.12.0/configure.ac new/xf86-video-intel-2.12.902/configure.ac
--- old/xf86-video-intel-2.12.0/configure.ac 2010-08-31 11:48:49.000000000 +0200
+++ new/xf86-video-intel-2.12.902/configure.ac 2010-09-29 05:49:48.000000000 +0200
@@ -23,7 +23,7 @@
# Initialize Autoconf
AC_PREREQ([2.60])
AC_INIT([xf86-video-intel],
- [2.12.0],
+ [2.12.902],
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
[xf86-video-intel])
AC_CONFIG_SRCDIR([Makefile.am])
@@ -79,7 +79,7 @@
# Obtain compiler/linker options for the driver dependencies
PKG_CHECK_MODULES(XORG, [xorg-server >= 1.6 xproto fontsproto $REQUIRED_MODULES])
-PKG_CHECK_MODULES(DRM, [libdrm >= 2.4.21])
+PKG_CHECK_MODULES(DRM, [libdrm >= 2.4.22])
PKG_CHECK_MODULES(PCIACCESS, [pciaccess >= 0.10])
sdkdir=`$PKG_CONFIG --variable=sdkdir xorg-server`
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xf86-video-intel-2.12.0/missing new/xf86-video-intel-2.12.902/missing
--- old/xf86-video-intel-2.12.0/missing 2010-08-31 11:53:01.000000000 +0200
+++ new/xf86-video-intel-2.12.902/missing 2008-06-30 22:28:04.000000000 +0200
@@ -1,10 +1,10 @@
#! /bin/sh
# Common stub for a few missing GNU programs while installing.
-scriptversion=2009-04-28.21; # UTC
+scriptversion=2006-05-10.23
-# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006,
-# 2008, 2009 Free Software Foundation, Inc.
+# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006
+# Free Software Foundation, Inc.
# Originally by Fran,cois Pinard , 1996.
# This program is free software; you can redistribute it and/or modify
@@ -18,7 +18,9 @@
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
-# along with this program. If not, see http://www.gnu.org/licenses/.
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+# 02110-1301, USA.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
@@ -87,9 +89,6 @@
tar try tar, gnutar, gtar, then tar without non-portable flags
yacc create \`y.tab.[ch]', if possible, from existing .[ch]
-Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and
-\`g' are ignored when checking the name.
-
Send bug reports to ."
exit $?
;;
@@ -107,22 +106,15 @@
esac
-# normalize program name to check for.
-program=`echo "$1" | sed '
- s/^gnu-//; t
- s/^gnu//; t
- s/^g//; t'`
-
# Now exit if we have it, but it failed. Also exit now if we
# don't have it and --version was passed (most likely to detect
-# the program). This is about non-GNU programs, so use $1 not
-# $program.
+# the program).
case $1 in
- lex*|yacc*)
+ lex|yacc)
# Not GNU programs, they don't have --version.
;;
- tar*)
+ tar)
if test -n "$run"; then
echo 1>&2 "ERROR: \`tar' requires --run"
exit 1
@@ -146,7 +138,7 @@
# If it does not exist, or fails to run (possibly an outdated version),
# try to emulate it.
-case $program in
+case $1 in
aclocal*)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
@@ -156,7 +148,7 @@
touch aclocal.m4
;;
- autoconf*)
+ autoconf)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
you modified \`${configure_ac}'. You might want to install the
@@ -165,7 +157,7 @@
touch configure
;;
- autoheader*)
+ autoheader)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
you modified \`acconfig.h' or \`${configure_ac}'. You might want
@@ -195,7 +187,7 @@
while read f; do touch "$f"; done
;;
- autom4te*)
+ autom4te)
echo 1>&2 "\
WARNING: \`$1' is needed, but is $msg.
You might have modified some files without having the
@@ -218,7 +210,7 @@
fi
;;
- bison*|yacc*)
+ bison|yacc)
echo 1>&2 "\
WARNING: \`$1' $msg. You should only need it if
you modified a \`.y' file. You may need the \`Bison' package
@@ -248,7 +240,7 @@
fi
;;
- lex*|flex*)
+ lex|flex)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
you modified a \`.l' file. You may need the \`Flex' package
@@ -271,7 +263,7 @@
fi
;;
- help2man*)
+ help2man)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
you modified a dependency of a manual page. You may need the
@@ -285,11 +277,11 @@
else
test -z "$file" || exec >$file
echo ".ab help2man is required to generate this page"
- exit $?
+ exit 1
fi
;;
- makeinfo*)
+ makeinfo)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
you modified a \`.texi' or \`.texinfo' file, or any other file
@@ -318,7 +310,7 @@
touch $file
;;
- tar*)
+ tar)
shift
# We have already tried tar in the generic part.
@@ -371,6 +363,5 @@
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
-# time-stamp-end: "; # UTC"
+# time-stamp-end: "$"
# End:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xf86-video-intel-2.12.0/src/i915_render.c new/xf86-video-intel-2.12.902/src/i915_render.c
--- old/xf86-video-intel-2.12.0/src/i915_render.c 2010-08-31 11:48:49.000000000 +0200
+++ new/xf86-video-intel-2.12.902/src/i915_render.c 2010-09-29 05:43:10.000000000 +0200
@@ -82,8 +82,10 @@
{PICT_x8r8g8b8, MAPSURF_32BIT | MT_32BIT_XRGB8888},
{PICT_a8b8g8r8, MAPSURF_32BIT | MT_32BIT_ABGR8888},
{PICT_x8b8g8r8, MAPSURF_32BIT | MT_32BIT_XBGR8888},
+#if XORG_VERSION_CURRENT >= 10699900
{PICT_a2r10g10b10, MAPSURF_32BIT | MT_32BIT_ARGB2101010},
{PICT_a2b10g10r10, MAPSURF_32BIT | MT_32BIT_ABGR2101010},
+#endif
{PICT_r5g6b5, MAPSURF_16BIT | MT_16BIT_RGB565},
{PICT_a1r5g5b5, MAPSURF_16BIT | MT_16BIT_ARGB1555},
{PICT_a4r4g4b4, MAPSURF_16BIT | MT_16BIT_ARGB4444},
@@ -156,10 +158,12 @@
case PICT_x1r5g5b5:
*dst_format = COLR_BUF_ARGB1555;
break;
+#if XORG_VERSION_CURRENT >= 10699900
case PICT_a2r10g10b10:
case PICT_x2r10g10b10:
*dst_format = COLR_BUF_ARGB2AAA;
break;
+#endif
case PICT_a8:
*dst_format = COLR_BUF_8BIT;
break;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xf86-video-intel-2.12.0/src/i965_render.c new/xf86-video-intel-2.12.902/src/i965_render.c
--- old/xf86-video-intel-2.12.0/src/i965_render.c 2010-08-31 11:48:49.000000000 +0200
+++ new/xf86-video-intel-2.12.902/src/i965_render.c 2010-09-29 05:43:10.000000000 +0200
@@ -117,10 +117,12 @@
{PICT_r8g8b8, BRW_SURFACEFORMAT_R8G8B8_UNORM},
{PICT_r5g6b5, BRW_SURFACEFORMAT_B5G6R5_UNORM},
{PICT_a1r5g5b5, BRW_SURFACEFORMAT_B5G5R5A1_UNORM},
+#if XORG_VERSION_CURRENT >= 10699900
{PICT_a2r10g10b10, BRW_SURFACEFORMAT_B10G10R10A2_UNORM},
{PICT_x2r10g10b10, BRW_SURFACEFORMAT_B10G10R10X2_UNORM},
{PICT_a2b10g10r10, BRW_SURFACEFORMAT_R10G10B10A2_UNORM},
{PICT_x2r10g10b10, BRW_SURFACEFORMAT_B10G10R10X2_UNORM},
+#endif
{PICT_a4r4g4b4, BRW_SURFACEFORMAT_B4G4R4A4_UNORM},
};
@@ -169,10 +171,12 @@
case PICT_x8b8g8r8:
*dst_format = BRW_SURFACEFORMAT_R8G8B8A8_UNORM;
break;
+#if XORG_VERSION_CURRENT >= 10699900
case PICT_a2r10g10b10:
case PICT_x2r10g10b10:
*dst_format = BRW_SURFACEFORMAT_B10G10R10A2_UNORM;
break;
+#endif
case PICT_r5g6b5:
*dst_format = BRW_SURFACEFORMAT_B5G6R5_UNORM;
break;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xf86-video-intel-2.12.0/src/intel_display.c new/xf86-video-intel-2.12.902/src/intel_display.c
--- old/xf86-video-intel-2.12.0/src/intel_display.c 2010-09-13 09:18:54.000000000 +0200
+++ new/xf86-video-intel-2.12.902/src/intel_display.c 2010-09-29 05:43:10.000000000 +0200
@@ -658,6 +658,13 @@
list_add(&intel_crtc->link, &mode->crtcs);
}
+static Bool
+is_panel(int type)
+{
+ return (type == DRM_MODE_CONNECTOR_LVDS ||
+ type == DRM_MODE_CONNECTOR_eDP);
+}
+
static xf86OutputStatus
intel_output_detect(xf86OutputPtr output)
{
@@ -823,8 +830,7 @@
* If it is incorrect, please fix me.
*/
intel_output->has_panel_limits = FALSE;
- if (koutput->connector_type == DRM_MODE_CONNECTOR_LVDS ||
- koutput->connector_type == DRM_MODE_CONNECTOR_eDP) {
+ if (is_panel(koutput->connector_type)) {
for (i = 0; i < koutput->count_modes; i++) {
drmModeModeInfo *mode_ptr;
@@ -1293,12 +1299,12 @@
output->subpixel_order = subpixel_conv_table[koutput->subpixel];
output->driver_private = intel_output;
- if (koutput->connector_type == DRM_MODE_CONNECTOR_LVDS ||
- koutput->connector_type == DRM_MODE_CONNECTOR_eDP)
+ if (is_panel(koutput->connector_type))
intel_output_backlight_init(output);
output->possible_crtcs = kencoder->possible_crtcs;
output->possible_clones = kencoder->possible_clones;
+ output->interlaceAllowed = TRUE;
intel_output->output = output;
list_add(&intel_output->link, &mode->outputs);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xf86-video-intel-2.12.0/src/intel_dri.c new/xf86-video-intel-2.12.902/src/intel_dri.c
--- old/xf86-video-intel-2.12.0/src/intel_dri.c 2010-09-08 21:24:51.000000000 +0200
+++ new/xf86-video-intel-2.12.902/src/intel_dri.c 2010-09-29 05:43:10.000000000 +0200
@@ -367,6 +367,12 @@
event = MI_WAIT_FOR_PIPEB_SVBLANK;
}
+ if (scrn->currentMode->Flags & V_INTERLACE) {
+ /* DSL count field lines */
+ y1 /= 2;
+ y2 /= 2;
+ }
+
BEGIN_BATCH(5);
/*
* The documentation says that the LOAD_SCAN_LINES
@@ -1023,6 +1029,12 @@
const char *driverNames[1];
#endif
+ if (intel->force_fallback) {
+ xf86DrvMsg(scrn->scrnIndex, X_WARNING,
+ "cannot enable DRI2 whilst forcing software fallbacks\n");
+ return FALSE;
+ }
+
if (xf86LoaderCheckSymbol("DRI2Version"))
DRI2Version(&dri2_major, &dri2_minor);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xf86-video-intel-2.12.0/src/intel_driver.c new/xf86-video-intel-2.12.902/src/intel_driver.c
--- old/xf86-video-intel-2.12.0/src/intel_driver.c 2010-09-13 09:18:54.000000000 +0200
+++ new/xf86-video-intel-2.12.902/src/intel_driver.c 2010-09-29 05:43:10.000000000 +0200
@@ -588,13 +588,59 @@
intel_check_chipset_option(scrn);
intel_check_dri_option(scrn);
- I830XvInit(scrn);
-
if (!intel_init_bufmgr(intel)) {
PreInitCleanup(scrn);
return FALSE;
}
+ intel->force_fallback =
+ drmCommandNone(intel->drmSubFD, DRM_I915_GEM_THROTTLE) != 0;
+ intel->use_shadow = FALSE;
+
+ /* Enable tiling by default */
+ intel->tiling = TRUE;
+
+ /* Allow user override if they set a value */
+ if (xf86IsOptionSet(intel->Options, OPTION_TILING)) {
+ if (xf86ReturnOptValBool(intel->Options, OPTION_TILING, FALSE))
+ intel->tiling = TRUE;
+ else
+ intel->tiling = FALSE;
+ }
+
+ if (xf86IsOptionSet(intel->Options, OPTION_SHADOW)) {
+ if (xf86ReturnOptValBool(intel->Options, OPTION_SHADOW, FALSE))
+ intel->force_fallback = intel->use_shadow = TRUE;
+ }
+
+ if (intel->use_shadow) {
+ xf86DrvMsg(scrn->scrnIndex, X_CONFIG,
+ "Shadow buffer enabled,"
+ " GPU acceleration disabled.\n");
+ }
+
+ /* SwapBuffers delays to avoid tearing */
+ intel->swapbuffers_wait = TRUE;
+
+ /* Allow user override if they set a value */
+ if (xf86IsOptionSet(intel->Options, OPTION_SWAPBUFFERS_WAIT)) {
+ if (xf86ReturnOptValBool
+ (intel->Options, OPTION_SWAPBUFFERS_WAIT, FALSE))
+ intel->swapbuffers_wait = TRUE;
+ else
+ intel->swapbuffers_wait = FALSE;
+ }
+
+ if (IS_GEN6(intel))
+ intel->swapbuffers_wait = FALSE;
+
+ xf86DrvMsg(scrn->scrnIndex, X_CONFIG, "Tiling %sabled\n",
+ intel->tiling ? "en" : "dis");
+ xf86DrvMsg(scrn->scrnIndex, X_CONFIG, "SwapBuffers wait %sabled\n",
+ intel->swapbuffers_wait ? "en" : "dis");
+
+ I830XvInit(scrn);
+
if (!intel_mode_pre_init(scrn, intel->drmSubFD, intel->cpp)) {
PreInitCleanup(scrn);
return FALSE;
@@ -830,54 +876,6 @@
scrn->videoRam = device->regions[fb_bar].size / 1024;
-#ifdef DRI2
- if (intel->directRenderingType == DRI_NONE
- && I830DRI2ScreenInit(screen))
- intel->directRenderingType = DRI_DRI2;
-#endif
-
- intel->force_fallback = FALSE;
- intel->use_shadow = FALSE;
-
- /* Enable tiling by default */
- intel->tiling = TRUE;
-
- /* Allow user override if they set a value */
- if (xf86IsOptionSet(intel->Options, OPTION_TILING)) {
- if (xf86ReturnOptValBool(intel->Options, OPTION_TILING, FALSE))
- intel->tiling = TRUE;
- else
- intel->tiling = FALSE;
- }
-
- if (xf86IsOptionSet(intel->Options, OPTION_SHADOW)) {
- if (xf86ReturnOptValBool(intel->Options, OPTION_SHADOW, FALSE))
- intel->force_fallback = intel->use_shadow = TRUE;
- }
-
- if (intel->use_shadow) {
- xf86DrvMsg(scrn->scrnIndex, X_CONFIG,
- "Shadow buffer enabled,"
- " GPU acceleration disabled.\n");
- }
-
- /* SwapBuffers delays to avoid tearing */
- intel->swapbuffers_wait = TRUE;
-
- /* Allow user override if they set a value */
- if (xf86IsOptionSet(intel->Options, OPTION_SWAPBUFFERS_WAIT)) {
- if (xf86ReturnOptValBool
- (intel->Options, OPTION_SWAPBUFFERS_WAIT, FALSE))
- intel->swapbuffers_wait = TRUE;
- else
- intel->swapbuffers_wait = FALSE;
- }
-
- xf86DrvMsg(scrn->scrnIndex, X_CONFIG, "Tiling %sabled\n",
- intel->tiling ? "en" : "dis");
- xf86DrvMsg(scrn->scrnIndex, X_CONFIG, "SwapBuffers wait %sabled\n",
- intel->swapbuffers_wait ? "en" : "dis");
-
intel->last_3d = LAST_3D_OTHER;
intel->overlayOn = FALSE;
@@ -891,6 +889,12 @@
intel->pEnt->device->videoRam ? X_CONFIG : X_DEFAULT,
"VideoRam: %d KB\n", scrn->videoRam);
+#ifdef DRI2
+ if (intel->directRenderingType == DRI_NONE
+ && I830DRI2ScreenInit(screen))
+ intel->directRenderingType = DRI_DRI2;
+#endif
+
if (!intel_init_initial_framebuffer(scrn))
return FALSE;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xf86-video-intel-2.12.0/src/intel_driver.h new/xf86-video-intel-2.12.902/src/intel_driver.h
--- old/xf86-video-intel-2.12.0/src/intel_driver.h 2010-09-07 11:42:37.000000000 +0200
+++ new/xf86-video-intel-2.12.902/src/intel_driver.h 2010-09-22 02:21:36.000000000 +0200
@@ -158,6 +158,11 @@
#define PCI_CHIP_B43_G_BRIDGE 0x2E40
#endif
+#ifndef PCI_CHIP_B43_G1
+#define PCI_CHIP_B43_G1 0x2E92
+#define PCI_CHIP_B43_G1_BRIDGE 0x2E90
+#endif
+
#ifndef PCI_CHIP_IGDNG_D_G
#define PCI_CHIP_IGDNG_D_G 0x0042
#define PCI_CHIP_IGDNG_D_G_BRIDGE 0x0040
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xf86-video-intel-2.12.0/src/intel_memory.c new/xf86-video-intel-2.12.902/src/intel_memory.c
--- old/xf86-video-intel-2.12.0/src/intel_memory.c 2010-09-08 21:24:51.000000000 +0200
+++ new/xf86-video-intel-2.12.902/src/intel_memory.c 2010-09-29 05:43:10.000000000 +0200
@@ -209,6 +209,10 @@
width, height, intel->cpp,
&tiling_mode, &pitch, 0);
if (front_buffer == NULL) {
+ if (tiling_mode != I915_TILING_NONE) {
+ tiling_mode = I915_TILING_NONE;
+ goto retry;
+ }
xf86DrvMsg(scrn->scrnIndex, X_ERROR,
"Failed to allocate framebuffer.\n");
return NULL;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xf86-video-intel-2.12.0/src/intel_module.c new/xf86-video-intel-2.12.902/src/intel_module.c
--- old/xf86-video-intel-2.12.0/src/intel_module.c 2010-09-07 11:42:37.000000000 +0200
+++ new/xf86-video-intel-2.12.902/src/intel_module.c 2010-09-22 02:21:36.000000000 +0200
@@ -70,6 +70,7 @@
{PCI_CHIP_Q45_G, "Q45/Q43"},
{PCI_CHIP_G41_G, "G41"},
{PCI_CHIP_B43_G, "B43"},
+ {PCI_CHIP_B43_G1, "B43"},
{PCI_CHIP_IGDNG_D_G, "Clarkdale"},
{PCI_CHIP_IGDNG_M_G, "Arrandale"},
{PCI_CHIP_SANDYBRIDGE_GT1, "Sandybridge" },
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xf86-video-intel-2.12.0/src/intel_uxa.c new/xf86-video-intel-2.12.902/src/intel_uxa.c
--- old/xf86-video-intel-2.12.0/src/intel_uxa.c 2010-09-15 06:22:28.000000000 +0200
+++ new/xf86-video-intel-2.12.902/src/intel_uxa.c 2010-09-22 02:21:36.000000000 +0200
@@ -411,12 +411,39 @@
ScrnInfoPtr scrn = xf86Screens[dest->drawable.pScreen->myNum];
intel_screen_private *intel = intel_get_screen_private(scrn);
uint32_t cmd;
- int dst_x2, dst_y2;
+ int dst_x2, dst_y2, src_x2, src_y2;
unsigned int dst_pitch, src_pitch;
dst_x2 = dst_x1 + w;
dst_y2 = dst_y1 + h;
+ /* XXX Fixup extents as a lamentable workaround for missing
+ * source clipping in the upper layers.
+ */
+ if (dst_x1 < 0)
+ src_x1 -= dst_x1, dst_x1 = 0;
+ if (dst_y1 < 0)
+ src_y1 -= dst_y1, dst_y1 = 0;
+ if (dst_x2 > dest->drawable.width)
+ dst_x2 = dest->drawable.width;
+ if (dst_y2 > dest->drawable.height)
+ dst_y2 = dest->drawable.height;
+
+ src_x2 = src_x1 + (dst_x2 - dst_x1);
+ src_y2 = src_y1 + (dst_y2 - dst_y1);
+
+ if (src_x1 < 0)
+ dst_x1 -= src_x1, src_x1 = 0;
+ if (src_y1 < 0)
+ dst_y1 -= src_y1, src_y1 = 0;
+ if (src_x2 > intel->render_source->drawable.width)
+ dst_x2 -= src_x2 - intel->render_source->drawable.width;
+ if (src_y2 > intel->render_source->drawable.height)
+ dst_y2 -= src_y2 - intel->render_source->drawable.height;
+
+ if (dst_x2 <= dst_x1 || dst_y2 <= dst_y1)
+ return;
+
dst_pitch = intel_pixmap_pitch(dest);
src_pitch = intel_pixmap_pitch(intel->render_source);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xf86-video-intel-2.12.0/src/intel_video.c new/xf86-video-intel-2.12.902/src/intel_video.c
--- old/xf86-video-intel-2.12.0/src/intel_video.c 2010-09-08 21:24:52.000000000 +0200
+++ new/xf86-video-intel-2.12.902/src/intel_video.c 2010-09-22 02:21:36.000000000 +0200
@@ -1348,13 +1348,19 @@
event = MI_WAIT_FOR_PIPEB_SVBLANK;
}
+ if (scrn->currentMode->Flags & V_INTERLACE) {
+ /* DSL count field lines */
+ y1 /= 2;
+ y2 /= 2;
+ }
+
BEGIN_BATCH(5);
/* The documentation says that the LOAD_SCAN_LINES command
* always comes in pairs. Don't ask me why. */
OUT_BATCH(MI_LOAD_SCAN_LINES_INCL | pipe);
- OUT_BATCH((box.y1 << 16) | box.y2);
+ OUT_BATCH((y1 << 16) | y2);
OUT_BATCH(MI_LOAD_SCAN_LINES_INCL | pipe);
- OUT_BATCH((box.y1 << 16) | box.y2);
+ OUT_BATCH((y1 << 16) | y2);
OUT_BATCH(MI_WAIT_FOR_EVENT | event);
ADVANCE_BATCH();
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xf86-video-intel-2.12.0/uxa/uxa-accel.c new/xf86-video-intel-2.12.902/uxa/uxa-accel.c
--- old/xf86-video-intel-2.12.0/uxa/uxa-accel.c 2010-08-31 11:49:00.000000000 +0200
+++ new/xf86-video-intel-2.12.902/uxa/uxa-accel.c 2010-09-29 05:43:10.000000000 +0200
@@ -47,7 +47,9 @@
case 16: return PICT_r5g6b5;
default:
case 24: return PICT_x8r8g8b8;
+#if XORG_VERSION_CURRENT >= 10699900
case 30: return PICT_x2r10g10b10;
+#endif
case 32: return PICT_a8r8g8b8;
}
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xf86-video-intel-2.12.0/uxa/uxa-render.c new/xf86-video-intel-2.12.902/uxa/uxa-render.c
--- old/xf86-video-intel-2.12.0/uxa/uxa-render.c 2010-08-31 11:49:00.000000000 +0200
+++ new/xf86-video-intel-2.12.902/uxa/uxa-render.c 2010-09-29 05:43:10.000000000 +0200
@@ -108,6 +108,7 @@
/*
* Operators only available in version 0.2
*/
+#if RENDER_MAJOR >= 1 || RENDER_MINOR >= 2
C(DisjointClear);
C(DisjointSrc);
C(DisjointDst);
@@ -133,10 +134,12 @@
C(ConjointAtop);
C(ConjointAtopReverse);
C(ConjointXor);
+#endif
/*
* Operators only available in version 0.11
*/
+#if RENDER_MAJOR >= 1 || RENDER_MINOR >= 11
C(Multiply);
C(Screen);
C(Overlay);
@@ -152,6 +155,7 @@
C(HSLSaturation);
C(HSLColor);
C(HSLLuminosity);
+#endif
default: return "garbage";
#undef C
}
@@ -237,11 +241,13 @@
gshift = rbits;
bshift = gshift + gbits;
ashift = bshift + bbits;
+#if XORG_VERSION_CURRENT >= 10699900
} else if (PICT_FORMAT_TYPE(format) == PICT_TYPE_BGRA) {
ashift = 0;
rshift = abits;
gshift = rshift + rbits;
bshift = gshift + gbits;
+#endif
} else {
return FALSE;
}
@@ -283,6 +289,7 @@
gshift = rbits;
bshift = gshift + gbits;
ashift = bshift + bbits;
+#if XORG_VERSION_CURRENT >= 10699900
} else if (PICT_FORMAT_TYPE(format) == PICT_TYPE_BGRA) {
ashift = 0;
rshift = abits;
@@ -290,6 +297,7 @@
rshift = PICT_FORMAT_BPP(format) - (rbits+gbits+bbits);
gshift = rshift + rbits;
bshift = gshift + gbits;
+#endif
} else {
return FALSE;
}
++++++ xf86-video-intel-345c963.diff ++++++
commit 345c963e443ec325f1ff530512a356ddb318ff70
Author: Zhenyu Wang
Date: Thu Sep 30 10:58:49 2010 +0800
Always use tiling on Sandybridge
Sandybridge requires kind of buffer must be tiling, like depth.
And we would or have all tiling cases handled fine. So not allow
user to turn off tiling on Sandybridge+ may be fine.
Signed-off-by: Zhenyu Wang
diff --git a/src/intel_driver.c b/src/intel_driver.c
index d086d94..79c850b 100644
--- a/src/intel_driver.c
+++ b/src/intel_driver.c
@@ -601,7 +601,7 @@ static Bool I830PreInit(ScrnInfoPtr scrn, int flags)
intel->tiling = TRUE;
/* Allow user override if they set a value */
- if (xf86IsOptionSet(intel->Options, OPTION_TILING)) {
+ if (!ALWAYS_TILING(intel) && xf86IsOptionSet(intel->Options, OPTION_TILING)) {
if (xf86ReturnOptValBool(intel->Options, OPTION_TILING, FALSE))
intel->tiling = TRUE;
else
diff --git a/src/intel_driver.h b/src/intel_driver.h
index b55c8c9..31b3009 100644
--- a/src/intel_driver.h
+++ b/src/intel_driver.h
@@ -264,6 +264,8 @@
/* supports Y tiled surfaces (pre-965 Mesa isn't ready yet) */
#define SUPPORTS_YTILING(pI810) (IS_I965G(intel))
+#define ALWAYS_TILING(intel) (IS_GEN6(intel))
+
extern SymTabRec *intel_chipsets;
struct intel_chipset {
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org