PSOC E8XXGP Device Support Library

| PSOC E8XXGP Device Support Library

Functions
Descriptor Functions
PDL API Reference » DMA (Direct Memory Access) » Functions

## General Description

## Functions
cy_en_dma_status_t | Cy_DMA_Descriptor_Init (cy_stc_dma_descriptor_t *descriptor, cy_stc_dma_descriptor_config_t const *config)
| Initializes the descriptor structure in SRAM from a pre-initialized configuration structure. More...
void | Cy_DMA_Descriptor_DeInit (cy_stc_dma_descriptor_t *descriptor)
| Clears the content of the specified descriptor. More...
void | Cy_DMA_Descriptor_SetNextDescriptor (cy_stc_dma_descriptor_t *descriptor, cy_stc_dma_descriptor_t const *nextDescriptor)
| Sets a Next Descriptor for the specified descriptor. More...
void | Cy_DMA_Descriptor_SetDescriptorType (cy_stc_dma_descriptor_t *descriptor, cy_en_dma_descriptor_type_t descriptorType)
| Sets the descriptor's type for the specified descriptor. More...
__STATIC_INLINE void | Cy_DMA_Descriptor_SetSrcAddress (cy_stc_dma_descriptor_t *descriptor, void const *srcAddress)
| Sets the source address for the specified descriptor. More...
__STATIC_INLINE void | Cy_DMA_Descriptor_SetDstAddress (cy_stc_dma_descriptor_t *descriptor, void const *dstAddress)
| Sets the destination address for the specified descriptor. More...
__STATIC_INLINE void | Cy_DMA_Descriptor_SetXloopDataCount (cy_stc_dma_descriptor_t *descriptor, uint32_t xCount)
| Sets the number of data elements to transfer in the X loop for the specified descriptor (for 1D or 2D descriptors only). More...
__STATIC_INLINE void | Cy_DMA_Descriptor_SetYloopDataCount (cy_stc_dma_descriptor_t *descriptor, uint32_t yCount)
| Sets the number of data elements for the Y loop of the specified descriptor (for 2D descriptors only). More...
__STATIC_INLINE void | Cy_DMA_Descriptor_SetXloopSrcIncrement (cy_stc_dma_descriptor_t *descriptor, int32_t srcXincrement)
| Sets the source increment parameter for the X loop of the specified descriptor (for 1D or 2D descriptors only). More...
__STATIC_INLINE void | Cy_DMA_Descriptor_SetXloopDstIncrement (cy_stc_dma_descriptor_t *descriptor, int32_t dstXincrement)
| Sets the destination increment parameter for the X loop for the specified descriptor (for 1D or 2D descriptors only). More...
__STATIC_INLINE void | Cy_DMA_Descriptor_SetYloopSrcIncrement (cy_stc_dma_descriptor_t *descriptor, int32_t srcYincrement)
| Sets the source increment parameter for the Y loop for the specified descriptor (for 2D descriptors only). More...
__STATIC_INLINE void | Cy_DMA_Descriptor_SetYloopDstIncrement (cy_stc_dma_descriptor_t *descriptor, int32_t dstYincrement)
| Sets the destination increment parameter for the Y loop of the specified descriptor (for 2D descriptors only). More...
__STATIC_INLINE void | Cy_DMA_Descriptor_SetInterruptType (cy_stc_dma_descriptor_t *descriptor, cy_en_dma_trigger_type_t interruptType)
| Sets the interrupt type for the specified descriptor. More...
__STATIC_INLINE void | Cy_DMA_Descriptor_SetTriggerInType (cy_stc_dma_descriptor_t *descriptor, cy_en_dma_trigger_type_t triggerInType)
| Sets the Trigger-In-Type for the specified descriptor. More...
__STATIC_INLINE void | Cy_DMA_Descriptor_SetTriggerOutType (cy_stc_dma_descriptor_t *descriptor, cy_en_dma_trigger_type_t triggerOutType)
| Sets the Trigger-Out-Type for the specified descriptor. More...
__STATIC_INLINE void | Cy_DMA_Descriptor_SetDataSize (cy_stc_dma_descriptor_t *descriptor, cy_en_dma_data_size_t dataSize)
| Sets the Data Element Size for the specified descriptor. More...
__STATIC_INLINE void | Cy_DMA_Descriptor_SetSrcTransferSize (cy_stc_dma_descriptor_t *descriptor, cy_en_dma_transfer_size_t srcTransferSize)
| Sets the Source Transfer Size for the specified descriptor. More...
__STATIC_INLINE void | Cy_DMA_Descriptor_SetDstTransferSize (cy_stc_dma_descriptor_t *descriptor, cy_en_dma_transfer_size_t dstTransferSize)
| Sets the Destination Transfer Size for the specified descriptor. More...
__STATIC_INLINE void | Cy_DMA_Descriptor_SetRetrigger (cy_stc_dma_descriptor_t *descriptor, cy_en_dma_retrigger_t retrigger)
| Sets the retrigger value that specifies whether the controller should wait for the input trigger to be deactivated. More...
__STATIC_INLINE void | Cy_DMA_Descriptor_SetChannelState (cy_stc_dma_descriptor_t *descriptor, cy_en_dma_channel_state_t channelState)
| Sets the channel state on completion of the specified descriptor. More...
cy_stc_dma_descriptor_t * | Cy_DMA_Descriptor_GetNextDescriptor (cy_stc_dma_descriptor_t const *descriptor)
| Returns a next descriptor address of the specified descriptor. More...
__STATIC_INLINE cy_en_dma_descriptor_type_t | Cy_DMA_Descriptor_GetDescriptorType (cy_stc_dma_descriptor_t const *descriptor)
| Returns the descriptor's type of the specified descriptor. More...
__STATIC_INLINE void * | Cy_DMA_Descriptor_GetSrcAddress (cy_stc_dma_descriptor_t const *descriptor)
| Returns the source address parameter of the specified descriptor. More...
__STATIC_INLINE void * | Cy_DMA_Descriptor_GetDstAddress (cy_stc_dma_descriptor_t const *descriptor)
| Returns the destination address parameter of the specified descriptor. More...
__STATIC_INLINE uint32_t | Cy_DMA_Descriptor_GetXloopDataCount (cy_stc_dma_descriptor_t const *descriptor)
| Returns the number of data elements for the X loop of the specified descriptor (for 1D or 2D descriptors only). More...
__STATIC_INLINE uint32_t | Cy_DMA_Descriptor_GetYloopDataCount (cy_stc_dma_descriptor_t const *descriptor)
| Returns the number of X loops to execute in the Y loop of the specified descriptor (for 2D descriptors only). More...
__STATIC_INLINE int32_t | Cy_DMA_Descriptor_GetXloopSrcIncrement (cy_stc_dma_descriptor_t const *descriptor)
| Returns the source increment parameter for the X loop of the specified descriptor (for 1D or 2D descriptors only). More...
__STATIC_INLINE int32_t | Cy_DMA_Descriptor_GetXloopDstIncrement (cy_stc_dma_descriptor_t const *descriptor)
| Returns the destination increment parameter for the X loop of the specified descriptor (for 1D or 2D descriptors only). More...
__STATIC_INLINE int32_t | Cy_DMA_Descriptor_GetYloopSrcIncrement (cy_stc_dma_descriptor_t const *descriptor)
| Returns the source increment parameter for the outer Y of the specified descriptor (for 2D descriptors only). More...
__STATIC_INLINE int32_t | Cy_DMA_Descriptor_GetYloopDstIncrement (cy_stc_dma_descriptor_t const *descriptor)
| Returns the destination increment parameter for the Y loop of the specified descriptor (for 2D descriptors only). More...
__STATIC_INLINE cy_en_dma_trigger_type_t | Cy_DMA_Descriptor_GetInterruptType (cy_stc_dma_descriptor_t const *descriptor)
| Returns the Interrupt-Type of the specified descriptor. More...
__STATIC_INLINE cy_en_dma_trigger_type_t | Cy_DMA_Descriptor_GetTriggerInType (cy_stc_dma_descriptor_t const *descriptor)
| Returns the Trigger-In-Type parameter of the specified descriptor. More...
__STATIC_INLINE cy_en_dma_trigger_type_t | Cy_DMA_Descriptor_GetTriggerOutType (cy_stc_dma_descriptor_t const *descriptor)
| Returns the Trigger-Out-Type parameter of the specified descriptor. More...
__STATIC_INLINE cy_en_dma_data_size_t | Cy_DMA_Descriptor_GetDataSize (cy_stc_dma_descriptor_t const *descriptor)
| Returns the Data Element Size parameter of the specified descriptor. More...
__STATIC_INLINE cy_en_dma_transfer_size_t | Cy_DMA_Descriptor_GetSrcTransferSize (cy_stc_dma_descriptor_t const *descriptor)
| Returns the Source Transfer Size parameter of the specified descriptor. More...
__STATIC_INLINE cy_en_dma_transfer_size_t | Cy_DMA_Descriptor_GetDstTransferSize (cy_stc_dma_descriptor_t const *descriptor)
| Returns the Destination Transfer Size parameter of the specified descriptor. More...
__STATIC_INLINE cy_en_dma_retrigger_t | Cy_DMA_Descriptor_GetRetrigger (cy_stc_dma_descriptor_t const *descriptor)
| Returns a value that specifies whether the controller should wait for the input trigger to be deactivated. More...
__STATIC_INLINE cy_en_dma_channel_state_t | Cy_DMA_Descriptor_GetChannelState (cy_stc_dma_descriptor_t const *descriptor)
| Returns the channel state on completion of the specified descriptor. More...

## Function Documentation

## ◆ Cy_DMA_Descriptor_Init()

cy_en_dma_status_t Cy_DMA_Descriptor_Init | ( | cy_stc_dma_descriptor_t * | descriptor,
|  | const cy_stc_dma_descriptor_config_t * | config
| ) |  |

Initializes the descriptor structure in SRAM from a pre-initialized configuration structure.

This function initializes only the descriptor and not the channel.

Parameters

  descriptor | The descriptor structure instance declared by the user/component.
  config | This is a configuration structure that has all initialization information for the descriptor.

Returns
  The status cy_en_dma_status_t .

Note
  Based on the descriptor type, the offset of the address for the next descriptor may vary. For a single-transfer descriptor type, this register is at offset 0x0c. For the 1D-transfer descriptor type, this register is at offset 0x10. For the 2D-transfer descriptor type, this register is at offset 0x14.

Function Usage
  /* Scenario: Initialize a 1D descriptor */
  #define DATACNT (8UL)
  #define CY_DMA_INTR_MASK (0x01UL)
  cy_stc_dma_descriptor_t descriptor;
  cy_stc_dma_descriptor_t nextDescriptor;
  uint32_t src_data[DATACNT];
  uint32_t dst_data[DATACNT];
  uint8_t currentYIndex;
  /* Enabling the interrupt using the Cy_DMA_Channel_SetInterruptMask function for DMA channel.*/
  Cy_DMA_Channel_SetInterruptMask(DW0, 0UL, CY_DMA_INTR_MASK);
  cy_stc_dma_descriptor_config_t descriptor_cfg =
  {
  .retrigger = CY_DMA_RETRIG_IM,
  .interruptType = CY_DMA_DESCR,
  .triggerOutType = CY_DMA_DESCR,
  .channelState = CY_DMA_CHANNEL_ENABLED,
  .triggerInType = CY_DMA_DESCR,
  .dataSize = CY_DMA_WORD,
  .srcTransferSize = CY_DMA_TRANSFER_SIZE_WORD,
  .dstTransferSize = CY_DMA_TRANSFER_SIZE_WORD,
  .descriptorType = CY_DMA_1D_TRANSFER,
  .srcAddress = &src_data,
  .dstAddress = &dst_data,
  .srcXincrement = 1U,
  .dstXincrement = 1U,
  .xCount = DATACNT,
  .srcYincrement = 0U,
  .dstYincrement = 0U,
  .yCount = 1UL,
  .nextDescriptor = &nextDescriptor,
  };
  if (CY_DMA_SUCCESS != Cy_DMA_Descriptor_Init(&descriptor, &descriptor_cfg))
  {
  /* Insert error handling */
  }
  /* Scenario: Setup and enable the DMA channel 0 of block DW0 */
  cy_stc_dma_channel_config_t channelConfig;
  channelConfig.preemptable = false;
  channelConfig.enable = false;
  channelConfig.bufferable = false;
  if (CY_DMA_SUCCESS != Cy_DMA_Channel_Init(DW0, 0UL, &channelConfig))
  {
  /* Insert error handling */
  }
  Cy_DMA_Channel_SetDescriptor(DW0, 0UL, &descriptor);
  Cy_DMA_Channel_SetPriority(DW0, 0UL, 3UL);
  Cy_DMA_Channel_Enable(DW0, 0UL);
  Cy_DMA_Enable(DW0);
  if (true != Cy_DMA_Channel_IsEnabled(DW0, 0UL))
  {
  /* Insert error handling */
  }
  currentYIndex = Cy_DMA_Channel_GetCurrentYIndex(DW0, 0UL);
  (void) currentYIndex;
  Cy_DMA_Enable
  __STATIC_INLINE void Cy_DMA_Enable(DW_Type *base)
  Enables the DMA block.
  Definition: cy_dma.h:552
  Cy_DMA_Channel_Enable
  __STATIC_INLINE void Cy_DMA_Channel_Enable(DW_Type *base, uint32_t channel)
  The function is used to enable a DMA channel.
  Definition: cy_dma.h:1545
  Cy_DMA_Channel_SetDescriptor
  __STATIC_INLINE void Cy_DMA_Channel_SetDescriptor(DW_Type *base, uint32_t channel, cy_stc_dma_descriptor_t const *descriptor)
  Sets a descriptor as current for the specified DMA channel.
  Definition: cy_dma.h:1520
  Cy_DMA_Channel_IsEnabled
  __STATIC_INLINE bool Cy_DMA_Channel_IsEnabled(DW_Type *base, uint32_t channel)
  The function checks whether a channel is in the enabled state.
  Definition: cy_dma.h:1593
  Cy_DMA_Channel_Init
  cy_en_dma_status_t Cy_DMA_Channel_Init(DW_Type *base, uint32_t channel, cy_stc_dma_channel_config_t const *channelConfig)
  Initializes the DMA channel with a descriptor and other parameters.
  Definition: cy_dma.c:259
  Cy_DMA_Channel_SetInterruptMask
  __STATIC_INLINE void Cy_DMA_Channel_SetInterruptMask(DW_Type *base, uint32_t channel, uint32_t interrupt)
  Sets an interrupt mask value for the specified channel.
  Definition: cy_dma.h:1859
  Cy_DMA_Channel_GetCurrentYIndex
  __STATIC_INLINE uint8_t Cy_DMA_Channel_GetCurrentYIndex(DW_Type const *base, uint32_t channel)
  Returns the current Y loop index for the channel.
  Definition: cy_dma.h:1701
  Cy_DMA_Channel_SetPriority
  __STATIC_INLINE void Cy_DMA_Channel_SetPriority(DW_Type *base, uint32_t channel, uint32_t priority)
  The function is used to set a priority for the DMA channel.
  Definition: cy_dma.h:1620
  cy_stc_dma_channel_config_t::enable
  bool enable
  This parameter specifies whether the channel is enabled after initializing.
  Definition: cy_dma.h:391
  cy_stc_dma_channel_config_t::bufferable
  bool bufferable
  This parameter specifies whether a write transaction can complete.
  Definition: cy_dma.h:392
  cy_stc_dma_channel_config_t::preemptable
  bool preemptable
  Specifies whether the channel is preemptable by another higher-priority channel.
  Definition: cy_dma.h:389
  cy_stc_dma_descriptor_config_t::retrigger
  cy_en_dma_retrigger_t retrigger
  Specifies whether the DW controller should wait for the input trigger to be deactivated.
  Definition: cy_dma.h:362
  cy_stc_dma_channel_config_t
  This structure holds the initialization values for the DMA channel.
  Definition: cy_dma.h:387
  cy_stc_dma_descriptor_config_t
  This structure is a configuration structure pre-initialized by the user and passed as a parameter to ...
  Definition: cy_dma.h:361
  cy_stc_dma_descriptor_t
  DMA descriptor structure type.
  Definition: cy_dma.h:343
  Cy_DMA_Descriptor_Init
  cy_en_dma_status_t Cy_DMA_Descriptor_Init(cy_stc_dma_descriptor_t *descriptor, cy_stc_dma_descriptor_config_t const *config)
  Initializes the descriptor structure in SRAM from a pre-initialized configuration structure.
  Definition: cy_dma.c:107
  CY_DMA_WORD
  @ CY_DMA_WORD
  Full word (four bytes).
  Definition: cy_dma.h:223
  CY_DMA_TRANSFER_SIZE_WORD
  @ CY_DMA_TRANSFER_SIZE_WORD
  A full word (four bytes).
  Definition: cy_dma.h:239
  CY_DMA_DESCR
  @ CY_DMA_DESCR
  One descriptor transfer.
  Definition: cy_dma.h:214
  CY_DMA_1D_TRANSFER
  @ CY_DMA_1D_TRANSFER
  1D transfer.
  Definition: cy_dma.h:204
  CY_DMA_CHANNEL_ENABLED
  @ CY_DMA_CHANNEL_ENABLED
  Channel stays enabled.
  Definition: cy_dma.h:245
  CY_DMA_RETRIG_IM
  @ CY_DMA_RETRIG_IM
  Retrigger immediately.
  Definition: cy_dma.h:229
  CY_DMA_SUCCESS
  @ CY_DMA_SUCCESS
  Success.
  Definition: cy_dma.h:252
  CY_DMA_INTR_MASK
  #define CY_DMA_INTR_MASK
  The DMA channel interrupt mask.
  Definition: cy_dma.h:158

