summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorSandor Nagy2016-01-13 18:22:24 +0100
committerSandor Nagy2016-01-13 18:22:24 +0100
commitca7f7401d0f0b4b47a7b010b0e0ff8b40f7332b1 (patch)
treeefcc915fb422f9ebd6460ddfb54d301b130ed23b
parent726b02e5b0b99e130d51af7e4846fceb6c9dcdd4 (diff)
downloadaur-ca7f7401d0f0b4b47a7b010b0e0ff8b40f7332b1.tar.gz
Update to Xorg 1.18
-rw-r--r--.SRCINFO23
-rw-r--r--PKGBUILD34
-rw-r--r--remove-ImplicitPointerConversions.patch106
-rw-r--r--xf86-video-sisimedia.conf60
-rw-r--r--xf86-video-sisimedia.install5
-rw-r--r--xserver117.patch97
6 files changed, 308 insertions, 17 deletions
diff --git a/.SRCINFO b/.SRCINFO
index b72dd4b62b53..919794f0a569 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,20 +1,21 @@
# Generated by mksrcinfo v8
-# Wed Jan 13 14:31:14 UTC 2016
+# Wed Jan 13 17:21:00 UTC 2016
pkgbase = xf86-video-sisimedia
pkgdesc = X.org SiS 671 video driver
pkgver = 0.9.1
- pkgrel = 10
+ pkgrel = 11
url = http://www.linuxconsulting.ro/xorg-drivers/
+ install = xf86-video-sisimedia.install
arch = i686
arch = x86_64
license = custom
makedepends = xorg-server-devel
- makedepends = X-ABI-VIDEODRV_VERSION=19
+ makedepends = X-ABI-VIDEODRV_VERSION=20
makedepends = xf86dgaproto
depends = glibc
- conflicts = xorg-server<1.16
- conflicts = X-ABI-VIDEODRV_VERSION<19
- conflicts = X-ABI-VIDEODRV_VERSION>=20
+ conflicts = xorg-server<1.18
+ conflicts = X-ABI-VIDEODRV_VERSION<20
+ conflicts = X-ABI-VIDEODRV_VERSION>=21
source = https://sources.archlinux.org/other/xf86-video-sisimedia/xf86-video-sisimedia-0.9.1_20091203.tar.bz2
source = xf86-video-sis-0.9.1-20102701.patch
source = 0002-Remove-XFree86-Misc-PassMessage-support.patch
@@ -40,10 +41,13 @@ pkgbase = xf86-video-sisimedia
source = fix-xv-crash.patch
source = sisimedia-no-xaa.patch
source = sisimedia-xorg-1.13.patch
+ source = remove_mibstore.h.patch
source = deprecated-sym2.patch
source = disable-UploadToScreen-DownloadFromScreen.patch
- source = remove_mibstore.h.patch
+ source = remove-ImplicitPointerConversions.patch
+ source = xserver117.patch
source = COPYING
+ source = xf86-video-sisimedia.conf
sha1sums = 22e6616df49ec82755daae08043a29aaf92fa430
sha1sums = 61715bb86180decde55a56fad9a12d841c89fbb2
sha1sums = 33fdea57187a2758802bcb9572d3a864aaab4d59
@@ -69,10 +73,13 @@ pkgbase = xf86-video-sisimedia
sha1sums = 1fdd74a2aef9455ac5c37d1fe0146d81aa905d2d
sha1sums = 370af234867df98206a98c8cd0a6c89323593f6b
sha1sums = 4ea333d659abe2b78f07511467c5356f39bf8695
+ sha1sums = e130b4b4cafa0d54426a9b9c4735ad4bf46686f5
sha1sums = 9bef0b61c0505cc64464073d73684e6933d3f84c
sha1sums = ff95fd41be43560245caa40adc6b481f2dafca7d
- sha1sums = e130b4b4cafa0d54426a9b9c4735ad4bf46686f5
+ sha1sums = 511564f7422ea78e903d8287c5f282586ab7420e
+ sha1sums = fa1b4bb9b6962f7f3216cd5ac6f1336644390aa5
sha1sums = a64e244f274bcb155f892d0488a1a4b1b2f7d70d
+ sha1sums = 189b32b78109d3387fa9dac30ed58872ce5c9f66
pkgname = xf86-video-sisimedia
diff --git a/PKGBUILD b/PKGBUILD
index 60f230899947..99ca6f21d73e 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,16 +1,18 @@
# $Id: PKGBUILD 231243 2015-02-10 21:19:58Z lcarlier $
-# Maintainer: Jan de Groot <jgc@archlinux.org>
+# Maintainer: Sandor Nagy <sandor.nagy@kdemail.net>
+# Contributor: Jan de Groot <jgc@archlinux.org>
pkgname=xf86-video-sisimedia
pkgver=0.9.1
-pkgrel=10
+pkgrel=11
pkgdesc="X.org SiS 671 video driver"
-arch=(i686 x86_64)
+arch=('i686' 'x86_64')
url="http://www.linuxconsulting.ro/xorg-drivers/"
license=('custom')
depends=('glibc')
-makedepends=('xorg-server-devel' 'X-ABI-VIDEODRV_VERSION=19' 'xf86dgaproto')
-conflicts=('xorg-server<1.16' 'X-ABI-VIDEODRV_VERSION<19' 'X-ABI-VIDEODRV_VERSION>=20')
+makedepends=('xorg-server-devel' 'X-ABI-VIDEODRV_VERSION=20' 'xf86dgaproto')
+conflicts=('xorg-server<1.18' 'X-ABI-VIDEODRV_VERSION<20' 'X-ABI-VIDEODRV_VERSION>=21')
+install="${pkgname}.install"
source=(https://sources.archlinux.org/other/xf86-video-sisimedia/xf86-video-sisimedia-0.9.1_20091203.tar.bz2
xf86-video-sis-0.9.1-20102701.patch
0002-Remove-XFree86-Misc-PassMessage-support.patch
@@ -36,10 +38,13 @@ source=(https://sources.archlinux.org/other/xf86-video-sisimedia/xf86-video-sisi
fix-xv-crash.patch
sisimedia-no-xaa.patch
sisimedia-xorg-1.13.patch
+ remove_mibstore.h.patch
deprecated-sym2.patch
disable-UploadToScreen-DownloadFromScreen.patch
- remove_mibstore.h.patch
- COPYING)
+ remove-ImplicitPointerConversions.patch
+ xserver117.patch
+ COPYING
+ "${pkgname}.conf")
sha1sums=('22e6616df49ec82755daae08043a29aaf92fa430'
'61715bb86180decde55a56fad9a12d841c89fbb2'
'33fdea57187a2758802bcb9572d3a864aaab4d59'
@@ -65,10 +70,13 @@ sha1sums=('22e6616df49ec82755daae08043a29aaf92fa430'
'1fdd74a2aef9455ac5c37d1fe0146d81aa905d2d'
'370af234867df98206a98c8cd0a6c89323593f6b'
'4ea333d659abe2b78f07511467c5356f39bf8695'
+ 'e130b4b4cafa0d54426a9b9c4735ad4bf46686f5'
'9bef0b61c0505cc64464073d73684e6933d3f84c'
'ff95fd41be43560245caa40adc6b481f2dafca7d'
- 'e130b4b4cafa0d54426a9b9c4735ad4bf46686f5'
- 'a64e244f274bcb155f892d0488a1a4b1b2f7d70d')
+ '511564f7422ea78e903d8287c5f282586ab7420e'
+ 'fa1b4bb9b6962f7f3216cd5ac6f1336644390aa5'
+ 'a64e244f274bcb155f892d0488a1a4b1b2f7d70d'
+ '189b32b78109d3387fa9dac30ed58872ce5c9f66')
prepare() {
cd "${srcdir}/xf86-video-sis-${pkgver}"
@@ -107,6 +115,9 @@ prepare() {
sed -i -e 's/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/' configure.ac
+ patch -Np1 -i "${srcdir}/remove-ImplicitPointerConversions.patch"
+ patch -Np1 -i "${srcdir}/xserver117.patch"
+
autoreconf -fi
}
@@ -125,4 +136,9 @@ package() {
install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}"
install -m644 "${srcdir}/COPYING" "${pkgdir}/usr/share/licenses/${pkgname}/"
+
+ if [ ! -f "/etc/X11/xorg.conf.d/${pkgname}.conf" ]; then
+ install -m755 -d "${pkgdir}/etc/X11/xorg.conf.d/"
+ install -m644 "${srcdir}/${pkgname}.conf" "${pkgdir}/etc/X11/xorg.conf.d/"
+ fi
}
diff --git a/remove-ImplicitPointerConversions.patch b/remove-ImplicitPointerConversions.patch
new file mode 100644
index 000000000000..a2b1681787f9
--- /dev/null
+++ b/remove-ImplicitPointerConversions.patch
@@ -0,0 +1,106 @@
+--- a/src/sis_mergedfb.c
++++ b/src/sis_mergedfb.c
+@@ -47,6 +47,30 @@
+ #include "windowstr.h"
+ #endif
+
++#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 5
++#include <inputstr.h> /* for inputInfo */
++#endif
++
++/*
++ * LookupWindow was removed with video abi 11.
++ */
++#if (GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 4)
++#ifndef DixGetAttrAccess
++#define DixGetAttrAccess (1<<4)
++#endif
++#endif
++
++#if (GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 2)
++static inline int
++dixLookupWindow(WindowPtr *pWin, XID id, ClientPtr client, Mask access)
++{
++ *pWin = LookupWindow(id, client);
++ if (!*pWin)
++ return BadWindow;
++ return Success;
++}
++#endif
++
+ void SiSMFBInitMergedFB(ScrnInfoPtr pScrn);
+ void SiSMFBHandleModesCRT2(ScrnInfoPtr pScrn, ClockRangePtr clockRanges);
+ void SiSMFBMakeModeList(ScrnInfoPtr pScrn);
+@@ -2488,10 +2512,12 @@
+ WindowPtr pWin;
+ xPanoramiXGetStateReply rep;
+ register int n;
++ int rc;
+
+ REQUEST_SIZE_MATCH(xPanoramiXGetStateReq);
+- pWin = LookupWindow(stuff->window, client);
+- if(!pWin) return BadWindow;
++ rc = dixLookupWindow(&pWin, stuff->window, client, DixGetAttrAccess);
++ if (rc != Success)
++ return rc;
+
+ rep.type = X_Reply;
+ rep.length = 0;
+@@ -2515,8 +2541,8 @@
+ register int n;
+
+ REQUEST_SIZE_MATCH(xPanoramiXGetScreenCountReq);
+- pWin = LookupWindow(stuff->window, client);
+- if(!pWin) return BadWindow;
++ if(Success != dixLookupWindow(&pWin, stuff->window, client, DixReadAccess))
++ return BadWindow;
+
+ rep.type = X_Reply;
+ rep.length = 0;
+@@ -2540,8 +2566,8 @@
+ register int n;
+
+ REQUEST_SIZE_MATCH(xPanoramiXGetScreenSizeReq);
+- pWin = LookupWindow (stuff->window, client);
+- if(!pWin) return BadWindow;
++ if(Success != dixLookupWindow(&pWin, stuff->window, client, DixReadAccess))
++ return BadWindow;
+
+ rep.type = X_Reply;
+ rep.length = 0;
+@@ -2631,26 +2657,21 @@
+ int lookup_ret;
+
+ REQUEST_SIZE_MATCH(xXineramaSelectInputReq);
+- /*IvansLee define NEW_XORG_VERSION.*/
+- #if NEW_XORG_VERSION == 1
+- pWin = SecurityLookupWindow(stuff->window,client,DixWriteAccess);
+- #else
+- pWin = SecurityLookupWindow(stuff->window,client,SecurityWriteAccess);
+- #endif
+-
+- if(!pWin)
+- return BadWindow;
++ int rc = dixLookupWindow(&pWin, stuff->window, client, DixWriteAccess);
++ if (rc != Success)
++ return BadWindow;
++
+ #if NEW_XORG_VERSION == 1 /*New Xorg Version >= 1.4 */
+- lookup_ret = dixLookupResourceByType((pointer) &pHead,
+- pWin->drawable.id, EventType,
+- client, DixWriteAccess);
+- pHead = (lookup_ret == Success ? pHead : NULL);
++ lookup_ret = dixLookupResourceByType((pointer) &pHead,
++ pWin->drawable.id, EventType,
++ client, DixWriteAccess);
++ pHead = (lookup_ret == Success ? pHead : NULL);
+ #else
+ pHead = (SiSXineramaEventPtr *)SecurityLookupIDByType(client,
+ pWin->drawable.id, EventType,
+ SecurityWriteAccess);
+ #endif
+-
++
+ if(stuff->enable & (XineramaLayoutChangeNotifyMask)) {
+
+ /* Check for existing entry */
diff --git a/xf86-video-sisimedia.conf b/xf86-video-sisimedia.conf
new file mode 100644
index 000000000000..f5b659f50bd9
--- /dev/null
+++ b/xf86-video-sisimedia.conf
@@ -0,0 +1,60 @@
+# (xorg.conf para Ubuntu 10.10)
+#
+# Só altere as configurações abaixo se apenas souber o que está fazendo
+
+Section "Device"
+ Identifier "device1"
+ Driver "sisimedia"
+ Option "DPMS"
+ Option "EnableSiSCtrl" "yes"
+ Option "useROMData " "False"
+ Option "ForceCRT1Type" "NONE"
+ Option "ForceCRT2Type" "LCD"
+ Option "CRT1Gamma" "on"
+ Option "CRT2Gamma" "on"
+ Option "Brightness" "0.000 0.000 0.000"
+ Option "Contrast" "0.000 0.000 0.000"
+ Option "CRT1Saturation" "1"
+ Option "XvOnCRT2" "yes"
+ Option "XvDefaultContrast" "64"
+ Option "XvDefaultBrightness" "10"
+ Option "XvDefaultHue" "1"
+ Option "XvDefaultSaturation" "1"
+ Option "XvDefaultDisableGfxLR" "no"
+ Option "XvGamma" "on"
+ VideoRam 262016
+EndSection
+
+Section "Monitor"
+ Identifier "Configured Monitor"
+ Option "DPMS"
+ HorizSync 30 - 63
+ VertRefresh 50 - 75
+ Gamma 1.000 1.000 1.000
+EndSection
+
+Section "Screen"
+ Identifier "Default Screen"
+ Monitor "Configured Monitor"
+ DefaultDepth 24
+SubSection "Display"
+ Depth 24
+ Modes "1280x800@75" "1280x800@60" "1280x720@60" "1280x768@60" "800x600@60" "800x600@56"
+ EndSubSection
+ Device "Configured Video Device"
+EndSection
+
+Section "Module"
+ Disable "dri"
+ Load "dbe"
+ Load "v4l"
+ Load "extmod"
+ Load "type1"
+ Load "freetype"
+ Load "glx"
+ Load "GLcore"
+EndSection
+
+Section "DRI"
+ Mode 0666
+EndSection
diff --git a/xf86-video-sisimedia.install b/xf86-video-sisimedia.install
new file mode 100644
index 000000000000..a43902629dbf
--- /dev/null
+++ b/xf86-video-sisimedia.install
@@ -0,0 +1,5 @@
+post_install() {
+ echo 'A widely used and well-functioning xorg.conf file added to:'
+ echo "-> /etc/X11/xorg.conf.d/xf86-video-sisimedia.conf"
+ echo 'You can modify this as you want, upgrades will not overwrite that.'
+}
diff --git a/xserver117.patch b/xserver117.patch
new file mode 100644
index 000000000000..4e7e28ebcc96
--- /dev/null
+++ b/xserver117.patch
@@ -0,0 +1,97 @@
+Index: xserver-xorg-video-sisimedia-0.9.1/src/sis_driver.c
+===================================================================
+--- xserver-xorg-video-sisimedia-0.9.1.orig/src/sis_driver.c
++++ xserver-xorg-video-sisimedia-0.9.1/src/sis_driver.c
+@@ -3201,12 +3201,14 @@ SISPreInit(ScrnInfoPtr pScrn, int flags)
+
+ /* Find the PCI info for this screen */
+ pSiS->PciInfo = xf86GetPciInfoForEntity(pSiS->pEnt->index);
+- pSiS->PciBus = PCI_CFG_BUS(pSiS->PciInfo);
+- pSiS->PciDevice = PCI_CFG_DEV(pSiS->PciInfo);
+- pSiS->PciFunc = PCI_CFG_FUNC(pSiS->PciInfo);
+- pSiS->PciTag = pciTag( PCI_DEV_BUS(pSiS->PciInfo),
++ pSiS->PciBus = PCI_CFG_BUS(pSiS->PciInfo);
++ pSiS->PciDevice = PCI_CFG_DEV(pSiS->PciInfo);
++ pSiS->PciFunc = PCI_CFG_FUNC(pSiS->PciInfo);
++ #ifndef XSERVER_LIBPCIACCESS
++ pSiS->PciTag = pciTag( PCI_DEV_BUS(pSiS->PciInfo),
+ PCI_DEV_DEV(pSiS->PciInfo),
+ PCI_DEV_FUNC(pSiS->PciInfo));
++ #endif
+
+ #ifdef SIS_NEED_MAP_IOP
+ /********************************************/
+@@ -4047,7 +4049,9 @@ SISPreInit(ScrnInfoPtr pScrn, int flags)
+ #endif
+
+ memset(pSiS->SiS_Pr, 0, sizeof(struct SiS_Private));
++ #ifndef XSERVER_LIBPCIACCESS
+ pSiS->SiS_Pr->PciTag = pSiS->PciTag;
++ #endif
+ pSiS->SiS_Pr->ChipType = pSiS->ChipType;
+ pSiS->SiS_Pr->ChipRevision = pSiS->ChipRev;
+ pSiS->SiS_Pr->SiS_Backup70xx = 0xff;
+@@ -6048,7 +6052,9 @@ static Bool
+ SISMapMem(ScrnInfoPtr pScrn)
+ {
+ SISPtr pSiS = SISPTR(pScrn);
++ #ifndef XSERVER_LIBPCIACCESS
+ int mmioFlags = VIDMEM_MMIO;
++ #endif
+ #ifdef SISDUALHEAD
+ SISEntPtr pSiSEnt = pSiS->entityPrivate;
+ #endif
+Index: xserver-xorg-video-sisimedia-0.9.1/src/sis.h
+===================================================================
+--- xserver-xorg-video-sisimedia-0.9.1.orig/src/sis.h
++++ xserver-xorg-video-sisimedia-0.9.1/src/sis.h
+@@ -1046,9 +1046,8 @@ typedef struct {
+ struct pci_device *PciInfo;
+ #else
+ pciVideoPtr PciInfo;
++ PCITAG PciTag;
+ #endif
+-
+- PCITAG PciTag;
+
+ int PciBus, PciDevice, PciFunc;
+ EntityInfoPtr pEnt;
+Index: xserver-xorg-video-sisimedia-0.9.1/src/vgatypes.h
+===================================================================
+--- xserver-xorg-video-sisimedia-0.9.1.orig/src/vgatypes.h
++++ xserver-xorg-video-sisimedia-0.9.1/src/vgatypes.h
+@@ -80,14 +80,14 @@ typedef unsigned long SISIOADDRESS;
+ #endif
+ #endif
+
+-#ifdef SIS_XORG_XF86
+-#if XF86_VERSION_CURRENT < XF86_VERSION_NUMERIC(4,2,0,0,0)
++//#ifdef SIS_XORG_XF86
++//#if XF86_VERSION_CURRENT < XF86_VERSION_NUMERIC(4,2,0,0,0)
+ typedef unsigned long IOADDRESS;
+ typedef unsigned long SISIOADDRESS;
+-#else
++//#else
+ typedef IOADDRESS SISIOADDRESS;
+-#endif
+-#endif
++//#endif
++//#endif
+
+ typedef enum _SIS_CHIP_TYPE {
+ SIS_VGALegacy = 0,
+Index: xserver-xorg-video-sisimedia-0.9.1/src/vstruct.h
+===================================================================
+--- xserver-xorg-video-sisimedia-0.9.1.orig/src/vstruct.h
++++ xserver-xorg-video-sisimedia-0.9.1/src/vstruct.h
+@@ -241,8 +241,10 @@ struct SiS_Private
+ unsigned char ChipType;
+ unsigned char ChipRevision;
+ #ifdef SIS_XORG_XF86
++#ifndef XSERVER_LIBPCIACCESS
+ PCITAG PciTag;
+ #endif
++#endif
+ #ifdef SIS_LINUX_KERNEL
+ void *ivideo;
+ #endif