mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-12-30 16:12:58 -05:00
7007aeb287
* gnu/packages/patches/xf86-video-sis-update-api.patch: New file. * gnu-system.am (dist_patch_DATA): Add it. * gnu/packages/xorg.scm (xf86-video-sis): Update to 0.10.7. Add patch.
128 lines
4.3 KiB
Diff
128 lines
4.3 KiB
Diff
Update xf86-video-sis to the current xorg-server API.
|
|
|
|
Copied from: http://pkgs.fedoraproject.org/cgit/xorg-x11-drv-sis.git/tree/sis-0.10.7-git.patch?id=2705859f0ddc7ee7a3b07f21b442ebeab5df1276
|
|
Commit log: http://pkgs.fedoraproject.org/cgit/xorg-x11-drv-sis.git/log/sis-0.10.7-git.patch
|
|
|
|
Patch by Adam Jackson <ajax@redhat.com>
|
|
|
|
diff --git a/src/sis.h b/src/sis.h
|
|
index 46fca2a..20e6134 100644
|
|
--- a/src/sis.h
|
|
+++ b/src/sis.h
|
|
@@ -75,7 +75,6 @@
|
|
|
|
#include "compiler.h"
|
|
#include "xf86Pci.h"
|
|
-#include "xf86Priv.h"
|
|
#include "xf86_OSproc.h"
|
|
#if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 6
|
|
#include "xf86Resources.h"
|
|
diff --git a/src/sis_driver.c b/src/sis_driver.c
|
|
index 61e8075..0fd83d7 100644
|
|
--- a/src/sis_driver.c
|
|
+++ b/src/sis_driver.c
|
|
@@ -57,7 +57,6 @@
|
|
#include "fb.h"
|
|
#include "micmap.h"
|
|
#include "mipointer.h"
|
|
-#include "mibstore.h"
|
|
#include "edid.h"
|
|
|
|
#define SIS_NEED_inSISREG
|
|
@@ -94,6 +93,10 @@
|
|
#include "dri.h"
|
|
#endif
|
|
|
|
+#ifndef DEFAULT_DPI
|
|
+#define DEFAULT_DPI 96
|
|
+#endif
|
|
+
|
|
/*
|
|
* LookupWindow was removed with video abi 11.
|
|
*/
|
|
@@ -7344,7 +7347,11 @@ SISUnmapMem(ScrnInfoPtr pScrn)
|
|
if(pSiSEnt->MapCountIOBase) {
|
|
pSiSEnt->MapCountIOBase--;
|
|
if((pSiSEnt->MapCountIOBase == 0) || (pSiSEnt->forceUnmapIOBase)) {
|
|
+#ifndef XSERVER_LIBPCIACCESS
|
|
xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pSiSEnt->IOBase, (pSiS->mmioSize * 1024));
|
|
+#else
|
|
+ pci_device_unmap_range(pSiS->PciInfo, pSiSEnt->IOBase, (pSiS->mmioSize * 1024));
|
|
+#endif
|
|
pSiSEnt->IOBase = NULL;
|
|
pSiSEnt->MapCountIOBase = 0;
|
|
pSiSEnt->forceUnmapIOBase = FALSE;
|
|
@@ -7355,7 +7362,11 @@ SISUnmapMem(ScrnInfoPtr pScrn)
|
|
if(pSiSEnt->MapCountIOBaseDense) {
|
|
pSiSEnt->MapCountIOBaseDense--;
|
|
if((pSiSEnt->MapCountIOBaseDense == 0) || (pSiSEnt->forceUnmapIOBaseDense)) {
|
|
+#ifndef XSERVER_LIBPCIACCESS
|
|
xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pSiSEnt->IOBaseDense, (pSiS->mmioSize * 1024));
|
|
+#else
|
|
+ pci_device_unmap_range(pSiS->PciInfo, (pointer)pSiSEnt->IOBaseDense, (pSiS->mmioSize * 1024));
|
|
+#endif
|
|
pSiSEnt->IOBaseDense = NULL;
|
|
pSiSEnt->MapCountIOBaseDense = 0;
|
|
pSiSEnt->forceUnmapIOBaseDense = FALSE;
|
|
@@ -7366,7 +7377,11 @@ SISUnmapMem(ScrnInfoPtr pScrn)
|
|
if(pSiSEnt->MapCountFbBase) {
|
|
pSiSEnt->MapCountFbBase--;
|
|
if((pSiSEnt->MapCountFbBase == 0) || (pSiSEnt->forceUnmapFbBase)) {
|
|
+#ifndef XSERVER_LIBPCIACCESS
|
|
xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pSiSEnt->RealFbBase, pSiS->FbMapSize);
|
|
+#else
|
|
+ pci_device_unmap_range(pSiS->PciInfo, (pointer)pSiSEnt->RealFbBase, pSiS->FbMapSize);
|
|
+#endif
|
|
pSiSEnt->FbBase = pSiSEnt->RealFbBase = NULL;
|
|
pSiSEnt->MapCountFbBase = 0;
|
|
pSiSEnt->forceUnmapFbBase = FALSE;
|
|
@@ -7376,13 +7391,25 @@ SISUnmapMem(ScrnInfoPtr pScrn)
|
|
}
|
|
} else {
|
|
#endif
|
|
+#ifndef XSERVER_LIBPCIACCESS
|
|
xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pSiS->IOBase, (pSiS->mmioSize * 1024));
|
|
+#else
|
|
+ pci_device_unmap_range(pSiS->PciInfo, (pointer)pSiS->IOBase, (pSiS->mmioSize * 1024));
|
|
+#endif
|
|
pSiS->IOBase = NULL;
|
|
#ifdef __alpha__
|
|
+#ifndef XSERVER_LIBPCIACCESS
|
|
xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pSiS->IOBaseDense, (pSiS->mmioSize * 1024));
|
|
+#else
|
|
+ pci_device_unmap_range(pSiS->PciInfo, (pointer)pSiS->IOBaseDense, (pSiS->mmioSize * 1024));
|
|
+#endif
|
|
pSiS->IOBaseDense = NULL;
|
|
#endif
|
|
+#ifndef XSERVER_LIBPCIACCESS
|
|
xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pSiS->RealFbBase, pSiS->FbMapSize);
|
|
+#else
|
|
+ pci_device_unmap_range(pSiS->PciInfo, (pointer)pSiS->RealFbBase, pSiS->FbMapSize);
|
|
+#endif
|
|
pSiS->FbBase = pSiS->RealFbBase = NULL;
|
|
#ifdef SISDUALHEAD
|
|
}
|
|
@@ -8859,7 +8886,6 @@ SISScreenInit(SCREEN_INIT_ARGS_DECL)
|
|
}
|
|
pSiS->SiSFastVidCopyDone = TRUE;
|
|
|
|
- miInitializeBackingStore(pScreen);
|
|
xf86SetBackingStore(pScreen);
|
|
xf86SetSilkenMouse(pScreen);
|
|
|
|
@@ -9352,7 +9378,14 @@ SISMergedPointerMoved(SCRN_ARG_TYPE arg, int x, int y)
|
|
}
|
|
if(doit) {
|
|
sigstate = xf86BlockSIGIO();
|
|
-#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 15
|
|
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 18
|
|
+ {
|
|
+ double dx = x, dy = y;
|
|
+ miPointerSetPosition(inputInfo.pointer, Absolute, &dx, &dy, NULL, NULL);
|
|
+ x = (int)dx;
|
|
+ y = (int)dy;
|
|
+ }
|
|
+#elif GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 15
|
|
{
|
|
double dx = x, dy = y;
|
|
miPointerSetPosition(inputInfo.pointer, Absolute, &dx, &dy);
|