android_kernel_xiaomi_sm8350/dsp/q6_init.h
Aditya Bavanari 31aa875405 audio-kernel: Synchronize hw vote and unvote requests
HW vote and unvote is currently called from multiple
clients leading to synchronization issues
during SSR/PDR scenarios. Synchronize all the vote requests
by using digital codec resource manager.

Change-Id: I7e63f69ab5d761a3bb4c7ce70bbef2e8bfd76cfb
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
2020-05-18 09:04:25 -07:00

113 lines
1.9 KiB
C

/* SPDX-License-Identifier: GPL-2.0-only */
/*
* Copyright (c) 2017-2020, The Linux Foundation. All rights reserved.
*/
#ifndef __Q6_INIT_H__
#define __Q6_INIT_H__
int adsp_err_init(void);
int adm_init(void);
int afe_init(void);
int q6asm_init(void);
int q6lsm_init(void);
int voice_init(void);
int audio_cal_init(void);
int core_init(void);
int rtac_init(void);
int msm_audio_ion_init(void);
#if IS_ENABLED(CONFIG_MSM_AVTIMER)
int avtimer_init(void);
#else
static inline int avtimer_init(void)
{
return 0;
}
#endif
#ifdef CONFIG_MSM_MDF
int msm_mdf_init(void);
void msm_mdf_exit(void);
#else
static inline int msm_mdf_init(void)
{
return 0;
}
static inline void msm_mdf_exit(void)
{
return;
}
#endif
#ifdef CONFIG_XT_LOGGING
int spk_params_init(void);
void spk_params_exit(void);
#else
static inline int spk_params_init(void)
{
return 0;
}
static inline void spk_params_exit(void)
{
}
#endif
#if IS_ENABLED(CONFIG_MSM_AVTIMER)
void avtimer_exit(void);
#else
static inline void avtimer_exit(void)
{
return;
}
#endif
void msm_audio_ion_exit(void);
void rtac_exit(void);
void core_exit(void);
void audio_cal_exit(void);
void voice_exit(void);
void q6lsm_exit(void);
void q6asm_exit(void);
void afe_exit(void);
void adm_exit(void);
void adsp_err_exit(void);
#if IS_ENABLED(CONFIG_WCD9XXX_CODEC_CORE)
int audio_slimslave_init(void);
void audio_slimslave_exit(void);
#else
static inline int audio_slimslave_init(void)
{
return 0;
};
static inline void audio_slimslave_exit(void)
{
};
#endif
#ifdef CONFIG_VOICE_MHI
int voice_mhi_init(void);
void voice_mhi_exit(void);
#else
static inline int voice_mhi_init(void)
{
return 0;
}
static inline void voice_mhi_exit(void)
{
return;
}
#endif
#ifdef CONFIG_DIGITAL_CDC_RSC_MGR
void digital_cdc_rsc_mgr_init(void);
void digital_cdc_rsc_mgr_exit(void);
#else
static inline void digital_cdc_rsc_mgr_init(void)
{
}
static inline void digital_cdc_rsc_mgr_exit(void)
{
}
#endif /* CONFIG_DIGITAL_CDC_RSC_MGR */
#endif