Functions
Configuration functions
Peripheral Driver » LL Driver » DMA » Functions

## Functions
__STATIC_INLINE void | ll_dma_enable (dma_regs_t *DMAx)
| Enable DMA Module. More...
__STATIC_INLINE void | ll_dma_disable (dma_regs_t *DMAx)
| Disable DMA Module. More...
__STATIC_INLINE uint32_t | ll_dma_is_enable (dma_regs_t *DMAx)
| Check if DMA Module is enabled or disabled. More...
__STATIC_INLINE void | ll_dma_enable_channel (dma_regs_t *DMAx, uint32_t channel)
| Enable DMA channel. More...
__STATIC_INLINE void | ll_dma_disable_channel (dma_regs_t *DMAx, uint32_t channel)
| Disable DMA channel. More...
__STATIC_INLINE uint32_t | ll_dma_is_enabled_channel (dma_regs_t *DMAx, uint32_t channel)
| Check if DMA channel is enabled or disabled. More...
__STATIC_INLINE void | ll_dma_suspend_channel (dma_regs_t *DMAx, uint32_t channel)
| Suspend a DMA channel transfer. More...
__STATIC_INLINE void | ll_dma_resume_channel (dma_regs_t *DMAx, uint32_t channel)
| Resume a DMA channel. More...
__STATIC_INLINE uint32_t | ll_dma_is_suspended (dma_regs_t *DMAx, uint32_t channel)
| Check if DMA channel is suspended or resumed. More...
__STATIC_INLINE uint32_t | ll_dma_is_empty_fifo (dma_regs_t *DMAx, uint32_t channel)
| Check if DMA channel FIFO is empty. More...
__STATIC_INLINE void | ll_dma_config_transfer (dma_regs_t *DMAx, uint32_t channel, uint32_t configuration)
| Configure all parameters link to DMA transfer. More...
__STATIC_INLINE void | ll_dma_set_data_transfer_direction (dma_regs_t *DMAx, uint32_t channel, uint32_t direction)
| Set Data transfer direction (read from peripheral or from memory). More...
__STATIC_INLINE uint32_t | ll_dma_get_data_transfer_direction (dma_regs_t *DMAx, uint32_t channel)
| Get Data transfer direction (read from peripheral or from memory). More...
__STATIC_INLINE void | ll_dma_set_source_increment_mode (dma_regs_t *DMAx, uint32_t channel, uint32_t src_increment_mode)
| Set Source increment mode. More...
__STATIC_INLINE uint32_t | ll_dma_get_source_increment_mode (dma_regs_t *DMAx, uint32_t channel)
| Get Source increment mode. More...
__STATIC_INLINE void | ll_dma_set_destination_increment_mode (dma_regs_t *DMAx, uint32_t channel, uint32_t dst_increment_mode)
| Set Destination increment mode. More...
__STATIC_INLINE uint32_t | ll_dma_get_destination_increment_mode (dma_regs_t *DMAx, uint32_t channel)
| Get Destination increment mode. More...
__STATIC_INLINE void | ll_dma_set_source_width (dma_regs_t *DMAx, uint32_t channel, uint32_t src_width)
| Set Source transfer width. More...
__STATIC_INLINE uint32_t | ll_dma_get_source_width (dma_regs_t *DMAx, uint32_t channel)
| Get Source transfer width. More...
__STATIC_INLINE void | ll_dma_set_destination_width (dma_regs_t *DMAx, uint32_t channel, uint32_t dst_width)
| Set Destination transfer width. More...
__STATIC_INLINE uint32_t | ll_dma_get_destination_width (dma_regs_t *DMAx, uint32_t channel)
| Get Destination transfer width. More...
__STATIC_INLINE void | ll_dma_set_source_burst_length (dma_regs_t *DMAx, uint32_t channel, uint32_t burst_length)
| Set Source Burst Transaction Length. More...
__STATIC_INLINE uint32_t | ll_dma_get_source_burst_length (dma_regs_t *DMAx, uint32_t channel)
| Get Burst Transaction Length. More...
__STATIC_INLINE void | ll_dma_set_destination_burst_length (dma_regs_t *DMAx, uint32_t channel, uint32_t burst_length)
| Set Destination Burst Transaction Length. More...
__STATIC_INLINE uint32_t | ll_dma_get_destination_burst_length (dma_regs_t *DMAx, uint32_t channel)
| Get Destination Burst Transaction Length. More...
__STATIC_INLINE void | ll_dma_set_channel_priority_level (dma_regs_t *DMAx, uint32_t channel, uint32_t priority)
| Set Channel priority level. More...
__STATIC_INLINE uint32_t | ll_dma_get_channel_priority_level (dma_regs_t *DMAx, uint32_t channel)
| Get Channel priority level. More...
__STATIC_INLINE void | ll_dma_set_block_size (dma_regs_t *DMAx, uint32_t channel, uint32_t block_size)
| Set the block size of a transfer. More...
__STATIC_INLINE uint32_t | ll_dma_get_block_size (dma_regs_t *DMAx, uint32_t channel)
| Get the block size of a transfer. More...
__STATIC_INLINE void | ll_dma_config_address (dma_regs_t *DMAx, uint32_t channel, uint32_t src_address, uint32_t dst_address, uint32_t direction)
| Configure the Source and Destination addresses. More...
__STATIC_INLINE void | ll_dma_set_source_address (dma_regs_t *DMAx, uint32_t channel, uint32_t address)
| Set the Source address. More...
__STATIC_INLINE void | ll_dma_set_destination_address (dma_regs_t *DMAx, uint32_t channel, uint32_t address)
| Set the Destination address. More...
__STATIC_INLINE uint32_t | ll_dma_get_source_address (dma_regs_t *DMAx, uint32_t channel)
| Get Source address. More...
__STATIC_INLINE uint32_t | ll_dma_get_destination_address (dma_regs_t *DMAx, uint32_t channel)
| Get Destination address. More...
__STATIC_INLINE void | ll_dma_set_m2m_src_address (dma_regs_t *DMAx, uint32_t channel, uint32_t address)
| Set the Memory to Memory Source address. More...
__STATIC_INLINE void | ll_dma_set_m2m_dst_address (dma_regs_t *DMAx, uint32_t channel, uint32_t address)
| Set the Memory to Memory Destination address. More...
__STATIC_INLINE uint32_t | ll_dma_get_m2m_src_address (dma_regs_t *DMAx, uint32_t channel)
| Get the Memory to Memory Source address. More...
__STATIC_INLINE uint32_t | ll_dma_get_m2m_dst_address (dma_regs_t *DMAx, uint32_t channel)
| Get the Memory to Memory Destination address. More...
__STATIC_INLINE void | ll_dma_set_source_peripheral (dma_regs_t *DMAx, uint32_t channel, uint32_t peripheral)
| Set source peripheral for DMA instance on Channel x. More...
__STATIC_INLINE uint32_t | ll_dma_get_source_peripheral (dma_regs_t *DMAx, uint32_t channel)
| Get source peripheral for DMA instance on Channel x. More...
__STATIC_INLINE void | ll_dma_set_destination_peripheral (dma_regs_t *DMAx, uint32_t channel, uint32_t peripheral)
| Set destination peripheral for DMA instance on Channel x. More...
__STATIC_INLINE uint32_t | ll_dma_get_destination_peripheral (dma_regs_t *DMAx, uint32_t channel)
| Get destination peripheral for DMA instance on Channel x. More...
__STATIC_INLINE void | ll_dma_select_handshaking (dma_regs_t *DMAx, uint32_t channel, uint32_t src_handshaking, uint32_t dst_handshaking)
| Set source and destination source handshaking interface. More...
__STATIC_INLINE void | ll_dma_set_max_amba_burst (dma_regs_t *DMAx, uint32_t channel, uint32_t beats)
| Set Maximum AMBA Burst Length. More...
__STATIC_INLINE uint32_t | ll_dma_get_max_amba_burst (dma_regs_t *DMAx, uint32_t channel)
| Get source status after each block tranfer completed. More...
__STATIC_INLINE void | ll_dma_enable_channel_lock (dma_regs_t *DMAx, uint32_t channel)
| Enable channel lock. More...
__STATIC_INLINE void | ll_dma_disable_channel_lock (dma_regs_t *DMAx, uint32_t channel)
| Disable channel lock. More...
__STATIC_INLINE uint32_t | ll_dma_is_enable_channel_lock (dma_regs_t *DMAx, uint32_t channel)
| CHeck if the channel lock enable. More...
__STATIC_INLINE void | ll_dma_enable_bus_lock (dma_regs_t *DMAx, uint32_t channel)
| Enable Bus lock. More...
__STATIC_INLINE void | ll_dma_disable_bus_lock (dma_regs_t *DMAx, uint32_t channel)
| Disable Bus lock. More...
__STATIC_INLINE uint32_t | ll_dma_is_enable_bus_lock (dma_regs_t *DMAx, uint32_t channel)
| CHeck if the Bus lock enable. More...
__STATIC_INLINE void | ll_dma_set_channel_lock_level (dma_regs_t *DMAx, uint32_t channel, uint32_t lock_level)
| Set channel lock level. More...
__STATIC_INLINE uint32_t | ll_dma_get_channel_lock_level (dma_regs_t *DMAx, uint32_t channel)
| Get channel lock level. More...
__STATIC_INLINE void | ll_dma_set_bus_lock_level (dma_regs_t *DMAx, uint32_t channel, uint32_t lock_level)
| Set bus lock level. More...
__STATIC_INLINE uint32_t | ll_dma_get_bus_lock_level (dma_regs_t *DMAx, uint32_t channel)
| Get bus lock level. More...
__STATIC_INLINE void | ll_dma_req_src_single_transaction (dma_regs_t *DMAx, uint32_t channel)
| Source Single Transaction Request. More...
__STATIC_INLINE void | ll_dma_req_src_burst_transaction (dma_regs_t *DMAx, uint32_t channel)
| Source Burst Transaction Request. More...
__STATIC_INLINE void | ll_dma_req_src_last_single_transaction (dma_regs_t *DMAx, uint32_t channel)
| Source Last Single Transaction Request. More...
__STATIC_INLINE void | ll_dma_req_src_last_burst_transaction (dma_regs_t *DMAx, uint32_t channel)
| Source Last Burst Transaction Request. More...
__STATIC_INLINE void | ll_dma_req_dst_single_transaction (dma_regs_t *DMAx, uint32_t channel)
| Destination Single Transaction Request. More...
__STATIC_INLINE void | ll_dma_req_dst_burst_transaction (dma_regs_t *DMAx, uint32_t channel)
| Destination Burst Transaction Request. More...
__STATIC_INLINE void | ll_dma_req_dst_last_single_transaction (dma_regs_t *DMAx, uint32_t channel)
| Destination Last Single Transaction Request. More...
__STATIC_INLINE void | ll_dma_req_dst_last_burst_transaction (dma_regs_t *DMAx, uint32_t channel)
| Destination Last Burst Transaction Request. More...

