# Buildsheet autogenerated by ravenadm tool -- Do not edit. NAMEBASE= xorg-driver-video-intel VERSION= 2.99.917.20181203 KEYWORDS= x11_drivers VARIANTS= standard SDESC[standard]= X.org driver for Intel graphics controllers HOMEPAGE= https://www.x.org/ CONTACT= nobody DOWNLOAD_GROUPS= main SITES[main]= https://cgit.freedesktop.org/xorg/driver/xf86-video-intel/snapshot/ DISTFILE[1]= e5ff8e1828f97891c819c919d7115c6e18b2eb1f.tar.xz:main DF_INDEX= 1 SPKGS[standard]= single OPTIONS_AVAILABLE= SNA UXA OPTIONS_STANDARD= SNA UXA OPTGROUP_RADIO= ACCEL OPTDESCR[ACCEL]= Default AccelMethod (if not specified in xorg.conf) OPTGROUP[ACCEL]= SNA UXA OPT_ON[all]= UXA NOT_FOR_ARCH= aarch64 BUILDRUN_DEPENDS= xorg-server:single:standard xorg-xcb-util:single:standard libdrm:single:standard USES= mesa libtool cpe autoreconf XORG_COMPONENTS= xorgproto pciaccess pixman x11 xcb xext xrender xv xvmc DISTNAME= e5ff8e1828f97891c819c919d7115c6e18b2eb1f LICENSE= MIT:single LICENSE_FILE= MIT:{{WRKSRC}}/COPYING LICENSE_SCHEME= solo CPE_PRODUCT= xf86-video-intel CPE_VENDOR= x FPC_EQUIVALENT= x11-drivers/xf86-video-intel MUST_CONFIGURE= gnu INSTALL_TARGET= install-strip CFLAGS= -Wunused-but-set-variable [SNA].DESCRIPTION= SandyBridge's New Acceleration [SNA].CONFIGURE_ARGS_ON= --with-default-accel=sna [UXA].DESCRIPTION= Unified Acceleration Architecture [UXA].CONFIGURE_ARGS_ON= --with-default-accel=uxa pre-configure: # Broken by political correctness ${SED} -i.PC \ -e 's|slave_dst|secondary_dst|g' \ -e 's|master_pixmap|primary_pixmap|g' \ ${WRKSRC}/src/sna/sna_accel.c \ ${WRKSRC}/src/uxa/intel_driver.c pre-configure-dragonfly: # Prefer to use dfly specific sigjmp_buf for less errors ${REINPLACE_CMD} -e 's|jmp_buf |sigjmp_buf |g' \ ${WRKSRC}/src/sna/sna.h \ ${WRKSRC}/src/sna/sna_accel.c [FILE:531:descriptions/desc.single] The xf86-video-intel module is an open-source 2D graphics driver for the X Window System as implemented by X.org. It supports a variety of Intel graphics chipsets including: i810/i810e/i810-dc100,i815, i830M,845G,852GM,855GM,865G, 915G/GM,945G/GM/GME,946GZ G/GM/GME/Q965, G/Q33,G/Q35,G41,G/Q43,G/GM/Q45 PineView-M (Atom N400 series) PineView-D (Atom D400/D500 series) Intel(R) HD Graphics, Intel(R) Iris(TM) Graphics, Intel(R) Iris(TM) Pro Graphics. [FILE:126:distinfo] 298cb9bec0108f96cbf38d9ce802625b125c720cf0c5723e0410dc12b50496fd 954764 e5ff8e1828f97891c819c919d7115c6e18b2eb1f.tar.xz [FILE:324:manifests/plist.single] %%ONLY-LINUX%%libexec/xf86-video-intel-backlight-helper %%ONLY-LINUX%%share/polkit-1/actions/org.x.xf86-video-intel.backlight-helper.policy lib/ libI810XvMC.so libI810XvMC.so.1 libI810XvMC.so.1.0.0 libIntelXvMC.so libIntelXvMC.so.1 libIntelXvMC.so.1.0.0 lib/xorg/modules/drivers/intel_drv.so share/man/man4/intel.4.gz [FILE:1594:patches/patch-src_intel__list.h] --- src/intel_list.h.orig 2018-12-03 09:01:25 UTC +++ src/intel_list.h @@ -305,8 +305,6 @@ list_is_empty(const struct list *head) #define list_last_entry(ptr, type, member) \ list_entry((ptr)->prev, type, member) -#define __container_of(ptr, sample, member) \ - (void *)((char *)(ptr) - ((char *)&(sample)->member - (char *)(sample))) /** * Loop through the list given by head and set pos to struct in the list. * @@ -325,12 +323,12 @@ list_is_empty(const struct list *head) * */ #define list_for_each_entry(pos, head, member) \ - for (pos = __container_of((head)->next, pos, member); \ + for (pos = NULL, pos = __container_of((head)->next, pos, member); \ &pos->member != (head); \ pos = __container_of(pos->member.next, pos, member)) -#define list_for_each_entry_reverse(pos, head, member) \ - for (pos = __container_of((head)->prev, pos, member); \ +#define list_for_each_entry_reverse(pos, head, member) \ + for (pos = NULL, pos = __container_of((head)->prev, pos, member); \ &pos->member != (head); \ pos = __container_of(pos->member.prev, pos, member)) @@ -342,7 +340,7 @@ list_is_empty(const struct list *head) * See list_for_each_entry for more details. */ #define list_for_each_entry_safe(pos, tmp, head, member) \ - for (pos = __container_of((head)->next, pos, member), \ + for (pos = NULL, pos = __container_of((head)->next, pos, member), \ tmp = __container_of(pos->member.next, pos, member); \ &pos->member != (head); \ pos = tmp, tmp = __container_of(pos->member.next, tmp, member)) [FILE:311:patches/patch-src_legacy_i810_i810.h] --- src/legacy/i810/i810.h.orig 2018-12-03 09:01:25 UTC +++ src/legacy/i810/i810.h @@ -322,6 +322,5 @@ extern void I810InitMC(ScreenPtr pScreen extern const OptionInfoRec *I810AvailableOptions(int chipid, int busid); extern const int I810CopyROP[16]; -const int I810PatternROP[16]; #endif /* _I810_H_ */ [FILE:433:patches/patch-src_sna_sna__video.c] sna_video.c:62:10: fatal error: 'byteswap.h' file not found #include ^~~~~~~~~~~~ --- src/sna/sna_video.c.orig 2018-12-03 09:01:25 UTC +++ src/sna/sna_video.c @@ -59,7 +59,12 @@ #include "intel_options.h" #include +#if defined(__linux__) || defined(__GLIBC__) #include +#else +#include +#define bswap_32 bswap32 +#endif #ifdef SNA_XVMC #define _SNA_XVMC_SERVER_ [FILE:944:dragonfly/patch-src_intel__device.c] i915 does not use hw.dri.0.busid so simplify to basics. --- src/intel_device.c.orig 2018-12-03 09:01:25 UTC +++ src/intel_device.c @@ -28,6 +28,9 @@ #include "config.h" #endif +#define _WITH_GETLINE /* to expose getline() in stdio.h on FreeBSD */ +#include /* for getline() */ + #include #include #include @@ -424,6 +427,10 @@ static int __intel_open_device__legacy(c "pci:%04x:%02x:%02x.%d", pci->domain, pci->bus, pci->dev, pci->func); +#if defined(__DragonFly__) + /* assume modesetting for i915, allow multiple loads and no fbcon */ + load_i915_kernel_module(); +#else ret = drmCheckModesettingSupported(id); if (ret) { if (load_i915_kernel_module() == 0) @@ -433,6 +440,7 @@ static int __intel_open_device__legacy(c /* Be nice to the user and load fbcon too */ (void)xf86LoadKernelModule("fbcon"); } +#endif return fd_set_nonblock(drmOpen(NULL, id)); } [FILE:958:dragonfly/patch-src_sna_kgem.c] --- src/sna/kgem.c.orig 2018-12-03 09:01:25 UTC +++ src/sna/kgem.c @@ -29,6 +29,9 @@ #include "config.h" #endif +#define _WITH_GETLINE /* to expose getline() in stdio.h on FreeBSD */ +#include /* for getline() */ + #include "sna.h" #include "sna_reg.h" @@ -71,7 +74,7 @@ search_snoop_cache(struct kgem *kgem, un #define DBG_NO_USERPTR 0 #define DBG_NO_UNSYNCHRONIZED_USERPTR 0 #define DBG_NO_COHERENT_MMAP_GTT 0 -#define DBG_NO_LLC 0 +#define DBG_NO_LLC 1 #define DBG_NO_SEMAPHORES 0 #define DBG_NO_MADV 0 #define DBG_NO_UPLOAD_CACHE 0 @@ -3313,7 +3316,9 @@ bool __kgem_ring_is_idle(struct kgem *kg if (rq) { struct kgem_request *tmp; - if (__kgem_busy(kgem, rq->bo->handle)) { + if (rq->bo == NULL) + fprintf(stderr, "__kgem_ring_is_idle: rq->bo == NULL\n"); + if (rq->bo && __kgem_busy(kgem, rq->bo->handle)) { DBG(("%s: last fence handle=%d still busy\n", __FUNCTION__, rq->bo->handle)); return false; [FILE:284:dragonfly/patch-src_sna_sna__threads.c] --- src/sna/sna_threads.c.orig 2018-12-03 09:01:25 UTC +++ src/sna/sna_threads.c @@ -29,6 +29,9 @@ #include "config.h" #endif +#define _WITH_GETLINE /* to expose getline() in stdio.h on FreeBSD */ +#include /* for getline() */ + #include "sna.h" #include [FILE:944:freebsd/patch-src_intel__device.c] i915 does not use hw.dri.0.busid so simplify to basics. --- src/intel_device.c.orig 2018-12-03 09:01:25 UTC +++ src/intel_device.c @@ -28,6 +28,9 @@ #include "config.h" #endif +#define _WITH_GETLINE /* to expose getline() in stdio.h on FreeBSD */ +#include /* for getline() */ + #include #include #include @@ -424,6 +427,10 @@ static int __intel_open_device__legacy(c "pci:%04x:%02x:%02x.%d", pci->domain, pci->bus, pci->dev, pci->func); +#if defined(__DragonFly__) + /* assume modesetting for i915, allow multiple loads and no fbcon */ + load_i915_kernel_module(); +#else ret = drmCheckModesettingSupported(id); if (ret) { if (load_i915_kernel_module() == 0) @@ -433,6 +440,7 @@ static int __intel_open_device__legacy(c /* Be nice to the user and load fbcon too */ (void)xf86LoadKernelModule("fbcon"); } +#endif return fd_set_nonblock(drmOpen(NULL, id)); } [FILE:958:freebsd/patch-src_sna_kgem.c] --- src/sna/kgem.c.orig 2018-12-03 09:01:25 UTC +++ src/sna/kgem.c @@ -29,6 +29,9 @@ #include "config.h" #endif +#define _WITH_GETLINE /* to expose getline() in stdio.h on FreeBSD */ +#include /* for getline() */ + #include "sna.h" #include "sna_reg.h" @@ -71,7 +74,7 @@ search_snoop_cache(struct kgem *kgem, un #define DBG_NO_USERPTR 0 #define DBG_NO_UNSYNCHRONIZED_USERPTR 0 #define DBG_NO_COHERENT_MMAP_GTT 0 -#define DBG_NO_LLC 0 +#define DBG_NO_LLC 1 #define DBG_NO_SEMAPHORES 0 #define DBG_NO_MADV 0 #define DBG_NO_UPLOAD_CACHE 0 @@ -3313,7 +3316,9 @@ bool __kgem_ring_is_idle(struct kgem *kg if (rq) { struct kgem_request *tmp; - if (__kgem_busy(kgem, rq->bo->handle)) { + if (rq->bo == NULL) + fprintf(stderr, "__kgem_ring_is_idle: rq->bo == NULL\n"); + if (rq->bo && __kgem_busy(kgem, rq->bo->handle)) { DBG(("%s: last fence handle=%d still busy\n", __FUNCTION__, rq->bo->handle)); return false; [FILE:284:freebsd/patch-src_sna_sna__threads.c] --- src/sna/sna_threads.c.orig 2018-12-03 09:01:25 UTC +++ src/sna/sna_threads.c @@ -29,6 +29,9 @@ #include "config.h" #endif +#define _WITH_GETLINE /* to expose getline() in stdio.h on FreeBSD */ +#include /* for getline() */ + #include "sna.h" #include