HPM SDK
HPMicro Software Development Kit
I2S driver APIs

I2S driver APIs. More...

Data Structures

struct  i2s_config
 I2S config. More...
 
struct  i2x_transfer_config
 I2S transfer config. More...
 

Macros

#define I2S_DATA_LINE_0   (0U)
 I2S data line. More...
 
#define I2S_DATA_LINE_1   (1U)
 
#define I2S_DATA_LINE_2   (2U)
 
#define I2S_DATA_LINE_3   (3U)
 
#define I2S_DATA_LINE_MAX   I2S_DATA_LINE_3
 

Typedefs

typedef struct i2s_config i2s_config_t
 I2S config. More...
 
typedef struct i2x_transfer_config i2s_transfer_config_t
 I2S transfer config. More...
 

Enumerations

enum  i2s_irq_mask_t { i2s_tx_fifo_threshold_irq_mask = I2S_CTRL_TXDNIE_MASK , i2s_rx_fifo_threshold_irq_mask = I2S_CTRL_RXDAIE_MASK , i2s_fifo_error_irq_mask = I2S_CTRL_ERRIE_MASK }
 
enum  i2s_data_line_stat_t { i2s_data_line_rx_fifo_avail = 1U , i2s_data_line_tx_fifo_avail = 2U , i2s_data_line_rx_fifo_overrun = 4U , i2s_data_line_tx_fifo_underrun = 8U }
 

Functions

static void i2s_enable_tdm (I2S_Type *ptr)
 enable TDM More...
 
static void i2s_disable_tdm (I2S_Type *ptr)
 disable TDM More...
 
static void i2s_update_rx_fifo_threshold (I2S_Type *ptr, uint8_t threshold)
 update rx fifo threshold More...
 
static void i2s_update_tx_fifo_threshold (I2S_Type *ptr, uint8_t threshold)
 update tx fifo threshold More...
 
static void i2s_ungate_bclk (I2S_Type *ptr)
 open BCLK More...
 
static void i2s_gate_bclk (I2S_Type *ptr)
 gete off BCLK More...
 
static void i2s_ungate_mclk (I2S_Type *ptr)
 open MCLK More...
 
static void i2s_gate_mclk (I2S_Type *ptr)
 gate off MCLK More...
 
static void i2s_enable_tx_dma_request (I2S_Type *ptr)
 enable TX dma request More...
 
static void i2s_disable_tx_dma_request (I2S_Type *ptr)
 disable TX dma request More...
 
static void i2s_enable_rx_dma_request (I2S_Type *ptr)
 enable RX dma request More...
 
static void i2s_disable_rx_dma_request (I2S_Type *ptr)
 disable RX dma request More...
 
static void i2s_enable_irq (I2S_Type *ptr, uint32_t mask)
 enable IRQ More...
 
static void i2s_disable_irq (I2S_Type *ptr, uint32_t mask)
 disable IRQ More...
 
static void i2s_enable (I2S_Type *ptr)
 I2S enable. More...
 
static void i2s_disable (I2S_Type *ptr)
 I2S disable. More...
 
static void i2s_start (I2S_Type *ptr)
 I2S start. More...
 
static void i2s_stop (I2S_Type *ptr)
 I2S stop. More...
 
static void i2s_enable_rx (I2S_Type *ptr, uint8_t rx_mask)
 I2S enable rx function. More...
 
static void i2s_disable_rx (I2S_Type *ptr, uint8_t rx_mask)
 I2S disable rx function. More...
 
static void i2s_enable_tx (I2S_Type *ptr, uint8_t tx_mask)
 I2S enable tx function. More...
 
static void i2s_disable_tx (I2S_Type *ptr, uint8_t tx_mask)
 I2S disbale tx function. More...
 
static void i2s_reset_clock_gen (I2S_Type *ptr)
 I2S reset clock generator. More...
 
static void i2s_reset_tx (I2S_Type *ptr)
 I2S reset tx function. More...
 
static void i2s_reset_rx (I2S_Type *ptr)
 I2S reset rx function. More...
 
static void i2s_reset_tx_rx (I2S_Type *ptr)
 I2S reset tx and rx function. More...
 
void i2s_reset_all (I2S_Type *ptr)
 I2S reset tx/rx and clock generator module. More...
 
static uint32_t i2s_get_tx_fifo_level (I2S_Type *ptr)
 I2S get tx fifo level. More...
 
