diff --git a/xf86-video-intel-dfbsd/Makefile b/xf86-video-intel-dfbsd/Makefile index 9ad3e6c8fb..75323d5b13 100644 --- a/xf86-video-intel-dfbsd/Makefile +++ b/xf86-video-intel-dfbsd/Makefile @@ -3,8 +3,14 @@ # Use the commit id to obtain a snapshot of the form: # http://cgit.freedesktop.org/xorg/driver/xf86-video-intel/snapshot/xf86-video-intel-78d7a09b0343829c81257024b164b0b3764392ac.tar.xz +# 2019-03-01 sna: Switch back to hwcursor on the next cursor update +COMMIT_ID= 6afed33b2d673d88674f0c76efe500ae414e8e1b + +# 2019-02-21 Fix build on i686 +# COMMIT_ID= 9e6e003e3468dca674ac848e2669af973da02fd4 + # 2019-01-21 sna/uxa: Fix colormap handling at screen depth 30. (v2) -COMMIT_ID= 33ee0c3b21ea279e08d0863fcb2e874f0974b00e +# COMMIT_ID= 33ee0c3b21ea279e08d0863fcb2e874f0974b00e # 2019-01-10 sna: Switch off old outputs on topology changes # COMMIT_ID= c37c7ee0748ba828ec5d2c7304cd2a17af2c8109 @@ -66,12 +72,21 @@ SUBST_SED.jmp_buf= -e 's@[[:<:]]jmp_buf[[:>:]]@sigjmp_buf@g' PKG_OPTIONS_VAR= PKG_OPTIONS.xf86-video-intel PKG_SUPPORTED_OPTIONS= uxa dri3 debug +PKG_SUPPORTED_OPTIONS+= set_dbg_no_unsynchronized_userptr +PKG_SUPPORTED_OPTIONS+= set_dbg_no_llc PKG_SUGGESTED_OPTIONS= +# PKG_SUGGESTED_OPTIONS+= set_dbg_no_unsynchronized_userptr +# PKG_SUGGESTED_OPTIONS+= set_dbg_no_llc CONFIGURE_ARGS.FreeBSD+= --disable-udev .if ${OPSYS} == "FreeBSD" -PKG_SUGGESTED_OPTIONS+= uxa +# PKG_SUGGESTED_OPTIONS+= uxa +PKG_SUGGESTED_OPTIONS+= set_dbg_no_unsynchronized_userptr +.endif + +.if ${OPSYS} == "DragonFly" +PKG_SUGGESTED_OPTIONS+= set_dbg_no_llc .endif .include "../../mk/bsd.options.mk" @@ -94,6 +109,14 @@ CFLAGS+= -O0 -g3 CONFIGURE_ARGS+= --enable-debug .endif +.if !empty(PKG_OPTIONS:Mset_dbg_no_unsynchronized_userptr) +CPPFLAGS+= -DSET_DBG_NO_UNSYNCHRONIZED_USERPTR +.endif + +.if !empty(PKG_OPTIONS:Mset_dbg_no_llc) +CPPFLAGS+= -DSET_DBG_NO_LLC +.endif + pre-configure: cd ${WRKSRC} && autoreconf -vif diff --git a/xf86-video-intel-dfbsd/distinfo b/xf86-video-intel-dfbsd/distinfo index f059fc6d55..e2e3901dcb 100644 --- a/xf86-video-intel-dfbsd/distinfo +++ b/xf86-video-intel-dfbsd/distinfo @@ -1,11 +1,11 @@ $NetBSD: distinfo,v 1.1 2015/04/01 13:11:38 tnn2 Exp $ -SHA1 (xf86-video-intel-33ee0c3b21ea279e08d0863fcb2e874f0974b00e.tar.xz) = c6890dd1d7e1bdd787ae0d473cb855929168684d -RMD160 (xf86-video-intel-33ee0c3b21ea279e08d0863fcb2e874f0974b00e.tar.xz) = 09c2927b027c8d639fc8d9a97cce1f77d5e349a1 -SHA512 (xf86-video-intel-33ee0c3b21ea279e08d0863fcb2e874f0974b00e.tar.xz) = b63ce62b1406e9e576aab7db4174b0b40c6074590d32166d98eac7b5019671f47c5ab6199e887b442a9db7daaf2e7df908ec8c4d4016e8c89fc28d750c169622 -Size (xf86-video-intel-33ee0c3b21ea279e08d0863fcb2e874f0974b00e.tar.xz) = 955256 bytes +SHA1 (xf86-video-intel-6afed33b2d673d88674f0c76efe500ae414e8e1b.tar.xz) = acec51bc49102bd071ebd1ffd14eb4730dc4cdc2 +RMD160 (xf86-video-intel-6afed33b2d673d88674f0c76efe500ae414e8e1b.tar.xz) = bee1e0526fb569a5942e45cacb962d7d81604a6a +SHA512 (xf86-video-intel-6afed33b2d673d88674f0c76efe500ae414e8e1b.tar.xz) = 37572630196ee124097ffbfcd6f0e77c9701ff46154a213a6a0778cd1ca4f42fe9da598e948bc167eac6af3ef8097c101f39b1569b3141fb7e0dd0e1997955df +Size (xf86-video-intel-6afed33b2d673d88674f0c76efe500ae414e8e1b.tar.xz) = 955096 bytes SHA1 (patch-src_intel__device.c) = b0a1f775d3e66605e9a1d94745bc4f7a1fba179e SHA1 (patch-src_intel__list.h) = 98ba59c22bc7109f95666291ca1aac19189999aa -SHA1 (patch-src_sna_kgem.c) = bcc7bf2fded99b5f5b6920f610c30b0bbc72668d +SHA1 (patch-src_sna_kgem.c) = 57341a2fba5cabe70b20a4a0b2699e655e2d61d7 SHA1 (patch-src_sna_sna__threads.c) = 54a3bd0de878009335f08b3f41812540a72f5d4d SHA1 (patch-src_sna_sna__video.c) = ee732a2c73997cfdf5c5b936fac065a0224687af diff --git a/xf86-video-intel-dfbsd/patches/patch-src_sna_kgem.c b/xf86-video-intel-dfbsd/patches/patch-src_sna_kgem.c index dac2bbac68..e3fc182e18 100644 --- a/xf86-video-intel-dfbsd/patches/patch-src_sna_kgem.c +++ b/xf86-video-intel-dfbsd/patches/patch-src_sna_kgem.c @@ -8,7 +8,14 @@ x11-drivers/xf86-video-intel29 Additional patch for DragonFly because struct drm_i915_gem_mmap has a field flags. ---- src/sna/kgem.c.orig 2019-01-10 10:01:58.000000000 +0000 +https://bz-attachments.freebsd.org/attachment.cgi?id=20233 + +Fix SNA for drm-v4.11 or later by disabling I915_USERPTR_UNSYNCHRONIZED + +I915_USERPTR_UNSYNCHRONIZED is broken since drm-v4.11 +https://github.com/FreeBSDDesktop/kms-drm/issues/32 + +--- src/sna/kgem.c.orig 2019-02-21 22:26:50.000000000 +0000 +++ src/sna/kgem.c @@ -29,6 +29,11 @@ #include "config.h" @@ -22,11 +29,17 @@ has a field flags. #include "sna.h" #include "sna_reg.h" -@@ -71,7 +76,11 @@ search_snoop_cache(struct kgem *kgem, un +@@ -69,9 +74,17 @@ search_snoop_cache(struct kgem *kgem, unsigned int num + #define DBG_NO_CPU 0 + #define DBG_NO_CREATE2 0 #define DBG_NO_USERPTR 0 ++#if defined(SET_DBG_NO_UNSYNCHRONIZED_USERPTR) ++#define DBG_NO_UNSYNCHRONIZED_USERPTR 1 ++#else #define DBG_NO_UNSYNCHRONIZED_USERPTR 0 ++#endif #define DBG_NO_COHERENT_MMAP_GTT 0 -+#if defined(__DragonFly__) ++#if defined(SET_DBG_NO_LLC) +#define DBG_NO_LLC 1 +#else #define DBG_NO_LLC 0 @@ -34,7 +47,7 @@ has a field flags. #define DBG_NO_SEMAPHORES 0 #define DBG_NO_MADV 0 #define DBG_NO_UPLOAD_CACHE 0 -@@ -682,7 +691,11 @@ retry_wc: +@@ -682,7 +695,11 @@ retry_wc: static void *__kgem_bo_map__cpu(struct kgem *kgem, struct kgem_bo *bo) { @@ -46,7 +59,7 @@ has a field flags. int err; VG_CLEAR(arg); -@@ -691,7 +704,12 @@ static void *__kgem_bo_map__cpu(struct k +@@ -691,7 +708,12 @@ static void *__kgem_bo_map__cpu(struct kgem *kgem, str retry: arg.handle = bo->handle; arg.size = bytes(bo); @@ -59,7 +72,7 @@ has a field flags. DBG(("%s: failed %d, throttling/cleaning caches\n", __FUNCTION__, err)); assert(err != -EINVAL || bo->prime); -@@ -3313,11 +3331,21 @@ bool __kgem_ring_is_idle(struct kgem *kg +@@ -3313,11 +3335,21 @@ bool __kgem_ring_is_idle(struct kgem *kgem, int ring) if (rq) { struct kgem_request *tmp;