OSDN Git Service

Merge branch 'topic/xilinx' into fixes
authorVinod Koul <vkoul@kernel.org>
Fri, 7 Aug 2020 05:43:37 +0000 (11:13 +0530)
committerVinod Koul <vkoul@kernel.org>
Fri, 7 Aug 2020 05:43:37 +0000 (11:13 +0530)
 Conflicts:
Documentation/driver-api/dmaengine/provider.rst
include/linux/dmaengine.h

1  2 
Documentation/driver-api/dmaengine/provider.rst
MAINTAINERS
drivers/dma/Kconfig
include/linux/dmaengine.h

@@@ -239,22 -239,27 +239,43 @@@ Currently, the types available are
      want to transfer a portion of uncompressed data directly to the
      display to print it
  
 +- DMA_COMPLETION_NO_ORDER
 +
 +  - The device does not support in order completion.
 +
 +  - The driver should return DMA_OUT_OF_ORDER for device_tx_status if
 +    the device is setting this capability.
 +
 +  - All cookie tracking and checking API should be treated as invalid if
 +    the device exports this capability.
 +
 +  - At this point, this is incompatible with polling option for dmatest.
 +
 +  - If this cap is set, the user is recommended to provide an unique
 +    identifier for each descriptor sent to the DMA device in order to
 +    properly track the completion.
 +
+ - DMA_REPEAT
+   - The device supports repeated transfers. A repeated transfer, indicated by
+     the DMA_PREP_REPEAT transfer flag, is similar to a cyclic transfer in that
+     it gets automatically repeated when it ends, but can additionally be
+     replaced by the client.
+   - This feature is limited to interleaved transfers, this flag should thus not
+     be set if the DMA_INTERLEAVE flag isn't set. This limitation is based on
+     the current needs of DMA clients, support for additional transfer types
+     should be added in the future if and when the need arises.
+ - DMA_LOAD_EOT
+   - The device supports replacing repeated transfers at end of transfer (EOT)
+     by queuing a new transfer with the DMA_PREP_LOAD_EOT flag set.
+   - Support for replacing a currently running transfer at another point (such
+     as end of burst instead of end of transfer) will be added in the future
+     based on DMA clients needs, if and when the need arises.
  These various types will also affect how the source and destination
  addresses change over time.
  
diff --cc MAINTAINERS
Simple merge
Simple merge
@@@ -62,7 -61,8 +62,9 @@@ enum dma_transaction_type 
        DMA_SLAVE,
        DMA_CYCLIC,
        DMA_INTERLEAVE,
 +      DMA_COMPLETION_NO_ORDER,
+       DMA_REPEAT,
+       DMA_LOAD_EOT,
  /* last transaction type for creation of the capabilities mask */
        DMA_TX_TYPE_END,
  };