VSF Documented
Macros | Functions | Variables
vsf_aic1000a.c File Reference
#include "../../../vsf_av_cfg.h"
#include "service/vsf_service.h"
#include "./vsf_aic1000a.h"
#include "audio_types.h"
#include "aic1000Aud_iomux.h"
#include "aic1000Aud_aud_codec.h"
#include "aic1000Aud_aud_ctrl_reg.h"
#include "aic1000Aud_sys_ctrl.h"
#include "aic1000Aud_wdg.h"

Macros

#define __VSF_AUDIO_CLASS_INHERIT__
 
#define __VSF_AUDIO_I2S_CLASS_INHERIT__
 
#define __VSF_AIC1000A_CLASS_IMPLEMENT
 
#define REG_AIC1000AUD_WDG   ((HWP_AIC1000AUD_WDG_T *)REG_AIC1000AUD_WDG_BASE)
 
#define REG_AIC1000AUD_AUD_CODEC   ((HWP_AIC1000AUD_AUD_CODEC_T *)REG_AIC1000AUD_AUD_CODEC_BASE)
 
#define REG_AIC1000AUD_IOMUX   ((HWP_AIC1000AUD_IOMUX_T *)REG_AIC1000AUD_IOMUX_BASE)
 
#define REG_AIC1000AUD_SYSCTRL   ((HWP_AIC1000AUD_SYS_CTRL_T *)REG_AIC1000AUD_SYSCTRL_BASE)
 
#define REG_AIC1000AUD_AUD_CTRL   ((HWP_AIC1000AUD_AUD_CTRL_REG_T *)REG_AIC1000AUD_AUD_CTRL_REG_BASE)
 
#define AIC1000A_REGW(__REG, __VALUE)   {(__REG), 0xFFFFFFFF, (__VALUE)}
 
#define AIC1000A_REGMW(__REG, __VALUE, __MASK)   {(__REG), (__MASK), (__VALUE)}
 
#define I2S_CDIV   14
 
#define I2S_HCYC_8K   149
 
#define I2S_HCYC_16K   74
 
#define I2S_HCYC_48K   24
 

Functions

 dcl_vsf_peda_methods (dcl_vsf_peda_methods(static, __vk_aic1000a_init)
 
 __vsf_component_peda_ifs_entry (__vk_aic1000a_init, vk_audio_init)
 
void __vk_aic1000_dac_config (vk_aic1000a_dev_t *dev, vk_audio_format_t *format, uint8_t channel_mask)
 
void __vk_aic1000_dac_start (vk_aic1000a_dev_t *dev, vk_audio_stream_t *audio_stream, uint8_t channel_mask)
 
void __vk_aic1000_dac_stop (vk_aic1000a_dev_t *dev, vk_audio_stream_t *audio_stream, uint8_t channel_mask)
 
 __vsf_component_peda_ifs_entry (__vk_aic1000a_playback_control, vk_audio_control)
 
 __vsf_component_peda_ifs_entry (__vk_aic1000a_playback_start, vk_audio_start)
 
 __vsf_component_peda_ifs_entry (__vk_aic1000a_playback_stop, vk_audio_stop)
 
void __vk_aic1000_adc_config (vk_aic1000a_dev_t *dev, vk_audio_format_t *format, uint8_t channel_mask)
 
void __vk_aic1000_adc_start (vk_aic1000a_dev_t *dev, vk_audio_stream_t *audio_stream, uint8_t channel_mask)
 
void __vk_aic1000_adc_stop (vk_aic1000a_dev_t *dev, vk_audio_stream_t *audio_stream, uint8_t channel_mask)
 
 __vsf_component_peda_ifs_entry (__vk_aic1000a_capture_control, vk_audio_control)
 
 __vsf_component_peda_ifs_entry (__vk_aic1000a_capture_start, vk_audio_start)
 
 __vsf_component_peda_ifs_entry (__vk_aic1000a_capture_stop, vk_audio_stop)
 

Variables

 vk_aic1000a_reg_seq_t
 
const vk_audio_drv_t vk_aic1000a_drv
 

Macro Definition Documentation

◆ __VSF_AUDIO_CLASS_INHERIT__

#define __VSF_AUDIO_CLASS_INHERIT__

◆ __VSF_AUDIO_I2S_CLASS_INHERIT__

#define __VSF_AUDIO_I2S_CLASS_INHERIT__

◆ __VSF_AIC1000A_CLASS_IMPLEMENT

#define __VSF_AIC1000A_CLASS_IMPLEMENT

◆ REG_AIC1000AUD_WDG

#define REG_AIC1000AUD_WDG   ((HWP_AIC1000AUD_WDG_T *)REG_AIC1000AUD_WDG_BASE)

◆ REG_AIC1000AUD_AUD_CODEC

#define REG_AIC1000AUD_AUD_CODEC   ((HWP_AIC1000AUD_AUD_CODEC_T *)REG_AIC1000AUD_AUD_CODEC_BASE)

◆ REG_AIC1000AUD_IOMUX

#define REG_AIC1000AUD_IOMUX   ((HWP_AIC1000AUD_IOMUX_T *)REG_AIC1000AUD_IOMUX_BASE)

◆ REG_AIC1000AUD_SYSCTRL

#define REG_AIC1000AUD_SYSCTRL   ((HWP_AIC1000AUD_SYS_CTRL_T *)REG_AIC1000AUD_SYSCTRL_BASE)

◆ REG_AIC1000AUD_AUD_CTRL

#define REG_AIC1000AUD_AUD_CTRL   ((HWP_AIC1000AUD_AUD_CTRL_REG_T *)REG_AIC1000AUD_AUD_CTRL_REG_BASE)

◆ AIC1000A_REGW

#define AIC1000A_REGW (   __REG,
  __VALUE 
)    {(__REG), 0xFFFFFFFF, (__VALUE)}