## ◆ Cy_DMA_Descriptor_DeInit()

void Cy_DMA_Descriptor_DeInit | ( | cy_stc_dma_descriptor_t * | descriptor | ) |

Clears the content of the specified descriptor.

Parameters

  descriptor | The descriptor structure instance declared by the user/component.

Function Usage
  cy_stc_dma_descriptor_t descriptor = {0};
  /* Scenario: Disable a descriptor */
  if (&descriptor != Cy_DMA_Channel_GetCurrentDescriptor(DW0, 0UL)) /* Make sure it is not in use */
  {
  Cy_DMA_Descriptor_DeInit(&descriptor);
  }
  Cy_DMA_Channel_GetCurrentDescriptor
  __STATIC_INLINE cy_stc_dma_descriptor_t * Cy_DMA_Channel_GetCurrentDescriptor(DW_Type const *base, uint32_t channel)
  Returns the descriptor that is active in the channel.
  Definition: cy_dma.h:1675
  Cy_DMA_Descriptor_DeInit
  void Cy_DMA_Descriptor_DeInit(cy_stc_dma_descriptor_t *descriptor)
  Clears the content of the specified descriptor.
  Definition: cy_dma.c:223

## ◆ Cy_DMA_Descriptor_SetNextDescriptor()

void Cy_DMA_Descriptor_SetNextDescriptor | ( | cy_stc_dma_descriptor_t * | descriptor,
|  | cy_stc_dma_descriptor_t const * | nextDescriptor
| ) |  |

Sets a Next Descriptor for the specified descriptor.

Based on the descriptor type, the offset of the address for the next descriptor may vary. For the single-transfer descriptor type, this register is at offset 0x0c. For the 1D-transfer descriptor type, this register is at offset 0x10. For the 2D-transfer descriptor type, this register is at offset 0x14.

Parameters

  descriptor | The descriptor structure instance declared by the user/component.
  nextDescriptor | The pointer to the next descriptor. For devices which support DCache this pointer needs to point to 32 byte aligned structure.