## Detailed Description

## Function Documentation

## ◆ ll_dma_config_address()

__STATIC_INLINE void ll_dma_config_address | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel,
|  | uint32_t | src_address,
|  | uint32_t | dst_address,
|  | uint32_t | direction
| ) |  |

Configure the Source and Destination addresses.

Note
  Each IP using DMA provides an API to get directly the register adress (LL_PPP_DMA_GetRegAddr)

Register|BitsName --------|-------- SAR | SAR DAR | DAR CTL_LO | TT_FC

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4
  src_address | Between Min_Data = 0 and Max_Data = 0xFFFFFFFF
  dst_address | Between Min_Data = 0 and Max_Data = 0xFFFFFFFF
  direction | This parameter can be one of the following values: LL_DMA_DIRECTION_MEMORY_TO_MEMORY LL_DMA_DIRECTION_MEMORY_TO_PERIPH LL_DMA_DIRECTION_PERIPH_TO_MEMORY LL_DMA_DIRECTION_PERIPH_TO_PERIPH

Return values

  None |

Definition at line 1062 of file ll_dma.h.

## ◆ ll_dma_config_transfer()

__STATIC_INLINE void ll_dma_config_transfer | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel,
|  | uint32_t | configuration
| ) |  |

Configure all parameters link to DMA transfer.