static uint32_t i2s_get_tx_line_fifo_level (I2S_Type *ptr, uint8_t line)
 I2S get data line tx fifo level. More...
 
static uint32_t i2s_get_rx_fifo_level (I2S_Type *ptr)
 I2S get rx fifo level. More...
 
static uint32_t i2s_get_rx_line_fifo_level (I2S_Type *ptr, uint8_t line)
 I2S get data line rx fifo level. More...
 
static uint32_t i2s_check_data_line_status (I2S_Type *ptr, uint8_t line)
 Check I2S data line status. More...
 
static uint32_t i2s_get_irq_status (I2S_Type *ptr)
 I2S get IRQ status. More...
 
static void i2s_stop_transfer (I2S_Type *ptr)
 I2S stop transfer. More...
 
hpm_stat_t i2s_config_tx (I2S_Type *ptr, uint32_t mclk_in_hz, i2s_transfer_config_t *config)
 I2S config tx. More...
 
hpm_stat_t i2s_config_tx_slave (I2S_Type *ptr, i2s_transfer_config_t *config)
 I2S config tx for slave. More...
 
hpm_stat_t i2s_config_rx (I2S_Type *ptr, uint32_t mclk_in_hz, i2s_transfer_config_t *config)
 I2S config rx. More...
 
hpm_stat_t i2s_config_rx_slave (I2S_Type *ptr, i2s_transfer_config_t *config)
 I2S config rx for slave. More...
 
hpm_stat_t i2s_config_transfer (I2S_Type *ptr, uint32_t mclk_in_hz, i2s_transfer_config_t *config)
 I2S config transfer. More...
 
hpm_stat_t i2s_config_transfer_slave (I2S_Type *ptr, i2s_transfer_config_t *config)
 I2S config transfer for slave. More...
 
static void i2s_send_data (I2S_Type *ptr, uint8_t tx_line_index, uint32_t data)
 I2S send data. More...
 
static void i2s_receive_data (I2S_Type *ptr, uint8_t rx_line_index, uint32_t *data)
 I2S receive data. More...
 
uint32_t i2s_send_buff (I2S_Type *ptr, uint8_t tx_line_index, uint8_t samplebits, uint8_t *src, uint32_t size)
 I2S send data in buff. More...
 
uint32_t i2s_receive_buff (I2S_Type *ptr, uint8_t rx_line_index, uint8_t samplebits, uint8_t *dst, uint32_t size)
 I2S receive data in buff. More...
 
void i2s_get_default_config (I2S_Type *ptr, i2s_config_t *config)
 I2S get default config. More...
 
void i2s_init (I2S_Type *ptr, i2s_config_t *config)
 I2S initialization. More...
 
void i2s_get_default_transfer_config_for_pdm (i2s_transfer_config_t *transfer)
 I2S get default transfer config for pdm. More...
 
void i2s_get_default_transfer_config_for_dao (i2s_transfer_config_t *transfer)
 I2S get default transfer config for dao. More...
 
void i2s_get_default_transfer_config (i2s_transfer_config_t *transfer)
 I2S get default transfer config. More...
 
hpm_stat_t i2s_fill_tx_dummy_data (I2S_Type *ptr, uint8_t data_line, uint8_t data_count)
 I2S fill dummy data into TX fifo. More...
 

Detailed Description

I2S driver APIs.

Macro Definition Documentation

◆ I2S_DATA_LINE_0

#define I2S_DATA_LINE_0   (0U)

#include <drivers/inc/hpm_i2s_drv.h>

I2S data line.

◆ I2S_DATA_LINE_1

#define I2S_DATA_LINE_1   (1U)

◆ I2S_DATA_LINE_2

#define I2S_DATA_LINE_2   (2U)

◆ I2S_DATA_LINE_3

#define I2S_DATA_LINE_3   (3U)

◆ I2S_DATA_LINE_MAX

#define I2S_DATA_LINE_MAX   I2S_DATA_LINE_3

Typedef Documentation

◆ i2s_config_t

typedef struct i2s_config i2s_config_t

#include <drivers/inc/hpm_i2s_drv.h>

I2S config.

◆ i2s_transfer_config_t

#include <drivers/inc/hpm_i2s_drv.h>

I2S transfer config.

Enumeration Type Documentation

◆ i2s_data_line_stat_t

#include <drivers/inc/hpm_i2s_drv.h>