Function Usage
  /* Scenario: Set or modify individual descriptor parameters dynamically. This snippet shows them all. */
  #define DATACNT (8UL)
  cy_stc_dma_descriptor_t descriptor = {0};
  cy_stc_dma_descriptor_t nextDescriptor = {0};
  uint32_t src[DATACNT];
  uint32_t dst[DATACNT];
  if (&descriptor != Cy_DMA_Channel_GetCurrentDescriptor(DW0, 0UL)) /* Make sure it is not in use */
  {
  Cy_DMA_Descriptor_SetRetrigger(&descriptor, CY_DMA_RETRIG_IM);
  Cy_DMA_Descriptor_SetInterruptType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetTriggerOutType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetChannelState(&descriptor, CY_DMA_CHANNEL_ENABLED);
  Cy_DMA_Descriptor_SetTriggerInType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetDataSize(&descriptor, CY_DMA_WORD);
  Cy_DMA_Descriptor_SetSrcTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDstTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDescriptorType(&descriptor, CY_DMA_1D_TRANSFER);
  Cy_DMA_Descriptor_SetSrcAddress(&descriptor, &src);
  Cy_DMA_Descriptor_SetDstAddress(&descriptor, &dst);
  Cy_DMA_Descriptor_SetXloopSrcIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDstIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDataCount(&descriptor, DATACNT);
  Cy_DMA_Descriptor_SetYloopSrcIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDstIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDataCount(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetNextDescriptor(&descriptor, &nextDescriptor);
  }
  Cy_DMA_Descriptor_SetXloopSrcIncrement
  __STATIC_INLINE void Cy_DMA_Descriptor_SetXloopSrcIncrement(cy_stc_dma_descriptor_t *descriptor, int32_t srcXincrement)
  Sets the source increment parameter for the X loop of the specified descriptor (for 1D or 2D descript...
  Definition: cy_dma.h:1253
  Cy_DMA_Descriptor_SetRetrigger
  __STATIC_INLINE void Cy_DMA_Descriptor_SetRetrigger(cy_stc_dma_descriptor_t *descriptor, cy_en_dma_retrigger_t retrigger)
  Sets the retrigger value that specifies whether the controller should wait for the input trigger to b...
  Definition: cy_dma.h:1086
  Cy_DMA_Descriptor_SetDataSize
  __STATIC_INLINE void Cy_DMA_Descriptor_SetDataSize(cy_stc_dma_descriptor_t *descriptor, cy_en_dma_data_size_t dataSize)
  Sets the Data Element Size for the specified descriptor.
  Definition: cy_dma.h:946
  Cy_DMA_Descriptor_SetDstAddress
  __STATIC_INLINE void Cy_DMA_Descriptor_SetDstAddress(cy_stc_dma_descriptor_t *descriptor, void const *dstAddress)
  Sets the destination address for the specified descriptor.
  Definition: cy_dma.h:764
  Cy_DMA_Descriptor_SetSrcAddress
  __STATIC_INLINE void Cy_DMA_Descriptor_SetSrcAddress(cy_stc_dma_descriptor_t *descriptor, void const *srcAddress)
  Sets the source address for the specified descriptor.
  Definition: cy_dma.h:719
  Cy_DMA_Descriptor_SetNextDescriptor
  void Cy_DMA_Descriptor_SetNextDescriptor(cy_stc_dma_descriptor_t *descriptor, cy_stc_dma_descriptor_t const *nextDescriptor)
  Sets a Next Descriptor for the specified descriptor.
  Definition: cy_dma.c:335
  Cy_DMA_Descriptor_SetYloopSrcIncrement
  __STATIC_INLINE void Cy_DMA_Descriptor_SetYloopSrcIncrement(cy_stc_dma_descriptor_t *descriptor, int32_t srcYincrement)
  Sets the source increment parameter for the Y loop for the specified descriptor (for 2D descriptors o...
  Definition: cy_dma.h:1406
  Cy_DMA_Descriptor_SetTriggerOutType
  __STATIC_INLINE void Cy_DMA_Descriptor_SetTriggerOutType(cy_stc_dma_descriptor_t *descriptor, cy_en_dma_trigger_type_t triggerOutType)
  Sets the Trigger-Out-Type for the specified descriptor.
  Definition: cy_dma.h:900
  Cy_DMA_Descriptor_SetTriggerInType
  __STATIC_INLINE void Cy_DMA_Descriptor_SetTriggerInType(cy_stc_dma_descriptor_t *descriptor, cy_en_dma_trigger_type_t triggerInType)
  Sets the Trigger-In-Type for the specified descriptor.
  Definition: cy_dma.h:854
  Cy_DMA_Descriptor_SetYloopDataCount
  __STATIC_INLINE void Cy_DMA_Descriptor_SetYloopDataCount(cy_stc_dma_descriptor_t *descriptor, uint32_t yCount)
  Sets the number of data elements for the Y loop of the specified descriptor (for 2D descriptors only)...
  Definition: cy_dma.h:1355
  Cy_DMA_Descriptor_SetXloopDstIncrement
  __STATIC_INLINE void Cy_DMA_Descriptor_SetXloopDstIncrement(cy_stc_dma_descriptor_t *descriptor, int32_t dstXincrement)
  Sets the destination increment parameter for the X loop for the specified descriptor (for 1D or 2D de...
  Definition: cy_dma.h:1304
  Cy_DMA_Descriptor_SetXloopDataCount
  __STATIC_INLINE void Cy_DMA_Descriptor_SetXloopDataCount(cy_stc_dma_descriptor_t *descriptor, uint32_t xCount)
  Sets the number of data elements to transfer in the X loop for the specified descriptor (for 1D or 2D...
  Definition: cy_dma.h:1202
  Cy_DMA_Descriptor_SetYloopDstIncrement
  __STATIC_INLINE void Cy_DMA_Descriptor_SetYloopDstIncrement(cy_stc_dma_descriptor_t *descriptor, int32_t dstYincrement)
  Sets the destination increment parameter for the Y loop of the specified descriptor (for 2D descripto...
  Definition: cy_dma.h:1457
  Cy_DMA_Descriptor_SetDescriptorType
  void Cy_DMA_Descriptor_SetDescriptorType(cy_stc_dma_descriptor_t *descriptor, cy_en_dma_descriptor_type_t descriptorType)
  Sets the descriptor's type for the specified descriptor.
  Definition: cy_dma.c:434
  Cy_DMA_Descriptor_SetDstTransferSize
  __STATIC_INLINE void Cy_DMA_Descriptor_SetDstTransferSize(cy_stc_dma_descriptor_t *descriptor, cy_en_dma_transfer_size_t dstTransferSize)
  Sets the Destination Transfer Size for the specified descriptor.
  Definition: cy_dma.h:1038
  Cy_DMA_Descriptor_SetChannelState
  __STATIC_INLINE void Cy_DMA_Descriptor_SetChannelState(cy_stc_dma_descriptor_t *descriptor, cy_en_dma_channel_state_t channelState)
  Sets the channel state on completion of the specified descriptor.
  Definition: cy_dma.h:1155
  Cy_DMA_Descriptor_SetSrcTransferSize
  __STATIC_INLINE void Cy_DMA_Descriptor_SetSrcTransferSize(cy_stc_dma_descriptor_t *descriptor, cy_en_dma_transfer_size_t srcTransferSize)
  Sets the Source Transfer Size for the specified descriptor.
  Definition: cy_dma.h:992
  Cy_DMA_Descriptor_SetInterruptType
  __STATIC_INLINE void Cy_DMA_Descriptor_SetInterruptType(cy_stc_dma_descriptor_t *descriptor, cy_en_dma_trigger_type_t interruptType)
  Sets the interrupt type for the specified descriptor.
  Definition: cy_dma.h:808

## ◆ Cy_DMA_Descriptor_SetDescriptorType()

void Cy_DMA_Descriptor_SetDescriptorType | ( | cy_stc_dma_descriptor_t * | descriptor,
|  | cy_en_dma_descriptor_type_t | descriptorType
| ) |  |

Sets the descriptor's type for the specified descriptor.

Moves the next descriptor register value into the proper place in accordance to the actual descriptor type. During the descriptor's type changing, the Xloop and Yloop settings, such as data count and source/destination increment (i.e. the content of the xCtl and yCtl descriptor registers) might be lost (overridden by the next descriptor value) because of the different descriptor registers structures for different descriptor types. Carefully set up the Xloop (and Yloop, if used) data count and source/destination increment if the descriptor type is changed from a simpler to a more complicated type ("single transfer" -> "1D", "1D" -> "2D", etc.).

Parameters

  descriptor | The descriptor structure instance declared by the user/component.
  descriptorType | The descriptor type cy_en_dma_descriptor_type_t.

Function Usage
  /* Scenario: Set or modify individual descriptor parameters dynamically. This snippet shows them all. */
  #define DATACNT (8UL)
  cy_stc_dma_descriptor_t descriptor = {0};
  cy_stc_dma_descriptor_t nextDescriptor = {0};
  uint32_t src[DATACNT];
  uint32_t dst[DATACNT];
  if (&descriptor != Cy_DMA_Channel_GetCurrentDescriptor(DW0, 0UL)) /* Make sure it is not in use */
  {
  Cy_DMA_Descriptor_SetRetrigger(&descriptor, CY_DMA_RETRIG_IM);
  Cy_DMA_Descriptor_SetInterruptType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetTriggerOutType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetChannelState(&descriptor, CY_DMA_CHANNEL_ENABLED);
  Cy_DMA_Descriptor_SetTriggerInType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetDataSize(&descriptor, CY_DMA_WORD);
  Cy_DMA_Descriptor_SetSrcTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDstTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDescriptorType(&descriptor, CY_DMA_1D_TRANSFER);
  Cy_DMA_Descriptor_SetSrcAddress(&descriptor, &src);
  Cy_DMA_Descriptor_SetDstAddress(&descriptor, &dst);
  Cy_DMA_Descriptor_SetXloopSrcIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDstIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDataCount(&descriptor, DATACNT);
  Cy_DMA_Descriptor_SetYloopSrcIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDstIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDataCount(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetNextDescriptor(&descriptor, &nextDescriptor);
  }

## ◆ Cy_DMA_Descriptor_SetSrcAddress()

__STATIC_INLINE void Cy_DMA_Descriptor_SetSrcAddress | ( | cy_stc_dma_descriptor_t * | descriptor,
|  | void const * | srcAddress
| ) |  |

Sets the source address for the specified descriptor.

Parameters

  descriptor | The descriptor structure instance declared by the user/component.
  srcAddress | The source address value for the descriptor. When D-Cache is present and enabled, this data pointer needs to point to 32 bit aligned data.

Function Usage
  /* Scenario: Set or modify individual descriptor parameters dynamically. This snippet shows them all. */
  #define DATACNT (8UL)
  cy_stc_dma_descriptor_t descriptor = {0};
  cy_stc_dma_descriptor_t nextDescriptor = {0};
  uint32_t src[DATACNT];
  uint32_t dst[DATACNT];
  if (&descriptor != Cy_DMA_Channel_GetCurrentDescriptor(DW0, 0UL)) /* Make sure it is not in use */
  {
  Cy_DMA_Descriptor_SetRetrigger(&descriptor, CY_DMA_RETRIG_IM);
  Cy_DMA_Descriptor_SetInterruptType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetTriggerOutType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetChannelState(&descriptor, CY_DMA_CHANNEL_ENABLED);
  Cy_DMA_Descriptor_SetTriggerInType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetDataSize(&descriptor, CY_DMA_WORD);
  Cy_DMA_Descriptor_SetSrcTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDstTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDescriptorType(&descriptor, CY_DMA_1D_TRANSFER);
  Cy_DMA_Descriptor_SetSrcAddress(&descriptor, &src);
  Cy_DMA_Descriptor_SetDstAddress(&descriptor, &dst);
  Cy_DMA_Descriptor_SetXloopSrcIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDstIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDataCount(&descriptor, DATACNT);
  Cy_DMA_Descriptor_SetYloopSrcIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDstIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDataCount(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetNextDescriptor(&descriptor, &nextDescriptor);
  }

## ◆ Cy_DMA_Descriptor_SetDstAddress()

__STATIC_INLINE void Cy_DMA_Descriptor_SetDstAddress | ( | cy_stc_dma_descriptor_t * | descriptor,
|  | void const * | dstAddress
| ) |  |

Sets the destination address for the specified descriptor.

Parameters

  descriptor | The descriptor structure instance declared by the user/component.
  dstAddress | The destination address value for the descriptor. When D-Cache is present and enabled, this data pointer needs to point to 32 byte aligned data.

Function Usage
  /* Scenario: Set or modify individual descriptor parameters dynamically. This snippet shows them all. */
  #define DATACNT (8UL)
  cy_stc_dma_descriptor_t descriptor = {0};
  cy_stc_dma_descriptor_t nextDescriptor = {0};
  uint32_t src[DATACNT];
  uint32_t dst[DATACNT];
  if (&descriptor != Cy_DMA_Channel_GetCurrentDescriptor(DW0, 0UL)) /* Make sure it is not in use */
  {
  Cy_DMA_Descriptor_SetRetrigger(&descriptor, CY_DMA_RETRIG_IM);
  Cy_DMA_Descriptor_SetInterruptType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetTriggerOutType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetChannelState(&descriptor, CY_DMA_CHANNEL_ENABLED);
  Cy_DMA_Descriptor_SetTriggerInType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetDataSize(&descriptor, CY_DMA_WORD);
  Cy_DMA_Descriptor_SetSrcTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDstTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDescriptorType(&descriptor, CY_DMA_1D_TRANSFER);
  Cy_DMA_Descriptor_SetSrcAddress(&descriptor, &src);
  Cy_DMA_Descriptor_SetDstAddress(&descriptor, &dst);
  Cy_DMA_Descriptor_SetXloopSrcIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDstIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDataCount(&descriptor, DATACNT);
  Cy_DMA_Descriptor_SetYloopSrcIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDstIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDataCount(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetNextDescriptor(&descriptor, &nextDescriptor);
  }

## ◆ Cy_DMA_Descriptor_SetXloopDataCount()

__STATIC_INLINE void Cy_DMA_Descriptor_SetXloopDataCount | ( | cy_stc_dma_descriptor_t * | descriptor,
|  | uint32_t | xCount
| ) |  |

Sets the number of data elements to transfer in the X loop for the specified descriptor (for 1D or 2D descriptors only).

Parameters

  descriptor | The descriptor structure instance declared by the user/component.
  xCount | The number of data elements to transfer in the X loop. Valid range is 1 ... 256.

Function Usage
  /* Scenario: Set or modify individual descriptor parameters dynamically. This snippet shows them all. */
  #define DATACNT (8UL)
  cy_stc_dma_descriptor_t descriptor = {0};
  cy_stc_dma_descriptor_t nextDescriptor = {0};
  uint32_t src[DATACNT];
  uint32_t dst[DATACNT];
  if (&descriptor != Cy_DMA_Channel_GetCurrentDescriptor(DW0, 0UL)) /* Make sure it is not in use */
  {
  Cy_DMA_Descriptor_SetRetrigger(&descriptor, CY_DMA_RETRIG_IM);
  Cy_DMA_Descriptor_SetInterruptType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetTriggerOutType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetChannelState(&descriptor, CY_DMA_CHANNEL_ENABLED);
  Cy_DMA_Descriptor_SetTriggerInType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetDataSize(&descriptor, CY_DMA_WORD);
  Cy_DMA_Descriptor_SetSrcTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDstTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDescriptorType(&descriptor, CY_DMA_1D_TRANSFER);
  Cy_DMA_Descriptor_SetSrcAddress(&descriptor, &src);
  Cy_DMA_Descriptor_SetDstAddress(&descriptor, &dst);
  Cy_DMA_Descriptor_SetXloopSrcIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDstIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDataCount(&descriptor, DATACNT);
  Cy_DMA_Descriptor_SetYloopSrcIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDstIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDataCount(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetNextDescriptor(&descriptor, &nextDescriptor);
  }

## ◆ Cy_DMA_Descriptor_SetYloopDataCount()

__STATIC_INLINE void Cy_DMA_Descriptor_SetYloopDataCount | ( | cy_stc_dma_descriptor_t * | descriptor,
|  | uint32_t | yCount
| ) |  |

Sets the number of data elements for the Y loop of the specified descriptor (for 2D descriptors only).

Parameters

  descriptor | The descriptor structure instance declared by the user/component.
  yCount | The number of X loops to execute in the Y loop. The valid range is 1 ... 256.

Function Usage
  /* Scenario: Set or modify individual descriptor parameters dynamically. This snippet shows them all. */
  #define DATACNT (8UL)
  cy_stc_dma_descriptor_t descriptor = {0};
  cy_stc_dma_descriptor_t nextDescriptor = {0};
  uint32_t src[DATACNT];
  uint32_t dst[DATACNT];
  if (&descriptor != Cy_DMA_Channel_GetCurrentDescriptor(DW0, 0UL)) /* Make sure it is not in use */
  {
  Cy_DMA_Descriptor_SetRetrigger(&descriptor, CY_DMA_RETRIG_IM);
  Cy_DMA_Descriptor_SetInterruptType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetTriggerOutType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetChannelState(&descriptor, CY_DMA_CHANNEL_ENABLED);
  Cy_DMA_Descriptor_SetTriggerInType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetDataSize(&descriptor, CY_DMA_WORD);
  Cy_DMA_Descriptor_SetSrcTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDstTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDescriptorType(&descriptor, CY_DMA_1D_TRANSFER);
  Cy_DMA_Descriptor_SetSrcAddress(&descriptor, &src);
  Cy_DMA_Descriptor_SetDstAddress(&descriptor, &dst);
  Cy_DMA_Descriptor_SetXloopSrcIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDstIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDataCount(&descriptor, DATACNT);
  Cy_DMA_Descriptor_SetYloopSrcIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDstIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDataCount(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetNextDescriptor(&descriptor, &nextDescriptor);
  }

## ◆ Cy_DMA_Descriptor_SetXloopSrcIncrement()

__STATIC_INLINE void Cy_DMA_Descriptor_SetXloopSrcIncrement | ( | cy_stc_dma_descriptor_t * | descriptor,
|  | int32_t | srcXincrement
| ) |  |

Sets the source increment parameter for the X loop of the specified descriptor (for 1D or 2D descriptors only).

Parameters

  descriptor | The descriptor structure instance declared by the user/component.
  srcXincrement | The value of the source increment. The valid range is -2048 ... 2047.

Function Usage
  /* Scenario: Set or modify individual descriptor parameters dynamically. This snippet shows them all. */
  #define DATACNT (8UL)
  cy_stc_dma_descriptor_t descriptor = {0};
  cy_stc_dma_descriptor_t nextDescriptor = {0};
  uint32_t src[DATACNT];
  uint32_t dst[DATACNT];
  if (&descriptor != Cy_DMA_Channel_GetCurrentDescriptor(DW0, 0UL)) /* Make sure it is not in use */
  {
  Cy_DMA_Descriptor_SetRetrigger(&descriptor, CY_DMA_RETRIG_IM);
  Cy_DMA_Descriptor_SetInterruptType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetTriggerOutType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetChannelState(&descriptor, CY_DMA_CHANNEL_ENABLED);
  Cy_DMA_Descriptor_SetTriggerInType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetDataSize(&descriptor, CY_DMA_WORD);
  Cy_DMA_Descriptor_SetSrcTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDstTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDescriptorType(&descriptor, CY_DMA_1D_TRANSFER);
  Cy_DMA_Descriptor_SetSrcAddress(&descriptor, &src);
  Cy_DMA_Descriptor_SetDstAddress(&descriptor, &dst);
  Cy_DMA_Descriptor_SetXloopSrcIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDstIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDataCount(&descriptor, DATACNT);
  Cy_DMA_Descriptor_SetYloopSrcIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDstIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDataCount(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetNextDescriptor(&descriptor, &nextDescriptor);
  }

## ◆ Cy_DMA_Descriptor_SetXloopDstIncrement()

__STATIC_INLINE void Cy_DMA_Descriptor_SetXloopDstIncrement | ( | cy_stc_dma_descriptor_t * | descriptor,
|  | int32_t | dstXincrement
| ) |  |

Sets the destination increment parameter for the X loop for the specified descriptor (for 1D or 2D descriptors only).

Parameters

  descriptor | The descriptor structure instance declared by the user/component.
  dstXincrement | The value of the destination increment. The valid range is -2048 ... 2047.

Function Usage
  /* Scenario: Set or modify individual descriptor parameters dynamically. This snippet shows them all. */
  #define DATACNT (8UL)
  cy_stc_dma_descriptor_t descriptor = {0};
  cy_stc_dma_descriptor_t nextDescriptor = {0};
  uint32_t src[DATACNT];
  uint32_t dst[DATACNT];
  if (&descriptor != Cy_DMA_Channel_GetCurrentDescriptor(DW0, 0UL)) /* Make sure it is not in use */
  {
  Cy_DMA_Descriptor_SetRetrigger(&descriptor, CY_DMA_RETRIG_IM);
  Cy_DMA_Descriptor_SetInterruptType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetTriggerOutType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetChannelState(&descriptor, CY_DMA_CHANNEL_ENABLED);
  Cy_DMA_Descriptor_SetTriggerInType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetDataSize(&descriptor, CY_DMA_WORD);
  Cy_DMA_Descriptor_SetSrcTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDstTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDescriptorType(&descriptor, CY_DMA_1D_TRANSFER);
  Cy_DMA_Descriptor_SetSrcAddress(&descriptor, &src);
  Cy_DMA_Descriptor_SetDstAddress(&descriptor, &dst);
  Cy_DMA_Descriptor_SetXloopSrcIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDstIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDataCount(&descriptor, DATACNT);
  Cy_DMA_Descriptor_SetYloopSrcIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDstIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDataCount(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetNextDescriptor(&descriptor, &nextDescriptor);
  }

## ◆ Cy_DMA_Descriptor_SetYloopSrcIncrement()

__STATIC_INLINE void Cy_DMA_Descriptor_SetYloopSrcIncrement | ( | cy_stc_dma_descriptor_t * | descriptor,
|  | int32_t | srcYincrement
| ) |  |

Sets the source increment parameter for the Y loop for the specified descriptor (for 2D descriptors only).

Parameters

  descriptor | The descriptor structure instance declared by the user/component.
  srcYincrement | The value of the source increment. The valid range is -2048 ... 2047.

Function Usage
  /* Scenario: Set or modify individual descriptor parameters dynamically. This snippet shows them all. */
  #define DATACNT (8UL)
  cy_stc_dma_descriptor_t descriptor = {0};
  cy_stc_dma_descriptor_t nextDescriptor = {0};
  uint32_t src[DATACNT];
  uint32_t dst[DATACNT];
  if (&descriptor != Cy_DMA_Channel_GetCurrentDescriptor(DW0, 0UL)) /* Make sure it is not in use */
  {
  Cy_DMA_Descriptor_SetRetrigger(&descriptor, CY_DMA_RETRIG_IM);
  Cy_DMA_Descriptor_SetInterruptType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetTriggerOutType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetChannelState(&descriptor, CY_DMA_CHANNEL_ENABLED);
  Cy_DMA_Descriptor_SetTriggerInType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetDataSize(&descriptor, CY_DMA_WORD);
  Cy_DMA_Descriptor_SetSrcTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDstTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDescriptorType(&descriptor, CY_DMA_1D_TRANSFER);
  Cy_DMA_Descriptor_SetSrcAddress(&descriptor, &src);
  Cy_DMA_Descriptor_SetDstAddress(&descriptor, &dst);
  Cy_DMA_Descriptor_SetXloopSrcIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDstIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDataCount(&descriptor, DATACNT);
  Cy_DMA_Descriptor_SetYloopSrcIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDstIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDataCount(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetNextDescriptor(&descriptor, &nextDescriptor);
  }

## ◆ Cy_DMA_Descriptor_SetYloopDstIncrement()

__STATIC_INLINE void Cy_DMA_Descriptor_SetYloopDstIncrement | ( | cy_stc_dma_descriptor_t * | descriptor,
|  | int32_t | dstYincrement
| ) |  |

Sets the destination increment parameter for the Y loop of the specified descriptor (for 2D descriptors only).

Parameters

  descriptor | The descriptor structure instance declared by the user/component.
  dstYincrement | The value of the destination increment. The valid range is -2048 ... 2047.

Function Usage
  /* Scenario: Set or modify individual descriptor parameters dynamically. This snippet shows them all. */
  #define DATACNT (8UL)
  cy_stc_dma_descriptor_t descriptor = {0};
  cy_stc_dma_descriptor_t nextDescriptor = {0};
  uint32_t src[DATACNT];
  uint32_t dst[DATACNT];
  if (&descriptor != Cy_DMA_Channel_GetCurrentDescriptor(DW0, 0UL)) /* Make sure it is not in use */
  {
  Cy_DMA_Descriptor_SetRetrigger(&descriptor, CY_DMA_RETRIG_IM);
  Cy_DMA_Descriptor_SetInterruptType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetTriggerOutType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetChannelState(&descriptor, CY_DMA_CHANNEL_ENABLED);
  Cy_DMA_Descriptor_SetTriggerInType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetDataSize(&descriptor, CY_DMA_WORD);
  Cy_DMA_Descriptor_SetSrcTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDstTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDescriptorType(&descriptor, CY_DMA_1D_TRANSFER);
  Cy_DMA_Descriptor_SetSrcAddress(&descriptor, &src);
  Cy_DMA_Descriptor_SetDstAddress(&descriptor, &dst);
  Cy_DMA_Descriptor_SetXloopSrcIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDstIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDataCount(&descriptor, DATACNT);
  Cy_DMA_Descriptor_SetYloopSrcIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDstIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDataCount(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetNextDescriptor(&descriptor, &nextDescriptor);
  }

## ◆ Cy_DMA_Descriptor_SetInterruptType()

__STATIC_INLINE void Cy_DMA_Descriptor_SetInterruptType | ( | cy_stc_dma_descriptor_t * | descriptor,
|  | cy_en_dma_trigger_type_t | interruptType
| ) |  |

Sets the interrupt type for the specified descriptor.

Parameters

  descriptor | The descriptor structure instance declared by the user/component.
  interruptType | The interrupt type set for the descriptor. cy_en_dma_trigger_type_t

Function Usage
  /* Scenario: Set or modify individual descriptor parameters dynamically. This snippet shows them all. */
  #define DATACNT (8UL)
  cy_stc_dma_descriptor_t descriptor = {0};
  cy_stc_dma_descriptor_t nextDescriptor = {0};
  uint32_t src[DATACNT];
  uint32_t dst[DATACNT];
  if (&descriptor != Cy_DMA_Channel_GetCurrentDescriptor(DW0, 0UL)) /* Make sure it is not in use */
  {
  Cy_DMA_Descriptor_SetRetrigger(&descriptor, CY_DMA_RETRIG_IM);
  Cy_DMA_Descriptor_SetInterruptType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetTriggerOutType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetChannelState(&descriptor, CY_DMA_CHANNEL_ENABLED);
  Cy_DMA_Descriptor_SetTriggerInType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetDataSize(&descriptor, CY_DMA_WORD);
  Cy_DMA_Descriptor_SetSrcTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDstTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDescriptorType(&descriptor, CY_DMA_1D_TRANSFER);
  Cy_DMA_Descriptor_SetSrcAddress(&descriptor, &src);
  Cy_DMA_Descriptor_SetDstAddress(&descriptor, &dst);
  Cy_DMA_Descriptor_SetXloopSrcIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDstIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDataCount(&descriptor, DATACNT);
  Cy_DMA_Descriptor_SetYloopSrcIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDstIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDataCount(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetNextDescriptor(&descriptor, &nextDescriptor);
  }

## ◆ Cy_DMA_Descriptor_SetTriggerInType()

__STATIC_INLINE void Cy_DMA_Descriptor_SetTriggerInType | ( | cy_stc_dma_descriptor_t * | descriptor,
|  | cy_en_dma_trigger_type_t | triggerInType
| ) |  |

Sets the Trigger-In-Type for the specified descriptor.

Parameters

  descriptor | The descriptor structure instance declared by the user/component.
  triggerInType | The Trigger In Type parameter cy_en_dma_trigger_type_t

Function Usage
  /* Scenario: Set or modify individual descriptor parameters dynamically. This snippet shows them all. */
  #define DATACNT (8UL)
  cy_stc_dma_descriptor_t descriptor = {0};
  cy_stc_dma_descriptor_t nextDescriptor = {0};
  uint32_t src[DATACNT];
  uint32_t dst[DATACNT];
  if (&descriptor != Cy_DMA_Channel_GetCurrentDescriptor(DW0, 0UL)) /* Make sure it is not in use */
  {
  Cy_DMA_Descriptor_SetRetrigger(&descriptor, CY_DMA_RETRIG_IM);
  Cy_DMA_Descriptor_SetInterruptType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetTriggerOutType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetChannelState(&descriptor, CY_DMA_CHANNEL_ENABLED);
  Cy_DMA_Descriptor_SetTriggerInType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetDataSize(&descriptor, CY_DMA_WORD);
  Cy_DMA_Descriptor_SetSrcTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDstTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDescriptorType(&descriptor, CY_DMA_1D_TRANSFER);
  Cy_DMA_Descriptor_SetSrcAddress(&descriptor, &src);
  Cy_DMA_Descriptor_SetDstAddress(&descriptor, &dst);
  Cy_DMA_Descriptor_SetXloopSrcIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDstIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDataCount(&descriptor, DATACNT);
  Cy_DMA_Descriptor_SetYloopSrcIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDstIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDataCount(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetNextDescriptor(&descriptor, &nextDescriptor);
  }

## ◆ Cy_DMA_Descriptor_SetTriggerOutType()

__STATIC_INLINE void Cy_DMA_Descriptor_SetTriggerOutType | ( | cy_stc_dma_descriptor_t * | descriptor,
|  | cy_en_dma_trigger_type_t | triggerOutType
| ) |  |

Sets the Trigger-Out-Type for the specified descriptor.

Parameters

  descriptor | The descriptor structure instance declared by the user/component.
  triggerOutType | The Trigger-Out-Type set for the descriptor. cy_en_dma_trigger_type_t

Function Usage
  /* Scenario: Set or modify individual descriptor parameters dynamically. This snippet shows them all. */
  #define DATACNT (8UL)
  cy_stc_dma_descriptor_t descriptor = {0};
  cy_stc_dma_descriptor_t nextDescriptor = {0};
  uint32_t src[DATACNT];
  uint32_t dst[DATACNT];
  if (&descriptor != Cy_DMA_Channel_GetCurrentDescriptor(DW0, 0UL)) /* Make sure it is not in use */
  {
  Cy_DMA_Descriptor_SetRetrigger(&descriptor, CY_DMA_RETRIG_IM);
  Cy_DMA_Descriptor_SetInterruptType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetTriggerOutType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetChannelState(&descriptor, CY_DMA_CHANNEL_ENABLED);
  Cy_DMA_Descriptor_SetTriggerInType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetDataSize(&descriptor, CY_DMA_WORD);
  Cy_DMA_Descriptor_SetSrcTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDstTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDescriptorType(&descriptor, CY_DMA_1D_TRANSFER);
  Cy_DMA_Descriptor_SetSrcAddress(&descriptor, &src);
  Cy_DMA_Descriptor_SetDstAddress(&descriptor, &dst);
  Cy_DMA_Descriptor_SetXloopSrcIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDstIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDataCount(&descriptor, DATACNT);
  Cy_DMA_Descriptor_SetYloopSrcIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDstIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDataCount(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetNextDescriptor(&descriptor, &nextDescriptor);
  }

## ◆ Cy_DMA_Descriptor_SetDataSize()

__STATIC_INLINE void Cy_DMA_Descriptor_SetDataSize | ( | cy_stc_dma_descriptor_t * | descriptor,
|  | cy_en_dma_data_size_t | dataSize
| ) |  |

Sets the Data Element Size for the specified descriptor.

Parameters

  descriptor | The descriptor structure instance declared by the user/component.
  dataSize | The Data Element Size cy_en_dma_data_size_t

Function Usage
  /* Scenario: Set or modify individual descriptor parameters dynamically. This snippet shows them all. */
  #define DATACNT (8UL)
  cy_stc_dma_descriptor_t descriptor = {0};
  cy_stc_dma_descriptor_t nextDescriptor = {0};
  uint32_t src[DATACNT];
  uint32_t dst[DATACNT];
  if (&descriptor != Cy_DMA_Channel_GetCurrentDescriptor(DW0, 0UL)) /* Make sure it is not in use */
  {
  Cy_DMA_Descriptor_SetRetrigger(&descriptor, CY_DMA_RETRIG_IM);
  Cy_DMA_Descriptor_SetInterruptType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetTriggerOutType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetChannelState(&descriptor, CY_DMA_CHANNEL_ENABLED);
  Cy_DMA_Descriptor_SetTriggerInType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetDataSize(&descriptor, CY_DMA_WORD);
  Cy_DMA_Descriptor_SetSrcTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDstTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDescriptorType(&descriptor, CY_DMA_1D_TRANSFER);
  Cy_DMA_Descriptor_SetSrcAddress(&descriptor, &src);
  Cy_DMA_Descriptor_SetDstAddress(&descriptor, &dst);
  Cy_DMA_Descriptor_SetXloopSrcIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDstIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDataCount(&descriptor, DATACNT);
  Cy_DMA_Descriptor_SetYloopSrcIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDstIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDataCount(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetNextDescriptor(&descriptor, &nextDescriptor);
  }

## ◆ Cy_DMA_Descriptor_SetSrcTransferSize()

__STATIC_INLINE void Cy_DMA_Descriptor_SetSrcTransferSize | ( | cy_stc_dma_descriptor_t * | descriptor,
|  | cy_en_dma_transfer_size_t | srcTransferSize
| ) |  |

Sets the Source Transfer Size for the specified descriptor.

Parameters

  descriptor | The descriptor structure instance declared by the user/component.
  srcTransferSize | The Source Transfer Size cy_en_dma_transfer_size_t.

Function Usage
  /* Scenario: Set or modify individual descriptor parameters dynamically. This snippet shows them all. */
  #define DATACNT (8UL)
  cy_stc_dma_descriptor_t descriptor = {0};
  cy_stc_dma_descriptor_t nextDescriptor = {0};
  uint32_t src[DATACNT];
  uint32_t dst[DATACNT];
  if (&descriptor != Cy_DMA_Channel_GetCurrentDescriptor(DW0, 0UL)) /* Make sure it is not in use */
  {
  Cy_DMA_Descriptor_SetRetrigger(&descriptor, CY_DMA_RETRIG_IM);
  Cy_DMA_Descriptor_SetInterruptType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetTriggerOutType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetChannelState(&descriptor, CY_DMA_CHANNEL_ENABLED);
  Cy_DMA_Descriptor_SetTriggerInType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetDataSize(&descriptor, CY_DMA_WORD);
  Cy_DMA_Descriptor_SetSrcTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDstTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDescriptorType(&descriptor, CY_DMA_1D_TRANSFER);
  Cy_DMA_Descriptor_SetSrcAddress(&descriptor, &src);
  Cy_DMA_Descriptor_SetDstAddress(&descriptor, &dst);
  Cy_DMA_Descriptor_SetXloopSrcIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDstIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDataCount(&descriptor, DATACNT);
  Cy_DMA_Descriptor_SetYloopSrcIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDstIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDataCount(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetNextDescriptor(&descriptor, &nextDescriptor);
  }

## ◆ Cy_DMA_Descriptor_SetDstTransferSize()

__STATIC_INLINE void Cy_DMA_Descriptor_SetDstTransferSize | ( | cy_stc_dma_descriptor_t * | descriptor,
|  | cy_en_dma_transfer_size_t | dstTransferSize
| ) |  |

Sets the Destination Transfer Size for the specified descriptor.

Parameters

  descriptor | The descriptor structure instance declared by the user/component.
  dstTransferSize | The Destination Transfer Size cy_en_dma_transfer_size_t.

Function Usage
  /* Scenario: Set or modify individual descriptor parameters dynamically. This snippet shows them all. */
  #define DATACNT (8UL)
  cy_stc_dma_descriptor_t descriptor = {0};
  cy_stc_dma_descriptor_t nextDescriptor = {0};
  uint32_t src[DATACNT];
  uint32_t dst[DATACNT];
  if (&descriptor != Cy_DMA_Channel_GetCurrentDescriptor(DW0, 0UL)) /* Make sure it is not in use */
  {
  Cy_DMA_Descriptor_SetRetrigger(&descriptor, CY_DMA_RETRIG_IM);
  Cy_DMA_Descriptor_SetInterruptType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetTriggerOutType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetChannelState(&descriptor, CY_DMA_CHANNEL_ENABLED);
  Cy_DMA_Descriptor_SetTriggerInType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetDataSize(&descriptor, CY_DMA_WORD);
  Cy_DMA_Descriptor_SetSrcTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDstTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDescriptorType(&descriptor, CY_DMA_1D_TRANSFER);
  Cy_DMA_Descriptor_SetSrcAddress(&descriptor, &src);
  Cy_DMA_Descriptor_SetDstAddress(&descriptor, &dst);
  Cy_DMA_Descriptor_SetXloopSrcIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDstIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDataCount(&descriptor, DATACNT);
  Cy_DMA_Descriptor_SetYloopSrcIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDstIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDataCount(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetNextDescriptor(&descriptor, &nextDescriptor);
  }

## ◆ Cy_DMA_Descriptor_SetRetrigger()

__STATIC_INLINE void Cy_DMA_Descriptor_SetRetrigger | ( | cy_stc_dma_descriptor_t * | descriptor,
|  | cy_en_dma_retrigger_t | retrigger
| ) |  |

Sets the retrigger value that specifies whether the controller should wait for the input trigger to be deactivated.

Parameters

  descriptor | The descriptor structure instance declared by the user/component.
  retrigger | The cy_en_dma_retrigger_t parameter specifies whether the controller should wait for the input trigger to be deactivated.

Function Usage
  /* Scenario: Set or modify individual descriptor parameters dynamically. This snippet shows them all. */
  #define DATACNT (8UL)
  cy_stc_dma_descriptor_t descriptor = {0};
  cy_stc_dma_descriptor_t nextDescriptor = {0};
  uint32_t src[DATACNT];
  uint32_t dst[DATACNT];
  if (&descriptor != Cy_DMA_Channel_GetCurrentDescriptor(DW0, 0UL)) /* Make sure it is not in use */
  {
  Cy_DMA_Descriptor_SetRetrigger(&descriptor, CY_DMA_RETRIG_IM);
  Cy_DMA_Descriptor_SetInterruptType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetTriggerOutType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetChannelState(&descriptor, CY_DMA_CHANNEL_ENABLED);
  Cy_DMA_Descriptor_SetTriggerInType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetDataSize(&descriptor, CY_DMA_WORD);
  Cy_DMA_Descriptor_SetSrcTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDstTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDescriptorType(&descriptor, CY_DMA_1D_TRANSFER);
  Cy_DMA_Descriptor_SetSrcAddress(&descriptor, &src);
  Cy_DMA_Descriptor_SetDstAddress(&descriptor, &dst);
  Cy_DMA_Descriptor_SetXloopSrcIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDstIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDataCount(&descriptor, DATACNT);
  Cy_DMA_Descriptor_SetYloopSrcIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDstIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDataCount(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetNextDescriptor(&descriptor, &nextDescriptor);
  }

## ◆ Cy_DMA_Descriptor_SetChannelState()

__STATIC_INLINE void Cy_DMA_Descriptor_SetChannelState | ( | cy_stc_dma_descriptor_t * | descriptor,
|  | cy_en_dma_channel_state_t | channelState
| ) |  |

Sets the channel state on completion of the specified descriptor.

Parameters

  descriptor | The descriptor structure instance declared by the user/component.
  channelState | The channel state cy_en_dma_channel_state_t.

Function Usage
  /* Scenario: Set or modify individual descriptor parameters dynamically. This snippet shows them all. */
  #define DATACNT (8UL)
  cy_stc_dma_descriptor_t descriptor = {0};
  cy_stc_dma_descriptor_t nextDescriptor = {0};
  uint32_t src[DATACNT];
  uint32_t dst[DATACNT];
  if (&descriptor != Cy_DMA_Channel_GetCurrentDescriptor(DW0, 0UL)) /* Make sure it is not in use */
  {
  Cy_DMA_Descriptor_SetRetrigger(&descriptor, CY_DMA_RETRIG_IM);
  Cy_DMA_Descriptor_SetInterruptType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetTriggerOutType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetChannelState(&descriptor, CY_DMA_CHANNEL_ENABLED);
  Cy_DMA_Descriptor_SetTriggerInType(&descriptor, CY_DMA_DESCR);
  Cy_DMA_Descriptor_SetDataSize(&descriptor, CY_DMA_WORD);
  Cy_DMA_Descriptor_SetSrcTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDstTransferSize(&descriptor, CY_DMA_TRANSFER_SIZE_WORD);
  Cy_DMA_Descriptor_SetDescriptorType(&descriptor, CY_DMA_1D_TRANSFER);
  Cy_DMA_Descriptor_SetSrcAddress(&descriptor, &src);
  Cy_DMA_Descriptor_SetDstAddress(&descriptor, &dst);
  Cy_DMA_Descriptor_SetXloopSrcIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDstIncrement(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetXloopDataCount(&descriptor, DATACNT);
  Cy_DMA_Descriptor_SetYloopSrcIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDstIncrement(&descriptor, 0UL);
  Cy_DMA_Descriptor_SetYloopDataCount(&descriptor, 1UL);
  Cy_DMA_Descriptor_SetNextDescriptor(&descriptor, &nextDescriptor);
  }

## ◆ Cy_DMA_Descriptor_GetNextDescriptor()

cy_stc_dma_descriptor_t * Cy_DMA_Descriptor_GetNextDescriptor | ( | cy_stc_dma_descriptor_t const * | descriptor | ) |

Returns a next descriptor address of the specified descriptor.

Based on the descriptor type, the offset of the address for the next descriptor may vary. For a single-transfer descriptor type, this register is at offset 0x0c. For the 1D-transfer descriptor type, this register is at offset 0x10. For the 2D-transfer descriptor type, this register is at offset 0x14.

Parameters

  descriptor | The descriptor structure instance declared by the user/component.

Returns
  The pointer to the next descriptor.

Function Usage
  cy_stc_dma_descriptor_t descriptor = {0};
  /* Scenario: Get the value of individual descriptor parameters dynamically. The snippet shows them all. */
  /* This function assumes the 'descriptor' is initialized, see \ref Cy_DMA_Enable description */
  cy_en_dma_retrigger_t retrigger = Cy_DMA_Descriptor_GetRetrigger(&descriptor);
  cy_en_dma_trigger_type_t interruptType = Cy_DMA_Descriptor_GetInterruptType(&descriptor);
  cy_en_dma_trigger_type_t triggerOutType = Cy_DMA_Descriptor_GetTriggerOutType(&descriptor);
  cy_en_dma_channel_state_t channelState = Cy_DMA_Descriptor_GetChannelState(&descriptor);
  cy_en_dma_trigger_type_t triggerInType = Cy_DMA_Descriptor_GetTriggerInType(&descriptor);
  cy_en_dma_data_size_t dataSize = Cy_DMA_Descriptor_GetDataSize(&descriptor);
  cy_en_dma_transfer_size_t srcTransferSize = Cy_DMA_Descriptor_GetSrcTransferSize(&descriptor);
  cy_en_dma_transfer_size_t dstTransferSize = Cy_DMA_Descriptor_GetDstTransferSize(&descriptor);
  cy_en_dma_descriptor_type_t descriptorType = Cy_DMA_Descriptor_GetDescriptorType(&descriptor);
  void * srcAddress = Cy_DMA_Descriptor_GetSrcAddress(&descriptor);
  void * dstAddress = Cy_DMA_Descriptor_GetDstAddress(&descriptor);
  int32_t srcXincrement = Cy_DMA_Descriptor_GetXloopSrcIncrement(&descriptor);
  int32_t dstXincrement = Cy_DMA_Descriptor_GetXloopDstIncrement(&descriptor);
  uint32_t xCount = Cy_DMA_Descriptor_GetXloopDataCount(&descriptor);
  int32_t srcYincrement = Cy_DMA_Descriptor_GetYloopSrcIncrement(&descriptor);
  int32_t dstYincrement = Cy_DMA_Descriptor_GetYloopDstIncrement(&descriptor);
  uint32_t yCount = Cy_DMA_Descriptor_GetYloopDataCount(&descriptor);
  cy_stc_dma_descriptor_t * nextDescriptor = Cy_DMA_Descriptor_GetNextDescriptor(&descriptor);
  Cy_DMA_Descriptor_GetTriggerInType
  __STATIC_INLINE cy_en_dma_trigger_type_t Cy_DMA_Descriptor_GetTriggerInType(cy_stc_dma_descriptor_t const *descriptor)
  Returns the Trigger-In-Type parameter of the specified descriptor.
  Definition: cy_dma.h:878
  Cy_DMA_Descriptor_GetDescriptorType
  __STATIC_INLINE cy_en_dma_descriptor_type_t Cy_DMA_Descriptor_GetDescriptorType(cy_stc_dma_descriptor_t const *descriptor)
  Returns the descriptor's type of the specified descriptor.
  Definition: cy_dma.h:1133
  Cy_DMA_Descriptor_GetXloopDataCount
  __STATIC_INLINE uint32_t Cy_DMA_Descriptor_GetXloopDataCount(cy_stc_dma_descriptor_t const *descriptor)
  Returns the number of data elements for the X loop of the specified descriptor (for 1D or 2D descript...
  Definition: cy_dma.h:1228
  Cy_DMA_Descriptor_GetYloopDstIncrement
  __STATIC_INLINE int32_t Cy_DMA_Descriptor_GetYloopDstIncrement(cy_stc_dma_descriptor_t const *descriptor)
  Returns the destination increment parameter for the Y loop of the specified descriptor (for 2D descri...
  Definition: cy_dma.h:1483
  Cy_DMA_Descriptor_GetXloopDstIncrement
  __STATIC_INLINE int32_t Cy_DMA_Descriptor_GetXloopDstIncrement(cy_stc_dma_descriptor_t const *descriptor)
  Returns the destination increment parameter for the X loop of the specified descriptor (for 1D or 2D ...
  Definition: cy_dma.h:1330
  Cy_DMA_Descriptor_GetChannelState
  __STATIC_INLINE cy_en_dma_channel_state_t Cy_DMA_Descriptor_GetChannelState(cy_stc_dma_descriptor_t const *descriptor)
  Returns the channel state on completion of the specified descriptor.
  Definition: cy_dma.h:1179
  Cy_DMA_Descriptor_GetInterruptType
  __STATIC_INLINE cy_en_dma_trigger_type_t Cy_DMA_Descriptor_GetInterruptType(cy_stc_dma_descriptor_t const *descriptor)
  Returns the Interrupt-Type of the specified descriptor.
  Definition: cy_dma.h:832
  Cy_DMA_Descriptor_GetDataSize
  __STATIC_INLINE cy_en_dma_data_size_t Cy_DMA_Descriptor_GetDataSize(cy_stc_dma_descriptor_t const *descriptor)
  Returns the Data Element Size parameter of the specified descriptor.
  Definition: cy_dma.h:970
  Cy_DMA_Descriptor_GetYloopSrcIncrement
  __STATIC_INLINE int32_t Cy_DMA_Descriptor_GetYloopSrcIncrement(cy_stc_dma_descriptor_t const *descriptor)
  Returns the source increment parameter for the outer Y of the specified descriptor (for 2D descriptor...
  Definition: cy_dma.h:1432
  Cy_DMA_Descriptor_GetDstTransferSize
  __STATIC_INLINE cy_en_dma_transfer_size_t Cy_DMA_Descriptor_GetDstTransferSize(cy_stc_dma_descriptor_t const *descriptor)
  Returns the Destination Transfer Size parameter of the specified descriptor.
  Definition: cy_dma.h:1062
  Cy_DMA_Descriptor_GetSrcAddress
  __STATIC_INLINE void * Cy_DMA_Descriptor_GetSrcAddress(cy_stc_dma_descriptor_t const *descriptor)
  Returns the source address parameter of the specified descriptor.
  Definition: cy_dma.h:741
  Cy_DMA_Descriptor_GetRetrigger
  __STATIC_INLINE cy_en_dma_retrigger_t Cy_DMA_Descriptor_GetRetrigger(cy_stc_dma_descriptor_t const *descriptor)
  Returns a value that specifies whether the controller should wait for the input trigger to be deactiv...
  Definition: cy_dma.h:1111
  Cy_DMA_Descriptor_GetXloopSrcIncrement
  __STATIC_INLINE int32_t Cy_DMA_Descriptor_GetXloopSrcIncrement(cy_stc_dma_descriptor_t const *descriptor)
  Returns the source increment parameter for the X loop of the specified descriptor (for 1D or 2D descr...
  Definition: cy_dma.h:1279
  Cy_DMA_Descriptor_GetNextDescriptor
  cy_stc_dma_descriptor_t * Cy_DMA_Descriptor_GetNextDescriptor(cy_stc_dma_descriptor_t const *descriptor)
  Returns a next descriptor address of the specified descriptor.
  Definition: cy_dma.c:381
  Cy_DMA_Descriptor_GetDstAddress
  __STATIC_INLINE void * Cy_DMA_Descriptor_GetDstAddress(cy_stc_dma_descriptor_t const *descriptor)
  Returns the destination address parameter of the specified descriptor.
  Definition: cy_dma.h:786
  Cy_DMA_Descriptor_GetYloopDataCount
  __STATIC_INLINE uint32_t Cy_DMA_Descriptor_GetYloopDataCount(cy_stc_dma_descriptor_t const *descriptor)
  Returns the number of X loops to execute in the Y loop of the specified descriptor (for 2D descriptor...
  Definition: cy_dma.h:1381
  Cy_DMA_Descriptor_GetTriggerOutType
  __STATIC_INLINE cy_en_dma_trigger_type_t Cy_DMA_Descriptor_GetTriggerOutType(cy_stc_dma_descriptor_t const *descriptor)
  Returns the Trigger-Out-Type parameter of the specified descriptor.
  Definition: cy_dma.h:924
  Cy_DMA_Descriptor_GetSrcTransferSize
  __STATIC_INLINE cy_en_dma_transfer_size_t Cy_DMA_Descriptor_GetSrcTransferSize(cy_stc_dma_descriptor_t const *descriptor)
  Returns the Source Transfer Size parameter of the specified descriptor.
  Definition: cy_dma.h:1016
  cy_en_dma_data_size_t
  cy_en_dma_data_size_t
  Contains the options for the data size.
  Definition: cy_dma.h:220
  cy_en_dma_transfer_size_t
  cy_en_dma_transfer_size_t
  Contains the options for the transfer size.
  Definition: cy_dma.h:237
  cy_en_dma_trigger_type_t
  cy_en_dma_trigger_type_t
  Contains the options for the interrupt, trig-in and trig-out type parameters of the descriptor.
  Definition: cy_dma.h:211
  cy_en_dma_descriptor_type_t
  cy_en_dma_descriptor_type_t
  Contains the options for the descriptor type.
  Definition: cy_dma.h:202
  cy_en_dma_channel_state_t
  cy_en_dma_channel_state_t
  Contains the options for the state of the channel when the descriptor is completed
  Definition: cy_dma.h:244
  cy_en_dma_retrigger_t
  cy_en_dma_retrigger_t
  Contains the options for descriptor retriggering.
  Definition: cy_dma.h:228

## ◆ Cy_DMA_Descriptor_GetDescriptorType()

__STATIC_INLINE cy_en_dma_descriptor_type_t Cy_DMA_Descriptor_GetDescriptorType | ( | cy_stc_dma_descriptor_t const * | descriptor | ) |

Returns the descriptor's type of the specified descriptor.

Parameters

  descriptor | The descriptor structure instance declared by the user/component.

Returns
  The descriptor type cy_en_dma_descriptor_type_t.

Function Usage
  cy_stc_dma_descriptor_t descriptor = {0};
  /* Scenario: Get the value of individual descriptor parameters dynamically. The snippet shows them all. */
  /* This function assumes the 'descriptor' is initialized, see \ref Cy_DMA_Enable description */
  cy_en_dma_retrigger_t retrigger = Cy_DMA_Descriptor_GetRetrigger(&descriptor);
  cy_en_dma_trigger_type_t interruptType = Cy_DMA_Descriptor_GetInterruptType(&descriptor);
  cy_en_dma_trigger_type_t triggerOutType = Cy_DMA_Descriptor_GetTriggerOutType(&descriptor);
  cy_en_dma_channel_state_t channelState = Cy_DMA_Descriptor_GetChannelState(&descriptor);
  cy_en_dma_trigger_type_t triggerInType = Cy_DMA_Descriptor_GetTriggerInType(&descriptor);
  cy_en_dma_data_size_t dataSize = Cy_DMA_Descriptor_GetDataSize(&descriptor);
  cy_en_dma_transfer_size_t srcTransferSize = Cy_DMA_Descriptor_GetSrcTransferSize(&descriptor);
  cy_en_dma_transfer_size_t dstTransferSize = Cy_DMA_Descriptor_GetDstTransferSize(&descriptor);
  cy_en_dma_descriptor_type_t descriptorType = Cy_DMA_Descriptor_GetDescriptorType(&descriptor);
  void * srcAddress = Cy_DMA_Descriptor_GetSrcAddress(&descriptor);
  void * dstAddress = Cy_DMA_Descriptor_GetDstAddress(&descriptor);
  int32_t srcXincrement = Cy_DMA_Descriptor_GetXloopSrcIncrement(&descriptor);
  int32_t dstXincrement = Cy_DMA_Descriptor_GetXloopDstIncrement(&descriptor);
  uint32_t xCount = Cy_DMA_Descriptor_GetXloopDataCount(&descriptor);
  int32_t srcYincrement = Cy_DMA_Descriptor_GetYloopSrcIncrement(&descriptor);
  int32_t dstYincrement = Cy_DMA_Descriptor_GetYloopDstIncrement(&descriptor);
  uint32_t yCount = Cy_DMA_Descriptor_GetYloopDataCount(&descriptor);
  cy_stc_dma_descriptor_t * nextDescriptor = Cy_DMA_Descriptor_GetNextDescriptor(&descriptor);

## ◆ Cy_DMA_Descriptor_GetSrcAddress()

__STATIC_INLINE void * Cy_DMA_Descriptor_GetSrcAddress | ( | cy_stc_dma_descriptor_t const * | descriptor | ) |

Returns the source address parameter of the specified descriptor.

Parameters

  descriptor | The descriptor structure instance declared by the user/component.

Returns
  The source address value of the descriptor.

Function Usage
  cy_stc_dma_descriptor_t descriptor = {0};
  /* Scenario: Get the value of individual descriptor parameters dynamically. The snippet shows them all. */
  /* This function assumes the 'descriptor' is initialized, see \ref Cy_DMA_Enable description */
  cy_en_dma_retrigger_t retrigger = Cy_DMA_Descriptor_GetRetrigger(&descriptor);
  cy_en_dma_trigger_type_t interruptType = Cy_DMA_Descriptor_GetInterruptType(&descriptor);
  cy_en_dma_trigger_type_t triggerOutType = Cy_DMA_Descriptor_GetTriggerOutType(&descriptor);
  cy_en_dma_channel_state_t channelState = Cy_DMA_Descriptor_GetChannelState(&descriptor);
  cy_en_dma_trigger_type_t triggerInType = Cy_DMA_Descriptor_GetTriggerInType(&descriptor);
  cy_en_dma_data_size_t dataSize = Cy_DMA_Descriptor_GetDataSize(&descriptor);
  cy_en_dma_transfer_size_t srcTransferSize = Cy_DMA_Descriptor_GetSrcTransferSize(&descriptor);
  cy_en_dma_transfer_size_t dstTransferSize = Cy_DMA_Descriptor_GetDstTransferSize(&descriptor);
  cy_en_dma_descriptor_type_t descriptorType = Cy_DMA_Descriptor_GetDescriptorType(&descriptor);
  void * srcAddress = Cy_DMA_Descriptor_GetSrcAddress(&descriptor);
  void * dstAddress = Cy_DMA_Descriptor_GetDstAddress(&descriptor);
  int32_t srcXincrement = Cy_DMA_Descriptor_GetXloopSrcIncrement(&descriptor);
  int32_t dstXincrement = Cy_DMA_Descriptor_GetXloopDstIncrement(&descriptor);
  uint32_t xCount = Cy_DMA_Descriptor_GetXloopDataCount(&descriptor);
  int32_t srcYincrement = Cy_DMA_Descriptor_GetYloopSrcIncrement(&descriptor);
  int32_t dstYincrement = Cy_DMA_Descriptor_GetYloopDstIncrement(&descriptor);
  uint32_t yCount = Cy_DMA_Descriptor_GetYloopDataCount(&descriptor);
  cy_stc_dma_descriptor_t * nextDescriptor = Cy_DMA_Descriptor_GetNextDescriptor(&descriptor);

## ◆ Cy_DMA_Descriptor_GetDstAddress()

__STATIC_INLINE void * Cy_DMA_Descriptor_GetDstAddress | ( | cy_stc_dma_descriptor_t const * | descriptor | ) |

Returns the destination address parameter of the specified descriptor.

Parameters

  descriptor | The descriptor structure instance declared by the user/component.

Returns
  The destination address value of the descriptor.

Function Usage
  cy_stc_dma_descriptor_t descriptor = {0};
  /* Scenario: Get the value of individual descriptor parameters dynamically. The snippet shows them all. */
  /* This function assumes the 'descriptor' is initialized, see \ref Cy_DMA_Enable description */
  cy_en_dma_retrigger_t retrigger = Cy_DMA_Descriptor_GetRetrigger(&descriptor);
  cy_en_dma_trigger_type_t interruptType = Cy_DMA_Descriptor_GetInterruptType(&descriptor);
  cy_en_dma_trigger_type_t triggerOutType = Cy_DMA_Descriptor_GetTriggerOutType(&descriptor);
  cy_en_dma_channel_state_t channelState = Cy_DMA_Descriptor_GetChannelState(&descriptor);
  cy_en_dma_trigger_type_t triggerInType = Cy_DMA_Descriptor_GetTriggerInType(&descriptor);
  cy_en_dma_data_size_t dataSize = Cy_DMA_Descriptor_GetDataSize(&descriptor);
  cy_en_dma_transfer_size_t srcTransferSize = Cy_DMA_Descriptor_GetSrcTransferSize(&descriptor);
  cy_en_dma_transfer_size_t dstTransferSize = Cy_DMA_Descriptor_GetDstTransferSize(&descriptor);
  cy_en_dma_descriptor_type_t descriptorType = Cy_DMA_Descriptor_GetDescriptorType(&descriptor);
  void * srcAddress = Cy_DMA_Descriptor_GetSrcAddress(&descriptor);
  void * dstAddress = Cy_DMA_Descriptor_GetDstAddress(&descriptor);
  int32_t srcXincrement = Cy_DMA_Descriptor_GetXloopSrcIncrement(&descriptor);
  int32_t dstXincrement = Cy_DMA_Descriptor_GetXloopDstIncrement(&descriptor);
  uint32_t xCount = Cy_DMA_Descriptor_GetXloopDataCount(&descriptor);
  int32_t srcYincrement = Cy_DMA_Descriptor_GetYloopSrcIncrement(&descriptor);
  int32_t dstYincrement = Cy_DMA_Descriptor_GetYloopDstIncrement(&descriptor);
  uint32_t yCount = Cy_DMA_Descriptor_GetYloopDataCount(&descriptor);
  cy_stc_dma_descriptor_t * nextDescriptor = Cy_DMA_Descriptor_GetNextDescriptor(&descriptor);

## ◆ Cy_DMA_Descriptor_GetXloopDataCount()

__STATIC_INLINE uint32_t Cy_DMA_Descriptor_GetXloopDataCount | ( | cy_stc_dma_descriptor_t const * | descriptor | ) |

Returns the number of data elements for the X loop of the specified descriptor (for 1D or 2D descriptors only).

Parameters

  descriptor | The descriptor structure instance declared by the user/component.

Returns
  The number of data elements to transfer in the X loop. The range is 1 ... 256.

Function Usage
  cy_stc_dma_descriptor_t descriptor = {0};
  /* Scenario: Get the value of individual descriptor parameters dynamically. The snippet shows them all. */
  /* This function assumes the 'descriptor' is initialized, see \ref Cy_DMA_Enable description */
  cy_en_dma_retrigger_t retrigger = Cy_DMA_Descriptor_GetRetrigger(&descriptor);
  cy_en_dma_trigger_type_t interruptType = Cy_DMA_Descriptor_GetInterruptType(&descriptor);
  cy_en_dma_trigger_type_t triggerOutType = Cy_DMA_Descriptor_GetTriggerOutType(&descriptor);
  cy_en_dma_channel_state_t channelState = Cy_DMA_Descriptor_GetChannelState(&descriptor);
  cy_en_dma_trigger_type_t triggerInType = Cy_DMA_Descriptor_GetTriggerInType(&descriptor);
  cy_en_dma_data_size_t dataSize = Cy_DMA_Descriptor_GetDataSize(&descriptor);
  cy_en_dma_transfer_size_t srcTransferSize = Cy_DMA_Descriptor_GetSrcTransferSize(&descriptor);
  cy_en_dma_transfer_size_t dstTransferSize = Cy_DMA_Descriptor_GetDstTransferSize(&descriptor);
  cy_en_dma_descriptor_type_t descriptorType = Cy_DMA_Descriptor_GetDescriptorType(&descriptor);
  void * srcAddress = Cy_DMA_Descriptor_GetSrcAddress(&descriptor);
  void * dstAddress = Cy_DMA_Descriptor_GetDstAddress(&descriptor);
  int32_t srcXincrement = Cy_DMA_Descriptor_GetXloopSrcIncrement(&descriptor);
  int32_t dstXincrement = Cy_DMA_Descriptor_GetXloopDstIncrement(&descriptor);
  uint32_t xCount = Cy_DMA_Descriptor_GetXloopDataCount(&descriptor);
  int32_t srcYincrement = Cy_DMA_Descriptor_GetYloopSrcIncrement(&descriptor);
  int32_t dstYincrement = Cy_DMA_Descriptor_GetYloopDstIncrement(&descriptor);
  uint32_t yCount = Cy_DMA_Descriptor_GetYloopDataCount(&descriptor);
  cy_stc_dma_descriptor_t * nextDescriptor = Cy_DMA_Descriptor_GetNextDescriptor(&descriptor);

## ◆ Cy_DMA_Descriptor_GetYloopDataCount()

__STATIC_INLINE uint32_t Cy_DMA_Descriptor_GetYloopDataCount | ( | cy_stc_dma_descriptor_t const * | descriptor | ) |

Returns the number of X loops to execute in the Y loop of the specified descriptor (for 2D descriptors only).

Parameters

  descriptor | The descriptor structure instance declared by the user/component.

Returns
  The number of X loops to execute in the Y loop. The range is 1 ... 256.

Function Usage
  cy_stc_dma_descriptor_t descriptor = {0};
  /* Scenario: Get the value of individual descriptor parameters dynamically. The snippet shows them all. */
  /* This function assumes the 'descriptor' is initialized, see \ref Cy_DMA_Enable description */
  cy_en_dma_retrigger_t retrigger = Cy_DMA_Descriptor_GetRetrigger(&descriptor);
  cy_en_dma_trigger_type_t interruptType = Cy_DMA_Descriptor_GetInterruptType(&descriptor);
  cy_en_dma_trigger_type_t triggerOutType = Cy_DMA_Descriptor_GetTriggerOutType(&descriptor);
  cy_en_dma_channel_state_t channelState = Cy_DMA_Descriptor_GetChannelState(&descriptor);
  cy_en_dma_trigger_type_t triggerInType = Cy_DMA_Descriptor_GetTriggerInType(&descriptor);
  cy_en_dma_data_size_t dataSize = Cy_DMA_Descriptor_GetDataSize(&descriptor);
  cy_en_dma_transfer_size_t srcTransferSize = Cy_DMA_Descriptor_GetSrcTransferSize(&descriptor);
  cy_en_dma_transfer_size_t dstTransferSize = Cy_DMA_Descriptor_GetDstTransferSize(&descriptor);
  cy_en_dma_descriptor_type_t descriptorType = Cy_DMA_Descriptor_GetDescriptorType(&descriptor);
  void * srcAddress = Cy_DMA_Descriptor_GetSrcAddress(&descriptor);
  void * dstAddress = Cy_DMA_Descriptor_GetDstAddress(&descriptor);
  int32_t srcXincrement = Cy_DMA_Descriptor_GetXloopSrcIncrement(&descriptor);
  int32_t dstXincrement = Cy_DMA_Descriptor_GetXloopDstIncrement(&descriptor);
  uint32_t xCount = Cy_DMA_Descriptor_GetXloopDataCount(&descriptor);
  int32_t srcYincrement = Cy_DMA_Descriptor_GetYloopSrcIncrement(&descriptor);
  int32_t dstYincrement = Cy_DMA_Descriptor_GetYloopDstIncrement(&descriptor);
  uint32_t yCount = Cy_DMA_Descriptor_GetYloopDataCount(&descriptor);
  cy_stc_dma_descriptor_t * nextDescriptor = Cy_DMA_Descriptor_GetNextDescriptor(&descriptor);

## ◆ Cy_DMA_Descriptor_GetXloopSrcIncrement()

__STATIC_INLINE int32_t Cy_DMA_Descriptor_GetXloopSrcIncrement | ( | cy_stc_dma_descriptor_t const * | descriptor | ) |

Returns the source increment parameter for the X loop of the specified descriptor (for 1D or 2D descriptors only).

Parameters

  descriptor | The descriptor structure instance declared by the user/component.

Returns
  The value of the source increment. The range is -2048 ... 2047.

Function Usage
  cy_stc_dma_descriptor_t descriptor = {0};
  /* Scenario: Get the value of individual descriptor parameters dynamically. The snippet shows them all. */
  /* This function assumes the 'descriptor' is initialized, see \ref Cy_DMA_Enable description */
  cy_en_dma_retrigger_t retrigger = Cy_DMA_Descriptor_GetRetrigger(&descriptor);
  cy_en_dma_trigger_type_t interruptType = Cy_DMA_Descriptor_GetInterruptType(&descriptor);
  cy_en_dma_trigger_type_t triggerOutType = Cy_DMA_Descriptor_GetTriggerOutType(&descriptor);
  cy_en_dma_channel_state_t channelState = Cy_DMA_Descriptor_GetChannelState(&descriptor);
  cy_en_dma_trigger_type_t triggerInType = Cy_DMA_Descriptor_GetTriggerInType(&descriptor);
  cy_en_dma_data_size_t dataSize = Cy_DMA_Descriptor_GetDataSize(&descriptor);
  cy_en_dma_transfer_size_t srcTransferSize = Cy_DMA_Descriptor_GetSrcTransferSize(&descriptor);
  cy_en_dma_transfer_size_t dstTransferSize = Cy_DMA_Descriptor_GetDstTransferSize(&descriptor);
  cy_en_dma_descriptor_type_t descriptorType = Cy_DMA_Descriptor_GetDescriptorType(&descriptor);
  void * srcAddress = Cy_DMA_Descriptor_GetSrcAddress(&descriptor);
  void * dstAddress = Cy_DMA_Descriptor_GetDstAddress(&descriptor);
  int32_t srcXincrement = Cy_DMA_Descriptor_GetXloopSrcIncrement(&descriptor);
  int32_t dstXincrement = Cy_DMA_Descriptor_GetXloopDstIncrement(&descriptor);
  uint32_t xCount = Cy_DMA_Descriptor_GetXloopDataCount(&descriptor);
  int32_t srcYincrement = Cy_DMA_Descriptor_GetYloopSrcIncrement(&descriptor);
  int32_t dstYincrement = Cy_DMA_Descriptor_GetYloopDstIncrement(&descriptor);
  uint32_t yCount = Cy_DMA_Descriptor_GetYloopDataCount(&descriptor);
  cy_stc_dma_descriptor_t * nextDescriptor = Cy_DMA_Descriptor_GetNextDescriptor(&descriptor);

## ◆ Cy_DMA_Descriptor_GetXloopDstIncrement()

__STATIC_INLINE int32_t Cy_DMA_Descriptor_GetXloopDstIncrement | ( | cy_stc_dma_descriptor_t const * | descriptor | ) |

Returns the destination increment parameter for the X loop of the specified descriptor (for 1D or 2D descriptors only).

Parameters

  descriptor | The descriptor structure instance declared by the user/component.

Returns
  The value of the destination increment. The range is -2048 ... 2047.

Function Usage
  cy_stc_dma_descriptor_t descriptor = {0};
  /* Scenario: Get the value of individual descriptor parameters dynamically. The snippet shows them all. */
  /* This function assumes the 'descriptor' is initialized, see \ref Cy_DMA_Enable description */
  cy_en_dma_retrigger_t retrigger = Cy_DMA_Descriptor_GetRetrigger(&descriptor);
  cy_en_dma_trigger_type_t interruptType = Cy_DMA_Descriptor_GetInterruptType(&descriptor);
  cy_en_dma_trigger_type_t triggerOutType = Cy_DMA_Descriptor_GetTriggerOutType(&descriptor);
  cy_en_dma_channel_state_t channelState = Cy_DMA_Descriptor_GetChannelState(&descriptor);
  cy_en_dma_trigger_type_t triggerInType = Cy_DMA_Descriptor_GetTriggerInType(&descriptor);
  cy_en_dma_data_size_t dataSize = Cy_DMA_Descriptor_GetDataSize(&descriptor);
  cy_en_dma_transfer_size_t srcTransferSize = Cy_DMA_Descriptor_GetSrcTransferSize(&descriptor);
  cy_en_dma_transfer_size_t dstTransferSize = Cy_DMA_Descriptor_GetDstTransferSize(&descriptor);
  cy_en_dma_descriptor_type_t descriptorType = Cy_DMA_Descriptor_GetDescriptorType(&descriptor);
  void * srcAddress = Cy_DMA_Descriptor_GetSrcAddress(&descriptor);
  void * dstAddress = Cy_DMA_Descriptor_GetDstAddress(&descriptor);
  int32_t srcXincrement = Cy_DMA_Descriptor_GetXloopSrcIncrement(&descriptor);
  int32_t dstXincrement = Cy_DMA_Descriptor_GetXloopDstIncrement(&descriptor);
  uint32_t xCount = Cy_DMA_Descriptor_GetXloopDataCount(&descriptor);
  int32_t srcYincrement = Cy_DMA_Descriptor_GetYloopSrcIncrement(&descriptor);
  int32_t dstYincrement = Cy_DMA_Descriptor_GetYloopDstIncrement(&descriptor);
  uint32_t yCount = Cy_DMA_Descriptor_GetYloopDataCount(&descriptor);
  cy_stc_dma_descriptor_t * nextDescriptor = Cy_DMA_Descriptor_GetNextDescriptor(&descriptor);

## ◆ Cy_DMA_Descriptor_GetYloopSrcIncrement()

__STATIC_INLINE int32_t Cy_DMA_Descriptor_GetYloopSrcIncrement | ( | cy_stc_dma_descriptor_t const * | descriptor | ) |

Returns the source increment parameter for the outer Y of the specified descriptor (for 2D descriptors only).

Parameters

  descriptor | The descriptor structure instance declared by the user/component.

Returns
  The value of the source increment. The range is -2048 ... 2047.

Function Usage
  cy_stc_dma_descriptor_t descriptor = {0};
  /* Scenario: Get the value of individual descriptor parameters dynamically. The snippet shows them all. */
  /* This function assumes the 'descriptor' is initialized, see \ref Cy_DMA_Enable description */
  cy_en_dma_retrigger_t retrigger = Cy_DMA_Descriptor_GetRetrigger(&descriptor);
  cy_en_dma_trigger_type_t interruptType = Cy_DMA_Descriptor_GetInterruptType(&descriptor);
  cy_en_dma_trigger_type_t triggerOutType = Cy_DMA_Descriptor_GetTriggerOutType(&descriptor);
  cy_en_dma_channel_state_t channelState = Cy_DMA_Descriptor_GetChannelState(&descriptor);
  cy_en_dma_trigger_type_t triggerInType = Cy_DMA_Descriptor_GetTriggerInType(&descriptor);
  cy_en_dma_data_size_t dataSize = Cy_DMA_Descriptor_GetDataSize(&descriptor);
  cy_en_dma_transfer_size_t srcTransferSize = Cy_DMA_Descriptor_GetSrcTransferSize(&descriptor);
  cy_en_dma_transfer_size_t dstTransferSize = Cy_DMA_Descriptor_GetDstTransferSize(&descriptor);
  cy_en_dma_descriptor_type_t descriptorType = Cy_DMA_Descriptor_GetDescriptorType(&descriptor);
  void * srcAddress = Cy_DMA_Descriptor_GetSrcAddress(&descriptor);
  void * dstAddress = Cy_DMA_Descriptor_GetDstAddress(&descriptor);
  int32_t srcXincrement = Cy_DMA_Descriptor_GetXloopSrcIncrement(&descriptor);
  int32_t dstXincrement = Cy_DMA_Descriptor_GetXloopDstIncrement(&descriptor);
  uint32_t xCount = Cy_DMA_Descriptor_GetXloopDataCount(&descriptor);
  int32_t srcYincrement = Cy_DMA_Descriptor_GetYloopSrcIncrement(&descriptor);
  int32_t dstYincrement = Cy_DMA_Descriptor_GetYloopDstIncrement(&descriptor);
  uint32_t yCount = Cy_DMA_Descriptor_GetYloopDataCount(&descriptor);
  cy_stc_dma_descriptor_t * nextDescriptor = Cy_DMA_Descriptor_GetNextDescriptor(&descriptor);

## ◆ Cy_DMA_Descriptor_GetYloopDstIncrement()

__STATIC_INLINE int32_t Cy_DMA_Descriptor_GetYloopDstIncrement | ( | cy_stc_dma_descriptor_t const * | descriptor | ) |

Returns the destination increment parameter for the Y loop of the specified descriptor (for 2D descriptors only).

Parameters

  descriptor | The descriptor structure instance declared by the user/component.

Returns
  The value of the destination increment. The range is -2048 ... 2047.

Function Usage
  cy_stc_dma_descriptor_t descriptor = {0};
  /* Scenario: Get the value of individual descriptor parameters dynamically. The snippet shows them all. */
  /* This function assumes the 'descriptor' is initialized, see \ref Cy_DMA_Enable description */
  cy_en_dma_retrigger_t retrigger = Cy_DMA_Descriptor_GetRetrigger(&descriptor);
  cy_en_dma_trigger_type_t interruptType = Cy_DMA_Descriptor_GetInterruptType(&descriptor);
  cy_en_dma_trigger_type_t triggerOutType = Cy_DMA_Descriptor_GetTriggerOutType(&descriptor);
  cy_en_dma_channel_state_t channelState = Cy_DMA_Descriptor_GetChannelState(&descriptor);
  cy_en_dma_trigger_type_t triggerInType = Cy_DMA_Descriptor_GetTriggerInType(&descriptor);
  cy_en_dma_data_size_t dataSize = Cy_DMA_Descriptor_GetDataSize(&descriptor);
  cy_en_dma_transfer_size_t srcTransferSize = Cy_DMA_Descriptor_GetSrcTransferSize(&descriptor);
  cy_en_dma_transfer_size_t dstTransferSize = Cy_DMA_Descriptor_GetDstTransferSize(&descriptor);
  cy_en_dma_descriptor_type_t descriptorType = Cy_DMA_Descriptor_GetDescriptorType(&descriptor);
  void * srcAddress = Cy_DMA_Descriptor_GetSrcAddress(&descriptor);
  void * dstAddress = Cy_DMA_Descriptor_GetDstAddress(&descriptor);
  int32_t srcXincrement = Cy_DMA_Descriptor_GetXloopSrcIncrement(&descriptor);
  int32_t dstXincrement = Cy_DMA_Descriptor_GetXloopDstIncrement(&descriptor);
  uint32_t xCount = Cy_DMA_Descriptor_GetXloopDataCount(&descriptor);
  int32_t srcYincrement = Cy_DMA_Descriptor_GetYloopSrcIncrement(&descriptor);
  int32_t dstYincrement = Cy_DMA_Descriptor_GetYloopDstIncrement(&descriptor);
  uint32_t yCount = Cy_DMA_Descriptor_GetYloopDataCount(&descriptor);
  cy_stc_dma_descriptor_t * nextDescriptor = Cy_DMA_Descriptor_GetNextDescriptor(&descriptor);

## ◆ Cy_DMA_Descriptor_GetInterruptType()

__STATIC_INLINE cy_en_dma_trigger_type_t Cy_DMA_Descriptor_GetInterruptType | ( | cy_stc_dma_descriptor_t const * | descriptor | ) |

Returns the Interrupt-Type of the specified descriptor.

Parameters

  descriptor | The descriptor structure instance declared by the user/component.

Returns
  The Interrupt-Type cy_en_dma_trigger_type_t.

Function Usage
  cy_stc_dma_descriptor_t descriptor = {0};
  /* Scenario: Get the value of individual descriptor parameters dynamically. The snippet shows them all. */
  /* This function assumes the 'descriptor' is initialized, see \ref Cy_DMA_Enable description */
  cy_en_dma_retrigger_t retrigger = Cy_DMA_Descriptor_GetRetrigger(&descriptor);
  cy_en_dma_trigger_type_t interruptType = Cy_DMA_Descriptor_GetInterruptType(&descriptor);
  cy_en_dma_trigger_type_t triggerOutType = Cy_DMA_Descriptor_GetTriggerOutType(&descriptor);
  cy_en_dma_channel_state_t channelState = Cy_DMA_Descriptor_GetChannelState(&descriptor);
  cy_en_dma_trigger_type_t triggerInType = Cy_DMA_Descriptor_GetTriggerInType(&descriptor);
  cy_en_dma_data_size_t dataSize = Cy_DMA_Descriptor_GetDataSize(&descriptor);
  cy_en_dma_transfer_size_t srcTransferSize = Cy_DMA_Descriptor_GetSrcTransferSize(&descriptor);
  cy_en_dma_transfer_size_t dstTransferSize = Cy_DMA_Descriptor_GetDstTransferSize(&descriptor);
  cy_en_dma_descriptor_type_t descriptorType = Cy_DMA_Descriptor_GetDescriptorType(&descriptor);
  void * srcAddress = Cy_DMA_Descriptor_GetSrcAddress(&descriptor);
  void * dstAddress = Cy_DMA_Descriptor_GetDstAddress(&descriptor);
  int32_t srcXincrement = Cy_DMA_Descriptor_GetXloopSrcIncrement(&descriptor);
  int32_t dstXincrement = Cy_DMA_Descriptor_GetXloopDstIncrement(&descriptor);
  uint32_t xCount = Cy_DMA_Descriptor_GetXloopDataCount(&descriptor);
  int32_t srcYincrement = Cy_DMA_Descriptor_GetYloopSrcIncrement(&descriptor);
  int32_t dstYincrement = Cy_DMA_Descriptor_GetYloopDstIncrement(&descriptor);
  uint32_t yCount = Cy_DMA_Descriptor_GetYloopDataCount(&descriptor);
  cy_stc_dma_descriptor_t * nextDescriptor = Cy_DMA_Descriptor_GetNextDescriptor(&descriptor);

## ◆ Cy_DMA_Descriptor_GetTriggerInType()

__STATIC_INLINE cy_en_dma_trigger_type_t Cy_DMA_Descriptor_GetTriggerInType | ( | cy_stc_dma_descriptor_t const * | descriptor | ) |

Returns the Trigger-In-Type parameter of the specified descriptor.

Parameters

  descriptor | The descriptor structure instance declared by the user/component.

Returns
  The Trigger-In-Type cy_en_dma_trigger_type_t

Function Usage
  cy_stc_dma_descriptor_t descriptor = {0};
  /* Scenario: Get the value of individual descriptor parameters dynamically. The snippet shows them all. */
  /* This function assumes the 'descriptor' is initialized, see \ref Cy_DMA_Enable description */
  cy_en_dma_retrigger_t retrigger = Cy_DMA_Descriptor_GetRetrigger(&descriptor);
  cy_en_dma_trigger_type_t interruptType = Cy_DMA_Descriptor_GetInterruptType(&descriptor);
  cy_en_dma_trigger_type_t triggerOutType = Cy_DMA_Descriptor_GetTriggerOutType(&descriptor);
  cy_en_dma_channel_state_t channelState = Cy_DMA_Descriptor_GetChannelState(&descriptor);
  cy_en_dma_trigger_type_t triggerInType = Cy_DMA_Descriptor_GetTriggerInType(&descriptor);
  cy_en_dma_data_size_t dataSize = Cy_DMA_Descriptor_GetDataSize(&descriptor);
  cy_en_dma_transfer_size_t srcTransferSize = Cy_DMA_Descriptor_GetSrcTransferSize(&descriptor);
  cy_en_dma_transfer_size_t dstTransferSize = Cy_DMA_Descriptor_GetDstTransferSize(&descriptor);
  cy_en_dma_descriptor_type_t descriptorType = Cy_DMA_Descriptor_GetDescriptorType(&descriptor);
  void * srcAddress = Cy_DMA_Descriptor_GetSrcAddress(&descriptor);
  void * dstAddress = Cy_DMA_Descriptor_GetDstAddress(&descriptor);
  int32_t srcXincrement = Cy_DMA_Descriptor_GetXloopSrcIncrement(&descriptor);
  int32_t dstXincrement = Cy_DMA_Descriptor_GetXloopDstIncrement(&descriptor);
  uint32_t xCount = Cy_DMA_Descriptor_GetXloopDataCount(&descriptor);
  int32_t srcYincrement = Cy_DMA_Descriptor_GetYloopSrcIncrement(&descriptor);
  int32_t dstYincrement = Cy_DMA_Descriptor_GetYloopDstIncrement(&descriptor);
  uint32_t yCount = Cy_DMA_Descriptor_GetYloopDataCount(&descriptor);
  cy_stc_dma_descriptor_t * nextDescriptor = Cy_DMA_Descriptor_GetNextDescriptor(&descriptor);

## ◆ Cy_DMA_Descriptor_GetTriggerOutType()

__STATIC_INLINE cy_en_dma_trigger_type_t Cy_DMA_Descriptor_GetTriggerOutType | ( | cy_stc_dma_descriptor_t const * | descriptor | ) |

Returns the Trigger-Out-Type parameter of the specified descriptor.

Parameters

  descriptor | The descriptor structure instance declared by the user/component.

Returns
  The Trigger-Out-Type parameter cy_en_dma_trigger_type_t.

Function Usage
  cy_stc_dma_descriptor_t descriptor = {0};
  /* Scenario: Get the value of individual descriptor parameters dynamically. The snippet shows them all. */
  /* This function assumes the 'descriptor' is initialized, see \ref Cy_DMA_Enable description */
  cy_en_dma_retrigger_t retrigger = Cy_DMA_Descriptor_GetRetrigger(&descriptor);
  cy_en_dma_trigger_type_t interruptType = Cy_DMA_Descriptor_GetInterruptType(&descriptor);
  cy_en_dma_trigger_type_t triggerOutType = Cy_DMA_Descriptor_GetTriggerOutType(&descriptor);
  cy_en_dma_channel_state_t channelState = Cy_DMA_Descriptor_GetChannelState(&descriptor);
  cy_en_dma_trigger_type_t triggerInType = Cy_DMA_Descriptor_GetTriggerInType(&descriptor);
  cy_en_dma_data_size_t dataSize = Cy_DMA_Descriptor_GetDataSize(&descriptor);
  cy_en_dma_transfer_size_t srcTransferSize = Cy_DMA_Descriptor_GetSrcTransferSize(&descriptor);
  cy_en_dma_transfer_size_t dstTransferSize = Cy_DMA_Descriptor_GetDstTransferSize(&descriptor);
  cy_en_dma_descriptor_type_t descriptorType = Cy_DMA_Descriptor_GetDescriptorType(&descriptor);
  void * srcAddress = Cy_DMA_Descriptor_GetSrcAddress(&descriptor);
  void * dstAddress = Cy_DMA_Descriptor_GetDstAddress(&descriptor);
  int32_t srcXincrement = Cy_DMA_Descriptor_GetXloopSrcIncrement(&descriptor);
  int32_t dstXincrement = Cy_DMA_Descriptor_GetXloopDstIncrement(&descriptor);
  uint32_t xCount = Cy_DMA_Descriptor_GetXloopDataCount(&descriptor);
  int32_t srcYincrement = Cy_DMA_Descriptor_GetYloopSrcIncrement(&descriptor);
  int32_t dstYincrement = Cy_DMA_Descriptor_GetYloopDstIncrement(&descriptor);
  uint32_t yCount = Cy_DMA_Descriptor_GetYloopDataCount(&descriptor);
  cy_stc_dma_descriptor_t * nextDescriptor = Cy_DMA_Descriptor_GetNextDescriptor(&descriptor);

## ◆ Cy_DMA_Descriptor_GetDataSize()

__STATIC_INLINE cy_en_dma_data_size_t Cy_DMA_Descriptor_GetDataSize | ( | cy_stc_dma_descriptor_t const * | descriptor | ) |

Returns the Data Element Size parameter of the specified descriptor.

Parameters

  descriptor | The descriptor structure instance declared by the user/component.

Returns
  The Data Element Size cy_en_dma_data_size_t.

Function Usage
  cy_stc_dma_descriptor_t descriptor = {0};
  /* Scenario: Get the value of individual descriptor parameters dynamically. The snippet shows them all. */
  /* This function assumes the 'descriptor' is initialized, see \ref Cy_DMA_Enable description */
  cy_en_dma_retrigger_t retrigger = Cy_DMA_Descriptor_GetRetrigger(&descriptor);
  cy_en_dma_trigger_type_t interruptType = Cy_DMA_Descriptor_GetInterruptType(&descriptor);
  cy_en_dma_trigger_type_t triggerOutType = Cy_DMA_Descriptor_GetTriggerOutType(&descriptor);
  cy_en_dma_channel_state_t channelState = Cy_DMA_Descriptor_GetChannelState(&descriptor);
  cy_en_dma_trigger_type_t triggerInType = Cy_DMA_Descriptor_GetTriggerInType(&descriptor);
  cy_en_dma_data_size_t dataSize = Cy_DMA_Descriptor_GetDataSize(&descriptor);
  cy_en_dma_transfer_size_t srcTransferSize = Cy_DMA_Descriptor_GetSrcTransferSize(&descriptor);
  cy_en_dma_transfer_size_t dstTransferSize = Cy_DMA_Descriptor_GetDstTransferSize(&descriptor);
  cy_en_dma_descriptor_type_t descriptorType = Cy_DMA_Descriptor_GetDescriptorType(&descriptor);
  void * srcAddress = Cy_DMA_Descriptor_GetSrcAddress(&descriptor);
  void * dstAddress = Cy_DMA_Descriptor_GetDstAddress(&descriptor);
  int32_t srcXincrement = Cy_DMA_Descriptor_GetXloopSrcIncrement(&descriptor);
  int32_t dstXincrement = Cy_DMA_Descriptor_GetXloopDstIncrement(&descriptor);
  uint32_t xCount = Cy_DMA_Descriptor_GetXloopDataCount(&descriptor);
  int32_t srcYincrement = Cy_DMA_Descriptor_GetYloopSrcIncrement(&descriptor);
  int32_t dstYincrement = Cy_DMA_Descriptor_GetYloopDstIncrement(&descriptor);
  uint32_t yCount = Cy_DMA_Descriptor_GetYloopDataCount(&descriptor);
  cy_stc_dma_descriptor_t * nextDescriptor = Cy_DMA_Descriptor_GetNextDescriptor(&descriptor);

## ◆ Cy_DMA_Descriptor_GetSrcTransferSize()

__STATIC_INLINE cy_en_dma_transfer_size_t Cy_DMA_Descriptor_GetSrcTransferSize | ( | cy_stc_dma_descriptor_t const * | descriptor | ) |

Returns the Source Transfer Size parameter of the specified descriptor.

Parameters

  descriptor | The descriptor structure instance declared by the user/component.

Returns
  The Source Transfer Size cy_en_dma_transfer_size_t.

Function Usage
  cy_stc_dma_descriptor_t descriptor = {0};
  /* Scenario: Get the value of individual descriptor parameters dynamically. The snippet shows them all. */
  /* This function assumes the 'descriptor' is initialized, see \ref Cy_DMA_Enable description */
  cy_en_dma_retrigger_t retrigger = Cy_DMA_Descriptor_GetRetrigger(&descriptor);
  cy_en_dma_trigger_type_t interruptType = Cy_DMA_Descriptor_GetInterruptType(&descriptor);
  cy_en_dma_trigger_type_t triggerOutType = Cy_DMA_Descriptor_GetTriggerOutType(&descriptor);
  cy_en_dma_channel_state_t channelState = Cy_DMA_Descriptor_GetChannelState(&descriptor);
  cy_en_dma_trigger_type_t triggerInType = Cy_DMA_Descriptor_GetTriggerInType(&descriptor);
  cy_en_dma_data_size_t dataSize = Cy_DMA_Descriptor_GetDataSize(&descriptor);
  cy_en_dma_transfer_size_t srcTransferSize = Cy_DMA_Descriptor_GetSrcTransferSize(&descriptor);
  cy_en_dma_transfer_size_t dstTransferSize = Cy_DMA_Descriptor_GetDstTransferSize(&descriptor);
  cy_en_dma_descriptor_type_t descriptorType = Cy_DMA_Descriptor_GetDescriptorType(&descriptor);
  void * srcAddress = Cy_DMA_Descriptor_GetSrcAddress(&descriptor);
  void * dstAddress = Cy_DMA_Descriptor_GetDstAddress(&descriptor);
  int32_t srcXincrement = Cy_DMA_Descriptor_GetXloopSrcIncrement(&descriptor);
  int32_t dstXincrement = Cy_DMA_Descriptor_GetXloopDstIncrement(&descriptor);
  uint32_t xCount = Cy_DMA_Descriptor_GetXloopDataCount(&descriptor);
  int32_t srcYincrement = Cy_DMA_Descriptor_GetYloopSrcIncrement(&descriptor);
  int32_t dstYincrement = Cy_DMA_Descriptor_GetYloopDstIncrement(&descriptor);
  uint32_t yCount = Cy_DMA_Descriptor_GetYloopDataCount(&descriptor);
  cy_stc_dma_descriptor_t * nextDescriptor = Cy_DMA_Descriptor_GetNextDescriptor(&descriptor);

## ◆ Cy_DMA_Descriptor_GetDstTransferSize()

__STATIC_INLINE cy_en_dma_transfer_size_t Cy_DMA_Descriptor_GetDstTransferSize | ( | cy_stc_dma_descriptor_t const * | descriptor | ) |

Returns the Destination Transfer Size parameter of the specified descriptor.

Parameters

  descriptor | The descriptor structure instance declared by the user/component.

Returns
  The Destination Transfer Size cy_en_dma_transfer_size_t.

Function Usage
  cy_stc_dma_descriptor_t descriptor = {0};
  /* Scenario: Get the value of individual descriptor parameters dynamically. The snippet shows them all. */
  /* This function assumes the 'descriptor' is initialized, see \ref Cy_DMA_Enable description */
  cy_en_dma_retrigger_t retrigger = Cy_DMA_Descriptor_GetRetrigger(&descriptor);
  cy_en_dma_trigger_type_t interruptType = Cy_DMA_Descriptor_GetInterruptType(&descriptor);
  cy_en_dma_trigger_type_t triggerOutType = Cy_DMA_Descriptor_GetTriggerOutType(&descriptor);
  cy_en_dma_channel_state_t channelState = Cy_DMA_Descriptor_GetChannelState(&descriptor);
  cy_en_dma_trigger_type_t triggerInType = Cy_DMA_Descriptor_GetTriggerInType(&descriptor);
  cy_en_dma_data_size_t dataSize = Cy_DMA_Descriptor_GetDataSize(&descriptor);
  cy_en_dma_transfer_size_t srcTransferSize = Cy_DMA_Descriptor_GetSrcTransferSize(&descriptor);
  cy_en_dma_transfer_size_t dstTransferSize = Cy_DMA_Descriptor_GetDstTransferSize(&descriptor);
  cy_en_dma_descriptor_type_t descriptorType = Cy_DMA_Descriptor_GetDescriptorType(&descriptor);
  void * srcAddress = Cy_DMA_Descriptor_GetSrcAddress(&descriptor);
  void * dstAddress = Cy_DMA_Descriptor_GetDstAddress(&descriptor);
  int32_t srcXincrement = Cy_DMA_Descriptor_GetXloopSrcIncrement(&descriptor);
  int32_t dstXincrement = Cy_DMA_Descriptor_GetXloopDstIncrement(&descriptor);
  uint32_t xCount = Cy_DMA_Descriptor_GetXloopDataCount(&descriptor);
  int32_t srcYincrement = Cy_DMA_Descriptor_GetYloopSrcIncrement(&descriptor);
  int32_t dstYincrement = Cy_DMA_Descriptor_GetYloopDstIncrement(&descriptor);
  uint32_t yCount = Cy_DMA_Descriptor_GetYloopDataCount(&descriptor);
  cy_stc_dma_descriptor_t * nextDescriptor = Cy_DMA_Descriptor_GetNextDescriptor(&descriptor);

## ◆ Cy_DMA_Descriptor_GetRetrigger()

__STATIC_INLINE cy_en_dma_retrigger_t Cy_DMA_Descriptor_GetRetrigger | ( | cy_stc_dma_descriptor_t const * | descriptor | ) |

Returns a value that specifies whether the controller should wait for the input trigger to be deactivated.

Parameters

  descriptor | The descriptor structure instance declared by the user/component.

Returns
  The Retrigger setting cy_en_dma_retrigger_t.

Function Usage
  cy_stc_dma_descriptor_t descriptor = {0};
  /* Scenario: Get the value of individual descriptor parameters dynamically. The snippet shows them all. */
  /* This function assumes the 'descriptor' is initialized, see \ref Cy_DMA_Enable description */
  cy_en_dma_retrigger_t retrigger = Cy_DMA_Descriptor_GetRetrigger(&descriptor);
  cy_en_dma_trigger_type_t interruptType = Cy_DMA_Descriptor_GetInterruptType(&descriptor);
  cy_en_dma_trigger_type_t triggerOutType = Cy_DMA_Descriptor_GetTriggerOutType(&descriptor);
  cy_en_dma_channel_state_t channelState = Cy_DMA_Descriptor_GetChannelState(&descriptor);
  cy_en_dma_trigger_type_t triggerInType = Cy_DMA_Descriptor_GetTriggerInType(&descriptor);
  cy_en_dma_data_size_t dataSize = Cy_DMA_Descriptor_GetDataSize(&descriptor);
  cy_en_dma_transfer_size_t srcTransferSize = Cy_DMA_Descriptor_GetSrcTransferSize(&descriptor);
  cy_en_dma_transfer_size_t dstTransferSize = Cy_DMA_Descriptor_GetDstTransferSize(&descriptor);
  cy_en_dma_descriptor_type_t descriptorType = Cy_DMA_Descriptor_GetDescriptorType(&descriptor);
  void * srcAddress = Cy_DMA_Descriptor_GetSrcAddress(&descriptor);
  void * dstAddress = Cy_DMA_Descriptor_GetDstAddress(&descriptor);
  int32_t srcXincrement = Cy_DMA_Descriptor_GetXloopSrcIncrement(&descriptor);
  int32_t dstXincrement = Cy_DMA_Descriptor_GetXloopDstIncrement(&descriptor);
  uint32_t xCount = Cy_DMA_Descriptor_GetXloopDataCount(&descriptor);
  int32_t srcYincrement = Cy_DMA_Descriptor_GetYloopSrcIncrement(&descriptor);
  int32_t dstYincrement = Cy_DMA_Descriptor_GetYloopDstIncrement(&descriptor);
  uint32_t yCount = Cy_DMA_Descriptor_GetYloopDataCount(&descriptor);
  cy_stc_dma_descriptor_t * nextDescriptor = Cy_DMA_Descriptor_GetNextDescriptor(&descriptor);

## ◆ Cy_DMA_Descriptor_GetChannelState()

__STATIC_INLINE cy_en_dma_channel_state_t Cy_DMA_Descriptor_GetChannelState | ( | cy_stc_dma_descriptor_t const * | descriptor | ) |

Returns the channel state on completion of the specified descriptor.

Parameters

  descriptor | The descriptor structure instance declared by the user/component.

Returns
  The Channel State setting cy_en_dma_channel_state_t.

Function Usage
  cy_stc_dma_descriptor_t descriptor = {0};
  /* Scenario: Get the value of individual descriptor parameters dynamically. The snippet shows them all. */
  /* This function assumes the 'descriptor' is initialized, see \ref Cy_DMA_Enable description */
  cy_en_dma_retrigger_t retrigger = Cy_DMA_Descriptor_GetRetrigger(&descriptor);
  cy_en_dma_trigger_type_t interruptType = Cy_DMA_Descriptor_GetInterruptType(&descriptor);
  cy_en_dma_trigger_type_t triggerOutType = Cy_DMA_Descriptor_GetTriggerOutType(&descriptor);
  cy_en_dma_channel_state_t channelState = Cy_DMA_Descriptor_GetChannelState(&descriptor);
  cy_en_dma_trigger_type_t triggerInType = Cy_DMA_Descriptor_GetTriggerInType(&descriptor);
  cy_en_dma_data_size_t dataSize = Cy_DMA_Descriptor_GetDataSize(&descriptor);
  cy_en_dma_transfer_size_t srcTransferSize = Cy_DMA_Descriptor_GetSrcTransferSize(&descriptor);
  cy_en_dma_transfer_size_t dstTransferSize = Cy_DMA_Descriptor_GetDstTransferSize(&descriptor);
  cy_en_dma_descriptor_type_t descriptorType = Cy_DMA_Descriptor_GetDescriptorType(&descriptor);
  void * srcAddress = Cy_DMA_Descriptor_GetSrcAddress(&descriptor);
  void * dstAddress = Cy_DMA_Descriptor_GetDstAddress(&descriptor);
  int32_t srcXincrement = Cy_DMA_Descriptor_GetXloopSrcIncrement(&descriptor);
  int32_t dstXincrement = Cy_DMA_Descriptor_GetXloopDstIncrement(&descriptor);
  uint32_t xCount = Cy_DMA_Descriptor_GetXloopDataCount(&descriptor);
  int32_t srcYincrement = Cy_DMA_Descriptor_GetYloopSrcIncrement(&descriptor);
  int32_t dstYincrement = Cy_DMA_Descriptor_GetYloopDstIncrement(&descriptor);
  uint32_t yCount = Cy_DMA_Descriptor_GetYloopDataCount(&descriptor);
  cy_stc_dma_descriptor_t * nextDescriptor = Cy_DMA_Descriptor_GetNextDescriptor(&descriptor);