aboutsummaryrefslogtreecommitdiffstats
path: root/x11-drivers/xf86-video-ati
diff options
context:
space:
mode:
authorzeising <zeising@FreeBSD.org>2014-04-17 02:28:47 +0800
committerzeising <zeising@FreeBSD.org>2014-04-17 02:28:47 +0800
commit0d308966c11339773e9f09cdd69a8b5876b4f04e (patch)
treefc8323f5d400038235fda42a6096107239789049 /x11-drivers/xf86-video-ati
parent2ff2f3dac9805ec42de1b5cab42db4952b63bb93 (diff)
downloadfreebsd-ports-gnome-0d308966c11339773e9f09cdd69a8b5876b4f04e.tar.gz
freebsd-ports-gnome-0d308966c11339773e9f09cdd69a8b5876b4f04e.tar.zst
freebsd-ports-gnome-0d308966c11339773e9f09cdd69a8b5876b4f04e.zip
The FreeBSD x11@ and graphics team proudly presents
a zeising, kwm production, with help from dumbbell, bdrewery: NEW XORG ON FREEBSD 9-STABLE AND 10-STABLE This update switches over to use the new xorg stack by default on FreeBSD 9 and 10 stable, on osversions where vt(9) is available. It is still possible to use the old stack by specifying WITHOUT_NEW_XORG in /etc/make.conf . FreeBSD 8-STABLE and released versions of FreeBSD still use the old version. A package repository with binary packages for new xorg will be available soon. This patch also contains updates of libxcb and related ports, pixman, as well as some drivers and utilities. Bump portrevisions for xf86-* ports, as well as virtualbox-ose-additions due to xserver version change. Apart from these updates, the way shared libraries are handled has been changed for all xorg ports, as well as libxml2 and freetype, which means ltverhack is gone and as a consequence shared libraries have been bumped. The plan is that this change will make library bumps less likely in the future. All affected ports have had their portrevisions bumped as a consequence of this. Fix some issues where WITH_NEW_XORG weren't detected properly on CURRENT. Update instructions, hardware support, and more notes can be found on https://wiki.freebsd.org/Graphics Thanks to: all testers, bdrewery and the FreeBSD x11@ team exp-run by: bdrewery [1] PR: ports/187602 [1] Approved by: portmgr (bdrewery), core (jhb)
Diffstat (limited to 'x11-drivers/xf86-video-ati')
-rw-r--r--x11-drivers/xf86-video-ati/Makefile8
-rw-r--r--x11-drivers/xf86-video-ati/files/extra-src__radeon_kms.c29
2 files changed, 27 insertions, 10 deletions
diff --git a/x11-drivers/xf86-video-ati/Makefile b/x11-drivers/xf86-video-ati/Makefile
index e0efe72d4834..be942d399d45 100644
--- a/x11-drivers/xf86-video-ati/Makefile
+++ b/x11-drivers/xf86-video-ati/Makefile
@@ -14,16 +14,16 @@ USE_XORG= xf86driproto xineramaproto xf86miscproto glproto
.include <bsd.port.options.mk>
-.if ${OSVERSION} < 1000051 || !defined(WITH_NEW_XORG) || \
- (${ARCH} != i386 && ${ARCH} != amd64)
+.if ${OSVERSION} < 1000051 || !defined(WITH_NEW_XORG)
ATI_VERSION= 6.14.6
-ATI_REVISION= 1
+ATI_REVISION= 2
CONFIGURE_ARGS+=--disable-kms
PLIST_SUB+= OLD=""
.else
ATI_VERSION= 7.2.0
-ATI_REVISION= 1
+ATI_REVISION= 2
CONFIGURE_ARGS+=--disable-udev
+CONFIGURE_ARGS+=--disable-glamor
EXTRA_PATCHES+= ${FILESDIR}/extra-src__radeon_kms.c
PLIST_SUB+= OLD="@comment "
.endif
diff --git a/x11-drivers/xf86-video-ati/files/extra-src__radeon_kms.c b/x11-drivers/xf86-video-ati/files/extra-src__radeon_kms.c
index c8ed5680a9ef..9de83f0dfac5 100644
--- a/x11-drivers/xf86-video-ati/files/extra-src__radeon_kms.c
+++ b/x11-drivers/xf86-video-ati/files/extra-src__radeon_kms.c
@@ -1,6 +1,15 @@
--- src/radeon_kms.c.orig 2013-08-07 10:44:09.000000000 +0200
-+++ src/radeon_kms.c 2013-08-31 01:20:44.370468797 +0200
-@@ -270,7 +270,7 @@
++++ 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;
@@ -9,12 +18,20 @@
if (xorg_list_is_empty(&screen->pixmap_dirty_list))
return;
-@@ -606,7 +606,7 @@
+@@ -606,6 +608,16 @@
dev->domain, dev->bus, dev->dev, dev->func);
#endif
-- info->dri2.drm_fd = drmOpen("radeon", busid);
-+ info->dri2.drm_fd = drmOpen("radeonkms", busid);
++ 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) {
- xf86DrvMsg(pScrn->scrnIndex, X_ERROR,