berlin: import audio, media, rootdir from stock RRG31.Q3-23-85

This commit is contained in:
SGCMarkus 2022-03-26 17:31:45 +01:00
parent bfde6ce46d
commit 43d4cc2e5a
17 changed files with 2986 additions and 2585 deletions

View File

@ -11,7 +11,7 @@ volume index from 0 to 100.
<volume stream="AUDIO_STREAM_VOICE_CALL" deviceCategory="DEVICE_CATEGORY_HEADSET"
ref="DEFAULT_VOICE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_VOICE_CALL" deviceCategory="DEVICE_CATEGORY_SPEAKER">
<point>0,-3600</point>
<point>0,-3000</point>
<point>33,-2300</point>
<point>66,-1600</point>
<point>100,0</point>
@ -40,14 +40,14 @@ volume index from 0 to 100.
ref="DEFAULT_DEVICE_CATEGORY_EARPIECE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_RING" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
ref="SONIFICATION_CATEGORY_EXT_MEDIA_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_MUSIC" deviceCategory="DEVICE_CATEGORY_HEADSET"
ref="DEFAULT_MEDIA_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_MUSIC" deviceCategory="DEVICE_CATEGORY_SPEAKER">
<point>1,-6000</point>
<point>44,-2000</point>
<point>66,-1200</point>
<volume stream="AUDIO_STREAM_MUSIC" deviceCategory="DEVICE_CATEGORY_HEADSET">
<point>1,-5800</point>
<point>34,-3200</point>
<point>67,-1600</point>
<point>100,0</point>
</volume>
</volume>
<volume stream="AUDIO_STREAM_MUSIC" deviceCategory="DEVICE_CATEGORY_SPEAKER"
ref="DEFAULT_DEVICE_CATEGORY_SPEAKER_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_MUSIC" deviceCategory="DEVICE_CATEGORY_EARPIECE"
ref="DEFAULT_MEDIA_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_MUSIC" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
@ -90,11 +90,19 @@ volume index from 0 to 100.
<point>66,-2200</point>
<point>100,-1800</point>
</volume>
<volume stream="AUDIO_STREAM_DTMF" deviceCategory="DEVICE_CATEGORY_SPEAKER"
ref="DEFAULT_SYSTEM_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_DTMF" deviceCategory="DEVICE_CATEGORY_EARPIECE"
ref="DEFAULT_SYSTEM_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_DTMF" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
<volume stream="AUDIO_STREAM_DTMF" deviceCategory="DEVICE_CATEGORY_SPEAKER">
<point>1,-3800</point>
<point>33,-2800</point>
<point>66,-2000</point>
<point>100,-1300</point>
</volume>
<volume stream="AUDIO_STREAM_DTMF" deviceCategory="DEVICE_CATEGORY_EARPIECE">
<point>1,-2700</point>
<point>33,-1600</point>
<point>66,-700</point>
<point>100,0</point>
</volume>
<volume stream="AUDIO_STREAM_DTMF" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
ref="DEFAULT_DEVICE_CATEGORY_EXT_MEDIA_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_TTS" deviceCategory="DEVICE_CATEGORY_HEADSET"
ref="SILENT_VOLUME_CURVE"/>

View File

