Bouffalo SDK  1.0
Bouffalolab Software Development Kit
PLATFORM_DMA
Collaboration diagram for PLATFORM_DMA:

Data Structures

struct  bflb_platform_dma_desc
 
struct  bflb_platform_dma_env_tag
 Structure describing the DMA driver environment. More...
 

Functions

void bflb_platform_dma_init (struct bflb_device_s *dev)
 Initialize the bridge DMA registers. More...
 
void bflb_platform_dma_push (struct bflb_device_s *dev, struct bflb_platform_dma_desc *first, struct bflb_platform_dma_desc *last)
 Chains a chained list of descriptors in the DMA. More...
 
void bflb_platform_dma_buserr_isr (struct bflb_device_s *dev)
 Interrupt service routine when a bus error is detected while in a DMA transfer. This error is considered as fatal and triggers a non-recoverable assertion. More...
 
void bflb_platform_dma_wait_eot (struct bflb_device_s *dev)
 Active wait until DMA channel become inactive. More...
 
void bflb_platform_dma_clear_eot (struct bflb_device_s *dev)
 Active wait until DMA channel become inactive. More...
 

Detailed Description

Function Documentation

◆ bflb_platform_dma_buserr_isr()

void bflb_platform_dma_buserr_isr ( struct bflb_device_s dev)

Interrupt service routine when a bus error is detected while in a DMA transfer. This error is considered as fatal and triggers a non-recoverable assertion.

Parameters
[in]devdevice handle

◆ bflb_platform_dma_clear_eot()

void bflb_platform_dma_clear_eot ( struct bflb_device_s dev)

Active wait until DMA channel become inactive.

Parameters
[in]devdevice handle

◆ bflb_platform_dma_init()

void bflb_platform_dma_init ( struct bflb_device_s dev)

Initialize the bridge DMA registers.

Parameters
[in]devdevice handle

◆ bflb_platform_dma_push()

void bflb_platform_dma_push ( struct bflb_device_s dev,
struct bflb_platform_dma_desc first,
struct bflb_platform_dma_desc last 
)

Chains a chained list of descriptors in the DMA.

Parameters
[in]devdevice handle
[in]firstFirst DMA descriptor of the list (filled by the caller)
[in]lastlast DMA descriptor of the list (filled by the caller)

◆ bflb_platform_dma_wait_eot()

void bflb_platform_dma_wait_eot ( struct bflb_device_s dev)

Active wait until DMA channel become inactive.

Parameters
[in]devdevice handle