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

Modules

 i2s role definition
 
 i2s mode definition
 
 i2s mode definition
 
 i2s slot width definition
 
 i2s interrupt status definition
 
 i2s feature control cmd definition
 
 i2s data enable type
 

Data Structures

struct  bflb_i2s_config_s
 I2S configuration structure. More...
 

Functions

void bflb_i2s_init (struct bflb_device_s *dev, const struct bflb_i2s_config_s *config)
 Initialize i2s. More...
 
void bflb_i2s_deinit (struct bflb_device_s *dev)
 Deinitialize i2s. More...
 
void bflb_i2s_link_txdma (struct bflb_device_s *dev, bool enable)
 Enable i2s tx dma. More...
 
void bflb_i2s_link_rxdma (struct bflb_device_s *dev, bool enable)
 Enable i2s rx dma. More...
 
void bflb_i2s_txint_mask (struct bflb_device_s *dev, bool mask)
 Enable or disable i2s rx fifo threhold interrupt. More...
 
void bflb_i2s_rxint_mask (struct bflb_device_s *dev, bool mask)
 Enable or disable i2s rx fifo threhold interrupt. More...
 
void bflb_i2s_errint_mask (struct bflb_device_s *dev, bool mask)
 Enable or disable i2s error interrupt. More...
 
uint32_t bflb_i2s_get_intstatus (struct bflb_device_s *dev)
 Get i2s interrupt status. More...
 
int bflb_i2s_feature_control (struct bflb_device_s *dev, int cmd, size_t arg)
 Control i2s feature. More...
 

Detailed Description

Function Documentation

◆ bflb_i2s_deinit()

void bflb_i2s_deinit ( struct bflb_device_s dev)

Deinitialize i2s.

Parameters
[in]devdevice handle

◆ bflb_i2s_errint_mask()

void bflb_i2s_errint_mask ( struct bflb_device_s dev,
bool  mask 
)

Enable or disable i2s error interrupt.

Parameters
[in]devdevice handle
[in]masktrue means disable, false means enable

◆ bflb_i2s_feature_control()

int bflb_i2s_feature_control ( struct bflb_device_s dev,
int  cmd,
size_t  arg 
)

Control i2s feature.

Parameters
[in]devdevice handle
[in]cmdfeature command, use i2s feature control cmd definition
[in]arguser data
Returns
A negated errno value on failure.

◆ bflb_i2s_get_intstatus()

uint32_t bflb_i2s_get_intstatus ( struct bflb_device_s dev)

Get i2s interrupt status.

Parameters
[in]devdevice handle
Returns
interrupt status, use i2s interrupt status definition

◆ bflb_i2s_init()

void bflb_i2s_init ( struct bflb_device_s dev,
const struct bflb_i2s_config_s config 
)

Initialize i2s.

Parameters
[in]devdevice handle
[in]configpointer to save i2s config

◆ bflb_i2s_link_rxdma()

void bflb_i2s_link_rxdma ( struct bflb_device_s dev,
bool  enable 
)

Enable i2s rx dma.

Parameters
[in]devdevice handle
[in]enabletrue means enable, otherwise disable.

◆ bflb_i2s_link_txdma()

void bflb_i2s_link_txdma ( struct bflb_device_s dev,
bool  enable 
)

Enable i2s tx dma.

Parameters
[in]devdevice handle
[in]enabletrue means enable, otherwise disable.

◆ bflb_i2s_rxint_mask()

void bflb_i2s_rxint_mask ( struct bflb_device_s dev,
bool  mask 
)

Enable or disable i2s rx fifo threhold interrupt.

Parameters
[in]devdevice handle
[in]masktrue means disable, false means enable

◆ bflb_i2s_txint_mask()

void bflb_i2s_txint_mask ( struct bflb_device_s dev,
bool  mask 
)

Enable or disable i2s rx fifo threhold interrupt.

Parameters
[in]devdevice handle
[in]masktrue means disable, false means enable