diff options
author | bapt <bapt@FreeBSD.org> | 2017-01-24 06:57:06 +0800 |
---|---|---|
committer | bapt <bapt@FreeBSD.org> | 2017-01-24 06:57:06 +0800 |
commit | 65fdcba6f26fcdff3a0807b355a146bec92391cb (patch) | |
tree | 70eded8a43bf385d0b8a015add50e12569cb64c1 /x11-drivers | |
parent | 04d19906af9b12bfe7930a2a38da8e2a87460df2 (diff) | |
download | freebsd-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')
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; |