OSDN Git Service

Merge tag 'v4.4.196' of https://shanghai.source.codeaurora.org/quic/la/kernel/msm...
[sagit-ice-cold/kernel_xiaomi_msm8998.git] / include / sound / msm-audio-effects-q6-v2.h
1 /*
2  * Copyright (c) 2013-2016, The Linux Foundation. All rights reserved.
3  *
4  * This program is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License version 2 and
6  * only version 2 as published by the Free Software Foundation.
7  *
8  * This program is distributed in the hope that it will be useful,
9  * but WITHOUT ANY WARRANTY; without even the implied warranty of
10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11  * GNU General Public License for more details.
12  */
13
14 #ifndef _MSM_AUDIO_EFFECTS_H
15 #define _MSM_AUDIO_EFFECTS_H
16
17 #include <sound/audio_effects.h>
18
19 #define MAX_PP_PARAMS_SZ   128
20
21 bool msm_audio_effects_is_effmodule_supp_in_top(int effect_module,
22                                                 int topology);
23
24 int msm_audio_effects_enable_extn(struct audio_client *ac,
25                              struct msm_nt_eff_all_config *effects,
26                              bool flag);
27
28 int msm_audio_effects_reverb_handler(struct audio_client *ac,
29                                      struct reverb_params *reverb,
30                                      long *values);
31
32 int msm_audio_effects_bass_boost_handler(struct audio_client *ac,
33                                         struct bass_boost_params *bass_boost,
34                                         long *values);
35
36 int msm_audio_effects_pbe_handler(struct audio_client *ac,
37                                         struct pbe_params *pbe,
38                                         long *values);
39
40 int msm_audio_effects_virtualizer_handler(struct audio_client *ac,
41                                 struct virtualizer_params *virtualizer,
42                                 long *values);
43
44 int msm_audio_effects_popless_eq_handler(struct audio_client *ac,
45                                          struct eq_params *eq,
46                                          long *values);
47
48 int msm_audio_effects_volume_handler(struct audio_client *ac,
49                                      struct soft_volume_params *vol,
50                                      long *values);
51
52 int msm_audio_effects_volume_handler_v2(struct audio_client *ac,
53                                         struct soft_volume_params *vol,
54                                         long *values, int instance);
55 #endif /*_MSM_AUDIO_EFFECTS_H*/