mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-12-29 17:25:38 +00:00
Documentation: dmaengine: Document new dma_vec API
Document the dmaengine_prep_peripheral_dma_vec() API function, the device_prep_peripheral_dma_vec() backend function, and the dma_vec struct. Signed-off-by: Paul Cercueil <paul@crapouillou.net> Reviewed-by: Bagas Sanjaya <bagasdotme@gmail.com> Link: https://lore.kernel.org/r/20240620122726.41232-8-paul@crapouillou.net Signed-off-by: Vinod Koul <vkoul@kernel.org>
This commit is contained in:
parent
74609e5686
commit
380afccc2a
@ -80,6 +80,10 @@ The details of these operations are:
|
|||||||
|
|
||||||
- slave_sg: DMA a list of scatter gather buffers from/to a peripheral
|
- slave_sg: DMA a list of scatter gather buffers from/to a peripheral
|
||||||
|
|
||||||
|
- peripheral_dma_vec: DMA an array of scatter gather buffers from/to a
|
||||||
|
peripheral. Similar to slave_sg, but uses an array of dma_vec
|
||||||
|
structures instead of a scatterlist.
|
||||||
|
|
||||||
- dma_cyclic: Perform a cyclic DMA operation from/to a peripheral till the
|
- dma_cyclic: Perform a cyclic DMA operation from/to a peripheral till the
|
||||||
operation is explicitly stopped.
|
operation is explicitly stopped.
|
||||||
|
|
||||||
@ -102,6 +106,11 @@ The details of these operations are:
|
|||||||
unsigned int sg_len, enum dma_data_direction direction,
|
unsigned int sg_len, enum dma_data_direction direction,
|
||||||
unsigned long flags);
|
unsigned long flags);
|
||||||
|
|
||||||
|
struct dma_async_tx_descriptor *dmaengine_prep_peripheral_dma_vec(
|
||||||
|
struct dma_chan *chan, const struct dma_vec *vecs,
|
||||||
|
size_t nents, enum dma_data_direction direction,
|
||||||
|
unsigned long flags);
|
||||||
|
|
||||||
struct dma_async_tx_descriptor *dmaengine_prep_dma_cyclic(
|
struct dma_async_tx_descriptor *dmaengine_prep_dma_cyclic(
|
||||||
struct dma_chan *chan, dma_addr_t buf_addr, size_t buf_len,
|
struct dma_chan *chan, dma_addr_t buf_addr, size_t buf_len,
|
||||||
size_t period_len, enum dma_data_direction direction);
|
size_t period_len, enum dma_data_direction direction);
|
||||||
|
@ -433,6 +433,12 @@ supported.
|
|||||||
- residue: Provides the residue bytes of the transfer for those that
|
- residue: Provides the residue bytes of the transfer for those that
|
||||||
support residue.
|
support residue.
|
||||||
|
|
||||||
|
- ``device_prep_peripheral_dma_vec``
|
||||||
|
|
||||||
|
- Similar to ``device_prep_slave_sg``, but it takes a pointer to a
|
||||||
|
array of ``dma_vec`` structures, which (in the long run) will replace
|
||||||
|
scatterlists.
|
||||||
|
|
||||||
- ``device_issue_pending``
|
- ``device_issue_pending``
|
||||||
|
|
||||||
- Takes the first transaction descriptor in the pending queue,
|
- Takes the first transaction descriptor in the pending queue,
|
||||||
@ -544,6 +550,10 @@ dma_cookie_t
|
|||||||
- Not really relevant any more since the introduction of ``virt-dma``
|
- Not really relevant any more since the introduction of ``virt-dma``
|
||||||
that abstracts it away.
|
that abstracts it away.
|
||||||
|
|
||||||
|
dma_vec
|
||||||
|
|
||||||
|
- A small structure that contains a DMA address and length.
|
||||||
|
|
||||||
DMA_CTRL_ACK
|
DMA_CTRL_ACK
|
||||||
|
|
||||||
- If clear, the descriptor cannot be reused by provider until the
|
- If clear, the descriptor cannot be reused by provider until the
|
||||||
|
Loading…
Reference in New Issue
Block a user