no-OS
Loading...
Searching...
No Matches
no_os_tdm.h File Reference

Header file of TDM Interface. More...

#include <stdint.h>
#include <stdbool.h>
Include dependency graph for no_os_tdm.h:

Classes

struct  no_os_tdm_init_param
 Structure holding the parameters for TDM initialization. More...
 
struct  no_os_tdm_desc
 Structure holding TDM descriptor. More...
 
struct  no_os_tdm_platform_ops
 Structure holding TDM function pointers that point to the platform specific function. More...
 

Enumerations

enum  no_os_tdm_mode {
  NO_OS_TDM_MASTER_TX ,
  NO_OS_TDM_MASTER_RX ,
  NO_OS_TDM_SLAVE_TX ,
  NO_OS_TDM_SLAVE_RX
}
 

Functions

int32_t no_os_tdm_init (struct no_os_tdm_desc **desc, const struct no_os_tdm_init_param *param)
 Initialize the TDM communication peripheral.
 
int32_t no_os_tdm_remove (struct no_os_tdm_desc *desc)
 Free the resources allocated by no_os_tdm_init().
 
int32_t no_os_tdm_read (struct no_os_tdm_desc *desc, void *data, uint16_t bytes_number)
 Read data using the TDM interface.
 
int32_t no_os_tdm_write (struct no_os_tdm_desc *desc, void *data, uint16_t bytes_number)
 Write data using the TDM interface.
 
int32_t no_os_tdm_pause (struct no_os_tdm_desc *desc)
 Pause TDM DMA transfer.
 
int32_t no_os_tdm_resume (struct no_os_tdm_desc *desc)
 Resume TDM DMA transfer.
 
int32_t no_os_tdm_stop (struct no_os_tdm_desc *desc)
 Stop TDM DMA transfer.
 

Detailed Description

Header file of TDM Interface.

Author
Darius Berghe (dariu.nosp@m.s.be.nosp@m.rghe@.nosp@m.anal.nosp@m.og.co.nosp@m.m)

Copyright 2020(c) Analog Devices, Inc.

SPDX-License-Identifier: BSD-3-Clause

Enumeration Type Documentation

◆ no_os_tdm_mode

Enumerator
NO_OS_TDM_MASTER_TX 
NO_OS_TDM_MASTER_RX 
NO_OS_TDM_SLAVE_TX 
NO_OS_TDM_SLAVE_RX 

Function Documentation

◆ no_os_tdm_init()

int32_t no_os_tdm_init ( struct no_os_tdm_desc ** desc,
const struct no_os_tdm_init_param * param )

Initialize the TDM communication peripheral.

Parameters
desc- The TDM descriptor.
param- The structure that contains the TDM parameters.
Returns
0 in case of success, negative error code otherwise.

◆ no_os_tdm_pause()

int32_t no_os_tdm_pause ( struct no_os_tdm_desc * desc)

Pause TDM DMA transfer.

Parameters
desc- The TDM descriptor.
Returns
0 in case of success, negative error code otherwise.

◆ no_os_tdm_read()

int32_t no_os_tdm_read ( struct no_os_tdm_desc * desc,
void * data,
uint16_t nb_samples )

Read data using the TDM interface.

Parameters
desc- The TDM descriptor.
data- The buffer to store the received data.
nb_samples- Number of samples to read.
Returns
0 in case of success, negative error code otherwise.

◆ no_os_tdm_remove()

int32_t no_os_tdm_remove ( struct no_os_tdm_desc * desc)

Free the resources allocated by no_os_tdm_init().

Parameters
desc- The TDM descriptor.
Returns
0 in case of success, negative error code otherwise.

◆ no_os_tdm_resume()

int32_t no_os_tdm_resume ( struct no_os_tdm_desc * desc)

Resume TDM DMA transfer.

Parameters
desc- The TDM descriptor.
Returns
0 in case of success, negative error code otherwise.

◆ no_os_tdm_stop()

int32_t no_os_tdm_stop ( struct no_os_tdm_desc * desc)

Stop TDM DMA transfer.

Parameters
desc- The TDM descriptor.
Returns
0 in case of success, negative error code otherwise.

◆ no_os_tdm_write()

int32_t no_os_tdm_write ( struct no_os_tdm_desc * desc,
void * data,
uint16_t nb_samples )

Write data using the TDM interface.

Parameters
desc- The TDM descriptor.
data- The buffer with the data to be transmitted.
nb_samples- Number of samples to write.
Returns
0 in case of success, negative error code otherwise.