This commit is contained in:
Vincent Vidal 2025-08-07 16:07:57 +02:00
commit 8710a52d67
123 changed files with 20007 additions and 0 deletions

View file

@ -0,0 +1,109 @@
<?xml version="1.0" encoding="UTF-8"?>
<audio_effects_conf version="2.0" xmlns="http://schemas.android.com/audio/audio_effects_conf/v2_0">
<!-- List of effect libraries to load.
Each library element must contain a "name" attribute and a "path" attribute giving the
name of a library .so file in /vendor/lib/soundfx on the target
If offloadable effects are present, the AOSP library libeffectproxy.so must be listed as
well as one library for the SW implementation and one library for the DSP implementation:
<library name="proxy" path="libeffectproxy.so"/>
<library name="some_fx_sw" path="lib_some_fx_sw.so"/>
<library name="some_fx_hw" path="lib_some_fx_hw.so"/>
If the audio HAL implements support for AOSP software audio pre-processing effects,
the following library must be added:
<library name="pre_processing" path="libaudiopreprocessing.so"/>
-->
<libraries>
<library name="bundle" path="libbundlewrapper.so"/>
<library name="reverb" path="libreverbwrapper.so"/>
<library name="visualizer" path="libvisualizer.so"/>
<library name="downmix" path="libdownmix.so"/>
<library name="loudness_enhancer" path="libldnhncr.so"/>
<library name="dynamics_processing" path="libdynproc.so"/>
<library name="pre_processing" path="libaudiopreprocessing.so"/>
</libraries>
<!-- list of effects to load.
Each "effect" element must contain a "name", "library" and a "uuid" attribute.
The value of the "library" element must correspond to the name of one library element in
the "libraries" element.
The "name" attribute is indicative, only the value of the "uuid" attribute designates
the effect.
The uuid is the implementation specific UUID as specified by the effect vendor. This is not
the generic effect type UUID.
Offloadable effects are described by an "effectProxy" element which contains one "libsw"
element containing the "uuid" and "library" for the SW implementation and one "libhw"
element containing the "uuid" and "library" for the DSP implementation.
The "uuid" value for the "effectProxy" element must be unique and will override the default
uuid in the AOSP proxy effect implementation.
If the audio HAL implements support for AOSP software audio pre-processing effects,
the following effects can be added:
<effect name="agc" library="pre_processing" uuid="aa8130e0-66fc-11e0-bad0-0002a5d5c51b"/>
<effect name="aec" library="pre_processing" uuid="bb392ec0-8d4d-11e0-a896-0002a5d5c51b"/>
<effect name="ns" library="pre_processing" uuid="c06c8400-8e06-11e0-9cb6-0002a5d5c51b"/>
-->
<effects>
<effect name="bassboost" library="bundle" uuid="8631f300-72e2-11df-b57e-0002a5d5c51b"/>
<effect name="virtualizer" library="bundle" uuid="1d4033c0-8557-11df-9f2d-0002a5d5c51b"/>
<effect name="equalizer" library="bundle" uuid="ce772f20-847d-11df-bb17-0002a5d5c51b"/>
<effect name="volume" library="bundle" uuid="119341a0-8469-11df-81f9-0002a5d5c51b"/>
<effect name="reverb_env_aux" library="reverb" uuid="4a387fc0-8ab3-11df-8bad-0002a5d5c51b"/>
<effect name="reverb_env_ins" library="reverb" uuid="c7a511a0-a3bb-11df-860e-0002a5d5c51b"/>
<effect name="reverb_pre_aux" library="reverb" uuid="f29a1400-a3bb-11df-8ddc-0002a5d5c51b"/>
<effect name="reverb_pre_ins" library="reverb" uuid="172cdf00-a3bc-11df-a72f-0002a5d5c51b"/>
<effect name="visualizer" library="visualizer" uuid="d069d9e0-8329-11df-9168-0002a5d5c51b"/>
<effect name="downmix" library="downmix" uuid="93f04452-e4fe-41cc-91f9-e475b6d1d69f"/>
<effect name="loudness_enhancer" library="loudness_enhancer" uuid="fa415329-2034-4bea-b5dc-5b381c8d1e2c"/>
<effect name="dynamics_processing" library="dynamics_processing" uuid="e0e6539b-1781-7261-676f-6d7573696340"/>
<effect name="agc" library="pre_processing" uuid="aa8130e0-66fc-11e0-bad0-0002a5d5c51b"/>
<effect name="aec" library="pre_processing" uuid="bb392ec0-8d4d-11e0-a896-0002a5d5c51b"/>
<effect name="ns" library="pre_processing" uuid="c06c8400-8e06-11e0-9cb6-0002a5d5c51b"/>
<!-- <effect name="aec" library="pre_processing" uuid="9f35ed76-0b66-4330-8f79-e39ca266dc7c"/> -->
<!-- <effect name="ns" library="pre_processing" uuid="300abe9f-dfc5-4340-9c4b-79ef1be4e651"/> -->
<!-- <effect name="agc" library="pre_processing" uuid="3387eb70-9896-4338-90f5-b2de883864c9"/> -->
</effects>
<!-- Audio pre processor configurations.
The pre processor configuration is described in a "preprocess" element and consists in a
list of elements each describing pre processor settings for a given use case or "stream".
Each stream element has a "type" attribute corresponding to the input source used.
Valid types are:
"mic", "camcorder", "voice_recognition", "voice_communication"
Each "stream" element contains a list of "apply" elements indicating one effect to apply.
The effect to apply is designated by its name in the "effects" elements.
-->
<preprocess>
<stream type="voice_communication">
<apply effect="aec"/>
<apply effect="ns"/>
<apply effect="agc"/>
</stream>
</preprocess>
<!-- Audio post processor configurations.
The post processor configuration is described in a "postprocess" element and consists in a
list of elements each describing post processor settings for a given use case or "stream".
Each stream element has a "type" attribute corresponding to the stream type used.
Valid types are:
"music", "ring", "alarm", "notification", "voice_call"
Each "stream" element contains a list of "apply" elements indicating one effect to apply.
The effect to apply is designated by its name in the "effects" elements.
<postprocess>
<stream type="music">
<apply effect="music_post_proc"/>
</stream>
<stream type="voice_call">
<apply effect="voice_post_proc"/>
</stream>
<stream type="notification">
<apply effect="notification_post_proc"/>
</stream>
</postprocess>
-->
</audio_effects_conf>