Register|BitsName --------|-------- CCR | DIR CCR | MEM2MEM CCR | CIRC CCR | PINC CCR | MINC CCR | PSIZE CCR | MSIZE CCR | PL

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4
  configuration | This parameter must be a combination of all the following values: LL_DMA_SRC_INCREMENT or LL_DMA_SRC_DECREMENT or LL_DMA_SRC_NO_CHANGE LL_DMA_DST_INCREMENT or LL_DMA_DST_DECREMENT or LL_DMA_DST_NO_CHANGE LL_DMA_SDATAALIGN_BYTE or LL_DMA_SDATAALIGN_HALFWORD or LL_DMA_SDATAALIGN_WORD LL_DMA_DDATAALIGN_BYTE or LL_DMA_DDATAALIGN_HALFWORD or LL_DMA_DDATAALIGN_WORD LL_DMA_SRC_BURST_LENGTH_1 or LL_DMA_SRC_BURST_LENGTH_4 or LL_DMA_SRC_BURST_LENGTH_8 LL_DMA_DST_BURST_LENGTH_1 or LL_DMA_DST_BURST_LENGTH_4 or LL_DMA_DST_BURST_LENGTH_8

Return values

  None |

Definition at line 586 of file ll_dma.h.

## ◆ ll_dma_disable()

__STATIC_INLINE void ll_dma_disable | ( | dma_regs_t * | DMAx | ) |

Disable DMA Module.

Note
  If the ll_dma_disable() function is called while any dma channel is still active, the ll_dma_is_enable() function still return 1 to indicate that there are channels still active until hardware has terminated all cativity on all channels, at which point the ll_dma_is_enable() function returns 0.

Register|BitsName --------|-------- CFG_REG | CFG_EN

Parameters

  DMAx | DMA instance.

Return values

  None |

Definition at line 382 of file ll_dma.h.

## ◆ ll_dma_disable_bus_lock()

__STATIC_INLINE void ll_dma_disable_bus_lock | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Disable Bus lock.

Register|BitsName --------|-------- CFG_LO | LOCK_B

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  None |

Definition at line 1573 of file ll_dma.h.

## ◆ ll_dma_disable_channel()

__STATIC_INLINE void ll_dma_disable_channel | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Disable DMA channel.

Register|BitsName --------|-------- CH_EN_REG | CH_EN_WE&CH_EN

Parameters

  DMAx | DMA instance.
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  None |

Definition at line 441 of file ll_dma.h.

## ◆ ll_dma_disable_channel_lock()

__STATIC_INLINE void ll_dma_disable_channel_lock | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Disable channel lock.

Register|BitsName --------|-------- CFG_LO | LOCK_CH

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  None |

Definition at line 1510 of file ll_dma.h.

## ◆ ll_dma_enable()

__STATIC_INLINE void ll_dma_enable | ( | dma_regs_t * | DMAx | ) |

Enable DMA Module.

Note
  This function is used to enable the DMA Module, which must be done before any channel activity can begin.

Register|BitsName --------|-------- CFG_REG | CFG_EN

Parameters

  DMAx | DMA instance.

Return values

  None |

Definition at line 363 of file ll_dma.h.

## ◆ ll_dma_enable_bus_lock()

__STATIC_INLINE void ll_dma_enable_bus_lock | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Enable Bus lock.

Register|BitsName --------|-------- CFG_LO | LOCK_B

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  None |

Definition at line 1552 of file ll_dma.h.

## ◆ ll_dma_enable_channel()

__STATIC_INLINE void ll_dma_enable_channel | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Enable DMA channel.

Note
  When the DMA Module is disabled, then call this function to DMA_CFG_REG register is ignored and call ll_dma_disable_channel() function will always returns 0.

Register|BitsName --------|-------- CH_EN_REG | CH_EN_WE&CH_EN

Parameters

  DMAx | DMA instance.
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  None |

Definition at line 420 of file ll_dma.h.

## ◆ ll_dma_enable_channel_lock()

__STATIC_INLINE void ll_dma_enable_channel_lock | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Enable channel lock.

Register|BitsName --------|-------- CFG_LO | LOCK_CH

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  None |

Definition at line 1489 of file ll_dma.h.

## ◆ ll_dma_get_block_size()

__STATIC_INLINE uint32_t ll_dma_get_block_size | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Get the block size of a transfer.

