Lines Matching +full:slave +full:- +full:mode

8           ``Documentation/crypto/async-tx-api.rst``
11 Below is a guide to device driver writers on how to use the Slave-DMA API of the
12 DMA Engine. This is applicable only for slave DMA usage only.
17 The slave DMA usage consists of following steps:
19 - Allocate a DMA slave channel
21 - Set slave and controller specific parameters
23 - Get a descriptor for transaction
25 - Submit the transaction
27 - Issue pending requests and wait for callback notification
31 1. Allocate a DMA slave channel
33 Channel allocation is slightly different in the slave DMA context,
40 .. code-block:: c
51 2. Set slave and controller specific parameters
54 driver. Most of the generic information which a slave DMA can use
66 .. code-block:: c
78 For slave usage the various modes of slave transfers supported by the
79 DMA-engine are:
81 - slave_sg: DMA a list of scatter gather buffers from/to a peripheral
83 - peripheral_dma_vec: DMA an array of scatter gather buffers from/to a
87 - dma_cyclic: Perform a cyclic DMA operation from/to a peripheral till the
90 - interleaved_dma: This is common to Slave as well as M2M clients. For slave
97 A non-NULL return of this transfer API represents a "descriptor" for
102 .. code-block:: c
130 .. code-block:: c
150 case for slave/cyclic DMA.
152 For slave DMA, the subsequent transaction may not be available
154 slave DMA callbacks are permitted to prepare and submit a new
176 .. code-block:: c
195 .. code-block:: c
203 Client drivers can query if a given mode is supported with:
205 .. code-block:: c
208 enum dma_desc_metadata_mode mode);
210 Depending on the used mode client drivers must follow different flow.
214 - DMA_MEM_TO_DEV / DEV_MEM_TO_MEM:
222 - DMA_DEV_TO_MEM:
233 - DMA_MEM_TO_DEV / DEV_MEM_TO_MEM:
243 - DMA_DEV_TO_MEM:
253 When DESC_METADATA_ENGINE mode is used the metadata area for the descriptor
267 .. code-block:: c
296 .. code-block:: c
301 ------------
305 .. code-block:: c
332 .. code-block:: c
340 .. code-block:: c
349 .. code-block:: c
371 .. code-block:: c