Date: Mon, 20 Apr 2020 09:59:47 +0000 (UTC) From: Greg V <greg@unrelenting.technology> To: Tomasz CEDRO <tomek@cedro.info> Cc: FreeBSD Questions Mailing List <freebsd-questions@freebsd.org>, freebsd-x11@freebsd.org Subject: Re: Wayland on FreeBSD Message-ID: <e775e058-5904-402f-a505-6775e318bda0@localhost> In-Reply-To: <CAFYkXjkFT7R0A-ZsH4p6C0_h8%2BqJ0-wWJ--tTJLtS0Pja0ZzSQ@mail.gmail.com> References: <CAFYkXjmfyLZAi1HZe-RE3wLxa6GRNP6GkmtZG-4T2puRDOz0JA@mail.gmail.com> <CAFYkXjkFT7R0A-ZsH4p6C0_h8%2BqJ0-wWJ--tTJLtS0Pja0ZzSQ@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Apr 20, 2020 4:39:15 AM Tomasz CEDRO <tomek@cedro.info>: > Enlightenment has and needs new Wayland support that is based on > ecore_wl2 from EFL. Someone hardcoded Linux DMA code into > src/lib/ecore_wl2/ecore_wl2_buffer.c and that part of EFL does not > build anymore on FreeBSD (not mandatory to run on Xorg). The good news > is that EFL builds with both old Wayland support (wl-deprecated > switch) and new one required for Enlightenment (wl switch) when all > linuxisms are commented out from ecore_wl2_buffer.c. This means if we > find a FreeBSD specific replacement for those DMA transfers all should > work fine..? > > https://github.com/Enlightenment/efl/blob/master/src/lib/ecore_wl2/ecore_wl2_buffer.c There are no "Linux specific DMA transfers" in userspace applications :) DMA-BUF is basically a way to refer to GPU buffers from userspace, pass them around as file descriptors, and synchronize access to them. Of course it is supported, it's a very important part of the DRM stack. Nothing currently installs the uapi header <linux/dma-buf.h> that contains some definitions for the sync ioctl, but the ioctl works: https://github.com/FreeBSDDesktop/kms-drm/blob/drm-v4.16/linuxkpi/gplv2/src/linux_dmabuf.c Chromium currently patches ifdefs to use the inlined copy of the header that's already there for older Linux installations: https://github.com/freebsd/freebsd-ports/blob/master/www/chromium/files/patch-ui_gfx_linux_client__native__pixmap__dmabuf.cc https://chromium.googlesource.com/chromium/src/+/refs/tags/84.0.4120.1/ui/gfx/linux/client_native_pixmap_dmabuf.cc But really we need a tiny port that installs that header already :)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?e775e058-5904-402f-a505-6775e318bda0>