aboutsummaryrefslogtreecommitdiffstats
path: root/x11-drivers
diff options
context:
space:
mode:
authorbapt <bapt@FreeBSD.org>2014-10-03 16:36:17 +0800
committerbapt <bapt@FreeBSD.org>2014-10-03 16:36:17 +0800
commit94f362fc15f3795724daf5847588ec7e679e84cf (patch)
tree87d3e863189229e4bef5518db9b9ff75cd083c51 /x11-drivers
parent9390c1c196fba9bf82f756487cec9a8c80c3ce5f (diff)
downloadfreebsd-ports-gnome-94f362fc15f3795724daf5847588ec7e679e84cf.tar.gz
freebsd-ports-gnome-94f362fc15f3795724daf5847588ec7e679e84cf.tar.zst
freebsd-ports-gnome-94f362fc15f3795724daf5847588ec7e679e84cf.zip
Add a ums only version of the ati drivers
Diffstat (limited to 'x11-drivers')
-rw-r--r--x11-drivers/Makefile1
-rw-r--r--x11-drivers/xf86-video-ati-ums/Makefile18
-rw-r--r--x11-drivers/xf86-video-ati-ums/distinfo2
-rw-r--r--x11-drivers/xf86-video-ati-ums/files/extra-src__radeon_kms.c37
-rw-r--r--x11-drivers/xf86-video-ati-ums/files/patch-src__radeon_dri2.c11
-rw-r--r--x11-drivers/xf86-video-ati-ums/files/patch-src_radeon_accel.c15
-rw-r--r--x11-drivers/xf86-video-ati-ums/pkg-descr1
-rw-r--r--x11-drivers/xf86-video-ati-ums/pkg-plist7
8 files changed, 92 insertions, 0 deletions
diff --git a/x11-drivers/Makefile b/x11-drivers/Makefile
index cd32d6d558c6..2e196fd9e256 100644
--- a/x11-drivers/Makefile
+++ b/x11-drivers/Makefile
@@ -20,6 +20,7 @@
SUBDIR += xf86-video-apm
SUBDIR += xf86-video-ark
SUBDIR += xf86-video-ati
+ SUBDIR += xf86-video-ati-ums
SUBDIR += xf86-video-chips
SUBDIR += xf86-video-cirrus
SUBDIR += xf86-video-dummy
diff --git a/x11-drivers/xf86-video-ati-ums/Makefile b/x11-drivers/xf86-video-ati-ums/Makefile
new file mode 100644
index 000000000000..34fc4fc9f5fc
--- /dev/null
+++ b/x11-drivers/xf86-video-ati-ums/Makefile
@@ -0,0 +1,18 @@
+# $FreeBSD$
+
+PORTNAME= xf86-video-ati
+PORTVERSION= 6.14.6
+PORTREVISION= 4
+CATEGORIES= x11-drivers
+
+MAINTAINER= x11@FreeBSD.org
+COMMENT= X.Org ati display driver
+
+USE_GL= gl
+XORG_CAT= driver
+USE_XORG= xf86driproto xineramaproto xf86miscproto glproto
+
+CONFIGURE_ARGS+=--disable-kms
+INSTALL_TARGET= install-strip
+
+.include <bsd.port.mk>
diff --git a/x11-drivers/xf86-video-ati-ums/distinfo b/x11-drivers/xf86-video-ati-ums/distinfo
new file mode 100644
index 000000000000..baa6ed57a8e1
--- /dev/null
+++ b/x11-drivers/xf86-video-ati-ums/distinfo
@@ -0,0 +1,2 @@
+SHA256 (xorg/driver/xf86-video-ati-6.14.6.tar.bz2) = aa5286b3e4f0187d7df14785c06dd800255d9405205dbf061da5d77df86bec36
+SIZE (xorg/driver/xf86-video-ati-6.14.6.tar.bz2) = 1139495
diff --git a/x11-drivers/xf86-video-ati-ums/files/extra-src__radeon_kms.c b/x11-drivers/xf86-video-ati-ums/files/extra-src__radeon_kms.c
new file mode 100644
index 000000000000..9de83f0dfac5
--- /dev/null
+++ b/x11-drivers/xf86-video-ati-ums/files/extra-src__radeon_kms.c
@@ -0,0 +1,37 @@
+--- src/radeon_kms.c.orig 2013-08-07 10:44:09.000000000 +0200
++++ src/radeon_kms.c 2013-08-31 19:29:11.369001510 +0200
+@@ -30,6 +30,8 @@
+
+ #include <errno.h>
+ #include <sys/ioctl.h>
++#include <sys/param.h>
++#include <sys/linker.h>
+ /* Driver data structures */
+ #include "radeon.h"
+ #include "radeon_reg.h"
+@@ -270,7 +272,7 @@
+ radeon_dirty_update(ScreenPtr screen)
+ {
+ RegionPtr region;
+- PixmapDirtyUpdatePtr ent;
++ PixmapDirtyUpdatePtr ent = NULL;
+
+ if (xorg_list_is_empty(&screen->pixmap_dirty_list))
+ return;
+@@ -606,6 +608,16 @@
+ dev->domain, dev->bus, dev->dev, dev->func);
+ #endif
+
++ err = kldload("radeonkms");
++ if (err == -1 && errno != EEXIST) {
++
++ xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
++ "[drm] Failed to load kernel module for %s: %s\n",
++ busid, strerror(errno));
++ free(busid);
++ return FALSE;
++ }
++
+ info->dri2.drm_fd = drmOpen("radeon", busid);
+ if (info->dri2.drm_fd == -1) {
+
diff --git a/x11-drivers/xf86-video-ati-ums/files/patch-src__radeon_dri2.c b/x11-drivers/xf86-video-ati-ums/files/patch-src__radeon_dri2.c
new file mode 100644
index 000000000000..3de34a1b60ae
--- /dev/null
+++ b/x11-drivers/xf86-video-ati-ums/files/patch-src__radeon_dri2.c
@@ -0,0 +1,11 @@
+--- src/radeon_dri2.c.orig 2013-02-22 19:31:34.000000000 +0000
++++ src/radeon_dri2.c 2013-02-22 19:31:47.000000000 +0000
+@@ -578,7 +578,7 @@
+ radeon_dri2_client_state_changed(CallbackListPtr *ClientStateCallback, pointer data, pointer calldata)
+ {
+ DRI2ClientEventsPtr pClientEventsPriv;
+- DRI2FrameEventPtr ref;
++ DRI2FrameEventPtr ref = NULL;
+ NewClientInfoRec *clientinfo = calldata;
+ ClientPtr pClient = clientinfo->client;
+ pClientEventsPriv = GetDRI2ClientEvents(pClient);
diff --git a/x11-drivers/xf86-video-ati-ums/files/patch-src_radeon_accel.c b/x11-drivers/xf86-video-ati-ums/files/patch-src_radeon_accel.c
new file mode 100644
index 000000000000..73d311a98c82
--- /dev/null
+++ b/x11-drivers/xf86-video-ati-ums/files/patch-src_radeon_accel.c
@@ -0,0 +1,15 @@
+--- src/radeon_accel.c.orig 2012-06-25 10:19:41.000000000 +0200
++++ src/radeon_accel.c 2012-07-30 02:11:51.000000000 +0200
+@@ -967,10 +967,9 @@
+
+ for (; nwords > 0; --nwords, ++d, ++s)
+ #ifdef __powerpc__
+- asm volatile("stwbrx %0,0,%1" : : "r" (*s), "r" (d));
++ asm volatile("sthbrx %0,0,%1" : : "r" (*s), "r" (d));
+ #else
+- *d = ((*s >> 24) & 0xff) | ((*s >> 8) & 0xff00)
+- | ((*s & 0xff00) << 8) | ((*s & 0xff) << 24);
++ *d = (*s >> 8) | (*s << 8);
+ #endif
+ return;
+ }
diff --git a/x11-drivers/xf86-video-ati-ums/pkg-descr b/x11-drivers/xf86-video-ati-ums/pkg-descr
new file mode 100644
index 000000000000..fe1b01b2281a
--- /dev/null
+++ b/x11-drivers/xf86-video-ati-ums/pkg-descr
@@ -0,0 +1 @@
+This package contains the X.Org xf86-video-ati driver.
diff --git a/x11-drivers/xf86-video-ati-ums/pkg-plist b/x11-drivers/xf86-video-ati-ums/pkg-plist
new file mode 100644
index 000000000000..f2276d0cc921
--- /dev/null
+++ b/x11-drivers/xf86-video-ati-ums/pkg-plist
@@ -0,0 +1,7 @@
+lib/xorg/modules/drivers/ati_drv.so
+lib/xorg/modules/drivers/radeon_drv.so
+lib/xorg/modules/multimedia/theatre200_drv.so
+lib/xorg/modules/multimedia/theatre_detect_drv.so
+lib/xorg/modules/multimedia/theatre_drv.so
+man/man4/ati.4x.gz
+man/man4/radeon.4x.gz