Enumerator
i2s_data_line_rx_fifo_avail 
i2s_data_line_tx_fifo_avail 
i2s_data_line_rx_fifo_overrun 
i2s_data_line_tx_fifo_underrun 

◆ i2s_irq_mask_t

#include <drivers/inc/hpm_i2s_drv.h>

Enumerator
i2s_tx_fifo_threshold_irq_mask 
i2s_rx_fifo_threshold_irq_mask 
i2s_fifo_error_irq_mask 

Function Documentation

◆ i2s_check_data_line_status()

static uint32_t i2s_check_data_line_status ( I2S_Type ptr,
uint8_t  line 
)
inlinestatic

#include <drivers/inc/hpm_i2s_drv.h>

Check I2S data line status.

Parameters
[in]ptrI2S base address
[in]lineI2S data line
Return values
i2s_data_line_rx_fifo_availdata in rx fifo >= threshold
i2s_data_line_tx_fifo_availdata in tx fifo <= threshold
i2s_data_line_rx_fifo_overrunrx fifo overrun occured
i2s_data_line_tx_fifo_underruntx fifo underrun occured

◆ i2s_config_rx()

hpm_stat_t i2s_config_rx ( I2S_Type ptr,
uint32_t  mclk_in_hz,
i2s_transfer_config_t config 
)

#include <drivers/inc/hpm_i2s_drv.h>

I2S config rx.

Note
This API will disable I2S and configure parameters, could call i2s_enable() to enable I2S
Parameters
[in]ptrI2S base address
[in]mclk_in_hzmclk frequency in Hz
[in]configi2s_transfer_config_t
Return values
hpm_stat_tstatus_invalid_argument or status_success

◆ i2s_config_rx_slave()

hpm_stat_t i2s_config_rx_slave ( I2S_Type ptr,
i2s_transfer_config_t config 
)

#include <drivers/inc/hpm_i2s_drv.h>

I2S config rx for slave.

Note
This API will disable I2S and configure parameters, could call i2s_enable() to enable I2S
Parameters
[in]ptrI2S base address
[in]configi2s_transfer_config_t
Return values
hpm_stat_tstatus_invalid_argument or status_success

◆ i2s_config_transfer()

hpm_stat_t i2s_config_transfer ( I2S_Type ptr,
uint32_t  mclk_in_hz,
i2s_transfer_config_t config 
)

#include <drivers/inc/hpm_i2s_drv.h>

I2S config transfer.

Note
This API will disable I2S and configure parameters, could call i2s_enable() to enable I2S
Parameters
[in]ptrI2S base address
[in]mclk_in_hzmclk frequency in Hz
[in]configi2s_transfer_config_t
Return values
hpm_stat_tstatus_invalid_argument or status_success

◆ i2s_config_transfer_slave()

hpm_stat_t i2s_config_transfer_slave ( I2S_Type ptr,
i2s_transfer_config_t config 
)

#include <drivers/inc/hpm_i2s_drv.h>

I2S config transfer for slave.

Note
This API will disable I2S and configure parameters, could call i2s_enable() to enable I2S
Parameters
[in]ptrI2S base address
[in]configi2s_transfer_config_t
Return values
hpm_stat_tstatus_invalid_argument or status_success

◆ i2s_config_tx()

hpm_stat_t i2s_config_tx ( I2S_Type ptr,
uint32_t  mclk_in_hz,
i2s_transfer_config_t config 
)

#include <drivers/inc/hpm_i2s_drv.h>

I2S config tx.

Note
This API will disable I2S and configure parameters, could call i2s_enable() to enable I2S
Parameters
[in]ptrI2S base address
[in]mclk_in_hzmclk frequency in Hz
[in]configi2s_transfer_config_t
Return values
hpm_stat_tstatus_invalid_argument or status_success

◆ i2s_config_tx_slave()

hpm_stat_t i2s_config_tx_slave ( I2S_Type ptr,
i2s_transfer_config_t config 
)

#include <drivers/inc/hpm_i2s_drv.h>

I2S config tx for slave.

Note
This API will disable I2S and configure parameters, could call i2s_enable() to enable I2S
Parameters
[in]ptrI2S base address
[in]configi2s_transfer_config_t

◆ i2s_disable()

static void i2s_disable ( I2S_Type ptr)
inlinestatic

#include <drivers/inc/hpm_i2s_drv.h>

I2S disable.

