Robert Foss
2cd7b6f08b
drm/virtio: add in/out fence support for explicit synchronization
...
When the execbuf call receives an in-fence it will get the dma_fence
related to that fence fd and wait on it before submitting the draw call.
On the out-fence side we get fence returned by the submitted draw call
and attach it to a sync_file and send the sync_file fd to userspace. On
error -1 is returned to userspace.
VIRTGPU_EXECBUF_FENCE_FD_IN & VIRTGPU_EXECBUF_FENCE_FD_OUT
are supported at the simultaneously and can be flagged
for simultaneously.
Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.com >
Signed-off-by: Robert Foss <robert.foss@collabora.com >
Reviewed-by: Emil Velikov <emil.velikov@collabora.com >
Link: http://patchwork.freedesktop.org/patch/msgid/20181112165157.32765-4-robert.foss@collabora.com
Suggested-by: Rob Herring <robh@kernel.org >
Reviewed-by: Emil Velikov <emil.velikov@collabora.com >
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
2018-11-14 14:21:02 +01:00
Robert Foss
a56f9c868c
drm/virtio: add uapi for in and out explicit fences
...
Add a new field called fence_fd that will be used by userspace to send
in-fences to the kernel and receive out-fences created by the kernel.
This uapi enables virtio to take advantage of explicit synchronization of
dma-bufs.
There are two new flags:
* VIRTGPU_EXECBUF_FENCE_FD_IN to be used when passing an in-fence fd.
* VIRTGPU_EXECBUF_FENCE_FD_OUT to be used when requesting an out-fence fd
The execbuffer IOCTL is now read-write to allow the userspace to read the
out-fence.
On error -1 should be returned in the fence_fd field.
Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.com >
Signed-off-by: Robert Foss <robert.foss@collabora.com >
Reviewed-by: Emil Velikov <emil.velikov@collabora.com >
Link: http://patchwork.freedesktop.org/patch/msgid/20181112165157.32765-3-robert.foss@collabora.com
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
2018-11-14 14:21:01 +01:00
Dave Airlie
9a191b1149
virtio-gpu: fix ioctl and expose the fixed status to userspace.
...
This exposes to mesa that it can use the fixed ioctl for querying
later cap sets, cap set 1 is forever frozen in time.
Signed-off-by: Dave Airlie <airlied@redhat.com >
Link: http://patchwork.freedesktop.org/patch/msgid/20180221015003.22884-1-airlied@gmail.com
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
2018-02-27 08:37:58 +01:00
Emil Velikov
3818081565
drm/virgl: add extern C guard for the UAPI header
...
Cc: Dave Airlie <airlied@redhat.com >
Cc: Gerd Hoffmann <kraxel@redhat.com >
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com >
2016-05-13 14:06:20 +01:00
Gabriel Laskar
6e82e9c857
drm: fix inclusion of drm.h in virtgpu_drm.h
...
Using `#include "drm.h"` instead of `#include <drm/drm.h>` allow drm
headers to be moved in another directory without changes, like for the
libdrm imports.
Signed-off-by: Gabriel Laskar <gabriel@lse.epita.fr >
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com >
CC: Emil Velikov <emil.l.velikov@gmail.com >
CC: Mikko Rapeli <mikko.rapeli@iki.fi >
2015-12-10 12:33:23 +01:00
Gabriel Laskar
29e08b0518
drm: use __u{32,64} instead of uint{32,64}_t in virtgpu_drm.h
...
Signed-off-by: Gabriel Laskar <gabriel@lse.epita.fr >
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com >
CC: Emil Velikov <emil.l.velikov@gmail.com >
CC: Mikko Rapeli <mikko.rapeli@iki.fi >
2015-12-10 12:33:23 +01:00
Gerd Hoffmann
62fb7a5e10
virtio-gpu: add 3d/virgl support
...
Add the bits needed for opengl rendering support: query
capabilities, new virtio commands, drm ioctls.
Signed-off-by: Dave Airlie <airlied@redhat.com >
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
2015-10-16 10:44:02 +02:00