Note
  Once the channel is enabled, the return value indicate the remaining bytes to be transmitted.

Register|BitsName --------|-------- CTL_HI | BLOCK_TS

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  Between | Min_Data = 0 and Max_Data = 0xFFF

Definition at line 1031 of file ll_dma.h.

## ◆ ll_dma_get_bus_lock_level()

__STATIC_INLINE uint32_t ll_dma_get_bus_lock_level | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Get bus lock level.

Register|BitsName --------|-------- CFG_LO | LOCK_B

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  Returned | value can be one of the following values: LL_DMA_LOCK_BUS_LEVEL_TFR LL_DMA_LOCK_BUS_LEVEL_BLK LL_DMA_LOCK_BUS_LEVEL_TRANS

Definition at line 1692 of file ll_dma.h.

## ◆ ll_dma_get_channel_lock_level()

__STATIC_INLINE uint32_t ll_dma_get_channel_lock_level | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Get channel lock level.

Register|BitsName --------|-------- CFG_LO | LOCK_CH

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  Returned | value can be one of the following values: LL_DMA_LOCK_CH_LEVEL_TFR LL_DMA_LOCK_CH_LEVEL_BLK LL_DMA_LOCK_CH_LEVEL_TRANS

Definition at line 1643 of file ll_dma.h.

## ◆ ll_dma_get_channel_priority_level()

__STATIC_INLINE uint32_t ll_dma_get_channel_priority_level | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Get Channel priority level.

Register|BitsName --------|-------- CFG_LO | CH_PRIOR

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  Returned | value can be one of the following values: LL_DMA_PRIORITY_0 LL_DMA_PRIORITY_1 LL_DMA_PRIORITY_2 LL_DMA_PRIORITY_3 LL_DMA_PRIORITY_4

Definition at line 985 of file ll_dma.h.

## ◆ ll_dma_get_data_transfer_direction()

__STATIC_INLINE uint32_t ll_dma_get_data_transfer_direction | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Get Data transfer direction (read from peripheral or from memory).

Register|BitsName --------|-------- CTL_LO | TT_FC

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  Returned | value can be one of the following values: LL_DMA_DIRECTION_MEMORY_TO_MEMORY LL_DMA_DIRECTION_MEMORY_TO_PERIPH LL_DMA_DIRECTION_PERIPH_TO_MEMORY LL_DMA_DIRECTION_PERIPH_TO_PERIPH

Definition at line 638 of file ll_dma.h.

## ◆ ll_dma_get_destination_address()

__STATIC_INLINE uint32_t ll_dma_get_destination_address | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Get Destination address.

Register|BitsName --------|-------- DAR | DAR

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  Between | Min_Data = 0 and Max_Data = 0xFFFFFFFF

Definition at line 1154 of file ll_dma.h.

## ◆ ll_dma_get_destination_burst_length()

__STATIC_INLINE uint32_t ll_dma_get_destination_burst_length | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Get Destination Burst Transaction Length.

Register|BitsName --------|-------- CTL_LO | DST_MSIZE

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  Returned | value can be one of the following values: LL_DMA_DST_BURST_LENGTH_1 LL_DMA_DST_BURST_LENGTH_4 LL_DMA_DST_BURST_LENGTH_8

Definition at line 932 of file ll_dma.h.

## ◆ ll_dma_get_destination_increment_mode()

__STATIC_INLINE uint32_t ll_dma_get_destination_increment_mode | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Get Destination increment mode.

Register|BitsName --------|-------- CTL_LO | DINC

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  Returned | value can be one of the following values: LL_DMA_DST_INCREMENT LL_DMA_DST_DECREMENT LL_DMA_DST_NO_CHANGE

Definition at line 736 of file ll_dma.h.

## ◆ ll_dma_get_destination_peripheral()

__STATIC_INLINE uint32_t ll_dma_get_destination_peripheral | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Get destination peripheral for DMA instance on Channel x.

Register|BitsName --------|-------- CFG_HI | DST_PER

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  Returned | value can be one of the following values: LL_DMA0_PERIPH_CTE LL_DMA0_PERIPH_PWM0 LL_DMA0_PERIPH_SPIM_TX LL_DMA0_PERIPH_SPIM_RX LL_DMA0_PERIPH_SPIS_TX LL_DMA0_PERIPH_SPIS_RX LL_DMA0_PERIPH_UART0_TX LL_DMA0_PERIPH_UART0_RX LL_DMA0_PERIPH_UART1_TX LL_DMA0_PERIPH_UART1_RX LL_DMA0_PERIPH_SNSADC LL_DMA0_PERIPH_I2C0_TX LL_DMA0_PERIPH_I2C0_RX LL_DMA0_PERIPH_I2C1_TX LL_DMA0_PERIPH_I2C1_RX

Definition at line 1394 of file ll_dma.h.

## ◆ ll_dma_get_destination_width()

__STATIC_INLINE uint32_t ll_dma_get_destination_width | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Get Destination transfer width.

Register|BitsName --------|-------- CTL_LO | DST_TR_WIDTH

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  Returned | value can be one of the following values: LL_DMA_DDATAALIGN_BYTE LL_DMA_DDATAALIGN_HALFWORD LL_DMA_DDATAALIGN_WORD

Definition at line 834 of file ll_dma.h.

## ◆ ll_dma_get_m2m_dst_address()

__STATIC_INLINE uint32_t ll_dma_get_m2m_dst_address | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Get the Memory to Memory Destination address.

Note
  Interface used for direction LL_DMA_DIRECTION_MEMORY_TO_MEMORY only.