View file

@ -0,0 +1,320 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!-- Copyright (C) 2015 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.
-->
<audioPolicyConfiguration version="7.0" xmlns:xi="http://www.w3.org/2001/XInclude">
<!-- version section contains a “version” tag in the form “major.minor” e.g version=”1.0” -->
<!-- Global configuration Decalaration -->
<globalConfiguration speaker_drc_enabled="false" call_screen_mode_supported="true"/>
<!-- Modules section:
There is one section per audio HW module present on the platform.
Each module section will contains two mandatory tags for audio HAL “halVersion” and “name”.
The module names are the same as in current .conf file:
“primary”, “A2DP”, “remote_submix”, “USB”
Each module will contain the following sections:
“devicePorts”: a list of device descriptors for all input and output devices accessible via this
module.
This contains both permanently attached devices and removable devices.
“mixPorts”: listing all output and input streams exposed by the audio HAL
“routes”: list of possible connections between input and output devices or between stream and
devices.
"route": is defined by an attribute:
-"type": <mux|mix> means all sources are mutual exclusive (mux) or can be mixed (mix)
-"sink": the sink involved in this route
-"sources": all the sources than can be connected to the sink via vis route
“attachedDevices”: permanently attached devices.
The attachedDevices section is a list of devices names. The names correspond to device names
defined in <devicePorts> section.
“defaultOutputDevice”: device to be used by default when no policy rule applies
-->
<modules>
<!-- Primary Audio HAL -->
<module name="primary" halVersion="3.0">
<attachedDevices>
<item>Speaker</item>
<item>Earpiece</item>
<item>Built-In Mic</item>
<item>Built-In Back Mic</item>
<item>FM Tuner In</item>
<item>Voice Call In</item>
<item>Echo Ref In</item>
<item>Telephony Tx</item>
</attachedDevices>
<defaultOutputDevice>Speaker</defaultOutputDevice>
<mixPorts>
<mixPort name="primary output" role="source" flags="AUDIO_OUTPUT_FLAG_PRIMARY">
<profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="deep_buffer" role="source" flags="AUDIO_OUTPUT_FLAG_DEEP_BUFFER">
<profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="fast" role="source" flags="AUDIO_OUTPUT_FLAG_FAST">
<profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="voip_rx" role="source" flags="AUDIO_OUTPUT_FLAG_VOIP_RX">
<profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
samplingRates="16000 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="16000 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="mmap_no_irq_out" role="source" flags="AUDIO_OUTPUT_FLAG_DIRECT AUDIO_OUTPUT_FLAG_MMAP_NOIRQ">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="incall_music_uplink" role="source" flags="AUDIO_OUTPUT_FLAG_INCALL_MUSIC">
<profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="hdmi_mix_output" role="source">
</mixPort>
<mixPort name="primary input" role="sink" maxOpenCount="1" maxActiveCount="1">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000 16000 32000 44100 48000"
channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO"/>
</mixPort>
<mixPort name="mmap_no_irq_in" role="sink" flags="AUDIO_INPUT_FLAG_MMAP_NOIRQ">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000 16000 32000 44100 48000"
channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO"/>
</mixPort>
<mixPort name="voice tx" role="sink" maxOpenCount="1" maxActiveCount="1">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000 16000 32000 44100 48000"
channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO"/>
</mixPort>
<mixPort name="FM Tuner input" role="sink" maxOpenCount="1" maxActiveCount="1">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000 16000 32000 44100 48000"
channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO"/>
</mixPort>
<mixPort name="voip_tx" role="sink" flags="AUDIO_INPUT_FLAG_VOIP_TX" maxOpenCount="1" maxActiveCount="1">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000 16000 32000 44100 48000"
channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO"/>
</mixPort>
<mixPort name="fast input" role="sink" flags="AUDIO_INPUT_FLAG_FAST" maxOpenCount="1" maxActiveCount="1">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000 16000 32000 44100 48000"
channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO"/>
</mixPort>
<mixPort name="hifi_playback" role="source"/>
<mixPort name="hifi_input" role="sink"/>
</mixPorts>
<devicePorts>
<!-- Output devices declaration, i.e. Sink DEVICE PORT -->
<devicePort tagName="Earpiece" type="AUDIO_DEVICE_OUT_EARPIECE" role="sink">
<profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_MONO"/>
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_MONO"/>
</devicePort>
<devicePort tagName="Speaker" role="sink" type="AUDIO_DEVICE_OUT_SPEAKER">
<profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</devicePort>
<devicePort tagName="Wired Headset" type="AUDIO_DEVICE_OUT_WIRED_HEADSET" role="sink">
<profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</devicePort>
<devicePort tagName="Wired Headphones" type="AUDIO_DEVICE_OUT_WIRED_HEADPHONE" role="sink">
<profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</devicePort>
<devicePort tagName="HDMI" type="AUDIO_DEVICE_OUT_AUX_DIGITAL" role="sink">
<profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
samplingRates="8000 11025 16000 22050 32000 44100 48000 64000 88200 96000 128000 176400 192000"
channelMasks="AUDIO_CHANNEL_OUT_7POINT1"/>
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000 11025 16000 22050 32000 44100 48000 64000 88200 96000 128000 176400 192000"
channelMasks="AUDIO_CHANNEL_OUT_7POINT1"/>
</devicePort>
<devicePort tagName="BT SCO" type="AUDIO_DEVICE_OUT_BLUETOOTH_SCO" role="sink">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000 16000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</devicePort>
<devicePort tagName="BT SCO Headset" type="AUDIO_DEVICE_OUT_BLUETOOTH_SCO_HEADSET" role="sink">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000 16000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</devicePort>
<devicePort tagName="BT SCO Car Kit" type="AUDIO_DEVICE_OUT_BLUETOOTH_SCO_CARKIT" role="sink">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000 16000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</devicePort>
<devicePort tagName="Analog Dock Headset" type="AUDIO_DEVICE_OUT_ANLG_DOCK_HEADSET" role="sink">
<profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</devicePort>
<devicePort tagName="Digital Dock Headset" type="AUDIO_DEVICE_OUT_DGTL_DOCK_HEADSET" role="sink">
<profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</devicePort>
<devicePort tagName="FM Tuner Out" type="AUDIO_DEVICE_OUT_FM" role="sink">
<profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</devicePort>
<devicePort tagName="Telephony Tx" type="AUDIO_DEVICE_OUT_TELEPHONY_TX" role="sink">
<profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</devicePort>
<devicePort tagName="USB Device Out" type="AUDIO_DEVICE_OUT_USB_DEVICE" role="sink">
</devicePort>
<devicePort tagName="USB Headset Out" type="AUDIO_DEVICE_OUT_USB_HEADSET" role="sink">
</devicePort>
<devicePort tagName="Built-In Mic" type="AUDIO_DEVICE_IN_BUILTIN_MIC" role="source">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000 16000 32000 44100 48000"
channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO"/>
</devicePort>
<devicePort tagName="Built-In Back Mic" type="AUDIO_DEVICE_IN_BACK_MIC" role="source">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000 16000 32000 44100 48000"
channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO"/>
</devicePort>
<devicePort tagName="Wired Headset Mic" type="AUDIO_DEVICE_IN_WIRED_HEADSET" role="source">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000 16000 32000 44100 48000"
channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO"/>
</devicePort>
<devicePort tagName="BT SCO Headset Mic" type="AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET" role="source">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000 16000" channelMasks="AUDIO_CHANNEL_IN_STEREO"/>
</devicePort>
<devicePort tagName="AUX Digital In" type="AUDIO_DEVICE_IN_AUX_DIGITAL" role="source">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000 16000 32000 44100 48000"
channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO"/>
</devicePort>
<devicePort tagName="FM Tuner In" type="AUDIO_DEVICE_IN_FM_TUNER" role="source">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000 16000 32000 44100 48000"
channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO"/>
</devicePort>
<devicePort tagName="Echo Ref In" type="AUDIO_DEVICE_IN_ECHO_REFERENCE" role="source">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000 16000 32000 44100 48000"
channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO"/>
</devicePort>
<devicePort tagName="USB Device In" type="AUDIO_DEVICE_IN_USB_DEVICE" role="source">
</devicePort>
<devicePort tagName="USB Headset In" type="AUDIO_DEVICE_IN_USB_HEADSET" role="source">
</devicePort>
<devicePort tagName="Voice Call In" type="AUDIO_DEVICE_IN_VOICE_CALL" role="source">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000 16000 32000 44100 48000"
channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO"/>
<gains>
<gain name="gain_1" mode="AUDIO_GAIN_MODE_JOINT"
minValueMB="-8400"
maxValueMB="4000"
defaultValueMB="0"
stepValueMB="100"/>
</gains>
</devicePort>
</devicePorts>
<!-- route declaration, i.e. list all available sources for a given sink -->
<routes>
<route type="mix" sink="Earpiece"
sources="primary output,deep_buffer,voip_rx,mmap_no_irq_out,fast,Voice Call In"/>
<route type="mix" sink="Speaker"
sources="primary output,deep_buffer,mmap_no_irq_out,fast,FM Tuner In,voip_rx,Voice Call In"/>
<route type="mix" sink="Wired Headset"
sources="primary output,deep_buffer,mmap_no_irq_out,fast,FM Tuner In,voip_rx,Voice Call In"/>
<route type="mix" sink="Wired Headphones"
sources="primary output,deep_buffer,mmap_no_irq_out,fast,FM Tuner In,voip_rx,Voice Call In"/>
<route type="mix" sink="USB Device Out"
sources="primary output,deep_buffer,fast,FM Tuner In,voip_rx,Voice Call In,hifi_playback"/>
<route type="mix" sink="USB Headset Out"
sources="primary output,deep_buffer,fast,FM Tuner In,voip_rx,Voice Call In,hifi_playback"/>
<route type="mix" sink="BT SCO"
sources="primary output,deep_buffer,fast,voip_rx,Voice Call In"/>
<route type="mix" sink="BT SCO Headset"
sources="primary output,deep_buffer,fast,voip_rx,Voice Call In"/>
<route type="mix" sink="BT SCO Car Kit"
sources="primary output,deep_buffer,fast,voip_rx,Voice Call In"/>
<route type="mix" sink="Analog Dock Headset"
sources="primary output"/>
<route type="mix" sink="Digital Dock Headset"
sources="primary output"/>
<route type="mix" sink="FM Tuner Out"
sources="primary output"/>
<route type="mix" sink="HDMI"
sources="hdmi_mix_output"/>
<route type="mix" sink="Telephony Tx"
sources="Built-In Mic,Built-In Back Mic,Wired Headset Mic,BT SCO Headset Mic,USB Device In,USB Headset In,incall_music_uplink"/>
<route type="mix" sink="primary input"
sources="Built-In Mic,Built-In Back Mic,Wired Headset Mic,BT SCO Headset Mic,AUX Digital In,USB Device In,USB Headset In"/>
<route type="mix" sink="mmap_no_irq_in"
sources="Built-In Mic,Built-In Back Mic,Wired Headset Mic"/>
<route type="mix" sink="voice tx"
sources="Voice Call In"/>
<route type="mix" sink="FM Tuner input"
sources="FM Tuner In,Echo Ref In"/>
<route type="mix" sink="hifi_input"
sources="USB Device In,USB Headset In"/>
<route type="mix" sink="voip_tx"
sources="Built-In Mic,Built-In Back Mic,Wired Headset Mic,BT SCO Headset Mic,AUX Digital In,USB Device In,USB Headset In"/>
<route type="mix" sink="fast input"
sources="Built-In Mic,Built-In Back Mic,Wired Headset Mic,BT SCO Headset Mic,AUX Digital In,USB Device In,USB Headset In"/>
</routes>
</module>
<!-- BT Audio HAL -->
<xi:include href="bluetooth_audio_policy_configuration.xml"/>
<!-- Usb Audio HAL -->
<xi:include href="usb_audio_accessory_only_policy_configuration.xml"/>
<!-- Remote Submix Audio HAL -->
<xi:include href="r_submix_audio_policy_configuration.xml"/>
</modules>
<!-- End of Modules section -->
<!-- Volume section -->
<xi:include href="audio_policy_volumes.xml"/>
<xi:include href="default_volume_tables.xml"/>
<!-- End of Volume section -->
</audioPolicyConfiguration>

View file

@ -0,0 +1,161 @@
<?xml version="1.0" encoding="utf-8" ?>
<!-- Copyright (C) 2014 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.
-->
<MediaCodecs>
<Settings>
<!-- disable TV and telephony domains by default. These must be opted in by OEMs -->
<Domain name="telephony" enabled="false" />
<Domain name="tv" enabled="false" />
<Variant name="slow-cpu" enabled="false" />
</Settings>
<Decoders>
<MediaCodec name="c2.mtk.adpcm-ms.decoder" type="audio/x-adpcm-ms">
<Alias name="OMX.MTK.AUDIO.DECODER.ADPCM.MS" />
<Limit name="channel-count" max="8" />
</MediaCodec>
<MediaCodec name="c2.mtk.adpcm-dvi-ima.decoder" type="audio/x-adpcm-dvi-ima">
<Alias name="OMX.MTK.AUDIO.DECODER.ADPCM.DVI" />
<Limit name="channel-count" max="8" />
</MediaCodec>
<MediaCodec name="c2.mtk.ape.decoder" type="audio/ape">
<Alias name="OMX.MTK.AUDIO.DECODER.APE" />
<Limit name="channel-count" max="2" />
</MediaCodec>
<MediaCodec name="c2.mtk.alac.decoder" type="audio/alac">
<Alias name="OMX.MTK.AUDIO.DECODER.ALAC" />
<Limit name="channel-count" max="8" />
</MediaCodec>
<MediaCodec name="c2.mtk.wma.decoder" type="audio/x-ms-wma">
<Alias name="OMX.MTK.AUDIO.DECODER.WMA" />
<Limit name="channel-count" max="2" />
</MediaCodec>
<MediaCodec name="c2.mtk.mp3.decoder" type="audio/mpeg" rank="5">
<Alias name="OMX.MTK.AUDIO.DECODER.MP3" />
<Limit name="channel-count" max="2" />
<Limit name="sample-rate" ranges="8000,11025,12000,16000,22050,24000,32000,44100,48000" />
<Limit name="bitrate" range="8000-320000" />
</MediaCodec>
<MediaCodec name="c2.mtk.hevc.decoder" type="video/hevc" >
<Alias name="OMX.MTK.VIDEO.DECODER.HEVC" />
<Limit name="size" min="16x16" max="2560x1440" />
<Feature name="adaptive-playback"/>
<Limit name="concurrent-instances" max="15" />
<Limit name="performance-point-1920x1080" value="30" />
</MediaCodec>
<MediaCodec name="c2.mtk.hevc.decoder.secure" type="video/hevc" >
<Alias name="OMX.MTK.VIDEO.DECODER.HEVC.secure" />
<Limit name="size" min="16x16" max="2560x1440" />
<Quirk name="wants-NAL-fragments" />
<Feature name="secure-playback" required="true" />
<Feature name="adaptive-playback"/>
<Limit name="concurrent-instances" max="15" />
<Limit name="performance-point-1920x1080" value="30" />
</MediaCodec>
<MediaCodec name="c2.mtk.mpeg4.decoder" type="video/mp4v-es" >
<Alias name="OMX.MTK.VIDEO.DECODER.MPEG4" />
<Limit name="size" min="16x16" max="2048x1088" />
<Feature name="adaptive-playback"/>
<Limit name="concurrent-instances" max="15" />
<Limit name="performance-point-1920x1080" value="30" />
</MediaCodec>
<MediaCodec name="c2.mtk.h263.decoder" type="video/3gpp" >
<Alias name="OMX.MTK.VIDEO.DECODER.H263" />
<Limit name="size" min="128x96" max="1408x1152" />
<Feature name="adaptive-playback"/>
<Limit name="concurrent-instances" max="15" />
<Limit name="performance-point-1280x720" value="30" />
</MediaCodec>
<MediaCodec name="c2.mtk.avc.decoder" type="video/avc" >
<Alias name="OMX.MTK.VIDEO.DECODER.AVC" />
<Limit name="size" min="64x64" max="2560x1440" />
<Quirk name="wants-NAL-fragments" />
<Feature name="adaptive-playback"/>
<Limit name="concurrent-instances" max="15" />
<Limit name="performance-point-1920x1080" value="30" />
</MediaCodec>
<MediaCodec name="c2.mtk.avc.decoder.secure" type="video/avc" >
<Alias name="OMX.MTK.VIDEO.DECODER.AVC.secure" />
<Limit name="size" min="64x64" max="2560x1440" />
<Quirk name="wants-NAL-fragments" />
<Feature name="secure-playback" required="true" />
<Feature name="adaptive-playback"/>
<Limit name="concurrent-instances" max="15" />
<Limit name="performance-point-1920x1080" value="30" />
</MediaCodec>
<MediaCodec name="c2.mtk.heif.decoder" type="image/vnd.android.heic" >
<Alias name="OMX.MTK.VIDEO.DECODER.HEIF" />
<Limit name="size" min="16x16" max="16383x16383" />
<Feature name="adaptive-playback"/>
<Limit name="concurrent-instances" max="15" />
<Limit name="performance-point-3840x2160" value="30" />
</MediaCodec>
<MediaCodec name="c2.mtk.vp9.decoder" type="video/x-vnd.on2.vp9" >
<Alias name="OMX.MTK.VIDEO.DECODER.VP9" />
<Limit name="size" min="16x16" max="2560x1440" />
<Feature name="adaptive-playback"/>
<Limit name="concurrent-instances" max="15" />
<Limit name="performance-point-1920x1080" value="30" />
</MediaCodec>
<MediaCodec name="c2.mtk.vp9.decoder.secure" type="video/x-vnd.on2.vp9" >
<Alias name="OMX.MTK.VIDEO.DECODER.VP9.secure" />
<Limit name="size" min="16x16" max="2560x1440" />
<Quirk name="wants-NAL-fragments" />
<Feature name="secure-playback" required="true" />
<Feature name="adaptive-playback"/>
<Limit name="concurrent-instances" max="15" />
<Limit name="performance-point-1920x1080" value="30" />
</MediaCodec>
</Decoders>
<Encoders>
<MediaCodec name="c2.mtk.avc.encoder" type="video/avc" >
<Alias name="OMX.MTK.VIDEO.ENCODER.AVC" />
<Limit name="size" min="160x160" max="2560x1440" />
<Limit name="alignment" value="16x16" />
<Limit name="block-size" value="16x16" />
<Limit name="concurrent-instances" max="10" />
<Limit name="performance-point-1920x1080" value="30" />
</MediaCodec>
<MediaCodec name="c2.mtk.avc.encoder.secure" type="video/avc" >
<Limit name="size" min="160x128" max="1920x1088" />
<Limit name="alignment" value="16x16" />
<Limit name="block-size" value="16x16" />
<Limit name="concurrent-instances" max="10" />
<Limit name="performance-point-1920x1088" value="30" />
<Feature name="special-codec" required="true" />
</MediaCodec>
<MediaCodec name="c2.mtk.hevc.encoder" type="video/hevc" >
<Alias name="OMX.MTK.VIDEO.ENCODER.HEVC" />
<Limit name="size" min="160x128" max="2560x1440" />
<Limit name="alignment" value="16x16" />
<Limit name="block-size" value="16x16" />
<Limit name="quality" range="0-100" default="50" />
<Limit name="concurrent-instances" max="10" />
<Feature name="bitrate-modes" value="VBR,CBR,CQ" />
<Limit name="performance-point-1920x1080" value="30" />
</MediaCodec>
<MediaCodec name="c2.mtk.heif.encoder" type="image/vnd.android.heic" >
<Limit name="size" min="160x128" max="16383x16383" />
<Limit name="alignment" value="16x16" />
<Limit name="block-size" value="16x16" />
<Limit name="quality" range="0-100" default="50" />
<Quirk name="requires-allocate-on-input-ports" />
<Quirk name="requires-allocate-on-output-ports" />
<Limit name="concurrent-instances" max="2" />
<Feature name="bitrate-modes" value="VBR,CBR,CQ" />
<Limit name="performance-point-3840x2160" value="30" />
</MediaCodec>
</Encoders>
</MediaCodecs>

