[Mesa-dev] [PATCH 0/7] broadcom/vc4: Native fence fd support

Stefan Schake stschake at gmail.com
Sat Apr 21 22:41:18 UTC 2018


This series adds support for the native fence fd extension to vc4.
The implementation relies on a newly introduced kernel interface that
allows submitting syncobjs for in/out fences during job submission.

Since syncobjs are relatively new, patches 1 and 3 have build changes
for automake and meson to require a recent libdrm version.

There is some scope here to replace the previous sequence number based
implementation with only syncobjs, but given that we need to continue
supporting older kernels I felt it would have only added complexity.

This has been tested with piglit and kmscube -A(tomic). In particular,
I checked that the fd numbers weren't increasing during the kmscube run.

Should not be merged until the kernel side lands. In particular, patch 2
is purely provisional.

Stefan Schake (7):
  broadcom/vc4: Drop libdrm_vc4 requirement
  drm-uapi: Update vc4 header with syncobj submit support
  broadcom/vc4: Bump libdrm requirement
  broadcom/vc4: Detect syncobj support
  broadcom/vc4: Store job fence in syncobj
  broadcom/vc4: Expose syncobj import
  broadcom/vc4: Native fence fd support

 configure.ac                            |  3 +-
 include/drm-uapi/vc4_drm.h              | 15 ++++++++
 meson.build                             |  2 +
 src/gallium/drivers/vc4/vc4_context.c   | 51 ++++++++++++++++++++++---
 src/gallium/drivers/vc4/vc4_context.h   | 12 +++++-
 src/gallium/drivers/vc4/vc4_fence.c     | 68 +++++++++++++++++++++++++++++++--
 src/gallium/drivers/vc4/vc4_job.c       | 50 +++++++++++++++++++++++-
 src/gallium/drivers/vc4/vc4_screen.c    |  8 +++-
 src/gallium/drivers/vc4/vc4_screen.h    |  5 ++-
 src/gallium/drivers/vc4/vc4_simulator.c |  1 +
 10 files changed, 198 insertions(+), 17 deletions(-)

-- 
2.14.1



More information about the mesa-dev mailing list