diff options
author | maya <maya@pkgsrc.org> | 2020-07-31 14:41:37 +0000 |
---|---|---|
committer | maya <maya@pkgsrc.org> | 2020-07-31 14:41:37 +0000 |
commit | 87c528d3a120c7a45cdd04623cc17092bada8009 (patch) | |
tree | e7cfe5ffae1fc35826f1e6f6d0933600c4dbb44a /x11 | |
parent | bdf327e8ff11cf751248f07de0f07233e59fb8fa (diff) | |
download | pkgsrc-87c528d3a120c7a45cdd04623cc17092bada8009.tar.gz |
xf86-video-intel: update to the latest git snapshot.
The released version is quite old and doesn't run properly on new devices.
Some logic from similar packages in wip.
Diffstat (limited to 'x11')
-rw-r--r-- | x11/xf86-video-intel/Makefile | 22 | ||||
-rw-r--r-- | x11/xf86-video-intel/PLIST | 4 | ||||
-rw-r--r-- | x11/xf86-video-intel/distinfo | 22 | ||||
-rw-r--r-- | x11/xf86-video-intel/patches/patch-src_backlight.c | 25 | ||||
-rw-r--r-- | x11/xf86-video-intel/patches/patch-src_compat-api.h | 40 | ||||
-rw-r--r-- | x11/xf86-video-intel/patches/patch-src_legacy_i810_i810__video.c | 88 | ||||
-rw-r--r-- | x11/xf86-video-intel/patches/patch-src_sna_sna.h | 17 | ||||
-rw-r--r-- | x11/xf86-video-intel/patches/patch-src_sna_sna__accel.c | 60 | ||||
-rw-r--r-- | x11/xf86-video-intel/patches/patch-src_sna_sna__acpi.c | 38 | ||||
-rw-r--r-- | x11/xf86-video-intel/patches/patch-src_sna_sna__display.c | 16 | ||||
-rw-r--r-- | x11/xf86-video-intel/patches/patch-src_sna_sna__dri2.c | 12 | ||||
-rw-r--r-- | x11/xf86-video-intel/patches/patch-src_sna_sna__driver.c | 77 | ||||
-rw-r--r-- | x11/xf86-video-intel/patches/patch-src_uxa_intel.h | 17 | ||||
-rw-r--r-- | x11/xf86-video-intel/patches/patch-src_uxa_intel__display.c | 55 | ||||
-rw-r--r-- | x11/xf86-video-intel/patches/patch-src_uxa_intel__driver.c | 76 |
15 files changed, 23 insertions, 546 deletions
diff --git a/x11/xf86-video-intel/Makefile b/x11/xf86-video-intel/Makefile index 97c47e2edee..fbcdcf0a0a4 100644 --- a/x11/xf86-video-intel/Makefile +++ b/x11/xf86-video-intel/Makefile @@ -1,9 +1,11 @@ -# $NetBSD: Makefile,v 1.43 2020/06/28 13:54:09 nia Exp $ +# $NetBSD: Makefile,v 1.44 2020/07/31 14:41:37 maya Exp $ -DISTNAME= xf86-video-intel-2.99.917 -PKGREVISION= 7 +PKGNAME= xf86-video-intel-2.99.917.20200515 +COMMIT_ID= 5ca3ac1a90af177eb111a965e9b4dd8a27cc58fc +DISTNAME= xf86-video-intel-${COMMIT_ID} CATEGORIES= x11 -MASTER_SITES= ${MASTER_SITE_XORG:=driver/} +#MASTER_SITES= ${MASTER_SITE_XORG:=driver/} +MASTER_SITES= https://gitlab.freedesktop.org/xorg/driver/xf86-video-intel/-/archive/${COMMIT_ID}/ EXTRACT_SUFX= .tar.bz2 MAINTAINER= joerg@NetBSD.org @@ -13,11 +15,12 @@ COMMENT= Modular Xorg Intel video driver CONFLICTS+= xf86-video-i810-[0-9]* CONFIGURE_ARGS+= --enable-dri -CONFIGURE_ARGS+= --disable-dri1 +CONFIGURE_ARGS+= --enable-dri2 +CONFIGURE_ARGS+= --enable-dri3 GNU_CONFIGURE= YES USE_LIBTOOL= YES -USE_TOOLS+= pkg-config +USE_TOOLS+= pkg-config automake autoconf autoreconf # Assumes platform compiler has SSE2, etc ONLY_FOR_PLATFORM+= *-*-i386 *-*-x86_64 @@ -26,9 +29,14 @@ CONFIGURE_ENV.SunOS+= DRIVER_MAN_SUFFIX=4 BUILDLINK_API_DEPENDS.libdrm+= libdrm>=2.4.7 +pre-configure: + cd ${WRKSRC} && autoreconf -vif + +.include "../../devel/xorg-util-macros/buildlink3.mk" .include "../../x11/modular-xorg-server/buildlink3.mk" -.include "../../x11/libXvMC/buildlink3.mk" .include "../../x11/libdrm/buildlink3.mk" +.include "../../x11/libXvMC/buildlink3.mk" +.include "../../x11/xcb-util/buildlink3.mk" .include "../../x11/xorgproto/buildlink3.mk" .include "../../mk/pthread.buildlink3.mk" .include "../../mk/bsd.pkg.mk" diff --git a/x11/xf86-video-intel/PLIST b/x11/xf86-video-intel/PLIST index 3433a3c8080..b24ae4f235a 100644 --- a/x11/xf86-video-intel/PLIST +++ b/x11/xf86-video-intel/PLIST @@ -1,3 +1,5 @@ -@comment $NetBSD: PLIST,v 1.4 2013/05/16 06:16:50 richard Exp $ +@comment $NetBSD: PLIST,v 1.5 2020/07/31 14:41:37 maya Exp $ +lib/libI810XvMC.la +lib/libIntelXvMC.la lib/xorg/modules/drivers/intel_drv.la man/man4/intel.4 diff --git a/x11/xf86-video-intel/distinfo b/x11/xf86-video-intel/distinfo index 4e8f9b8eb1d..1efc7c149b8 100644 --- a/x11/xf86-video-intel/distinfo +++ b/x11/xf86-video-intel/distinfo @@ -1,19 +1,7 @@ -$NetBSD: distinfo,v 1.29 2018/05/15 10:50:19 wiz Exp $ +$NetBSD: distinfo,v 1.30 2020/07/31 14:41:37 maya Exp $ -SHA1 (xf86-video-intel-2.99.917.tar.bz2) = 9af9ded7a29026c211e5eb50a547e3e33976301d -RMD160 (xf86-video-intel-2.99.917.tar.bz2) = dd443e9e87286bbc454f4231a7a5d7c9bb2488a1 -SHA512 (xf86-video-intel-2.99.917.tar.bz2) = cbf4d46ad1ad5e5587c0f1f620ff534ef0645270517b60056b9f03e83d8216e2f456de46352a06c37c0c46963cc4ed20b71b815b20ec1bf680ff046e535f580f -Size (xf86-video-intel-2.99.917.tar.bz2) = 2259040 bytes -SHA1 (patch-src_backlight.c) = 39537a3233613c777f0475343f0be615bff3c3ca -SHA1 (patch-src_compat-api.h) = 303cc02ad41aa8024631577b9ea0bb26cd5f23f4 +SHA1 (xf86-video-intel-5ca3ac1a90af177eb111a965e9b4dd8a27cc58fc.tar.bz2) = f9cb02d46b771e278a11dc88536049daf76f6ee8 +RMD160 (xf86-video-intel-5ca3ac1a90af177eb111a965e9b4dd8a27cc58fc.tar.bz2) = 40400b5860115d3c679ec849e0ba90dba74ee6ca +SHA512 (xf86-video-intel-5ca3ac1a90af177eb111a965e9b4dd8a27cc58fc.tar.bz2) = 29fea01332438ad7616bae56a926f5c6fa08f93f67c23a0bb38f775719f12b15fba5bcb096c0665948f80d3ff6b7c108f360e44aae008192ef6c9b21187b4bbb +Size (xf86-video-intel-5ca3ac1a90af177eb111a965e9b4dd8a27cc58fc.tar.bz2) = 1250303 bytes SHA1 (patch-src_legacy_i810_i810__dri.c) = fb963b994d51c9db48457106048226214a2d986c -SHA1 (patch-src_legacy_i810_i810__video.c) = 8788a9bf4e1efdb5292771c125af9a24c09d62da -SHA1 (patch-src_sna_sna.h) = 13f0f7c9f8235f6100da90203a9ca4aa09fad977 -SHA1 (patch-src_sna_sna__accel.c) = 233229449a469e12a928bde4e2f8196157918102 -SHA1 (patch-src_sna_sna__acpi.c) = 7105609e38876fe8bb931d6980c023cabdf41736 -SHA1 (patch-src_sna_sna__display.c) = b2e5b330b5b4154b4d0bbf4edd7af1cec2c68cd8 -SHA1 (patch-src_sna_sna__dri2.c) = 4bcc7e5c502a340954073386dad88fd6cebcc7b1 -SHA1 (patch-src_sna_sna__driver.c) = ced69376d7f1af697b1f51ccb46d958495138136 -SHA1 (patch-src_uxa_intel.h) = 201a28ce259c474ea9f83700ec04c105388ad8ed -SHA1 (patch-src_uxa_intel__display.c) = b8936ecbad39f5a507ae32b4c46d5069f53ca727 -SHA1 (patch-src_uxa_intel__driver.c) = e1800c27e1b35568254efa7bc16bf89a2e5a6fd4 diff --git a/x11/xf86-video-intel/patches/patch-src_backlight.c b/x11/xf86-video-intel/patches/patch-src_backlight.c deleted file mode 100644 index 947b352a22e..00000000000 --- a/x11/xf86-video-intel/patches/patch-src_backlight.c +++ /dev/null @@ -1,25 +0,0 @@ -$NetBSD: patch-src_backlight.c,v 1.2 2015/05/22 05:40:36 richard Exp $ - -SunOS needs <sys/mkdev.h> for major() - ---- src/backlight.c.orig 2014-11-18 21:50:39.000000000 +0000 -+++ src/backlight.c -@@ -49,6 +49,9 @@ - - #include "backlight.h" - #include "fd.h" -+#ifdef __sun -+#include <sys/mkdev.h> -+#endif - - #define BACKLIGHT_CLASS "/sys/class/backlight" - -@@ -84,7 +87,7 @@ void backlight_init(struct backlight *b) - b->has_power = 0; - } - --#ifdef __OpenBSD__ -+#if defined(__OpenBSD__) || defined(__NetBSD__) - - #include <dev/wscons/wsconsio.h> - #include <xf86Priv.h> diff --git a/x11/xf86-video-intel/patches/patch-src_compat-api.h b/x11/xf86-video-intel/patches/patch-src_compat-api.h deleted file mode 100644 index 0ef711e4d37..00000000000 --- a/x11/xf86-video-intel/patches/patch-src_compat-api.h +++ /dev/null @@ -1,40 +0,0 @@ -$NetBSD: patch-src_compat-api.h,v 1.1 2016/12/07 21:59:54 wiz Exp $ - -Upstream patches for xorg-server-1.19. - ---- src/compat-api.h.orig 2014-11-18 21:50:39.000000000 +0000 -+++ src/compat-api.h -@@ -30,6 +30,7 @@ - - #include <xorg-server.h> - #include <xorgVersion.h> -+#include <xf86Module.h> - - #include <picturestr.h> - #ifndef GLYPH_HAS_GLYPH_PICTURE_ACCESSOR -@@ -42,6 +43,10 @@ - #define xf86ScrnToScreen(s) screenInfo.screens[(s)->scrnIndex] - #endif - -+#if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) >= 22 -+#define HAVE_NOTIFY_FD 1 -+#endif -+ - #ifndef XF86_SCRN_INTERFACE - - #define SCRN_ARG_TYPE int -@@ -223,4 +228,14 @@ static inline void FreePixmap(PixmapPtr - dstx, dsty) - #endif - -+#if ABI_VIDEODRV_VERSION >= SET_ABI_VERSION(22, 0) -+#define OsBlockSIGIO() -+#define OsReleaseSIGIO() -+#endif -+ -+#if !HAVE_NOTIFY_FD -+#define SetNotifyFd(fd, cb, mode, data) AddGeneralSocket(fd); -+#define RemoveNotifyFd(fd) RemoveGeneralSocket(fd) -+#endif -+ - #endif diff --git a/x11/xf86-video-intel/patches/patch-src_legacy_i810_i810__video.c b/x11/xf86-video-intel/patches/patch-src_legacy_i810_i810__video.c deleted file mode 100644 index 1aeb09058f9..00000000000 --- a/x11/xf86-video-intel/patches/patch-src_legacy_i810_i810__video.c +++ /dev/null @@ -1,88 +0,0 @@ -$NetBSD: patch-src_legacy_i810_i810__video.c,v 1.1 2016/12/07 21:59:54 wiz Exp $ - -Upstream patches for xorg-server-1.19. - ---- src/legacy/i810/i810_video.c.orig 2014-08-29 09:33:11.000000000 +0000 -+++ src/legacy/i810/i810_video.c -@@ -77,7 +77,11 @@ static int I810PutImage( ScrnInfoPtr, - static int I810QueryImageAttributes(ScrnInfoPtr, - int, unsigned short *, unsigned short *, int *, int *); - -+#if !HAVE_NOTIFY_FD - static void I810BlockHandler(BLOCKHANDLER_ARGS_DECL); -+#else -+static void I810BlockHandler(void *data, void *_timeout); -+#endif - - #define MAKE_ATOM(a) MakeAtom(a, sizeof(a) - 1, TRUE) - -@@ -418,8 +422,14 @@ I810SetupImageVideo(ScreenPtr screen) - - pI810->adaptor = adapt; - -+#if !HAVE_NOTIFY_FD - pI810->BlockHandler = screen->BlockHandler; - screen->BlockHandler = I810BlockHandler; -+#else -+ RegisterBlockAndWakeupHandlers(I810BlockHandler, -+ (ServerWakeupHandlerProcPtr)NoopDDA, -+ pScrn); -+#endif - - xvBrightness = MAKE_ATOM("XV_BRIGHTNESS"); - xvContrast = MAKE_ATOM("XV_CONTRAST"); -@@ -1135,6 +1145,7 @@ I810QueryImageAttributes( - return size; - } - -+#if !HAVE_NOTIFY_FD - static void - I810BlockHandler (BLOCKHANDLER_ARGS_DECL) - { -@@ -1172,7 +1183,38 @@ I810BlockHandler (BLOCKHANDLER_ARGS_DECL - } - } - } -+#else -+static void -+I810BlockHandler(void *data, void *_timeout) -+{ -+ ScrnInfoPtr pScrn = data; -+ I810Ptr pI810 = I810PTR(pScrn); -+ I810PortPrivPtr pPriv = GET_PORT_PRIVATE(pScrn); -+ I810OverlayRegPtr overlay = (I810OverlayRegPtr) (pI810->FbBase + pI810->OverlayStart); - -+ if(pPriv->videoStatus & TIMER_MASK) { -+ UpdateCurrentTime(); -+ if(pPriv->videoStatus & OFF_TIMER) { -+ if(pPriv->offTime < currentTime.milliseconds) { -+ /* Turn off the overlay */ -+ overlay->OV0CMD &= 0xFFFFFFFE; -+ OVERLAY_UPDATE(pI810->OverlayPhysical); -+ -+ pPriv->videoStatus = FREE_TIMER; -+ pPriv->freeTime = currentTime.milliseconds + FREE_DELAY; -+ } -+ } else { /* FREE_TIMER */ -+ if(pPriv->freeTime < currentTime.milliseconds) { -+ if(pPriv->linear) { -+ xf86FreeOffscreenLinear(pPriv->linear); -+ pPriv->linear = NULL; -+ } -+ pPriv->videoStatus = 0; -+ } -+ } -+ } -+} -+#endif - - /*************************************************************************** - * Offscreen Images -@@ -1373,7 +1415,6 @@ I810DisplaySurface( - UpdateCurrentTime(); - pI810Priv->videoStatus = FREE_TIMER; - pI810Priv->freeTime = currentTime.milliseconds + FREE_DELAY; -- pScrn->pScreen->BlockHandler = I810BlockHandler; - } - - return Success; diff --git a/x11/xf86-video-intel/patches/patch-src_sna_sna.h b/x11/xf86-video-intel/patches/patch-src_sna_sna.h deleted file mode 100644 index cc92d91f2c4..00000000000 --- a/x11/xf86-video-intel/patches/patch-src_sna_sna.h +++ /dev/null @@ -1,17 +0,0 @@ -$NetBSD: patch-src_sna_sna.h,v 1.1 2016/12/07 21:59:54 wiz Exp $ - -Upstream patches for xorg-server-1.19. - ---- src/sna/sna.h.orig 2014-12-20 13:29:05.000000000 +0000 -+++ src/sna/sna.h -@@ -364,8 +364,10 @@ struct sna { - EntityInfoPtr pEnt; - const struct intel_device_info *info; - -+#if !HAVE_NOTIFY_FD - ScreenBlockHandlerProcPtr BlockHandler; - ScreenWakeupHandlerProcPtr WakeupHandler; -+#endif - CloseScreenProcPtr CloseScreen; - - PicturePtr clear; diff --git a/x11/xf86-video-intel/patches/patch-src_sna_sna__accel.c b/x11/xf86-video-intel/patches/patch-src_sna_sna__accel.c deleted file mode 100644 index 01511ab49a0..00000000000 --- a/x11/xf86-video-intel/patches/patch-src_sna_sna__accel.c +++ /dev/null @@ -1,60 +0,0 @@ -$NetBSD: patch-src_sna_sna__accel.c,v 1.2 2018/05/15 10:50:19 wiz Exp $ - -Upstream patches for xorg-server-1.19 and 1.20. - ---- src/sna/sna_accel.c.orig 2014-12-20 13:29:27.000000000 +0000 -+++ src/sna/sna_accel.c -@@ -115,6 +115,11 @@ - #define RECTILINEAR 0x4 - #define OVERWRITES 0x8 - -+#if XFONT2_CLIENT_FUNCS_VERSION >= 1 -+#define AllocateFontPrivateIndex() xfont2_allocate_font_private_index() -+#define FontSetPrivate(font, idx, data) xfont2_font_set_private(font, idx, data) -+#endif -+ - #if 0 - static void __sna_fallback_flush(DrawablePtr d) - { -@@ -16754,7 +16764,9 @@ static int sna_create_gc(GCPtr gc) - - gc->freeCompClip = 0; - gc->pCompositeClip = 0; -+#if XORG_VERSION_CURRENT < XORG_VERSION_NUMERIC(1,19,99,1,0) - gc->pRotatedPixmap = 0; -+#endif - - fb_gc(gc)->bpp = bits_per_pixel(gc->depth); - -@@ -17811,6 +17823,13 @@ static bool sna_option_accel_blt(struct - return strcasecmp(s, "blt") == 0; - } - -+#if HAVE_NOTIFY_FD -+static void sna_accel_notify(int fd, int ready, void *data) -+{ -+ sna_mode_wakeup(data); -+} -+#endif -+ - bool sna_accel_init(ScreenPtr screen, struct sna *sna) - { - const char *backend; -@@ -17822,7 +17841,7 @@ bool sna_accel_init(ScreenPtr screen, st - list_init(&sna->flush_pixmaps); - list_init(&sna->active_pixmaps); - -- AddGeneralSocket(sna->kgem.fd); -+ SetNotifyFd(sna->kgem.fd, sna_accel_notify, X_NOTIFY_READ, sna); - - #ifdef DEBUG_MEMORY - sna->timer_expire[DEBUG_MEMORY_TIMER] = GetTimeInMillis()+ 10 * 1000; -@@ -17998,7 +18017,7 @@ void sna_accel_close(struct sna *sna) - sna_pixmap_expire(sna); - - DeleteCallback(&FlushCallback, sna_accel_flush_callback, sna); -- RemoveGeneralSocket(sna->kgem.fd); -+ RemoveNotifyFd(sna->kgem.fd); - - kgem_cleanup_cache(&sna->kgem); - } diff --git a/x11/xf86-video-intel/patches/patch-src_sna_sna__acpi.c b/x11/xf86-video-intel/patches/patch-src_sna_sna__acpi.c deleted file mode 100644 index 7b9cb083f1b..00000000000 --- a/x11/xf86-video-intel/patches/patch-src_sna_sna__acpi.c +++ /dev/null @@ -1,38 +0,0 @@ -$NetBSD: patch-src_sna_sna__acpi.c,v 1.1 2016/12/07 21:59:54 wiz Exp $ - -Upstream patches for xorg-server-1.19. - ---- src/sna/sna_acpi.c.orig 2014-08-29 09:33:11.000000000 +0000 -+++ src/sna/sna_acpi.c -@@ -92,7 +92,7 @@ void _sna_acpi_wakeup(struct sna *sna) - DBG(("%s: error [%d], detaching from acpid\n", __FUNCTION__, n)); - - /* XXX reattach later? */ -- RemoveGeneralSocket(sna->acpi.fd); -+ RemoveNotifyFd(sna->acpi.fd); - sna_acpi_fini(sna); - return; - } -@@ -136,6 +136,13 @@ void _sna_acpi_wakeup(struct sna *sna) - } while (n); - } - -+#if HAVE_NOTIFY_FD -+static void sna_acpi_notify(int fd, int read, void *data) -+{ -+ _sna_acpi_wakeup(data); -+} -+#endif -+ - static int read_power_state(const char *path) - { - DIR *dir; -@@ -200,7 +207,7 @@ void sna_acpi_init(struct sna *sna) - - DBG(("%s: attaching to acpid\n", __FUNCTION__)); - -- AddGeneralSocket(sna->acpi.fd); -+ SetNotifyFd(sna->acpi.fd, sna_acpi_notify, X_NOTIFY_READ, sna); - sna->acpi.remain = sizeof(sna->acpi.event) - 1; - sna->acpi.offset = 0; - diff --git a/x11/xf86-video-intel/patches/patch-src_sna_sna__display.c b/x11/xf86-video-intel/patches/patch-src_sna_sna__display.c deleted file mode 100644 index 2442bd0d167..00000000000 --- a/x11/xf86-video-intel/patches/patch-src_sna_sna__display.c +++ /dev/null @@ -1,16 +0,0 @@ -$NetBSD: patch-src_sna_sna__display.c,v 1.1 2015/05/22 05:40:36 richard Exp $ - -SunOS needs <alloca.h> for alloca() - ---- src/sna/sna_display.c.orig 2014-12-20 13:45:31.000000000 +0000 -+++ src/sna/sna_display.c -@@ -72,6 +72,9 @@ - #include <memcheck.h> - #endif - -+#ifdef __sun -+#include <alloca.h> -+#endif - /* Minor discrepancy between 32-bit/64-bit ABI in old kernels */ - union compat_mode_get_connector{ - struct drm_mode_get_connector conn; diff --git a/x11/xf86-video-intel/patches/patch-src_sna_sna__dri2.c b/x11/xf86-video-intel/patches/patch-src_sna_sna__dri2.c deleted file mode 100644 index e7ec9398e62..00000000000 --- a/x11/xf86-video-intel/patches/patch-src_sna_sna__dri2.c +++ /dev/null @@ -1,12 +0,0 @@ -$NetBSD: patch-src_sna_sna__dri2.c,v 1.1 2015/03/03 01:02:05 khorben Exp $ - ---- src/sna/sna_dri2.c.orig 2014-12-20 12:46:23.000000000 +0000 -+++ src/sna/sna_dri2.c -@@ -247,6 +247,7 @@ inline static void *dri2_window_get_fron - - #define xorg_can_triple_buffer() 0 - #define swap_limit(d, l) false -+#define mark_stale(b) - - #else - diff --git a/x11/xf86-video-intel/patches/patch-src_sna_sna__driver.c b/x11/xf86-video-intel/patches/patch-src_sna_sna__driver.c deleted file mode 100644 index 900e2f88111..00000000000 --- a/x11/xf86-video-intel/patches/patch-src_sna_sna__driver.c +++ /dev/null @@ -1,77 +0,0 @@ -$NetBSD: patch-src_sna_sna__driver.c,v 1.1 2016/12/07 21:59:54 wiz Exp $ - -Upstream patches for xorg-server-1.19. - ---- src/sna/sna_driver.c.orig 2014-12-11 13:52:11.000000000 +0000 -+++ src/sna/sna_driver.c -@@ -732,6 +732,7 @@ static bool has_shadow(struct sna *sna) - return sna->mode.flip_active == 0; - } - -+#if !HAVE_NOTIFY_FD - static void - sna_block_handler(BLOCKHANDLER_ARGS_DECL) - { -@@ -778,6 +779,31 @@ sna_wakeup_handler(WAKEUPHANDLER_ARGS_DE - FD_CLR(sna->kgem.fd, (fd_set*)read_mask); - } - } -+#else -+static void -+sna_block_handler(void *data, void *_timeout) -+{ -+ struct sna *sna = data; -+ int *timeout = _timeout; -+ struct timeval tv, *tvp; -+ -+ DBG(("%s (timeout=%d)\n", __FUNCTION__, *timeout)); -+ if (*timeout == 0) -+ return; -+ -+ if (*timeout < 0) { -+ tvp = NULL; -+ } else { -+ tv.tv_sec = *timeout / 1000; -+ tv.tv_usec = (*timeout % 1000) * 1000; -+ tvp = &tv; -+ } -+ -+ sna_accel_block_handler(sna, &tvp); -+ if (tvp) -+ *timeout = tvp->tv_sec * 1000 + tvp->tv_usec / 1000; -+} -+#endif - - #if HAVE_UDEV - static void -@@ -948,6 +974,12 @@ static Bool sna_early_close_screen(CLOSE - - /* XXX Note that we will leak kernel resources if !vtSema */ - -+#if HAVE_NOTIFY_FD -+ RemoveBlockAndWakeupHandlers(sna_block_handler, -+ (ServerWakeupHandlerProcPtr)NoopDDA, -+ sna); -+#endif -+ - sna_uevent_fini(sna); - sna_mode_close(sna); - -@@ -1166,11 +1198,17 @@ sna_screen_init(SCREEN_INIT_ARGS_DECL) - * later memory should be bound when allocating, e.g rotate_mem */ - scrn->vtSema = TRUE; - -+#if !HAVE_NOTIFY_FD - sna->BlockHandler = screen->BlockHandler; - screen->BlockHandler = sna_block_handler; - - sna->WakeupHandler = screen->WakeupHandler; - screen->WakeupHandler = sna_wakeup_handler; -+#else -+ RegisterBlockAndWakeupHandlers(sna_block_handler, -+ (ServerWakeupHandlerProcPtr)NoopDDA, -+ sna); -+#endif - - screen->SaveScreen = sna_save_screen; - screen->CreateScreenResources = sna_create_screen_resources; diff --git a/x11/xf86-video-intel/patches/patch-src_uxa_intel.h b/x11/xf86-video-intel/patches/patch-src_uxa_intel.h deleted file mode 100644 index ebaaf4b0e70..00000000000 --- a/x11/xf86-video-intel/patches/patch-src_uxa_intel.h +++ /dev/null @@ -1,17 +0,0 @@ -$NetBSD: patch-src_uxa_intel.h,v 1.1 2016/12/07 21:59:54 wiz Exp $ - -Upstream patches for xorg-server-1.19. - ---- src/uxa/intel.h.orig 2014-12-09 20:41:25.000000000 +0000 -+++ src/uxa/intel.h -@@ -196,7 +196,10 @@ typedef struct intel_screen_private { - - int colorKey; - XF86VideoAdaptorPtr adaptor; -+ -+#if !HAVE_NOTIFY_FD - ScreenBlockHandlerProcPtr BlockHandler; -+#endif - Bool overlayOn; - - struct { diff --git a/x11/xf86-video-intel/patches/patch-src_uxa_intel__display.c b/x11/xf86-video-intel/patches/patch-src_uxa_intel__display.c deleted file mode 100644 index 111eafa090c..00000000000 --- a/x11/xf86-video-intel/patches/patch-src_uxa_intel__display.c +++ /dev/null @@ -1,55 +0,0 @@ -$NetBSD: patch-src_uxa_intel__display.c,v 1.1 2016/12/07 21:59:54 wiz Exp $ - -Upstream patches for xorg-server-1.19. - ---- src/uxa/intel_display.c.orig 2014-12-09 20:43:16.000000000 +0000 -+++ src/uxa/intel_display.c -@@ -2072,6 +2072,7 @@ intel_pageflip_abort(ScrnInfoPtr scrn, x - /* - * Check for pending DRM events and process them. - */ -+#if !HAVE_NOTIFY_FD - static void - drm_wakeup_handler(pointer data, int err, pointer p) - { -@@ -2086,6 +2087,14 @@ drm_wakeup_handler(pointer data, int err - if (FD_ISSET(mode->fd, read_mask)) - drmHandleEvent(mode->fd, &mode->event_context); - } -+#else -+static void -+drm_notify_fd(int fd, int ready, void *data) -+{ -+ struct intel_mode *mode = data; -+ drmHandleEvent(mode->fd, &mode->event_context); -+} -+#endif - - /* - * If there are any available, read drm_events -@@ -2250,9 +2259,11 @@ intel_mode_init(struct intel_screen_priv - * registration within ScreenInit and not PreInit. - */ - mode->flip_count = 0; -- AddGeneralSocket(mode->fd); -+ SetNotifyFd(mode->fd, drm_notify_fd, X_NOTIFY_READ, mode); -+#if !HAVE_NOTIFY_FD - RegisterBlockAndWakeupHandlers((BlockHandlerProcPtr)NoopDDA, - drm_wakeup_handler, mode); -+#endif - } - - void -@@ -2276,9 +2287,11 @@ intel_mode_close(intel_screen_private *i - - intel_drm_abort_scrn(intel->scrn); - -+#if !HAVE_NOTIFY_FD - RemoveBlockAndWakeupHandlers((BlockHandlerProcPtr)NoopDDA, - drm_wakeup_handler, mode); -- RemoveGeneralSocket(mode->fd); -+#endif -+ RemoveNotifyFd(mode->fd); - } - - void diff --git a/x11/xf86-video-intel/patches/patch-src_uxa_intel__driver.c b/x11/xf86-video-intel/patches/patch-src_uxa_intel__driver.c deleted file mode 100644 index e5fbba73926..00000000000 --- a/x11/xf86-video-intel/patches/patch-src_uxa_intel__driver.c +++ /dev/null @@ -1,76 +0,0 @@ -$NetBSD: patch-src_uxa_intel__driver.c,v 1.3 2018/05/15 10:48:01 wiz Exp $ - -Upstream patches for xorg-server-1.19. - ---- src/uxa/intel_driver.c.orig 2014-12-09 20:43:22.000000000 +0000 -+++ src/uxa/intel_driver.c -@@ -642,7 +642,11 @@ redisplay_dirty(ScreenPtr screen, Pixmap - return; - - PixmapRegionInit(&pixregion, dirty->slave_dst->master_pixmap); -+#ifdef HAS_DIRTYTRACKING_ROTATION -+ PixmapSyncDirtyHelper(dirty); -+#else - PixmapSyncDirtyHelper(dirty, &pixregion); -+#endif - RegionUninit(&pixregion); - - intel_flush(intel); -@@ -659,8 +663,9 @@ redisplay_dirty(ScreenPtr screen, Pixmap - } - - static void --intel_dirty_update(ScreenPtr screen) -+intel_dirty_update(intel_screen_private *intel) - { -+ ScreenPtr screen = xf86ScrnToScreen(intel->scrn); - RegionPtr region; - PixmapDirtyUpdatePtr ent; - -@@ -677,6 +682,7 @@ intel_dirty_update(ScreenPtr screen) - } - #endif - -+#if !HAVE_NOTIFY_FD - static void - I830BlockHandler(BLOCKHANDLER_ARGS_DECL) - { -@@ -694,9 +700,22 @@ I830BlockHandler(BLOCKHANDLER_ARGS_DECL) - intel_uxa_block_handler(intel); - intel_video_block_handler(intel); - #ifdef INTEL_PIXMAP_SHARING -- intel_dirty_update(screen); -+ intel_dirty_update(intel); -+#endif -+} -+#else -+static void -+I830BlockHandler(void *data, void *timeout) -+{ -+ intel_screen_private *intel = data; -+ -+ intel_uxa_block_handler(intel); -+ intel_video_block_handler(intel); -+#ifdef INTEL_PIXMAP_SHARING -+ intel_dirty_update(intel); - #endif - } -+#endif - - static Bool - intel_init_initial_framebuffer(ScrnInfoPtr scrn) -@@ -939,8 +958,14 @@ I830ScreenInit(SCREEN_INIT_ARGS_DECL) - "Hardware cursor initialization failed\n"); - } - -+#if !HAVE_NOTIFY_FD - intel->BlockHandler = screen->BlockHandler; - screen->BlockHandler = I830BlockHandler; -+#else -+ RegisterBlockAndWakeupHandlers(I830BlockHandler, -+ (ServerWakeupHandlerProcPtr)NoopDDA, -+ intel); -+#endif - - #ifdef INTEL_PIXMAP_SHARING - screen->StartPixmapTracking = PixmapStartDirtyTracking; |