Note
dropped API, please use i2s_stop
Parameters
[in]ptrI2S base address

◆ i2s_disable_irq()

static void i2s_disable_irq ( I2S_Type ptr,
uint32_t  mask 
)
inlinestatic

#include <drivers/inc/hpm_i2s_drv.h>

disable IRQ

Parameters
[in]ptrI2S base address
[in]maskirq bit mask

◆ i2s_disable_rx()

static void i2s_disable_rx ( I2S_Type ptr,
uint8_t  rx_mask 
)
inlinestatic

#include <drivers/inc/hpm_i2s_drv.h>

I2S disable rx function.

Parameters
[in]ptrI2S base address
[in]rx_maskrx data line mask

◆ i2s_disable_rx_dma_request()

static void i2s_disable_rx_dma_request ( I2S_Type ptr)
inlinestatic

#include <drivers/inc/hpm_i2s_drv.h>

disable RX dma request

Parameters
[in]ptrI2S base address

◆ i2s_disable_tdm()

static void i2s_disable_tdm ( I2S_Type ptr)
inlinestatic

#include <drivers/inc/hpm_i2s_drv.h>

disable TDM

Parameters
[in]ptrI2S base address

◆ i2s_disable_tx()

static void i2s_disable_tx ( I2S_Type ptr,
uint8_t  tx_mask 
)
inlinestatic

#include <drivers/inc/hpm_i2s_drv.h>

I2S disbale tx function.

Parameters
[in]ptrI2S base address
[in]tx_masktx data line mask

◆ i2s_disable_tx_dma_request()

static void i2s_disable_tx_dma_request ( I2S_Type ptr)
inlinestatic

#include <drivers/inc/hpm_i2s_drv.h>

disable TX dma request

Parameters
[in]ptrI2S base address

◆ i2s_enable()

static void i2s_enable ( I2S_Type ptr)
inlinestatic

#include <drivers/inc/hpm_i2s_drv.h>

I2S enable.

Note
dropped API, please use i2s_start
Parameters
[in]ptrI2S base address

◆ i2s_enable_irq()

static void i2s_enable_irq ( I2S_Type ptr,
uint32_t  mask 
)
inlinestatic

#include <drivers/inc/hpm_i2s_drv.h>

enable IRQ

Parameters
[in]ptrI2S base address
[in]maskirq bit mask

◆ i2s_enable_rx()

static void i2s_enable_rx ( I2S_Type ptr,
uint8_t  rx_mask 
)
inlinestatic

#include <drivers/inc/hpm_i2s_drv.h>

I2S enable rx function.

Parameters
[in]ptrI2S base address
[in]rx_maskrx data line mask

◆ i2s_enable_rx_dma_request()

static void i2s_enable_rx_dma_request ( I2S_Type ptr)
inlinestatic

#include <drivers/inc/hpm_i2s_drv.h>

enable RX dma request

Parameters
[in]ptrI2S base address

◆ i2s_enable_tdm()

static void i2s_enable_tdm ( I2S_Type ptr)
inlinestatic

#include <drivers/inc/hpm_i2s_drv.h>

enable TDM

Parameters
[in]ptrI2S base address

◆ i2s_enable_tx()

static void i2s_enable_tx ( I2S_Type ptr,
uint8_t  tx_mask 
)
inlinestatic

#include <drivers/inc/hpm_i2s_drv.h>

I2S enable tx function.

Parameters
[in]ptrI2S base address
[in]tx_masktx data line mask

◆ i2s_enable_tx_dma_request()

static void i2s_enable_tx_dma_request ( I2S_Type ptr)
inlinestatic

#include <drivers/inc/hpm_i2s_drv.h>

enable TX dma request

Parameters
[in]ptrI2S base address

◆ i2s_fill_tx_dummy_data()

hpm_stat_t i2s_fill_tx_dummy_data ( I2S_Type ptr,
uint8_t  data_line,
uint8_t  data_count 
)

#include <drivers/inc/hpm_i2s_drv.h>

I2S fill dummy data into TX fifo.

Note
workaround: fill dummy data into TX fifo to avoid TX underflow during tx start
Parameters
[in]ptrI2S base address
[in]data_linedata line
[in]data_countdummy data count, This value should be the same as the number of audio channels
Return values
status_successif no error occurred

◆ i2s_gate_bclk()

static void i2s_gate_bclk ( I2S_Type ptr)
inlinestatic