@ -20,24 +20,24 @@
</reference>
<reference name="SONIFICATION_CATEGORY_SPEAKER_VOLUME_CURVE">
<!-- Speaker Sonification reference Volume Curve -->
<point>1,-4000</point>
<point>33,-2870</point>
<point>66,-1450</point>
<point>1,-3900</point>
<point>33,-2600</point>
<point>66,-1300</point>
<point>100,0</point>
</reference>
<reference name="NOTIFICATION_CATEGORY_SPEAKER_VOLUME_CURVE">
<!-- Speaker Sonification reference Volume Curve -->
<point>1,-6000</point>
<point>33,-4000</point>
<point>66,-2000</point>
<point>1,-4000</point>
<point>70,-1600</point>
<point>84,-800</point>
<point>100,0</point>
</reference>
<reference name="DEFAULT_SYSTEM_VOLUME_CURVE">
<!-- Default System reference Volume Curve -->
<point>1,-3800</point>
<point>33,-2800</point>
<point>66,-1800</point>
<point>100,-800</point>
<point>1,-3200</point>
<point>33,-2700</point>
<point>66,-2200</point>
<point>100,-1700</point>
</reference>
<reference name="DEFAULT_MEDIA_VOLUME_CURVE">
<!-- Default Media reference Volume Curve -->
@ -48,9 +48,9 @@
</reference>
<reference name="DEFAULT_VOICE_VOLUME_CURVE">
<!-- Default Voice reference Volume Curve -->
<point>0,-2400</point>
<point>33,-1600</point>
<point>66,-800</point>
<point>0,-2100</point>
<point>33,-1400</point>
<point>66,-700</point>
<point>100,0</point>
</reference>
<reference name="DEFAULT_DEVICE_CATEGORY_HEADSET_VOLUME_CURVE">
@ -62,9 +62,12 @@
</reference>
<reference name="DEFAULT_DEVICE_CATEGORY_SPEAKER_VOLUME_CURVE">
<!-- Default is Speaker Media Volume Curve -->
<point>1,-6000</point>
<point>33,-4000</point>
<point>66,-2000</point>
<point>1,-5000</point>
<point>30,-3300</point>
<point>43,-2000</point>
<point>65,-1200</point>
<point>85,-600</point>
<point>93,-300</point>
<point>100,0</point>
</reference>
<reference name="DEFAULT_DEVICE_CATEGORY_EARPIECE_VOLUME_CURVE">

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Copyright (c) 2018-2020, The Linux Foundation. All rights reserved. -->
<!-- Copyright (c) 2014, 2016-2020, The Linux Foundation. All rights reserved. -->
<!-- -->
<!-- Redistribution and use in source and binary forms, with or without -->
<!-- modification, are permitted provided that the following conditions are -->
@ -32,11 +32,39 @@
<device name="AUDIO_DEVICE_IN_BUILTIN_MIC" interface="TX_CDC_DMA_TX_3" codec_type="internal"/>
<device name="AUDIO_DEVICE_IN_BACK_MIC" interface="TX_CDC_DMA_TX_3" codec_type="internal"/>
</interface_names>
<module_ids>
<aec>
<device name="SND_DEVICE_IN_SPEAKER_TMIC_AEC_NS" module_id="0x10F35" instance_id="0x0" param_id="0x10EAF" param_value="0x01"/>
<device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC_NS_BROADSIDE" module_id="0x10F34" instance_id="0x0" param_id="0x10EAF" param_value="0x01"/>
<device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC_NS" module_id="0x10F33" instance_id="0x0" param_id="0x10EAF" param_value="0x01"/>
<device name="SND_DEVICE_IN_SPEAKER_MIC_AEC_NS" module_id="0x10F31" instance_id="0x0" param_id="0x10EAF" param_value="0x01"/>
<device name="SND_DEVICE_IN_HANDSET_DMIC_AEC_NS" module_id="0x10F33" instance_id="0x0" param_id="0x10EAF" param_value="0x01"/>
<device name="SND_DEVICE_IN_HANDSET_MIC_AEC_NS" module_id="0x10F31" instance_id="0x0" param_id="0x10EAF" param_value="0x01"/>
<device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC_NS_SB" module_id="0x10F39" instance_id="0x8000" param_id="0x10EAF" param_value="0x01"/>
<device name="SND_DEVICE_IN_SPEAKER_MIC_AEC_NS_SB" module_id="0x10F38" instance_id="0x8000" param_id="0x10EAF" param_value="0x01"/>
<device name="SND_DEVICE_IN_HANDSET_DMIC_AEC_NS_SB" module_id="0x10F39" instance_id="0x8000" param_id="0x10EAF" param_value="0x01"/>
<device name="SND_DEVICE_IN_HANDSET_MIC_AEC_NS_SB" module_id="0x10F38" instance_id="0x8000" param_id="0x10EAF" param_value="0x01"/>
</aec>
<ns>
<device name="SND_DEVICE_IN_SPEAKER_TMIC_AEC_NS" module_id="0x10F35" instance_id="0x0" param_id="0x10EAF" param_value="0x02"/>
<device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC_NS_BROADSIDE" module_id="0x10F34" instance_id="0x0" param_id="0x10EAF" param_value="0x02"/>
<device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC_NS" module_id="0x10F33" instance_id="0x0" param_id="0x10EAF" param_value="0x02"/>
<device name="SND_DEVICE_IN_SPEAKER_MIC_AEC_NS" module_id="0x10F31" instance_id="0x0" param_id="0x10EAF" param_value="0x02"/>
<device name="SND_DEVICE_IN_HANDSET_DMIC_AEC_NS" module_id="0x10F33" instance_id="0x0" param_id="0x10EAF" param_value="0x02"/>
<device name="SND_DEVICE_IN_HANDSET_MIC_AEC_NS" module_id="0x10F31" instance_id="0x0" param_id="0x10EAF" param_value="0x02"/>
<device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC_NS_SB" module_id="0x10F39" instance_id="0x8000" param_id="0x10EAF" param_value="0x02"/>
<device name="SND_DEVICE_IN_SPEAKER_MIC_AEC_NS_SB" module_id="0x10F38" instance_id="0x8000" param_id="0x10EAF" param_value="0x02"/>
<device name="SND_DEVICE_IN_HANDSET_DMIC_AEC_NS_SB" module_id="0x10F39" instance_id="0x8000" param_id="0x10EAF" param_value="0x02"/>
<device name="SND_DEVICE_IN_HANDSET_MIC_AEC_NS_SB" module_id="0x10F38" instance_id="0x8000" param_id="0x10EAF" param_value="0x02"/>
</ns>
</module_ids>
<pcm_ids>
<usecase name="USECASE_AUDIO_PLAYBACK_LOW_LATENCY" type="out" id="9"/>
<usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD" type="out" id="7"/>
<usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD2" type="out" id="11"/>
<usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD3" type="out" id="40"/>
<usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD3" type="out" id="43"/>
<usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD4" type="out" id="24"/>
<usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD5" type="out" id="25"/>
<usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD6" type="out" id="26"/>
@ -49,13 +77,13 @@
<usecase name="USECASE_VOWLAN_CALL" type="in" id="-1"/>
<usecase name="USECASE_VOWLAN_CALL" type="out" id="-1"/>
<usecase name="USECASE_AUDIO_PLAYBACK_FM" type="out" id="30"/>
<usecase name="USECASE_AUDIO_PLAYBACK_FM" type="in" id="37"/>
<usecase name="USECASE_AUDIO_PLAYBACK_FM" type="in" id="38"/>
<usecase name="USECASE_AUDIO_SPKR_CALIB_RX" type="out" id="30"/>
<usecase name="USECASE_AUDIO_SPKR_CALIB_TX" type="in" id="32"/>
<usecase name="USECASE_AUDIO_SPKR_CALIB_TX" type="in" id="45"/>
<usecase name="USECASE_AUDIO_PLAYBACK_AFE_PROXY" type="out" id="5"/>
<usecase name="USECASE_AUDIO_RECORD_AFE_PROXY" type="in" id="6"/>
<usecase name="USECASE_AUDIO_RECORD_AFE_PROXY2" type="in" id="42"/>
<usecase name="USECASE_AUDIO_RECORD_LOW_LATENCY" type="in" id="13" />
<usecase name="USECASE_AUDIO_RECORD_VOIP_LOW_LATENCY" type="in" id="13" />
<usecase name="USECASE_AUDIO_PLAYBACK_ULL" type="out" id="13" />
<usecase name="USECASE_AUDIO_PLAYBACK_SILENCE" type="out" id="23" />
<usecase name="USECASE_AUDIO_PLAYBACK_VOIP" type="out" id="12" />
@ -64,11 +92,11 @@
<usecase name="USECASE_AUDIO_HFP_SCO_WB" type="in" id="12" />
<usecase name="USECASE_AUDIO_PLAYBACK_MMAP" type="out" id="29" />
<usecase name="USECASE_AUDIO_RECORD_MMAP" type="in" id="29" />
<usecase name="USECASE_AUDIO_A2DP_ABR_FEEDBACK" type="in" id="35" />
<usecase name="USECASE_AUDIO_A2DP_ABR_FEEDBACK" type="out" id="35" />
<usecase name="USECASE_AUDIO_A2DP_ABR_FEEDBACK" type="in" id="36" />
<usecase name="USECASE_AUDIO_A2DP_ABR_FEEDBACK" type="out" id="36" />
<usecase name="USECASE_INCALL_MUSIC_UPLINK" type="out" id="23" />
<usecase name="USECASE_INCALL_MUSIC_UPLINK2" type="out" id="23" />
<usecase name="USECASE_AUDIO_RECORD_COMPRESS2" type="in" id="36" />
<usecase name="USECASE_AUDIO_RECORD_COMPRESS2" type="in" id="37" />
<usecase name="USECASE_INCALL_REC_UPLINK" type="in" id="23" />
<usecase name="USECASE_INCALL_REC_DOWNLINK" type="in" id="23" />
<usecase name="USECASE_INCALL_REC_UPLINK_AND_DOWNLINK" type="in" id="23" />
@ -76,34 +104,36 @@
<config_params>
<!-- In the below value string, the value indicates default mono -->
<!-- speaker. It can be set to either left or right -->
<param key="mono_speaker" value="right"/>
<param key="spkr_2_tz_name" value="wsatz.14"/>
<param key="mono_speaker" value="left"/>
<param key="true_32_bit" value="true"/>
<param key="hifi_filter" value="false"/>
<param key="native_audio_mode" value="multiple_mix_dsp"/>
<param key="hfp_pcm_dev_id" value="38"/>
<param key="input_mic_max_count" value="2"/>
<param key="hfp_pcm_dev_id" value="39"/>
<param key="input_mic_max_count" value="3"/>
</config_params>
<gain_db_to_level_mapping>
<gain_level_map db="-59" level="5"/>
<gain_level_map db="-17.4" level="4"/>
<gain_level_map db="-13.8" level="3"/>
<gain_level_map db="-10.2" level="2"/>
<gain_level_map db="0" level="1"/>
</gain_db_to_level_mapping>
<acdb_ids>
<!-- Output devices -->
<device name="SND_DEVICE_OUT_HANDSET" acdb_id="7" />
<device name="SND_DEVICE_OUT_VOICE_HANDSET" acdb_id="7" />
<device name="SND_DEVICE_OUT_VOICE_HANDSET_TMUS" acdb_id="7" />
<device name="SND_DEVICE_OUT_VOICE_TTY_HCO_HANDSET" acdb_id="7" />
<device name="SND_DEVICE_OUT_CQA_HANDSET" acdb_id="126" />
<device name="SND_DEVICE_OUT_HEADPHONES" acdb_id="9" />
<device name="SND_DEVICE_OUT_USB_HEADSET" acdb_id="45" />
<device name="SND_DEVICE_OUT_USB_HEADPHONES" acdb_id="45" />
<device name="SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES" acdb_id="9" />
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_HEADPHONES" acdb_id="9" />
<device name="SND_DEVICE_OUT_SPEAKER" acdb_id="14" />
<device name="SND_DEVICE_OUT_SPEAKER_PROTECTED" acdb_id="14" />
<device name="SND_DEVICE_OUT_SPEAKER_REVERSE" acdb_id="14" />
<device name="SND_DEVICE_OUT_SPEAKER_SAFE" acdb_id="14" />
<device name="SND_DEVICE_OUT_CQA_SPEAKER" acdb_id="124" />
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_PROTECTED" acdb_id="15" />
<device name="SND_DEVICE_OUT_SPEAKER_AND_HDMI" acdb_id="18" />
<device name="SND_DEVICE_OUT_HDMI" acdb_id="19" />
<device name="SND_DEVICE_OUT_DISPLAY_PORT" acdb_id="19" />
<device name="SND_DEVICE_OUT_VOICE_SPEAKER" acdb_id="15" />
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_HFP" acdb_id="15" />
<device name="SND_DEVICE_OUT_LINE" acdb_id="77" />
<device name="SND_DEVICE_OUT_SPEAKER_AND_LINE" acdb_id="77" />
<device name="SND_DEVICE_OUT_VOICE_LINE" acdb_id="78" />
<device name="SND_DEVICE_OUT_VOLTE_NB_ANC_HANDSET" acdb_id="200" />
<device name="SND_DEVICE_OUT_VOLTE_NB_HANDSET_TMUS" acdb_id="200" />
@ -116,14 +146,16 @@
<!-- Input devices -->
<device name="SND_DEVICE_IN_CAPTURE_VI_FEEDBACK" acdb_id="102" />
<device name="SND_DEVICE_IN_HANDSET_MIC_AEC" acdb_id="4" />
<device name="SND_DEVICE_IN_HANDSET_MIC_TOP" acdb_id="4" />
<device name="SND_DEVICE_IN_HANDSET_MIC_AEC_NS" acdb_id="4" />
<device name="SND_DEVICE_IN_HANDSET_MIC_NS" acdb_id="4" />
<device name="SND_DEVICE_IN_HANDSET_MIC_NN" acdb_id="318" />
<device name="SND_DEVICE_IN_HANDSET_MIC_TOP" acdb_id="88" />
<device name="SND_DEVICE_IN_HANDSET_MIC_NN_TOP" acdb_id="88" />
<device name="SND_DEVICE_IN_SPEAKER_DMIC" acdb_id="35" />
<device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC" acdb_id="35" />
<device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC_NS" acdb_id="35" />
<device name="SND_DEVICE_IN_SPEAKER_DMIC_NS" acdb_id="35" />
<device name="SND_DEVICE_IN_HANDSET_DMIC_STEREO" acdb_id="35" />
<device name="SND_DEVICE_IN_HANDSET_DMIC_STEREO" acdb_id="34" />
<device name="SND_DEVICE_IN_VOICE_REC_DMIC_FLUENCE" acdb_id="35" />
<device name="SND_DEVICE_IN_VOICE_SPEAKER_DMIC" acdb_id="35" />
<device name="SND_DEVICE_IN_VOICE_TTY_VCO_HANDSET_MIC" acdb_id="41" />
@ -131,18 +163,12 @@
<device name="SND_DEVICE_IN_SPEAKER_MIC_AEC" acdb_id="114" />
<device name="SND_DEVICE_IN_SPEAKER_MIC_AEC_NS" acdb_id="114" />
<device name="SND_DEVICE_IN_SPEAKER_MIC_NS" acdb_id="114" />
<device name="SND_DEVICE_IN_AUX_MIC_AEC_NS" acdb_id="114" />
<device name="SND_DEVICE_IN_VOICE_HDMI_MIC" acdb_id="144" />
<device name="SND_DEVICE_IN_VOICE_HDMI_MIC_MED_EC" acdb_id="144" />
<device name="SND_DEVICE_IN_VOICE_HDMI_MIC_HIGH_EC" acdb_id="144" />
<device name="SND_DEVICE_IN_CAMCORDER_AUDIO_ZOOM_HDMI" acdb_id="144" />
<device name="SND_DEVICE_IN_UNPROCESSED_MIC" acdb_id="11" />
<device name="SND_DEVICE_IN_VOICE_REC_DMIC_FLUENCE" acdb_id="35" />
<device name="SND_DEVICE_IN_VOICE_DMIC_TMUS" acdb_id="41" />
<device name="SND_DEVICE_IN_HDMI_MIC" acdb_id="11" />
<device name="SND_DEVICE_IN_UNPROCESSED_STEREO_MIC" acdb_id="43" />
<device name="SND_DEVICE_IN_HEADSET_MIC" acdb_id="8" />
<device name="SND_DEVICE_IN_HEADSET_MIC_AEC" acdb_id="47" />
<device name="SND_DEVICE_IN_CAMCORDER_MIC" acdb_id="61" />
<device name="SND_DEVICE_IN_VOICE_REC_MIC" acdb_id="62" />
<device name="SND_DEVICE_IN_VOICE_REC_MIC_AEC" acdb_id="62" />
<device name="SND_DEVICE_IN_VOICE_REC_MIC_AEC_NS" acdb_id="62" />
<device name="SND_DEVICE_IN_VOICE_REC_MIC_NS" acdb_id="62" />
@ -156,26 +182,38 @@
<device name="SND_DEVICE_IN_UNPROCESSED_STEREO_MIC" acdb_id="125" />
<device name="SND_DEVICE_IN_UNPROCESSED_USB_HEADSET_MIC" acdb_id="125" />
<device name="SND_DEVICE_IN_VOICE_REC_EXTERNAL_MIC" acdb_id="147" />
<device name="SND_DEVICE_IN_VOICE_REC_EXTERNAL_MIC_NN" acdb_id="319" />
<device name="SND_DEVICE_IN_USB_HEADSET_MIC_AEC" acdb_id="244" />
<device name="SND_DEVICE_IN_GAME_HANDSET_MIC" acdb_id="4" />
<device name="SND_DEVICE_IN_GAME_SPEAKER_MIC" acdb_id="114" />
<device name="SND_DEVICE_IN_MIC1" acdb_id="125" />
<device name="SND_DEVICE_IN_MIC2" acdb_id="125" />
<device name="SND_DEVICE_IN_MIC1" acdb_id="60" />
<device name="SND_DEVICE_IN_MIC2" acdb_id="60" />
<device name="SND_DEVICE_IN_MIC3" acdb_id="60" />
<device name="SND_DEVICE_IN_HDMI_MIC" acdb_id="4" />
<device name="SND_DEVICE_IN_BT_SCO_MIC_NREC" acdb_id="122" />
<device name="SND_DEVICE_IN_BT_SCO_MIC_WB_NREC" acdb_id="123" />
<device name="SND_DEVICE_IN_HANDSET_MIC_ELEVOC" acdb_id="318" />
<device name="SND_DEVICE_IN_VOICE_REC_EXTERNAL_MIC_ELEVOC" acdb_id="319" />
<device name="SND_DEVICE_IN_USB_HEADSET_MIC_ELEVOC" acdb_id="320" />
<device name="SND_DEVICE_IN_HANDSET_DMIC_ELEVOC" acdb_id="315" />
<device name="SND_DEVICE_IN_HEADSET_MIC_ELEVOC" acdb_id="305" />
<device name="SND_DEVICE_IN_SPEAKER_MIC_ELEVOC" acdb_id="304" />
<device name="SND_DEVICE_IN_GAME_SPEAKER_MIC_ELEVOC" acdb_id="304" />
<device name="SND_DEVICE_IN_AUX_MIC_ELEVOC" acdb_id="316" />
<device name="SND_DEVICE_IN_USB_HEADSET_MIC_AEC_ELEVOC" acdb_id="306" />
<device name="SND_DEVICE_IN_VOICE_HDMI_MIC_ELEVOC" acdb_id="317" />
<device name="SND_DEVICE_IN_VOICE_HDMI_MIC_MED_ELEVOC" acdb_id="326" />
<device name="SND_DEVICE_IN_VOICE_HDMI_MIC_HIGH_ELEVOC" acdb_id="327" />
<device name="SND_DEVICE_IN_CAMCORDER_LANDSCAPE" acdb_id="61" />
<device name="SND_DEVICE_IN_CAMCORDER_INVERT_LANDSCAPE" acdb_id="61" />
<device name="SND_DEVICE_IN_CAMCORDER_PORTRAIT" acdb_id="61" />
<device name="SND_DEVICE_IN_CAMCORDER_SELFIE_LANDSCAPE" acdb_id="61" />
<device name="SND_DEVICE_IN_CAMCORDER_SELFIE_INVERT_LANDSCAPE" acdb_id="61" />
<device name="SND_DEVICE_IN_VOICE_REC_DMIC_STEREO" acdb_id="35" />
<device name="SND_DEVICE_IN_CAPTURE_FM" acdb_id="90" />
<device name="SND_DEVICE_IN_VOICE_SPEAKER_MIC_NN" acdb_id="301" />
<device name="SND_DEVICE_IN_VOICE_HEADSET_MIC_NN" acdb_id="8" />
<device name="SND_DEVICE_IN_VOICE_USB_HEADSET_MIC_NN" acdb_id="303" />
<device name="SND_DEVICE_IN_SPEAKER_MIC_NN" acdb_id="304" />
<device name="SND_DEVICE_IN_SPEAKER_MIC_AEC_NN" acdb_id="304" />
<device name="SND_DEVICE_IN_SPEAKER_MIC_NS_NN" acdb_id="304" />
<device name="SND_DEVICE_IN_SPEAKER_MIC_AEC_NS_NN" acdb_id="304" />
<device name="SND_DEVICE_IN_HEADSET_MIC_NN" acdb_id="319" />
<device name="SND_DEVICE_IN_HEADSET_MIC_FLUENCE_NN" acdb_id="305" />
<device name="SND_DEVICE_IN_SPEAKER_MIC_GAME" acdb_id="114" />
<device name="SND_DEVICE_IN_SPEAKER_MIC_GAME_NN" acdb_id="304" />
<device name="SND_DEVICE_IN_AUX_MIC_AEC_NS" acdb_id="316" />
<device name="SND_DEVICE_IN_AUX_MIC_AEC_NS_NN" acdb_id="316" />
<device name="SND_DEVICE_IN_USB_HEADSET_MIC_NN" acdb_id="306" />
<device name="SND_DEVICE_IN_USB_HEADSET_MIC_AEC_NN" acdb_id="306" />
</acdb_ids>
<backend_names>
<device name="SND_DEVICE_OUT_HEADPHONES" backend="headphones" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOLTE_NB_HEADPHONES" backend="headphones" interface="RX_CDC_DMA_RX_0"/>
@ -187,107 +225,84 @@
<device name="SND_DEVICE_OUT_BT_A2DP" backend="bt-a2dp" interface="SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_LINE" backend="headphones" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_ANC_HEADSET" backend="headphones" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES" backend="speaker-and-headphones" interface="TERT_MI2S_RX-and-RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_HEADPHONES" backend="speaker-and-headphones" interface="TERT_MI2S_RX-and-RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES_HIFI_FILTER" backend="speaker-and-headphones" interface="TERT_MI2S_RX-and-RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_LINE" backend="speaker-and-headphones" interface="TERT_MI2S_RX-and-RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_LINE" backend="speaker-and-headphones" interface="TERT_MI2S_RX-and-RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_ANC_HEADSET" backend="speaker-and-headphones" interface="TERT_MI2S_RX-and-RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES" backend="speaker-and-headphones" interface="SEN_MI2S_RX-and-RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES_HIFI_FILTER" backend="speaker-and-headphones" interface="SEN_MI2S_RX-and-RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_LINE" backend="speaker-and-headphones" interface="SEN_MI2S_RX-and-RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_ANC_HEADSET" backend="speaker-and-headphones" interface="SEN_MI2S_RX-and-RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_HEADPHONES" backend="headphones" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_HEADSET" backend="headset" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOLTE_NB_HEADSET" backend="headset" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_ANC_HEADSET" backend="headphones" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_ANC_HEADSET" backend="headset" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_LINE" backend="headphones" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_FULL_HEADPHONES" backend="headphones" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_FULL_HEADSET" backend="headset" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_VCO_HEADPHONES" backend="headphones" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_VCO_HEADSET" backend="headset" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_HANDSET" backend="handset" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_CQA_HANDSET" backend="handset" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOLTE_NB_HANDSET_TMUS" backend="handset" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOLTE_NB_ANC_HANDSET" backend="handset" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER" interface="TERT_MI2S_RX"/>
<device name="SND_DEVICE_OUT_CQA_SPEAKER" interface="TERT_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOLTE_NB_SPEAKER" interface="TERT_MI2S_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_EXTERNAL_1" interface="TERT_MI2S_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_EXTERNAL_2" interface="TERT_MI2S_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_REVERSE" interface="TERT_MI2S_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE" interface="TERT_MI2S_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_VBAT" interface="TERT_MI2S_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES_EXTERNAL_1" interface="TERT_MI2S_RX-and-RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES_EXTERNAL_2" interface="TERT_MI2S_RX-and-RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_HANDSET" backend="handset" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_ANC_HANDSET" backend="handset" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOLTE_NB_HANDSET" backend="handset" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOLTE_NB_HAC_HANDSET" backend="handset" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_HANDSET_TMUS" backend="handset" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_HAC_HANDSET" backend="handset" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_IN_HANDSET_GENERIC_QMIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER" interface="TERT_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_STEREO" interface="TERT_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_VBAT" interface="TERT_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_2" interface="TERT_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_2_VBAT" interface="TERT_MI2S_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_HDMI" interface="TERT_MI2S_RX-and-HDMI"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_DISPLAY_PORT" interface="TERT_MI2S_RX-and-DISPLAY_PORT"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_BT_A2DP" interface="TERT_MI2S_RX-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_A2DP" interface="TERT_MI2S_RX-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_HCO_HANDSET" backend="handset" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_HANDSET" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_CQA_HANDSET" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOLTE_NB_HANDSET_TMUS" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOLTE_NB_ANC_HANDSET" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_HAC_HANDSET" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER" backend="speaker" interface="SEN_MI2S_RX"/>
<device name="SND_DEVICE_OUT_CQA_SPEAKER" backend="speaker" interface="SEN_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOLTE_NB_SPEAKER" backend="speaker" interface="SEN_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER" backend="speaker" interface="SEN_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_HANDSET" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_ANC_HANDSET" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOLTE_NB_HANDSET" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOLTE_NB_HAC_HANDSET" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_HANDSET_TMUS" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_BT_A2DP" interface="SEN_MI2S_RX-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_HCO_HANDSET" backend="headset" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_ANC_FB_HEADSET" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_ANC_FB_HEADSET" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_ANC_HANDSET" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_PROTECTED" interface="TERT_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_PROTECTED" interface="TERT_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_2_PROTECTED" interface="TERT_MI2S_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_PROTECTED_VBAT" interface="TERT_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_PROTECTED_VBAT" interface="TERT_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_2_PROTECTED_VBAT" interface="TERT_MI2S_RX"/>
<device name="SND_DEVICE_IN_HANDSET_MIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_MIC_NN" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_MIC_TOP" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_GAME_HANDSET_MIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_GAME_SPEAKER_MIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_MIC_NN_TOP" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_MIC_EXTERNAL" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_MIC_AEC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_MIC_NS" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_MIC_AEC_NS" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_MIC_ELEVOC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_DMIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_DMIC_AEC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_DMIC_NS" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_DMIC_AEC_NS" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_DMIC_ELEVOC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_DMIC_STEREO" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_MIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_MIC_NN" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_MIC_AEC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_MIC_AEC_NN" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_MIC_NS" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_MIC_NS_NN" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_MIC_AEC_NS" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_AUX_MIC_AEC_NS" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_VOICE_HDMI_MIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_VOICE_HDMI_MIC_MED_EC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_VOICE_HDMI_MIC_HIGH_EC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_VOICE_HDMI_MIC_ELEVOC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_VOICE_HDMI_MIC_MED_ELEVOC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_VOICE_HDMI_MIC_HIGH_ELEVOC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_MIC_ELEVOC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_AUX_MIC_ELEVOC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_GAME_SPEAKER_MIC_ELEVOC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_MIC_AEC_NS_NN" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_DMIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_DMIC_NS" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC_NS" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_DMIC_STEREO" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_MIC_GAME" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_MIC_GAME_NN" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_AUX_MIC_AEC_NS" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_AUX_MIC_AEC_NS_NN" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HEADSET_MIC" backend="headset-mic" interface="TX_CDC_DMA_TX_4"/>
<device name="SND_DEVICE_IN_HEADSET_MIC_NN" backend="headset-mic" interface="TX_CDC_DMA_TX_4"/>
<device name="SND_DEVICE_IN_HEADSET_MIC_FLUENCE" backend="headset-mic" interface="TX_CDC_DMA_TX_4"/>
<device name="SND_DEVICE_IN_HEADSET_MIC_FLUENCE_NN" backend="headset-mic" interface="TX_CDC_DMA_TX_4"/>
<device name="SND_DEVICE_IN_VOICE_HEADSET_MIC" backend="headset-mic" interface="TX_CDC_DMA_TX_4"/>
<device name="SND_DEVICE_IN_VOICE_HEADSET_MIC_NN" backend="headset-mic" interface="TX_CDC_DMA_TX_4"/>
<device name="SND_DEVICE_IN_VOICE_TTY_FULL_HEADSET_MIC" backend="headset-mic" interface="TX_CDC_DMA_TX_4"/>
<device name="SND_DEVICE_IN_VOICE_TTY_HCO_HEADSET_MIC" backend="headset-mic" interface="TX_CDC_DMA_TX_4"/>
<device name="SND_DEVICE_IN_UNPROCESSED_HEADSET_MIC" backend="headset-mic" interface="TX_CDC_DMA_TX_4"/>
<device name="SND_DEVICE_IN_VOICE_REC_HEADSET_MIC" backend="headset-mic" interface="TX_CDC_DMA_TX_4"/>
<device name="SND_DEVICE_IN_VOICE_REC_EXTERNAL_MIC" backend="headset-mic" interface="TX_CDC_DMA_TX_4"/>
<device name="SND_DEVICE_IN_VOICE_REC_EXTERNAL_MIC_ELEVOC" backend="headset-mic" interface="TX_CDC_DMA_TX_4"/>
<device name="SND_DEVICE_IN_VOICE_REC_EXTERNAL_MIC_NN" backend="headset-mic" interface="TX_CDC_DMA_TX_4"/>
<device name="SND_DEVICE_IN_HEADSET_MIC_AEC" backend="headset-mic" interface="TX_CDC_DMA_TX_4"/>
<device name="SND_DEVICE_IN_HEADSET_MIC_ELEVOC" backend="headset-mic" interface="TX_CDC_DMA_TX_4"/>
<device name="SND_DEVICE_IN_HEADSET_MIC_AEC_NN" backend="headset-mic" interface="TX_CDC_DMA_TX_4"/>
<device name="SND_DEVICE_IN_VOICE_SPEAKER_MIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_VOICE_SPEAKER_MIC_NN" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HDMI_MIC" interface="HDMI"/>
<device name="SND_DEVICE_IN_BT_SCO_MIC" interface="SLIMBUS_7_TX"/>
<device name="SND_DEVICE_IN_BT_SCO_MIC_NREC" interface="SLIMBUS_7_TX"/>
@ -297,13 +312,13 @@
<device name="SND_DEVICE_IN_CAMCORDER_BF" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_CAMCORDER_BF_REVERSE" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_CAMCORDER_AUDIO_ZOOM" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_CAMCORDER_AUDIO_ZOOM_SPEAKER" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_CAMCORDER_AUDIO_ZOOM_HDMI" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_VOICE_DMIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_VOICE_DMIC_TMUS" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_VOICE_SPEAKER_DMIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_VOICE_SPEAKER_QMIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_VOICE_TTY_FULL_HEADSET_MIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_VOICE_TTY_VCO_HANDSET_MIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_VOICE_TTY_HCO_HEADSET_MIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_VOICE_REC_MIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_VOICE_REC_MIC_NS" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_VOICE_REC_MIC_AEC" interface="TX_CDC_DMA_TX_3"/>
@ -311,24 +326,18 @@
<device name="SND_DEVICE_IN_VOICE_REC_DMIC_STEREO" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_VOICE_REC_DMIC_FLUENCE" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_AANC_HANDSET_MIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_QUAD_MIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_STEREO_DMIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_STEREO_DMIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_CAPTURE_VI_FEEDBACK" interface="TERT_MI2S_TX"/>
<device name="SND_DEVICE_IN_CAPTURE_VI_FEEDBACK_MONO_1" interface="TERT_MI2S_TX"/>
<device name="SND_DEVICE_IN_CAPTURE_VI_FEEDBACK_MONO_2" interface="TERT_MI2S_TX"/>
<device name="SND_DEVICE_IN_CAPTURE_VI_FEEDBACK" interface="SEN_MI2S_TX"/>
<device name="SND_DEVICE_IN_CAPTURE_VI_FEEDBACK_MONO_1" interface="SEN_MI2S_TX"/>
<device name="SND_DEVICE_IN_CAPTURE_VI_FEEDBACK_MONO_2" interface="SEN_MI2S_TX"/>
<device name="SND_DEVICE_IN_VOICE_SPEAKER_DMIC_BROADSIDE" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_DMIC_BROADSIDE" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC_BROADSIDE" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_DMIC_NS_BROADSIDE" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC_NS_BROADSIDE" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_VOICE_FLUENCE_DMIC_AANC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_QMIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_QMIC_AEC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_QMIC_NS" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_QMIC_AEC_NS" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_THREE_MIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_VOICE_HEARING_AID" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_TMIC_FLUENCE_PRO" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_TMIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_TMIC_AEC" interface="TX_CDC_DMA_TX_3"/>
@ -340,15 +349,11 @@
<device name="SND_DEVICE_IN_UNPROCESSED_THREE_MIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_UNPROCESSED_QUAD_MIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_UNPROCESSED_HEADSET_MIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_AND_VOICE_HEADPHONES" backend="speaker-and-headphones" interface="TERT_MI2S_RX-and-RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_AND_VOICE_ANC_HEADSET" backend="speaker-and-headphones" interface="TERT_MI2S_RX-and-RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_BT_SCO" backend="speaker-and-bt-sco" interface="TERT_MI2S_RX-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_SCO" backend="speaker-and-bt-sco" interface="TERT_MI2S_RX-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_BT_SCO_WB" backend="speaker-and-bt-sco-wb" interface="TERT_MI2S_RX-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_BT_SCO_SWB" backend="speaker-and-bt-sco-swb" interface="TERT_MI2S_RX-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_SCO_WB" backend="speaker-and-bt-sco-wb" interface="TERT_MI2S_RX-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_USB_HEADSET" backend="speaker-and-usb-headset" interface="TERT_MI2S_RX-and-USB_AUDIO_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_USB_HEADSET" backend="speaker-and-usb-headset" interface="TERT_MI2S_RX-and-USB_AUDIO_RX"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_AND_VOICE_HEADPHONES" backend="speaker-and-headphones" interface="SEN_MI2S_RX-and-RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_AND_VOICE_ANC_HEADSET" backend="speaker-and-headphones" interface="SEN_MI2S_RX-and-RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_BT_SCO" backend="speaker-and-bt-sco" interface="SEN_MI2S_RX-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_BT_SCO_WB" backend="speaker-and-bt-sco-wb" interface="SEN_MI2S_RX-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_USB_HEADSET" backend="speaker-and-usb-headset" interface="SEN_MI2S_RX-and-USB_AUDIO_RX"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_FULL_USB" backend="usb-headset" interface="USB_AUDIO_RX"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_VCO_USB" backend="usb-headset" interface="USB_AUDIO_RX"/>
<device name="SND_DEVICE_OUT_USB_HEADSET" backend="usb-headset" interface="USB_AUDIO_RX"/>
@ -359,23 +364,17 @@
<device name="SND_DEVICE_IN_VOICE_TTY_FULL_USB_MIC" backend="usb-headset-mic" interface="USB_AUDIO_TX"/>
<device name="SND_DEVICE_IN_VOICE_TTY_HCO_USB_MIC" backend="usb-headset-mic" interface="USB_AUDIO_TX"/>
<device name="SND_DEVICE_IN_USB_HEADSET_MIC" backend="usb-headset-mic" interface="USB_AUDIO_TX"/>
<device name="SND_DEVICE_IN_USB_HEADSET_MIC_NN" backend="usb-headset-mic" interface="USB_AUDIO_TX"/>
<device name="SND_DEVICE_IN_USB_HEADSET_MIC_AEC" backend="usb-headset-mic" interface="USB_AUDIO_TX"/>
<device name="SND_DEVICE_IN_USB_HEADSET_MIC_AEC_NN" backend="usb-headset-mic" interface="USB_AUDIO_TX"/>
<device name="SND_DEVICE_IN_VOICE_USB_HEADSET_MIC" backend="usb-headset-mic" interface="USB_AUDIO_TX"/>
<device name="SND_DEVICE_IN_USB_HEADSET_MIC_ELEVOC" backend="usb-headset-mic" interface="USB_AUDIO_TX"/>
<device name="SND_DEVICE_IN_USB_HEADSET_MIC_AEC_ELEVOC" backend="usb-headset-mic" interface="USB_AUDIO_TX"/>
<device name="SND_DEVICE_IN_VOICE_USB_HEADSET_MIC_NN" backend="usb-headset-mic" interface="USB_AUDIO_TX"/>
<device name="SND_DEVICE_IN_UNPROCESSED_USB_HEADSET_MIC" backend="usb-headset-mic" interface="USB_AUDIO_TX"/>
<device name="SND_DEVICE_IN_VOICE_RECOG_USB_HEADSET_MIC" backend="usb-headset-mic" interface="USB_AUDIO_TX"/>
<device name="SND_DEVICE_IN_MIC1" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_MIC2" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_MIC3" interface="TX_CDC_DMA_TX_3"/>
</backend_names>
<app_types>
<app uc_type="PCM_PLAYBACK" mode="default" bit_width="16" id="69936" max_rate="96000" />
<app uc_type="PCM_PLAYBACK" mode="default" bit_width="24" id="69940" max_rate="192000" />
<app uc_type="PCM_PLAYBACK" mode="voip" bit_width="16" id="69946" max_rate="48000" />
<app uc_type="PCM_CAPTURE" mode="default" bit_width="16" id="69938" max_rate="96000" />
<app uc_type="PCM_CAPTURE" mode="default" bit_width="24" id="69940" max_rate="96000" />
<app uc_type="PCM_CAPTURE" mode="voip" bit_width="16" id="69946" max_rate="48000" />
</app_types>
<!-- below values are for ref purpose to OEM, doesn't contain actual hardware info on MTP -->
<microphone_characteristics>
<microphone valid_mask="31" device_id="builtin_mic_1" type="AUDIO_DEVICE_IN_BUILTIN_MIC" address="bottom" location="AUDIO_MICROPHONE_LOCATION_MAINBODY"
@ -425,7 +424,7 @@
<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_MIC_ELEVOC">
<snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_MIC_NN">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
@ -505,6 +504,14 @@
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_SPEAKER_MIC_NN">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_UNPROCESSED_MIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT"/>