◆ AIC1000A_REGMW

#define AIC1000A_REGMW (   __REG,
  __VALUE,
  __MASK 
)    {(__REG), (__MASK), (__VALUE)}

◆ I2S_CDIV

#define I2S_CDIV   14

◆ I2S_HCYC_8K

#define I2S_HCYC_8K   149

◆ I2S_HCYC_16K

#define I2S_HCYC_16K   74

◆ I2S_HCYC_48K

#define I2S_HCYC_48K   24

Function Documentation

◆ dcl_vsf_peda_methods()

dcl_vsf_peda_methods ( dcl_vsf_peda_methods(  static,
__vk_aic1000a_init   
)

◆ __vsf_component_peda_ifs_entry() [1/7]

__vsf_component_peda_ifs_entry ( __vk_aic1000a_init  ,
vk_audio_init   
)

◆ __vk_aic1000_dac_config()

void __vk_aic1000_dac_config ( vk_aic1000a_dev_t dev,
vk_audio_format_t format,
uint8_t  channel_mask 
)

◆ __vk_aic1000_dac_start()

void __vk_aic1000_dac_start ( vk_aic1000a_dev_t dev,
vk_audio_stream_t audio_stream,
uint8_t  channel_mask 
)

◆ __vk_aic1000_dac_stop()

void __vk_aic1000_dac_stop ( vk_aic1000a_dev_t dev,
vk_audio_stream_t audio_stream,
uint8_t  channel_mask 
)

◆ __vsf_component_peda_ifs_entry() [2/7]

__vsf_component_peda_ifs_entry ( __vk_aic1000a_playback_control  ,
vk_audio_control   
)

◆ __vsf_component_peda_ifs_entry() [3/7]

__vsf_component_peda_ifs_entry ( __vk_aic1000a_playback_start  ,
vk_audio_start   
)

◆ __vsf_component_peda_ifs_entry() [4/7]

__vsf_component_peda_ifs_entry ( __vk_aic1000a_playback_stop  ,
vk_audio_stop   
)

◆ __vk_aic1000_adc_config()

void __vk_aic1000_adc_config ( vk_aic1000a_dev_t dev,
vk_audio_format_t format,
uint8_t  channel_mask 
)

◆ __vk_aic1000_adc_start()

void __vk_aic1000_adc_start ( vk_aic1000a_dev_t dev,
vk_audio_stream_t audio_stream,
uint8_t  channel_mask 
)

◆ __vk_aic1000_adc_stop()

void __vk_aic1000_adc_stop ( vk_aic1000a_dev_t dev,
vk_audio_stream_t audio_stream,
uint8_t  channel_mask 
)

◆ __vsf_component_peda_ifs_entry() [5/7]

__vsf_component_peda_ifs_entry ( __vk_aic1000a_capture_control  ,
vk_audio_control   
)

◆ __vsf_component_peda_ifs_entry() [6/7]

__vsf_component_peda_ifs_entry ( __vk_aic1000a_capture_start  ,
vk_audio_start   
)

◆ __vsf_component_peda_ifs_entry() [7/7]

__vsf_component_peda_ifs_entry ( __vk_aic1000a_capture_stop  ,
vk_audio_stop   
)

Variable Documentation

◆ vk_aic1000a_reg_seq_t

vk_aic1000a_reg_seq_t

◆ vk_aic1000a_drv

const vk_audio_drv_t vk_aic1000a_drv
Initial value:
= {
.init = (vsf_peda_evthandler_t)vsf_peda_func(__vk_aic1000a_init),
}
#define vsf_peda_evthandler_t
Definition vsf_component_cfg.h:37
#define vsf_peda_func(__name)
Definition vsf_eda.h:198