View file

@ -0,0 +1,131 @@
<?xml version="1.0" encoding="utf-8" ?>
<!-- Copyright (C) 2012 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.
-->
<!--
<!DOCTYPE MediaCodecs [
<!ELEMENT MediaCodecs (Decoders,Encoders)>
<!ELEMENT Decoders (MediaCodec*)>
<!ELEMENT Encoders (MediaCodec*)>
<!ELEMENT MediaCodec (Type*,Quirk*)>
<!ATTLIST MediaCodec name CDATA #REQUIRED>
<!ATTLIST MediaCodec type CDATA>
<!ELEMENT Type EMPTY>
<!ATTLIST Type name CDATA #REQUIRED>
<!ELEMENT Quirk EMPTY>
<!ATTLIST Quirk name CDATA #REQUIRED>
]>
There's a simple and a complex syntax to declare the availability of a
media codec:
A codec that properly follows the OpenMax spec and therefore doesn't have any
quirks and that only supports a single content type can be declared like so:
<MediaCodec name="OMX.foo.bar" type="something/interesting" />
If a codec has quirks OR supports multiple content types, the following syntax
can be used:
<MediaCodec name="OMX.foo.bar" >
<Type name="something/interesting" />
<Type name="something/else" />
...
<Quirk name="requires-allocate-on-input-ports" />
<Quirk name="requires-allocate-on-output-ports" />
<Quirk name="output-buffers-are-unreadable" />
</MediaCodec>
Only the three quirks included above are recognized at this point:
"requires-allocate-on-input-ports"
must be advertised if the component does not properly support specification
of input buffers using the OMX_UseBuffer(...) API but instead requires
OMX_AllocateBuffer to be used.
"requires-allocate-on-output-ports"
must be advertised if the component does not properly support specification
of output buffers using the OMX_UseBuffer(...) API but instead requires
OMX_AllocateBuffer to be used.
"output-buffers-are-unreadable"
must be advertised if the emitted output buffers of a decoder component
are not readable, i.e. use a custom format even though abusing one of
the official OMX colorspace constants.
Clients of such decoders will not be able to access the decoded data,
naturally making the component much less useful. The only use for
a component with this quirk is to render the output to the screen.
Audio decoders MUST NOT advertise this quirk.
Video decoders that advertise this quirk must be accompanied by a
corresponding color space converter for thumbnail extraction,
matching surfaceflinger support that can render the custom format to
a texture and possibly other code, so just DON'T USE THIS QUIRK.
2012/07/13 config for MTK OMX Media Codecs, created by Morris Yang (mtk03147)
-->
<MediaCodecs>
<Encoders>
<!-- MTK codec -->
<MediaCodec name="c2.mtk.mpeg4.encoder" type="video/mp4v-es" update="true">
<Limit name="measured-frame-rate-176x144" range="156-343" />
</MediaCodec>
<MediaCodec name="c2.mtk.h263.encoder" type="video/3gpp" update="true">
<Limit name="measured-frame-rate-176x144" range="79-174" />
</MediaCodec>
<MediaCodec name="c2.mtk.avc.encoder" type="video/avc" update="true">
<Limit name="measured-frame-rate-320x240" range="97-214" />
<Limit name="measured-frame-rate-720x480" range="62-137" />
<Limit name="measured-frame-rate-1280x720" range="40-88" />
<Limit name="measured-frame-rate-1920x1080" range="30-66" />
</MediaCodec>
<MediaCodec name="c2.mtk.hevc.encoder" type="video/hevc" update="true">
<Limit name="measured-frame-rate-320x240" range="97-214" />
<Limit name="measured-frame-rate-720x480" range="61-135" />
<Limit name="measured-frame-rate-1280x720" range="41-91" />
</MediaCodec>
</Encoders>
<Decoders>
<!-- MTK codec -->
<MediaCodec name="c2.mtk.mpeg4.decoder" type="video/mp4v-es" update="true">
<Limit name="measured-frame-rate-176x144" range="144-318" />
<Limit name="measured-frame-rate-480x360" range="118-260" />
<Limit name="measured-frame-rate-1280x720" range="61-134" />
</MediaCodec>
<MediaCodec name="c2.mtk.h263.decoder" type="video/3gpp" update="true">
<Limit name="measured-frame-rate-176x144" range="145-320" />
<Limit name="measured-frame-rate-352x288" range="130-286" />
</MediaCodec>
<MediaCodec name="c2.mtk.avc.decoder" type="video/avc" update="true">
<Limit name="measured-frame-rate-320x240" range="158-349" />
<Limit name="measured-frame-rate-720x480" range="156-343" />
<Limit name="measured-frame-rate-1280x720" range="111-244" />
<Limit name="measured-frame-rate-1920x1080" range="69-152" />
</MediaCodec>
<MediaCodec name="c2.mtk.hevc.decoder" type="video/hevc" update="true">
<Limit name="measured-frame-rate-352x288" range="181-398" />
<Limit name="measured-frame-rate-640x360" range="177-391" />
<Limit name="measured-frame-rate-720x480" range="169-372" />
<Limit name="measured-frame-rate-1280x720" range="128-282" />
<Limit name="measured-frame-rate-1920x1080" range="79-174" />
</MediaCodec>
<MediaCodec name="c2.mtk.vp9.decoder" type="video/x-vnd.on2.vp9" update="true">
<Limit name="measured-frame-rate-320x180" range="142-312" />
<Limit name="measured-frame-rate-640x360" range="120-265" />
<Limit name="measured-frame-rate-1280x720" range="76-167" />
<Limit name="measured-frame-rate-1920x1080" range="56-124" />
</MediaCodec>
</Decoders>
</MediaCodecs>

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,90 @@
###############################################################################
# Debug options
NFC_DEBUG_ENABLED=0
###############################################################################
# File used for NFA storage
NFA_STORAGE="/data/nfc"
PRESERVE_STORAGE=0x01
###############################################################################
# When screen is turned off, specify the desired power state of the controller.
# 0: power-off-sleep state; DEFAULT
# 1: full-power state
# 2: screen-off card-emulation (CE4/CE3/CE1 modes are used)
SCREEN_OFF_POWER_STATE=1
###############################################################################
# Default poll duration (in ms)
# Default is 500ms if not set (see nfc_target.h)
#NFA_DM_DISC_DURATION_POLL=333
###############################################################################
# Force tag polling for the following technology(s).
# The bits are defined as tNFA_TECHNOLOGY_MASK in nfa_api.h.
# Default is NFA_TECHNOLOGY_MASK_A | NFA_TECHNOLOGY_MASK_B |
# NFA_TECHNOLOGY_MASK_F | NFA_TECHNOLOGY_MASK_ISO15693 |
# NFA_TECHNOLOGY_MASK_B_PRIME | NFA_TECHNOLOGY_MASK_KOVIO |
# NFA_TECHNOLOGY_MASK_A_ACTIVE | NFA_TECHNOLOGY_MASK_F_ACTIVE.
#
# Notable bits:
# NFA_TECHNOLOGY_MASK_A 0x01 /* NFC Technology A */
# NFA_TECHNOLOGY_MASK_B 0x02 /* NFC Technology B */
# NFA_TECHNOLOGY_MASK_F 0x04 /* NFC Technology F */
# NFA_TECHNOLOGY_MASK_ISO15693 0x08 /* Proprietary Technology */
# NFA_TECHNOLOGY_MASK_KOVIO 0x20 /* Proprietary Technology */
# NFA_TECHNOLOGY_MASK_A_ACTIVE 0x40 /* NFC Technology A active mode */
# NFA_TECHNOLOGY_MASK_F_ACTIVE 0x80 /* NFC Technology F active mode */
POLLING_TECH_MASK=0x2F
###############################################################################
# Force P2P to only listen for the following technology(s).
# The bits are defined as tNFA_TECHNOLOGY_MASK in nfa_api.h.
# Default is NFA_TECHNOLOGY_MASK_A | NFA_TECHNOLOGY_MASK_F |
# NFA_TECHNOLOGY_MASK_A_ACTIVE | NFA_TECHNOLOGY_MASK_F_ACTIVE
#
# Notable bits:
# NFA_TECHNOLOGY_MASK_A 0x01 /* NFC Technology A */
# NFA_TECHNOLOGY_MASK_F 0x04 /* NFC Technology F */
# NFA_TECHNOLOGY_MASK_A_ACTIVE 0x40 /* NFC Technology A active mode */
# NFA_TECHNOLOGY_MASK_F_ACTIVE 0x80 /* NFC Technology F active mode */
P2P_LISTEN_TECH_MASK=0x00
###############################################################################
# Force UICC to only listen to the following technology(s).
# The bits are defined as tNFA_TECHNOLOGY_MASK in nfa_api.h.
# Default is NFA_TECHNOLOGY_MASK_A | NFA_TECHNOLOGY_MASK_B | NFA_TECHNOLOGY_MASK_F
UICC_LISTEN_TECH_MASK=0x07
###############################################################################
# Override the stack default for NFA_EE_MAX_EE_SUPPORTED set in nfc_target.h.
# The value is set to 3 by default as it assumes we will discover 0xF2,
# 0xF3, and 0xF4. If a platform will exclude and SE, this value can be reduced
# so that the stack will not wait any longer than necessary.
# Maximum EE supported number
# NXP PN547C2 0x02
# NXP PN65T 0x03
# NXP PN548C2 0x02
# NXP PN66T 0x03
NFA_MAX_EE_SUPPORTED=0x02
###############################################################################
# AID for Empty Select command
# If specified, this AID will be substituted when an Empty SELECT command is
# detected. The first byte is the length of the AID. Maximum length is 16.
AID_FOR_EMPTY_SELECT={08:A0:00:00:01:51:00:00:00}
###############################################################################
# AID_MATCHING constants
# AID_MATCHING_EXACT_ONLY 0x00
# AID_MATCHING_EXACT_OR_PREFIX 0x01
# AID_MATCHING_PREFIX_ONLY 0x02
AID_MATCHING_MODE=0x01
###############################################################################
# NCI_RESET_TYPE options
# Default 0x00, reset configurations everytime.
# 0x01, reset configurations only once every boot.
# 0x02, keep configurations.
NCI_RESET_TYPE=0x00

