forked from torvalds/linux
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Just prep work to polish and consolidate all the dma-buf related documenation. Unfortunately I didn't discover a way to both integrate this new file into the overall toc while keeping it at the current place. Work around that by moving it into the overall driver-api/index.rst. Cc: linux-doc@vger.kernel.org Cc: Jonathan Corbet <corbet@lwn.net> Cc: Sumit Semwal <sumit.semwal@linaro.org> Signed-off-by: Daniel Vetter <daniel.vetter@intel.com> Signed-off-by: Jonathan Corbet <corbet@lwn.net>
- Loading branch information
Showing
3 changed files
with
74 additions
and
70 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,73 @@ | ||
Buffer Sharing and Synchronization | ||
================================== | ||
|
||
The dma-buf subsystem provides the framework for sharing buffers for | ||
hardware (DMA) access across multiple device drivers and subsystems, and | ||
for synchronizing asynchronous hardware access. | ||
|
||
This is used, for example, by drm "prime" multi-GPU support, but is of | ||
course not limited to GPU use cases. | ||
|
||
The three main components of this are: (1) dma-buf, representing a | ||
sg_table and exposed to userspace as a file descriptor to allow passing | ||
between devices, (2) fence, which provides a mechanism to signal when | ||
one device as finished access, and (3) reservation, which manages the | ||
shared or exclusive fence(s) associated with the buffer. | ||
|
||
Shared DMA Buffers | ||
------------------ | ||
|
||
.. kernel-doc:: drivers/dma-buf/dma-buf.c | ||
:export: | ||
|
||
.. kernel-doc:: include/linux/dma-buf.h | ||
:internal: | ||
|
||
Reservation Objects | ||
------------------- | ||
|
||
.. kernel-doc:: drivers/dma-buf/reservation.c | ||
:doc: Reservation Object Overview | ||
|
||
.. kernel-doc:: drivers/dma-buf/reservation.c | ||
:export: | ||
|
||
.. kernel-doc:: include/linux/reservation.h | ||
:internal: | ||
|
||
DMA Fences | ||
---------- | ||
|
||
.. kernel-doc:: drivers/dma-buf/dma-fence.c | ||
:export: | ||
|
||
.. kernel-doc:: include/linux/dma-fence.h | ||
:internal: | ||
|
||
Seqno Hardware Fences | ||
~~~~~~~~~~~~~~~~~~~~~ | ||
|
||
.. kernel-doc:: drivers/dma-buf/seqno-fence.c | ||
:export: | ||
|
||
.. kernel-doc:: include/linux/seqno-fence.h | ||
:internal: | ||
|
||
DMA Fence Array | ||
~~~~~~~~~~~~~~~ | ||
|
||
.. kernel-doc:: drivers/dma-buf/dma-fence-array.c | ||
:export: | ||
|
||
.. kernel-doc:: include/linux/dma-fence-array.h | ||
:internal: | ||
|
||
DMA Fence uABI/Sync File | ||
~~~~~~~~~~~~~~~~~~~~~~~~ | ||
|
||
.. kernel-doc:: drivers/dma-buf/sync_file.c | ||
:export: | ||
|
||
.. kernel-doc:: include/linux/sync_file.h | ||
:internal: | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters