blob: a23b6752d11ac08d403bd88ce31c9a554482fc85 [file] [log] [blame]
Thomas Gleixnerec8f24b2019-05-19 13:07:45 +01001# SPDX-License-Identifier: GPL-2.0-only
Gustavo Padovan62304fb2016-04-28 10:46:58 -03002menu "DMABUF options"
3
4config SYNC_FILE
Gustavo Padovan31954662016-05-31 11:33:16 -03005 bool "Explicit Synchronization Framework"
Gustavo Padovan62304fb2016-04-28 10:46:58 -03006 default n
Gustavo Padovan62304fb2016-04-28 10:46:58 -03007 select DMA_SHARED_BUFFER
8 ---help---
Gustavo Padovan31954662016-05-31 11:33:16 -03009 The Sync File Framework adds explicit syncronization via
Chris Wilsonf54d1862016-10-25 13:00:45 +010010 userspace. It enables send/receive 'struct dma_fence' objects to/from
Gustavo Padovan31954662016-05-31 11:33:16 -030011 userspace via Sync File fds for synchronization between drivers via
12 userspace components. It has been ported from Android.
13
14 The first and main user for this is graphics in which a fence is
15 associated with a buffer. When a job is submitted to the GPU a fence
16 is attached to the buffer and is transferred via userspace, using Sync
17 Files fds, to the DRM driver for example. More details at
Mauro Carvalho Chehabbaa293e2019-06-27 15:39:22 -030018 Documentation/driver-api/sync_file.rst.
Gustavo Padovan31954662016-05-31 11:33:16 -030019
Gustavo Padovan35538d72016-08-11 12:26:44 -030020config SW_SYNC
21 bool "Sync File Validation Framework"
22 default n
23 depends on SYNC_FILE
24 depends on DEBUG_FS
25 ---help---
26 A sync object driver that uses a 32bit counter to coordinate
27 synchronization. Useful when there is no hardware primitive backing
28 the synchronization.
29
30 WARNING: improper use of this can result in deadlocking kernel
31 drivers from userspace. Intended for test and debug only.
32
Gerd Hoffmannfbb0de72018-08-27 11:34:44 +020033config UDMABUF
34 bool "userspace dmabuf misc driver"
35 default n
36 depends on DMA_SHARED_BUFFER
Gerd Hoffmann68d2f702018-09-11 15:42:09 +020037 depends on MEMFD_CREATE || COMPILE_TEST
Gerd Hoffmannfbb0de72018-08-27 11:34:44 +020038 help
39 A driver to let userspace turn memfd regions into dma-bufs.
40 Qemu can use this to create host dmabufs for guest framebuffers.
41
Chris Wilson9536b642019-08-19 10:59:26 +010042config DMABUF_SELFTESTS
43 tristate "Selftests for the dma-buf interfaces"
44 default n
45 depends on DMA_SHARED_BUFFER
46
Gustavo Padovan62304fb2016-04-28 10:46:58 -030047endmenu