blob: 32f575cddd78892663404c5df76fd9d5f4b38347 [file] [log] [blame]
Aniket Kumar Lata808e8d62019-01-28 22:54:28 -08001/*
2 * Copyright (c) 2019, The Linux Foundation. All rights reserved.
3 *
4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are
6 * met:
7 * * Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.
9 * * Redistributions in binary form must reproduce the above
10 * copyright notice, this list of conditions and the following
11 * disclaimer in the documentation and/or other materials provided
12 * with the distribution.
13 * * Neither the name of The Linux Foundation nor the names of its
14 * contributors may be used to endorse or promote products derived
15 * from this software without specific prior written permission.
16 *
17 * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
18 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
19 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
20 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
21 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
22 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
24 * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
25 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
26 * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
27 * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28 */
29
30// ToDo: This struct must be used only if config store is disabled.
31// Use AHalValues struct from config store once support is added.
32struct AHalValues_t {
33 bool snd_monitor_enabled;
34 bool compress_capture_enabled;
35 bool source_track_enabled;
36 bool ssrec_enabled;
37 bool audiosphere_enabled;
38 bool afe_proxy_enabled;
39 bool use_deep_buffer_as_primary_output;
40 bool hdmi_edid_enabled;
41 bool keep_alive_enabled;
42 bool hifi_audio_enabled;
43 bool receiver_aided_stereo;
44 bool kpi_optimize_enabled;
45 bool display_port_enabled;
46 bool fluence_enabled;
47 bool custom_stereo_enabled;
48 bool anc_headset_enabled;
Arun Mirpuri5dc77802019-02-26 16:32:42 -080049 bool spkr_prot_enabled;
50 bool fm_power_opt_enabled;
51 bool ext_qdsp_enabled;
52 bool ext_spkr_enabled;
53 bool ext_spkr_tfa_enabled;
54 bool hwdep_cal_enabled;
Aniket Kumar Lata808e8d62019-01-28 22:54:28 -080055 bool dsm_feedback_enabled;
56 bool usb_offload_enabled;
57 bool usb_offload_burst_mode;
58 bool usb_offload_sidetone_vol_enabled;
59 bool a2dp_offload_enabled;
60 bool vbat_enabled;
61 bool compress_metadata_needed;
62 bool compress_voip_enabled;
63 bool dynamic_ecns_enabled;
64};
65typedef struct AHalValues_t AHalValues;
66
67#ifdef __cplusplus
68extern "C" {
69#endif
70void audio_extn_ahal_config_helper_init(bool isVendorEnhancedFwk);
71AHalValues* audio_extn_get_feature_values();
72bool audio_extn_is_config_from_remote();
73#ifdef __cplusplus
74}
75#endif
76