Register|BitsName --------|-------- DAR | DAR

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  Between | Min_Data = 0 and Max_Data = 0xFFFFFFFF

Definition at line 1247 of file ll_dma.h.

## ◆ ll_dma_get_m2m_src_address()

__STATIC_INLINE uint32_t ll_dma_get_m2m_src_address | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Get the Memory to Memory Source address.

Note
  Interface used for direction LL_DMA_DIRECTION_MEMORY_TO_MEMORY only.

Register|BitsName --------|-------- SAR | SAR

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  Between | Min_Data = 0 and Max_Data = 0xFFFFFFFF

Definition at line 1225 of file ll_dma.h.

## ◆ ll_dma_get_max_amba_burst()

__STATIC_INLINE uint32_t ll_dma_get_max_amba_burst | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Get source status after each block tranfer completed.

Register|BitsName --------|-------- SSTAT | SSTAT

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  Returned | value can be one of the following values: Between Min_Data = 0 and Max_Data = 0xFFFFFFFF.
  None |

Definition at line 1468 of file ll_dma.h.

## ◆ ll_dma_get_source_address()

__STATIC_INLINE uint32_t ll_dma_get_source_address | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Get Source address.

Register|BitsName --------|-------- SAR | SAR

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  Between | Min_Data = 0 and Max_Data = 0xFFFFFFFF

Definition at line 1133 of file ll_dma.h.

## ◆ ll_dma_get_source_burst_length()

__STATIC_INLINE uint32_t ll_dma_get_source_burst_length | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Get Burst Transaction Length.

Register|BitsName --------|-------- CTL_LO | SRC_MSIZE

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  Returned | value can be one of the following values: LL_DMA_SRC_BURST_LENGTH_1 LL_DMA_SRC_BURST_LENGTH_4 LL_DMA_SRC_BURST_LENGTH_8

Definition at line 883 of file ll_dma.h.

## ◆ ll_dma_get_source_increment_mode()

__STATIC_INLINE uint32_t ll_dma_get_source_increment_mode | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Get Source increment mode.

Register|BitsName --------|-------- CTL_LO | SINC

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  Returned | value can be one of the following values: LL_DMA_SRC_INCREMENT LL_DMA_SRC_DECREMENT LL_DMA_SRC_NO_CHANGE

Definition at line 687 of file ll_dma.h.

## ◆ ll_dma_get_source_peripheral()

__STATIC_INLINE uint32_t ll_dma_get_source_peripheral | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Get source peripheral for DMA instance on Channel x.

Register|BitsName --------|-------- CFG_HI | SRC_PER

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  Returned | value can be one of the following values: LL_DMA0_PERIPH_CTE LL_DMA0_PERIPH_PWM0 LL_DMA0_PERIPH_SPIM_TX LL_DMA0_PERIPH_SPIM_RX LL_DMA0_PERIPH_SPIS_TX LL_DMA0_PERIPH_SPIS_RX LL_DMA0_PERIPH_UART0_TX LL_DMA0_PERIPH_UART0_RX LL_DMA0_PERIPH_UART1_TX LL_DMA0_PERIPH_UART1_RX LL_DMA0_PERIPH_SNSADC LL_DMA0_PERIPH_I2C0_TX LL_DMA0_PERIPH_I2C0_RX LL_DMA0_PERIPH_I2C1_TX LL_DMA0_PERIPH_I2C1_RX

Definition at line 1321 of file ll_dma.h.

## ◆ ll_dma_get_source_width()

__STATIC_INLINE uint32_t ll_dma_get_source_width | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Get Source transfer width.

Register|BitsName --------|-------- CTL_LO | SRC_TR_WIDTH

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  Returned | value can be one of the following values: LL_DMA_SDATAALIGN_BYTE LL_DMA_SDATAALIGN_HALFWORD LL_DMA_SDATAALIGN_WORD

Definition at line 785 of file ll_dma.h.

## ◆ ll_dma_is_empty_fifo()

__STATIC_INLINE uint32_t ll_dma_is_empty_fifo | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Check if DMA channel FIFO is empty.

Register|BitsName --------|-------- CFGL | FIFO_EMPTY

Parameters

  DMAx | DMA instance.
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  State | of bit (1 or 0).

Definition at line 551 of file ll_dma.h.

## ◆ ll_dma_is_enable()

__STATIC_INLINE uint32_t ll_dma_is_enable | ( | dma_regs_t * | DMAx | ) |

Check if DMA Module is enabled or disabled.

Register|BitsName --------|-------- CFG_REG | CFG_EN

Parameters

  DMAx | DMA instance.

Return values

  State | of bit (1 or 0).

Definition at line 397 of file ll_dma.h.

## ◆ ll_dma_is_enable_bus_lock()

__STATIC_INLINE uint32_t ll_dma_is_enable_bus_lock | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

CHeck if the Bus lock enable.

Register|BitsName --------|-------- CFG_LO | LOCK_B

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  None |

Definition at line 1594 of file ll_dma.h.

## ◆ ll_dma_is_enable_channel_lock()

__STATIC_INLINE uint32_t ll_dma_is_enable_channel_lock | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

CHeck if the channel lock enable.

Register|BitsName --------|-------- CFG_LO | LOCK_CH

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  None |

Definition at line 1531 of file ll_dma.h.

## ◆ ll_dma_is_enabled_channel()

__STATIC_INLINE uint32_t ll_dma_is_enabled_channel | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Check if DMA channel is enabled or disabled.

Note
  Software can therefore poll this function to determine when channel is free for a new DMA transfer.

Register|BitsName --------|-------- CH_EN_REG | CH_EN_WE&CH_EN

