Populate microphone characteristics and snd device mapping

Populate microphone characteristics for supported microphones on
platform. Map input sound devices to specific microphone ids.

Bug: 75041465
Test: try open mic and print log to check if the info is correct
Change-Id: Id4498643f449e80544151b29ef3af4efa8b5ac4b
diff --git a/audio_platform_info_tavil.xml b/audio_platform_info_tavil.xml
index 17b466e..91b2dd1 100644
--- a/audio_platform_info_tavil.xml
+++ b/audio_platform_info_tavil.xml
@@ -109,9 +109,51 @@
         <microphone valid_mask="31" device_id="builtin_mic_2" type="AUDIO_DEVICE_IN_BACK_MIC" address="back" location="AUDIO_MICROPHONE_LOCATION_MAINBODY"
             group="0" index_in_the_group="1" directionality="AUDIO_MICROPHONE_DIRECTIONALITY_OMNI" num_frequency_responses="93"
             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"
+            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"
+            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" />
+        <microphone valid_mask="31" device_id="builtin_mic_3" type="AUDIO_DEVICE_IN_BUILTIN_MIC" address="top" location="AUDIO_MICROPHONE_LOCATION_MAINBODY"
+            group="0" index_in_the_group="2" directionality="AUDIO_MICROPHONE_DIRECTIONALITY_OMNI" num_frequency_responses="93"
+            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"
             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"
             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" />
     </microphone_characteristics>
+    <!-- TODO: Fake channel mapping data, need to populate with actual data -->
+    <snd_devices>
+        <input_snd_device>
+            <input_snd_device_mic_mapping>
+                <snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_MIC">
+                    <mic_info mic_device_id="builtin_mic_1"
+                        channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
+                </snd_dev>
+                <snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_DMIC_AEC_NS">
+                    <mic_info mic_device_id="builtin_mic_1"
+                        channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
+                    <mic_info mic_device_id="builtin_mic_2"
+                        channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
+                </snd_dev>
+                <snd_dev in_snd_device="SND_DEVICE_IN_VOICE_DMIC_TMUS">
+                    <mic_info mic_device_id="builtin_mic_1"
+                        channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
+                    <mic_info mic_device_id="builtin_mic_3"
+                        channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT"/>
+                </snd_dev>
+                <snd_dev in_snd_device="SND_DEVICE_IN_VOICE_REC_MIC">
+                    <mic_info mic_device_id="builtin_mic_1"
+                        channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT"/>
+                    <mic_info mic_device_id="builtin_mic_3"
+                        channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
+                </snd_dev>
+                <snd_dev in_snd_device="SND_DEVICE_IN_THREE_MIC">
+                    <mic_info mic_device_id="builtin_mic_1"
+                        channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
+                    <mic_info mic_device_id="builtin_mic_2"
+                        channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
+                    <mic_info mic_device_id="builtin_mic_3"
+                        channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT"/>
+                </snd_dev>
+            </input_snd_device_mic_mapping>
+        </input_snd_device>
+    </snd_devices>
 </audio_platform_info>