File diff suppressed because it is too large Load Diff

View File

@ -1,10 +0,0 @@
#
# FPC1020 Touch sensor driver
#
device.internal = 1
keyboard.layout = uinput-fpc
keyboard.builtIn = 1
keyboard.orientationAware = 1

View File

@ -1,9 +1,5 @@
#
# GF3626_Z9 gesture sensor driver
#
# Goodix side-type fingerprint sensor
device.internal = 1
keyboard.layout = uinput_nav
keyboard.builtIn = 1
keyboard.orientationAware = 1

View File

@ -1,9 +0,0 @@
#
# FPC1020 Touch sensor driver
#
#
# fpc1020 "finger present"
key 618 SYSTEM_NAVIGATION_UP
key 619 SYSTEM_NAVIGATION_DOWN
key 622 SYSTEM_NAVIGATION_LEFT

View File

@ -1,9 +1,7 @@
#
# GF3626_Z9 gesture sensor driver
#
# Goodix side-type fingerprint sensor
key 618 SYSTEM_NAVIGATION_UP
key 619 SYSTEM_NAVIGATION_DOWN
# double tap
key 622 SYSTEM_NAVIGATION_LEFT
key 103 SYSTEM_NAVIGATION_UP
key 108 SYSTEM_NAVIGATION_DOWN
# use SYSTEM_NAVIGATION_LEFT for double-tap gesture
key 115 SYSTEM_NAVIGATION_LEFT