Parameters

  DMAx | DMA instance.
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  State | of bit (1 or 0).

Definition at line 464 of file ll_dma.h.

## ◆ ll_dma_is_suspended()

__STATIC_INLINE uint32_t ll_dma_is_suspended | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Check if DMA channel is suspended or resumed.

Register|BitsName --------|-------- CFGL | CH_SUSP

Parameters

  DMAx | DMA instance.
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  State | of bit (1 or 0).

Definition at line 530 of file ll_dma.h.

## ◆ ll_dma_req_dst_burst_transaction()

__STATIC_INLINE void ll_dma_req_dst_burst_transaction | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Destination Burst Transaction Request.

Register|BitsName --------|-------- REQ_DST | DST_WE&DST

Parameters

  DMAx | DMA instance.
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  None |

Definition at line 1828 of file ll_dma.h.

## ◆ ll_dma_req_dst_last_burst_transaction()

__STATIC_INLINE void ll_dma_req_dst_last_burst_transaction | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Destination Last Burst Transaction Request.

Register|BitsName --------|-------- LST_DST | LST_DST_WE&LST_DST REQ_DST | DST_WE&DST

Parameters

  DMAx | DMA instance.
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  None |

Definition at line 1875 of file ll_dma.h.

## ◆ ll_dma_req_dst_last_single_transaction()

__STATIC_INLINE void ll_dma_req_dst_last_single_transaction | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Destination Last Single Transaction Request.

Register|BitsName --------|-------- SGL_REQ_DST | REQ_DST_WE&REQ_DST LST_DST | LST_DST_WE&LST_DST REQ_DST | DST_WE&DST

Parameters

  DMAx | DMA instance.
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  None |

Definition at line 1851 of file ll_dma.h.

## ◆ ll_dma_req_dst_single_transaction()

__STATIC_INLINE void ll_dma_req_dst_single_transaction | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Destination Single Transaction Request.

Register|BitsName --------|-------- SGL_REQ_DST | REQ_DST_WE&REQ_DST REQ_DST | DST_WE&DST

Parameters

  DMAx | DMA instance.
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  None |

Definition at line 1806 of file ll_dma.h.

## ◆ ll_dma_req_src_burst_transaction()

__STATIC_INLINE void ll_dma_req_src_burst_transaction | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Source Burst Transaction Request.

Register|BitsName --------|-------- REQ_SRC | SRC_WE&SRC

Parameters

  DMAx | DMA instance.
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  None |

Definition at line 1736 of file ll_dma.h.

## ◆ ll_dma_req_src_last_burst_transaction()

__STATIC_INLINE void ll_dma_req_src_last_burst_transaction | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Source Last Burst Transaction Request.

Register|BitsName --------|-------- LST_SRC | LST_SRC_WE&LST_SRC REQ_SRC | SRC_WE&SRC

Parameters

  DMAx | DMA instance.
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  None |

Definition at line 1783 of file ll_dma.h.

## ◆ ll_dma_req_src_last_single_transaction()

__STATIC_INLINE void ll_dma_req_src_last_single_transaction | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Source Last Single Transaction Request.

Register|BitsName --------|-------- SGL_REQ_SRC | REQ_SRC_WE&REQ_SRC LST_SRC | LST_SRC_WE&LST_SRC REQ_SRC | SRC_WE&SRC

Parameters

  DMAx | DMA instance.
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  None |

Definition at line 1759 of file ll_dma.h.

## ◆ ll_dma_req_src_single_transaction()

__STATIC_INLINE void ll_dma_req_src_single_transaction | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Source Single Transaction Request.

Register|BitsName --------|-------- SGL_REQ_SRC | REQ_SRC_WE&REQ_SRC REQ_SRC | SRC_WE&SRC

Parameters

  DMAx | DMA instance.
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  None |

Definition at line 1714 of file ll_dma.h.

## ◆ ll_dma_resume_channel()

__STATIC_INLINE void ll_dma_resume_channel | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Resume a DMA channel.

Note
  The function may be called after enabling the DMA channel.

Register|BitsName --------|-------- CFGL | CH_SUSP

Parameters

  DMAx | DMA instance.
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  None |

Definition at line 509 of file ll_dma.h.

## ◆ ll_dma_select_handshaking()

__STATIC_INLINE void ll_dma_select_handshaking | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel,
|  | uint32_t | src_handshaking,
|  | uint32_t | dst_handshaking
| ) |  |

Set source and destination source handshaking interface.

Register|BitsName --------|-------- CFG_HI | DST_PER

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4
  src_handshaking | This parameter can be one of the following values: LL_DMA_SHANDSHAKING_HW LL_DMA_SHANDSHAKING_HW
  dst_handshaking | This parameter can be one of the following values: LL_DMA_DHANDSHAKING_HW LL_DMA_DHANDSHAKING_HW

Return values

  None |

Definition at line 1421 of file ll_dma.h.

## ◆ ll_dma_set_block_size()

__STATIC_INLINE void ll_dma_set_block_size | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel,
|  | uint32_t | block_size
| ) |  |

Set the block size of a transfer.

Note
  This action has no effect if channel is enabled.

Register|BitsName --------|-------- CTL_HI | BLOCK_TS

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4
  block_size | Between Min_Data = 0 and Max_Data = 0xFFF

Return values

  None |

Definition at line 1008 of file ll_dma.h.

## ◆ ll_dma_set_bus_lock_level()

__STATIC_INLINE void ll_dma_set_bus_lock_level | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel,
|  | uint32_t | lock_level
| ) |  |

Set bus lock level.

