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

Stefan Schake stschake at gmail.com
Tue Apr 24 22:00:54 UTC 2018


v2 drops the submit flags, directly moves in fence handling to the
job submit function and queries for the syncobj cap instead of using
a separate support parameter.

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 (6):
  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: Native fence fd support

 configure.ac                          |  3 +-
 include/drm-uapi/vc4_drm.h            | 13 +++++--
 meson.build                           |  2 +
 src/gallium/drivers/vc4/vc4_context.c | 29 +++++++++++++--
 src/gallium/drivers/vc4/vc4_context.h | 10 ++++-
 src/gallium/drivers/vc4/vc4_fence.c   | 70 +++++++++++++++++++++++++++++++++--
 src/gallium/drivers/vc4/vc4_job.c     | 34 ++++++++++++++++-
 src/gallium/drivers/vc4/vc4_screen.c  | 12 +++++-
 src/gallium/drivers/vc4/vc4_screen.h  |  5 ++-
 9 files changed, 160 insertions(+), 18 deletions(-)

-- 
2.7.4



More information about the mesa-dev mailing list