Hello community,
here is the log from the commit of package xorg-x11-driver-video for openSUSE:Factory
checked in at Thu Oct 7 21:48:40 CEST 2010.
--------
--- xorg-x11-driver-video/xorg-x11-driver-video.changes 2010-09-30 12:56:31.000000000 +0200
+++ /mounts/work_src_done/STABLE/xorg-x11-driver-video/xorg-x11-driver-video.changes 2010-10-06 15:45:23.000000000 +0200
@@ -1,0 +2,81 @@
+Wed Oct 6 13:34:56 UTC 2010 - sndirsch@novell.com
+
+- xf86-video-intel 2.13.0-20101006-1444ea3
+ * Revert "Clear pixmap->devPrivate.ptr [regression in 7c7294e]"
+ * uxa: Re-enable acceleration.
+ * uxa: Skip a pixmap lookup if there is no driver finish access
+ function
+ * dri: Reattach the fake pixmap for the shadow scanout to the
+ drawable.
+ * dri+shadow: Only tweak the acceleration of CopyRegion if using shadow.
+- removed xf86-video-intel-d1925de.diff ("Clear
+ pixmap->devPrivate.ptr [regression from 7c7294e]")
+
+-------------------------------------------------------------------
+Wed Oct 6 01:10:48 UTC 2010 - sndirsch@novell.com
+
+- xf86-video-intel-d1925de.diff
+ * Clear pixmap->devPrivate.ptr [regression from 7c7294e]
+- xf86-video-intel-fix-8784c4f.diff
+ * fix commit #8784c4f; IS_965G(..) is already part of IS_9XX(..)
+
+-------------------------------------------------------------------
+Tue Oct 5 19:31:49 UTC 2010 - sndirsch@novell.com
+
+- xf86-video-intel 2.13.0-20101005-4bf2182
+ * current git master commit with latest Sandybridge patches
+- obsoletes intel_check_kms_on_probe.diff (commit
+ 455f2939a661764ebb8d1747d44e16a0a8937808: "Do not claim the PCI
+ device if !KMS. By returning FALSE whilst probing if we can't
+ find a KMS driver, we allow X to fallback to trying the VESA
+ driver -- rather than failing.")
+- obsoletes xf86-video-intel-345c963.diff
+
+-------------------------------------------------------------------
+Mon Oct 4 03:56:40 UTC 2010 - sndirsch@novell.com
+
+- xf86-video-ati 6.13.2 (bugfix release)
+ * Evergreen UMS modesetting fixes
+ * Performance improvements with EXA
+ * r6xx/r7xx tiling support
+ * lots of bug fixes
+
+-------------------------------------------------------------------
+Fri Oct 1 01:36:49 UTC 2010 - sndirsch@novell.com
+
+- xf86-video-intel 2.13.0
+ * requires libdrm 2.4.22
+ * 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
+ * Fix to compile for 1.6 series X server.
+ * Fix to retry framebuffer allocation after an initial failure.
+ * Fix to disable dri2 after fallbacks are forced on.
+
+-------------------------------------------------------------------
+Thu Sep 30 12:38:15 UTC 2010 - sndirsch@novell.com
+
+- fixed previous patch
+
+-------------------------------------------------------------------
calling whatdependson for head-i586
Old:
----
intel_check_kms_on_probe.diff
xf86-video-ati-6.13.99-20100901-2b98ec1.tar.bz2
xf86-video-intel-2.12.902.tar.bz2
xf86-video-intel-345c963.diff
New:
----
xf86-video-ati-6.13.2.tar.bz2
xf86-video-intel-2.13.0-20101006-1444ea3.tar.bz2
xf86-video-intel-fix-8784c4f.diff
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ xorg-x11-driver-video.spec ++++++
--- /var/tmp/diff_new_pack.Iusw4O/_old 2010-10-07 21:46:43.000000000 +0200
+++ /var/tmp/diff_new_pack.Iusw4O/_new 2010-10-07 21:46:43.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: 24
+Release: 25
License: MIT License (or similar)
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Group: System/X11/Servers/XF86_4
@@ -66,8 +66,8 @@
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.902.tar.bz2
-Source46: xf86-video-ati-6.13.99-20100901-2b98ec1.tar.bz2
+Source45: xf86-video-intel-2.13.0-20101006-1444ea3.tar.bz2
+Source46: xf86-video-ati-6.13.2.tar.bz2
Source51: xf86-video-geode-2.11.9.tar.bz2
Source54: xf86-video-mach64-6.8.2.tar.bz2
Source55: xf86-video-r128-6.8.1.tar.bz2
@@ -95,12 +95,11 @@
Patch131: xf86-video-ati-bug519261-increase-virtual.diff
Patch132: xf86-video-nv-bug519261-increase-virtual.diff
Patch137: xf86-video-newport-commit-48f48e5.diff
-Patch139: intel_check_kms_on_probe.diff
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
+Patch146: xf86-video-intel-fix-8784c4f.diff
%description
This package contains X.Org video drivers.
@@ -154,9 +153,8 @@
pushd xf86-video-intel-*
#%patch112 -p1
%patch130 -p0
-%patch139 -p1
-%patch143 -p1
%patch144 -p1
+%patch146 -p1
popd
pushd xf86-video-nv-*
%patch132 -p1
++++++ 0001-Re-add-XVideo-option-as-XVideo-on-SandyBridge-freez.patch ++++++
--- /var/tmp/diff_new_pack.Iusw4O/_old 2010-10-07 21:46:43.000000000 +0200
+++ /var/tmp/diff_new_pack.Iusw4O/_new 2010-10-07 21:46:43.000000000 +0200
@@ -40,7 +40,7 @@
{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},
++ {OPTION_XVIDEO, "XVideo", OPTV_BOOLEAN, {0}, FALSE},
{-1, NULL, OPTV_NONE, {0}, FALSE}
};
/* *INDENT-ON* */
++++++ xf86-video-ati-6.13.99-20100901-2b98ec1.tar.bz2 -> xf86-video-ati-6.13.2.tar.bz2 ++++++
++++ 2669 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-ati-6.13.99/ChangeLog new/xf86-video-ati-6.13.2/ChangeLog
--- old/xf86-video-ati-6.13.99/ChangeLog 2010-09-02 02:21:03.000000000 +0200
+++ new/xf86-video-ati-6.13.2/ChangeLog 2010-09-28 00:21:53.000000000 +0200
@@ -1,3 +1,113 @@
+commit cc5005af61f45a3552f7358dc5aa711e42f5af54
+Author: Alex Deucher
+Date: Mon Sep 27 18:20:53 2010 -0400
+
+ bump version for release
+
+commit 7f8820fcec8c90bf2f823170bd08a23e8b4ff7af
+Author: Michael Cree
+Date: Mon Sep 27 13:39:12 2010 -0400
+
+ Fix some unaligned 32bit accesses in the AtomBios code.
+
+ On the Alpha architecture unaligned 32bit accesses incur a software
+ trap to the kernel and pollute the kernel logs. Fixed by use of the
+ ldl_u() interface.
+
+ Signed-off-by: Michael Cree
+
+commit c4f834cdfbe96aa47ac5fb039f9dd7aa9730c8a3
+Author: Nicolas Reinecke
+Date: Mon Sep 27 13:33:55 2010 -0400
+
+ radeon: Convert remaining x(c)alloc/xfree to m/calloc/free.
+
+ Fixes deprecation warnings missed out by
+ f7a91ece264af9f3fd2fc18e99aefcda93ce9f5c
+
+commit f8fb9312d791af1f77020e8c2d35bb30841ed9aa
+Author: Karl Tomlinson
+Date: Sun Aug 22 22:46:33 2010 +1200
+
+ RADEONPrepareAccess_CS: fallback to DFS when pixmap is in VRAM
+
+ This avoids costly CPU VRAM reads and lets EXA manage a system memory cache
+ of the portions of pixmaps needed for unaccelerated operations.
+
+ https://bugs.freedesktop.org/show_bug.cgi?id=27139
+
+commit 35c4ff936601ee083f51510a5192fb97d622a483
+Author: Karl Tomlinson
+Date: Sun Aug 22 22:28:06 2010 +1200
+
+ radeon: complete UTS and DFS even when a scratch BO is not necessary
+
+ Turns on the big-endian paths even for little-endian systems, and adds
+ similar paths to the r6xx/r7xx functions.
+
+ This makes UTS and DFS reliable, which will let PrepareAccess (with
+ mixed pixmaps) choose to fail based on whether the pixmap is in VRAM
+ (to avoid CPU reads).
+
+commit d46381a3a6bf10903803f5acaa7aa0ce06373b96
+Author: Karl Tomlinson
+Date: Sun Aug 22 21:02:45 2010 +1200
+
+ radeon: complete big endian UTS and DFS even when scratch allocation fails.
+
+ On big endian systems, PrepareAccess will fail when byte-swapping is
+ required so UploadToScreen and DownloadFromScreen cannot rely on
+ fallback to PrepareAccess.
+
+ When scratch BO space allocation fails, this patch merely adds simple
+ fallback to direct CPU access without any GPU blit. This sometimes
+ requires a CS flush even in UploadToScreen.
+ (No allocation retry after a flush is added here.)
+
+commit 4ced4e1eff67946e306c0c67c9ed59dd5f3c4ba9
+Author: Karl Tomlinson
+Date: Sun Aug 22 20:04:42 2010 +1200
+
+ RADEONDownloadFromScreenCS: flush CS writes before mapping BO for read
+
+ If unflushed CS operations write to the pixmap BO, then these need to be
+ flushed before mapping the BO for read. This currently only affects big
+ endian systems and only when the operation writes to the GTT domain.
+
+commit a4eef8faffbb1ea2f742273ee855f4e6f992e5c8
+Author: Karl Tomlinson
+Date: Sat Aug 21 22:29:34 2010 +1200
+
+ FinishAccess_CS: set bo_mapped to FALSE on unmap
+
+ This is actually only necessary when PrepareAccess may behave differently on
+ different calls with the same pixmap, which currently doesn't happen.
+
+ However resetting bo_mapped is necessary to let PrepareAccess (with mixed
+ pixmaps) choose to fail based on whether the pixmap is in VRAM (to avoid CPU
+ reads).
+
+commit bfebe039af0c0282d04eb6234b6e6d1e02097146
+Author: Karl Tomlinson
+Date: Sat Aug 21 21:44:39 2010 +1200
+
+ DownloadFromScreenCS: download via a scratch BO if pixmap domain is unknown
+
+ radeon_bo_is_busy() may return without setting the domain out-parameter.
+ If this happens, then download via a scratch GTT BO to avoid CPU VRAM read.
+
+commit b90cb61ccb0f4f80e0627141f223354a9371d47d
+Author: Alex Deucher
+Date: Tue Sep 7 11:51:16 2010 -0400
+
+ radeon: set interlaced and doublescan enabled for randr outputs
+
+ interlaced used to work without setting these parameters. Changes
+ in the xserver seem to require them now.
+
+ Should fix:
+ https://bugs.freedesktop.org/show_bug.cgi?id=29591
+
commit 2b98ec1f7e931019a4ab699a56d5dfaa395946fb
Author: Alex Deucher
Date: Wed Sep 1 13:24:19 2010 -0400
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-ati-6.13.99/configure.ac new/xf86-video-ati-6.13.2/configure.ac
--- old/xf86-video-ati-6.13.99/configure.ac 2010-09-02 02:16:20.000000000 +0200
+++ new/xf86-video-ati-6.13.2/configure.ac 2010-09-28 00:19:19.000000000 +0200
@@ -23,7 +23,7 @@
# Initialize Autoconf
AC_PREREQ([2.60])
AC_INIT([xf86-video-ati],
- [6.13.99],
+ [6.13.2],
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
[xf86-video-ati])
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-ati-6.13.99/missing new/xf86-video-ati-6.13.2/missing
--- old/xf86-video-ati-6.13.99/missing 2007-11-22 08:18:41.000000000 +0100
+++ new/xf86-video-ati-6.13.2/missing 2010-05-24 21:13:23.000000000 +0200
@@ -1,10 +1,10 @@
#! /bin/sh
# Common stub for a few missing GNU programs while installing.
-scriptversion=2006-05-10.23
+scriptversion=2009-04-28.21; # UTC
-# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006
-# Free Software Foundation, Inc.
+# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006,
+# 2008, 2009 Free Software Foundation, Inc.
# Originally by Fran,cois Pinard , 1996.
# This program is free software; you can redistribute it and/or modify
@@ -18,9 +18,7 @@
# 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.
+# along with this program. If not, see http://www.gnu.org/licenses/.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
@@ -89,6 +87,9 @@
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 $?
;;
@@ -106,15 +107,22 @@
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).
+# the program). This is about non-GNU programs, so use $1 not
+# $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
@@ -138,7 +146,7 @@
# If it does not exist, or fails to run (possibly an outdated version),
# try to emulate it.
-case $1 in
+case $program in
aclocal*)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
@@ -148,7 +156,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
@@ -157,7 +165,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
@@ -187,7 +195,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
@@ -210,7 +218,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
@@ -240,7 +248,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
@@ -263,7 +271,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
@@ -277,11 +285,11 @@
else
test -z "$file" || exec >$file
echo ".ab help2man is required to generate this page"
- exit 1
+ exit $?
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
@@ -310,7 +318,7 @@
touch $file
;;
- tar)
+ tar*)
shift
# We have already tried tar in the generic part.
@@ -363,5 +371,6 @@
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-end: "$"
+# time-stamp-time-zone: "UTC"
+# time-stamp-end: "; # UTC"
# 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-ati-6.13.99/src/AtomBios/CD_Operations.c new/xf86-video-ati-6.13.2/src/AtomBios/CD_Operations.c
--- old/xf86-video-ati-6.13.99/src/AtomBios/CD_Operations.c 2010-09-02 02:16:20.000000000 +0200
+++ new/xf86-video-ati-6.13.2/src/AtomBios/CD_Operations.c 2010-09-27 19:38:40.000000000 +0200
@@ -367,7 +367,7 @@
UINT32 data;
pParserTempData->Index=*pParserTempData->pWorkingTableData->IP;
pParserTempData->pWorkingTableData->IP+=sizeof(UINT8);
- data = UINT32LE_TO_CPU(*(pParserTempData->pDeviceData->pParameterSpace+pParserTempData->Index));
+ data = UINT32LE_TO_CPU(ldl_u(pParserTempData->pDeviceData->pParameterSpace+pParserTempData->Index));
return data;
}
@@ -430,7 +430,7 @@
pParserTempData->Index=UINT16LE_TO_CPU(ldw_u((uint16_t *)pParserTempData->pWorkingTableData->IP));
pParserTempData->pWorkingTableData->IP+=sizeof(UINT16);
- ret = UINT32LE_TO_CPU(*(UINT32*)(RELATIVE_TO_BIOS_IMAGE(pParserTempData->Index)+pParserTempData->CurrentDataBlock));
+ ret = UINT32LE_TO_CPU(ldl_u((UINT32*)(RELATIVE_TO_BIOS_IMAGE(pParserTempData->Index)+pParserTempData->CurrentDataBlock)));
return ret;
}
@@ -453,7 +453,7 @@
UINT32 GetParametersDirect32(PARSER_TEMP_DATA STACK_BASED * pParserTempData)
{
pParserTempData->CD_Mask.SrcAlignment=alignmentDword;
- pParserTempData->Index=UINT32LE_TO_CPU(*(UINT32*)pParserTempData->pWorkingTableData->IP);
+ pParserTempData->Index=UINT32LE_TO_CPU(ldl_u((UINT32*)pParserTempData->pWorkingTableData->IP));
pParserTempData->pWorkingTableData->IP+=sizeof(UINT32);
return pParserTempData->Index;
}
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-ati-6.13.99/src/ati.c new/xf86-video-ati-6.13.2/src/ati.c
--- old/xf86-video-ati-6.13.99/src/ati.c 2008-07-31 12:53:44.000000000 +0200
+++ new/xf86-video-ati-6.13.2/src/ati.c 2010-09-27 19:34:37.000000000 +0200
@@ -227,7 +227,7 @@
}
}
- xfree(ATIGDevs);
+ free(ATIGDevs);
/* load subdrivers as primary modules and only if they do not get loaded
* from other device sections
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-ati-6.13.99/src/drmmode_display.c new/xf86-video-ati-6.13.2/src/drmmode_display.c
--- old/xf86-video-ati-6.13.99/src/drmmode_display.c 2010-09-02 02:16:20.000000000 +0200
+++ new/xf86-video-ati-6.13.2/src/drmmode_display.c 2010-09-07 17:50:35.000000000 +0200
@@ -960,6 +960,8 @@
output->mm_height = koutput->mmHeight;
output->subpixel_order = subpixel_conv_table[koutput->subpixel];
+ output->interlaceAllowed = TRUE;
+ output->doubleScanAllowed = TRUE;
output->driver_private = drmmode_output;
output->possible_crtcs = 0x7f;
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-ati-6.13.99/src/r600_exa.c new/xf86-video-ati-6.13.2/src/r600_exa.c
--- old/xf86-video-ati-6.13.99/src/r600_exa.c 2010-09-02 02:16:21.000000000 +0200
+++ new/xf86-video-ati-6.13.2/src/r600_exa.c 2010-09-27 19:34:37.000000000 +0200
@@ -1772,13 +1772,18 @@
RADEONInfoPtr info = RADEONPTR(pScrn);
struct radeon_accel_state *accel_state = info->accel_state;
struct radeon_exa_pixmap_priv *driver_priv;
- struct radeon_bo *scratch;
+ struct radeon_bo *scratch = NULL;
+ struct radeon_bo *copy_dst;
+ unsigned char *dst;
unsigned size;
uint32_t dst_domain;
int bpp = pDst->drawable.bitsPerPixel;
uint32_t scratch_pitch = RADEON_ALIGN(w * bpp / 8, 256);
+ uint32_t copy_pitch;
uint32_t src_pitch_hw = scratch_pitch / (bpp / 8);
uint32_t dst_pitch_hw = exaGetPixmapPitch(pDst) / (bpp / 8);
+ int ret;
+ Bool flush = TRUE;
Bool r;
int i;
struct r600_accel_object src_obj, dst_obj;
@@ -1788,15 +1793,19 @@
driver_priv = exaGetPixmapDriverPrivate(pDst);
- /* If we know the BO won't be busy, don't bother */
- if (!radeon_bo_is_referenced_by_cs(driver_priv->bo, info->cs) &&
- !radeon_bo_is_busy(driver_priv->bo, &dst_domain))
- return FALSE;
+ /* If we know the BO won't be busy, don't bother with a scratch */
+ copy_dst = driver_priv->bo;
+ copy_pitch = pDst->devKind;
+ if (!radeon_bo_is_referenced_by_cs(driver_priv->bo, info->cs)) {
+ flush = FALSE;
+ if (!radeon_bo_is_busy(driver_priv->bo, &dst_domain))
+ goto copy;
+ }
size = scratch_pitch * h;
scratch = radeon_bo_open(info->bufmgr, 0, size, 0, RADEON_GEM_DOMAIN_GTT, 0);
if (scratch == NULL) {
- return FALSE;
+ goto copy;
}
src_obj.pitch = src_pitch_hw;
@@ -1821,33 +1830,45 @@
&dst_obj,
accel_state->copy_vs_offset, accel_state->copy_ps_offset,
3, 0xffffffff)) {
- r = FALSE;
- goto out;
+ goto copy;
}
+ copy_dst = scratch;
+ copy_pitch = scratch_pitch;
+ flush = FALSE;
+
+copy:
+ if (flush)
+ radeon_cs_flush_indirect(pScrn);
- r = radeon_bo_map(scratch, 0);
- if (r) {
+ ret = radeon_bo_map(copy_dst, 0);
+ if (ret) {
r = FALSE;
goto out;
}
r = TRUE;
size = w * bpp / 8;
+ dst = copy_dst->ptr;
+ if (copy_dst == driver_priv->bo)
+ dst += y * copy_pitch + x * bpp / 8;
for (i = 0; i < h; i++) {
- memcpy(scratch->ptr + i * scratch_pitch, src, size);
+ memcpy(dst + i * copy_pitch, src, size);
src += src_pitch;
}
- radeon_bo_unmap(scratch);
-
- if (info->accel_state->vsync)
- RADEONVlineHelperSet(pScrn, x, y, x + w, y + h);
+ radeon_bo_unmap(copy_dst);
- /* blit from gart to vram */
- R600DoPrepareCopy(pScrn);
- R600AppendCopyVertex(pScrn, 0, 0, x, y, w, h);
- R600DoCopyVline(pDst);
+ if (copy_dst == scratch) {
+ if (info->accel_state->vsync)
+ RADEONVlineHelperSet(pScrn, x, y, x + w, y + h);
+
+ /* blit from gart to vram */
+ R600DoPrepareCopy(pScrn);
+ R600AppendCopyVertex(pScrn, 0, 0, x, y, w, h);
+ R600DoCopyVline(pDst);
+ }
out:
- radeon_bo_unref(scratch);
+ if (scratch)
+ radeon_bo_unref(scratch);
return r;
}
@@ -1859,13 +1880,17 @@
RADEONInfoPtr info = RADEONPTR(pScrn);
struct radeon_accel_state *accel_state = info->accel_state;
struct radeon_exa_pixmap_priv *driver_priv;
- struct radeon_bo *scratch;
+ struct radeon_bo *scratch = NULL;
+ struct radeon_bo *copy_src;
unsigned size;
uint32_t src_domain = 0;
int bpp = pSrc->drawable.bitsPerPixel;
uint32_t scratch_pitch = RADEON_ALIGN(w * bpp / 8, 256);
+ uint32_t copy_pitch;
uint32_t dst_pitch_hw = scratch_pitch / (bpp / 8);
uint32_t src_pitch_hw = exaGetPixmapPitch(pSrc) / (bpp / 8);
+ int ret;
+ Bool flush = FALSE;
Bool r;
struct r600_accel_object src_obj, dst_obj;
@@ -1874,24 +1899,28 @@
driver_priv = exaGetPixmapDriverPrivate(pSrc);
- /* If we know the BO won't end up in VRAM anyway, don't bother */
+ /* If we know the BO won't end up in VRAM anyway, don't bother with a scratch */
+ copy_src = driver_priv->bo;
+ copy_pitch = pSrc->devKind;
if (radeon_bo_is_referenced_by_cs(driver_priv->bo, info->cs)) {
src_domain = radeon_bo_get_src_domain(driver_priv->bo);
if ((src_domain & (RADEON_GEM_DOMAIN_GTT | RADEON_GEM_DOMAIN_VRAM)) ==
(RADEON_GEM_DOMAIN_GTT | RADEON_GEM_DOMAIN_VRAM))
src_domain = 0;
+ else /* A write may be scheduled */
+ flush = TRUE;
}
if (!src_domain)
radeon_bo_is_busy(driver_priv->bo, &src_domain);
- if (src_domain != RADEON_GEM_DOMAIN_VRAM)
- return FALSE;
+ if (src_domain & ~(uint32_t)RADEON_GEM_DOMAIN_VRAM)
+ goto copy;
size = scratch_pitch * h;
scratch = radeon_bo_open(info->bufmgr, 0, size, 0, RADEON_GEM_DOMAIN_GTT, 0);
if (scratch == NULL) {
- return FALSE;
+ goto copy;
}
radeon_cs_space_reset_bos(info->cs);
radeon_cs_space_add_persistent_bo(info->cs, info->accel_state->shaders_bo,
@@ -1900,10 +1929,9 @@
radeon_add_pixmap(info->cs, pSrc, info->accel_state->src_obj[0].domain, 0);
accel_state->dst_obj.domain = RADEON_GEM_DOMAIN_GTT;
radeon_cs_space_add_persistent_bo(info->cs, scratch, 0, accel_state->dst_obj.domain);
- r = radeon_cs_space_check(info->cs);
- if (r) {
- r = FALSE;
- goto out;
+ ret = radeon_cs_space_check(info->cs);
+ if (ret) {
+ goto copy;
}
src_obj.pitch = src_pitch_hw;
@@ -1928,34 +1956,42 @@
&dst_obj,
accel_state->copy_vs_offset, accel_state->copy_ps_offset,
3, 0xffffffff)) {
- r = FALSE;
- goto out;
+ goto copy;
}
/* blit from vram to gart */
R600DoPrepareCopy(pScrn);
R600AppendCopyVertex(pScrn, x, y, 0, 0, w, h);
R600DoCopy(pScrn);
+ copy_src = scratch;
+ copy_pitch = scratch_pitch;
+ flush = TRUE;
- if (info->cs)
+copy:
+ if (flush && info->cs)
radeon_cs_flush_indirect(pScrn);
- r = radeon_bo_map(scratch, 0);
- if (r) {
+ ret = radeon_bo_map(copy_src, 0);
+ if (ret) {
+ ErrorF("failed to map pixmap: %d\n", ret);
r = FALSE;
goto out;
}
r = TRUE;
w *= bpp / 8;
- size = 0;
+ if (copy_src == driver_priv->bo)
+ size = y * copy_pitch + x * bpp / 8;
+ else
+ size = 0;
while (h--) {
- memcpy(dst, scratch->ptr + size, w);
- size += scratch_pitch;
+ memcpy(dst, copy_src->ptr + size, w);
+ size += copy_pitch;
dst += dst_pitch;
}
- radeon_bo_unmap(scratch);
+ radeon_bo_unmap(copy_src);
out:
- radeon_bo_unref(scratch);
+ if (scratch)
+ radeon_bo_unref(scratch);
return r;
}
#endif
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-ati-6.13.99/src/radeon_exa.c new/xf86-video-ati-6.13.2/src/radeon_exa.c
--- old/xf86-video-ati-6.13.99/src/radeon_exa.c 2010-09-02 02:16:21.000000000 +0200
+++ new/xf86-video-ati-6.13.2/src/radeon_exa.c 2010-09-27 19:34:37.000000000 +0200
@@ -284,12 +284,21 @@
ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
RADEONInfoPtr info = RADEONPTR(pScrn);
struct radeon_exa_pixmap_priv *driver_priv;
+ uint32_t possible_domains = ~0U;
+ uint32_t current_domain = 0;
+#ifdef EXA_MIXED_PIXMAPS
+ Bool can_fail = !(pPix->drawable.bitsPerPixel < 8) &&
+ pPix != pScreen->GetScreenPixmap(pScreen) &&
+ (info->accel_state->exa->flags & EXA_MIXED_PIXMAPS);
+#else
+ Bool can_fail = FALSE;
+#endif
+ Bool flush = FALSE;
int ret;
#if X_BYTE_ORDER == X_BIG_ENDIAN
/* May need to handle byte swapping in DownloadFrom/UploadToScreen */
- if (pPix->drawable.bitsPerPixel > 8 &&
- pPix != pScreen->GetScreenPixmap(pScreen))
+ if (can_fail && pPix->drawable.bitsPerPixel > 8)
return FALSE;
#endif
@@ -298,7 +307,28 @@
return FALSE;
/* if we have more refs than just the BO then flush */
- if (radeon_bo_is_referenced_by_cs(driver_priv->bo, info->cs))
+ if (radeon_bo_is_referenced_by_cs(driver_priv->bo, info->cs)) {
+ flush = TRUE;
+
+ if (can_fail) {
+ possible_domains = radeon_bo_get_src_domain(driver_priv->bo);
+ if (possible_domains == RADEON_GEM_DOMAIN_VRAM)
+ return FALSE; /* use DownloadFromScreen */
+ }
+ }
+
+ /* if the BO might end up in VRAM, prefer DownloadFromScreen */
+ if (can_fail && (possible_domains & RADEON_GEM_DOMAIN_VRAM)) {
+ radeon_bo_is_busy(driver_priv->bo, ¤t_domain);
+
+ if (current_domain & possible_domains) {
+ if (current_domain == RADEON_GEM_DOMAIN_VRAM)
+ return FALSE;
+ } else if (possible_domains & RADEON_GEM_DOMAIN_VRAM)
+ return FALSE;
+ }
+
+ if (flush)
radeon_cs_flush_indirect(pScrn);
/* flush IB */
@@ -323,6 +353,7 @@
return;
radeon_bo_unmap(driver_priv->bo);
+ driver_priv->bo_mapped = FALSE;
pPix->devPrivate.ptr = 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-ati-6.13.99/src/radeon_exa_funcs.c new/xf86-video-ati-6.13.2/src/radeon_exa_funcs.c
--- old/xf86-video-ati-6.13.99/src/radeon_exa_funcs.c 2010-07-02 09:30:53.000000000 +0200
+++ new/xf86-video-ati-6.13.2/src/radeon_exa_funcs.c 2010-09-27 19:34:37.000000000 +0200
@@ -459,7 +459,8 @@
ScreenPtr pScreen = pDst->drawable.pScreen;
RINFO_FROM_SCREEN(pScreen);
struct radeon_exa_pixmap_priv *driver_priv;
- struct radeon_bo *scratch;
+ struct radeon_bo *scratch = NULL;
+ struct radeon_bo *copy_dst;
unsigned char *dst;
unsigned size;
uint32_t datatype = 0;
@@ -467,7 +468,10 @@
uint32_t dst_pitch_offset;
unsigned bpp = pDst->drawable.bitsPerPixel;
uint32_t scratch_pitch = RADEON_ALIGN(w * bpp / 8, 64);
+ uint32_t copy_pitch;
uint32_t swap = RADEON_HOST_DATA_SWAP_NONE;
+ int ret;
+ Bool flush = TRUE;
Bool r;
int i;
@@ -489,55 +493,52 @@
}
#endif
- /* If we know the BO won't be busy, don't bother */
- if (!radeon_bo_is_referenced_by_cs(driver_priv->bo, info->cs) &&
- !radeon_bo_is_busy(driver_priv->bo, &dst_domain)) {
-#if X_BYTE_ORDER == X_BIG_ENDIAN
- /* Can't return FALSE here if we need to swap bytes */
- if (swap != RADEON_HOST_DATA_SWAP_NONE &&
- driver_priv->bo != info->front_bo) {
- scratch = driver_priv->bo;
- scratch_pitch = pDst->devKind;
+ /* If we know the BO won't be busy, don't bother with a scratch */
+ copy_dst = driver_priv->bo;
+ copy_pitch = pDst->devKind;
+ if (!radeon_bo_is_referenced_by_cs(driver_priv->bo, info->cs)) {
+ flush = FALSE;
+ if (!radeon_bo_is_busy(driver_priv->bo, &dst_domain))
goto copy;
- }
-#endif
- return FALSE;
}
size = scratch_pitch * h;
scratch = radeon_bo_open(info->bufmgr, 0, size, 0, RADEON_GEM_DOMAIN_GTT, 0);
if (scratch == NULL) {
- return FALSE;
+ goto copy;
}
radeon_cs_space_reset_bos(info->cs);
radeon_add_pixmap(info->cs, pDst, 0, RADEON_GEM_DOMAIN_VRAM);
radeon_cs_space_add_persistent_bo(info->cs, scratch, RADEON_GEM_DOMAIN_GTT, 0);
- r = radeon_cs_space_check(info->cs);
- if (r) {
- r = FALSE;
- goto out;
- }
+ ret = radeon_cs_space_check(info->cs);
+ if (ret) {
+ goto copy;
+ }
+ copy_dst = scratch;
+ copy_pitch = scratch_pitch;
+ flush = FALSE;
-#if X_BYTE_ORDER == X_BIG_ENDIAN
copy:
-#endif
- r = radeon_bo_map(scratch, 0);
- if (r) {
+ if (flush)
+ radeon_cs_flush_indirect(pScrn);
+
+ ret = radeon_bo_map(copy_dst, 0);
+ if (ret) {
r = FALSE;
goto out;
}
r = TRUE;
size = w * bpp / 8;
- dst = scratch->ptr;
- if (scratch == driver_priv->bo)
- dst += y * scratch_pitch + x * bpp / 8;
+ dst = copy_dst->ptr;
+ if (copy_dst == driver_priv->bo)
+ dst += y * copy_pitch + x * bpp / 8;
for (i = 0; i < h; i++) {
- RADEONCopySwap(dst + i * scratch_pitch, (uint8_t*)src, size, swap);
+ RADEONCopySwap(dst + i * copy_pitch, (uint8_t*)src, size, swap);
src += src_pitch;
}
- radeon_bo_unmap(scratch);
+ radeon_bo_unmap(copy_dst);
- if (scratch != driver_priv->bo) {
+ if (copy_dst == scratch) {
RADEONGetDatatypeBpp(pDst->drawable.bitsPerPixel, &datatype);
RADEONGetPixmapOffsetPitch(pDst, &dst_pitch_offset);
ACCEL_PREAMBLE();
@@ -548,7 +549,7 @@
}
out:
- if (scratch != driver_priv->bo)
+ if (scratch)
radeon_bo_unref(scratch);
return r;
}
@@ -559,14 +560,18 @@
{
RINFO_FROM_SCREEN(pSrc->drawable.pScreen);
struct radeon_exa_pixmap_priv *driver_priv;
- struct radeon_bo *scratch;
+ struct radeon_bo *scratch = NULL;
+ struct radeon_bo *copy_src;
unsigned size;
uint32_t datatype = 0;
uint32_t src_domain = 0;
uint32_t src_pitch_offset;
unsigned bpp = pSrc->drawable.bitsPerPixel;
uint32_t scratch_pitch = RADEON_ALIGN(w * bpp / 8, 64);
+ uint32_t copy_pitch;
uint32_t swap = RADEON_HOST_DATA_SWAP_NONE;
+ int ret;
+ Bool flush = FALSE;
Bool r;
if (bpp < 8)
@@ -587,41 +592,36 @@
}
#endif
- /* If we know the BO won't end up in VRAM anyway, don't bother */
+ /* If we know the BO won't end up in VRAM anyway, don't bother with a scratch */
+ copy_src = driver_priv->bo;
+ copy_pitch = pSrc->devKind;
if (radeon_bo_is_referenced_by_cs(driver_priv->bo, info->cs)) {
src_domain = radeon_bo_get_src_domain(driver_priv->bo);
if ((src_domain & (RADEON_GEM_DOMAIN_GTT | RADEON_GEM_DOMAIN_VRAM)) ==
(RADEON_GEM_DOMAIN_GTT | RADEON_GEM_DOMAIN_VRAM))
src_domain = 0;
+ else /* A write may be scheduled */
+ flush = TRUE;
}
if (!src_domain)
radeon_bo_is_busy(driver_priv->bo, &src_domain);
- if (src_domain != RADEON_GEM_DOMAIN_VRAM) {
-#if X_BYTE_ORDER == X_BIG_ENDIAN
- /* Can't return FALSE here if we need to swap bytes */
- if (swap != RADEON_HOST_DATA_SWAP_NONE) {
- scratch = driver_priv->bo;
- scratch_pitch = pSrc->devKind;
- goto copy;
- }
-#endif
- return FALSE;
+ if (src_domain & ~(uint32_t)RADEON_GEM_DOMAIN_VRAM) {
+ goto copy;
}
size = scratch_pitch * h;
scratch = radeon_bo_open(info->bufmgr, 0, size, 0, RADEON_GEM_DOMAIN_GTT, 0);
if (scratch == NULL) {
- return FALSE;
+ goto copy;
}
radeon_cs_space_reset_bos(info->cs);
radeon_add_pixmap(info->cs, pSrc, RADEON_GEM_DOMAIN_GTT | RADEON_GEM_DOMAIN_VRAM, 0);
radeon_cs_space_add_persistent_bo(info->cs, scratch, 0, RADEON_GEM_DOMAIN_GTT);
- r = radeon_cs_space_check(info->cs);
- if (r) {
- r = FALSE;
- goto out;
+ ret = radeon_cs_space_check(info->cs);
+ if (ret) {
+ goto copy;
}
RADEONGetDatatypeBpp(pSrc->drawable.bitsPerPixel, &datatype);
RADEONGetPixmapOffsetPitch(pSrc, &src_pitch_offset);
@@ -631,30 +631,34 @@
scratch_pitch << 16, x, y, 0, 0, w, h,
RADEON_GEM_DOMAIN_VRAM | RADEON_GEM_DOMAIN_GTT,
RADEON_GEM_DOMAIN_GTT);
- FLUSH_RING();
+ copy_src = scratch;
+ copy_pitch = scratch_pitch;
+ flush = TRUE;
-#if X_BYTE_ORDER == X_BIG_ENDIAN
copy:
-#endif
- r = radeon_bo_map(scratch, 0);
- if (r) {
+ if (flush)
+ FLUSH_RING();
+
+ ret = radeon_bo_map(copy_src, 0);
+ if (ret) {
+ ErrorF("failed to map pixmap: %d\n", ret);
r = FALSE;
goto out;
}
r = TRUE;
w *= bpp / 8;
- if (scratch == driver_priv->bo)
- size = y * scratch_pitch + x * bpp / 8;
+ if (copy_src == driver_priv->bo)
+ size = y * copy_pitch + x * bpp / 8;
else
size = 0;
while (h--) {
- RADEONCopySwap((uint8_t*)dst, scratch->ptr + size, w, swap);
- size += scratch_pitch;
+ RADEONCopySwap((uint8_t*)dst, copy_src->ptr + size, w, swap);
+ size += copy_pitch;
dst += dst_pitch;
}
- radeon_bo_unmap(scratch);
+ radeon_bo_unmap(copy_src);
out:
- if (scratch != driver_priv->bo)
+ if (scratch)
radeon_bo_unref(scratch);
return r;
}
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-ati-6.13.99/src/radeon_output.c new/xf86-video-ati-6.13.2/src/radeon_output.c
--- old/xf86-video-ati-6.13.99/src/radeon_output.c 2010-09-02 02:16:22.000000000 +0200
+++ new/xf86-video-ati-6.13.2/src/radeon_output.c 2010-09-07 17:48:49.000000000 +0200
@@ -3083,6 +3083,8 @@
if (!output) {
return FALSE;
}
+ output->interlaceAllowed = TRUE;
+ output->doubleScanAllowed = TRUE;
output->driver_private = radeon_output;
if (IS_DCE4_VARIANT) {
output->possible_crtcs = 0x3f;
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-ati-6.13.99/src/theatre200.c new/xf86-video-ati-6.13.2/src/theatre200.c
--- old/xf86-video-ati-6.13.99/src/theatre200.c 2010-07-02 09:30:54.000000000 +0200
+++ new/xf86-video-ati-6.13.2/src/theatre200.c 2010-09-27 19:34:37.000000000 +0200
@@ -162,7 +162,7 @@
{
int ret;
- curr_seg = (struct rt200_microc_seg*)Xalloc(sizeof(struct rt200_microc_seg));
+ curr_seg = (struct rt200_microc_seg*)malloc(sizeof(struct rt200_microc_seg));
if (curr_seg == NULL)
{
ERROR_0("Cannot allocate memory\n");
@@ -178,7 +178,7 @@
goto fail_exit;
}
- curr_seg->data = (unsigned char*)Xalloc(curr_seg->num_bytes);
+ curr_seg->data = (unsigned char*)malloc(curr_seg->num_bytes);
if (curr_seg->data == NULL)
{
ERROR_0("cannot allocate memory\n");
@@ -241,7 +241,7 @@
for (i = 0; i < microc_headp->num_seg; i++)
{
- curr_seg = (struct rt200_microc_seg*)Xalloc(sizeof(struct rt200_microc_seg));
+ curr_seg = (struct rt200_microc_seg*)malloc(sizeof(struct rt200_microc_seg));
if (curr_seg == NULL)
{
ERROR_0("Cannot allocate memory\n");
@@ -262,7 +262,7 @@
goto fail_exit;
}
- curr_seg->data = (unsigned char*)Xalloc(curr_seg->num_bytes);
+ curr_seg->data = (unsigned char*)malloc(curr_seg->num_bytes);
if (curr_seg->data == NULL)
{
ERROR_0("cannot allocate memory\n");
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-ati-6.13.99/src/theatre_detect.c new/xf86-video-ati-6.13.2/src/theatre_detect.c
--- old/xf86-video-ati-6.13.99/src/theatre_detect.c 2008-07-31 12:53:46.000000000 +0200
+++ new/xf86-video-ati-6.13.2/src/theatre_detect.c 2010-09-27 19:34:37.000000000 +0200
@@ -79,7 +79,7 @@
return NULL;
}
- t = xcalloc(1,sizeof(TheatreRec));
+ t = calloc(1,sizeof(TheatreRec));
t->VIP = b;
t->theatre_num = -1;
t->mode=MODE_UNINITIALIZED;
@@ -113,7 +113,7 @@
if(t->theatre_num < 0)
{
- xfree(t);
+ free(t);
return NULL;
}
++++++ xf86-video-intel-fix-8784c4f.diff ++++++
commit d3e0e6baccd90ef47da587b993b2b2a2d734ed12
Author: Stefan Dirsch
Date: Wed Oct 6 03:37:13 2010 +0200
Fix commit #8784c4f.
diff --git a/src/intel_video.c b/src/intel_video.c
index a07120f..8658ed5 100644
--- a/src/intel_video.c
+++ b/src/intel_video.c
@@ -363,7 +363,7 @@ void I830InitVideo(ScreenPtr screen)
* supported hardware.
*/
if (scrn->bitsPerPixel >= 16 &&
- (IS_I9XX(intel) || (IS_I965G(intel) && !IS_GEN6(intel))) &&
+ (IS_I915(intel) || (IS_I965G(intel) && !IS_GEN6(intel))) &&
!intel->use_shadow) {
texturedAdaptor = I830SetupImageVideoTextured(screen);
if (texturedAdaptor != NULL) {
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org