Register|BitsName --------|-------- CFG_LO | LOCK_B

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4
  lock_level | This parameter can be one of the following values: LL_DMA_LOCK_BUS_LEVEL_TFR LL_DMA_LOCK_BUS_LEVEL_BLK LL_DMA_LOCK_BUS_LEVEL_TRANS

Return values

  None |

Definition at line 1668 of file ll_dma.h.

## ◆ ll_dma_set_channel_lock_level()

__STATIC_INLINE void ll_dma_set_channel_lock_level | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel,
|  | uint32_t | lock_level
| ) |  |

Set channel lock level.

Register|BitsName --------|-------- CFG_LO | LOCK_CH

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4
  lock_level | This parameter can be one of the following values: LL_DMA_LOCK_CH_LEVEL_TFR LL_DMA_LOCK_CH_LEVEL_BLK LL_DMA_LOCK_CH_LEVEL_TRANS

Return values

  None |

Definition at line 1619 of file ll_dma.h.

## ◆ ll_dma_set_channel_priority_level()

__STATIC_INLINE void ll_dma_set_channel_priority_level | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel,
|  | uint32_t | priority
| ) |  |

Set Channel priority level.

Register|BitsName --------|-------- CFG_LO | CH_PRIOR

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4
  priority | This parameter can be one of the following values: LL_DMA_PRIORITY_0 LL_DMA_PRIORITY_1 LL_DMA_PRIORITY_2 LL_DMA_PRIORITY_3 LL_DMA_PRIORITY_4

Return values

  None |

Definition at line 959 of file ll_dma.h.

## ◆ ll_dma_set_data_transfer_direction()

__STATIC_INLINE void ll_dma_set_data_transfer_direction | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel,
|  | uint32_t | direction
| ) |  |

Set Data transfer direction (read from peripheral or from memory).

Register|BitsName --------|-------- CTL_LO | TT_FC

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4
  direction | This parameter can be one of the following values: LL_DMA_DIRECTION_MEMORY_TO_MEMORY LL_DMA_DIRECTION_MEMORY_TO_PERIPH LL_DMA_DIRECTION_PERIPH_TO_MEMORY LL_DMA_DIRECTION_PERIPH_TO_PERIPH

Return values

  None |

Definition at line 613 of file ll_dma.h.

## ◆ ll_dma_set_destination_address()

__STATIC_INLINE void ll_dma_set_destination_address | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel,
|  | uint32_t | address
| ) |  |

Set the Destination address.

Register|BitsName --------|-------- DAR | DAR

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4
  address | Between Min_Data = 0 and Max_Data = 0xFFFFFFFF

Return values

  None |

Definition at line 1112 of file ll_dma.h.

## ◆ ll_dma_set_destination_burst_length()

__STATIC_INLINE void ll_dma_set_destination_burst_length | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel,
|  | uint32_t | burst_length
| ) |  |

Set Destination Burst Transaction Length.

Register|BitsName --------|-------- CTL_LO | DST_MSIZE

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4
  burst_length | This parameter can be one of the following values: LL_DMA_DST_BURST_LENGTH_1 LL_DMA_DST_BURST_LENGTH_4 LL_DMA_DST_BURST_LENGTH_8

Return values

  None |

Definition at line 908 of file ll_dma.h.

## ◆ ll_dma_set_destination_increment_mode()

__STATIC_INLINE void ll_dma_set_destination_increment_mode | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel,
|  | uint32_t | dst_increment_mode
| ) |  |

Set Destination increment mode.

Register|BitsName --------|-------- CTL_LO | DINC

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4
  dst_increment_mode | This parameter can be one of the following values: LL_DMA_DST_INCREMENT LL_DMA_DST_DECREMENT LL_DMA_DST_NO_CHANGE

Return values

  None |

Definition at line 712 of file ll_dma.h.

## ◆ ll_dma_set_destination_peripheral()

__STATIC_INLINE void ll_dma_set_destination_peripheral | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel,
|  | uint32_t | peripheral
| ) |  |

Set destination peripheral for DMA instance on Channel x.

Register|BitsName --------|-------- CFG_HI | DST_PER

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4
  peripheral | This parameter can be one of the following values: LL_DMA0_PERIPH_CTE LL_DMA0_PERIPH_PWM0 LL_DMA0_PERIPH_SPIM_TX LL_DMA0_PERIPH_SPIM_RX LL_DMA0_PERIPH_SPIS_TX LL_DMA0_PERIPH_SPIS_RX LL_DMA0_PERIPH_UART0_TX LL_DMA0_PERIPH_UART0_RX LL_DMA0_PERIPH_UART1_TX LL_DMA0_PERIPH_UART1_RX LL_DMA0_PERIPH_SNSADC LL_DMA0_PERIPH_I2C0_TX LL_DMA0_PERIPH_I2C0_RX LL_DMA0_PERIPH_I2C1_TX LL_DMA0_PERIPH_I2C1_RX

Return values

  None |

Definition at line 1358 of file ll_dma.h.

## ◆ ll_dma_set_destination_width()

__STATIC_INLINE void ll_dma_set_destination_width | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel,
|  | uint32_t | dst_width
| ) |  |

Set Destination transfer width.

Register|BitsName --------|-------- CTL_LO | DST_TR_WIDTH

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4
  dst_width | This parameter can be one of the following values: LL_DMA_DDATAALIGN_BYTE LL_DMA_DDATAALIGN_HALFWORD LL_DMA_DDATAALIGN_WORD

Return values

  None |

Definition at line 810 of file ll_dma.h.

## ◆ ll_dma_set_m2m_dst_address()