#include <drivers/inc/hpm_i2s_drv.h>

gete off BCLK

Parameters
[in]ptrI2S base address

◆ i2s_gate_mclk()

static void i2s_gate_mclk ( I2S_Type ptr)
inlinestatic

#include <drivers/inc/hpm_i2s_drv.h>

gate off MCLK

Parameters
[in]ptrI2S base address

◆ i2s_get_default_config()

void i2s_get_default_config ( I2S_Type ptr,
i2s_config_t config 
)

#include <drivers/inc/hpm_i2s_drv.h>

I2S get default config.

Parameters
[in]ptrI2S base address
[out]configi2s_config_t

◆ i2s_get_default_transfer_config()

void i2s_get_default_transfer_config ( i2s_transfer_config_t transfer)

#include <drivers/inc/hpm_i2s_drv.h>

I2S get default transfer config.

Parameters
[out]transferi2s_transfer_config_t

◆ i2s_get_default_transfer_config_for_dao()

void i2s_get_default_transfer_config_for_dao ( i2s_transfer_config_t transfer)

#include <drivers/inc/hpm_i2s_drv.h>

I2S get default transfer config for dao.

Parameters
[out]transferi2s_transfer_config_t

◆ i2s_get_default_transfer_config_for_pdm()

void i2s_get_default_transfer_config_for_pdm ( i2s_transfer_config_t transfer)

#include <drivers/inc/hpm_i2s_drv.h>

I2S get default transfer config for pdm.

Parameters
[out]transferi2s_transfer_config_t

◆ i2s_get_irq_status()

static uint32_t i2s_get_irq_status ( I2S_Type ptr)
inlinestatic

#include <drivers/inc/hpm_i2s_drv.h>

I2S get IRQ status.

Parameters
[in]ptrI2S base address
Return values
I2SSTA register value

◆ i2s_get_rx_fifo_level()

static uint32_t i2s_get_rx_fifo_level ( I2S_Type ptr)
inlinestatic

#include <drivers/inc/hpm_i2s_drv.h>

I2S get rx fifo level.

Parameters
[in]ptrI2S base address
Return values
I2Srx fifo level

◆ i2s_get_rx_line_fifo_level()

static uint32_t i2s_get_rx_line_fifo_level ( I2S_Type ptr,
uint8_t  line 
)
inlinestatic

#include <drivers/inc/hpm_i2s_drv.h>

I2S get data line rx fifo level.

Parameters
[in]ptrI2S base address
[in]lineI2S data line
Return values
I2Sdata line rx fifo level

◆ i2s_get_tx_fifo_level()

static uint32_t i2s_get_tx_fifo_level ( I2S_Type ptr)
inlinestatic

#include <drivers/inc/hpm_i2s_drv.h>

I2S get tx fifo level.

Parameters
[in]ptrI2S base address
Return values
I2Stx fifo level

◆ i2s_get_tx_line_fifo_level()

static uint32_t i2s_get_tx_line_fifo_level ( I2S_Type ptr,
uint8_t  line 
)
inlinestatic

#include <drivers/inc/hpm_i2s_drv.h>

I2S get data line tx fifo level.

Parameters
[in]ptrI2S base address
[in]lineI2S data line
Return values
I2Sdata line tx fifo level

◆ i2s_init()

void i2s_init ( I2S_Type ptr,
i2s_config_t config 
)

#include <drivers/inc/hpm_i2s_drv.h>

I2S initialization.

Parameters
[in]ptrI2S base address
[in]configi2s_config_t

◆ i2s_receive_buff()

uint32_t i2s_receive_buff ( I2S_Type ptr,
uint8_t  rx_line_index,
uint8_t  samplebits,
uint8_t *  dst,
uint32_t  size 
)

#include <drivers/inc/hpm_i2s_drv.h>

I2S receive data in buff.

Parameters
[in]ptrI2S base address
[in]rx_line_indexdata line
[in]samplebitsaudio data width
[out]dsttarget data buff
[in]sizedata size
Return values
I2Ssent data size in byte

◆ i2s_receive_data()

static void i2s_receive_data ( I2S_Type ptr,
uint8_t  rx_line_index,
uint32_t *  data 
)
inlinestatic

#include <drivers/inc/hpm_i2s_drv.h>

I2S receive data.

Parameters
[in]ptrI2S base address
[in]rx_line_indexdata line
[out]datapoint to store data address

