Zephyr Project API  3.2.0
A Scalable Open Source RTOS
dai.h File Reference

Public APIs for the DAI (Digital Audio Interface) bus drivers. More...

#include <zephyr/types.h>
#include <zephyr/device.h>

Go to the source code of this file.

Data Structures

struct  dai_properties
 Properties of DAI. More...
 
struct  dai_config
 Generic Dai interface configuration options. More...
 
struct  dai_ts_cfg
 
struct  dai_ts_data
 

Enumerations

enum  dai_type {
  DAI_LEGACY_I2S = 0 , DAI_INTEL_SSP , DAI_INTEL_DMIC , DAI_INTEL_HDA ,
  DAI_INTEL_ALH , DAI_IMX_SAI , DAI_IMX_ESAI , DAI_AMD_BT ,
  DAI_AMD_SP , DAI_AMD_DMIC , DAI_MEDIATEK_AFE , DAI_INTEL_SSP_NHLT ,
  DAI_INTEL_DMIC_NHLT , DAI_INTEL_HDA_NHLT , DAI_INTEL_ALH_NHLT
}
 Types of DAI. More...
 
enum  dai_dir { DAI_DIR_RX = 1 , DAI_DIR_TX , DAI_DIR_BOTH }
 Dai Direction. More...
 
enum  dai_state {
  DAI_STATE_NOT_READY = 0 , DAI_STATE_READY , DAI_STATE_RUNNING , DAI_STATE_PRE_RUNNING ,
  DAI_STATE_PAUSED , DAI_STATE_STOPPING , DAI_STATE_ERROR
}
 
enum  dai_trigger_cmd {
  DAI_TRIGGER_START = 0 , DAI_TRIGGER_PRE_START , DAI_TRIGGER_STOP , DAI_TRIGGER_PAUSE ,
  DAI_TRIGGER_POST_STOP , DAI_TRIGGER_DRAIN , DAI_TRIGGER_DROP , DAI_TRIGGER_PREPARE ,
  DAI_TRIGGER_RESET , DAI_TRIGGER_COPY
}
 

Functions

static int dai_probe (const struct device *dev)
 Probe operation of DAI driver. More...
 
static int dai_remove (const struct device *dev)
 Remove operation of DAI driver. More...
 
static int dai_config_set (const struct device *dev, const struct dai_config *cfg, const void *bespoke_cfg)
 Configure operation of a DAI driver. More...
 
static const struct dai_configdai_config_get (const struct device *dev, enum dai_dir dir)
 Fetch configuration information of a DAI driver. More...
 
static const struct dai_propertiesdai_get_properties (const struct device *dev, enum dai_dir dir, int stream_id)
 Fetch properties of a DAI driver. More...
 
static int dai_trigger (const struct device *dev, enum dai_dir dir, enum dai_trigger_cmd cmd)
 Send a trigger command. More...
 
static int dai_ts_config (const struct device *dev, struct dai_ts_cfg *cfg)
 
static int dai_ts_start (const struct device *dev, struct dai_ts_cfg *cfg)
 
static int dai_ts_stop (const struct device *dev, struct dai_ts_cfg *cfg)
 
static int dai_ts_get (const struct device *dev, struct dai_ts_cfg *cfg, struct dai_ts_data *tsd)
 

Detailed Description

Public APIs for the DAI (Digital Audio Interface) bus drivers.