diff options
author | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2024-02-02 23:45:37 +0000 |
---|---|---|
committer | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2024-02-02 23:45:37 +0000 |
commit | 3bb1127c6e391dcd32dae6de3873e08083b9e044 (patch) | |
tree | 4caf5731f328e5cc1872c092a6754eaecf625bb8 | |
parent | 2d2d85c4ff1a2f77ad77cd5c81c0483e8f4cf030 (diff) | |
parent | 468c8b3d40a93c2b1b6c1be53fc40f9fd9e77d8f (diff) | |
download | tangorpro-simpleperf-release.tar.gz |
Snap for 11400057 from 468c8b3d40a93c2b1b6c1be53fc40f9fd9e77d8f to simpleperf-releasesimpleperf-release
Change-Id: I3525370194abc62b513f6902899a64c2ec3bf4c0
27 files changed, 1886 insertions, 381 deletions
diff --git a/audio/tangorpro/aidl_config/audio_platform_configuration_aidl.xml b/audio/tangorpro/aidl_config/audio_platform_configuration_aidl.xml new file mode 100644 index 0000000..912b4aa --- /dev/null +++ b/audio/tangorpro/aidl_config/audio_platform_configuration_aidl.xml @@ -0,0 +1,76 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!-- Copyright (c) 2023, 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 --> +<!-- met: --> +<!-- * Redistributions of source code must retain the above copyright --> +<!-- notice, this list of conditions and the following disclaimer. --> +<!-- * Redistributions in binary form must reproduce the above --> +<!-- copyright notice, this list of conditions and the following --> +<!-- disclaimer in the documentation and/or other materials provided --> +<!-- with the distribution. --> +<!-- * Neither the name of The Linux Foundation nor the names of its --> +<!-- contributors may be used to endorse or promote products derived --> +<!-- from this software without specific prior written permission. --> +<!-- --> +<!-- THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED --> +<!-- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF --> +<!-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT --> +<!-- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS --> +<!-- BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR --> +<!-- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF --> +<!-- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR --> +<!-- BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, --> +<!-- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN --> +<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --> +<audio_platform_configuration> + <product_lists> + <product name="Blackbird"> + <id value="18d1:5033" /> + </product> + <product name="Condor"> + <id value="18d1:5034" /> + </product> + <product name="Condor_Sprint"> + <id value="18d1:5038" /> + </product> + <product name="Condor_Sprint2"> + <id value="18d1:5036" /> + </product> + </product_lists> + + <features> + <feature name="ThermalThrottle=Type:SKIN,Name:VIRTUAL-SKIN" /> + <feature + name="BatteryThrottle=Type:BCL_VOLTAGE,Name:BCL_AUDIO_BAACL,Strategy:MediaSpeakerAndScreenOn" /> + <feature + name="PlaybackThermalThrottle=PollWaitMs:20000,ThermistorName:VIRTUAL-SKIN,ThermistorType:SKIN,ThrottlingSeverity:MODERATE" /> + </features> + + <!-- The voip_db_mapping: format is "device="x" value="f1,f2..." --> + <!-- device should be "handset","speaker","usb","bt","bt_hearing_aid" or "digital_dock" --> + <voip_db_mapping> + <voip_path device="usb" value="0.01,0.02,0.04,0.1,0.21,0.47,1.0" /> + </voip_db_mapping> + + <!-- The device_builder: format is "type="x" codec_name="y" argu="z". name and argu are optional. --> + <device_builder> + <device type="bt" /> + <device type="usb" argu="MaxSamplingRate=96000,UnsupportedFormat=S24_LE" /> + <device type="speaker" codec_name="cs35l41" argu="SpeakerNum=4,Rotation,AcousticShockProtection" /> + </device_builder> + + <!-- The spatial_capture_conditions: format is "use_case="x" audio_source="y" --> + <!-- use_case defines in aidl/audio/usecase/use_case.h, audio_source is definied in aidl interfaces. --> + <spatial_capture_conditions> + <conditions use_case="primary-capture" audio_source="MIC,CAMCORDER,VOICE_RECOGNITION" /> + </spatial_capture_conditions> + + <!-- The tuner_builder: format is "type="x" codec_name="y" argu="z". argu is optional. --> + <tuner_builder> + <tuner type="playback" name="waves" argu="Sink=SPK ThermistorsName=VIRTUAL-SKIN" /> + <tuner type="telephony" name="fortemedia" argu="VoIP_DLCHs=SPK:2,USB:2 VoIP_Rate=32000 BOOST_USB_SWB_CLK=y CCA=y" /> + <tuner type="capture" name="gs_capture" /> + </tuner_builder> +</audio_platform_configuration> diff --git a/audio/tangorpro/aidl_config/audio_policy_volumes.xml b/audio/tangorpro/aidl_config/audio_policy_volumes.xml new file mode 100644 index 0000000..dfba47a --- /dev/null +++ b/audio/tangorpro/aidl_config/audio_policy_volumes.xml @@ -0,0 +1,227 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Copyright (C) 2023 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<!-- Volume section defines a volume curve for a given use case and device category. +It contains a list of points of this curve expressing the attenuation in Millibels for a given +volume index from 0 to 100. +<volume stream=”AUDIO_STREAM_MUSIC” deviceCategory=””> +<point>0,-9600</point> +<point>100,0</point> +</volume> +--> + +<volumes> + <volume stream="AUDIO_STREAM_VOICE_CALL" deviceCategory="DEVICE_CATEGORY_HEADSET"> + <point>0,-4200</point> + <point>33,-2800</point> + <point>66,-1400</point> + <point>100,0</point> + </volume> + <volume stream="AUDIO_STREAM_VOICE_CALL" deviceCategory="DEVICE_CATEGORY_SPEAKER"> + <point>0,-2400</point> + <point>33,-1600</point> + <point>66,-800</point> + <point>100,0</point> + </volume> + <volume stream="AUDIO_STREAM_VOICE_CALL" deviceCategory="DEVICE_CATEGORY_EARPIECE"> + <point>0,-2400</point> + <point>33,-1600</point> + <point>66,-800</point> + <point>100,0</point> + </volume> + <volume stream="AUDIO_STREAM_VOICE_CALL" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA" + ref="DEFAULT_MEDIA_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_VOICE_CALL" deviceCategory="DEVICE_CATEGORY_HEARING_AID" + ref="DEFAULT_NON_MUTABLE_HEARING_AID_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_SYSTEM" deviceCategory="DEVICE_CATEGORY_HEADSET"> + <point>1,-3000</point> + <point>33,-2600</point> + <point>66,-2200</point> + <point>100,-1800</point> + </volume> + <volume stream="AUDIO_STREAM_SYSTEM" deviceCategory="DEVICE_CATEGORY_SPEAKER"> + <point>1,-4700</point> + <point>33,-3500</point> + <point>66,-2350</point> + <point>100,-1250</point> + </volume> + <volume stream="AUDIO_STREAM_SYSTEM" deviceCategory="DEVICE_CATEGORY_EARPIECE" + ref="DEFAULT_SYSTEM_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_SYSTEM" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA" + ref="DEFAULT_DEVICE_CATEGORY_EXT_MEDIA_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_SYSTEM" deviceCategory="DEVICE_CATEGORY_HEARING_AID" + ref="DEFAULT_HEARING_AID_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_RING" deviceCategory="DEVICE_CATEGORY_HEADSET" + ref="DEFAULT_DEVICE_CATEGORY_HEADSET_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_RING" deviceCategory="DEVICE_CATEGORY_SPEAKER"> + <point>1,-3350</point> + <point>33,-2100</point> + <point>66,-1000</point> + <point>100,0</point> + </volume> + <volume stream="AUDIO_STREAM_RING" deviceCategory="DEVICE_CATEGORY_EARPIECE" + ref="DEFAULT_DEVICE_CATEGORY_EARPIECE_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_RING" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA" + ref="DEFAULT_DEVICE_CATEGORY_EXT_MEDIA_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_RING" deviceCategory="DEVICE_CATEGORY_HEARING_AID" + ref="DEFAULT_HEARING_AID_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" + 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" + ref="DEFAULT_MEDIA_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_MUSIC" deviceCategory="DEVICE_CATEGORY_HEARING_AID" + ref="DEFAULT_HEARING_AID_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_ALARM" deviceCategory="DEVICE_CATEGORY_HEADSET" + ref="DEFAULT_NON_MUTABLE_HEADSET_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_ALARM" deviceCategory="DEVICE_CATEGORY_SPEAKER"> + <point>0,-4800</point> + <point>33,-2050</point> + <point>66,-800</point> + <point>100,0</point> + </volume> + <volume stream="AUDIO_STREAM_ALARM" deviceCategory="DEVICE_CATEGORY_EARPIECE" + ref="DEFAULT_NON_MUTABLE_EARPIECE_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_ALARM" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA" + ref="DEFAULT_NON_MUTABLE_EXT_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_ALARM" deviceCategory="DEVICE_CATEGORY_HEARING_AID" + ref="DEFAULT_NON_MUTABLE_HEARING_AID_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_NOTIFICATION" deviceCategory="DEVICE_CATEGORY_HEADSET" + ref="DEFAULT_DEVICE_CATEGORY_HEADSET_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_NOTIFICATION" deviceCategory="DEVICE_CATEGORY_SPEAKER"> + <point>1,-3800</point> + <point>33,-2600</point> + <point>66,-1400</point> + <point>100,0</point> + </volume> + <volume stream="AUDIO_STREAM_NOTIFICATION" deviceCategory="DEVICE_CATEGORY_EARPIECE" + ref="DEFAULT_DEVICE_CATEGORY_EARPIECE_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_NOTIFICATION" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA" + ref="DEFAULT_DEVICE_CATEGORY_EXT_MEDIA_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_NOTIFICATION" deviceCategory="DEVICE_CATEGORY_HEARING_AID" + ref="DEFAULT_DEVICE_CATEGORY_HEADSET_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_BLUETOOTH_SCO" deviceCategory="DEVICE_CATEGORY_HEADSET"> + <point>0,-4200</point> + <point>33,-2800</point> + <point>66,-1400</point> + <point>100,0</point> + </volume> + <volume stream="AUDIO_STREAM_BLUETOOTH_SCO" deviceCategory="DEVICE_CATEGORY_SPEAKER"> + <point>0,-2400</point> + <point>33,-1600</point> + <point>66,-800</point> + <point>100,0</point> + </volume> + <volume stream="AUDIO_STREAM_BLUETOOTH_SCO" deviceCategory="DEVICE_CATEGORY_EARPIECE"> + <point>0,-4200</point> + <point>33,-2800</point> + <point>66,-1400</point> + <point>100,0</point> + </volume> + <volume stream="AUDIO_STREAM_BLUETOOTH_SCO" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA" + ref="DEFAULT_MEDIA_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_BLUETOOTH_SCO" deviceCategory="DEVICE_CATEGORY_HEARING_AID" + ref="DEFAULT_HEARING_AID_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_ENFORCED_AUDIBLE" deviceCategory="DEVICE_CATEGORY_HEADSET"> + <point>1,-3000</point> + <point>33,-2600</point> + <point>66,-2200</point> + <point>100,-1800</point> + </volume> + <volume stream="AUDIO_STREAM_ENFORCED_AUDIBLE" deviceCategory="DEVICE_CATEGORY_SPEAKER"> + <point>1,-4700</point> + <point>33,-3500</point> + <point>66,-2350</point> + <point>100,-1250</point> + </volume> + <volume stream="AUDIO_STREAM_ENFORCED_AUDIBLE" deviceCategory="DEVICE_CATEGORY_EARPIECE" + ref="DEFAULT_SYSTEM_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_ENFORCED_AUDIBLE" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA" + ref="DEFAULT_DEVICE_CATEGORY_EXT_MEDIA_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_ENFORCED_AUDIBLE" deviceCategory="DEVICE_CATEGORY_HEARING_AID" + ref="DEFAULT_HEARING_AID_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_DTMF" deviceCategory="DEVICE_CATEGORY_HEADSET"> + <point>1,-3000</point> + <point>33,-2600</point> + <point>66,-2200</point> + <point>100,-1800</point> + </volume> + <volume stream="AUDIO_STREAM_DTMF" deviceCategory="DEVICE_CATEGORY_SPEAKER"> + <point>1,-5500</point> + <point>33,-3650</point> + <point>66,-2700</point> + <point>100,-1800</point> + </volume> + <volume stream="AUDIO_STREAM_DTMF" deviceCategory="DEVICE_CATEGORY_EARPIECE" + ref="DEFAULT_SYSTEM_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_DTMF" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA" + ref="DEFAULT_DEVICE_CATEGORY_EXT_MEDIA_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_DTMF" deviceCategory="DEVICE_CATEGORY_HEARING_AID" + ref="DEFAULT_HEARING_AID_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_TTS" deviceCategory="DEVICE_CATEGORY_HEADSET" + ref="SILENT_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_TTS" deviceCategory="DEVICE_CATEGORY_SPEAKER" + ref="FULL_SCALE_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_TTS" deviceCategory="DEVICE_CATEGORY_EARPIECE" + ref="SILENT_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_TTS" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA" + ref="SILENT_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_TTS" deviceCategory="DEVICE_CATEGORY_HEARING_AID" + ref="SILENT_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_ACCESSIBILITY" deviceCategory="DEVICE_CATEGORY_HEADSET" + ref="DEFAULT_NON_MUTABLE_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_ACCESSIBILITY" deviceCategory="DEVICE_CATEGORY_SPEAKER" + ref="DEFAULT_NON_MUTABLE_SPEAKER_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_ACCESSIBILITY" deviceCategory="DEVICE_CATEGORY_EARPIECE" + ref="DEFAULT_NON_MUTABLE_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_ACCESSIBILITY" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA" + ref="DEFAULT_NON_MUTABLE_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_ACCESSIBILITY" deviceCategory="DEVICE_CATEGORY_HEARING_AID" + ref="DEFAULT_NON_MUTABLE_HEARING_AID_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_ASSISTANT" deviceCategory="DEVICE_CATEGORY_HEADSET" + ref="DEFAULT_MEDIA_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_ASSISTANT" deviceCategory="DEVICE_CATEGORY_SPEAKER" + ref="DEFAULT_DEVICE_CATEGORY_SPEAKER_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_ASSISTANT" deviceCategory="DEVICE_CATEGORY_EARPIECE" + ref="DEFAULT_MEDIA_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_ASSISTANT" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA" + ref="DEFAULT_MEDIA_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_ASSISTANT" deviceCategory="DEVICE_CATEGORY_HEARING_AID" + ref="DEFAULT_HEARING_AID_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_REROUTING" deviceCategory="DEVICE_CATEGORY_HEADSET" + ref="FULL_SCALE_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_REROUTING" deviceCategory="DEVICE_CATEGORY_SPEAKER" + ref="FULL_SCALE_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_REROUTING" deviceCategory="DEVICE_CATEGORY_EARPIECE" + ref="FULL_SCALE_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_REROUTING" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA" + ref="FULL_SCALE_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_REROUTING" deviceCategory="DEVICE_CATEGORY_HEARING_AID" + ref="FULL_SCALE_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_PATCH" deviceCategory="DEVICE_CATEGORY_HEADSET" + ref="FULL_SCALE_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_PATCH" deviceCategory="DEVICE_CATEGORY_SPEAKER" + ref="FULL_SCALE_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_PATCH" deviceCategory="DEVICE_CATEGORY_EARPIECE" + ref="FULL_SCALE_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_PATCH" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA" + ref="FULL_SCALE_VOLUME_CURVE"/> + <volume stream="AUDIO_STREAM_PATCH" deviceCategory="DEVICE_CATEGORY_HEARING_AID" + ref="FULL_SCALE_VOLUME_CURVE"/> +</volumes> + diff --git a/audio/tangorpro/aidl_config/mixer_paths_aidl.xml b/audio/tangorpro/aidl_config/mixer_paths_aidl.xml new file mode 100644 index 0000000..2d051b8 --- /dev/null +++ b/audio/tangorpro/aidl_config/mixer_paths_aidl.xml @@ -0,0 +1,1408 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!-- Copyright (c) 2023, 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 --> +<!-- met: --> +<!-- * Redistributions of source code must retain the above copyright --> +<!-- notice, this list of conditions and the following disclaimer. --> +<!-- * Redistributions in binary form must reproduce the above --> +<!-- copyright notice, this list of conditions and the following --> +<!-- disclaimer in the documentation and/or other materials provided --> +<!-- with the distribution. --> +<!-- * Neither the name of The Linux Foundation nor the names of its --> +<!-- contributors may be used to endorse or promote products derived --> +<!-- from this software without specific prior written permission. --> +<!-- --> +<!-- THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED --> +<!-- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF --> +<!-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT --> +<!-- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS --> +<!-- BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR --> +<!-- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF --> +<!-- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR --> +<!-- BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, --> +<!-- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN --> +<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --> +<mixer> + <!-- Initial default value of ALSA command --> + <!-- PCM timeout --> + <ctl name="PCM Stream Wait Time in MSec" value="100" /> + <ctl name="Voice PCM Stream Wait Time in MSec" value="500" /> + + <!-- Enable it when AOC is ready to trim delay and padding --> + <ctl name="Gapless Offload Enable" value="1" /> + + <!-- TDM 0 setting --> + <ctl name="TDM_0_RX Chan" value="Four" /> + <ctl name="TDM_0_RX Format" value="S32_LE" /> + <ctl name="TDM_0_RX Sample Rate" value="SR_96K" /> + <ctl name="TDM_0_TX Chan" value="Four" /> + <ctl name="TDM_0_TX Format" value="S32_LE" /> + <ctl name="TDM_0_TX Sample Rate" value="SR_96K" /> + + <!-- Cirrus default 96K --> + <ctl name="Default 96K" value="1"/> + <ctl name="R Default 96K" value="1"/> + <ctl name="L2 Default 96K" value="1"/> + <ctl name="R2 Default 96K" value="1"/> + + + <!-- Cirrus Booster Amp TDM slot assignment--> + <!-- RX slot --> + <ctl name="ASPRX1 Slot Position" value="0"/> + <ctl name="ASPRX2 Slot Position" value="1"/> + <ctl name="R ASPRX1 Slot Position" value="1"/> + <ctl name="R ASPRX2 Slot Position" value="0"/> + <ctl name="L2 ASPRX1 Slot Position" value="0"/> + <ctl name="L2 ASPRX2 Slot Position" value="1"/> + <ctl name="R2 ASPRX1 Slot Position" value="1"/> + <ctl name="R2 ASPRX2 Slot Position" value="0"/> + <!-- TX slot --> + <ctl name="ASPTX1 Slot Position" value="0"/> + <ctl name="R ASPTX1 Slot Position" value="1"/> + <ctl name="L2 ASPTX1 Slot Position" value="2"/> + <ctl name="R2 ASPTX1 Slot Position" value="3"/> + <ctl name="ASPTX2 Slot Position" value="4"/> + <ctl name="R ASPTX2 Slot Position" value="5"/> + <ctl name="L2 ASPTX2 Slot Position" value="6"/> + <ctl name="R2 ASPTX2 Slot Position" value="7"/> + <ctl name="ASPTX3 Slot Position" value="4"/> + <ctl name="R ASPTX3 Slot Position" value="5"/> + <ctl name="L2 ASPTX3 Slot Position" value="6"/> + <ctl name="R2 ASPTX3 Slot Position" value="7"/> + <ctl name="ASPTX4 Slot Position" value="4"/> + <ctl name="R ASPTX4 Slot Position" value="5"/> + <ctl name="L2 ASPTX4 Slot Position" value="6"/> + <ctl name="R2 ASPTX4 Slot Position" value="7"/> + + <!-- Cirrus Booster Amp DRE and VBST config--> + <ctl name="VBSTMON Output Switch" value="1"/> + <ctl name="R VBSTMON Output Switch" value="1"/> + <ctl name="L2 VBSTMON Output Switch" value="1"/> + <ctl name="R2 VBSTMON Output Switch" value="1"/> + <ctl name="DRE DRE Switch" value="1"/> + <ctl name="R DRE DRE Switch" value="1"/> + <ctl name="L2 DRE DRE Switch" value="1"/> + <ctl name="R2 DRE DRE Switch" value="1"/> + + <!-- Cirrus Booster Amp Output Gain --> + <ctl name="AMP PCM Gain" value="17"/> + <ctl name="R AMP PCM Gain" value="17"/> + <ctl name="L2 AMP PCM Gain" value="17"/> + <ctl name="R2 AMP PCM Gain" value="17"/> + <ctl name="Digital PCM Volume" value="769"/> + <ctl name="R Digital PCM Volume" value="769"/> + <ctl name="L2 Digital PCM Volume" value="769"/> + <ctl name="R2 Digital PCM Volume" value="769"/> + + <!-- Cirrus Booster Amp Power --> + <ctl name="Main AMP Enable Switch" value="0"/> + <ctl name="R Main AMP Enable Switch" value="0"/> + <ctl name="L2 Main AMP Enable Switch" value="0"/> + <ctl name="R2 Main AMP Enable Switch" value="0"/> + + <!-- Cirrus Booster mode --> + <ctl name="PCM Source" value="DSP"/> + <ctl name="R PCM Source" value="DSP"/> + <ctl name="L2 PCM Source" value="DSP"/> + <ctl name="R2 PCM Source" value="DSP"/> + + <ctl name="DSP1 Firmware" value="Protection"/> + <ctl name="R DSP1 Firmware" value="Protection"/> + <ctl name="L2 DSP1 Firmware" value="Protection"/> + <ctl name="R2 DSP1 Firmware" value="Protection"/> + <ctl name="DSP RX1 Source" value="ASPRX1"/> + <ctl name="DSP RX2 Source" value="ASPRX2"/> + <ctl name="R DSP RX1 Source" value="ASPRX1"/> + <ctl name="R DSP RX2 Source" value="ASPRX2"/> + <ctl name="L2 DSP RX1 Source" value="ASPRX1"/> + <ctl name="L2 DSP RX2 Source" value="ASPRX2"/> + <ctl name="R2 DSP RX1 Source" value="ASPRX1"/> + <ctl name="R2 DSP RX2 Source" value="ASPRX2"/> + <ctl name="Boost Peak Current Limit" value="3.50A"/> + <ctl name="R Boost Peak Current Limit" value="3.50A"/> + <ctl name="L2 Boost Peak Current Limit" value="3.50A"/> + <ctl name="R2 Boost Peak Current Limit" value="3.50A"/> + + <!-- Cirrus ASP TX source --> + <ctl name="ASP TX1 Source" value="VMON" /> + <ctl name="R ASP TX1 Source" value="VMON" /> + <ctl name="L2 ASP TX1 Source" value="VMON" /> + <ctl name="R2 ASP TX1 Source" value="VMON" /> + <ctl name="ASP TX2 Source" value="Zero" /> + <ctl name="R ASP TX2 Source" value="Zero" /> + <ctl name="L2 ASP TX2 Source" value="Zero" /> + <ctl name="R2 ASP TX2 Source" value="Zero" /> + <ctl name="ASP TX3 Source" value="Zero" /> + <ctl name="R ASP TX3 Source" value="Zero" /> + <ctl name="L2 ASP TX3 Source" value="Zero" /> + <ctl name="R2 ASP TX3 Source" value="Zero" /> + <ctl name="ASP TX4 Source" value="Zero" /> + <ctl name="R ASP TX4 Source" value="Zero" /> + <ctl name="L2 ASP TX4 Source" value="Zero" /> + <ctl name="R2 ASP TX4 Source" value="Zero" /> + + <!-- audio RX route initial/default value --> + <ctl name="TDM_0_RX Mixer EP1" value="0" /> + <ctl name="TDM_0_RX Mixer EP2" value="0" /> + <ctl name="TDM_0_RX Mixer EP3" value="0" /> + <ctl name="TDM_0_RX Mixer EP4" value="0" /> + <ctl name="TDM_0_RX Mixer EP5" value="0" /> + <ctl name="TDM_0_RX Mixer EP6" value="0" /> + <ctl name="TDM_0_RX Mixer EP7" value="0" /> + <ctl name="TDM_0_RX Mixer EP8" value="0" /> + <ctl name="TDM_0_RX Mixer NoHost1" value="0" /> + <ctl name="TDM_0_RX Mixer VOIP" value="0" /> + <ctl name="TDM_0_RX Mixer RAW" value="0" /> + <ctl name="TDM_0_RX Mixer IMSV" value="0" /> + <ctl name="TDM_0_RX Mixer US" value="0"/> + + <ctl name="TDM_1_RX Mixer EP1" value="0" /> + <ctl name="TDM_1_RX Mixer EP2" value="0" /> + <ctl name="TDM_1_RX Mixer EP3" value="0" /> + <ctl name="TDM_1_RX Mixer EP4" value="0" /> + <ctl name="TDM_1_RX Mixer EP5" value="0" /> + <ctl name="TDM_1_RX Mixer EP6" value="0" /> + <ctl name="TDM_1_RX Mixer EP7" value="0" /> + <ctl name="TDM_1_RX Mixer EP8" value="0" /> + <ctl name="TDM_1_RX Mixer NoHost1" value="0" /> + + <ctl name="USB_RX Mixer EP1" value="0" /> + <ctl name="USB_RX Mixer EP2" value="0" /> + <ctl name="USB_RX Mixer EP3" value="0" /> + <ctl name="USB_RX Mixer EP4" value="0" /> + <ctl name="USB_RX Mixer EP5" value="0" /> + <ctl name="USB_RX Mixer EP6" value="0" /> + <ctl name="USB_RX Mixer EP7" value="0" /> + <ctl name="USB_RX Mixer NoHost1" value="0" /> + <ctl name="USB_RX Mixer VOIP" value="0" /> + <ctl name="USB_RX Mixer HIFI" value="0" /> + <ctl name="USB_RX Mixer RAW" value="0" /> + <ctl name="USB_RX Mixer IMSV" value="0" /> + + <ctl name="BT_RX Mixer EP1" value="0" /> + <ctl name="BT_RX Mixer EP2" value="0" /> + <ctl name="BT_RX Mixer EP3" value="0" /> + <ctl name="BT_RX Mixer EP4" value="0" /> + <ctl name="BT_RX Mixer EP5" value="0" /> + <ctl name="BT_RX Mixer EP6" value="0" /> + <ctl name="BT_RX Mixer EP7" value="0" /> + <ctl name="BT_RX Mixer NoHost1" value="0" /> + <ctl name="BT_RX Mixer VOIP" value="0" /> + <ctl name="BT_RX Mixer RAW" value="0" /> + <ctl name="BT_RX Mixer IMSV" value="0" /> + + <ctl name="INCALL_RX Mixer EP1" value="0" /> + <ctl name="INCALL_RX Mixer EP2" value="0" /> + <ctl name="INCALL_RX Mixer EP3" value="0" /> + <ctl name="INCALL_RX Mixer EP4" value="0" /> + <ctl name="INCALL_RX Mixer EP5" value="0" /> + <ctl name="INCALL_RX Mixer EP6" value="0" /> + <ctl name="INCALL_RX Mixer EP7" value="0" /> + <ctl name="INCALL_RX Mixer NoHost1" value="0" /> + + <ctl name="SINK_IDS" id="0" value="-1" /> + <ctl name="SINK_IDS" id="1" value="-1" /> + + <!-- audio TX route initial/default value --> + <ctl name="EP1 TX Mixer TDM_0_TX" value="0" /> + <ctl name="EP2 TX Mixer TDM_0_TX" value="0" /> + <ctl name="EP3 TX Mixer TDM_0_TX" value="0" /> + <ctl name="EP4 TX Mixer TDM_0_TX" value="0" /> + <ctl name="EP5 TX Mixer TDM_0_TX" value="0" /> + <ctl name="EP6 TX Mixer TDM_0_TX" value="0" /> + <ctl name="NoHost1 TX Mixer TDM_0_TX" value="0" /> + + <ctl name="EP1 TX Mixer TDM_1_TX" value="0" /> + <ctl name="EP2 TX Mixer TDM_1_TX" value="0" /> + <ctl name="EP3 TX Mixer TDM_1_TX" value="0" /> + <ctl name="EP4 TX Mixer TDM_1_TX" value="0" /> + <ctl name="EP5 TX Mixer TDM_1_TX" value="0" /> + <ctl name="EP6 TX Mixer TDM_1_TX" value="0" /> + <ctl name="NoHost1 TX Mixer TDM_1_TX" value="0" /> + + <ctl name="EP1 TX Mixer INTERNAL_MIC_TX" value="0" /> + <ctl name="EP2 TX Mixer INTERNAL_MIC_TX" value="0" /> + <ctl name="EP3 TX Mixer INTERNAL_MIC_TX" value="0" /> + <ctl name="EP4 TX Mixer INTERNAL_MIC_TX" value="0" /> + <ctl name="EP5 TX Mixer INTERNAL_MIC_TX" value="0" /> + <ctl name="EP6 TX Mixer INTERNAL_MIC_TX" value="0" /> + <ctl name="NoHost1 TX Mixer INTERNAL_MIC_TX" value="0" /> + <ctl name="VOIP TX Mixer INTERNAL_MIC_TX" value="0" /> + + <ctl name="EP1 TX Mixer BT_TX" value="0" /> + <ctl name="EP2 TX Mixer BT_TX" value="0" /> + <ctl name="EP3 TX Mixer BT_TX" value="0" /> + <ctl name="EP4 TX Mixer BT_TX" value="0" /> + <ctl name="EP5 TX Mixer BT_TX" value="0" /> + <ctl name="EP6 TX Mixer BT_TX" value="0" /> + <ctl name="NoHost1 TX Mixer BT_TX" value="0" /> + <ctl name="VOIP TX Mixer BT_TX" value="0" /> + + <ctl name="EP1 TX Mixer USB_TX" value="0" /> + <ctl name="EP2 TX Mixer USB_TX" value="0" /> + <ctl name="EP3 TX Mixer USB_TX" value="0" /> + <ctl name="EP4 TX Mixer USB_TX" value="0" /> + <ctl name="EP5 TX Mixer USB_TX" value="0" /> + <ctl name="EP6 TX Mixer USB_TX" value="0" /> + <ctl name="NoHost1 TX Mixer USB_TX" value="0" /> + <ctl name="VOIP TX Mixer USB_TX" value="0" /> + + <ctl name="EP1 TX Mixer INCALL_TX" value="0" /> + <ctl name="EP2 TX Mixer INCALL_TX" value="0" /> + <ctl name="EP3 TX Mixer INCALL_TX" value="0" /> + <ctl name="EP4 TX Mixer INCALL_TX" value="0" /> + <ctl name="EP5 TX Mixer INCALL_TX" value="0" /> + <ctl name="EP6 TX Mixer INCALL_TX" value="0" /> + <ctl name="NoHost1 TX Mixer INCALL_TX" value="0" /> + + <ctl name="EP5 TX Mixer INTERNAL_MIC_US_TX" value="0"/> + <ctl name="EP4 TX Mixer I2S_2_TX" value="0" /> + + <!-- AoC Mic setting --> + <ctl name="MIC DC Blocker" value="1" /> + <ctl name="MIC HW Gain At High Power Mode (cB)" value="0" /> + <ctl name="MIC Record Soft Gain (dB)" value="-40" /> + + <!-- USB setting v2 --> + <ctl name="USB Bus ID v2" value="2" /> + <ctl name="USB Dev ID v2" value="2" /> + <ctl name="USB Playback EP ID v2" value="1" /> + <ctl name="USB Playback FORMAT v2" value="0" /> + <ctl name="USB Playback SR v2" value="48000" /> + <ctl name="USB Playback CH v2" value="2" /> + <ctl name="USB Playback BW v2" value="24" /> + <ctl name="USB Capture EP ID v2" value="1" /> + <ctl name="USB Capture FORMAT v2" value="0" /> + <ctl name="USB Capture SR v2" value="48000" /> + <ctl name="USB Capture CH v2" value="1" /> + <ctl name="USB Capture BW v2" value="16" /> + + <ctl name="AoC Modem Downlink ASRC Mode" value="ASP_ON" /> + <ctl name="Voice Call Mic Source" value="Builtin_MIC" /> + <ctl name="Mic Spatial Module Enable" value="0" /> + <ctl name="Audio Capture Eraser Enable" value="0" /> + <ctl name="Hotword Tap Enable" value="0" /> + + <!-- audio PDM mic default state --> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="-1" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="-1" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="-1" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1" /> + <ctl name="Audio Capture Mic Source" value="Builtin_MIC" /> + + <!-- audio Ultrasound mic default state --> + <ctl name="BUILDIN US MIC ID CAPTURE LIST" id="0" value="-1"/> + <ctl name="BUILDIN US MIC ID CAPTURE LIST" id="1" value="-1"/> + <ctl name="BUILDIN US MIC ID CAPTURE LIST" id="2" value="-1"/> + <ctl name="BUILDIN US MIC ID CAPTURE LIST" id="3" value="-1"/> + + <!-- sidetone controls --> + <ctl name="Sidetone Enable" value="0" /> + <ctl name="Sidetone Volume" value="-96" /> + <ctl name="Sidetone Selected Mic" value="0" /> + <ctl name="Sidetone EQ Stage Number" value="1" /> + <!-- IEEE 754, value is in float --> + <ctl name="Sidetone Biquad0" id="0" value="0" /> + <ctl name="Sidetone Biquad0" id="1" value="0" /> + <ctl name="Sidetone Biquad0" id="2" value="0" /> + <ctl name="Sidetone Biquad0" id="3" value="0" /> + <ctl name="Sidetone Biquad0" id="4" value="0" /> + <ctl name="Sidetone Biquad0" id="5" value="0" /> + <ctl name="Sidetone Biquad1" id="0" value="0" /> + <ctl name="Sidetone Biquad1" id="1" value="0" /> + <ctl name="Sidetone Biquad1" id="2" value="0" /> + <ctl name="Sidetone Biquad1" id="3" value="0" /> + <ctl name="Sidetone Biquad1" id="4" value="0" /> + <ctl name="Sidetone Biquad1" id="5" value="0" /> + <ctl name="Sidetone Biquad2" id="0" value="0" /> + <ctl name="Sidetone Biquad2" id="1" value="0" /> + <ctl name="Sidetone Biquad2" id="2" value="0" /> + <ctl name="Sidetone Biquad2" id="3" value="0" /> + <ctl name="Sidetone Biquad2" id="4" value="0" /> + <ctl name="Sidetone Biquad2" id="5" value="0" /> + <ctl name="Sidetone Biquad3" id="0" value="0" /> + <ctl name="Sidetone Biquad3" id="1" value="0" /> + <ctl name="Sidetone Biquad3" id="2" value="0" /> + <ctl name="Sidetone Biquad3" id="3" value="0" /> + <ctl name="Sidetone Biquad3" id="4" value="0" /> + <ctl name="Sidetone Biquad3" id="5" value="0" /> + <ctl name="Sidetone Biquad4" id="0" value="0" /> + <ctl name="Sidetone Biquad4" id="1" value="0" /> + <ctl name="Sidetone Biquad4" id="2" value="0" /> + <ctl name="Sidetone Biquad4" id="3" value="0" /> + <ctl name="Sidetone Biquad4" id="4" value="0" /> + <ctl name="Sidetone Biquad4" id="5" value="0" /> + + <ctl name="Incall Capture Stream0" value="Off" /> + <ctl name="Incall Capture Stream1" value="Off" /> + <ctl name="Incall Capture Stream2" value="Off" /> + + <!-- These two controls control the muting function of mics and sinks during the voice call. --> + <!-- They would be enabled by HAL. --> + <ctl name="Incall Sink Mute" value="0" /> + <ctl name="Incall Mic Mute" value="0" /> + + <ctl name="Compress Offload Volume" value="1000" /> + <ctl name="Decoder Reference Enable" value="0" /> + <ctl name="LVM Enable" value="0" /> + + <!-- sidetone dynamic control --> + <path name="sidetone-for handset"> + <!-- 1065353216 = 0x3f800000 = 1.0 --> + <ctl name="Sidetone Biquad0" id="0" value="1065353216" /> + <ctl name="Sidetone Biquad0" id="1" value="1065353216" /> + <ctl name="Sidetone Biquad0" id="2" value="0" /> + <ctl name="Sidetone Biquad0" id="3" value="0" /> + <ctl name="Sidetone Biquad0" id="4" value="0" /> + <ctl name="Sidetone Biquad0" id="5" value="0" /> + <ctl name="Sidetone Biquad1" id="0" value="1065353216" /> + <ctl name="Sidetone Biquad1" id="1" value="1065353216" /> + <ctl name="Sidetone Biquad1" id="2" value="0" /> + <ctl name="Sidetone Biquad1" id="3" value="0" /> + <ctl name="Sidetone Biquad1" id="4" value="0" /> + <ctl name="Sidetone Biquad1" id="5" value="0" /> + <ctl name="Sidetone Biquad2" id="0" value="1065353216" /> + <ctl name="Sidetone Biquad2" id="1" value="1065353216" /> + <ctl name="Sidetone Biquad2" id="2" value="0" /> + <ctl name="Sidetone Biquad2" id="3" value="0" /> + <ctl name="Sidetone Biquad2" id="4" value="0" /> + <ctl name="Sidetone Biquad2" id="5" value="0" /> + <ctl name="Sidetone Biquad3" id="0" value="1065353216" /> + <ctl name="Sidetone Biquad3" id="1" value="1065353216" /> + <ctl name="Sidetone Biquad3" id="2" value="0" /> + <ctl name="Sidetone Biquad3" id="3" value="0" /> + <ctl name="Sidetone Biquad3" id="4" value="0" /> + <ctl name="Sidetone Biquad3" id="5" value="0" /> + <ctl name="Sidetone Biquad4" id="0" value="1065353216" /> + <ctl name="Sidetone Biquad4" id="1" value="1065353216" /> + <ctl name="Sidetone Biquad4" id="2" value="0" /> + <ctl name="Sidetone Biquad4" id="3" value="0" /> + <ctl name="Sidetone Biquad4" id="4" value="0" /> + <ctl name="Sidetone Biquad4" id="5" value="0" /> + <ctl name="Sidetone EQ Stage Number" value="5" /> + <ctl name="Sidetone Volume" value="-90" /> + <ctl name="Sidetone Enable" value="1" /> + </path> + + <!-- audio playback dynamic route --> + <path name="primary-playback -> speaker"> + <ctl name="TDM_0_RX Mixer EP2" value="1" /> + </path> + + <path name="primary-playback-0 -> speaker"> + <path name="primary-playback -> speaker" /> + </path> + + <path name="primary-playback-0 -> speaker-earpiece"> + <path name="primary-playback -> speaker" /> + </path> + + <path name="primary-playback-0 -> speaker-safe"> + <path name="primary-playback -> speaker" /> + </path> + + <path name="primary-playback -> bt"> + <ctl name="BT_RX Mixer EP2" value="1" /> + </path> + + <path name="primary-playback-0 -> bt"> + <path name="primary-playback -> bt" /> + </path> + + <path name="primary-playback-0 -> bluetooth-a2dp-device"> + <path name="primary-playback -> bt" /> + </path> + + <path name="primary-playback-0 -> bluetooth-a2dp-headphone"> + <path name="primary-playback -> bt" /> + </path> + + <path name="primary-playback-0 -> bluetooth-a2dp-speaker"> + <path name="primary-playback -> bt" /> + </path> + + <path name="primary-playback-0 -> bluetooth-sco-default"> + <path name="primary-playback -> bt" /> + </path> + + <path name="primary-playback-0 -> bluetooth-sco-headset"> + <path name="primary-playback -> bt" /> + </path> + + <path name="primary-playback-0 -> bluetooth-sco-car-kit"> + <path name="primary-playback -> bt" /> + </path> + + <path name="primary-playback-0 -> usb"> + <ctl name="USB_RX Mixer EP2" value="1" /> + </path> + + <path name="primary-playback-0 -> usb-headset"> + <path name="primary-playback-0 -> usb" /> + </path> + + <path name="primary-playback-0 -> usb-device"> + <path name="primary-playback-0 -> usb" /> + </path> + + <path name="primary-playback-0 -> usb-dock"> + <path name="primary-playback-0 -> usb" /> + </path> + + <path name="raw-playback -> speaker"> + <ctl name="TDM_0_RX Mixer RAW" value="1" /> + </path> + + <path name="raw-playback-0 -> speaker"> + <path name="raw-playback -> speaker" /> + </path> + + <path name="raw-playback-0 -> speaker-earpiece"> + <path name="raw-playback -> speaker" /> + </path> + + <path name="raw-playback-0 -> speaker-safe"> + <path name="raw-playback -> speaker" /> + </path> + + <path name="raw-playback -> bt"> + <ctl name="BT_RX Mixer RAW" value="1" /> + </path> + + <path name="raw-playback-0 -> bt"> + <path name="raw-playback -> bt" /> + </path> + + <path name="raw-playback-0 -> bluetooth-a2dp-device"> + <path name="raw-playback -> bt" /> + </path> + + <path name="raw-playback-0 -> bluetooth-a2dp-headphone"> + <path name="raw-playback -> bt" /> + </path> + + <path name="raw-playback-0 -> bluetooth-a2dp-speaker"> + <path name="raw-playback -> bt" /> + </path> + + <path name="raw-playback-0 -> bluetooth-sco-default"> + <path name="raw-playback -> bt" /> + </path> + + <path name="raw-playback-0 -> bluetooth-sco-headset"> + <path name="raw-playback -> bt" /> + </path> + + <path name="raw-playback-0 -> bluetooth-sco-car-kit"> + <path name="raw-playback -> bt" /> + </path> + + <path name="raw-playback-0 -> usb"> + <ctl name="USB_RX Mixer RAW" value="1" /> + </path> + + <path name="raw-playback-0 -> usb-headset"> + <path name="raw-playback-0 -> usb" /> + </path> + + <path name="raw-playback-0 -> usb-device"> + <path name="raw-playback-0 -> usb" /> + </path> + + <path name="deep-buffer-playback -> speaker"> + <ctl name="TDM_0_RX Mixer EP6" value="1" /> + </path> + + <path name="deep-buffer-playback-0 -> speaker"> + <path name="deep-buffer-playback -> speaker" /> + </path> + + <path name="deep-buffer-playback-0 -> speaker-earpiece"> + <path name="deep-buffer-playback -> speaker" /> + </path> + + <path name="deep-buffer-playback-0 -> speaker-safe"> + <path name="deep-buffer-playback -> speaker" /> + </path> + + <path name="deep-buffer-playback -> bt"> + <ctl name="BT_RX Mixer EP6" value="1" /> + </path> + + <path name="deep-buffer-playback-0 -> bt"> + <path name="deep-buffer-playback -> bt" /> + </path> + + <path name="deep-buffer-playback-0 -> bluetooth-a2dp-device"> + <path name="deep-buffer-playback -> bt" /> + </path> + + <path name="deep-buffer-playback-0 -> bluetooth-a2dp-headphone"> + <path name="deep-buffer-playback -> bt" /> + </path> + + <path name="deep-buffer-playback-0 -> bluetooth-a2dp-speaker"> + <path name="deep-buffer-playback -> bt" /> + </path> + + <path name="deep-buffer-playback-0 -> bluetooth-sco-default"> + <path name="deep-buffer-playback -> bt" /> + </path> + + <path name="deep-buffer-playback-0 -> bluetooth-sco-headset"> + <path name="deep-buffer-playback -> bt" /> + </path> + + <path name="deep-buffer-playback-0 -> bluetooth-sco-car-kit"> + <path name="deep-buffer-playback -> bt" /> + </path> + + <path name="deep-buffer-playback-0 -> usb"> + <ctl name="USB_RX Mixer EP6" value="1" /> + </path> + + <path name="deep-buffer-playback-0 -> usb-headset"> + <path name="deep-buffer-playback-0 -> usb" /> + </path> + + <path name="deep-buffer-playback-0 -> usb-device"> + <path name="deep-buffer-playback-0 -> usb" /> + </path> + + <path name="deep-buffer-playback-0 -> usb-dock"> + <path name="deep-buffer-playback-0 -> usb" /> + </path> + + <path name="compress-offload-playback"> + <ctl name="LVM Enable" value="1" /> + </path> + + <path name="compress-offload-playback -> speaker"> + <path name="compress-offload-playback" /> + <ctl name="TDM_0_RX Mixer EP7" value="1" /> + </path> + + <path name="compress-offload-playback-0 -> speaker"> + <path name="compress-offload-playback -> speaker" /> + </path> + + <path name="compress-offload-playback-0 -> speaker-earpiece"> + <path name="compress-offload-playback -> speaker" /> + </path> + + <path name="compress-offload-playback-0 -> speaker-safe"> + <path name="compress-offload-playback -> speaker" /> + </path> + + <path name="compress-offload-playback -> bt"> + <ctl name="BT_RX Mixer EP7" value="1" /> + </path> + + <path name="compress-offload-playback-0 -> bt"> + <path name="compress-offload-playback -> bt" /> + </path> + + <path name="compress-offload-playback-0 -> bluetooth-a2dp-device"> + <path name="compress-offload-playback -> bt" /> + </path> + + <path name="compress-offload-playback-0 -> bluetooth-a2dp-headphone"> + <path name="compress-offload-playback -> bt" /> + </path> + + <path name="compress-offload-playback-0 -> bluetooth-a2dp-speaker"> + <path name="compress-offload-playback -> bt" /> + </path> + + <path name="compress-offload-playback-0 -> bluetooth-sco-default"> + <path name="compress-offload-playback -> bt" /> + </path> + + <path name="compress-offload-playback-0 -> bluetooth-sco-headset"> + <path name="compress-offload-playback -> bt" /> + </path> + + <path name="compress-offload-playback-0 -> bluetooth-sco-car-kit"> + <path name="compress-offload-playback -> bt" /> + </path> + + <path name="compress-offload-playback-0 -> usb"> + <ctl name="USB_RX Mixer EP7" value="1" /> + </path> + + <path name="compress-offload-playback-0 -> usb-headset"> + <path name="compress-offload-playback-0 -> usb" /> + </path> + + <path name="compress-offload-playback-0 -> usb-device"> + <path name="compress-offload-playback-0 -> usb" /> + </path> + + <path name="compress-offload-playback-0 -> usb-dock"> + <path name="compress-offload-playback-0 -> usb" /> + </path> + + <path name="mmap-playback -> speaker"> + <ctl name="TDM_0_RX Mixer EP1" value="1" /> + </path> + + <path name="mmap-playback-0 -> speaker"> + <path name="mmap-playback -> speaker" /> + </path> + + <path name="mmap-playback-0 -> speaker-earpiece"> + <path name="mmap-playback -> speaker" /> + </path> + + <path name="mmap-playback-0 -> speaker-safe"> + <path name="mmap-playback -> speaker" /> + </path> + + <path name="mmap-playback -> bt"> + <ctl name="BT_RX Mixer EP1" value="1" /> + </path> + + <path name="mmap-playback-0 -> bt"> + <path name="mmap-playback -> bt" /> + </path> + + <path name="mmap-playback-0 -> bluetooth-a2dp-device"> + <path name="mmap-playback -> bt" /> + </path> + + <path name="mmap-playback-0 -> bluetooth-a2dp-headphone"> + <path name="mmap-playback -> bt" /> + </path> + + <path name="mmap-playback-0 -> bluetooth-a2dp-speaker"> + <path name="mmap-playback -> bt" /> + </path> + + <path name="mmap-playback-0 -> bluetooth-sco-default"> + <path name="mmap-playback -> bt" /> + </path> + + <path name="mmap-playback-0 -> bluetooth-sco-headset"> + <path name="mmap-playback -> bt" /> + </path> + + <path name="mmap-playback-0 -> bluetooth-sco-car-kit"> + <path name="mmap-playback -> bt" /> + </path> + + <path name="mmap-playback-0 -> usb"> + <ctl name="USB_RX Mixer EP1" value="1" /> + </path> + + <path name="mmap-playback-0 -> usb-headset"> + <path name="mmap-playback-0 -> usb" /> + </path> + + <path name="mmap-playback-0 -> usb-device"> + <path name="mmap-playback-0 -> usb" /> + </path> + + <path name="mmap-playback-0 -> usb-dock"> + <path name="mmap-playback-0 -> usb" /> + </path> + + <path name="hifi-playback-0 -> usb"> + <ctl name="USB_RX Mixer HIFI" value="1" /> + </path> + + <path name="hifi-playback-0 -> usb-headset"> + <path name="hifi-playback-0 -> usb" /> + </path> + + <path name="hifi-playback-0 -> usb-device"> + <path name="hifi-playback-0 -> usb" /> + </path> + + <path name="voip-playback -> speaker"> + <ctl name="TDM_0_RX Mixer VOIP" value="1" /> + </path> + + <path name="voip-playback-0 -> speaker"> + <path name="voip-playback -> speaker" /> + </path> + + <path name="voip-playback-0 -> speaker-earpiece"> + <path name="voip-playback -> speaker" /> + </path> + + <path name="voip-playback-0 -> speaker-safe"> + <path name="voip-playback -> speaker" /> + </path> + + <path name="voip-playback -> bt"> + <ctl name="BT_RX Mixer VOIP" value="1" /> + </path> + + <path name="voip-playback-0 -> bt"> + <path name="voip-playback -> bt" /> + </path> + + <path name="voip-playback-0 -> bluetooth-a2dp-device"> + <path name="voip-playback -> bt" /> + </path> + + <path name="voip-playback-0 -> bluetooth-a2dp-headphone"> + <path name="voip-playback -> bt" /> + </path> + + <path name="voip-playback-0 -> bluetooth-a2dp-speaker"> + <path name="voip-playback -> bt" /> + </path> + + <path name="voip-playback-0 -> bluetooth-sco-default"> + <path name="voip-playback -> bt" /> + </path> + + <path name="voip-playback-0 -> bluetooth-sco-headset"> + <path name="voip-playback -> bt" /> + </path> + + <path name="voip-playback-0 -> bluetooth-sco-car-kit"> + <path name="voip-playback -> bt" /> + </path> + + <path name="voip-playback-0 -> usb"> + <ctl name="USB_RX Mixer VOIP" value="1" /> + </path> + + <path name="voip-playback-0 -> usb-headset"> + <path name="voip-playback-0 -> usb" /> + </path> + + <path name="voip-playback-0 -> usb-device"> + <path name="voip-playback-0 -> usb" /> + </path> + + <path name="voip-playback-0 -> usb-dock"> + <path name="voip-playback-0 -> usb" /> + </path> + + <path name="immersive-playback -> speaker"> + <ctl name="TDM_0_RX Mixer IMSV" value="1" /> + </path> + + <path name="immersive-playback-0 -> speaker"> + <path name="immersive-playback -> speaker" /> + </path> + + <path name="immersive-playback-0 -> speaker-earpiece"> + <path name="immersive-playback -> speaker" /> + </path> + + <path name="immersive-playback-0 -> speaker-safe"> + <path name="immersive-playback -> speaker" /> + </path> + + <path name="immersive-playback -> bt"> + <ctl name="BT_RX Mixer IMSV" value="1" /> + </path> + + <path name="immersive-playback-0 -> bt"> + <path name="immersive-playback -> bt" /> + </path> + + <path name="immersive-playback-0 -> bluetooth-a2dp-device"> + <path name="immersive-playback -> bt" /> + </path> + + <path name="immersive-playback-0 -> bluetooth-a2dp-headphone"> + <path name="immersive-playback -> bt" /> + </path> + + <path name="immersive-playback-0 -> bluetooth-a2dp-speaker"> + <path name="immersive-playback -> bt" /> + </path> + + <path name="immersive-playback-0 -> usb"> + <ctl name="USB_RX Mixer IMSV" value="1" /> + </path> + + <path name="immersive-playback-0 -> usb-headset"> + <path name="immersive-playback-0 -> usb" /> + </path> + + <path name="immersive-playback-0 -> usb-device"> + <path name="immersive-playback-0 -> usb" /> + </path> + + <path name="haptic-playback -> speaker"> + <ctl name="TDM_0_RX Mixer EP3" value="1" /> + <ctl name="TDM_0_RX Mixer EP8" value="1" /> + </path> + + <path name="haptic-playback-0 -> speaker"> + <path name="haptic-playback -> speaker" /> + </path> + + <path name="haptic-playback-0 -> speaker-earpiece"> + <path name="haptic-playback -> speaker" /> + </path> + + <path name="haptic-playback-0 -> speaker-safe"> + <path name="haptic-playback -> speaker" /> + </path> + + <path name="haptic-playback -> bt"> + <ctl name="BT_RX Mixer EP3" value="1" /> + <ctl name="TDM_0_RX Mixer EP8" value="1" /> + </path> + + <path name="haptic-playback-0 -> bt"> + <path name="haptic-playback -> bt" /> + </path> + + <path name="haptic-playback-0 -> bluetooth-a2dp-device"> + <path name="haptic-playback -> bt" /> + </path> + + <path name="haptic-playback-0 -> bluetooth-a2dp-headphone"> + <path name="haptic-playback -> bt" /> + </path> + + <path name="haptic-playback-0 -> bluetooth-a2dp-speaker"> + <path name="haptic-playback -> bt" /> + </path> + + <path name="haptic-playback-0 -> bluetooth-sco-default"> + <path name="haptic-playback -> bt" /> + </path> + + <path name="haptic-playback-0 -> bluetooth-sco-headset"> + <path name="haptic-playback -> bt" /> + </path> + + <path name="haptic-playback-0 -> bluetooth-sco-car-kit"> + <path name="haptic-playback -> bt" /> + </path> + + <path name="haptic-playback-0 -> usb"> + <ctl name="USB_RX Mixer EP3" value="1" /> + <ctl name="TDM_0_RX Mixer EP8" value="1" /> + </path> + + <path name="haptic-playback-0 -> usb-headset"> + <path name="haptic-playback-0 -> usb" /> + </path> + + <path name="haptic-playback-0 -> usb-device"> + <path name="haptic-playback-0 -> usb" /> + </path> + + <path name="haptic-playback-0 -> usb-dock"> + <path name="haptic-playback-0 -> usb" /> + </path> + + <!-- audio capture dynamic route --> + <path name="microphones -> primary-capture-0"> + <ctl name="EP1 TX Mixer INTERNAL_MIC_TX" value="1" /> + </path> + + <path name="back-microphones -> primary-capture-0"> + <ctl name="EP1 TX Mixer INTERNAL_MIC_TX" value="1" /> + </path> + + <path name="usb-microphones -> primary-capture-0"> + <ctl name="EP1 TX Mixer USB_TX" value="1" /> + </path> + + <path name="usb-headset-microphones -> primary-capture-0"> + <path name="usb-microphones -> primary-capture-0" /> + </path> + + <path name="usb-device-microphones -> primary-capture-0"> + <path name="usb-microphones -> primary-capture-0" /> + </path> + + <path name="microphones -> voip-capture-0"> + <ctl name="VOIP TX Mixer INTERNAL_MIC_TX" value="1" /> + </path> + + <path name="back-microphones -> voip-capture-0"> + <ctl name="VOIP TX Mixer INTERNAL_MIC_TX" value="1" /> + </path> + + <path name="usb-microphones -> voip-capture-0"> + <ctl name="VOIP TX Mixer USB_TX" value="1" /> + </path> + + <path name="usb-headset-microphones -> voip-capture-0"> + <path name="usb-microphones -> voip-capture-0" /> + </path> + + <path name="usb-device-microphones -> voip-capture-0"> + <path name="usb-microphones -> voip-capture-0" /> + </path> + + <path name="bluetooth-sco-headset-microphones -> voip-capture-0"> + <ctl name="VOIP TX Mixer BT_TX" value="1" /> + </path> + + <path name="microphones -> fast-capture-0"> + <ctl name="EP3 TX Mixer INTERNAL_MIC_TX" value="1" /> + </path> + + <path name="back-microphones -> fast-capture-0"> + <ctl name="EP3 TX Mixer INTERNAL_MIC_TX" value="1" /> + </path> + + <path name="usb-microphones -> fast-capture-0"> + <ctl name="EP3 TX Mixer USB_TX" value="1" /> + </path> + + <path name="usb-headset-microphones -> fast-capture-0"> + <path name="usb-microphones -> fast-capture-0" /> + </path> + + <path name="usb-device-microphones -> fast-capture-0"> + <path name="usb-microphones -> fast-capture-0" /> + </path> + + <path name="bluetooth-sco-headset-microphones -> fast-capture-0"> + <ctl name="EP3 TX Mixer BT_TX" value="1" /> + </path> + + <path name="microphones -> sound-trigger-capture-0"> + </path> + + <path name="microphones -> sound-trigger-tap-capture-0"> + </path> + + <path name="microphones -> hotword-lookback-capture-0"> + </path> + + <!-- voice-call dynamic route --> + <path name="voice-call-downlink-0 -> speaker"> + <ctl name="TDM_0_RX Mixer EP5" value="1" /> + </path> + + <path name="voice-call-downlink-0 -> speaker-earpiece"> + <ctl name="TDM_0_RX Mixer EP5" value="1" /> + </path> + + <path name="voice-call-downlink-0 -> bt"> + <ctl name="BT_RX Mixer EP5" value="1" /> + </path> + + <path name="voice-call-downlink-0 -> bluetooth-sco-default"> + <path name="voice-call-downlink-0 -> bt" /> + </path> + + <path name="voice-call-downlink-0 -> bluetooth-sco-headset"> + <path name="voice-call-downlink-0 -> bt" /> + </path> + + <path name="voice-call-downlink-0 -> bluetooth-sco-car-kit"> + <path name="voice-call-downlink-0 -> bt" /> + </path> + + <path name="voice-call-downlink-0 -> usb"> + <ctl name="USB_RX Mixer EP5" value="1" /> + </path> + + <path name="voice-call-downlink-0 -> usb-headset"> + <path name="voice-call-downlink-0 -> usb" /> + </path> + + <path name="voice-call-downlink-0 -> usb-device"> + <path name="voice-call-downlink-0 -> usb" /> + </path> + + <path name="voice-call-downlink-0 -> usb-dock"> + <path name="voice-call-downlink-0 -> usb" /> + </path> + + <path name="voice-call-downlink-0 -> null-sink"> + <ctl name="INCALL_RX Mixer EP5" value="1" /> + </path> + + <path name="microphones -> voice-call-uplink-0"> + <ctl name="EP4 TX Mixer INTERNAL_MIC_TX" value="1" /> + </path> + + <path name="back-microphones -> voice-call-uplink-0"> + <ctl name="EP4 TX Mixer INTERNAL_MIC_TX" value="1" /> + </path> + + <path name="usb-microphones -> voice-call-uplink-0"> + <ctl name="EP4 TX Mixer USB_TX" value="1" /> + </path> + + <path name="usb-headset-microphones -> voice-call-uplink-0"> + <path name="usb-microphones -> voice-call-uplink-0" /> + </path> + + <path name="usb-device-microphones -> voice-call-uplink-0"> + <path name="usb-microphones -> voice-call-uplink-0" /> + </path> + + <path name="bluetooth-sco-headset-microphones -> voice-call-uplink-0"> + <ctl name="EP4 TX Mixer BT_TX" value="1" /> + </path> + + <path name="null-source -> voice-call-uplink-0"> + <ctl name="EP4 TX Mixer INCALL_TX" value="1" /> + </path> + + <path name="hostless-ulC spk-vi"> + <ctl name="NoHost1 TX Mixer TDM_0_TX" value="1" /> + </path> + + <path name="telephony-rx (VOICE_DOWNLINK) -> in-call-capture-0"> + <ctl name="Incall Capture Stream0" value="DL" /> + </path> + + <path name="telephony-rx (VOICE_UPLINK) -> in-call-capture-0"> + <ctl name="Incall Capture Stream0" value="UL" /> + </path> + + <path name="telephony-rx (VOICE_CALL) -> in-call-capture-0"> + <ctl name="Incall Capture Stream0" value="UL_DL" /> + </path> + + <path name="telephony-rx (VOICE_DOWNLINK) -> in-call-capture-1"> + <ctl name="Incall Capture Stream1" value="DL" /> + </path> + + <path name="telephony-rx (VOICE_UPLINK) -> in-call-capture-1"> + <ctl name="Incall Capture Stream1" value="UL" /> + </path> + + <path name="telephony-rx (VOICE_CALL) -> in-call-capture-1"> + <ctl name="Incall Capture Stream1" value="UL_DL" /> + </path> + + <path name="telephony-rx (VOICE_DOWNLINK) -> in-call-capture-2"> + <ctl name="Incall Capture Stream2" value="DL" /> + </path> + + <path name="telephony-rx (VOICE_UPLINK) -> in-call-capture-2"> + <ctl name="Incall Capture Stream2" value="UL" /> + </path> + + <path name="telephony-rx (VOICE_CALL) -> in-call-capture-2"> + <ctl name="Incall Capture Stream2" value="UL_DL" /> + </path> + + <path name="microphones -> mmap-capture-0"> + <ctl name="EP2 TX Mixer INTERNAL_MIC_TX" value="1" /> + </path> + + <path name="usb-microphones -> mmap-capture-0"> + <ctl name="EP2 TX Mixer USB_TX" value="1" /> + </path> + + <path name="usb-headset-microphones -> mmap-capture-0"> + <path name="usb-microphones -> mmap-capture-0" /> + </path> + + <path name="usb-device-microphones -> mmap-capture-0"> + <path name="usb-microphones -> mmap-capture-0" /> + </path> + + <path name="bluetooth-sco-headset-microphones -> mmap-capture-0"> + <ctl name="EP2 TX Mixer BT_TX" value="1" /> + </path> + + <!-- codec setting --> + <!-- Rx device --> + <path name="speaker-earpiece"> + <ctl name="PCM Source" value="ASP" /> + <ctl name="AMP PCM Gain" value="6" /> + <ctl name="Main AMP Enable Switch" value="1" /> + <ctl name="Digital PCM Volume" value="817" /> + </path> + + <path name="speaker-earpiece (VOICE)"> + <ctl name="PCM Source" value="ASP" /> + <ctl name="AMP PCM Gain" value="6" /> + <ctl name="Main AMP Enable Switch" value="1" /> + <ctl name="Digital PCM Volume" value="817" /> + </path> + + <path name="speaker"> + <ctl name="Boost Peak Current Limit" value="4.50A"/> + <ctl name="R Boost Peak Current Limit" value="4.50A"/> + <ctl name="L2 Boost Peak Current Limit" value="4.50A"/> + <ctl name="R2 Boost Peak Current Limit" value="4.50A"/> + <!-- Set digital gain --> + <ctl name="Digital PCM Volume" value="817"/> + <ctl name="R Digital PCM Volume" value="817"/> + <ctl name="L2 Digital PCM Volume" value="817"/> + <ctl name="R2 Digital PCM Volume" value="817"/> + <ctl name="Main AMP Enable Switch" value="1"/> + <ctl name="R Main AMP Enable Switch" value="1"/> + <ctl name="L2 Main AMP Enable Switch" value="1"/> + <ctl name="R2 Main AMP Enable Switch" value="1"/> + </path> + + <path name="speaker (VOICE)"> + <!-- Set DSP input to (A+B)/2 --> + <ctl name="DSP RX2 Source" value="ASPRX2"/> + <ctl name="R DSP RX2 Source" value="ASPRX2"/> + <ctl name="L2 DSP RX2 Source" value="ASPRX2"/> + <ctl name="R2 DSP RX2 Source" value="ASPRX2"/> + <!-- Set digital gain --> + <ctl name="Digital PCM Volume" value="817"/> + <ctl name="R Digital PCM Volume" value="817"/> + <ctl name="L2 Digital PCM Volume" value="817"/> + <ctl name="R2 Digital PCM Volume" value="817"/> + <!-- Enable all amps --> + <ctl name="Main AMP Enable Switch" value="1"/> + <ctl name="R Main AMP Enable Switch" value="1"/> + <ctl name="L2 Main AMP Enable Switch" value="1"/> + <ctl name="R2 Main AMP Enable Switch" value="1"/> + </path> + + <path name="speaker-safe"> + <path name="speaker"/> + </path> + + <path name="speaker-amp1"> + <ctl name="Boost Peak Current Limit" value="4.50A"/> + <!-- Set digital gain --> + <ctl name="Digital PCM Volume" value="817"/> + <ctl name="Main AMP Enable Switch" value="1"/> + </path> + + <path name="speaker-amp2"> + <ctl name="L2 Boost Peak Current Limit" value="4.50A"/> + <!-- Set digital gain --> + <ctl name="L2 Digital PCM Volume" value="817"/> + <ctl name="L2 Main AMP Enable Switch" value="1"/> + </path> + + <path name="speaker-amp3"> + <ctl name="R2 Boost Peak Current Limit" value="4.50A"/> + <!-- Set digital gain --> + <ctl name="R2 Digital PCM Volume" value="817"/> + <ctl name="R2 Main AMP Enable Switch" value="1"/> + </path> + + <path name="speaker-amp4"> + <ctl name="R Boost Peak Current Limit" value="4.50A"/> + <!-- Set digital gain --> + <ctl name="R Digital PCM Volume" value="817"/> + <ctl name="R Main AMP Enable Switch" value="1"/> + </path> + + <!-- Tx device --> + <path name="microphones"> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1" /> + <ctl name="MIC DC Blocker" value="1" /> + <ctl name="MIC Record Soft Gain (dB)" value="22" /> + </path> + + <path name="microphones (VOICE)"> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1" /> + <ctl name="MIC DC Blocker" value="1" /> + <ctl name="MIC HW Gain At High Power Mode (cB)" value="130" /> + <ctl name="MIC Record Soft Gain (dB)" value="0" /> + </path> + + <path name="microphones (VOICE_RECOGNITION)"> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1" /> + <ctl name="MIC DC Blocker" value="1" /> + <ctl name="MIC Record Soft Gain (dB)" value="22" /> + </path> + + <path name="microphones (VOICE_RECOGNITION,SOUND_TRIGGER_TAP)"> + <ctl name="Audio Capture Eraser Enable" value="1" /> + <ctl name="Hotword Tap Enable" value="1" /> + <ctl name="MIC Record Soft Gain (dB)" value="0" /> + </path> + + <path name="microphones (SOUND_TRIGGER_AEC)"> + <ctl name="Audio Capture Eraser Enable" value="1" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1" /> + <ctl name="MIC DC Blocker" value="1" /> + <ctl name="Audio Capture Mic Source" value="ERASER" /> + <ctl name="MIC Record Soft Gain (dB)" value="0" /> + </path> + + <path name="back-microphones"> + <ctl name="Mic Spatial Module Enable" value="1" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1" /> + <ctl name="MIC DC Blocker" value="1" /> + <ctl name="MIC Record Soft Gain (dB)" value="22" /> + </path> + + <path name="back-microphones (VOICE)"> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1" /> + <ctl name="MIC DC Blocker" value="1" /> + <ctl name="MIC HW Gain At High Power Mode (cB)" value="130" /> + <ctl name="MIC Record Soft Gain (dB)" value="0" /> + </path> + + <path name="microphones (CAMCORDER)"> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1" /> + <ctl name="MIC DC Blocker" value="1" /> + <ctl name="MIC Record Soft Gain (dB)" value="0" /> + </path> + + <path name="back-microphones (CAMCORDER)"> + <path name="microphones (CAMCORDER)" /> + </path> + + <path name="camcorder-mic"> + <ctl name="Mic Spatial Module Enable" value="1" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1" /> + <ctl name="MIC DC Blocker" value="1" /> + <ctl name="MIC Record Soft Gain (dB)" value="0" /> + </path> + + <path name="unprocessed-mic"> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1" /> + <ctl name="MIC DC Blocker" value="1" /> + <ctl name="MIC Record Soft Gain (dB)" value="5" /> + </path> + + <path name="unprocessed-dual-mic"> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1" /> + <ctl name="MIC DC Blocker" value="1" /> + <ctl name="MIC Record Soft Gain (dB)" value="5" /> + </path> + + <path name="unprocessed-triple-mic"> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1" /> + <ctl name="MIC DC Blocker" value="1" /> + <ctl name="MIC Record Soft Gain (dB)" value="5" /> + </path> + + <path name="bluetooth-sco-headset-microphones"> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1" /> + <ctl name="Audio Capture Mic Source" value="BT_MIC" /> + <ctl name="Voice Call Mic Source" value="BT_MIC" /> + <ctl name="MIC Record Soft Gain (dB)" value="0" /> + </path> + + <path name="usb-headset-microphones"> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2" /> + <ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1" /> + <ctl name="Audio Capture Mic Source" value="USB_MIC" /> + <ctl name="Voice Call Mic Source" value="USB_MIC" /> + <ctl name="MIC Record Soft Gain (dB)" value="0" /> + </path> + + <!-- cs35l41 specific path for rotation start --> + <path name="cs35l41-rotation-0"> + </path> + + <path name="cs35l41-rotation-90"> + </path> + + <path name="cs35l41-rotation-180"> + </path> + + <path name="cs35l41-rotation-270"> + </path> + <!-- cs35l41 specific path for rotation end --> + + <!-- cs35l41 specific path to load firmware in cs35l41.c --> + <path name="cs35l41-load-protection-firmware-start"> + <!-- Enable it after get the protection firmware --> + <ctl name="DSP Booted" value="0" /> + <ctl name="R DSP Booted" value="0" /> + <ctl name="L2 DSP Booted" value="0" /> + <ctl name="R2 DSP Booted" value="0" /> + <ctl name="DSP1 Preload Switch" value="0" /> + <ctl name="R DSP1 Preload Switch" value="0" /> + <ctl name="L2 DSP1 Preload Switch" value="0" /> + <ctl name="R2 DSP1 Preload Switch" value="0" /> + </path> + + <path name="cs35l41-load-protection-firmware-end"> + <!-- Enable it after get the protection firmware --> + <ctl name="DSP1 Preload Switch" value="1" /> + <ctl name="R DSP1 Preload Switch" value="1" /> + <ctl name="L2 DSP1 Preload Switch" value="1" /> + <ctl name="R2 DSP1 Preload Switch" value="1" /> + </path> + + <!-- cs35l41 specific path to config ultrasound --> + <path name="cs35l41-us-config"> + <ctl name="ASPRX2 Slot Position" value="2"/> + <ctl name="R ASPRX2 Slot Position" value="3"/> + <ctl name="DSP RX2 Source" value="ASPRX2"/> + <ctl name="R DSP RX2 Source" value="ASPRX2"/> + </path> + <!-- cs35l41 specific path to load firmware in cs35l41.c end--> + <!-- cs35l41 specific path to set current limit in cs35l41 --> + <path name="speaker-boost-peak-current-limit"> + <ctl name="Boost Peak Current Limit" value="2.50A" /> + <ctl name="R Boost Peak Current Limit" value="2.50A" /> + </path> + <path name="speaker-boost-peak-current-limit-battery-throttled"> + <ctl name="Boost Peak Current Limit" value="1.80A" /> + <ctl name="R Boost Peak Current Limit" value="1.80A" /> + </path> + + <path name="speaker-safe-boost-peak-current-limit"> + <ctl name="R Boost Peak Current Limit" value="3.50A" /> + </path> + <path name="speaker-safe-boost-peak-current-limit-battery-throttled"> + </path> + + <path name="earpiece-boost-peak-current-limit"> + </path> + <path name="earpiece-boost-peak-current-limit-battery-throttled"> + </path> + + <path name="voice-speaker-boost-peak-current-limit"> + <ctl name="R Boost Peak Current Limit" value="3.50A" /> + <ctl name="Boost Peak Current Limit" value="3.50A" /> + </path> + <path name="voice-speaker-boost-peak-current-limit-battery-throttled"> + </path> + + <path name="voice-earpiece-boost-peak-current-limit"> + <ctl name="Boost Peak Current Limit" value="3.50A" /> + </path> + <path name="voice-earpiece-boost-peak-current-limit-battery-throttled"> + </path> + <!-- cs35l41 specific path to set current limit in cs35l41 end --> +</mixer> diff --git a/audio/tangorpro/audio-tables.mk b/audio/tangorpro/audio-tables.mk index 0debff0..b7e383a 100644 --- a/audio/tangorpro/audio-tables.mk +++ b/audio/tangorpro/audio-tables.mk @@ -16,6 +16,15 @@ AUDIO_TABLE_FOLDER := tangorpro +# Enable this to build AIDL +BUILD_AUDIO_AIDL_VERSION := false + +ifeq ($(BUILD_AUDIO_AIDL_VERSION),true) +PRODUCT_COPY_FILES += \ + device/google/tangorpro/audio/$(AUDIO_TABLE_FOLDER)/aidl_config/audio_platform_configuration_aidl.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_configuration_aidl.xml \ + device/google/tangorpro/audio/$(AUDIO_TABLE_FOLDER)/aidl_config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \ + device/google/tangorpro/audio/$(AUDIO_TABLE_FOLDER)/aidl_config/mixer_paths_aidl.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_aidl.xml +else # Platform Configuration for AudioHAL / SoundTriggerHAL PRODUCT_COPY_FILES += \ device/google/tangorpro/audio/$(AUDIO_TABLE_FOLDER)/config/audio_policy_configuration_bluetooth_legacy_hal.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration_bluetooth_legacy_hal.xml \ @@ -34,6 +43,7 @@ PRODUCT_COPY_FILES += \ # Mixer Path Configuration for AudioHAL PRODUCT_COPY_FILES += \ device/google/tangorpro/audio/$(AUDIO_TABLE_FOLDER)/config/mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths.xml +endif # Speaker firmware files SPK_FIRMWARE_PATH := $(AUDIO_TABLE_FOLDER)/cs35l41/fw @@ -51,7 +61,16 @@ PRODUCT_COPY_FILES += \ device/google/tangorpro/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HEADSET.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HEADSET.dat \ device/google/tangorpro/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/mcps.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/mcps.dat \ device/google/tangorpro/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/waves_config.ini:$(TARGET_COPY_OUT_VENDOR)/etc/waves_config.ini \ - device/google/tangorpro/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/waves_preset.mps:$(TARGET_COPY_OUT_VENDOR)/etc/waves_preset.mps + device/google/tangorpro/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/waves_preset.mps:$(TARGET_COPY_OUT_VENDOR)/etc/waves_preset.mps \ + device/google/tangorpro/audio/$(AUDIO_TABLE_FOLDER)/tuning/apmg3/uplink_headset_config.pb:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/uplink_headset_config.pb \ + device/google/tangorpro/audio/$(AUDIO_TABLE_FOLDER)/tuning/apmg3/uplink_dock_config.pb:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/uplink_dock_config.pb \ + device/google/tangorpro/audio/$(AUDIO_TABLE_FOLDER)/tuning/apmg3/uplink_tablet_stereo_config.pb:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/uplink_tablet_stereo_config.pb \ + device/google/tangorpro/audio/$(AUDIO_TABLE_FOLDER)/tuning/apmg3/uplink_headset_aec_off_config.pb:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/uplink_headset_aec_off_config.pb \ + device/google/tangorpro/audio/$(AUDIO_TABLE_FOLDER)/tuning/apmg3/uplink_dock_aec_off_config.pb:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/uplink_dock_aec_off_config.pb \ + device/google/tangorpro/audio/$(AUDIO_TABLE_FOLDER)/tuning/apmg3/uplink_tablet_stereo_aec_off_config.pb:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/uplink_tablet_stereo_aec_off_config.pb \ + device/google/tangorpro/audio/$(AUDIO_TABLE_FOLDER)/tuning/apmg3/downlink_headset_config.pb:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/downlink_headset_config.pb \ + device/google/tangorpro/audio/$(AUDIO_TABLE_FOLDER)/tuning/apmg3/downlink_dock_config.pb:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/downlink_dock_config.pb \ + device/google/tangorpro/audio/$(AUDIO_TABLE_FOLDER)/tuning/apmg3/downlink_tablet_stereo_config.pb:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/downlink_tablet_stereo_config.pb # userdebug specific ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) diff --git a/audio/tangorpro/config/audio_effects.xml b/audio/tangorpro/config/audio_effects.xml index 9c2ba29..11e66e5 100644 --- a/audio/tangorpro/config/audio_effects.xml +++ b/audio/tangorpro/config/audio_effects.xml @@ -10,6 +10,7 @@ <library name="proxy" path="libeffectproxy.so"/> <library name="offload_effect" path="liboffloadeffect.so"/> <library name="haptic_generator" path="libhapticgenerator.so"/> + <library name="spatializer" path="libspatialaudio.so"/> </libraries> <effects> <effectProxy name="bassboost" library="proxy" uuid="2f0871a2-c93c-4824-9664-42eb2909f2ef"> @@ -54,6 +55,7 @@ <effect name="aec" library="offload_effect" uuid="28c28780-ec8b-48b6-8590-8c84557d797d"/> <effect name="ns" library="offload_effect" uuid="62ff2836-d050-43c3-9c2d-94a73dad2c64"/> <effect name="haptic_generator" library="haptic_generator" uuid="97c4acd1-8b82-4f2f-832e-c2fe5d7a9931"/> + <effect name="spatializer" library="spatializer" uuid="cc4677de-ff72-11eb-9a03-0242ac130003"/> </effects> <postprocess> </postprocess> diff --git a/audio/tangorpro/config/audio_platform_configuration.xml b/audio/tangorpro/config/audio_platform_configuration.xml index f8fb665..959b4c5 100644 --- a/audio/tangorpro/config/audio_platform_configuration.xml +++ b/audio/tangorpro/config/audio_platform_configuration.xml @@ -187,6 +187,8 @@ <usecase id="UC_DEEP_BUFFER_PLAYBACK" dev1="5" dyn_path="true" dsp_vol="false" mmap="false" period="20" period_num="4"/> <!-- dev1: voice-call downlink dev2: voice-clal uplink --> <usecase id="UC_VOICE_CALL" dev1="4" dev2="11"/> + <!-- for output with flag AUDIO_OUTPUT_SPATIALIZER --> + <usecase id="UC_IMMERSIVE_PLAYBACK" dev1="3" dyn_path="true" dsp_vol="false" mmap="false" period="10" period_num="3"/> <!-- for output with AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD, 4 * 128KB buffer --> <usecase id="UC_COMPRESSED_OFFLOAD_PLAYBACK" dev1="6" dyn_path="true" dsp_vol="true" mmap="false" period="131072" period_num="4" pre_proc_id="14"/> <!-- dev1: audio dev2: haptic --> @@ -197,7 +199,7 @@ <usecase id="UC_AUDIO_RECORD" dev1="8" dyn_path="true" dsp_vol="false" mmap="false" period="20" period_num="4"/> <usecase id="UC_HOSTLESS_UL" dev1="15"/> <!-- for VOIP input, 4 * 10ms buffer --> - <usecase id="UC_VOIP_RECORD" dev1="17" dyn_path="true" dsp_vol="false" mmap="false" period="20" period_num="2"/> + <usecase id="UC_VOIP_RECORD" dev1="20" dyn_path="true" dsp_vol="false" mmap="false" period="20" period_num="2" pcm_ch="4"/> <!-- for input wit AUDIO_INPUT_FLAG_FAST 480 periods * 1ms buffer, 16-bit, 2ch, buffer size 92160 bytes--> <usecase id="UC_LOW_LATENCY_AUDIO_RECORD" dev1="10" dyn_path="true" dsp_vol="false" mmap="true" period="1" period_num="480"/> <!-- for input wit AUDIO_INPUT_FLAG_MMAP_NOIRQ 240 periods * 1ms buffer, 32-bit,2 ch, buffer size 92160 bytes --> @@ -223,6 +225,10 @@ <be_cfg be_id="OUT_A2DP_BE_CFG" latency="180000"/> </usecase> + <usecase id="UC_IMMERSIVE_PLAYBACK" type="playback"> + <be_cfg be_id="OUT_A2DP_BE_CFG" latency="100000"/> + </usecase> + <usecase id="UC_AUDIO_RECORD" type="capture"> <be_cfg be_id="IN_CAMCORDER_LANDSCAPE_BE_CFG" latency="160000"/> <be_cfg be_id="IN_CAMCORDER_INVERT_LANDSCAPE_BE_CFG" latency="160000"/> @@ -239,10 +245,15 @@ </usecase> </dsp_latency> + <usecase_effect> + <usecase id="UC_VOIP_RECORD" effect_lib="audio_speech_enhancer_aoc.so"/> + </usecase_effect> + <soundcard_name name="google,aoc-snd-card" /> <features> <feature name="SoundTriggerDockTuning"/> <feature name="BatteryThrottle=Type:BCL_VOLTAGE,Name:BCL_AUDIO_BAACL,Strategy:WholeSpeaker"/> + <feature name="Apmg3"/> </features> <cfg_attr> @@ -280,7 +291,9 @@ <xlate_id> <item component="TUNING_COMPONENT_WAVES" id="2"/> <item component="TUNING_COMPONENT_FORTEMEDIA" id="3"/> + <item component="TUNING_COMPONENT_APMG3" id="24"/> <item component="TUNING_COMPONENT_CAMCORDER" id="6"/> + <item component="TUNING_COMPONENT_STEREO_SPATIALIZER" id="26"/> </xlate_id> <voip_db_mapping> @@ -293,11 +306,15 @@ </device_handle> <external_module> - <module libname="audio_waves_aoc.so" argu="Sink=SPK:1,USB_DOCK:4,USB_HP:4"/> + <module libname="audio_waves_aoc.so" argu="Sink=SPK:1,USB_DOCK:4,USB_HP:4 Extensions=StereoSpatializer"/> <module libname="audio_spk_35l41.so" argu="SpeakerNum=4,Rotation"/> - <module libname="audio_fortemedia_aoc.so" argu="RTN_SUP=y DOCK_CHARGER_MONITOR=y DL_CH=y VoIP_DLCHs=SPK:2,USB:2 VoIP_Rate=32000"/> <module libname="liboffloadeffect.so"/> <module libname="audio_amcs_ext.so" argu="SpeakerNum=4" /> <module libname="audio_bluenote_aoc.so"/> + <module libname="audio_apmg3_aoc.so"/> </external_module> + + <hal_effect> + <module libname="audio_speech_enhancer_aoc.so"/> + </hal_effect> </audio_platform_configuration> diff --git a/audio/tangorpro/config/audio_policy_configuration.xml b/audio/tangorpro/config/audio_policy_configuration.xml index 78c8ea3..15c529b 100644 --- a/audio/tangorpro/config/audio_policy_configuration.xml +++ b/audio/tangorpro/config/audio_policy_configuration.xml @@ -58,6 +58,10 @@ <profile name="" format="AUDIO_FORMAT_PCM_FLOAT" samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/> </mixPort> + <mixPort name="immersive_out" role="source" flags="AUDIO_OUTPUT_FLAG_SPATIALIZER"> + <profile name="" format="AUDIO_FORMAT_PCM_32_BIT" + samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/> + </mixPort> <mixPort name="incall playback" role="source" flags="AUDIO_OUTPUT_FLAG_INCALL_MUSIC"> <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" @@ -162,17 +166,17 @@ <devicePort tagName="BT SCO Headset Mic" type="AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET" role="source"> </devicePort> <devicePort tagName="BT A2DP Out" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP" role="sink" - encodedFormats="AUDIO_FORMAT_AAC AUDIO_FORMAT_SBC"> + encodedFormats="AUDIO_FORMAT_OPUS AUDIO_FORMAT_AAC AUDIO_FORMAT_SBC"> <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/> </devicePort> <devicePort tagName="BT A2DP Headphones" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES" role="sink" - encodedFormats="AUDIO_FORMAT_AAC AUDIO_FORMAT_SBC"> + encodedFormats="AUDIO_FORMAT_OPUS AUDIO_FORMAT_AAC AUDIO_FORMAT_SBC"> <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/> </devicePort> <devicePort tagName="BT A2DP Speaker" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER" role="sink" - encodedFormats="AUDIO_FORMAT_AAC AUDIO_FORMAT_SBC"> + encodedFormats="AUDIO_FORMAT_OPUS AUDIO_FORMAT_AAC AUDIO_FORMAT_SBC"> <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/> </devicePort> @@ -189,21 +193,21 @@ <!-- route declaration, i.e. list all available sources for a given sink --> <routes> <route type="mix" sink="Speaker" - sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx,ultrasound output"/> + sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx,ultrasound output,immersive_out"/> <route type="mix" sink="Speaker Safe" sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx,ultrasound output"/> <route type="mix" sink="BT A2DP Out" - sources="primary output,deep buffer,compressed_offload,voip_rx,raw,mmap_no_irq_out"/> + sources="primary output,deep buffer,compressed_offload,voip_rx,raw,mmap_no_irq_out,immersive_out"/> <route type="mix" sink="BT A2DP Headphones" - sources="primary output,deep buffer,compressed_offload,voip_rx,raw,mmap_no_irq_out"/> + sources="primary output,deep buffer,compressed_offload,voip_rx,raw,mmap_no_irq_out,immersive_out"/> <route type="mix" sink="BT A2DP Speaker" - sources="primary output,deep buffer,compressed_offload,voip_rx,raw,mmap_no_irq_out"/> + sources="primary output,deep buffer,compressed_offload,voip_rx,raw,mmap_no_irq_out,immersive_out"/> <route type="mix" sink="USB Device Out" - sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback"/> + sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback,immersive_out"/> <route type="mix" sink="USB Dock" - sources="primary output,deep buffer,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback"/> + sources="primary output,deep buffer,compressed_offload,mmap_no_irq_out,voip_rx"/> <route type="mix" sink="USB Headset Out" - sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback"/> + sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback,immersive_out"/> <route type="mix" sink="BT SCO" sources="primary output,deep buffer,compressed_offload,voip_rx,raw,mmap_no_irq_out"/> <route type="mix" sink="BT SCO Headset" diff --git a/audio/tangorpro/config/audio_policy_configuration_a2dp_offload_disabled.xml b/audio/tangorpro/config/audio_policy_configuration_a2dp_offload_disabled.xml index d201379..b373ecc 100644 --- a/audio/tangorpro/config/audio_policy_configuration_a2dp_offload_disabled.xml +++ b/audio/tangorpro/config/audio_policy_configuration_a2dp_offload_disabled.xml @@ -58,6 +58,10 @@ <profile name="" format="AUDIO_FORMAT_PCM_FLOAT" samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/> </mixPort> + <mixPort name="immersive_out" role="source" flags="AUDIO_OUTPUT_FLAG_SPATIALIZER"> + <profile name="" format="AUDIO_FORMAT_PCM_FLOAT" + samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/> + </mixPort> <mixPort name="incall playback" role="source" flags="AUDIO_OUTPUT_FLAG_INCALL_MUSIC"> <profile name="" format="AUDIO_FORMAT_PCM_16_BIT" @@ -178,11 +182,11 @@ <route type="mix" sink="Speaker Safe" sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx,ultrasound output"/> <route type="mix" sink="USB Device Out" - sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback"/> + sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback,immersive_out"/> <route type="mix" sink="USB Headset Out" - sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback"/> + sources="primary output,deep buffer,raw,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback,immersive_out"/> <route type="mix" sink="USB Dock" - sources="primary output,deep buffer,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback"/> + sources="primary output,deep buffer,compressed_offload,mmap_no_irq_out,voip_rx"/> <route type="mix" sink="BT SCO" sources="primary output,deep buffer,compressed_offload,voip_rx,raw,mmap_no_irq_out"/> <route type="mix" sink="BT SCO Headset" diff --git a/audio/tangorpro/config/mixer_paths.xml b/audio/tangorpro/config/mixer_paths.xml index a252a43..a2f8ea2 100644 --- a/audio/tangorpro/config/mixer_paths.xml +++ b/audio/tangorpro/config/mixer_paths.xml @@ -155,6 +155,7 @@ <ctl name="TDM_0_RX Mixer VOIP" value="0"/> <ctl name="TDM_0_RX Mixer RAW" value="0"/> <ctl name="TDM_0_RX Mixer US" value="0"/> + <ctl name="TDM_0_RX Mixer IMSV" value="0"/> <ctl name="TDM_1_RX Mixer EP1" value="0"/> <ctl name="TDM_1_RX Mixer EP2" value="0"/> @@ -177,6 +178,7 @@ <ctl name="USB_RX Mixer VOIP" value="0"/> <ctl name="USB_RX Mixer HIFI" value="0"/> <ctl name="USB_RX Mixer RAW" value="0"/> + <ctl name="USB_RX Mixer IMSV" value="0"/> <ctl name="BT_RX Mixer EP1" value="0"/> <ctl name="BT_RX Mixer EP2" value="0"/> @@ -188,6 +190,7 @@ <ctl name="BT_RX Mixer NoHost1" value="0"/> <ctl name="BT_RX Mixer VOIP" value="0"/> <ctl name="BT_RX Mixer RAW" value="0"/> + <ctl name="BT_RX Mixer IMSV" value="0"/> <ctl name="INCALL_RX Mixer EP1" value="0"/> <ctl name="INCALL_RX Mixer EP2" value="0"/> @@ -607,14 +610,17 @@ </path> <path name="voip-recordC"> + <ctl name="Incall Capture Stream0" value="3MIC"/> <ctl name="VOIP TX Mixer INTERNAL_MIC_TX" value="1"/> </path> <path name="voip-recordC usb-headset-mic"> + <ctl name="Incall Capture Stream0" value="3MIC"/> <ctl name="VOIP TX Mixer USB_TX" value="1"/> </path> <path name="voip-recordC bt-mic"> + <ctl name="Incall Capture Stream0" value="3MIC"/> <ctl name="VOIP TX Mixer BT_TX" value="1"/> </path> diff --git a/audio/tangorpro/tuning/apmg3/downlink_dock_config.pb b/audio/tangorpro/tuning/apmg3/downlink_dock_config.pb Binary files differnew file mode 100644 index 0000000..bd2111b --- /dev/null +++ b/audio/tangorpro/tuning/apmg3/downlink_dock_config.pb diff --git a/audio/tangorpro/tuning/apmg3/downlink_headset_config.pb b/audio/tangorpro/tuning/apmg3/downlink_headset_config.pb Binary files differnew file mode 100644 index 0000000..86eb4bc --- /dev/null +++ b/audio/tangorpro/tuning/apmg3/downlink_headset_config.pb diff --git a/audio/tangorpro/tuning/apmg3/downlink_tablet_stereo_config.pb b/audio/tangorpro/tuning/apmg3/downlink_tablet_stereo_config.pb Binary files differnew file mode 100644 index 0000000..2ea4f92 --- /dev/null +++ b/audio/tangorpro/tuning/apmg3/downlink_tablet_stereo_config.pb diff --git a/audio/tangorpro/tuning/apmg3/uplink_dock_aec_off_config.pb b/audio/tangorpro/tuning/apmg3/uplink_dock_aec_off_config.pb Binary files differnew file mode 100644 index 0000000..bd8b720 --- /dev/null +++ b/audio/tangorpro/tuning/apmg3/uplink_dock_aec_off_config.pb diff --git a/audio/tangorpro/tuning/apmg3/uplink_dock_config.pb b/audio/tangorpro/tuning/apmg3/uplink_dock_config.pb Binary files differnew file mode 100644 index 0000000..7996795 --- /dev/null +++ b/audio/tangorpro/tuning/apmg3/uplink_dock_config.pb diff --git a/audio/tangorpro/tuning/apmg3/uplink_headset_aec_off_config.pb b/audio/tangorpro/tuning/apmg3/uplink_headset_aec_off_config.pb Binary files differnew file mode 100644 index 0000000..03f7574 --- /dev/null +++ b/audio/tangorpro/tuning/apmg3/uplink_headset_aec_off_config.pb diff --git a/audio/tangorpro/tuning/apmg3/uplink_headset_config.pb b/audio/tangorpro/tuning/apmg3/uplink_headset_config.pb Binary files differnew file mode 100644 index 0000000..b2c4aa6 --- /dev/null +++ b/audio/tangorpro/tuning/apmg3/uplink_headset_config.pb diff --git a/audio/tangorpro/tuning/apmg3/uplink_tablet_stereo_aec_off_config.pb b/audio/tangorpro/tuning/apmg3/uplink_tablet_stereo_aec_off_config.pb Binary files differnew file mode 100644 index 0000000..eb615ce --- /dev/null +++ b/audio/tangorpro/tuning/apmg3/uplink_tablet_stereo_aec_off_config.pb diff --git a/audio/tangorpro/tuning/apmg3/uplink_tablet_stereo_config.pb b/audio/tangorpro/tuning/apmg3/uplink_tablet_stereo_config.pb Binary files differnew file mode 100644 index 0000000..4c8a821 --- /dev/null +++ b/audio/tangorpro/tuning/apmg3/uplink_tablet_stereo_config.pb diff --git a/audio/tangorpro/tuning/waves/waves_config.ini b/audio/tangorpro/tuning/waves/waves_config.ini index 21b7a19..61f1cc4 100644 --- a/audio/tangorpro/tuning/waves/waves_config.ini +++ b/audio/tangorpro/tuning/waves/waves_config.ini @@ -30,6 +30,7 @@ SPEAKER_MUSIC = OM:1,SM:2,OST:OST_SPEAKER SPEAKER_SAFE_MUSIC = OM:1,SM:2,OST:OST_SPEAKER SPEAKER_SAFE_CALL = OM:1,SM:2,OST:OST_SPEAKER SPEAKER_MUSIC_2_1 = OM:6,SM:2 +SPEAKER_RESERVED_MUSIC = OM:1,SM:3,OST:OST_SPEAKER DOCKSPEAKER_MUSIC = OM:4,SM:2 DOCKSPEAKER_VOICE_MUSIC = OM:7,SM:2 @@ -39,7 +40,7 @@ DOCKSPEAKER_VOICE_MUSIC = OM:7,SM:2 # This can be configured by Waves or platform vendor. ######################################################################################################## [HAL_SUPPORTED_CONTROLS] -SPEAKER_INSTANCE = INSTANCE:1,DEV:0,SR:SR_COMMON,PRESET:SPEAKER_MUSIC|SPEAKER_SAFE_MUSIC|SPEAKER_SAFE_CALL|SPEAKER_MUSIC_2_1 +SPEAKER_INSTANCE = INSTANCE:1,DEV:0,SR:SR_COMMON,PRESET:SPEAKER_MUSIC|SPEAKER_SAFE_MUSIC|SPEAKER_SAFE_CALL|SPEAKER_MUSIC_2_1|SPEAKER_RESERVED_MUSIC DOCKSPEAKER_INSTANCE = INSTANCE:4,DEV:0,SR:SR_COMMON,PRESET:DOCKSPEAKER_MUSIC|DOCKSPEAKER_VOICE_MUSIC [COEFS_CONVERTER_SETTING] @@ -54,14 +55,16 @@ AlgFxPath64=/vendor/lib64/libAlgFx_HiFi3z.so #AudioFormatIncrement=8 [CUSTOM_ACTION_259] -CASE_1=PRIORITY:0,NUMBERS:2:0|1:0,PRESET:SPEAKER_MUSIC -CASE_2=PRIORITY:1,NUMBERS:1|2|4194304:2|3|4:0|1,PRESET:SPEAKER_SAFE_CALL -CASE_3=PRIORITY:2,NUMBERS:1|4194304:0|1:0|1,PRESET:SPEAKER_SAFE_MUSIC -CASE_4=PRIORITY:3,NUMBERS:4096|16384|67108864:0|1|4:0|1,PRESET:DOCKSPEAKER_MUSIC -CASE_5=PRIORITY:4,NUMBERS:2:0|1:1,PRESET:SPEAKER_MUSIC_2_1 -CASE_6=PRIORITY:5,NUMBERS:4096|16384|67108864:2|3:0|1,PRESET:DOCKSPEAKER_VOICE_MUSIC +CASE_1=PRIORITY:0,NUMBERS:2:0|1:0:0,PRESET:SPEAKER_MUSIC +CASE_2=PRIORITY:1,NUMBERS:1|2|4194304:2|3|4:0|1:0|1,PRESET:SPEAKER_SAFE_CALL +CASE_3=PRIORITY:2,NUMBERS:1|4194304:0|1:0|1:0|1,PRESET:SPEAKER_SAFE_MUSIC +CASE_4=PRIORITY:3,NUMBERS:4096|16384|67108864:0|1|4:0|1:0|1,PRESET:DOCKSPEAKER_MUSIC +CASE_5=PRIORITY:4,NUMBERS:2:0|1:1:0|1,PRESET:SPEAKER_MUSIC_2_1 +CASE_6=PRIORITY:5,NUMBERS:4096|16384|67108864:2|3:0|1:0|1,PRESET:DOCKSPEAKER_VOICE_MUSIC +CASE_7=PRIORITY:6,NUMBERS:2:0|1:0:1,PRESET:SPEAKER_RESERVED_MUSIC -# Action 259 parameters: audio_devices_t, audio_mode_t, is_dock_speaker_active_t +# Action 259 parameters: audio_devices_t, audio_mode_t, is_dock_speaker_active_t, is_spatial_audio_active_t # - audio_devices_t : current active device # - audio_mode_t : 0 - normal, 1 - incoming, 2 - voice call, 3 - voip -# - is_dock_speaker_active_t: 0 - Disabled, 1 - Enabled
\ No newline at end of file +# - is_dock_speaker_active_t: 0 - Disabled, 1 - Enabled +# - is_spatial_audio_active_t: 0 - Disabled, 1 - Enabled diff --git a/audio/tangorpro/tuning/waves/waves_preset.mps b/audio/tangorpro/tuning/waves/waves_preset.mps Binary files differindex 36d7de5..50e9600 100644 --- a/audio/tangorpro/tuning/waves/waves_preset.mps +++ b/audio/tangorpro/tuning/waves/waves_preset.mps diff --git a/bluetooth/syna_default.mk b/bluetooth/syna_default.mk index 72a3015..53a04b1 100644 --- a/bluetooth/syna_default.mk +++ b/bluetooth/syna_default.mk @@ -15,9 +15,22 @@ # limitations under the License. # +# Override BQR mask to enable LE Audio Choppy report +ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) +PRODUCT_PRODUCT_PROPERTIES += \ + persist.bluetooth.bqr.event_mask=262238 +else +PRODUCT_PRODUCT_PROPERTIES += \ + persist.bluetooth.bqr.event_mask=94 +endif + +# Not support LE Audio dual mic SWB call based on the current launch strategy +PRODUCT_PRODUCT_PROPERTIES += \ + bluetooth.leaudio.dual_bidirection_swb.supported=false + # Bluetooth Super Wide Band PRODUCT_PRODUCT_PROPERTIES += \ - bluetooth.hfp.swb.supported=true + bluetooth.hfp.swb.supported=false # Bluetooth LE Audio PRODUCT_PRODUCT_PROPERTIES += \ @@ -29,6 +42,10 @@ PRODUCT_PRODUCT_PROPERTIES += \ bluetooth.profile.ccp.server.enabled?=true \ bluetooth.profile.vcp.controller.enabled?=true \ +# LE Audio Lunch Config for Phase 1 (LE audio toggle hidden by default) +PRODUCT_PRODUCT_PROPERTIES += \ + persist.bluetooth.leaudio.toggle_visible=false + # Bluetooth HAL and Pixel extension DEVICE_MANIFEST_FILE += \ device/google/tangorpro/bluetooth/manifest_bluetooth.xml @@ -55,7 +72,7 @@ PRODUCT_PROPERTY_OVERRIDES += \ PRODUCT_PROPERTY_OVERRIDES += \ ro.bluetooth.a2dp_offload.supported=true \ persist.bluetooth.a2dp_offload.disabled=false \ - persist.bluetooth.a2dp_offload.cap=sbc-aac-aptx-aptxhd-ldac + persist.bluetooth.a2dp_offload.cap=sbc-aac-aptx-aptxhd-ldac-opus PRODUCT_PRODUCT_PROPERTIES += \ persist.bluetooth.firmware.selection="BTFW.hcd" diff --git a/conf/init.tangorpro.rc b/conf/init.tangorpro.rc index afcbf90..95f92ef 100644 --- a/conf/init.tangorpro.rc +++ b/conf/init.tangorpro.rc @@ -1,6 +1,9 @@ # Tangorpro specific init.rc import /vendor/etc/init/hw/init.gs201.rc +on init && property:ro.build.flavor=tangorpro-userdebug + import /vendor/etc/init/hw/init.tangorpro.userdebug.rc + on init && property:ro.vendor.factory=1 import /vendor/etc/init/hw/init.factory.rc diff --git a/device-tangorpro.mk b/device-tangorpro.mk index b51c64b..ae62f59 100644 --- a/device-tangorpro.mk +++ b/device-tangorpro.mk @@ -106,6 +106,23 @@ PRODUCT_SOONG_NAMESPACES += device/google/tangorpro/powerstats # Bluetooth HAL and Pixel extension include device/google/tangorpro/bluetooth/syna_default.mk +# Spatial Audio +PRODUCT_PACKAGES += \ + libspatialaudio + +# optimize spatializer effect +PRODUCT_PROPERTY_OVERRIDES += \ + audio.spatializer.effect.util_clamp_min=300 + +# declare use of spatial audio +PRODUCT_PROPERTY_OVERRIDES += \ + ro.audio.spatializer_enabled=true \ + persist.vendor.audio.spatializer.speaker_enabled=true + +# Bluetooth OPUS codec +PRODUCT_PRODUCT_PROPERTIES += \ + persist.bluetooth.opus.enabled=true + # Keymaster HAL #LOCAL_KEYMASTER_PRODUCT_PACKAGE ?= android.hardware.keymaster@4.1-service @@ -150,9 +167,6 @@ PRODUCT_SOONG_NAMESPACES += vendor/google_devices/tangorpro/prebuilts PRODUCT_PROPERTY_OVERRIDES += \ ro.vendor.wifi.sap.interface=wlan1 -# Set ro.crypto.metadata_init_delete_all_keys.enabled to false to unblock boot -PRODUCT_PROPERTY_OVERRIDES += ro.crypto.metadata_init_delete_all_keys.enabled=false - # Assistant minimum volume PRODUCT_PROPERTY_OVERRIDES += \ ro.config.assistant_vol_min=1 @@ -259,6 +273,14 @@ PRODUCT_PROPERTY_OVERRIDES += \ PRODUCT_VENDOR_PROPERTIES += \ persist.vendor.camera.exif_reveal_make_model=true +# Audio +PRODUCT_PROPERTY_OVERRIDES += \ + ro.audio.multi_usb_mode=true + +# Audio package +PRODUCT_PACKAGES += \ + audio_apmg3_aoc + # AudioProxy PRODUCT_PACKAGES += \ libaudio_proxy.google \ @@ -266,6 +288,14 @@ PRODUCT_PACKAGES += \ DEVICE_FRAMEWORK_COMPATIBILITY_MATRIX_FILE := device/google/tangorpro/device_framework_matrix_product_tangorpro.xml +#Audio +PRODUCT_PROPERTY_OVERRIDES += \ + persist.vendor.audio.speech_enhancement.enable=1 + +PRODUCT_PACKAGES += \ + libspeechenhancer \ + audio_speech_enhancer_aoc + PRODUCT_COPY_FILES += \ device/google/tangorpro/public.libraries-google-tangorpro.txt:$(TARGET_COPY_OUT_SYSTEM_EXT)/etc/public.libraries-google.txt diff --git a/manifest.xml b/manifest.xml index 8ece978..a427ac0 100644 --- a/manifest.xml +++ b/manifest.xml @@ -99,16 +99,6 @@ <fqname>@1.2::IBootControl/default</fqname> </hal> <hal format="hidl"> - <name>android.hardware.neuralnetworks</name> - <transport>hwbinder</transport> - <version>1.2</version> - <interface> - <name>IDevice</name> - <instance>armnn</instance> - </interface> - <fqname>@1.2::IDevice/armnn</fqname> - </hal> - <hal format="hidl"> <name>android.hardware.neuralnetworks</name> <transport>hwbinder</transport> <fqname>@1.3::IDevice/google-edgetpu</fqname> diff --git a/powerhint.json b/powerhint.json index 7659880..5ba5566 100644 --- a/powerhint.json +++ b/powerhint.json @@ -293,6 +293,14 @@ "ResetOnInit": true }, { + "Name": "NewlyIdleBalancer", + "Path": "/proc/vendor_sched/idle_balancer", + "Values": [ + "0", + "1" + ], + }, + { "Name": "DisplayWakeup", "Path": "/sys/devices/platform/1c240000.drmdecon/early_wakeup", "Values": [ @@ -693,30 +701,6 @@ { "PowerHint": "LAUNCH", "Type": "DoHint", - "EnableProperty": "vendor.powerhal.camerarunning", - "Value": "CDCPUSET_RESTRICTED" - }, - { - "PowerHint": "LAUNCH", - "Type": "DoHint", - "EnableProperty": "vendor.powerhal.camerarunning", - "Value": "CDHIGHCPUSETCPUS_RESTRICTED" - }, - { - "PowerHint": "LAUNCH", - "Type": "DoHint", - "EnableProperty": "vendor.powerhal.camerarunning", - "Value": "CDMIDCPUSETCPUS_RESTRICTED" - }, - { - "PowerHint": "LAUNCH", - "Type": "DoHint", - "EnableProperty": "vendor.powerhal.camerarunning", - "Value": "CDMIDHIGHCPUSETCPUS_RESTRICTED" - }, - { - "PowerHint": "LAUNCH", - "Type": "DoHint", "Value": "LAUNCH_EXTEND" }, { @@ -1062,6 +1046,12 @@ "Value": "0" }, { + "PowerHint": "CAMERA_STREAMING_EXTREME", + "Node": "NewlyIdleBalancer", + "Duration": 0, + "Value": "0" + }, + { "PowerHint": "CAMERA_STREAMING_HIGH", "Node": "PowerHALCameraRunning", "Duration": 0, @@ -1134,6 +1124,12 @@ "Value": "0" }, { + "PowerHint": "CAMERA_STREAMING_HIGH", + "Node": "NewlyIdleBalancer", + "Duration": 0, + "Value": "0" + }, + { "PowerHint": "CAMERA_STREAMING_STANDARD", "Node": "PowerHALCameraRunning", "Duration": 0, @@ -1230,6 +1226,12 @@ "Value": "0" }, { + "PowerHint": "CAMERA_STREAMING_STANDARD", + "Node": "NewlyIdleBalancer", + "Duration": 0, + "Value": "0" + }, + { "PowerHint": "CAMERA_STREAMING_LOW", "Node": "PowerHALCameraRunning", "Duration": 0, @@ -1290,6 +1292,12 @@ "Value": "0" }, { + "PowerHint": "CAMERA_STREAMING_LOW", + "Node": "NewlyIdleBalancer", + "Duration": 0, + "Value": "0" + }, + { "PowerHint": "CAMERA_VIDEO_RECORDING", "Type": "MaskHint", "Value": "CDCPUSET_RESTRICTED" @@ -1610,72 +1618,6 @@ }, { "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_MODERATE", - "Node": "PMU_POLL", - "Duration": 0, - "Value": "1" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_MODERATE", - "Node": "BigControlTempSet", - "Duration": 0, - "Value": "80000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_MODERATE", - "Node": "MidControlTempSet", - "Duration": 0, - "Value": "80000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_MODERATE", - "Node": "LittleControlTempSet", - "Duration": 0, - "Value": "80000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_MODERATE", - "Node": "G3dControlTempSet", - "Duration": 0, - "Value": "80000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_MODERATE", - "Node": "TpuControlTempSet", - "Duration": 0, - "Value": "80000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_MODERATE", - "Node": "BigSwitchOnTempSet", - "Duration": 0, - "Value": "60000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_MODERATE", - "Node": "MidSwitchOnTempSet", - "Duration": 0, - "Value": "60000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_MODERATE", - "Node": "LittleSwitchOnTempSet", - "Duration": 0, - "Value": "60000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_MODERATE", - "Node": "G3dSwitchOnTempSet", - "Duration": 0, - "Value": "60000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_MODERATE", - "Node": "TpuSwitchOnTempSet", - "Duration": 0, - "Value": "60000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_MODERATE", "Node": "Dex2oatThreads", "Duration": 0, "Value": "4" @@ -1687,186 +1629,12 @@ "Value": "0,1,2,3" }, { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_MODERATE", - "Node": "Dex2oatGroup", - "Duration": 0, - "Value": "0" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_SEVERE", - "Node": "PMU_POLL", - "Duration": 0, - "Value": "1" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_SEVERE", - "Node": "BigControlTempSet", - "Duration": 0, - "Value": "80000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_SEVERE", - "Node": "MidControlTempSet", - "Duration": 0, - "Value": "80000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_SEVERE", - "Node": "LittleControlTempSet", - "Duration": 0, - "Value": "80000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_SEVERE", - "Node": "G3dControlTempSet", - "Duration": 0, - "Value": "80000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_SEVERE", - "Node": "TpuControlTempSet", - "Duration": 0, - "Value": "80000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_SEVERE", - "Node": "BigSwitchOnTempSet", - "Duration": 0, - "Value": "60000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_SEVERE", - "Node": "MidSwitchOnTempSet", - "Duration": 0, - "Value": "60000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_SEVERE", - "Node": "LittleSwitchOnTempSet", - "Duration": 0, - "Value": "60000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_SEVERE", - "Node": "G3dSwitchOnTempSet", - "Duration": 0, - "Value": "60000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_SEVERE", - "Node": "TpuSwitchOnTempSet", - "Duration": 0, - "Value": "60000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_SEVERE", - "Node": "Dex2oatThreads", - "Duration": 0, - "Value": "4" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_SEVERE", - "Node": "Dex2oatCPUSet", - "Duration": 0, - "Value": "0,1,2,3" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_SEVERE", - "Node": "Dex2oatGroup", - "Duration": 0, - "Value": "0" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_CRITICAL", - "Node": "PMU_POLL", - "Duration": 0, - "Value": "1" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_CRITICAL", - "Node": "BigControlTempSet", - "Duration": 0, - "Value": "80000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_CRITICAL", - "Node": "MidControlTempSet", - "Duration": 0, - "Value": "80000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_CRITICAL", - "Node": "LittleControlTempSet", - "Duration": 0, - "Value": "80000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_CRITICAL", - "Node": "G3dControlTempSet", - "Duration": 0, - "Value": "80000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_CRITICAL", - "Node": "TpuControlTempSet", - "Duration": 0, - "Value": "80000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_CRITICAL", - "Node": "BigSwitchOnTempSet", - "Duration": 0, - "Value": "60000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_CRITICAL", - "Node": "MidSwitchOnTempSet", - "Duration": 0, - "Value": "60000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_CRITICAL", - "Node": "LittleSwitchOnTempSet", - "Duration": 0, - "Value": "60000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_CRITICAL", - "Node": "G3dSwitchOnTempSet", - "Duration": 0, - "Value": "60000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_CRITICAL", - "Node": "TpuSwitchOnTempSet", - "Duration": 0, - "Value": "60000" - }, - { "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_CRITICAL", "Node": "Dex2oatThreads", "Duration": 0, "Value": "2" }, { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_CRITICAL", - "Node": "Dex2oatCPUSet", - "Duration": 0, - "Value": "0,1,2,3" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_CRITICAL", - "Node": "Dex2oatGroup", - "Duration": 0, - "Value": "0" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_EMERGENCY", - "Node": "PMU_POLL", - "Duration": 0, - "Value": "1" - }, - { "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_EMERGENCY", "Node": "CPU_LITTLE_TSKIN_BYPASS", "Duration": 0, @@ -1886,83 +1654,11 @@ }, { "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_EMERGENCY", - "Node": "BigControlTempSet", - "Duration": 0, - "Value": "80000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_EMERGENCY", - "Node": "MidControlTempSet", - "Duration": 0, - "Value": "80000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_EMERGENCY", - "Node": "LittleControlTempSet", - "Duration": 0, - "Value": "80000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_EMERGENCY", - "Node": "G3dControlTempSet", - "Duration": 0, - "Value": "80000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_EMERGENCY", - "Node": "TpuControlTempSet", - "Duration": 0, - "Value": "80000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_EMERGENCY", - "Node": "BigSwitchOnTempSet", - "Duration": 0, - "Value": "60000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_EMERGENCY", - "Node": "MidSwitchOnTempSet", - "Duration": 0, - "Value": "60000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_EMERGENCY", - "Node": "LittleSwitchOnTempSet", - "Duration": 0, - "Value": "60000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_EMERGENCY", - "Node": "G3dSwitchOnTempSet", - "Duration": 0, - "Value": "60000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_EMERGENCY", - "Node": "TpuSwitchOnTempSet", - "Duration": 0, - "Value": "60000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_EMERGENCY", "Node": "Dex2oatThreads", "Duration": 0, "Value": "1" }, { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_EMERGENCY", - "Node": "Dex2oatCPUSet", - "Duration": 0, - "Value": "0,1,2,3" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_EMERGENCY", - "Node": "Dex2oatGroup", - "Duration": 0, - "Value": "0" - }, - { "PowerHint": "FP_BOOST", "Node": "CPUBigClusterMaxFreq", "Duration": 1000, @@ -2040,7 +1736,7 @@ "EarlyBoost_On": false, "EarlyBoost_TimeFactor": 0.0, "TargetTimeFactor": 1.0, - "StaleTimeFactor": 20.0 + "StaleTimeFactor": 15.0 }, { "Name": "UiHighBoostWithoutPid", diff --git a/tangorpro/overlay/frameworks/base/core/res/res/values/config.xml b/tangorpro/overlay/frameworks/base/core/res/res/values/config.xml index f38e22f..15b02f6 100644 --- a/tangorpro/overlay/frameworks/base/core/res/res/values/config.xml +++ b/tangorpro/overlay/frameworks/base/core/res/res/values/config.xml @@ -348,8 +348,8 @@ <!-- Indicates whether device has a power button fingerprint sensor. --> <bool name="config_is_powerbutton_fps">true</bool> - <dimen name="status_bar_height_default">104px</dimen> - <dimen name="status_bar_height_portrait">104px</dimen> + <dimen name="status_bar_height_default">36dp</dimen> + <dimen name="status_bar_height_portrait">36dp</dimen> <!-- Control whether the pickup gesture is enabled by default. This value will be used during initialization when the setting is still null. --> @@ -636,7 +636,7 @@ <!-- Enable the system motion prediction model. --> <bool name="config_enableMotionPrediction">true</bool> - <integer name="config_motionPredictionOffsetNanos">20000000</integer> <!-- 20 ms --> + <integer name="config_motionPredictionOffsetNanos">-4000000</integer> <!-- -4 ms --> <!-- Whether to reset Battery Stats on unplug when the battery level is high. --> <bool name="config_batteryStatsResetOnUnplugHighBatteryLevel">false</bool> diff --git a/wifi/BoardConfig-wifi.mk b/wifi/BoardConfig-wifi.mk index 0aaffe5..89896ad 100644 --- a/wifi/BoardConfig-wifi.mk +++ b/wifi/BoardConfig-wifi.mk @@ -32,3 +32,6 @@ WIFI_HIDL_UNIFIED_SUPPLICANT_SERVICE_RC_ENTRY := true PRODUCT_COPY_FILES += \ device/google/tangorpro/wifi/p2p_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/p2p_supplicant_overlay.conf \ device/google/tangorpro/wifi/wpa_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/wpa_supplicant_overlay.conf + +# Add WIFI_FEATURE_IMU_DETECTION to soong_config +$(call soong_config_set,wifi,feature_imu_detection,$(WIFI_FEATURE_IMU_DETECTION)) |