View File

@ -38,19 +38,17 @@ PRODUCT_PACKAGES += \
# Audio
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/audio/audio_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info.xml \
$(LOCAL_PATH)/audio/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \
$(LOCAL_PATH)/audio/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml \
$(LOCAL_PATH)/audio/mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths.xml
$(LOCAL_PATH)/audio/sku_yupik/audio_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio/sku_yupik/audio_platform_info.xml \
$(LOCAL_PATH)/audio/sku_yupik/mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio/sku_yupik/mixer_paths.xml
# Fingerprint
PRODUCT_PACKAGES += \
android.hardware.biometrics.fingerprint@2.1-service.berlin
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/configs/idc/uinput-fpc.idc:$(TARGET_COPY_OUT_VENDOR)/usr/idc/uinput-fpc.idc \
$(LOCAL_PATH)/configs/idc/uinput_nav.idc:$(TARGET_COPY_OUT_VENDOR)/usr/idc/uinput_nav.idc \
$(LOCAL_PATH)/configs/keylayout/uinput-fpc.kl:$(TARGET_COPY_OUT_VENDOR)/usr/keylayout/uinput-fpc.kl \
$(LOCAL_PATH)/configs/keylayout/uinput_nav.kl:$(TARGET_COPY_OUT_VENDOR)/usr/keylayout/uinput_nav.kl
# Init
@ -67,21 +65,22 @@ PRODUCT_PACKAGES += \
# Media
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/media/media_profiles_kona.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_kona.xml \
$(LOCAL_PATH)/media/media_profiles_vendor.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_vendor.xml
$(LOCAL_PATH)/media/media_profiles_vendor.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_vendor.xml \
$(LOCAL_PATH)/media/media_profiles_yupik_v0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_yupik_v0.xml \
$(LOCAL_PATH)/media/media_profiles_yupik_v1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_yupik_v1.xml
# NFC
PRODUCT_PACKAGES += \
android.hardware.nfc@1.2.vendor \
android.hardware.nfc@1.2-service.st \
android.hardware.secure_element@1.2.vendor \
android.hardware.secure_element@1.2-service.st \
com.android.nfc_extras \
libchrome.vendor \
android.hardware.secure_element@1.2-service.st \
com.android.nfc_extras \
libchrome.vendor \
NfcNci \
SecureElement \
SecureElement \
Tag \
nfc_nci.st21nfc.default
nfc_nci.st21nfc.default
# Permissions
PRODUCT_COPY_FILES += \

