1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!-- Copyright (c) 2014, 2016, 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<!-- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN -->
26<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.                          -->
27<audio_platform_info>
28    <acdb_ids>
29        <device name="SND_DEVICE_OUT_SPEAKER" acdb_id="15"/>
30        <device name="SND_DEVICE_OUT_SPEAKER_PROTECTED" acdb_id="124"/>
31        <device name="SND_DEVICE_OUT_VOICE_SPEAKER" acdb_id="14"/>
32        <device name="SND_DEVICE_OUT_VOICE_MUSIC_TX" acdb_id="3"/>
33        <device name="SND_DEVICE_OUT_VOICE_HANDSET_TMUS" acdb_id="7"/>
34        <device name="SND_DEVICE_IN_VOICE_DMIC_TMUS" acdb_id="41"/>
35        <device name="SND_DEVICE_IN_VOICE_SPEAKER_DMIC" acdb_id="19"/>
36        <device name="SND_DEVICE_IN_USB_HEADSET_MIC_AEC" acdb_id="47"/>
37        <device name="SND_DEVICE_IN_UNPROCESSED_USB_HEADSET_MIC" acdb_id="48"/>
38        <device name="SND_DEVICE_IN_VOICE_RECOG_USB_HEADSET_MIC" acdb_id="49"/>
39        <device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC_NS" acdb_id="129"/>
40        <device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC" acdb_id="126"/>
41        <device name="SND_DEVICE_IN_BT_SCO_MIC_NREC" acdb_id="122"/>
42        <device name="SND_DEVICE_IN_BT_SCO_MIC_WB_NREC" acdb_id="123"/>
43        <device name="SND_DEVICE_IN_UNPROCESSED_MIC" acdb_id="143"/>
44        <device name="SND_DEVICE_IN_UNPROCESSED_STEREO_MIC" acdb_id="144"/>
45        <device name="SND_DEVICE_IN_UNPROCESSED_THREE_MIC" acdb_id="145"/>
46        <device name="SND_DEVICE_IN_UNPROCESSED_QUAD_MIC" acdb_id="146"/>
47    </acdb_ids>
48    <bit_width_configs>
49        <device name="SND_DEVICE_OUT_SPEAKER" bit_width="24"/>
50    </bit_width_configs>
51    <pcm_ids>
52        <usecase name="USECASE_AUDIO_PLAYBACK_LOW_LATENCY" type="out" id="13"/>
53        <usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD" type="out" id="8"/>
54        <usecase name="USECASE_VOWLAN_CALL" type="in" id="-1"/>
55        <usecase name="USECASE_VOWLAN_CALL" type="out" id="-1"/>
56        <usecase name="USECASE_AUDIO_RECORD_LOW_LATENCY" type="in" id="17" />
57        <usecase name="USECASE_AUDIO_PLAYBACK_ULL" type="out" id="17" />
58        <usecase name="USECASE_VOICEMMODE1_CALL" type="in" id="2" />
59        <usecase name="USECASE_VOICEMMODE1_CALL" type="out" id="2" />
60        <usecase name="USECASE_VOICEMMODE2_CALL" type="in" id="19" />
61        <usecase name="USECASE_VOICEMMODE2_CALL" type="out" id="19" />
62        <usecase name="USECASE_AUDIO_RECORD_MMAP" type="in" id="4" />
63        <usecase name="USECASE_AUDIO_PLAYBACK_AFE_PROXY" type="out" id="6" />
64        <usecase name="USECASE_AUDIO_RECORD_AFE_PROXY" type="in" id="7" />
65        <usecase name="USECASE_AUDIO_PLAYBACK_MMAP" type="out" id="4" />
66        <usecase name="USECASE_AUDIO_PLAYBACK_VOIP" type="out" id="16" />
67        <usecase name="USECASE_AUDIO_RECORD_VOIP" type="in" id="16" />
68        <usecase name="USECASE_INCALL_MUSIC_UPLINK" type="out" id="27" />
69    </pcm_ids>
70    <config_params>
71        <param key="input_mic_max_count" value="3"/>
72        <param key="snd_card_name" value="msm8998-tavil-taimen-snd-card"/>
73    </config_params>
74    <backend_names>
75        <device name="SND_DEVICE_OUT_SPEAKER" backend="speaker" interface="QUAT_MI2S_RX"/>
76        <device name="SND_DEVICE_OUT_VOICE_SPEAKER" backend="speaker" interface="QUAT_MI2S_RX"/>
77        <device name="SND_DEVICE_OUT_SPEAKER_REVERSE" backend="speaker" interface="QUAT_MI2S_RX"/>
78        <device name="SND_DEVICE_OUT_SPEAKER_SAFE" backend="speaker" interface="QUAT_MI2S_RX"/>
79        <device name="SND_DEVICE_OUT_SPEAKER_PROTECTED" backend="speaker" interface="QUAT_MI2S_RX"/>
80        <device name="SND_DEVICE_OUT_SPEAKER_AND_USB_HEADSET" backend="speaker-and-usb-headphones" interface="QUAT_MI2S_RX-and-USB_AUDIO_RX"/>
81        <device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_USB_HEADSET" backend="speaker-and-usb-headphones" interface="QUAT_MI2S_RX-and-USB_AUDIO_RX"/>
82        <device name="SND_DEVICE_OUT_VOICE_SPEAKER_HFP" backend="speaker" interface="QUAT_MI2S_RX"/>
83        <device name="SND_DEVICE_OUT_HANDSET" backend="handset" interface="QUAT_MI2S_RX"/>
84        <device name="SND_DEVICE_OUT_VOICE_HANDSET" backend="handset" interface="QUAT_MI2S_RX"/>
85        <device name="SND_DEVICE_OUT_VOICE_HAC_HANDSET" backend="handset-hac" interface="SLIMBUS_0_RX"/>
86        <device name="SND_DEVICE_OUT_VOICE_HANDSET_TMUS" backend="handset" interface="QUAT_MI2S_RX"/>
87        <device name="SND_DEVICE_OUT_BT_SCO" backend="bt-sco" interface="SLIMBUS_7_RX"/>
88        <device name="SND_DEVICE_OUT_BT_SCO_WB" backend="bt-sco-wb" interface="SLIMBUS_7_RX"/>
89        <device name="SND_DEVICE_OUT_SPEAKER_AND_BT_SCO" backend="speaker-and-bt-sco" interface="QUAT_MI2S_RX-and-SLIMBUS_7_RX"/>
90        <device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_SCO" backend="speaker-and-bt-sco" interface="QUAT_MI2S_RX-and-SLIMBUS_7_RX"/>
91        <device name="SND_DEVICE_OUT_SPEAKER_AND_BT_SCO_WB" backend="speaker-and-bt-sco-wb" interface="QUAT_MI2S_RX-and-SLIMBUS_7_RX"/>
92        <device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_SCO_WB" backend="speaker-and-bt-sco-wb" interface="QUAT_MI2S_RX-and-SLIMBUS_7_RX"/>
93        <device name="SND_DEVICE_OUT_VOICE_TTY_FULL_USB" backend="usb-headset" interface="USB_AUDIO_RX"/>
94        <device name="SND_DEVICE_OUT_VOICE_TTY_VCO_USB" backend="voice-tty-vco-usb" interface="USB_AUDIO_RX"/>
95        <device name="SND_DEVICE_OUT_VOICE_TTY_HCO_HANDSET" backend="voice-tty-hco-handset" interface="QUAT_MI2S_RX"/>
96        <device name="SND_DEVICE_IN_VOICE_TTY_FULL_USB_MIC" backend="usb-headset-mic" interface="USB_AUDIO_TX"/>
97    </backend_names>
98    <app_types>
99      <app uc_type="PCM_PLAYBACK" mode="default" bit_width="16" id="69936" max_rate="96000" />
100      <app uc_type="PCM_PLAYBACK" mode="default" bit_width="24" id="69940" max_rate="192000" />
101      <app uc_type="PCM_PLAYBACK" mode="voip" bit_width="16" id="69945" max_rate="48000" />
102      <app uc_type="PCM_CAPTURE"  mode="default" bit_width="16" id="69938" max_rate="96000" />
103      <app uc_type="PCM_CAPTURE"  mode="default" bit_width="24" id="69940" max_rate="96000" />
104      <app uc_type="PCM_CAPTURE"  mode="voip" bit_width="16" id="69945" max_rate="48000" />
105    </app_types>
106    <!-- Mandatory microphone characteristics include: device_id, type,     -->
107    <!-- address, location, group, index_in_the_group, directionality,      -->
108    <!-- num_frequency_responses, frequencies and responses.                -->
109    <!-- Optional microphone characteristics include: Sensitivity, max_spl, -->
110    <!-- min_spl, orientation and geometric_location. If missing they will  -->
111    <!-- be populated as unknown.                                           -->
112    <microphone_characteristics>
113        <microphone device_id="builtin_mic_1" type="AUDIO_DEVICE_IN_BUILTIN_MIC" address="bottom" location="AUDIO_MICROPHONE_LOCATION_MAINBODY"
114            group="0" index_in_the_group="0" directionality="AUDIO_MICROPHONE_DIRECTIONALITY_OMNI" num_frequency_responses="93"
115            frequencies="100.00 106.00 112.00 118.00 125.00 132.00 140.00 150.00 160.00 170.00 180.00 190.00 200.00 212.00 224.00 236.00 250.00 265.00 280.00 300.00 315.00 335.00 355.00 375.00 400.00 425.00 450.00 475.00 500.00 530.00 560.00 600.00 630.00 670.00 710.00 750.00 800.00 850.00 900.00 950.00 1000.00 1060.00 1120.00 1180.00 1250.00 1320.00 1400.00 1500.00 1600.00 1700.00 1800.00 1900.00 2000.00 2120.00 2240.00 2360.00 2500.00 2650.00 2800.00 3000.00 3150.00 3350.00 3550.00 3750.00 4000.00 4250.00 4500.00 4750.00 5000.00 5300.00 5600.00 6000.00 6300.00 6700.00 7100.00 7500.00 8000.00 8500.00 9000.00 9500.00 10000.00 10600.00 11200.00 11800.00 12500.00 13200.00 14000.00 15000.00 16000.00 17000.00 18000.00 19000.00 20000.00"
116            responses="-0.98 -0.95 -0.89 -0.85 -0.81 -0.79 -0.77 -0.74 -0.71 -0.68 -0.66 -0.66 -0.63 -0.60 -0.57 -0.54 -0.53 -0.50 -0.50 -0.48 -0.46 -0.46 -0.41 -0.38 -0.33 -0.30 -0.34 -0.31 -0.29 -0.26 -0.23 -0.19 -0.17 -0.14 -0.11 -0.08 -0.05 -0.03 0.00 0.01 0.00 0.03 0.03 0.08 0.12 0.16 0.18 0.19 0.30 0.39 0.49 0.56 0.63 0.82 0.83 0.84 0.83 0.93 0.99 1.24 1.50 1.76 2.00 2.05 2.36 2.63 2.71 2.73 3.00 3.12 3.28 4.61 5.23 7.94 7.00 7.88 8.87 9.95 11.41 12.67 13.87 17.63 17.87 18.83 23.27 27.86 38.70 36.74 31.66 25.61 27.23 19.68 16.12"
117            sensitivity="-37.0" max_spl="132.5" min_spl="28.5" orientation="0.0 0.0 1.0" geometric_location="0.02635 0.00454 0.00794" />
118        <microphone device_id="builtin_mic_2" type="AUDIO_DEVICE_IN_BACK_MIC" address="back" location="AUDIO_MICROPHONE_LOCATION_MAINBODY"
119            group="0" index_in_the_group="1" directionality="AUDIO_MICROPHONE_DIRECTIONALITY_OMNI" num_frequency_responses="93"
120            frequencies="100.00 106.00 112.00 118.00 125.00 132.00 140.00 150.00 160.00 170.00 180.00 190.00 200.00 212.00 224.00 236.00 250.00 265.00 280.00 300.00 315.00 335.00 355.00 375.00 400.00 425.00 450.00 475.00 500.00 530.00 560.00 600.00 630.00 670.00 710.00 750.00 800.00 850.00 900.00 950.00 1000.00 1060.00 1120.00 1180.00 1250.00 1320.00 1400.00 1500.00 1600.00 1700.00 1800.00 1900.00 2000.00 2120.00 2240.00 2360.00 2500.00 2650.00 2800.00 3000.00 3150.00 3350.00 3550.00 3750.00 4000.00 4250.00 4500.00 4750.00 5000.00 5300.00 5600.00 6000.00 6300.00 6700.00 7100.00 7500.00 8000.00 8500.00 9000.00 9500.00 10000.00 10600.00 11200.00 11800.00 12500.00 13200.00 14000.00 15000.00 16000.00 17000.00 18000.00 19000.00 20000.00"
121            responses="-1.17 -1.13 -1.09 -1.06 -1.02 -0.98 -0.96 -0.94 -0.91 -0.87 -0.84 -0.82 -0.79 -0.78 -0.76 -0.75 -0.72 -0.70 -0.68 -0.66 -0.63 -0.60 -0.58 -0.55 -0.53 -0.53 -0.49 -0.46 -0.43 -0.41 -0.37 -0.33 -0.30 -0.27 -0.24 -0.21 -0.16 -0.12 -0.07 -0.02 0.00 0.06 0.09 0.12 0.17 0.24 0.25 0.25 0.35 0.45 0.56 0.66 0.78 0.96 0.98 1.08 1.26 1.49 1.67 1.93 2.04 2.28 2.47 2.65 2.86 3.42 3.93 4.54 5.03 5.59 6.40 7.59 8.72 10.83 10.43 13.91 18.52 25.40 22.48 16.63 13.18 10.53 8.41 5.85 3.78 3.68 3.19 2.93 0.59 2.93 2.62 1.44 3.01"
122            sensitivity="-37.0" max_spl="132.5" min_spl="28.5" orientation="0.0 1.0 0.0" geometric_location="0.04974 0.15736 0.00426" />
123        <microphone device_id="builtin_mic_3" type="AUDIO_DEVICE_IN_BUILTIN_MIC" address="top" location="AUDIO_MICROPHONE_LOCATION_MAINBODY"
124            group="0" index_in_the_group="2" directionality="AUDIO_MICROPHONE_DIRECTIONALITY_OMNI" num_frequency_responses="93"
125            frequencies="100.00 106.00 112.00 118.00 125.00 132.00 140.00 150.00 160.00 170.00 180.00 190.00 200.00 212.00 224.00 236.00 250.00 265.00 280.00 300.00 315.00 335.00 355.00 375.00 400.00 425.00 450.00 475.00 500.00 530.00 560.00 600.00 630.00 670.00 710.00 750.00 800.00 850.00 900.00 950.00 1000.00 1060.00 1120.00 1180.00 1250.00 1320.00 1400.00 1500.00 1600.00 1700.00 1800.00 1900.00 2000.00 2120.00 2240.00 2360.00 2500.00 2650.00 2800.00 3000.00 3150.00 3350.00 3550.00 3750.00 4000.00 4250.00 4500.00 4750.00 5000.00 5300.00 5600.00 6000.00 6300.00 6700.00 7100.00 7500.00 8000.00 8500.00 9000.00 9500.00 10000.00 10600.00 11200.00 11800.00 12500.00 13200.00 14000.00 15000.00 16000.00 17000.00 18000.00 19000.00 20000.00"
126            responses="-0.95 -0.91 -0.87 -0.84 -0.79 -0.77 -0.76 -0.75 -0.71 -0.67 -0.65 -0.63 -0.61 -0.61 -0.59 -0.56 -0.56 -0.53 -0.51 -0.50 -0.49 -0.46 -0.45 -0.41 -0.41 -0.37 -0.33 -0.32 -0.30 -0.28 -0.24 -0.23 -0.20 -0.19 -0.15 -0.15 -0.12 -0.09 -0.04 -0.01 0.00 0.02 0.05 0.11 0.14 0.19 0.23 0.31 0.44 0.52 0.63 0.69 0.75 0.84 1.22 1.19 1.13 1.20 1.27 1.36 1.40 1.56 1.65 1.88 1.99 2.11 2.33 2.54 2.89 3.15 3.35 4.08 4.99 5.38 5.05 5.54 6.44 6.66 10.40 8.75 8.47 9.10 8.62 16.96 14.69 16.88 19.24 25.51 29.41 42.32 31.65 33.96 25.48"
127            sensitivity="-37.0" max_spl="132.5" min_spl="28.5" orientation="0.0 0.0 1.0" geometric_location="0.05034 0.15409 0.00794" />
128    </microphone_characteristics>
129    <!-- TODO: Fake channel mapping data, need to populate with actual data -->
130    <snd_devices>
131        <input_snd_device>
132            <input_snd_device_mic_mapping>
133                <snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_MIC">
134                    <mic_info mic_device_id="builtin_mic_1"
135                        channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
136                </snd_dev>
137                <snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_DMIC_AEC_NS">
138                    <mic_info mic_device_id="builtin_mic_1"
139                        channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
140                    <mic_info mic_device_id="builtin_mic_2"
141                        channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
142                </snd_dev>
143                <snd_dev in_snd_device="SND_DEVICE_IN_VOICE_DMIC_TMUS">
144                    <mic_info mic_device_id="builtin_mic_1"
145                        channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
146                    <mic_info mic_device_id="builtin_mic_3"
147                        channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT"/>
148                </snd_dev>
149                <snd_dev in_snd_device="SND_DEVICE_IN_VOICE_REC_MIC">
150                    <mic_info mic_device_id="builtin_mic_1"
151                        channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT"/>
152                    <mic_info mic_device_id="builtin_mic_3"
153                        channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
154                </snd_dev>
155                <snd_dev in_snd_device="SND_DEVICE_IN_THREE_MIC">
156                    <mic_info mic_device_id="builtin_mic_1"
157                        channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
158                    <mic_info mic_device_id="builtin_mic_2"
159                        channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
160                    <mic_info mic_device_id="builtin_mic_3"
161                        channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT"/>
162                </snd_dev>
163            </input_snd_device_mic_mapping>
164        </input_snd_device>
165    </snd_devices>
166</audio_platform_info>
167
168
169