|
VSF Documented
|
#include "hal/driver/driver.h"Macros | |
| #define | VSF_DMA_CFG_FUNCTION_RENAME DISABLED |
Functions | |
| vsf_err_t | vsf_dma_init (vsf_dma_t *dma_ptr, vsf_dma_cfg_t *cfg_ptr) |
| Initialize a DMA instance. | |
| void | vsf_dma_fini (vsf_dma_t *dma_ptr) |
| Finalize a DMA instance. | |
| vsf_err_t | vsf_dma_get_configuration (vsf_dma_t *dma_ptr, vsf_dma_cfg_t *cfg_ptr) |
| Get the current configuration of DMA instance. | |
| vsf_dma_capability_t | vsf_dma_capability (vsf_dma_t *dma_ptr) |
| Get the capabilities of DMA instance. | |
| vsf_err_t | vsf_dma_channel_acquire (vsf_dma_t *dma_ptr, vsf_dma_channel_hint_t *channel_hint_ptr) |
| DMA acquire a new channel. | |
| void | vsf_dma_channel_release (vsf_dma_t *dma_ptr, uint8_t channel) |
| Release a DMA channel. | |
| vsf_err_t | vsf_dma_channel_config (vsf_dma_t *dma_ptr, uint8_t channel, vsf_dma_channel_cfg_t *cfg_ptr) |
| Configure a DMA channel. | |
| vsf_err_t | vsf_dma_channel_get_configuration (vsf_dma_t *dma_ptr, uint8_t channel, vsf_dma_channel_cfg_t *cfg_ptr) |
| Get the current configuration of a DMA channel. | |
| vsf_err_t | vsf_dma_channel_start (vsf_dma_t *dma_ptr, uint8_t channel, vsf_dma_addr_t src_address, vsf_dma_addr_t dst_address, uint32_t count) |
| Start a DMA channel transfer. | |
| vsf_err_t | vsf_dma_channel_sg_config_desc (vsf_dma_t *dma_ptr, uint8_t channel, vsf_dma_isr_t isr, vsf_dma_channel_sg_desc_t *sg_desc_ptr, uint32_t sg_count) |
| Configure a DMA channel for scatter-gather transfer. | |
| vsf_err_t | vsf_dma_channel_sg_start (vsf_dma_t *dma_ptr, uint8_t channel) |
| Start a DMA scatter-gather transfer. | |
| vsf_err_t | vsf_dma_channel_cancel (vsf_dma_t *dma_ptr, uint8_t channel) |
| Cancel the transmission of a specific DMA channel. | |
| uint32_t | vsf_dma_channel_get_transferred_count (vsf_dma_t *dma_ptr, uint8_t channel) |
| Get the count of data items transferred for a specific DMA channel. | |
| vsf_dma_channel_status_t | vsf_dma_channel_status (vsf_dma_t *dma_ptr, uint8_t channel) |
| Get status of a DMA channel. | |
| #define VSF_DMA_CFG_FUNCTION_RENAME DISABLED |
| vsf_err_t vsf_dma_init | ( | vsf_dma_t * | dma_ptr, |
| vsf_dma_cfg_t * | cfg_ptr | ||
| ) |
Initialize a DMA instance.
| [in] | dma_ptr | a pointer to structure vsf_dma_t |
| [in] | cfg_ptr | a pointer to structure vsf_dma_cfg_t |
| void vsf_dma_fini | ( | vsf_dma_t * | dma_ptr | ) |
| vsf_err_t vsf_dma_get_configuration | ( | vsf_dma_t * | dma_ptr, |
| vsf_dma_cfg_t * | cfg_ptr | ||
| ) |
Get the current configuration of DMA instance.
| [in] | dma_ptr | a pointer to structure vsf_dma_t |
| [out] | cfg_ptr | a pointer to structure vsf_dma_cfg_t to store the current configuration |
| vsf_dma_capability_t vsf_dma_capability | ( | vsf_dma_t * | dma_ptr | ) |
Get the capabilities of DMA instance.
| [in] | dma_ptr | a pointer to structure vsf_dma_t |
| vsf_err_t vsf_dma_channel_acquire | ( | vsf_dma_t * | dma_ptr, |
| vsf_dma_channel_hint_t * | channel_hint_ptr | ||
| ) |
DMA acquire a new channel.
| [in] | dma_ptr | a pointer to structure vsf_dma_t |
| [in,out] | channel_hint_ptr | a pointer to DMA channel hint. User should provide appropriate hint information based on actual requirements. If the actually allocated channel or other configuration differs from user's expectation, the function may modify channel_hint_ptr to notify the user of the actual allocation. The allocated channel number will be stored in channel_hint_ptr->channel. |
Release a DMA channel.
| [in] | dma_ptr | a pointer to structure vsf_dma_t |
| [in] | channel | channel number |
| vsf_err_t vsf_dma_channel_config | ( | vsf_dma_t * | dma_ptr, |
| uint8_t | channel, | ||
| vsf_dma_channel_cfg_t * | cfg_ptr | ||
| ) |
Configure a DMA channel.
| [in] | dma_ptr | a pointer to structure vsf_dma_t |
| [in] | channel | channel number |
| [in] | cfg_ptr | a pointer to DMA channel configuration |
| vsf_err_t vsf_dma_channel_get_configuration | ( | vsf_dma_t * | dma_ptr, |
| uint8_t | channel, | ||
| vsf_dma_channel_cfg_t * | cfg_ptr | ||
| ) |
Get the current configuration of a DMA channel.
| [in] | dma_ptr | a pointer to structure vsf_dma_t |
| [in] | channel | channel number |
| [out] | cfg_ptr | a pointer to structure vsf_dma_channel_cfg_t to store the current configuration |
| vsf_err_t vsf_dma_channel_start | ( | vsf_dma_t * | dma_ptr, |
| uint8_t | channel, | ||
| vsf_dma_addr_t | src_address, | ||
| vsf_dma_addr_t | dst_address, | ||
| uint32_t | count | ||
| ) |
Start a DMA channel transfer.
| [in] | dma_ptr | a pointer to structure vsf_dma_t |
| [in] | channel | channel number |
| [in] | src_address | source address |
| [in] | dst_address | destination address |
| [in] | count | number of data items to be transferred |
| vsf_err_t vsf_dma_channel_sg_config_desc | ( | vsf_dma_t * | dma_ptr, |
| uint8_t | channel, | ||
| vsf_dma_isr_t | isr, | ||
| vsf_dma_channel_sg_desc_t * | sg_desc_ptr, | ||
| uint32_t | sg_count | ||
| ) |
Configure a DMA channel for scatter-gather transfer.
| [in] | dma_ptr | a pointer to structure vsf_dma_t |
| [in] | channel | channel number |
| [in] | isr | DMA interrupt handler |
| [in] | cfg_ptr | a pointer to DMA channel scatter-gather configuration |
| [in] | sg_count | number of scatter-gather configurations |
Start a DMA scatter-gather transfer.
| [in] | dma_ptr | a pointer to structure vsf_dma_t |
| [in] | channel | channel number |
Cancel the transmission of a specific DMA channel.
| [in] | dma_ptr | a pointer to structure vsf_dma_t |
| [in] | channel | channel number |
Get the count of data items transferred for a specific DMA channel.
| [in] | dma_ptr | a pointer to structure vsf_dma_t |
| [in] | channel | channel number |
| vsf_dma_channel_status_t vsf_dma_channel_status | ( | vsf_dma_t * | dma_ptr, |
| uint8_t | channel | ||
| ) |
Get status of a DMA channel.
| [in] | dma_ptr | a pointer to structure vsf_dma_t |
| [in] | channel | channel number |