View File

@ -47,7 +47,7 @@
<!ELEMENT EncoderOutputFileFormat EMPTY>
<!ATTLIST EncoderOutputFileFormat name (mp4|3gp) #REQUIRED>
<!ELEMENT VideoEncoderCap EMPTY>
<!ATTLIST VideoEncoderCap name (hevc|h264|h263|m4v|wmv) #REQUIRED>
<!ATTLIST VideoEncoderCap name (h264|h263|m4v|wmv) #REQUIRED>
<!ATTLIST VideoEncoderCap enabled (true|false) #REQUIRED>
<!ATTLIST VideoEncoderCap minBitRate CDATA #REQUIRED>
<!ATTLIST VideoEncoderCap maxBitRate CDATA #REQUIRED>
@ -109,8 +109,8 @@
</EncoderProfile>
<EncoderProfile quality="high" fileFormat="mp4" duration="30">
<Video codec="hevc"
bitRate="42000000"
<Video codec="h264"
bitRate="50000000"
width="3840"
height="2160"
frameRate="30" />
@ -134,9 +134,22 @@
channels="1" />
</EncoderProfile>
<EncoderProfile quality="cif" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="1200000"
width="352"
height="288"
frameRate="30" />
<Audio codec="aac"
bitRate="256000"
sampleRate="48000"
channels="1" />
</EncoderProfile>
<EncoderProfile quality="480p" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="2000000"
bitRate="6000000"
width="640"
height="480"
frameRate="30" />
@ -149,7 +162,7 @@
<EncoderProfile quality="720p" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="14000000"
bitRate="12000000"
width="1280"
height="720"
frameRate="30" />
@ -173,9 +186,22 @@
channels="2" />
</EncoderProfile>
<EncoderProfile quality="1080p_60fps" fileFormat="mp4" duration="60">
<Video codec="h264"
bitRate="32000000"
width="1920"
height="1080"
frameRate="60" />
<Audio codec="aac"
bitRate="256000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="2160p" fileFormat="mp4" duration="30">
<Video codec="hevc"
bitRate="42000000"
<Video codec="h264"
bitRate="50000000"
width="3840"
height="2160"
frameRate="30" />
@ -201,8 +227,8 @@
</EncoderProfile>
<EncoderProfile quality="timelapsehigh" fileFormat="mp4" duration="30">
<Video codec="hevc"
bitRate="42000000"
<Video codec="h264"
bitRate="50000000"
width="3840"
height="2160"
frameRate="30" />
@ -227,6 +253,20 @@
channels="1" />
</EncoderProfile>
<EncoderProfile quality="timelapsecif" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="1200000"
width="352"
height="288"
frameRate="30" />
<!-- audio setting is ignored -->
<Audio codec="aac"
bitRate="256000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="timelapse480p" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="2000000"
@ -270,8 +310,8 @@
</EncoderProfile>
<EncoderProfile quality="timelapse2160p" fileFormat="mp4" duration="30">
<Video codec="hevc"
bitRate="42000000"
<Video codec="h264"
bitRate="50000000"
width="3840"
height="2160"
frameRate="30" />
@ -282,55 +322,56 @@
channels="2" />
</EncoderProfile>
<!-- CAMCORDER_QUALITY_HIGH_SPEED_LOW/720P : 720p@240fps; 55.0 Mbps -->
<!-- CAMCORDER_QUALITY_HIGH_SPEED_LOW/720P : 720p@240fps; 56.0 Mbps -->
<EncoderProfile quality="highspeedlow" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="55000000"
bitRate="56000000"
width="1280"
height="720"
frameRate="240" />
<!-- audio setting is ignored -->
<Audio codec="aac"
bitRate="96000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<!-- CAMCORDER_QUALITY_HIGH_SPEED_HIGH/1080P : 1080p@240fps; 80.0 Mbps -->
<EncoderProfile quality="highspeedhigh" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="80000000"
width="1920"
height="1080"
frameRate="240" />
<!-- audio setting is ignored -->
<Audio codec="aac"
bitRate="96000"
bitRate="256000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="highspeed720p" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="55000000"
<!-- CAMCORDER_QUALITY_HIGH_SPEED_HIGH/1080P : 1080p@120fps; 50.0 Mbps -->
<EncoderProfile quality="highspeedhigh" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="50000000"
width="1920"
height="1080"
frameRate="120" />
<!-- audio setting is ignored -->
<Audio codec="aac"
bitRate="256000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="highspeed720p" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="56000000"
width="1280"
height="720"
frameRate="240" />
<Audio codec="aac"
bitRate="96000"
<!-- audio setting is ignored -->
<Audio codec="aac"
bitRate="256000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="highspeed1080p" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="80000000"
bitRate="50000000"
width="1920"
height="1080"
frameRate="240" />
frameRate="120" />
<!-- audio setting is ignored -->
<Audio codec="aac"
bitRate="96000"
bitRate="256000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
@ -383,6 +424,19 @@
channels="1" />
</EncoderProfile>
<EncoderProfile quality="cif" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="1200000"
width="352"
height="288"
frameRate="30" />
<Audio codec="aac"
bitRate="256000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="480p" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="2000000"
@ -398,7 +452,7 @@
<EncoderProfile quality="720p" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="14000000"
bitRate="12000000"
width="1280"
height="720"
frameRate="30" />
@ -422,6 +476,19 @@
channels="2" />
</EncoderProfile>
<EncoderProfile quality="1080p_60fps" fileFormat="mp4" duration="60">
<Video codec="h264"
bitRate="32000000"
width="1920"
height="1080"
frameRate="60" />
<Audio codec="aac"
bitRate="256000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="timelapselow" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="192000"
@ -464,6 +531,19 @@
channels="1" />
</EncoderProfile>
<EncoderProfile quality="timelapsecif" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="1200000"
width="352"
height="288"
frameRate="30" />
<!-- audio setting is ignored -->
<Audio codec="aac"
bitRate="256000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="timelapse480p" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="2000000"
@ -480,7 +560,7 @@
<EncoderProfile quality="timelapse720p" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="14000000"
bitRate="12000000"
width="1280"
height="720"
frameRate="30" />
@ -506,58 +586,60 @@
channels="2" />
</EncoderProfile>
<!-- CAMCORDER_QUALITY_HIGH_SPEED_LOW/720P : 720p@240fps; 55.0 Mbps -->
<!-- CAMCORDER_QUALITY_HIGH_SPEED_LOW/720P : 720p@240fps; 56.0 Mbps -->
<EncoderProfile quality="highspeedlow" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="55000000"
width="1280"
height="720"
frameRate="240" />
<Audio codec="aac"
bitRate="96000"
sampleRate="48000"
channels="2" />
<Video codec="h264"
bitRate="56000000"
width="1280"
height="720"
frameRate="240" />
<!-- audio setting is ignored -->
<Audio codec="aac"
bitRate="256000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<!-- CAMCORDER_QUALITY_HIGH_SPEED_HIGH/1080P : 1080p@120fps; 50.0 Mbps -->
<EncoderProfile quality="highspeedhigh" fileFormat="mp4" duration="30">
<Video codec="h264"
<Video codec="h264"
bitRate="50000000"
width="1920"
height="1080"
frameRate="120" />
<Audio codec="aac"
bitRate="96000"
sampleRate="48000"
channels="2" />
<!-- audio setting is ignored -->
<Audio codec="aac"
bitRate="256000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="highspeed720p" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="55000000"
<EncoderProfile quality="highspeed720p" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="56000000"
width="1280"
height="720"
frameRate="240" />
<Audio codec="aac"
bitRate="96000"
<!-- audio setting is ignored -->
<Audio codec="aac"
bitRate="256000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="highspeed1080p" fileFormat="mp4" duration="30">
<Video codec="h264"
<Video codec="h264"
bitRate="50000000"
width="1920"
height="1080"
frameRate="120" />
<Audio codec="aac"
bitRate="96000"
<!-- audio setting is ignored -->
<Audio codec="aac"
bitRate="256000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<ImageEncoding quality="95" />
<ImageEncoding quality="80" />
<ImageEncoding quality="70" />
@ -597,14 +679,6 @@
maxHFRFrameWidth="0" maxHFRFrameHeight="0"
maxHFRMode="0" />
<VideoEncoderCap name="hevc" enabled="true"
minBitRate="64000" maxBitRate="100000000"
minFrameWidth="176" maxFrameWidth="4096"
minFrameHeight="144" maxFrameHeight="2160"
minFrameRate="15" maxFrameRate="30"
maxHFRFrameWidth="0" maxHFRFrameHeight="0"
maxHFRMode="0" />
<AudioEncoderCap name="aac" enabled="true"
minBitRate="8000" maxBitRate="512000"
minSampleRate="8000" maxSampleRate="48000"