View file

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<permissions>
<privapp-permissions package="com.mediatek.ims">
<permission name="android.permission.READ_PRECISE_PHONE_STATE"/>
<permission name="android.permission.PACKET_KEEPALIVE_OFFLOAD"/>
<permission name="android.permission.CHANGE_WIFI_STATE"/>
<permission name="android.permission.NETWORK_SIGNAL_STRENGTH_WAKEUP"/>
<permission name="android.permission.MODIFY_PHONE_STATE"/>
<permission name="android.permission.UPDATE_DEVICE_STATS"/>
<permission name="android.permission.READ_PRIVILEGED_PHONE_STATE"/>
<permission name="android.permission.LOCATION_BYPASS"/>
</privapp-permissions>
</permissions>

402
configs/powerhint.json Normal file
View file

@ -0,0 +1,402 @@
{
"Nodes": [
{
"Name": "GPUMinFreq",
"Path": "/sys/devices/platform/soc/13000000.mali/devfreq/13000000.mali/min_freq",
"Values": [
"1100000000",
"1086000000",
"1072000000",
"1058000000",
"1045000000",
"1031000000",
"1017000000",
"1003000000",
"990000000",
"976000000",
"962000000",
"948000000",
"935000000",
"921000000",
"907000000",
"893000000",
"880000000",
"868000000",
"857000000",
"846000000",
"835000000",
"823000000",
"812000000",
"801000000",
"790000000",
"778000000",
"767000000",
"756000000",
"745000000",
"733000000",
"722000000",
"711000000",
"700000000",
"674000000",
"648000000",
"622000000",
"596000000",
"570000000",
"545000000",
"519000000",
"493000000",
"467000000",
"441000000",
"415000000",
"390000000"
],
"ResetOnInit": true
},
{
"Name": "CPULittleClusterMaxFreq",
"Path": "/sys/devices/system/cpu/cpufreq/policy0/scaling_max_freq",
"Values": [
"-1",
"2000000",
"1900000",
"1800000",
"1700000",
"1600000",
"1500000",
"1450000",
"1400000",
"1350000",
"1300000",
"1250000",
"1200000",
"1150000",
"1100000",
"1050000",
"1000000",
"950000",
"900000",
"850000",
"800000",
"750000",
"700000",
"650000"
],
"DefaultIndex": 0,
"ResetOnInit": true
},
{
"Name": "CPULittleClusterMinFreq",
"Path": "/sys/devices/system/cpu/cpufreq/policy0/scaling_min_freq",
"Values": [
"2000000",
"1900000",
"1800000",
"1700000",
"1600000",
"1500000",
"1450000",
"1400000",
"1350000",
"1300000",
"1250000",
"1200000",
"1150000",
"1100000",
"1050000",
"1000000",
"950000",
"900000",
"850000",
"800000",
"750000",
"700000",
"650000",
"-1"
],
"ResetOnInit": true
},
{
"Name": "CPUBigClusterMaxFreq",
"Path": "/sys/devices/system/cpu/cpufreq/policy6/scaling_max_freq",
"Values": [
"-1",
"2400000",
"2300000",
"2200000",
"2100000",
"2000000",
"1900000",
"1800000",
"1700000",
"1600000",
"1500000",
"1400000",
"1300000",
"1200000",
"1100000",
"1000000",
"900000",
"800000",
"700000"
],
"DefaultIndex": 0,
"ResetOnInit": true
},
{
"Name": "CPUBigClusterMinFreq",
"Path": "/sys/devices/system/cpu/cpufreq/policy6/scaling_min_freq",
"Values": [
"2400000",
"2300000",
"2200000",
"2100000",
"2000000",
"1900000",
"1800000",
"1700000",
"1600000",
"1500000",
"1400000",
"1300000",
"1200000",
"1100000",
"1000000",
"900000",
"800000",
"700000",
"-1"
],
"ResetOnInit": true
},
{
"Name": "GPUSchedMode",
"Path": "/sys/devices/platform/soc/13000000.mali/js_ctx_scheduling_mode",
"Values": [
"0",
"1"
],
"DefaultIndex": 0,
"ResetOnInit": true
},
{
"Name": "GPUSchedPeriod",
"Path": "/sys/devices/platform/soc/13000000.mali/js_scheduling_period",
"Values": [
"100",
"75",
"50",
"0"
],
"ResetOnInit": true,
"DefaultIndex": 0
},
{
"Name": "GPUDVFSInterval",
"Path": "/sys/devices/platform/soc/13000000.mali/dvfs_period",
"Values": [
"100",
"75",
"50"
],
"ResetOnInit": true,
"DefaultIndex": 0
},
{
"Name": "FGUclampMin",
"Path": "/dev/cpuctl/foreground/cpu.uclamp.min",
"Values": [
"100",
"0"
],
"ResetOnInit": true
},
{
"Name": "TAUclampMin",
"Path": "/dev/cpuctl/top-app/cpu.uclamp.min",
"Values": [
"100",
"10",
"0"
],
"ResetOnInit": true
},
{
"Name": "CDUclampMin",
"Path": "/dev/cpuctl/camera-daemon/cpu.uclamp.min",
"Values": [
"100",
"0"
],
"ResetOnInit": true
},
// {
// "Name": "SchedBoost",
// "Path": "/proc/perfmgr/boost_ctrl/eas_ctrl/sched_boost",
// "Values": [
// "1",
// "0"
// ],
// "ResetOnInit": true
// },
// {
// "Name": "DoubleTapToWakeEnable",
// "Path": "/sys/touchpanel/double_tap",
// "Values": [
// "1",
// "0"
// ]
// },
{
"Name": "PowerHALAudioState",
"Path": "vendor.powerhal.audio",
"Values": ["AUDIO_STREAMING_LOW_LATENCY", ""],
"Type": "Property"
},
{
"Name": "PowerHALRenderingState",
"Path": "vendor.powerhal.rendering",
"Values": ["EXPENSIVE_RENDERING", ""],
"Type": "Property"
}
],
"Actions": [
{
"PowerHint": "AUDIO_STREAMING_LOW_LATENCY",
"Node": "PowerHALAudioState",
"Duration": 0,
"Value": "AUDIO_STREAMING_LOW_LATENCY"
},
{
"PowerHint": "AUDIO_STREAMING_LOW_LATENCY",
"Node": "CPULittleClusterMinFreq",
"Duration": 0,
"Value": "900000"
},
{
"PowerHint": "AUDIO_STREAMING_LOW_LATENCY",
"Node": "CPUBigClusterMinFreq",
"Duration": 0,
"Value": "900000"
},
{
"PowerHint": "INTERACTION",
"Node": "CPULittleClusterMaxFreq",
"Duration": 0,
"Value": "-1"
},
{
"PowerHint": "INTERACTION",
"Node": "CPULittleClusterMinFreq",
"Duration": 0,
"Value": "1250000"
},
{
"PowerHint": "INTERACTION",
"Node": "CPUBigClusterMaxFreq",
"Duration": 0,
"Value": "-1"
},
{
"PowerHint": "INTERACTION",
"Node": "CPUBigClusterMinFreq",
"Duration": 0,
"Value": "1600000"
},
{
"PowerHint": "INTERACTION",
"Node": "TAUclampMin",
"Duration": 0,
"Value": "10"
},
{
"PowerHint": "LAUNCH",
"Node": "CPUBigClusterMaxFreq",
"Duration": 3000,
"Value": "-1"
},
{
"PowerHint": "LAUNCH",
"Node": "CPUBigClusterMinFreq",
"Duration": 3000,
"Value": "2400000"
},
{
"PowerHint": "LAUNCH",
"Node": "CPULittleClusterMaxFreq",
"Duration": 3000,
"Value": "-1"
},
{
"PowerHint": "LAUNCH",
"Node": "CPULittleClusterMinFreq",
"Duration": 3000,
"Value": "2000000"
},
{
"PowerHint": "LAUNCH",
"Node": "FGUclampMin",
"Duration": 3000,
"Value": "100"
},
{
"PowerHint": "LAUNCH",
"Node": "TAUclampMin",
"Duration": 3000,
"Value": "100"
},
// {
// "PowerHint": "LAUNCH",
// "Node": "DRAMOppMin",
// "Duration": 3000,
// "Value": "1"
// },
// {
// "PowerHint": "LAUNCH",
// "Node": "SchedBoost",
// "Duration": 3000,
// "Value": "1"
// },
{
"PowerHint": "CAMERA_LAUNCH",
"Node": "CDUclampMin",
"Duration": 1000,
"Value": "100"
},
{
"PowerHint": "EXPENSIVE_RENDERING",
"Node": "GPUMinFreq",
"Duration": 0,
"Value": "801000000"
},
{
"PowerHint": "EXPENSIVE_RENDERING",
"Node": "PowerHALRenderingState",
"Duration": 0,
"Value": "EXPENSIVE_RENDERING"
},
{
"PowerHint": "EXPENSIVE_RENDERING",
"Node": "GPUSchedPeriod",
"Duration": 0,
"Value": "100"
},
{
"PowerHint": "EXPENSIVE_RENDERING",
"Node": "GPUDVFSInterval",
"Duration": 0,
"Value": "75"
},
{
"PowerHint": "EXPENSIVE_RENDERING",
"Node": "GPUSchedMode",
"Duration": 0,
"Value": "1"
}
// {
// "PowerHint": "DOUBLE_TAP_TO_WAKE",
// "Node": "DoubleTapToWakeEnable",
// "Duration": 0,
// "Value": "1"
// }
]
}

