aboutsummaryrefslogtreecommitdiffstats
path: root/x11-drivers
diff options
context:
space:
mode:
authorbapt <bapt@FreeBSD.org>2017-01-24 06:57:06 +0800
committerbapt <bapt@FreeBSD.org>2017-01-24 06:57:06 +0800
commit65fdcba6f26fcdff3a0807b355a146bec92391cb (patch)
tree70eded8a43bf385d0b8a015add50e12569cb64c1 /x11-drivers
parent04d19906af9b12bfe7930a2a38da8e2a87460df2 (diff)
downloadfreebsd-ports-gnome-65fdcba6f26fcdff3a0807b355a146bec92391cb.tar.gz
freebsd-ports-gnome-65fdcba6f26fcdff3a0807b355a146bec92391cb.tar.zst
freebsd-ports-gnome-65fdcba6f26fcdff3a0807b355a146bec92391cb.zip
mport few patches from upstream to allow building with newer xorg
Note that those drivers are barely maintained and might disappear in the futur PR: 216290 Submitted by: matthew@reztek.cz
Diffstat (limited to 'x11-drivers')
-rw-r--r--x11-drivers/xf86-video-s3virge/Makefile1
-rw-r--r--x11-drivers/xf86-video-s3virge/files/patch-git_01_9c8a08c26
-rw-r--r--x11-drivers/xf86-video-s3virge/files/patch-git_02_47f436924
-rw-r--r--x11-drivers/xf86-video-s3virge/files/patch-src_s3v__driver.c23
4 files changed, 74 insertions, 0 deletions
diff --git a/x11-drivers/xf86-video-s3virge/Makefile b/x11-drivers/xf86-video-s3virge/Makefile
index ccd229d5c4bc..62bb76968368 100644
--- a/x11-drivers/xf86-video-s3virge/Makefile
+++ b/x11-drivers/xf86-video-s3virge/Makefile
@@ -2,6 +2,7 @@
PORTNAME= xf86-video-s3virge
PORTVERSION= 1.10.7
+PORTREVISION= 1
CATEGORIES= x11-drivers
MAINTAINER= x11@FreeBSD.org
diff --git a/x11-drivers/xf86-video-s3virge/files/patch-git_01_9c8a08c b/x11-drivers/xf86-video-s3virge/files/patch-git_01_9c8a08c
new file mode 100644
index 000000000000..446da1f4fb25
--- /dev/null
+++ b/x11-drivers/xf86-video-s3virge/files/patch-git_01_9c8a08c
@@ -0,0 +1,26 @@
+From 9c8a08c9c7a0f7ec591042abd5b4a0fb50c028f1 Mon Sep 17 00:00:00 2001
+From: Nick Hudson <skrll@NetBSD.org>
+Date: Mon, 28 Sep 2015 22:49:21 +0200
+Subject: Increase BIOS_BSIZE.
+
+libpciaccess expects a much bigger buffer when reading ROM.
+Bump it to the (normal) IO space size.
+
+Signed-off-by: Thomas Klausner <wiz@NetBSD.org>
+
+diff --git a/src/s3v_driver.c b/src/s3v_driver.c
+index d519dc8..e5dd2e4 100644
+--- src/s3v_driver.c
++++ src/s3v_driver.c
+@@ -316,7 +316,7 @@ s3virgeSetup(pointer module, pointer opts, int *errmaj, int *errmin)
+
+ static unsigned char *find_bios_string(S3VPtr ps3v, int BIOSbase, char *match1, char *match2)
+ {
+-#define BIOS_BSIZE 1024
++#define BIOS_BSIZE 0x10000
+ #define BIOS_BASE 0xc0000
+
+ static unsigned char bios[BIOS_BSIZE];
+--
+cgit v0.10.2
+
diff --git a/x11-drivers/xf86-video-s3virge/files/patch-git_02_47f4369 b/x11-drivers/xf86-video-s3virge/files/patch-git_02_47f4369
new file mode 100644
index 000000000000..1ad3f233bb85
--- /dev/null
+++ b/x11-drivers/xf86-video-s3virge/files/patch-git_02_47f4369
@@ -0,0 +1,24 @@
+From 47f43694645f3e6347b536d5e3fb2fee56e715ab Mon Sep 17 00:00:00 2001
+From: Thomas Klausner <wiz@NetBSD.org>
+Date: Mon, 28 Sep 2015 22:49:22 +0200
+Subject: Add cast to remove a warning on 32-bit machines.
+
+PCI_REGION_BASE returns a 64-bit value, which needs to be converted
+down to 32-bit before it can be put into a 32-bit pointer.
+
+diff --git a/src/s3v_dga.c b/src/s3v_dga.c
+index 0e603cf..0ab374d 100644
+--- src/s3v_dga.c
++++ src/s3v_dga.c
+@@ -337,7 +337,7 @@ S3V_OpenFramebuffer(
+ S3VPtr ps3v = S3VPTR(pScrn);
+
+ *name = NULL; /* no special device */
+- *mem = (unsigned char*)PCI_REGION_BASE(ps3v->PciInfo, 0, REGION_MEM);
++ *mem = (unsigned char*)(uintptr_t)PCI_REGION_BASE(ps3v->PciInfo, 0, REGION_MEM);
+ *size = ps3v->videoRambytes;
+ *offset = 0;
+ *flags = DGA_NEED_ROOT;
+--
+cgit v0.10.2
+
diff --git a/x11-drivers/xf86-video-s3virge/files/patch-src_s3v__driver.c b/x11-drivers/xf86-video-s3virge/files/patch-src_s3v__driver.c
new file mode 100644
index 000000000000..aa2fb098be90
--- /dev/null
+++ b/x11-drivers/xf86-video-s3virge/files/patch-src_s3v__driver.c
@@ -0,0 +1,23 @@
+# Correct a string that should be const
+# Remove extra parenthesis to clear a style warning
+#
+--- src/s3v_driver.c.orig 2016-11-25 14:37:44 UTC
++++ src/s3v_driver.c
+@@ -480,7 +480,7 @@ S3VPreInit(ScrnInfoPtr pScrn, int flags)
+ ClockRangePtr clockRanges;
+ char *mod = NULL;
+ const char *reqSym = NULL;
+- char *s;
++ const char *s;
+
+ unsigned char config1, config2, m, n, n1, n2, cr66 = 0;
+ int mclk;
+@@ -2850,7 +2850,7 @@ S3VModeInit(ScrnInfoPtr pScrn, DisplayMo
+ else
+ new->CR67 = 0x50 | 0x4; /* 16bpp */
+ }
+- else if ((pScrn->bitsPerPixel == 24) ) {
++ else if (pScrn->bitsPerPixel == 24) {
+ new->CR67 = 0x74; /* 24bpp, STREAMS */
+ /* Flag STREAMS proc. required */
+ ps3v->NeedSTREAMS = TRUE;