View File

@ -1,6 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2012-2019, 2021 The Linux Foundation. All rights reserved.
<!--
Copyright (c) 2020-2021 Qualcomm Technologies, Inc.
All Rights Reserved.
Confidential and Proprietary - Qualcomm Technologies, Inc.
Not a contribution.
Copyright (C) 2012-2019 The Linux Foundation. All rights reserved.
Copyright (C) 2010 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
@ -191,7 +197,7 @@
bitRate="57500000"
width="4096"
height="2160"
frameRate="24" />
frameRate="30" />
<Audio codec="aac"
bitRate="156000"
@ -212,19 +218,6 @@
channels="2" />
</EncoderProfile>
<EncoderProfile quality="8kuhd" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="105000000"
width="7680"
height="4320"
frameRate="30" />
<Audio codec="aac"
bitRate="156000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="qcif" fileFormat="3gp" duration="30">
<Video codec="h264"
bitRate="192000"
@ -404,19 +397,6 @@
channels="2" />
</EncoderProfile>
<EncoderProfile quality="timelapse8kuhd" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="105000000"
width="7680"
height="4320"
frameRate="30" />
<Audio codec="aac"
bitRate="156000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<ImageEncoding quality="95" />
<ImageEncoding quality="80" />
<ImageEncoding quality="70" />
@ -522,7 +502,7 @@
bitRate="57500000"
width="4096"
height="2160"
frameRate="24" />
frameRate="30" />
<Audio codec="aac"
bitRate="156000"
@ -543,19 +523,6 @@
channels="2" />
</EncoderProfile>
<EncoderProfile quality="8kuhd" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="105000000"
width="7680"
height="4320"
frameRate="30" />
<Audio codec="aac"
bitRate="156000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="qcif" fileFormat="3gp" duration="30">
<Video codec="h264"
bitRate="192000"
@ -735,19 +702,6 @@
channels="2" />
</EncoderProfile>
<EncoderProfile quality="timelapse8kuhd" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="105000000"
width="7680"
height="4320"
frameRate="30" />
<Audio codec="aac"
bitRate="156000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<ImageEncoding quality="95" />
<ImageEncoding quality="80" />
<ImageEncoding quality="70" />
@ -853,7 +807,7 @@
bitRate="57500000"
width="4096"
height="2160"
frameRate="24" />
frameRate="30" />
<Audio codec="aac"
bitRate="156000"
@ -874,19 +828,6 @@
channels="2" />
</EncoderProfile>
<EncoderProfile quality="8kuhd" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="105000000"
width="7680"
height="4320"
frameRate="30" />
<Audio codec="aac"
bitRate="156000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="qcif" fileFormat="3gp" duration="30">
<Video codec="h264"
bitRate="192000"
@ -1066,19 +1007,6 @@
channels="2" />
</EncoderProfile>
<EncoderProfile quality="timelapse8kuhd" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="105000000"
width="7680"
height="4320"
frameRate="30" />
<Audio codec="aac"
bitRate="156000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="highspeed1080p" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="50000000"
@ -1239,7 +1167,7 @@
bitRate="57500000"
width="4096"
height="2160"
frameRate="24" />
frameRate="30" />
<Audio codec="aac"
bitRate="156000"
@ -1260,19 +1188,6 @@
channels="2" />
</EncoderProfile>
<EncoderProfile quality="8kuhd" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="105000000"
width="7680"
height="4320"
frameRate="30" />
<Audio codec="aac"
bitRate="156000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="qcif" fileFormat="3gp" duration="30">
<Video codec="h264"
bitRate="192000"
@ -1452,19 +1367,6 @@
channels="2" />
</EncoderProfile>
<EncoderProfile quality="timelapse8kuhd" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="105000000"
width="7680"
height="4320"
frameRate="30" />
<Audio codec="aac"
bitRate="156000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="highspeed1080p" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="50000000"
@ -1527,6 +1429,310 @@
</CamcorderProfiles>
<CamcorderProfiles cameraId="4">
<EncoderProfile quality="low" fileFormat="3gp" duration="30">
<Video codec="h264"
bitRate="192000"
width="176"
height="144"
frameRate="30" />
<Audio codec="amrnb"
bitRate="12200"
sampleRate="8000"
channels="1" />
</EncoderProfile>
<EncoderProfile quality="high" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="50000000"
width="3840"
height="2160"
frameRate="30" />
<Audio codec="aac"
bitRate="156000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="qvga" fileFormat="mp4" duration="60">
<Video codec="h264"
bitRate="512000"
width="320"
height="240"
frameRate="30" />
<Audio codec="aac"
bitRate="156000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="cif" fileFormat="3gp" duration="30">
<Video codec="h264"
bitRate="720000"
width="352"
height="288"
frameRate="30" />
<Audio codec="amrnb"
bitRate="12200"
sampleRate="8000"
channels="1" />
</EncoderProfile>
<EncoderProfile quality="480p" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="2000000"
width="720"
height="480"
frameRate="30" />
<Audio codec="aac"
bitRate="156000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="720p" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="14000000"
width="1280"
height="720"
frameRate="30" />
<Audio codec="aac"
bitRate="156000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="1080p" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="20000000"
width="1920"
height="1080"
frameRate="30" />
<Audio codec="aac"
bitRate="156000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="4kdci" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="57500000"
width="4096"
height="2160"
frameRate="30" />
<Audio codec="aac"
bitRate="156000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="2160p" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="50000000"
width="3840"
height="2160"
frameRate="30" />
<Audio codec="aac"
bitRate="156000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="qcif" fileFormat="3gp" duration="30">
<Video codec="h264"
bitRate="192000"
width="176"
height="144"
frameRate="30" />
<Audio codec="amrnb"
bitRate="12200"
sampleRate="8000"
channels="1" />
</EncoderProfile>
<EncoderProfile quality="vga" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="1536000"
width="640"
height="480"
frameRate="30" />
<Audio codec="aac"
bitRate="156000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="timelapselow" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="192000"
width="176"
height="144"
frameRate="30" />
<!-- audio setting is ignored -->
<Audio codec="amrnb"
bitRate="12200"
sampleRate="8000"
channels="1" />
</EncoderProfile>
<EncoderProfile quality="timelapsehigh" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="50000000"
width="3840"
height="2160"
frameRate="30" />
<!-- audio setting is ignored -->
<Audio codec="aac"
bitRate="156000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="timelapseqcif" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="192000"
width="176"
height="144"
frameRate="30" />
<!-- audio setting is ignored -->
<Audio codec="amrnb"
bitRate="12200"
sampleRate="8000"
channels="1" />
</EncoderProfile>
<EncoderProfile quality="timelapsecif" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="720000"
width="352"
height="288"
frameRate="30" />
<!-- audio setting is ignored -->
<Audio codec="amrnb"
bitRate="12200"
sampleRate="8000"
channels="1" />
</EncoderProfile>
<EncoderProfile quality="timelapseqvga" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="512000"
width="320"
height="240"
frameRate="30" />
<!-- audio setting is ignored -->
<Audio codec="amrnb"
bitRate="12200"
sampleRate="8000"
channels="1" />
</EncoderProfile>
<EncoderProfile quality="timelapsevga" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="1536000"
width="640"
height="480"
frameRate="30" />
<!-- audio setting is ignored -->
<Audio codec="amrnb"
bitRate="12200"
sampleRate="8000"
channels="1" />
</EncoderProfile>
<EncoderProfile quality="timelapse480p" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="2000000"
width="640"
height="480"
frameRate="30" />
<!-- audio setting is ignored -->
<Audio codec="aac"
bitRate="156000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="timelapse720p" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="14000000"
width="1280"
height="720"
frameRate="30" />
<!-- audio setting is ignored -->
<Audio codec="aac"
bitRate="156000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="timelapse1080p" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="20000000"
width="1920"
height="1080"
frameRate="30" />
<!-- audio setting is ignored -->
<Audio codec="aac"
bitRate="156000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="timelapse4kdci" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="57500000"
width="4096"
height="2160"
frameRate="30" />
<Audio codec="aac"
bitRate="156000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<EncoderProfile quality="timelapse2160p" fileFormat="mp4" duration="30">
<Video codec="h264"
bitRate="50000000"
width="3840"
height="2160"
frameRate="30" />
<Audio codec="aac"
bitRate="156000"
sampleRate="48000"
channels="2" />
</EncoderProfile>
<ImageEncoding quality="95" />
<ImageEncoding quality="80" />
<ImageEncoding quality="70" />
<ImageDecoding memCap="20000000" />
</CamcorderProfiles>
<EncoderOutputFileFormat name="3gp" />
<EncoderOutputFileFormat name="mp4" />
@ -1535,37 +1741,21 @@
In other words, the applications won't be able to use the codec
or query the capabilities of the codec at all if it is disabled
-->
<VideoEncoderCap name="h264" enabled="true"
minBitRate="64000" maxBitRate="105000000"
minFrameWidth="176" maxFrameWidth="7680"
minFrameHeight="144" maxFrameHeight="4320"
minFrameRate="15" maxFrameRate="30"
maxHFRFrameWidth="1920" maxHFRFrameHeight="1080"
maxHFRMode="120" />
<VideoEncoderCap name="h264" enabled="true"
minBitRate="64000" maxBitRate="42000000"
minFrameWidth="176" maxFrameWidth="4096"
minFrameHeight="144" maxFrameHeight="2160"
minFrameRate="15" maxFrameRate="30"
maxHFRFrameWidth="1920" maxHFRFrameHeight="1080"
maxHFRMode="120" />
<VideoEncoderCap name="h263" enabled="true"
minBitRate="64000" maxBitRate="2000000"
minFrameWidth="176" maxFrameWidth="800"
minFrameHeight="144" maxFrameHeight="480"
minFrameRate="15" maxFrameRate="30"
maxHFRFrameWidth="0" maxHFRFrameHeight="0"
maxHFRMode="0" />
<VideoEncoderCap name="m4v" enabled="true"
minBitRate="64000" maxBitRate="8000000"
minFrameWidth="176" maxFrameWidth="800"
minFrameHeight="144" maxFrameHeight="480"
minFrameRate="15" maxFrameRate="30"
maxHFRFrameWidth="0" maxHFRFrameHeight="0"
maxHFRMode="0" />
<VideoEncoderCap name="hevc" enabled="true"
minBitRate="64000" maxBitRate="73500000"
minFrameWidth="176" maxFrameWidth="7680"
minFrameHeight="144" maxFrameHeight="4320"
minFrameRate="15" maxFrameRate="30"
maxHFRFrameWidth="0" maxHFRFrameHeight="0"
maxHFRMode="0" />
<VideoEncoderCap name="h263" enabled="true"
minBitRate="64000" maxBitRate="2000000"
minFrameWidth="176" maxFrameWidth="800"
minFrameHeight="144" maxFrameHeight="480"
minFrameRate="15" maxFrameRate="30"
maxHFRFrameWidth="0" maxHFRFrameHeight="0"
maxHFRMode="0" />
<AudioEncoderCap name="aac" enabled="true"
minBitRate="8000" maxBitRate="96000"
@ -1633,12 +1823,5 @@
Codec = h.264, Baseline profile, level 4.0
-->
<ExportVideoProfile name="h264" profile= "1" level="2048"/>
<!--
Codec = h.263, Baseline profile, level 70
-->
<ExportVideoProfile name="h263" profile= "1" level="128"/>
<!--
Codec = mpeg4, Simple profile, level 5
-->
<ExportVideoProfile name="m4v" profile= "1" level="128"/>
</MediaSettings>