__STATIC_INLINE void ll_dma_set_m2m_dst_address | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel,
|  | uint32_t | address
| ) |  |

Set the Memory to Memory Destination address.

Note
  Interface used for direction LL_DMA_DIRECTION_MEMORY_TO_MEMORY only.

Register|BitsName --------|-------- DAR | DAR CTL_LO | TT_FC

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4
  address | Between Min_Data = 0 and Max_Data = 0xFFFFFFFF

Return values

  None |

Definition at line 1202 of file ll_dma.h.

## ◆ ll_dma_set_m2m_src_address()

__STATIC_INLINE void ll_dma_set_m2m_src_address | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel,
|  | uint32_t | address
| ) |  |

Set the Memory to Memory Source address.

Note
  Interface used for direction LL_DMA_DIRECTION_MEMORY_TO_MEMORY only.

Register|BitsName --------|-------- SAR | SAR CTL_LO | TT_FC

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4
  address | Between Min_Data = 0 and Max_Data = 0xFFFFFFFF

Return values

  None |

Definition at line 1177 of file ll_dma.h.

## ◆ ll_dma_set_max_amba_burst()

__STATIC_INLINE void ll_dma_set_max_amba_burst | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel,
|  | uint32_t | beats
| ) |  |

Set Maximum AMBA Burst Length.

Register|BitsName --------|-------- CFG_LO | MAX_ABRST

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4
  beats | This parameter can be one of the following values: Between Min_Data = 0 and Max_Data = 0x3FFU.

Return values

  None |

Definition at line 1445 of file ll_dma.h.

## ◆ ll_dma_set_source_address()

__STATIC_INLINE void ll_dma_set_source_address | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel,
|  | uint32_t | address
| ) |  |

Set the Source address.

Register|BitsName --------|-------- SAR | SAR

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4
  address | Between Min_Data = 0 and Max_Data = 0xFFFFFFFF

Return values

  None |

Definition at line 1090 of file ll_dma.h.

## ◆ ll_dma_set_source_burst_length()

__STATIC_INLINE void ll_dma_set_source_burst_length | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel,
|  | uint32_t | burst_length
| ) |  |

Set Source Burst Transaction Length.

Register|BitsName --------|-------- CTL_LO | SRC_MSIZE

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4
  burst_length | This parameter can be one of the following values: LL_DMA_SRC_BURST_LENGTH_1 LL_DMA_SRC_BURST_LENGTH_4 LL_DMA_SRC_BURST_LENGTH_8

Return values

  None |

Definition at line 859 of file ll_dma.h.

## ◆ ll_dma_set_source_increment_mode()

__STATIC_INLINE void ll_dma_set_source_increment_mode | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel,
|  | uint32_t | src_increment_mode
| ) |  |

Set Source increment mode.

Register|BitsName --------|-------- CTL_LO | SINC

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4
  src_increment_mode | This parameter can be one of the following values: LL_DMA_SRC_INCREMENT LL_DMA_SRC_DECREMENT LL_DMA_SRC_NO_CHANGE

Return values

  None |

Definition at line 663 of file ll_dma.h.

## ◆ ll_dma_set_source_peripheral()

__STATIC_INLINE void ll_dma_set_source_peripheral | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel,
|  | uint32_t | peripheral
| ) |  |

Set source peripheral for DMA instance on Channel x.

Register|BitsName --------|-------- CFG_HI | SRC_PER

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4
  peripheral | This parameter can be one of the following values: LL_DMA0_PERIPH_CTE LL_DMA0_PERIPH_PWM0 LL_DMA0_PERIPH_SPIM_TX LL_DMA0_PERIPH_SPIM_RX LL_DMA0_PERIPH_SPIS_TX LL_DMA0_PERIPH_SPIS_RX LL_DMA0_PERIPH_UART0_TX LL_DMA0_PERIPH_UART0_RX LL_DMA0_PERIPH_UART1_TX LL_DMA0_PERIPH_UART1_RX LL_DMA0_PERIPH_SNSADC LL_DMA0_PERIPH_I2C0_TX LL_DMA0_PERIPH_I2C0_RX LL_DMA0_PERIPH_I2C1_TX LL_DMA0_PERIPH_I2C1_RX

Return values

  None |

Definition at line 1285 of file ll_dma.h.

## ◆ ll_dma_set_source_width()

__STATIC_INLINE void ll_dma_set_source_width | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel,
|  | uint32_t | src_width
| ) |  |

Set Source transfer width.

Register|BitsName --------|-------- CTL_LO | SRC_TR_WIDTH

Parameters

  DMAx | DMAx instance
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4
  src_width | This parameter can be one of the following values: LL_DMA_SDATAALIGN_BYTE LL_DMA_SDATAALIGN_HALFWORD LL_DMA_SDATAALIGN_WORD

Return values

  None |

Definition at line 761 of file ll_dma.h.

## ◆ ll_dma_suspend_channel()

__STATIC_INLINE void ll_dma_suspend_channel | ( | dma_regs_t * | DMAx,
|  | uint32_t | channel
| ) |  |

Suspend a DMA channel transfer.

Note
  Suspends all DMA data transfers from the source until the ll_dma_resume_channel() function is called. The function may be called after enabling the DMA channel.

Register|BitsName --------|-------- CFGL | CH_SUSP

Parameters

  DMAx | DMA instance.
  channel | This parameter can be one of the following values: LL_DMA_CHANNEL_0 LL_DMA_CHANNEL_1 LL_DMA_CHANNEL_2 LL_DMA_CHANNEL_3 LL_DMA_CHANNEL_4

Return values

  None |

Definition at line 487 of file ll_dma.h.