28
configs/thermal.conf Normal file
View file

@ -0,0 +1,28 @@
[policy_type]
# If permanent= Yes, this policy is still valid after reboot
permanent= No
[LTF]
thermal_zone= soc_max
mode= enabled
[mtk-skin-control]
sensor= ap_ntc
max_target_tj= 85000
min_target_tj= 55000
trip_tpcb= 44000
target_tpcb= 48000
atc_mode= enable
[charger-cooler]
mode= enabled
sensor= ap_ntc
threshold= [44000, 45000, 46500, 56000]
hysteresis= [2000, 2000, 2000, 2000]
current= [1800, 1000, 500, 0]
[thermalhal-threshold]
type= SKIN
sensor= ap_ntc
level= [severe, critical, emergency, shutdown]
threshold= [52000, 56000, 58000, 80000]

View file

@ -0,0 +1,6 @@
p2p_no_group_iface=0
driver_param=use_p2p_group_interface=1
bss_expiration_scan_count=1
wowlan_triggers=disconnect
p2p_search_delay=50
p2p_go_he=1

View file

@ -0,0 +1,16 @@
ctrl_interface=wlan0
update_config=1
manufacturer=MediaTek Inc.
device_name=Wireless Client
model_name=MTK Wireless Model
model_number=1.0
serial_number=2.0
device_type=10-0050F204-5
os_version=01020300
config_methods=display push_button keypad
p2p_no_group_iface=1
driver_param=use_p2p_group_interface=1
hs20=1
pmf=1
wowlan_disconnect_on_deinit=1
sae_pwe=2

View file

@ -0,0 +1,5 @@
p2p_no_group_iface=1
driver_param=use_p2p_group_interface=1
wowlan_triggers=disconnect
p2p_disabled=1
bss_no_flush_when_down=1