Commit | Line | Data |
---|---|---|
ec8f24b7 | 1 | # SPDX-License-Identifier: GPL-2.0-only |
62304fb1 GP |
2 | menu "DMABUF options" |
3 | ||
4 | config SYNC_FILE | |
31954660 | 5 | bool "Explicit Synchronization Framework" |
62304fb1 | 6 | default n |
62304fb1 GP |
7 | select DMA_SHARED_BUFFER |
8 | ---help--- | |
31954660 | 9 | The Sync File Framework adds explicit syncronization via |
f54d1867 | 10 | userspace. It enables send/receive 'struct dma_fence' objects to/from |
31954660 GP |
11 | 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 | |
baa293e9 | 18 | Documentation/driver-api/sync_file.rst. |
31954660 | 19 | |
35538d78 GP |
20 | config 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 | ||
fbb0de79 GH |
33 | config UDMABUF |
34 | bool "userspace dmabuf misc driver" | |
35 | default n | |
36 | depends on DMA_SHARED_BUFFER | |
68d2f70e | 37 | depends on MEMFD_CREATE || COMPILE_TEST |
fbb0de79 GH |
38 | 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 | ||
9536b64a CW |
42 | config DMABUF_SELFTESTS |
43 | tristate "Selftests for the dma-buf interfaces" | |
44 | default n | |
45 | depends on DMA_SHARED_BUFFER | |
46 | ||
c02a81fb AD |
47 | menuconfig DMABUF_HEAPS |
48 | bool "DMA-BUF Userland Memory Heaps" | |
49 | select DMA_SHARED_BUFFER | |
50 | help | |
51 | Choose this option to enable the DMA-BUF userland memory heaps. | |
52 | This options creates per heap chardevs in /dev/dma_heap/ which | |
53 | allows userspace to allocate dma-bufs that can be shared | |
54 | between drivers. | |
55 | ||
62304fb1 | 56 | endmenu |