◆ i2s_reset_all()

void i2s_reset_all ( I2S_Type ptr)

#include <drivers/inc/hpm_i2s_drv.h>

I2S reset tx/rx and clock generator module.

Note
This API will disable I2S, reset tx/rx and clock generator module This function uses an internal clock to generate BCLK, then do reset operation, and finally restores the previous clock settings
Parameters
[in]ptrI2S base address

◆ i2s_reset_clock_gen()

static void i2s_reset_clock_gen ( I2S_Type ptr)
inlinestatic

#include <drivers/inc/hpm_i2s_drv.h>

I2S reset clock generator.

Parameters
[in]ptrI2S base address

◆ i2s_reset_rx()

static void i2s_reset_rx ( I2S_Type ptr)
inlinestatic

#include <drivers/inc/hpm_i2s_drv.h>

I2S reset rx function.

Note
This API will disable I2S, reset rx function Please ensure that there is a valid BCLK when calling this function
Parameters
[in]ptrI2S base address

◆ i2s_reset_tx()

static void i2s_reset_tx ( I2S_Type ptr)
inlinestatic

#include <drivers/inc/hpm_i2s_drv.h>

I2S reset tx function.

Note
This API will disable I2S, reset tx function Please ensure that there is a valid BCLK when calling this function
Parameters
[in]ptrI2S base address

◆ i2s_reset_tx_rx()

static void i2s_reset_tx_rx ( I2S_Type ptr)
inlinestatic

#include <drivers/inc/hpm_i2s_drv.h>

I2S reset tx and rx function.

Note
This API will disable I2S, reset tx/rx function Please ensure that there is a valid BCLK when calling this function
Parameters
[in]ptrI2S base address

◆ i2s_send_buff()

uint32_t i2s_send_buff ( I2S_Type ptr,
uint8_t  tx_line_index,
uint8_t  samplebits,
uint8_t *  src,
uint32_t  size 
)

#include <drivers/inc/hpm_i2s_drv.h>

I2S send data in buff.

Parameters
[in]ptrI2S base address
[in]tx_line_indexdata line
[in]samplebitsaudio data width
[in]srcsource data buff
[in]sizedata size
Return values
I2Ssent data size in byte

◆ i2s_send_data()

static void i2s_send_data ( I2S_Type ptr,
uint8_t  tx_line_index,
uint32_t  data 
)
inlinestatic

#include <drivers/inc/hpm_i2s_drv.h>

I2S send data.

Parameters
[in]ptrI2S base address
[in]tx_line_indexdata line
[in]datadata to be written

◆ i2s_start()

static void i2s_start ( I2S_Type ptr)
inlinestatic

#include <drivers/inc/hpm_i2s_drv.h>

I2S start.

Parameters
[in]ptrI2S base address

◆ i2s_stop()

static void i2s_stop ( I2S_Type ptr)
inlinestatic

#include <drivers/inc/hpm_i2s_drv.h>

I2S stop.

Parameters
[in]ptrI2S base address

◆ i2s_stop_transfer()

static void i2s_stop_transfer ( I2S_Type ptr)
inlinestatic

#include <drivers/inc/hpm_i2s_drv.h>

I2S stop transfer.

Parameters
[in]ptrI2S base address

◆ i2s_ungate_bclk()

static void i2s_ungate_bclk ( I2S_Type ptr)
inlinestatic

#include <drivers/inc/hpm_i2s_drv.h>

open BCLK

Parameters
[in]ptrI2S base address

◆ i2s_ungate_mclk()

static void i2s_ungate_mclk ( I2S_Type ptr)
inlinestatic

#include <drivers/inc/hpm_i2s_drv.h>

open MCLK

Parameters
[in]ptrI2S base address

◆ i2s_update_rx_fifo_threshold()

static void i2s_update_rx_fifo_threshold ( I2S_Type ptr,
uint8_t  threshold 
)
inlinestatic

#include <drivers/inc/hpm_i2s_drv.h>

update rx fifo threshold

Parameters
[in]ptrI2S base address
[in]thresholdfifo threshold value

◆ i2s_update_tx_fifo_threshold()

static void i2s_update_tx_fifo_threshold ( I2S_Type ptr,
uint8_t  threshold 
)
inlinestatic

#include <drivers/inc/hpm_i2s_drv.h>

update tx fifo threshold

Parameters
[in]ptrI2S base address
[in]thresholdfifo threshold value