Hello community,
here is the log from the commit of package xorg-x11-driver-video for openSUSE:Factory
checked in at Tue Apr 13 21:13:02 CEST 2010.
--------
--- xorg-x11-driver-video/xorg-x11-driver-video.changes 2010-04-06 14:15:55.000000000 +0200
+++ /mounts/work_src_done/STABLE/xorg-x11-driver-video/xorg-x11-driver-video.changes 2010-04-13 17:56:47.000000000 +0200
@@ -1,0 +2,71 @@
+Tue Apr 13 17:44:07 CEST 2010 - sndirsch@suse.de
+
+- disabled broken KMS blacklist (bnc #595653)
+
+-------------------------------------------------------------------
+Mon Apr 12 20:17:43 CEST 2010 - sndirsch@suse.de
+
+- added /etc/X11/kms-blacklist.i915 and install rule for i915
+ module to /etc/modprobe.d/99-kms.conf
+
+-------------------------------------------------------------------
+Mon Apr 12 17:36:31 UTC 2010 - mhopf@novell.com
+
+- intel_check_kms_on_probe.diff:
+ Check for KMS on probe - that way fallback to fbdev or vesa will
+ still be possible if drm module is not available.
+
+-------------------------------------------------------------------
+Mon Apr 12 18:17:30 CEST 2010 - sndirsch@suse.de
+
+- /etc/X11/kms-blacklist.radeon
+ * blacklisted M24(1002:3150) (bnc #595653)
+
+-------------------------------------------------------------------
+Mon Apr 12 14:01:00 CEST 2010 - sndirsch@suse.de
+
+- /sbin/kms_loader.sh (kms-blacklist.tar.bz2)
+ * fixed PATH for grep/cut commands
+ * added kernel message via logger to inform the user that KMS
+ has been disabled via this script and /etc/X11/kms-blacklist.*
+
+-------------------------------------------------------------------
+Sat Apr 10 15:39:23 CEST 2010 - sndirsch@suse.de
+
+- kms-blacklist.tar.bz2
+ * framework for KMS blacklist; use
+ /etc/X11/kms-blacklist. for distribution wide
+ blacklisting of PCI IDs and /etc/X11/kms-blacklist.local for
+ local usage on the system
+
+-------------------------------------------------------------------
+Sat Apr 10 11:07:33 CEST 2010 - sndirsch@suse.de
+
+- major cleanup
+ * removed obsolete/broken drivers: xf86-video-impact,
+ xf86-video-nsc, xf86-video-vga, xf86-video-xgi,
+ xf86-video-xgixp (+ patches)
+ * removed special and never working RANDR 1.2 mga driver
+ 1.9.100 + patches; xf86-video-mga 1.4.11 remains of course
+ * removed no longer appliable r128/radeon patches:
+ xf86-video-ati-6.7.197-r128-xvideo.patch,
+ xf86-video-ati-es1000.diff
+ * renamed copy-fb.patch to xf86-video-intel-copy-fb.diff
+ * specfile cleanup
+
+-------------------------------------------------------------------
+Thu Apr 8 20:03:34 UTC 2010 - eich@suse.de
+
+- Another build fix for copy-fb.patch.
+
+-------------------------------------------------------------------
+Thu Apr 8 16:41:52 UTC 2010 - eich@suse.de
+
+- Updated patches to apply cleanly.
+
+-------------------------------------------------------------------
+Thu Apr 8 14:16:01 UTC 2010 - eich@suse.de
+
+- Add adapted copyfb patch from Moblin project and enable by default.
+
+-------------------------------------------------------------------
calling whatdependson for head-i586
Old:
----
copy-fb.patch
xf86-video-ati-6.7.197-r128-xvideo.patch
xf86-video-ati-es1000.diff
xf86-video-impact-0.2.0.tar.bz2
xf86-video-mga-1.9.100.tar.bz2
xf86-video-mga.randr12.diff
xf86-video-nsc-2.8.3.tar.bz2
xf86-video-nsc-noasm.diff
xf86-video-nsc.diff
xf86-video-vga-4.1.0_080718_97e2d12.tar.bz2
xf86-video-xgi-1.5.1.tar.bz2
xf86-video-xgi.diff
xf86-video-xgixp-1.7.99.3.tar.bz2
New:
----
intel_check_kms_on_probe.diff
kms-blacklist.tar.bz2
xf86-video-intel-copy-fb.diff
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ xorg-x11-driver-video.spec ++++++
--- /var/tmp/diff_new_pack.ITMWiw/_old 2010-04-13 21:12:25.000000000 +0200
+++ /var/tmp/diff_new_pack.ITMWiw/_new 2010-04-13 21:12:25.000000000 +0200
@@ -17,13 +17,13 @@
# norootforbuild
-%define moblin 0
+%define broken_kms_blacklist 0
Name: xorg-x11-driver-video
BuildRequires: Mesa-devel libdrm-devel pkgconfig xorg-x11-proto-devel xorg-x11-server-sdk
Url: http://xorg.freedesktop.org/
Version: 7.5
-Release: 6
+Release: 7
License: MIT License (or similar)
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Group: System/X11/Servers/XF86_4
@@ -48,7 +48,6 @@
Source14: xf86-video-mga-1.4.11.tar.bz2
Source15: xf86-video-neomagic-1.2.4.tar.bz2
Source16: xf86-video-newport-0.2.3.tar.bz2
-Source17: xf86-video-nsc-2.8.3.tar.bz2
Source18: xf86-video-nv-2.1.17.tar.bz2
Source19: xf86-video-rendition-4.2.3.tar.bz2
Source20: xf86-video-s3-0.6.3.tar.bz2
@@ -63,45 +62,34 @@
Source36: xf86-video-tseng-1.2.3.tar.bz2
Source37: xf86-video-v4l-0.2.0.tar.bz2
Source38: xf86-video-vesa-2.2.1.tar.bz2
-Source39: xf86-video-vga-4.1.0_080718_97e2d12.tar.bz2
Source41: xf86-video-vmware-10.16.9.tar.bz2
Source42: xf86-video-voodoo-1.2.3.tar.bz2
-Source43: xf86-video-impact-0.2.0.tar.bz2
Source44: HALlib-4.1.tar.gz
Source45: xf86-video-intel-2.11.0.tar.bz2
Source46: xf86-video-ati-6.13.0.tar.bz2
-Source48: xf86-video-mga-1.9.100.tar.bz2
-Source50: xf86-video-xgi-1.5.1.tar.bz2
Source51: xf86-video-geode-2.11.6.tar.bz2
-Source53: xf86-video-xgixp-1.7.99.3.tar.bz2
Source54: xf86-video-mach64-6.8.2.tar.bz2
Source55: xf86-video-r128-6.8.1.tar.bz2
Source56: intel-gpu-tools-1.0.2-20100324-7682c42.tar.bz2
Source99: baselibs.conf
Source100: sax2-hwinfo-data.tar.gz
+%if %broken_kms_blacklist
+Source101: kms-blacklist.tar.bz2
+%endif
Patch10: xf86-video-tdfx.diff
Patch12: xf86-video-mga-hal.diff
Patch14: xf86-video-rendition.diff
-Patch16: xf86-video-nsc.diff
-Patch17: xf86-video-nsc-noasm.diff
Patch23: xf86-video-siliconmotion-1.7.3.dif
-Patch30: xf86-video-mga.randr12.diff
Patch35: xf86-video-trident-1.3.3.dif
-Patch41: xf86-video-xgi.diff
Patch46: xf86-video-ati.diff
Patch47: xf86-video-vmware-10.15.2.diff
Patch56: xf86-video-mga-g200se-swcursor.diff
-Patch58: xf86-video-ati-es1000.diff
Patch64: xf86-video-vesa_DefaultRefresh.diff
Patch68: xf86-video-ati-bug474071-fix2.diff
Patch69: xf86-video-ati-ia64_screen_blank.diff
Patch71: xf86-video-fbdev.diff
-Patch103: xf86-video-ati-6.7.197-r128-xvideo.patch
Patch104: xf86-video-ati-disable-dri-bug437651-ia64only.diff
-# Moblin
-%if %moblin
-Patch112: copy-fb.patch
-%endif
+Patch112: xf86-video-intel-copy-fb.diff
Patch130: xf86-video-intel-buildfix.diff
Patch131: xf86-video-ati-bug519261-increase-virtual.diff
Patch132: xf86-video-nv-bug519261-increase-virtual.diff
@@ -111,6 +99,7 @@
Patch136: xf86-video-nv-commit-250a3a7.diff
Patch137: xf86-video-newport-commit-48f48e5.diff
Patch138: xf86-video-intel-mbp_backlight.diff
+Patch139: intel_check_kms_on_probe.diff
%description
This package contains X.Org video drivers.
@@ -125,16 +114,6 @@
%ifnarch %ix86
rm -rf xf86-video-geode*
%endif
-ln -snf mga.man xf86-video-mga-1.9.100/man/mgarandr12.man
-#pushd xf86-video-r128-*
-#%ifnarch ppc ppc64
-### not adjusted yet to mach64/r128/radeon driver split
-#%patch103 -p1
-#%endif
-#popd
-pushd xf86-video-mga-1.9.100
-%patch30 -p1
-popd
pushd xf86-video-trident-1.3.3
%patch35 -p0
popd
@@ -151,16 +130,9 @@
pushd xf86-video-rendition-*
%patch14
popd
-pushd xf86-video-nsc-*
-%patch16 -p1
-%patch17 -p0
-popd
pushd xf86-video-siliconmotion-*
%patch23 -p0
popd
-pushd xf86-video-xgi-*
-%patch41
-popd
pushd xf86-video-ati-*
%patch46
%ifarch ia64
@@ -174,8 +146,6 @@
%patch64 -p1
popd
pushd xf86-video-ati-*
-### FIXME
-#%patch58 -p1
%patch68 -p2
%patch69 -p2
%patch131 -p1
@@ -184,11 +154,10 @@
%patch71
popd
pushd xf86-video-intel-*
-%if %moblin
%patch112 -p1
-%endif
%patch130 -p0
%patch138 -p1
+%patch139 -p1
popd
pushd xf86-video-nv-*
%patch132 -p1
@@ -202,54 +171,25 @@
pushd xf86-video-newport-*
%patch137 -p1
popd
-# xgi driver doesn't build on ppc/ppc64 due to endianess
-%ifarch ppc ppc64
-rm -rf xf86-video-xgi-*
-%endif
%build
-for dir in xf86-video-nv-* \
- xf86-video-ati-6.13.* \
- $(ls -d xf86-video-* | grep -v -e xf86-video-impact \
- -e xf86-video-nv \
- -e xf86-video-mga-1.9.100 \
- -e xf86-video-ati-6.13 \
- -e xf86-video-xgixp \
- -e xf86-video-xgi \
- -e xf86-video-vga \
- -e xf86-video-nsc \
- ) intel-gpu-tools-*; do
+for dir in $(ls -d xf86-video-*) intel-gpu-tools-*; do
pushd $dir
case $dir in
- xf86-video-mga-1.4.11 | \
- xf86-video-intel-* | \
- xf86-video-ati-6.13.* | \
- xf86-video-xgixp | \
- xf86-video-nsc-*) autoreconf -fi ;;
+ xf86-video-mga-*) autoreconf -fi ;;
*) ;;
esac
- ./configure CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing" \
- --prefix=/usr --libdir=%{_libdir} --mandir=%{_mandir}
+ %configure CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing"
%{__make} %{?jobs:-j%jobs}
popd
done
%install
-for dir in xf86-video-nv-* \
- xf86-video-ati-6.13.* \
- $(ls -d xf86-video-* | grep -v -e xf86-video-impact \
- -e xf86-video-nv \
- -e xf86-video-mga-1.9.100 \
- -e xf86-video-ati-6.13 \
- -e xf86-video-xgixp \
- -e xf86-video-xgi \
- -e xf86-video-vga \
- -e xf86-video-nsc \
- ) intel-gpu-tools-*; do
+for dir in $(ls -d xf86-video-*) intel-gpu-tools-*; do
make -C $dir install DESTDIR=$RPM_BUILD_ROOT
done
%ifarch %ix86
-pushd xf86-video-mga-1.4.11/src
+pushd xf86-video-mga-*/src
gcc -m32 \
-o $RPM_BUILD_ROOT%{_libdir}/xorg/modules/drivers/mgahal_drv.so \
-shared \
@@ -258,6 +198,9 @@
popd
%endif
tar xf $RPM_SOURCE_DIR/sax2-hwinfo-data.tar.gz -C $RPM_BUILD_ROOT
+%if %broken_kms_blacklist
+tar xf $RPM_SOURCE_DIR/kms-blacklist.tar.bz2 -C $RPM_BUILD_ROOT
+%endif
%clean
rm -rf "$RPM_BUILD_ROOT"
@@ -291,6 +234,12 @@
%dir /usr/share/sax/sysp/maps/update
%dir /var/lib/hardware
%dir /var/lib/hardware/ids
+%if %broken_kms_blacklist
+%config /etc/X11/kms-blacklist.local
+/etc/X11/kms-blacklist.nouveau
+/etc/X11/kms-blacklist.radeon
+/etc/modprobe.d/99-kms.conf
+%endif
/usr/bin/intel_*
%{_libdir}/lib*
%{_libdir}/xorg/modules/
@@ -298,6 +247,9 @@
%{_mandir}/man4/*
/usr/share/sax/api/data/cdb/Cards.20.%{name}
/usr/share/sax/sysp/maps/update/Identity.map.20.%{name}
+%if %broken_kms_blacklist
+/sbin/kms_loader.sh
+%endif
/var/lib/hardware/ids/20.%{name}
%changelog
++++++ intel_check_kms_on_probe.diff ++++++
diff --git a/src/i810_driver.c b/src/i810_driver.c
index 3109834..5760ba0 100644
--- a/src/i810_driver.c
+++ b/src/i810_driver.c
@@ -475,6 +475,8 @@ static Bool intel_pci_probe (DriverPtr driver,
break;
#endif
default:
+ if (! i830_kernel_mode_enabled(scrn))
+ return FALSE;
intel_init_scrn(scrn);
break;
}
diff --git a/src/i830.h b/src/i830.h
index 43c5887..a0cad4b 100644
--- a/src/i830.h
+++ b/src/i830.h
@@ -394,6 +394,7 @@ unsigned long intel_get_pixmap_pitch(PixmapPtr pixmap);
#include "i830_batchbuffer.h"
/* I830 specific functions */
+extern Bool i830_kernel_mode_enabled(ScrnInfoPtr scrn);
extern void IntelEmitInvarientState(ScrnInfoPtr scrn);
extern void I830EmitInvarientState(ScrnInfoPtr scrn);
extern void I915EmitInvarientState(ScrnInfoPtr scrn);
diff --git a/src/i830_driver.c b/src/i830_driver.c
index 40ad9c3..02086ff 100644
--- a/src/i830_driver.c
+++ b/src/i830_driver.c
@@ -394,7 +394,8 @@ Bool i830_tiled_width(intel_screen_private *intel, int *width, int cpp)
* DRM mode setting Linux only at this point... later on we could
* add a wrapper here.
*/
-static Bool i830_kernel_mode_enabled(ScrnInfoPtr scrn)
+/* Required in probe(), thus exported */
+Bool i830_kernel_mode_enabled(ScrnInfoPtr scrn)
{
struct pci_device *PciInfo;
EntityInfoPtr pEnt;
++++++ xf86-video-ati-bug474071-fix2.diff ++++++
--- /var/tmp/diff_new_pack.ITMWiw/_old 2010-04-13 21:12:26.000000000 +0200
+++ /var/tmp/diff_new_pack.ITMWiw/_new 2010-04-13 21:12:26.000000000 +0200
@@ -1,8 +1,8 @@
-Index: xorg-x11-driver-video-7.4/xf86-video-ati-6.12.2/src/radeon_driver.c
+Index: xorg-x11-driver-video-7.5/xf86-video-ati-6.13.0/src/radeon_driver.c
===================================================================
---- xorg-x11-driver-video-7.4/xf86-video-ati-6.12.2.orig/src/radeon_driver.c
-+++ xorg-x11-driver-video-7.4/xf86-video-ati-6.12.2/src/radeon_driver.c
-@@ -213,6 +213,7 @@ struct RADEONInt10Save {
+--- xorg-x11-driver-video-7.5/xf86-video-ati-6.13.0.orig/src/radeon_driver.c
++++ xorg-x11-driver-video-7.5/xf86-video-ati-6.13.0/src/radeon_driver.c
+@@ -223,6 +223,7 @@ struct RADEONInt10Save {
uint32_t MEM_CNTL;
uint32_t MEMSIZE;
uint32_t MPP_TB_CONFIG;
@@ -10,7 +10,7 @@
};
static Bool RADEONMapMMIO(ScrnInfoPtr pScrn);
-@@ -268,14 +269,17 @@ RADEONPreInt10Save(ScrnInfoPtr pScrn, vo
+@@ -278,14 +279,17 @@ RADEONPreInt10Save(ScrnInfoPtr pScrn, vo
RADEONInfoPtr info = RADEONPTR(pScrn);
unsigned char *RADEONMMIO = info->MMIO;
uint32_t CardTmp;
@@ -30,7 +30,7 @@
/*
* Zap MEM_CNTL and set MPP_TB_CONFIG<31:24> to 4
*/
-@@ -337,6 +341,14 @@ RADEONPostInt10Check(ScrnInfoPtr pScrn,
+@@ -347,6 +351,14 @@ RADEONPostInt10Check(ScrnInfoPtr pScrn,
CardTmp |= (pSave->MPP_TB_CONFIG & 0xff000000u);
OUTREG(RADEON_MPP_TB_CONFIG, CardTmp);
}
@@ -45,7 +45,7 @@
}
/* Allocate our private RADEONInfoRec */
-@@ -2852,7 +2864,7 @@ Bool RADEONPreInit(ScrnInfoPtr pScrn, in
+@@ -3014,7 +3026,7 @@ Bool RADEONPreInit(ScrnInfoPtr pScrn, in
goto fail1;
}
++++++ xf86-video-ati-bug519261-increase-virtual.diff ++++++
--- /var/tmp/diff_new_pack.ITMWiw/_old 2010-04-13 21:12:26.000000000 +0200
+++ /var/tmp/diff_new_pack.ITMWiw/_new 2010-04-13 21:12:26.000000000 +0200
@@ -1,6 +1,8 @@
---- xf86-video-ati-6.12.191/src/radeon_driver.c.orig 2010-03-03 04:45:29.000000000 +0100
-+++ xf86-video-ati-6.12.191/src/radeon_driver.c 2010-03-03 04:47:17.000000000 +0100
-@@ -3223,6 +3223,21 @@ Bool RADEONPreInit(ScrnInfoPtr pScrn, in
+Index: xf86-video-ati-6.13.0/src/radeon_driver.c
+===================================================================
+--- xf86-video-ati-6.13.0.orig/src/radeon_driver.c
++++ xf86-video-ati-6.13.0/src/radeon_driver.c
+@@ -3221,6 +3221,21 @@ Bool RADEONPreInit(ScrnInfoPtr pScrn, in
if (!RADEONPreInitControllers(pScrn))
goto fail;
++++++ xf86-video-ati-disable-dri-bug437651-ia64only.diff ++++++
--- /var/tmp/diff_new_pack.ITMWiw/_old 2010-04-13 21:12:26.000000000 +0200
+++ /var/tmp/diff_new_pack.ITMWiw/_new 2010-04-13 21:12:26.000000000 +0200
@@ -1,11 +1,9 @@
-Index: xf86-video-ati-6.9.0/src/radeon_driver.c
-===================================================================
---- xf86-video-ati-6.9.0.orig/src/radeon_driver.c
-+++ xf86-video-ati-6.9.0/src/radeon_driver.c
-@@ -2124,7 +2124,7 @@ static Bool RADEONPreInitDRI(ScrnInfoPtr
+--- xf86-video-ati-6.13.0/src/radeon_driver.c.orig 2010-03-15 17:27:28.000000000 +0100
++++ xf86-video-ati-6.13.0/src/radeon_driver.c 2010-04-10 11:04:12.000000000 +0200
+@@ -2358,7 +2358,7 @@ static Bool RADEONPreInitDRI(ScrnInfoPtr
+ }
}
-
- if (!xf86ReturnOptValBool(info->Options, OPTION_DRI, TRUE)) {
+ if (!xf86ReturnOptValBool(info->Options, OPTION_DRI, FALSE)) {
xf86DrvMsg(pScrn->scrnIndex, X_INFO,
++++++ xf86-video-ati-ia64_screen_blank.diff ++++++
--- /var/tmp/diff_new_pack.ITMWiw/_old 2010-04-13 21:12:26.000000000 +0200
+++ /var/tmp/diff_new_pack.ITMWiw/_new 2010-04-13 21:12:26.000000000 +0200
@@ -1,8 +1,8 @@
-Index: xorg-x11-driver-video-7.4/xf86-video-ati-6.12.2/src/radeon_driver.c
+Index: xorg-x11-driver-video-7.5/xf86-video-ati-6.13.0/src/radeon_driver.c
===================================================================
---- xorg-x11-driver-video-7.4/xf86-video-ati-6.12.2.orig/src/radeon_driver.c
-+++ xorg-x11-driver-video-7.4/xf86-video-ati-6.12.2/src/radeon_driver.c
-@@ -214,6 +214,7 @@ struct RADEONInt10Save {
+--- xorg-x11-driver-video-7.5/xf86-video-ati-6.13.0.orig/src/radeon_driver.c
++++ xorg-x11-driver-video-7.5/xf86-video-ati-6.13.0/src/radeon_driver.c
+@@ -224,6 +224,7 @@ struct RADEONInt10Save {
uint32_t MEMSIZE;
uint32_t MPP_TB_CONFIG;
unsigned char MISC_OUT;
@@ -10,7 +10,7 @@
};
static Bool RADEONMapMMIO(ScrnInfoPtr pScrn);
-@@ -263,13 +264,67 @@ RADEONEntPtr RADEONEntPriv(ScrnInfoPtr p
+@@ -273,13 +274,67 @@ RADEONEntPtr RADEONEntPriv(ScrnInfoPtr p
return pPriv->ptr;
}
@@ -79,7 +79,7 @@
if (!IS_AVIVO_VARIANT) {
OUTREG(0,RADEON_MEM_CNTL);
-@@ -277,8 +332,9 @@ RADEONPreInt10Save(ScrnInfoPtr pScrn, vo
+@@ -287,8 +342,9 @@ RADEONPreInt10Save(ScrnInfoPtr pScrn, vo
SaveStruct.MEM_CNTL = INREG(RADEON_MEM_CNTL);
SaveStruct.MEMSIZE = INREG(RADEON_CONFIG_MEMSIZE);
SaveStruct.MPP_TB_CONFIG = INREG(RADEON_MPP_TB_CONFIG);
@@ -90,7 +90,7 @@
#endif
/*
* Zap MEM_CNTL and set MPP_TB_CONFIG<31:24> to 4
-@@ -342,12 +398,7 @@ RADEONPostInt10Check(ScrnInfoPtr pScrn,
+@@ -352,12 +408,7 @@ RADEONPostInt10Check(ScrnInfoPtr pScrn,
OUTREG(RADEON_MPP_TB_CONFIG, CardTmp);
}
#if !defined(__powerpc__) && !defined(__sparc__)
++++++ xf86-video-intel-buildfix.diff ++++++
--- /var/tmp/diff_new_pack.ITMWiw/_old 2010-04-13 21:12:26.000000000 +0200
+++ /var/tmp/diff_new_pack.ITMWiw/_new 2010-04-13 21:12:26.000000000 +0200
@@ -1,6 +1,7 @@
-diff -u -p src/xvmc.orig//i965_xvmc.c src/xvmc/i965_xvmc.c
---- src/xvmc.orig//i965_xvmc.c 2009-12-01 18:29:34.000000000 +0100
-+++ src/xvmc/i965_xvmc.c 2009-12-01 18:29:59.000000000 +0100
+Index: src/xvmc/i965_xvmc.c
+===================================================================
+--- src/xvmc/i965_xvmc.c.orig
++++ src/xvmc/i965_xvmc.c
@@ -219,6 +219,7 @@ static int free_object(struct media_stat
for (i = 0; i < MAX_SURFACE_NUM; i++)
FREE_ONE_BO(s->binding_table.surface_states[i].bo);
@@ -9,10 +10,10 @@
}
static int alloc_object(struct media_state *s)
-Common subdirectories: src/xvmc.orig//shader and src/xvmc/shader
-diff -u -p src/xvmc.orig//xvmc_vld.c src/xvmc/xvmc_vld.c
---- src/xvmc.orig//xvmc_vld.c 2009-12-01 18:29:34.000000000 +0100
-+++ src/xvmc/xvmc_vld.c 2009-12-01 18:30:17.000000000 +0100
+Index: src/xvmc/xvmc_vld.c
+===================================================================
+--- src/xvmc/xvmc_vld.c.orig
++++ src/xvmc/xvmc_vld.c
@@ -370,6 +370,7 @@ static int free_object(struct media_stat
FREE_ONE_BO(s->mb_data.bo);
FREE_ONE_BO(s->cs_object.bo);
++++++ xf86-video-intel-copy-fb.diff ++++++
commit b209cbc72f8d524b2c4c6d0e6e6acf8385e96062
Author: Kristian Høgsberg
Date: Tue Feb 24 10:49:45 2009 -0500
Copy initial framebuffer contents when starting with -br.
Index: xf86-video-intel-2.11.0/src/drmmode_display.c
===================================================================
--- xf86-video-intel-2.11.0.orig/src/drmmode_display.c
+++ xf86-video-intel-2.11.0/src/drmmode_display.c
@@ -36,6 +36,8 @@
#include
#include
+#include
+
#include "xorgVersion.h"
#include "i830.h"
@@ -856,7 +858,14 @@ drmmode_output_dpms(xf86OutputPtr output
drmmode_ptr drmmode = drmmode_output->drmmode;
int i;
drmModePropertyPtr props;
+ intel_screen_private *intel = intel_get_screen_private(output->scrn);
+#if 0
+ /* xf86Crtc.c calls dpms off in set desired modes, so ignore
+ * the request if we're starting up. */
+ if (intel->starting)
+ return;
+#endif
for (i = 0; i < koutput->count_props; i++) {
props = drmModeGetProperty(drmmode->fd, koutput->props[i]);
if (!props)
@@ -1308,6 +1317,8 @@ drmmode_xf86crtc_resize (ScrnInfoPtr scr
if (old_front)
drm_intel_bo_unreference(old_front);
+ scrn->canDoBGNoneRoot = TRUE;
+
return TRUE;
fail:
@@ -1486,6 +1497,99 @@ drmmode_get_pipe_from_crtc_id(drm_intel_
return drm_intel_get_pipe_from_crtc_id (bufmgr, drmmode_crtc->mode_crtc->crtc_id);
}
+static PixmapPtr
+drmmode_create_pixmap_for_fbcon(ScrnInfoPtr pScrn)
+{
+ xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(pScrn);
+ drmmode_crtc_private_ptr drmmode_crtc = xf86_config->crtc[0]->driver_private;
+ ScreenPtr pScreen = screenInfo.screens[pScrn->scrnIndex];
+ drmmode_ptr drmmode = drmmode_crtc->drmmode;
+ intel_screen_private *intel = intel_get_screen_private(pScrn);
+ drmModeFBPtr fbcon;
+ struct drm_gem_flink flink;
+ drm_intel_bo *bo;
+ PixmapPtr pixmap = NULL;
+ int i;
+
+ for (i = 0; i < drmmode->mode_res->count_crtcs; i++) {
+ drmmode_crtc = xf86_config->crtc[i]->driver_private;
+ if (drmmode_crtc->mode_crtc->buffer_id == 0)
+ continue;
+ fbcon = drmModeGetFB(drmmode->fd,
+ drmmode_crtc->mode_crtc->buffer_id);
+ if (fbcon != NULL)
+ break;
+ }
+ if (i == drmmode->mode_res->count_crtcs)
+ return NULL;
+
+ flink.handle = fbcon->handle;
+ if (ioctl(drmmode->fd, DRM_IOCTL_GEM_FLINK, &flink) < 0) {
+ xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
+ "Couldn't flink fbcon handle\n");
+ return NULL;
+ }
+
+ bo = drm_intel_bo_gem_create_from_name(intel->bufmgr,
+ "fbcon", flink.name);
+ if (bo == NULL) {
+ xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
+ "Couldn't allocate bo for fbcon handle\n");
+ return NULL;
+ }
+
+ pixmap = GetScratchPixmapHeader(pScreen,
+ fbcon->width, fbcon->height,
+ fbcon->depth, fbcon->bpp,
+ fbcon->pitch, NULL);
+
+ if (pixmap == NULL) {
+ xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
+ "Couldn't allocate pixmap fbcon contents\n");
+ return NULL;
+ }
+
+ i830_set_pixmap_bo(pixmap, bo);
+ drm_intel_bo_unreference(bo);
+ drmModeFreeFB(fbcon);
+
+ return pixmap;
+}
+void drmmode_copy_fb(ScrnInfoPtr pScrn)
+{
+ ScreenPtr pScreen = screenInfo.screens[pScrn->scrnIndex];
+ intel_screen_private *intel = intel_get_screen_private(pScrn);
+ PixmapPtr src, dst;
+ unsigned int pitch = pScrn->displayWidth * intel->cpp;
+
+ src = drmmode_create_pixmap_for_fbcon(pScrn);
+ if (src == NULL) {
+ xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
+ "Couldn't create pixmap for fbcon\n");
+ return;
+ }
+
+ /* We dont have a screen Pixmap yet */
+ dst = GetScratchPixmapHeader(pScreen,
+ pScrn->virtualX, pScrn->virtualY,
+ pScrn->depth, pScrn->bitsPerPixel,
+ pitch,
+ NULL);
+ i830_set_pixmap_bo(dst, intel->front_buffer);
+
+ intel->uxa_driver->prepare_copy(src, dst, -1, -1, GXcopy, FB_ALLONES);
+
+ intel->uxa_driver->copy(dst, 0, 0, 0, 0,
+ pScrn->virtualX, pScrn->virtualY);
+
+ intel->uxa_driver->done_copy(dst);
+
+ intel_batch_submit(pScrn);
+
+ (*pScreen->DestroyPixmap)(src);
+ (*pScreen->DestroyPixmap)(dst);
+}
+
/* for the drmmode overlay */
int
drmmode_crtc_id(xf86CrtcPtr crtc)
Index: xf86-video-intel-2.11.0/src/i830.h
===================================================================
--- xf86-video-intel-2.11.0.orig/src/i830.h
+++ xf86-video-intel-2.11.0/src/i830.h
@@ -420,6 +420,8 @@ extern int drmmode_get_pipe_from_crtc_id
extern int drmmode_output_dpms_status(xf86OutputPtr output);
extern int drmmode_crtc_id(xf86CrtcPtr crtc);
+extern void drmmode_copy_fb(ScrnInfoPtr pScrn);
+
extern Bool i830_crtc_on(xf86CrtcPtr crtc);
extern int i830_crtc_to_pipe(xf86CrtcPtr crtc);
extern Bool I830AccelInit(ScreenPtr pScreen);
Index: xf86-video-intel-2.11.0/src/i830_driver.c
===================================================================
--- xf86-video-intel-2.11.0.orig/src/i830_driver.c
+++ xf86-video-intel-2.11.0/src/i830_driver.c
@@ -1391,6 +1391,8 @@ static Bool I830EnterVT(int scrnIndex, i
i830_set_gem_max_sizes(scrn);
+ drmmode_copy_fb(scrn);
+
if (!xf86SetDesiredModes(scrn))
return FALSE;
++++++ xf86-video-intel-mbp_backlight.diff ++++++
--- /var/tmp/diff_new_pack.ITMWiw/_old 2010-04-13 21:12:26.000000000 +0200
+++ /var/tmp/diff_new_pack.ITMWiw/_new 2010-04-13 21:12:26.000000000 +0200
@@ -7,11 +7,11 @@
src/drmmode_display.c | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
-diff --git a/src/drmmode_display.c b/src/drmmode_display.c
-index 9e56698..c808cfd 100644
---- a/src/drmmode_display.c
-+++ b/src/drmmode_display.c
-@@ -101,6 +101,7 @@ static char *backlight_interfaces[] = {
+Index: xf86-video-intel-2.11.0/src/drmmode_display.c
+===================================================================
+--- xf86-video-intel-2.11.0.orig/src/drmmode_display.c
++++ xf86-video-intel-2.11.0/src/drmmode_display.c
+@@ -103,6 +103,7 @@ static char *backlight_interfaces[] = {
"asus-laptop",
"eeepc",
"thinkpad_screen",
@@ -19,5 +19,3 @@
"acpi_video1",
"acpi_video0",
"fujitsu-laptop",
---
-1.6.6.1
++++++ xf86-video-newport-commit-48f48e5.diff ++++++
--- /var/tmp/diff_new_pack.ITMWiw/_old 2010-04-13 21:12:26.000000000 +0200
+++ /var/tmp/diff_new_pack.ITMWiw/_new 2010-04-13 21:12:26.000000000 +0200
@@ -10,10 +10,10 @@
Reported-and-tested-by: Bernhard R. Link
Signed-off-by: Julien Cristau
-diff --git a/src/newport_driver.c b/src/newport_driver.c
-index 64b643a..6bd7c9f 100644
---- a/src/newport_driver.c
-+++ b/src/newport_driver.c
+Index: xf86-video-newport-0.2.3/src/newport_driver.c
+===================================================================
+--- xf86-video-newport-0.2.3.orig/src/newport_driver.c
++++ xf86-video-newport-0.2.3/src/newport_driver.c
@@ -102,36 +102,6 @@ static SymTabRec NewportChipsets[] = {
{-1, NULL }
};
@@ -51,7 +51,7 @@
static MODULESETUPPROTO(newportSetup);
static XF86ModuleVersionInfo newportVersRec =
-@@ -172,14 +142,6 @@ newportSetup(pointer module, pointer opts, int *errmaj, int *errmin)
+@@ -172,14 +142,6 @@ newportSetup(pointer module, pointer opt
xf86AddDriver(&NEWPORT, module, 0);
/*
@@ -66,7 +66,7 @@
* The return value must be non-NULL on success even though
* there is no TearDownProc.
*/
-@@ -190,8 +152,6 @@ newportSetup(pointer module, pointer opts, int *errmaj, int *errmin)
+@@ -190,8 +152,6 @@ newportSetup(pointer module, pointer opt
}
}
@@ -75,7 +75,7 @@
typedef enum {
OPTION_BITPLANES,
OPTION_BUS_ID,
-@@ -486,7 +446,6 @@ NewportPreInit(ScrnInfoPtr pScrn, int flags)
+@@ -486,7 +446,6 @@ NewportPreInit(ScrnInfoPtr pScrn, int fl
NewportFreeRec(pScrn);
return FALSE;
}
@@ -83,7 +83,7 @@
/* Load ramdac modules */
if (pNewport->hwCursor) {
-@@ -494,7 +453,6 @@ NewportPreInit(ScrnInfoPtr pScrn, int flags)
+@@ -494,7 +453,6 @@ NewportPreInit(ScrnInfoPtr pScrn, int fl
NewportFreeRec(pScrn);
return FALSE;
}
@@ -91,7 +91,7 @@
}
/* Load ShadowFB module */
-@@ -502,7 +460,6 @@ NewportPreInit(ScrnInfoPtr pScrn, int flags)
+@@ -502,7 +460,6 @@ NewportPreInit(ScrnInfoPtr pScrn, int fl
NewportFreeRec(pScrn);
return FALSE;
}
@@ -99,7 +99,7 @@
return TRUE;
}
-@@ -596,8 +553,6 @@ NewportScreenInit(int index, ScreenPtr pScreen, int argc, char **argv)
+@@ -596,8 +553,6 @@ NewportScreenInit(int index, ScreenPtr p
if (!pNewport->NoAccel) {
if (!xf86LoadSubModule(pScrn, "xaa"))
pNewport->NoAccel = TRUE;
++++++ xf86-video-nv-bug519261-increase-virtual.diff ++++++
--- /var/tmp/diff_new_pack.ITMWiw/_old 2010-04-13 21:12:26.000000000 +0200
+++ /var/tmp/diff_new_pack.ITMWiw/_new 2010-04-13 21:12:26.000000000 +0200
@@ -1,8 +1,8 @@
-Index: xf86-video-nv-2.1.14/src/g80_driver.c
+Index: xf86-video-nv-2.1.17/src/g80_driver.c
===================================================================
---- xf86-video-nv-2.1.14/src/g80_driver.c
-+++ xf86-video-nv-2.1.14/src/g80_driver.c
-@@ -390,6 +390,22 @@ G80PreInit(ScrnInfoPtr pScrn, int flags)
+--- xf86-video-nv-2.1.17.orig/src/g80_driver.c
++++ xf86-video-nv-2.1.17/src/g80_driver.c
+@@ -402,6 +402,22 @@ G80PreInit(ScrnInfoPtr pScrn, int flags)
/* Create the crtcs */
G80DispCreateCrtcs(pScrn);
++++++ xf86-video-nv-commit-250a3a7.diff ++++++
--- /var/tmp/diff_new_pack.ITMWiw/_old 2010-04-13 21:12:26.000000000 +0200
+++ /var/tmp/diff_new_pack.ITMWiw/_new 2010-04-13 21:12:26.000000000 +0200
@@ -9,10 +9,10 @@
Signed-off-by: Aaron Plattner
-diff --git a/man/nv.man b/man/nv.man
-index d7d8ae9..228f1da 100644
---- a/man/nv.man
-+++ b/man/nv.man
+Index: xf86-video-nv-2.1.17/man/nv.man
+===================================================================
+--- xf86-video-nv-2.1.17.orig/man/nv.man
++++ xf86-video-nv-2.1.17/man/nv.man
@@ -57,7 +57,7 @@ NV30, NV31, NV34, NV35, NV36, NV37, NV38
NV40, NV41, NV43, NV44, NV45, C51
.TP 22
@@ -22,10 +22,10 @@
.TP 22
.B GeForce 8XXX, GeForce 9XXX, nForce 7, GeForce G, ION
G8x, G9x, GT21x, MCP7x
-diff --git a/src/nv_driver.c b/src/nv_driver.c
-index 99d172f..0d017f9 100644
---- a/src/nv_driver.c
-+++ b/src/nv_driver.c
+Index: xf86-video-nv-2.1.17/src/nv_driver.c
+===================================================================
+--- xf86-video-nv-2.1.17.orig/src/nv_driver.c
++++ xf86-video-nv-2.1.17/src/nv_driver.c
@@ -125,7 +125,7 @@ _X_EXPORT DriverRec NV = {
#endif
};
++++++ xf86-video-nv-commit-347625b.diff ++++++
--- /var/tmp/diff_new_pack.ITMWiw/_old 2010-04-13 21:12:26.000000000 +0200
+++ /var/tmp/diff_new_pack.ITMWiw/_new 2010-04-13 21:12:26.000000000 +0200
@@ -6,10 +6,10 @@
Signed-off-by: Aaron Plattner
-diff --git a/src/nv_driver.c b/src/nv_driver.c
-index 31fe78b..99d172f 100644
---- a/src/nv_driver.c
-+++ b/src/nv_driver.c
+Index: xf86-video-nv-2.1.17/src/nv_driver.c
+===================================================================
+--- xf86-video-nv-2.1.17.orig/src/nv_driver.c
++++ xf86-video-nv-2.1.17/src/nv_driver.c
@@ -380,6 +380,9 @@ static SymTabRec NVKnownChipsets[] =
{ 0x10DE03D2, "GeForce 6100 nForce 400" },
{ 0x10DE03D5, "GeForce 6100 nForce 420" },
@@ -36,10 +36,10 @@
case 0x03D0:
pNv->Architecture = NV_ARCH_40;
break;
-diff --git a/src/nv_hw.c b/src/nv_hw.c
-index 83eeab2..9291912 100644
---- a/src/nv_hw.c
-+++ b/src/nv_hw.c
+Index: xf86-video-nv-2.1.17/src/nv_hw.c
+===================================================================
+--- xf86-video-nv-2.1.17.orig/src/nv_hw.c
++++ xf86-video-nv-2.1.17/src/nv_hw.c
@@ -890,7 +890,8 @@ void NVCalcStateExt (
case NV_ARCH_30:
default:
++++++ xf86-video-nv-commit-e6b0463.diff ++++++
--- /var/tmp/diff_new_pack.ITMWiw/_old 2010-04-13 21:12:26.000000000 +0200
+++ /var/tmp/diff_new_pack.ITMWiw/_new 2010-04-13 21:12:26.000000000 +0200
@@ -6,10 +6,10 @@
Signed-off-by: Aaron Plattner
-diff --git a/src/g80_output.c b/src/g80_output.c
-index 887208b..5744d94 100644
---- a/src/g80_output.c
-+++ b/src/g80_output.c
+Index: xf86-video-nv-2.1.17/src/g80_output.c
+===================================================================
+--- xf86-video-nv-2.1.17.orig/src/g80_output.c
++++ xf86-video-nv-2.1.17/src/g80_output.c
@@ -481,19 +481,22 @@ G80CreateOutputs(ScrnInfoPtr pScrn)
if(pNv->lvds.present) {
@@ -23,9 +23,6 @@
- if(pNv->lvds.i2cPort != -1) {
- char i2cName[16];
+ pPriv->scale = G80_SCALE_ASPECT;
-+
-+ if(pNv->lvds.i2cPort != -1) {
-+ char i2cName[16];
- snprintf(i2cName, sizeof(i2cName), "I2C%i (LVDS)", pNv->lvds.i2cPort);
- pPriv->i2c = G80I2CInit(pScrn, i2cName, pNv->lvds.i2cPort);
@@ -33,6 +30,9 @@
- xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
- "Failed to initialize I2C for port %i (LVDS)!\n",
- pNv->lvds.i2cPort);
++ if(pNv->lvds.i2cPort != -1) {
++ char i2cName[16];
++
+ snprintf(i2cName, sizeof(i2cName), "I2C%i (LVDS)", pNv->lvds.i2cPort);
+ pPriv->i2c = G80I2CInit(pScrn, i2cName, pNv->lvds.i2cPort);
+ if(!pPriv->i2c) {
++++++ xf86-video-siliconmotion-1.7.3.dif ++++++
--- /var/tmp/diff_new_pack.ITMWiw/_old 2010-04-13 21:12:27.000000000 +0200
+++ /var/tmp/diff_new_pack.ITMWiw/_new 2010-04-13 21:12:27.000000000 +0200
@@ -1,6 +1,8 @@
---- src/smi.h
-+++ src/smi.h 2010/03/18 11:05:11
-@@ -147,7 +147,13 @@
+Index: src/smi.h
+===================================================================
+--- src/smi.h.orig
++++ src/smi.h
+@@ -147,7 +147,13 @@ typedef struct
int Bpp; /* Bytes per pixel */
int MCLK; /* Memory Clock */
int MXCLK; /* MSOC Clock for local sdram */
@@ -15,9 +17,11 @@
CloseScreenProcPtr CloseScreen; /* Pointer used to save wrapped
CloseScreen function */
---- src/smi_driver.c
-+++ src/smi_driver.c 2010/03/18 11:10:23
-@@ -807,18 +807,16 @@
+Index: src/smi_driver.c
+===================================================================
+--- src/smi_driver.c.orig
++++ src/smi_driver.c
+@@ -807,18 +807,16 @@ SMI_PreInit(ScrnInfoPtr pScrn, int flags
* Setup the ClockRanges, which describe what clock ranges are available,
* and what sort of modes they can be used for.
*/
@@ -41,9 +45,11 @@
if(!SMI_CrtcPreInit(pScrn))
LEAVE(FALSE);
---- src/smi_output.c
-+++ src/smi_output.c 2010/03/18 11:06:00
-@@ -71,10 +71,10 @@
+Index: src/smi_output.c
+===================================================================
+--- src/smi_output.c.orig
++++ src/smi_output.c
+@@ -71,10 +71,10 @@ SMI_OutputModeValid(xf86OutputPtr output
if (mode->HDisplay & 15)
LEAVE(MODE_BAD_WIDTH);
@@ -58,9 +64,11 @@
LEAVE(MODE_CLOCK_RANGE);
}
---- src/smilynx_crtc.c
-+++ src/smilynx_crtc.c 2010/03/18 11:06:32
-@@ -284,14 +284,14 @@
+Index: src/smilynx_crtc.c
+===================================================================
+--- src/smilynx_crtc.c.orig
++++ src/smilynx_crtc.c
+@@ -284,14 +284,14 @@ SMILynx_CrtcModeSet_vga(xf86CrtcPtr crtc
if (SMI_LYNX_SERIES(pSmi->Chipset)) {
SMI_CommonCalcClock(pScrn->scrnIndex, adjusted_mode->Clock,
1, 1, 63, 0, 3,
@@ -79,7 +87,7 @@
®->SR6C, ®->SR6D);
}
-@@ -378,14 +378,14 @@
+@@ -378,14 +378,14 @@ SMILynx_CrtcModeSet_crt(xf86CrtcPtr crtc
if (SMI_LYNX_SERIES(pSmi->Chipset)) {
SMI_CommonCalcClock(pScrn->scrnIndex, adjusted_mode->Clock,
1, 1, 63, 0, 3,
@@ -98,7 +106,7 @@
®->SR6C, ®->SR6D);
}
-@@ -487,14 +487,14 @@
+@@ -487,14 +487,14 @@ SMILynx_CrtcModeSet_lcd(xf86CrtcPtr crtc
if (SMI_LYNX_SERIES(pSmi->Chipset)) {
SMI_CommonCalcClock(pScrn->scrnIndex, adjusted_mode->Clock,
1, 1, 63, 0, 0,
@@ -117,9 +125,11 @@
®->SR6E, ®->SR6F);
}
---- src/smilynx_hw.c
-+++ src/smilynx_hw.c 2010/03/18 11:05:40
-@@ -66,8 +66,8 @@
+Index: src/smilynx_hw.c
+===================================================================
+--- src/smilynx_hw.c.orig
++++ src/smilynx_hw.c
+@@ -66,8 +66,8 @@ SMILynx_HWInit(ScrnInfoPtr pScrn)
if (pSmi->MCLK > 0)
SMI_CommonCalcClock(pScrn->scrnIndex, pSmi->MCLK,
1, 1, 63, 0, 0,
++++++ xf86-video-sis-19070.diff ++++++
--- /var/tmp/diff_new_pack.ITMWiw/_old 2010-04-13 21:12:27.000000000 +0200
+++ /var/tmp/diff_new_pack.ITMWiw/_new 2010-04-13 21:12:27.000000000 +0200
@@ -1,6 +1,8 @@
---- xf86-video-sis-0.10.2/src/sis_driver.c 2009-07-28 09:17:04.000000000 +0400
-+++ xf86-video-sis-8370499d4035ec7a5c8e1f1b04d5a6c404883442/src/sis_driver.c 2009-10-21 18:27:41.000000000 +0400
-@@ -4099,6 +4099,8 @@
+Index: xf86-video-sis-0.10.2/src/sis_driver.c
+===================================================================
+--- xf86-video-sis-0.10.2.orig/src/sis_driver.c
++++ xf86-video-sis-0.10.2/src/sis_driver.c
+@@ -4099,6 +4099,8 @@ SISPreInit(ScrnInfoPtr pScrn, int flags)
case SIS_315H:
case SIS_330:
case SIS_340:
++++++ xf86-video-trident-1.3.3.dif ++++++
--- /var/tmp/diff_new_pack.ITMWiw/_old 2010-04-13 21:12:27.000000000 +0200
+++ /var/tmp/diff_new_pack.ITMWiw/_new 2010-04-13 21:12:27.000000000 +0200
@@ -1,6 +1,8 @@
---- src/blade_accel_exa.c
-+++ src/blade_accel_exa.c 2010/02/25 00:10:48
-@@ -253,6 +253,7 @@
+Index: src/blade_accel_exa.c
+===================================================================
+--- src/blade_accel_exa.c.orig
++++ src/blade_accel_exa.c
+@@ -253,6 +253,7 @@ static void WaitMarker(ScreenPtr pScreen
static Bool PrepareAccess(PixmapPtr pPix, int index)
{
++++++ xf86-video-vmware-10.15.2.diff ++++++
--- /var/tmp/diff_new_pack.ITMWiw/_old 2010-04-13 21:12:27.000000000 +0200
+++ /var/tmp/diff_new_pack.ITMWiw/_new 2010-04-13 21:12:27.000000000 +0200
@@ -2,7 +2,7 @@
===================================================================
--- src/vmware.h.orig
+++ src/vmware.h
-@@ -118,6 +118,11 @@ typedef struct {
+@@ -120,6 +120,11 @@ typedef struct {
unsigned int cursorRemoveFromFB;
unsigned int cursorRestoreToFB;
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org