File diff suppressed because it is too large Load Diff

View File

@ -415,7 +415,6 @@ vendor/lib64/libgf_ca.so
# NFC
vendor/bin/STFlashTool
vendor/etc/init/hw/init.vendor.st21nfc.rc
# NFC - configs
vendor/etc/libnfc-hal-st.conf

View File

@ -1,84 +0,0 @@
#!/vendor/bin/sh
#
# Identify fingerprint sensor model
#
# Copyright (c) 2019 Lenovo
# All rights reserved.
#
# Changed Log:
# ---------------------------------
# April 15, 2019 chengql2@lenovo.com Initial version
# April 28, 2019 chengql2 Add fps_id creating step
# December 2, 2019 chengql2 Store fps_id into persist fs, and identify sensor
# again when secure unit boots as factory mode.
script_name=${0##*/}
script_name=${script_name%.*}
function notice {
log -t "$scriptname" -p i "$*"
}
persist_fps_id=/mnt/vendor/persist/fps/vendor_id
FPS_VENDOR_GOODIX=goodix
FPS_VENDOR_FPC=fpc
FPS_VENDOR_NONE=none
PROP_FPS_IDENT=vendor.hw.fps.ident
MAX_TIMES=20
function ident_fps {
log "- install FPC driver"
insmod /vendor/lib/modules/fpc1020_mmi.ko
sleep 1
notice "- identify FPC sensor"
setprop $PROP_FPS_IDENT ""
start fpc_ident
for i in $(seq 1 $MAX_TIMES)
do
sleep 0.1
ident_status=$(getprop $PROP_FPS_IDENT)
notice "-result : $ident_status"
if [ $ident_status == $FPS_VENDOR_FPC ]; then
log "ok"
echo $FPS_VENDOR_FPC > $persist_fps_id
return 0
elif [ $ident_status == $FPS_VENDOR_NONE ]; then
notice "fail"
notice "- unload FPC driver"
rmmod fpc1020_mmi
break
fi
done
notice "- install Goodix driver"
insmod /vendor/lib/modules/goodix_fod_mmi.ko
echo $FPS_VENDOR_GOODIX > $persist_fps_id
return 0
}
if [ ! -f $persist_fps_id ]; then
ident_fps
return $?
fi
fps_vendor=$(cat $persist_fps_id)
if [ -z $fps_vendor ]; then
fps_vendor=$FPS_VENDOR_NONE
fi
notice "FPS vendor: $fps_vendor"
if [ $fps_vendor == $FPS_VENDOR_GOODIX ]; then
notice "- install Goodix driver"
insmod /vendor/lib/modules/goodix_fod_mmi.ko
return $?
fi
if [ $fps_vendor == $FPS_VENDOR_FPC ]; then
notice "- install FPC driver"
insmod /vendor/lib/modules/fpc1020_mmi.ko
return $?
fi
ident_fps
return $?

View File

@ -1,123 +0,0 @@
#!/vendor/bin/sh
#
# Start indicated fingerprint HAL service
#
# Copyright (c) 2019 Lenovo
# All rights reserved.
#
# April 15, 2019 chengql2@lenovo.com Initial version
# December 2, 2019 chengql2 Store fps_id into persist fs
script_name=${0##*/}
script_name=${script_name%.*}
function notice {
log -t "$scriptname" -p i "$*"
}
persist_fps_id=/mnt/vendor/persist/fps/vendor_id
persist_fps_id2=/mnt/vendor/persist/fps/last_vendor_id
MAX_TIMES=100
if [ ! -f $persist_fps_id ]; then
notice "warn: no associated persist file found"
return -1
fi
FPS_VENDOR_NONE=none
FPS_VENDOR_GOODIX=goodix
FPS_VENDOR_FPC=fpc
prop_fps_status=vendor.hw.fingerprint.status
prop_persist_fps=persist.vendor.hardware.fingerprint
FPS_STATUS_NONE=none
FPS_STATUS_OK=ok
fps_vendor2=$(cat $persist_fps_id2)
if [ -z $fps_vendor2 ]; then
fps_vendor2=$FPS_VENDOR_NONE
fi
notice "FPS vendor (last): $fps_vendor2"
fps_vendor=$(cat $persist_fps_id)
if [ -z $fps_vendor ]; then
fps_vendor=$FPS_VENDOR_NONE
fi
notice "FPS vendor: $fps_vendor"
if [ $fps_vendor == $FPS_STATUS_NONE ]; then
notice "warn: boot as the last FPS"
fps=$fps_vendor2
else
fps=$fps_vendor
fi
for i in $(seq 1 2)
do
setprop $prop_fps_status $FPS_STATUS_NONE
if [ $fps == $FPS_VENDOR_FPC ]; then
notice "start fps_hal"
start fps_hal
else
notice "start goodix_hal"
start goodix_hal
fi
notice "wait for HAL finish ..."
fps_status=$(getprop $prop_fps_status)
for ii in $(seq 1 $MAX_TIMES)
do
# notice "check fps vendor status: $fps_status"
if [ $fps_status != $FPS_STATUS_NONE ]; then
break
fi
sleep 0.2
fps_status=$(getprop $prop_fps_status)
done
notice "fingerprint HAL status: $fps_status"
if [ $fps_status == $FPS_STATUS_OK ]; then
notice "HAL success"
setprop $prop_persist_fps $fps
if [ $fps_vendor2 == $fps ]; then
return 0
fi
notice "- update FPS vendor (last)"
echo $fps > $persist_fps_id2
notice "- done"
return 0
fi
if [ $fps == $fps_vendor2 ]; then
if [ $fps == $FPS_VENDOR_FPC ]; then
rmmod fpc1020_mmi
sleep 0.1
stop fps_hal
sleep 0.1
insmod /vendor/lib/modules/goodix_fod_mmi.ko
fps=$FPS_VENDOR_GOODIX
else
rmmod goodix_fod_mmi
sleep 0.1
stop goodix_hal
sleep 0.1
insmod /vendor/lib/modules/fpc1020_mmi.ko
fps=$FPS_VENDOR_FPC
fi
notice "- update FPS vendor"
echo $fps > $persist_fps_id
sleep 1
else
notice "error: HAL fail unload ko"
if [ $fps == $FPS_VENDOR_FPC ]; then
rmmod fpc1020_mmi
else
rmmod goodix_fod_mmi
fi
setprop $prop_persist_fps $FPS_VENDOR_NONE
echo $FPS_VENDOR_NONE > $persist_fps_id
notice "- done"
return 1
fi
done

View File

@ -1,158 +1,90 @@
# NFC ST21NFC
import /vendor/etc/init/hw/init.vendor.st21nfc.rc
on early-init
setprop ro.vendor.device_edition ${ro.boot.edition}
exec u:r:vendor_modprobe:s0 -- /vendor/bin/modprobe -a -d /vendor/lib/modules qpnp-smbcharger-mmi qpnp_adaptive_charge
exec u:r:vendor_modprove:s0 -- /vendor/bin/modprobe -a -d /vendor/lib/modules touchscreen_mmi.ko stmicro_mmi.ko
on early-init && property:ro.bootmode=mot-factory
insmod /vendor/lib/modules/moto_f_usbnet.ko
on mmi-priority
# Only high priority MMI DLKMs loaded here
# For instance, sensor_class referenced from several DLKMs
# and needs to load first. Touchscreen might need extra time
# to perform firmware update if necessary
setprop vendor.mmi_init.stage priority
exec u:r:vendor_modprobe:s0 -- /vendor/bin/modprobe -a -d /vendor/lib/modules sensors_class.ko
on early-init
exec_background u:r:vendor_modprobe:s0 -- /vendor/bin/modprobe -a -d /vendor/lib/modules/${ro.vendor.mot.gki.path} mmi_annotate mmi_info mmi_relay
on early-init
insmod /vendor/lib/modules/bm_adsp_ulog.ko
insmod /vendor/lib/modules/mmi_charger.ko
insmod /vendor/lib/modules/qti_glink_charger.ko
insmod /vendor/lib/modules/cirrus_wm_adsp.ko
insmod /vendor/lib/modules/cirrus_cs35l41.ko
insmod /vendor/lib/modules/mmi_sys_temp.ko
insmod /vendor/lib/modules/wl2864c.ko
insmod /vendor/lib/modules/goodix_mmi.ko
insmod /vendor/lib/modules/camera.ko
insmod /vendor/lib/modules/aw8695.ko
insmod /vendor/lib/modules/cci_intf.ko
insmod /vendor/lib/modules/qpnp_adaptive_charge.ko
start vendor.mmi_modules
wait_for_prop init.svc.vendor.mmi_modules stopped
on fs
# Majority of MMI DLKMs should be in this group
setprop vendor.mmi_init.stage common
insmod /vendor/lib/modules/wl2866d.ko
insmod /vendor/lib/modules/mmi_info.ko
insmod /vendor/lib/modules/mmi_annotate.ko
insmod /vendor/lib/modules/mmi_sys_temp.ko
insmod /vendor/lib/modules/qpnp-power-on-mmi.ko
insmod /vendor/lib/modules/bq2597x_mmi.ko
insmod /vendor/lib/modules/mmi_parallel_charger.ko
insmod /vendor/lib/modules/mmi_parallel_charger_qc3p.ko
insmod /vendor/lib/modules/mmi_annotate.ko
insmod /vendor/lib/modules/mmi_info.ko
insmod /vendor/lib/modules/tzlog_dump.ko
insmod /vendor/lib/modules/watchdog_cpu_ctx.ko
insmod /vendor/lib/modules/mmi_relay.ko
insmod /vendor/lib/modules/sx937x_sar.ko
insmod /vendor/lib/modules/st21nfc.ko
insmod /vendor/lib/modules/stmvl53l1.ko
exec u:r:vendor_modprobe:s0 -- /vendor/bin/modprobe -a -d /vendor/lib/modules aw882xx_k419.ko aw8695.ko
on post-fs
# "double tap" gesture
chown system system /sys/class/sensors/dt-gesture/enable
chmod 0660 /sys/class/sensors/dt-gesture/enable
chown root input /sys/class/sensors/dt-gesture/enable_wakeup
chmod 0660 /sys/class/sensors/dt-gesture/enable_wakeup
chown root input /sys/class/sensors/dt-gesture/flush
chmod 0660 /sys/class/sensors/dt-gesture/flush
chown root input /sys/class/sensors/dt-gesture/max_latency
chmod 0660 /sys/class/sensors/dt-gesture/max_latency
chown root input /sys/class/sensors/dt-gesture/poll_delay
chmod 0660 /sys/class/sensors/dt-gesture/poll_delay
service vendor.vl53l1_daemon /vendor/bin/vl53l1_daemon
class late_start
user root
group root
socket vl53l1_daemon stream 660 root system
service vendor.mmi-laser-sh /vendor/bin/init.mmi.laser.sh
class core
user root
oneshot
on init
write /sys/block/zram0/comp_algorithm lz4
on boot
# Add for goodix fingerprint
chown system system /dev/goodix_fp
chmod 0664 /dev/goodix_fp
mkdir /data/vendor/gf_data 0770 system system
mkdir /mnt/vendor/persist/goodix 0770 system system
# Add for CQA fps calibration test
chown system system /sys/class/backlight/panel0-backlight/brightness
chown system system /d/dri/0/debug/motUtil
chmod 0666 /d/dri/0/debug/motUtil;
chmod 0666 /sys/class/backlight/panel0-backlight/brightness
# Set wls perms for HAL
chown system system /sys/class/power_supply/wireless/device/tx_mode
#Add for laser
chown system system sys/class/laser/stmvl53l1/enable_sar
chmod 0660 sys/class/laser/stmvl53l1/enable_sar
chown system system sys/class/laser/stmvl53l1/set_delay_ms
chmod 0660 sys/class/laser/stmvl53l1/set_delay_ms
chown system system sys/class/laser/stmvl53l1/autonomous_config
chmod 0660 sys/class/laser/stmvl53l1/autonomous_config
chown system system sys/class/laser/stmvl53l1/enable_ps_sensor
chmod 0660 sys/class/laser/stmvl53l1/enable_ps_sensor
chown system system sys/class/laser/stmvl53l1/do_flush
chmod 0660 sys/class/laser/stmvl53l1/do_flush
chown system /sys/devices/virtual/laser/stmvl53l1/enable_sar
chmod 0660 /sys/devices/virtual/laser/stmvl53l1/enable_sar
chown system /sys/devices/virtual/laser/stmvl53l1/set_delay_ms
chmod 0660 /sys/devices/virtual/laser/stmvl53l1/set_delay_ms
chown system /sys/devices/virtual/laser/stmvl53l1/do_flush
chmod 0660 /sys/devices/virtual/laser/stmvl53l1/do_flush
chmod 0660 /sys/devices/virtual/laser/stmvl53l1/autonomous_config
chown system /sys/devices/virtual/laser/stmvl53l1/autonomous_config
chmod 0660 /sys/devices/virtual/laser/stmvl53l1/enable_ps_sensor
chown system /sys/devices/virtual/laser/stmvl53l1/enable_ps_sensor
chmod 0660 /sys/devices/virtual/laser/stmvl53l1/timing_budget
chown system /sys/devices/virtual/laser/stmvl53l1/timing_budget
chown system system /sys/devices/virtual/input/input1/timing_budget
chmod 0660 /sys/devices/virtual/input/input1/timing_budget
chmod 0664 /mnt/vendor/persist/camera/focus/offset_cal
chmod 0664 /mnt/vendor/persist/camera/focus/cal_data
# Touch grip suppression control
chown system system /sys/class/touchscreen/primary/suppression
chmod 0660 /sys/class/touchscreen/primary/suppression
chown system system /sys/class/touchscreen/primary/pill_region
chmod 0660 /sys/class/touchscreen/primary/pill_region
chown system system /sys/class/touchscreen/primary/hold_distance
chmod 0660 /sys/class/touchscreen/primary/hold_distance
chown system system /sys/class/touchscreen/primary/gs_distance
chmod 0660 /sys/class/touchscreen/primary/gs_distance
chown system system /sys/class/touchscreen/primary/rotate
chmod 0660 /sys/class/touchscreen/primary/rotate
chown system system /sys/class/touchscreen/primary/interpolation
chmod 0660 /sys/class/touchscreen/primary/interpolation
chown system system /sys/class/touchscreen/primary/edge
chmod 0660 /sys/class/touchscreen/primary/edge
# Change ownership for capsensor
chown root input /sys/class/sensors/Moto\ CapSense\ Ch0/enable
chown root input /sys/class/sensors/Moto\ CapSense\ Ch0/poll_delay
chown root input /sys/class/sensors/Moto\ CapSense\ Ch1/enable
chown root input /sys/class/sensors/Moto\ CapSense\ Ch1/poll_delay
chown root input /sys/class/sensors/Moto\ CapSense\ Ch2/enable
chown root input /sys/class/sensors/Moto\ CapSense\ Ch2/poll_delay
chown root input /sys/class/sensors/Moto\ CapSense\ Ch3/enable
chown root input /sys/class/sensors/Moto\ CapSense\ Ch3/poll_delay
chown root input /sys/class/sensors/Moto\ CapSense\ Ch4/enable
chown root input /sys/class/sensors/Moto\ CapSense\ Ch4/poll_delay
chown system system /sys/class/capsense/reset
chown system system /sys/class/capsense/int_state
# Set adaptive charging perms for HAL
chown system system /sys/module/qpnp_adaptive_charge/parameters/upper_limit
chown system system /sys/module/qpnp_adaptive_charge/parameters/lower_limit
write /proc/sys/kernel/hung_task_timeout_secs 120
# Change ownership and permission for bq25960-standalone factory testing
chown system system /sys/class/power_supply/bq25960-standalone/voltage_now
chown system system /sys/class/power_supply/bq25960-standalone/charging_enabled
chmod 0644 /sys/class/power_supply/bq25960-standalone/voltage_now
chmod 0664 /sys/class/power_supply/bq25960-standalone/charging_enabled
#fps dual sensor
service vendor.ident-fps-overlay-sh /vendor/bin/init.oem.fingerprint.overlay.sh
class core
user root
group drmrpc system
oneshot
disabled
# Turn on led to indicate device on factory mode
on property:ro.bootmode=mot-factory
write /sys/class/leds/charging/brightness 255
# Goodix fingerprint sensor GF3626 reuses the driver "goodix_fod_mmi.ko"
insmod /vendor/lib/modules/goodix_fod_mmi.ko
on post-fs-data
mkdir /mnt/vendor/persist/tof 0755 vendor_tcmd camera
chown vendor_tcmd camera /mnt/vendor/persist/tof/refspad_cal
chown vendor_tcmd camera /mnt/vendor/persist/tof/xtalk_g1_cal
chown vendor_tcmd camera /mnt/vendor/persist/tof/xtalk_shape_cal
chown vendor_tcmd camera /mnt/vendor/persist/tof/xtalk_production_cal
chown vendor_tcmd camera /mnt/vendor/persist/tof/offset_cal
chmod 0640 /mnt/vendor/persist/tof/refspad_cal
chmod 0640 /mnt/vendor/persist/tof/xtalk_g1_cal
chmod 0640 /mnt/vendor/persist/tof/xtalk_shape_cal
chmod 0640 /mnt/vendor/persist/tof/xtalk_production_cal
chmod 0640 /mnt/vendor/persist/tof/offset_cal
# Param updater data for various modules
mkdir /data/vendor/param 0775 system system
mkdir /data/vendor/tzstorage/goodix 0770 system system
exec_start vendor.ident-fps-overlay-sh
on early-boot
# Goodix fingerprint
chown system system /dev/goodix_fp
chmod 0664 /dev/goodix_fp
on boot
# allow TCMD to access cci for OIS test
chmod 0660 /dev/cci_intf
chown system camera /dev/cci_intf
#change adsp pmic test command file access permission
chown vendor_tcmd system /sys/devices/platform/soc/soc:qcom,pmic_glink/soc:qcom,pmic_glink:mmi,qti-glink-charger/tcmd
chown vendor_tcmd system /sys/devices/platform/soc/soc:qcom,pmic_glink/soc:qcom,pmic_glink:mmi,qti-glink-charger/force_pmic_icl
chmod 0660 /sys/devices/platform/soc/soc:qcom,pmic_glink/soc:qcom,pmic_glink:mmi,qti-glink-charger/tcmd
chmod 0660 /sys/devices/platform/soc/soc:qcom,pmic_glink/soc:qcom,pmic_glink:mmi,qti-glink-charger/force_pmic_icl
# Touch game mode control
chown system system /sys/class/touchscreen/primary/rotate
chmod 0660 /sys/class/touchscreen/primary/rotate
chown system system /sys/class/touchscreen/primary/interpolation
chmod 0660 /sys/class/touchscreen/primary/interpolation
chown system system /sys/class/touchscreen/primary/edge
chmod 0660 /sys/class/touchscreen/primary/edge
chown system system /sys/class/touchscreen/primary/first_filter
chmod 0660 /sys/class/touchscreen/primary/first_filter
chown system system /sys/class/touchscreen/primary/sensitivity
chmod 0660 /sys/class/touchscreen/primary/sensitivity
# Set adaptive charging perms for HAL
chown system system /sys/module/qpnp_adaptive_charge/parameters/upper_limit
chown system system /sys/module/qpnp_adaptive_charge/parameters/lower_limit
# touch screen calibration file
mkdir /mnt/vendor/persist/touch
chown vendor_tcmd system /mnt/vendor/persist/touch
chmod 0775 /mnt/vendor/persist/touch
service capsense_reset /system/vendor/bin/capsense_reset
class core
user system
group system input
disabled
on property:sys.boot_completed=1
start capsense_reset
on property:persist.vendor.paramfile.parse_panel=1
write /sys/devices/platform/soc/soc:qcom,dsi-display-primary/dsi_display_parse_para "5"

View File

@ -1,12 +1,8 @@
# Camera
persist.vendor.camera.physical.num=4
# Display
vendor.display.enable_camera_smooth=1
vendor.display.enable_allow_idle_fallback=1
# Motorola
ro.mot.build.customerid=retail
ro.mot.build.customerid=global
# NFC
ro.venndor.hw.nfc=st
ro.vendor.hw.nfc=st