[automerger skipped] DO NOT MERGE Oriole/Raven: enable Dolby DD+ decoder am: 412664dc84 am: 7813672831 -s ours
am skip reason: subject contains skip directive
Original change: https://googleplex-android-review.googlesource.com/c/device/google/raviole/+/17109122
Change-Id: I728427c51655f64d38992c0954a5415f0ba5bcbc
diff --git a/audio/oriole/audio-tables.mk b/audio/oriole/audio-tables.mk
index 98dd6a6..f9c3759 100644
--- a/audio/oriole/audio-tables.mk
+++ b/audio/oriole/audio-tables.mk
@@ -24,7 +24,8 @@
device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/config/audio_platform_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_configuration.xml \
device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/config/sound_trigger_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_configuration.xml \
device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \
- device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/config/bluetooth_audio_policy_configuration_7_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_audio_policy_configuration_7_0.xml
+ device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/config/audio_policy_configuration_le_offload_disabled.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration_le_offload_disabled.xml \
+ frameworks/av/services/audiopolicy/config/bluetooth_with_le_audio_policy_configuration_7_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_audio_policy_configuration_7_0.xml
# AudioEffectHAL Configuration
PRODUCT_COPY_FILES += \
@@ -47,6 +48,7 @@
device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HANDSFREE.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HANDSFREE.dat \
device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HANDSET.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HANDSET.dat \
device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HEADSET.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HEADSET.dat \
+ device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/mcps.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/mcps.dat \
device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/waves_config.ini:$(TARGET_COPY_OUT_VENDOR)/etc/waves_config.ini \
device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/waves_preset.mps:$(TARGET_COPY_OUT_VENDOR)/etc/waves_preset.mps
diff --git a/audio/oriole/config/audio_effects.xml b/audio/oriole/config/audio_effects.xml
index e35bfbd..1718057 100644
--- a/audio/oriole/config/audio_effects.xml
+++ b/audio/oriole/config/audio_effects.xml
@@ -10,7 +10,6 @@
<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">
@@ -52,7 +51,6 @@
<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="dynamics_processing" library="dynamics_processing" uuid="e0e6539b-1781-7261-676f-6d7573696340"/>
- <effect name="spatializer" library="spatializer" uuid="cc4677de-ff72-11eb-9a03-0242ac130003"/>
</effects>
<postprocess>
</postprocess>
diff --git a/audio/oriole/config/audio_platform_configuration.xml b/audio/oriole/config/audio_platform_configuration.xml
index f8cd663..f0bec9b 100644
--- a/audio/oriole/config/audio_platform_configuration.xml
+++ b/audio/oriole/config/audio_platform_configuration.xml
@@ -176,13 +176,12 @@
<usecase id="UC_RAW_PLAYBACK" dev1="23" dyn_path="true" dsp_vol="false" mmap="true" period="64" period_num="32"/>
<!-- for output with AUDIO_OUTPUT_FLAG_PRIMARY|AUDIO_OUTPUT_FLAG_FAST, 4 * 10ms buffer -->
<usecase id="UC_LOW_LATENCY_PLAYBACK" dev1="1" dyn_path="true" dsp_vol="false" mmap="false" period="10" period_num="4"/>
- <!-- for output with AUDIO_OUTPUT_FLAG_MMAP_NOIRQ, 80 periods * 48 frames/period(=1ms w/ 48k sample rate) * 4 bytes/frame = 15360 bytes -->
- <usecase id="UC_MMAP_PLAYBACK" dev1="0" dyn_path="true" dsp_vol="false" mmap="true" period="1" period_num="80"/>
+ <!-- for output with AUDIO_OUTPUT_FLAG_MMAP_NOIRQ, 40 periods * 48 frames/period(=1ms w/ 48k sample rate) * 2ch * 4(float) = 15360 bytes -->
+ <usecase id="UC_MMAP_PLAYBACK" dev1="0" dyn_path="true" dsp_vol="false" mmap="true" period="1" period_num="40"/>
<!-- for output with AUDIO_OUTPUT_FLAG_DEEP_BUFFER, 4 * 20ms buffer -->
<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"/>
- <usecase id="UC_IMMERSIVE_PLAYBACK" dev1="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 -->
diff --git a/audio/oriole/config/audio_policy_configuration.xml b/audio/oriole/config/audio_policy_configuration.xml
index 8d732a1..ed81992 100644
--- a/audio/oriole/config/audio_policy_configuration.xml
+++ b/audio/oriole/config/audio_policy_configuration.xml
@@ -28,7 +28,7 @@
<defaultOutputDevice>Speaker</defaultOutputDevice>
<mixPorts>
<mixPort name="primary output" role="source" flags="AUDIO_OUTPUT_FLAG_PRIMARY AUDIO_OUTPUT_FLAG_FAST">
- <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ <profile name="" format="AUDIO_FORMAT_PCM_FLOAT"
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="deep buffer" role="source" flags="AUDIO_OUTPUT_FLAG_DEEP_BUFFER">
@@ -60,10 +60,6 @@
samplingRates="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="immersive_out" role="source" flags="AUDIO_OUTPUT_FLAG_FAST AUDIO_OUTPUT_FLAG_DEEP_BUFFER">
<profile name="" format="AUDIO_FORMAT_PCM_FLOAT"
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
@@ -176,6 +172,16 @@
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</devicePort>
+ <devicePort tagName="BT BLE Headset" type="AUDIO_DEVICE_OUT_BLE_HEADSET" role="sink"
+ encodedFormats="AUDIO_FORMAT_LC3">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
+ </devicePort>
+ <devicePort tagName="BT BLE Speaker" type="AUDIO_DEVICE_OUT_BLE_SPEAKER" role="sink"
+ encodedFormats="AUDIO_FORMAT_LC3">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_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">
@@ -189,21 +195,25 @@
<!-- route declaration, i.e. list all available sources for a given sink -->
<routes>
<route type="mix" sink="Speaker"
- sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx,immersive_out"/>
+ sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Speaker Safe"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Earpiece"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT A2DP Out"
- sources="primary output,deep buffer,haptic,compressed_offload,voip_rx,immersive_out"/>
+ sources="primary output,deep buffer,haptic,compressed_offload,voip_rx"/>
<route type="mix" sink="BT A2DP Headphones"
- sources="primary output,deep buffer,haptic,compressed_offload,voip_rx,immersive_out"/>
+ sources="primary output,deep buffer,haptic,compressed_offload,voip_rx"/>
<route type="mix" sink="BT A2DP Speaker"
- sources="primary output,deep buffer,haptic,compressed_offload,voip_rx,immersive_out"/>
+ sources="primary output,deep buffer,haptic,compressed_offload,voip_rx"/>
+ <route type="mix" sink="BT BLE Headset"
+ sources="primary output,deep buffer,haptic,compressed_offload,voip_rx"/>
+ <route type="mix" sink="BT BLE Speaker"
+ sources="primary output,deep buffer,haptic,compressed_offload,voip_rx"/>
<route type="mix" sink="USB Device Out"
- sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback,immersive_out"/>
+ sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback"/>
<route type="mix" sink="USB Headset Out"
- sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback,immersive_out"/>
+ sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback"/>
<route type="mix" sink="BT SCO"
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx"/>
<route type="mix" sink="BT SCO Headset"
diff --git a/audio/oriole/config/audio_policy_configuration_a2dp_offload_disabled.xml b/audio/oriole/config/audio_policy_configuration_a2dp_offload_disabled.xml
index 86c3104..be5287b 100644
--- a/audio/oriole/config/audio_policy_configuration_a2dp_offload_disabled.xml
+++ b/audio/oriole/config/audio_policy_configuration_a2dp_offload_disabled.xml
@@ -28,7 +28,7 @@
<defaultOutputDevice>Speaker</defaultOutputDevice>
<mixPorts>
<mixPort name="primary output" role="source" flags="AUDIO_OUTPUT_FLAG_PRIMARY AUDIO_OUTPUT_FLAG_FAST">
- <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ <profile name="" format="AUDIO_FORMAT_PCM_FLOAT"
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="deep buffer" role="source" flags="AUDIO_OUTPUT_FLAG_DEEP_BUFFER">
@@ -60,10 +60,6 @@
samplingRates="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="immersive_out" role="source" flags="AUDIO_OUTPUT_FLAG_FAST AUDIO_OUTPUT_FLAG_DEEP_BUFFER">
<profile name="" format="AUDIO_FORMAT_PCM_FLOAT"
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
@@ -174,15 +170,15 @@
<!-- route declaration, i.e. list all available sources for a given sink -->
<routes>
<route type="mix" sink="Speaker"
- sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx,immersive_out"/>
+ sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Speaker Safe"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Earpiece"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="USB Device Out"
- sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback,immersive_out"/>
+ sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback"/>
<route type="mix" sink="USB Headset Out"
- sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback,immersive_out"/>
+ sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback"/>
<route type="mix" sink="BT SCO"
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx"/>
<route type="mix" sink="BT SCO Headset"
diff --git a/audio/oriole/config/audio_policy_configuration_bluetooth_legacy_hal.xml b/audio/oriole/config/audio_policy_configuration_bluetooth_legacy_hal.xml
index 0623ec4..0972b9f 100644
--- a/audio/oriole/config/audio_policy_configuration_bluetooth_legacy_hal.xml
+++ b/audio/oriole/config/audio_policy_configuration_bluetooth_legacy_hal.xml
@@ -28,7 +28,7 @@
<defaultOutputDevice>Speaker</defaultOutputDevice>
<mixPorts>
<mixPort name="primary output" role="source" flags="AUDIO_OUTPUT_FLAG_PRIMARY AUDIO_OUTPUT_FLAG_FAST">
- <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ <profile name="" format="AUDIO_FORMAT_PCM_FLOAT"
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="deep buffer" role="source" flags="AUDIO_OUTPUT_FLAG_DEEP_BUFFER">
@@ -60,7 +60,7 @@
samplingRates="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"
+ <profile name="" format="AUDIO_FORMAT_PCM_FLOAT"
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="incall playback" role="source"
diff --git a/audio/oriole/config/audio_policy_configuration_le_offload_disabled.xml b/audio/oriole/config/audio_policy_configuration_le_offload_disabled.xml
new file mode 100644
index 0000000..030c767
--- /dev/null
+++ b/audio/oriole/config/audio_policy_configuration_le_offload_disabled.xml
@@ -0,0 +1,255 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<!-- Copyright (C) 2020 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">
+ <globalConfiguration speaker_drc_enabled="false" call_screen_mode_supported="true" />
+ <modules>
+ <!-- Primary Audio HAL -->
+ <module name="primary" halVersion="2.0">
+ <attachedDevices>
+ <item>Speaker</item>
+ <item>Speaker Safe</item>
+ <item>Earpiece</item>
+ <item>Built-In Mic</item>
+ <item>Built-In Back Mic</item>
+ <item>Telephony Tx</item>
+ <item>Voice Call And Telephony Rx</item>
+ <item>Echo Ref In</item>
+ </attachedDevices>
+ <defaultOutputDevice>Speaker</defaultOutputDevice>
+ <mixPorts>
+ <mixPort name="primary output" role="source" flags="AUDIO_OUTPUT_FLAG_PRIMARY AUDIO_OUTPUT_FLAG_FAST">
+ <profile name="" format="AUDIO_FORMAT_PCM_FLOAT"
+ samplingRates="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_FLOAT"
+ samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
+ </mixPort>
+ <mixPort name="compressed_offload" role="source"
+ flags="AUDIO_OUTPUT_FLAG_DIRECT AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD AUDIO_OUTPUT_FLAG_NON_BLOCKING">
+ <profile name="" format="AUDIO_FORMAT_MP3"
+ samplingRates="8000 16000 24000 32000 44100 48000"
+ channelMasks="AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_MONO"/>
+ <profile name="" format="AUDIO_FORMAT_AAC_LC"
+ samplingRates="8000 16000 24000 32000 44100 48000"
+ channelMasks="AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_MONO"/>
+ <profile name="" format="AUDIO_FORMAT_AAC_HE_V1"
+ samplingRates="8000 16000 24000 32000 44100 48000"
+ channelMasks="AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_MONO"/>
+ <profile name="" format="AUDIO_FORMAT_AAC_HE_V2"
+ samplingRates="8000 16000 24000 32000 44100 48000"
+ channelMasks="AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_MONO"/>
+ </mixPort>
+ <mixPort name="haptic" role="source">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="48000"
+ channelMasks="AUDIO_CHANNEL_OUT_STEREO_HAPTIC_A" />
+ </mixPort>
+ <mixPort name="raw" role="source" flags="AUDIO_OUTPUT_FLAG_RAW AUDIO_OUTPUT_FLAG_FAST">
+ <profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
+ samplingRates="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_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"
+ samplingRates="48000"
+ channelMasks="AUDIO_CHANNEL_OUT_STEREO" />
+ </mixPort>
+ <mixPort name="voice call tx" role="source">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="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_16_BIT"
+ samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
+ </mixPort>
+ <mixPort name="primary input" role="sink">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="48000"
+ channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO AUDIO_CHANNEL_INDEX_MASK_3"/>
+ </mixPort>
+ <mixPort name="hotword input" role="sink" flags="AUDIO_INPUT_FLAG_HW_HOTWORD" maxActiveCount="0" >
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="8000 11025 12000 16000 22050 24000 32000 44100 48000"
+ channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO"/>
+ </mixPort>
+ <mixPort name="incall capture" role="sink">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="48000"
+ channelMasks="AUDIO_CHANNEL_IN_MONO"/>
+ </mixPort>
+ <mixPort name="voice call rx" role="sink">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="48000"
+ channelMasks="AUDIO_CHANNEL_IN_MONO"/>
+ </mixPort>
+ <mixPort name="voip_tx" role="sink"
+ flags="AUDIO_INPUT_FLAG_VOIP_TX">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="48000" channelMasks="AUDIO_CHANNEL_IN_MONO"/>
+ </mixPort>
+ <mixPort name="fast input" role="sink" flags="AUDIO_INPUT_FLAG_RAW AUDIO_INPUT_FLAG_FAST">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="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_32_BIT"
+ samplingRates="48000"
+ channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO"/>
+ </mixPort>
+ <mixPort name="hifi_playback" role="source" />
+ <mixPort name="hifi_input" role="sink" />
+ <mixPort name="echo_ref_input" role="sink">
+ <profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
+ samplingRates="48000"
+ channelMasks="AUDIO_CHANNEL_IN_STEREO"/>
+ </mixPort>
+ </mixPorts>
+ <devicePorts>
+ <!-- Output devices declaration, i.e. Sink DEVICE PORT -->
+ <devicePort tagName="Earpiece" type="AUDIO_DEVICE_OUT_EARPIECE" role="sink">
+ </devicePort>
+ <devicePort tagName="Speaker" type="AUDIO_DEVICE_OUT_SPEAKER" role="sink">
+ </devicePort>
+ <devicePort tagName="Speaker Safe" type="AUDIO_DEVICE_OUT_SPEAKER_SAFE" role="sink">
+ </devicePort>
+ <devicePort tagName="Wired Headset" type="AUDIO_DEVICE_OUT_WIRED_HEADSET" role="sink">
+ </devicePort>
+ <devicePort tagName="Wired Headphones" type="AUDIO_DEVICE_OUT_WIRED_HEADPHONE" role="sink">
+ </devicePort>
+ <devicePort tagName="BT SCO" type="AUDIO_DEVICE_OUT_BLUETOOTH_SCO" role="sink">
+ </devicePort>
+ <devicePort tagName="BT SCO Headset" type="AUDIO_DEVICE_OUT_BLUETOOTH_SCO_HEADSET" role="sink">
+ </devicePort>
+ <devicePort tagName="BT SCO Car Kit" type="AUDIO_DEVICE_OUT_BLUETOOTH_SCO_CARKIT" role="sink">
+ </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="Aux Digital" type="AUDIO_DEVICE_OUT_AUX_DIGITAL" role="sink">
+ </devicePort>
+ <devicePort tagName="Telephony Tx" type="AUDIO_DEVICE_OUT_TELEPHONY_TX" role="sink">
+ </devicePort>
+ <!-- Input devices declaration, i.e. Source DEVICE PORT -->
+ <devicePort tagName="Built-In Mic" type="AUDIO_DEVICE_IN_BUILTIN_MIC" role="source">
+ </devicePort>
+ <devicePort tagName="Built-In Back Mic" type="AUDIO_DEVICE_IN_BACK_MIC" role="source">
+ </devicePort>
+ <devicePort tagName="Wired Headset Mic" type="AUDIO_DEVICE_IN_WIRED_HEADSET" role="source">
+ </devicePort>
+ <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">
+ <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">
+ <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">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_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>
+ <!-- AUDIO_DEVICE_IN_VOICE_CALL and AUDIO_DEVICE_IN_TELEPHONY_RX are in the same value -->
+ <devicePort tagName="Voice Call And Telephony Rx" type="AUDIO_DEVICE_IN_VOICE_CALL" role="source">
+ </devicePort>
+ <devicePort tagName="Echo Ref In" type="AUDIO_DEVICE_IN_ECHO_REFERENCE" role="source">
+ </devicePort>
+ </devicePorts>
+ <!-- route declaration, i.e. list all available sources for a given sink -->
+ <routes>
+ <route type="mix" sink="Speaker"
+ sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
+ <route type="mix" sink="Speaker Safe"
+ sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
+ <route type="mix" sink="Earpiece"
+ sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
+ <route type="mix" sink="BT A2DP Out"
+ sources="primary output,deep buffer,haptic,compressed_offload,voip_rx"/>
+ <route type="mix" sink="BT A2DP Headphones"
+ sources="primary output,deep buffer,haptic,compressed_offload,voip_rx"/>
+ <route type="mix" sink="BT A2DP Speaker"
+ sources="primary output,deep buffer,haptic,compressed_offload,voip_rx"/>
+ <route type="mix" sink="USB Device Out"
+ sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback"/>
+ <route type="mix" sink="USB Headset Out"
+ sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback"/>
+ <route type="mix" sink="BT SCO"
+ sources="primary output,deep buffer,haptic,compressed_offload,voip_rx"/>
+ <route type="mix" sink="BT SCO Headset"
+ sources="primary output,deep buffer,haptic,compressed_offload,voip_rx"/>
+ <route type="mix" sink="BT SCO Car Kit"
+ sources="primary output,deep buffer,haptic,compressed_offload,voip_rx"/>
+ <route type="mix" sink="Telephony Tx" sources="incall playback,voice call tx" />
+ <route type="mix" sink="primary input"
+ sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
+ <route type="mix" sink="hotword input"
+ sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
+ <route type="mix" sink="incall capture" sources="Voice Call And Telephony Rx" />
+ <route type="mix" sink="voice call rx" sources="Voice Call And Telephony Rx" />
+ <route type="mix" sink="voip_tx"
+ sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
+ <route type="mix" sink="fast input"
+ sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In"/>
+ <route type="mix" sink="mmap_no_irq_in"
+ sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In"/>
+ <route type="mix" sink="hifi_input" sources="USB Device In,USB Headset In" />
+ <route type="mix" sink="echo_ref_input" sources="Echo Ref In"/>
+ </routes>
+ </module>
+ <!-- Bluetooth Audio HAL -->
+ <xi:include href="bluetooth_audio_policy_configuration_7_0.xml"/>
+ <!-- Usb Audio HAL -->
+ <module name="usbv2" halVersion="2.0">
+ <mixPorts>
+ <mixPort name="usb_accessory output" role="source">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="44100" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
+ </mixPort>
+ </mixPorts>
+ <devicePorts>
+ <devicePort tagName="USB Host Out" type="AUDIO_DEVICE_OUT_USB_ACCESSORY" role="sink">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="44100" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
+ </devicePort>
+ </devicePorts>
+ <routes>
+ <route type="mix" sink="USB Host Out"
+ sources="usb_accessory output"/>
+ </routes>
+ </module>
+ <!-- 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>
diff --git a/audio/oriole/config/bluetooth_audio_policy_configuration_7_0.xml b/audio/oriole/config/bluetooth_audio_policy_configuration_7_0.xml
deleted file mode 100644
index 3a07ded..0000000
--- a/audio/oriole/config/bluetooth_audio_policy_configuration_7_0.xml
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- Bluetooth Audio HAL Audio Policy Configuration file -->
-<module name="bluetooth" halVersion="2.0">
- <mixPorts>
- <!-- A2DP Audio Ports -->
- <mixPort name="a2dp output" role="source" flags="AUDIO_OUTPUT_FLAG_DEEP_BUFFER AUDIO_OUTPUT_FLAG_FAST"/>
- <!-- Hearing AIDs Audio Ports -->
- <mixPort name="hearing aid output" role="source">
- <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
- samplingRates="24000 16000"
- channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
- </mixPort>
- </mixPorts>
- <devicePorts>
- <!-- A2DP Audio Ports -->
- <devicePort tagName="BT A2DP Out" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP" role="sink">
- <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
- samplingRates="44100 48000 88200 96000"
- channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
- </devicePort>
- <devicePort tagName="BT A2DP Headphones" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES" role="sink">
- <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
- samplingRates="44100 48000 88200 96000"
- channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
- </devicePort>
- <devicePort tagName="BT A2DP Speaker" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER" role="sink">
- <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
- samplingRates="44100 48000 88200 96000"
- channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
- </devicePort>
- <!-- Hearing AIDs Audio Ports -->
- <devicePort tagName="BT Hearing Aid Out" type="AUDIO_DEVICE_OUT_HEARING_AID" role="sink"/>
- </devicePorts>
- <routes>
- <route type="mix" sink="BT A2DP Out"
- sources="a2dp output"/>
- <route type="mix" sink="BT A2DP Headphones"
- sources="a2dp output"/>
- <route type="mix" sink="BT A2DP Speaker"
- sources="a2dp output"/>
- <route type="mix" sink="BT Hearing Aid Out"
- sources="hearing aid output"/>
- </routes>
-</module>
diff --git a/audio/oriole/config/mixer_paths.xml b/audio/oriole/config/mixer_paths.xml
index e2f724e..55d5252 100644
--- a/audio/oriole/config/mixer_paths.xml
+++ b/audio/oriole/config/mixer_paths.xml
@@ -429,18 +429,6 @@
<path name="compress-offload-playback" />
</path>
- <path name="immersive-playbackP">
- <ctl name="TDM_0_RX Mixer EP4" value="1"/>
- </path>
-
- <path name="immersive-playbackP bt">
- <ctl name="BT_RX Mixer EP4" value="1"/>
- </path>
-
- <path name="immersive-playbackP usb-headphone">
- <ctl name="USB_RX Mixer EP4" value="1"/>
- </path>
-
<path name="voip-playbackP">
<ctl name="TDM_0_RX Mixer VOIP" value="1"/>
</path>
diff --git a/audio/oriole/tuning/fortemedia/mcps.dat b/audio/oriole/tuning/fortemedia/mcps.dat
new file mode 100644
index 0000000..04fc100
--- /dev/null
+++ b/audio/oriole/tuning/fortemedia/mcps.dat
Binary files differ
diff --git a/audio/raven/audio-tables.mk b/audio/raven/audio-tables.mk
index cffea37..b8538ad 100644
--- a/audio/raven/audio-tables.mk
+++ b/audio/raven/audio-tables.mk
@@ -24,7 +24,8 @@
device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/config/audio_platform_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_configuration.xml \
device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/config/sound_trigger_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_configuration.xml \
device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \
- device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/config/bluetooth_audio_policy_configuration_7_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_audio_policy_configuration_7_0.xml
+ device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/config/audio_policy_configuration_le_offload_disabled.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration_le_offload_disabled.xml \
+ frameworks/av/services/audiopolicy/config/bluetooth_with_le_audio_policy_configuration_7_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_audio_policy_configuration_7_0.xml
# AudioEffectHAL Configuration
PRODUCT_COPY_FILES += \
@@ -47,6 +48,7 @@
device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HANDSFREE.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HANDSFREE.dat \
device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HANDSET.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HANDSET.dat \
device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HEADSET.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HEADSET.dat \
+ device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/mcps.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/mcps.dat \
device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/waves_config.ini:$(TARGET_COPY_OUT_VENDOR)/etc/waves_config.ini \
device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/waves_preset.mps:$(TARGET_COPY_OUT_VENDOR)/etc/waves_preset.mps
diff --git a/audio/raven/config/audio_effects.xml b/audio/raven/config/audio_effects.xml
index e35bfbd..1718057 100644
--- a/audio/raven/config/audio_effects.xml
+++ b/audio/raven/config/audio_effects.xml
@@ -10,7 +10,6 @@
<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">
@@ -52,7 +51,6 @@
<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="dynamics_processing" library="dynamics_processing" uuid="e0e6539b-1781-7261-676f-6d7573696340"/>
- <effect name="spatializer" library="spatializer" uuid="cc4677de-ff72-11eb-9a03-0242ac130003"/>
</effects>
<postprocess>
</postprocess>
diff --git a/audio/raven/config/audio_platform_configuration.xml b/audio/raven/config/audio_platform_configuration.xml
index f8cd663..f0bec9b 100644
--- a/audio/raven/config/audio_platform_configuration.xml
+++ b/audio/raven/config/audio_platform_configuration.xml
@@ -176,13 +176,12 @@
<usecase id="UC_RAW_PLAYBACK" dev1="23" dyn_path="true" dsp_vol="false" mmap="true" period="64" period_num="32"/>
<!-- for output with AUDIO_OUTPUT_FLAG_PRIMARY|AUDIO_OUTPUT_FLAG_FAST, 4 * 10ms buffer -->
<usecase id="UC_LOW_LATENCY_PLAYBACK" dev1="1" dyn_path="true" dsp_vol="false" mmap="false" period="10" period_num="4"/>
- <!-- for output with AUDIO_OUTPUT_FLAG_MMAP_NOIRQ, 80 periods * 48 frames/period(=1ms w/ 48k sample rate) * 4 bytes/frame = 15360 bytes -->
- <usecase id="UC_MMAP_PLAYBACK" dev1="0" dyn_path="true" dsp_vol="false" mmap="true" period="1" period_num="80"/>
+ <!-- for output with AUDIO_OUTPUT_FLAG_MMAP_NOIRQ, 40 periods * 48 frames/period(=1ms w/ 48k sample rate) * 2ch * 4(float) = 15360 bytes -->
+ <usecase id="UC_MMAP_PLAYBACK" dev1="0" dyn_path="true" dsp_vol="false" mmap="true" period="1" period_num="40"/>
<!-- for output with AUDIO_OUTPUT_FLAG_DEEP_BUFFER, 4 * 20ms buffer -->
<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"/>
- <usecase id="UC_IMMERSIVE_PLAYBACK" dev1="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 -->
diff --git a/audio/raven/config/audio_policy_configuration.xml b/audio/raven/config/audio_policy_configuration.xml
index 8d732a1..ed81992 100644
--- a/audio/raven/config/audio_policy_configuration.xml
+++ b/audio/raven/config/audio_policy_configuration.xml
@@ -28,7 +28,7 @@
<defaultOutputDevice>Speaker</defaultOutputDevice>
<mixPorts>
<mixPort name="primary output" role="source" flags="AUDIO_OUTPUT_FLAG_PRIMARY AUDIO_OUTPUT_FLAG_FAST">
- <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ <profile name="" format="AUDIO_FORMAT_PCM_FLOAT"
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="deep buffer" role="source" flags="AUDIO_OUTPUT_FLAG_DEEP_BUFFER">
@@ -60,10 +60,6 @@
samplingRates="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="immersive_out" role="source" flags="AUDIO_OUTPUT_FLAG_FAST AUDIO_OUTPUT_FLAG_DEEP_BUFFER">
<profile name="" format="AUDIO_FORMAT_PCM_FLOAT"
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
@@ -176,6 +172,16 @@
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</devicePort>
+ <devicePort tagName="BT BLE Headset" type="AUDIO_DEVICE_OUT_BLE_HEADSET" role="sink"
+ encodedFormats="AUDIO_FORMAT_LC3">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
+ </devicePort>
+ <devicePort tagName="BT BLE Speaker" type="AUDIO_DEVICE_OUT_BLE_SPEAKER" role="sink"
+ encodedFormats="AUDIO_FORMAT_LC3">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_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">
@@ -189,21 +195,25 @@
<!-- route declaration, i.e. list all available sources for a given sink -->
<routes>
<route type="mix" sink="Speaker"
- sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx,immersive_out"/>
+ sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Speaker Safe"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Earpiece"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="BT A2DP Out"
- sources="primary output,deep buffer,haptic,compressed_offload,voip_rx,immersive_out"/>
+ sources="primary output,deep buffer,haptic,compressed_offload,voip_rx"/>
<route type="mix" sink="BT A2DP Headphones"
- sources="primary output,deep buffer,haptic,compressed_offload,voip_rx,immersive_out"/>
+ sources="primary output,deep buffer,haptic,compressed_offload,voip_rx"/>
<route type="mix" sink="BT A2DP Speaker"
- sources="primary output,deep buffer,haptic,compressed_offload,voip_rx,immersive_out"/>
+ sources="primary output,deep buffer,haptic,compressed_offload,voip_rx"/>
+ <route type="mix" sink="BT BLE Headset"
+ sources="primary output,deep buffer,haptic,compressed_offload,voip_rx"/>
+ <route type="mix" sink="BT BLE Speaker"
+ sources="primary output,deep buffer,haptic,compressed_offload,voip_rx"/>
<route type="mix" sink="USB Device Out"
- sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback,immersive_out"/>
+ sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback"/>
<route type="mix" sink="USB Headset Out"
- sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback,immersive_out"/>
+ sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback"/>
<route type="mix" sink="BT SCO"
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx"/>
<route type="mix" sink="BT SCO Headset"
diff --git a/audio/raven/config/audio_policy_configuration_a2dp_offload_disabled.xml b/audio/raven/config/audio_policy_configuration_a2dp_offload_disabled.xml
index 86c3104..be5287b 100644
--- a/audio/raven/config/audio_policy_configuration_a2dp_offload_disabled.xml
+++ b/audio/raven/config/audio_policy_configuration_a2dp_offload_disabled.xml
@@ -28,7 +28,7 @@
<defaultOutputDevice>Speaker</defaultOutputDevice>
<mixPorts>
<mixPort name="primary output" role="source" flags="AUDIO_OUTPUT_FLAG_PRIMARY AUDIO_OUTPUT_FLAG_FAST">
- <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ <profile name="" format="AUDIO_FORMAT_PCM_FLOAT"
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="deep buffer" role="source" flags="AUDIO_OUTPUT_FLAG_DEEP_BUFFER">
@@ -60,10 +60,6 @@
samplingRates="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="immersive_out" role="source" flags="AUDIO_OUTPUT_FLAG_FAST AUDIO_OUTPUT_FLAG_DEEP_BUFFER">
<profile name="" format="AUDIO_FORMAT_PCM_FLOAT"
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
@@ -174,15 +170,15 @@
<!-- route declaration, i.e. list all available sources for a given sink -->
<routes>
<route type="mix" sink="Speaker"
- sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx,immersive_out"/>
+ sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Speaker Safe"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Earpiece"
sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="USB Device Out"
- sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback,immersive_out"/>
+ sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback"/>
<route type="mix" sink="USB Headset Out"
- sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback,immersive_out"/>
+ sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback"/>
<route type="mix" sink="BT SCO"
sources="primary output,deep buffer,haptic,compressed_offload,voip_rx"/>
<route type="mix" sink="BT SCO Headset"
diff --git a/audio/raven/config/audio_policy_configuration_bluetooth_legacy_hal.xml b/audio/raven/config/audio_policy_configuration_bluetooth_legacy_hal.xml
index 0623ec4..0972b9f 100644
--- a/audio/raven/config/audio_policy_configuration_bluetooth_legacy_hal.xml
+++ b/audio/raven/config/audio_policy_configuration_bluetooth_legacy_hal.xml
@@ -28,7 +28,7 @@
<defaultOutputDevice>Speaker</defaultOutputDevice>
<mixPorts>
<mixPort name="primary output" role="source" flags="AUDIO_OUTPUT_FLAG_PRIMARY AUDIO_OUTPUT_FLAG_FAST">
- <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ <profile name="" format="AUDIO_FORMAT_PCM_FLOAT"
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="deep buffer" role="source" flags="AUDIO_OUTPUT_FLAG_DEEP_BUFFER">
@@ -60,7 +60,7 @@
samplingRates="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"
+ <profile name="" format="AUDIO_FORMAT_PCM_FLOAT"
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="incall playback" role="source"
diff --git a/audio/raven/config/audio_policy_configuration_le_offload_disabled.xml b/audio/raven/config/audio_policy_configuration_le_offload_disabled.xml
new file mode 100644
index 0000000..030c767
--- /dev/null
+++ b/audio/raven/config/audio_policy_configuration_le_offload_disabled.xml
@@ -0,0 +1,255 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<!-- Copyright (C) 2020 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">
+ <globalConfiguration speaker_drc_enabled="false" call_screen_mode_supported="true" />
+ <modules>
+ <!-- Primary Audio HAL -->
+ <module name="primary" halVersion="2.0">
+ <attachedDevices>
+ <item>Speaker</item>
+ <item>Speaker Safe</item>
+ <item>Earpiece</item>
+ <item>Built-In Mic</item>
+ <item>Built-In Back Mic</item>
+ <item>Telephony Tx</item>
+ <item>Voice Call And Telephony Rx</item>
+ <item>Echo Ref In</item>
+ </attachedDevices>
+ <defaultOutputDevice>Speaker</defaultOutputDevice>
+ <mixPorts>
+ <mixPort name="primary output" role="source" flags="AUDIO_OUTPUT_FLAG_PRIMARY AUDIO_OUTPUT_FLAG_FAST">
+ <profile name="" format="AUDIO_FORMAT_PCM_FLOAT"
+ samplingRates="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_FLOAT"
+ samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
+ </mixPort>
+ <mixPort name="compressed_offload" role="source"
+ flags="AUDIO_OUTPUT_FLAG_DIRECT AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD AUDIO_OUTPUT_FLAG_NON_BLOCKING">
+ <profile name="" format="AUDIO_FORMAT_MP3"
+ samplingRates="8000 16000 24000 32000 44100 48000"
+ channelMasks="AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_MONO"/>
+ <profile name="" format="AUDIO_FORMAT_AAC_LC"
+ samplingRates="8000 16000 24000 32000 44100 48000"
+ channelMasks="AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_MONO"/>
+ <profile name="" format="AUDIO_FORMAT_AAC_HE_V1"
+ samplingRates="8000 16000 24000 32000 44100 48000"
+ channelMasks="AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_MONO"/>
+ <profile name="" format="AUDIO_FORMAT_AAC_HE_V2"
+ samplingRates="8000 16000 24000 32000 44100 48000"
+ channelMasks="AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_MONO"/>
+ </mixPort>
+ <mixPort name="haptic" role="source">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="48000"
+ channelMasks="AUDIO_CHANNEL_OUT_STEREO_HAPTIC_A" />
+ </mixPort>
+ <mixPort name="raw" role="source" flags="AUDIO_OUTPUT_FLAG_RAW AUDIO_OUTPUT_FLAG_FAST">
+ <profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
+ samplingRates="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_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"
+ samplingRates="48000"
+ channelMasks="AUDIO_CHANNEL_OUT_STEREO" />
+ </mixPort>
+ <mixPort name="voice call tx" role="source">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="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_16_BIT"
+ samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
+ </mixPort>
+ <mixPort name="primary input" role="sink">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="48000"
+ channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO AUDIO_CHANNEL_INDEX_MASK_3"/>
+ </mixPort>
+ <mixPort name="hotword input" role="sink" flags="AUDIO_INPUT_FLAG_HW_HOTWORD" maxActiveCount="0" >
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="8000 11025 12000 16000 22050 24000 32000 44100 48000"
+ channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO"/>
+ </mixPort>
+ <mixPort name="incall capture" role="sink">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="48000"
+ channelMasks="AUDIO_CHANNEL_IN_MONO"/>
+ </mixPort>
+ <mixPort name="voice call rx" role="sink">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="48000"
+ channelMasks="AUDIO_CHANNEL_IN_MONO"/>
+ </mixPort>
+ <mixPort name="voip_tx" role="sink"
+ flags="AUDIO_INPUT_FLAG_VOIP_TX">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="48000" channelMasks="AUDIO_CHANNEL_IN_MONO"/>
+ </mixPort>
+ <mixPort name="fast input" role="sink" flags="AUDIO_INPUT_FLAG_RAW AUDIO_INPUT_FLAG_FAST">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="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_32_BIT"
+ samplingRates="48000"
+ channelMasks="AUDIO_CHANNEL_IN_MONO AUDIO_CHANNEL_IN_STEREO"/>
+ </mixPort>
+ <mixPort name="hifi_playback" role="source" />
+ <mixPort name="hifi_input" role="sink" />
+ <mixPort name="echo_ref_input" role="sink">
+ <profile name="" format="AUDIO_FORMAT_PCM_32_BIT"
+ samplingRates="48000"
+ channelMasks="AUDIO_CHANNEL_IN_STEREO"/>
+ </mixPort>
+ </mixPorts>
+ <devicePorts>
+ <!-- Output devices declaration, i.e. Sink DEVICE PORT -->
+ <devicePort tagName="Earpiece" type="AUDIO_DEVICE_OUT_EARPIECE" role="sink">
+ </devicePort>
+ <devicePort tagName="Speaker" type="AUDIO_DEVICE_OUT_SPEAKER" role="sink">
+ </devicePort>
+ <devicePort tagName="Speaker Safe" type="AUDIO_DEVICE_OUT_SPEAKER_SAFE" role="sink">
+ </devicePort>
+ <devicePort tagName="Wired Headset" type="AUDIO_DEVICE_OUT_WIRED_HEADSET" role="sink">
+ </devicePort>
+ <devicePort tagName="Wired Headphones" type="AUDIO_DEVICE_OUT_WIRED_HEADPHONE" role="sink">
+ </devicePort>
+ <devicePort tagName="BT SCO" type="AUDIO_DEVICE_OUT_BLUETOOTH_SCO" role="sink">
+ </devicePort>
+ <devicePort tagName="BT SCO Headset" type="AUDIO_DEVICE_OUT_BLUETOOTH_SCO_HEADSET" role="sink">
+ </devicePort>
+ <devicePort tagName="BT SCO Car Kit" type="AUDIO_DEVICE_OUT_BLUETOOTH_SCO_CARKIT" role="sink">
+ </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="Aux Digital" type="AUDIO_DEVICE_OUT_AUX_DIGITAL" role="sink">
+ </devicePort>
+ <devicePort tagName="Telephony Tx" type="AUDIO_DEVICE_OUT_TELEPHONY_TX" role="sink">
+ </devicePort>
+ <!-- Input devices declaration, i.e. Source DEVICE PORT -->
+ <devicePort tagName="Built-In Mic" type="AUDIO_DEVICE_IN_BUILTIN_MIC" role="source">
+ </devicePort>
+ <devicePort tagName="Built-In Back Mic" type="AUDIO_DEVICE_IN_BACK_MIC" role="source">
+ </devicePort>
+ <devicePort tagName="Wired Headset Mic" type="AUDIO_DEVICE_IN_WIRED_HEADSET" role="source">
+ </devicePort>
+ <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">
+ <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">
+ <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">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_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>
+ <!-- AUDIO_DEVICE_IN_VOICE_CALL and AUDIO_DEVICE_IN_TELEPHONY_RX are in the same value -->
+ <devicePort tagName="Voice Call And Telephony Rx" type="AUDIO_DEVICE_IN_VOICE_CALL" role="source">
+ </devicePort>
+ <devicePort tagName="Echo Ref In" type="AUDIO_DEVICE_IN_ECHO_REFERENCE" role="source">
+ </devicePort>
+ </devicePorts>
+ <!-- route declaration, i.e. list all available sources for a given sink -->
+ <routes>
+ <route type="mix" sink="Speaker"
+ sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
+ <route type="mix" sink="Speaker Safe"
+ sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
+ <route type="mix" sink="Earpiece"
+ sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx"/>
+ <route type="mix" sink="BT A2DP Out"
+ sources="primary output,deep buffer,haptic,compressed_offload,voip_rx"/>
+ <route type="mix" sink="BT A2DP Headphones"
+ sources="primary output,deep buffer,haptic,compressed_offload,voip_rx"/>
+ <route type="mix" sink="BT A2DP Speaker"
+ sources="primary output,deep buffer,haptic,compressed_offload,voip_rx"/>
+ <route type="mix" sink="USB Device Out"
+ sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback"/>
+ <route type="mix" sink="USB Headset Out"
+ sources="primary output,deep buffer,haptic,raw,compressed_offload,mmap_no_irq_out,voip_rx,hifi_playback"/>
+ <route type="mix" sink="BT SCO"
+ sources="primary output,deep buffer,haptic,compressed_offload,voip_rx"/>
+ <route type="mix" sink="BT SCO Headset"
+ sources="primary output,deep buffer,haptic,compressed_offload,voip_rx"/>
+ <route type="mix" sink="BT SCO Car Kit"
+ sources="primary output,deep buffer,haptic,compressed_offload,voip_rx"/>
+ <route type="mix" sink="Telephony Tx" sources="incall playback,voice call tx" />
+ <route type="mix" sink="primary input"
+ sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
+ <route type="mix" sink="hotword input"
+ sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
+ <route type="mix" sink="incall capture" sources="Voice Call And Telephony Rx" />
+ <route type="mix" sink="voice call rx" sources="Voice Call And Telephony Rx" />
+ <route type="mix" sink="voip_tx"
+ sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In,BT SCO Headset Mic"/>
+ <route type="mix" sink="fast input"
+ sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In"/>
+ <route type="mix" sink="mmap_no_irq_in"
+ sources="Built-In Mic,Built-In Back Mic,USB Device In,USB Headset In"/>
+ <route type="mix" sink="hifi_input" sources="USB Device In,USB Headset In" />
+ <route type="mix" sink="echo_ref_input" sources="Echo Ref In"/>
+ </routes>
+ </module>
+ <!-- Bluetooth Audio HAL -->
+ <xi:include href="bluetooth_audio_policy_configuration_7_0.xml"/>
+ <!-- Usb Audio HAL -->
+ <module name="usbv2" halVersion="2.0">
+ <mixPorts>
+ <mixPort name="usb_accessory output" role="source">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="44100" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
+ </mixPort>
+ </mixPorts>
+ <devicePorts>
+ <devicePort tagName="USB Host Out" type="AUDIO_DEVICE_OUT_USB_ACCESSORY" role="sink">
+ <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+ samplingRates="44100" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
+ </devicePort>
+ </devicePorts>
+ <routes>
+ <route type="mix" sink="USB Host Out"
+ sources="usb_accessory output"/>
+ </routes>
+ </module>
+ <!-- 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>
diff --git a/audio/raven/config/bluetooth_audio_policy_configuration_7_0.xml b/audio/raven/config/bluetooth_audio_policy_configuration_7_0.xml
deleted file mode 100644
index 3a07ded..0000000
--- a/audio/raven/config/bluetooth_audio_policy_configuration_7_0.xml
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- Bluetooth Audio HAL Audio Policy Configuration file -->
-<module name="bluetooth" halVersion="2.0">
- <mixPorts>
- <!-- A2DP Audio Ports -->
- <mixPort name="a2dp output" role="source" flags="AUDIO_OUTPUT_FLAG_DEEP_BUFFER AUDIO_OUTPUT_FLAG_FAST"/>
- <!-- Hearing AIDs Audio Ports -->
- <mixPort name="hearing aid output" role="source">
- <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
- samplingRates="24000 16000"
- channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
- </mixPort>
- </mixPorts>
- <devicePorts>
- <!-- A2DP Audio Ports -->
- <devicePort tagName="BT A2DP Out" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP" role="sink">
- <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
- samplingRates="44100 48000 88200 96000"
- channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
- </devicePort>
- <devicePort tagName="BT A2DP Headphones" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES" role="sink">
- <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
- samplingRates="44100 48000 88200 96000"
- channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
- </devicePort>
- <devicePort tagName="BT A2DP Speaker" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER" role="sink">
- <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
- samplingRates="44100 48000 88200 96000"
- channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
- </devicePort>
- <!-- Hearing AIDs Audio Ports -->
- <devicePort tagName="BT Hearing Aid Out" type="AUDIO_DEVICE_OUT_HEARING_AID" role="sink"/>
- </devicePorts>
- <routes>
- <route type="mix" sink="BT A2DP Out"
- sources="a2dp output"/>
- <route type="mix" sink="BT A2DP Headphones"
- sources="a2dp output"/>
- <route type="mix" sink="BT A2DP Speaker"
- sources="a2dp output"/>
- <route type="mix" sink="BT Hearing Aid Out"
- sources="hearing aid output"/>
- </routes>
-</module>
diff --git a/audio/raven/config/mixer_paths.xml b/audio/raven/config/mixer_paths.xml
index e2f724e..55d5252 100644
--- a/audio/raven/config/mixer_paths.xml
+++ b/audio/raven/config/mixer_paths.xml
@@ -429,18 +429,6 @@
<path name="compress-offload-playback" />
</path>
- <path name="immersive-playbackP">
- <ctl name="TDM_0_RX Mixer EP4" value="1"/>
- </path>
-
- <path name="immersive-playbackP bt">
- <ctl name="BT_RX Mixer EP4" value="1"/>
- </path>
-
- <path name="immersive-playbackP usb-headphone">
- <ctl name="USB_RX Mixer EP4" value="1"/>
- </path>
-
<path name="voip-playbackP">
<ctl name="TDM_0_RX Mixer VOIP" value="1"/>
</path>
diff --git a/audio/raven/tuning/fortemedia/mcps.dat b/audio/raven/tuning/fortemedia/mcps.dat
new file mode 100644
index 0000000..04fc100
--- /dev/null
+++ b/audio/raven/tuning/fortemedia/mcps.dat
Binary files differ
diff --git a/audio/slider/audio-tables.mk b/audio/slider/audio-tables.mk
index 21200ce..c46f856 100644
--- a/audio/slider/audio-tables.mk
+++ b/audio/slider/audio-tables.mk
@@ -45,6 +45,7 @@
device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HANDSFREE.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HANDSFREE.dat \
device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HANDSET.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HANDSET.dat \
device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HEADSET.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HEADSET.dat \
+ device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/mcps.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/mcps.dat \
device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/waves_config.ini:$(TARGET_COPY_OUT_VENDOR)/etc/waves_config.ini \
device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/waves_preset.mps:$(TARGET_COPY_OUT_VENDOR)/etc/waves_preset.mps
diff --git a/audio/slider/tuning/fortemedia/mcps.dat b/audio/slider/tuning/fortemedia/mcps.dat
new file mode 100644
index 0000000..04fc100
--- /dev/null
+++ b/audio/slider/tuning/fortemedia/mcps.dat
Binary files differ
diff --git a/audio/whitefin/audio-tables.mk b/audio/whitefin/audio-tables.mk
index f87c54b..37cd1b0 100644
--- a/audio/whitefin/audio-tables.mk
+++ b/audio/whitefin/audio-tables.mk
@@ -45,6 +45,7 @@
device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HANDSFREE.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HANDSFREE.dat \
device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HANDSET.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HANDSET.dat \
device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HEADSET.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HEADSET.dat \
+ device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/mcps.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/mcps.dat \
device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/waves_config.ini:$(TARGET_COPY_OUT_VENDOR)/etc/waves_config.ini \
device/google/raviole/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/waves_preset.mps:$(TARGET_COPY_OUT_VENDOR)/etc/waves_preset.mps
diff --git a/audio/whitefin/tuning/fortemedia/mcps.dat b/audio/whitefin/tuning/fortemedia/mcps.dat
new file mode 100644
index 0000000..04fc100
--- /dev/null
+++ b/audio/whitefin/tuning/fortemedia/mcps.dat
Binary files differ
diff --git a/conf/init.oriole.rc b/conf/init.oriole.rc
index 1724b5f..10206b3 100644
--- a/conf/init.oriole.rc
+++ b/conf/init.oriole.rc
@@ -15,9 +15,16 @@
on property:persist.vendor.touch_sensitivity_mode=1 && property:sys.boot_completed=1
write /sys/class/spi_master/spi11/spi11.0/glove_mode 01
+# Thermal
on late-init && property:ro.boot.hardware.revision=PROTO1.0
setprop vendor.thermal.config "thermal_info_config_WHI_A.json"
+on late-init && property:ro.boot.hardware.revision=PROTO1.1
+ setprop vendor.disable.usb.overheat.mitigation.control 1
+
+on late-init && property:ro.boot.hardware.revision=EVT1.0
+ setprop vendor.disable.usb.overheat.mitigation.control 1
+
# For Japan sku, always enforce camera shutter sound
# Since this property is read by the audio server in system service,
# it should be written by the system init.
diff --git a/conf/init.raven.rc b/conf/init.raven.rc
index 4d5d2a9..5153c58 100644
--- a/conf/init.raven.rc
+++ b/conf/init.raven.rc
@@ -11,6 +11,10 @@
# Power Stats HAL
chown system system /sys/devices/platform/10d30000.spi/spi_master/spi10/spi10.0/uwb/power_stats
+on fs
+ # Face
+ exec_background - system shell -- /vendor/bin/trusty_apploader /vendor/firmware/faceauth.app
+
on property:vendor.mfgapi.touchpanel.permission=1
chmod 0600 /sys/devices/virtual/sec/tsp/cmd
chown system system /sys/devices/virtual/sec/tsp/cmd
@@ -30,6 +34,16 @@
on property:graphics.display.kernel_idle_timer.enabled=false
write /sys/devices/platform/exynos-drm/primary-panel/panel_idle "0"
+# Thermal
+on late-init && property:ro.boot.hardware.revision=PROTO1.0
+ setprop vendor.disable.usb.overheat.mitigation.control 1
+
+on late-init && property:ro.boot.hardware.revision=PROTO1.1
+ setprop vendor.disable.usb.overheat.mitigation.control 1
+
+on late-init && property:ro.boot.hardware.revision=EVT1.0
+ setprop vendor.disable.usb.overheat.mitigation.control 1
+
# Bluetooth
on post-fs-data
chown bluetooth system /proc/bluetooth/timesync
diff --git a/conf/init.raviole.rc b/conf/init.raviole.rc
index ed55764..22f0917 100644
--- a/conf/init.raviole.rc
+++ b/conf/init.raviole.rc
@@ -52,3 +52,13 @@
on property:ro.revision=PROTO1.0
setprop persist.fingerprint.ghbm true
+
+# SecureElement eSE2 cts mode
+on property:persist.vendor.se.ese2.mode=ctsmode
+ write /sys/class/st33spi/st33spi/st33spi_state 33
+
+# charger driver exposes now finer grain control, map demo mode to those properties
+# NOTE: demo mode can only be exit wiping data (which reset the persist properties)
+on property:sys.retaildemo.enabled=1
+ setprop persist.vendor.charge.stop.level 35
+ setprop persist.vendor.charge.start.level 30
diff --git a/conf/init.slider.rc b/conf/init.slider.rc
index f8506a5..3042b5b 100644
--- a/conf/init.slider.rc
+++ b/conf/init.slider.rc
@@ -26,3 +26,9 @@
group root system
disabled
oneshot
+
+# charger driver exposes now finer grain control, map demo mode to those properties
+# NOTE: demo mode can only be exit wiping data (which reset the persist properties)
+on property:sys.retaildemo.enabled=1
+ setprop persist.vendor.charge.stop.level 35
+ setprop persist.vendor.charge.start.level 30
diff --git a/conf/init.whitefin.rc b/conf/init.whitefin.rc
index f74abbb..c030ad7 100644
--- a/conf/init.whitefin.rc
+++ b/conf/init.whitefin.rc
@@ -24,3 +24,9 @@
on fs
# Fingerprint
chown system system /dev/goodix_fp
+
+# charger driver exposes now finer grain control, map demo mode to those properties
+# NOTE: demo mode can only be exit wiping data (which reset the persist properties)
+on property:sys.retaildemo.enabled=1
+ setprop persist.vendor.charge.stop.level 35
+ setprop persist.vendor.charge.start.level 30
diff --git a/device-oriole.mk b/device-oriole.mk
index 1b38a6a..b1d99a3 100644
--- a/device-oriole.mk
+++ b/device-oriole.mk
@@ -31,7 +31,9 @@
include device/google/raviole/audio/oriole/audio-tables.mk
include device/google/gs101/device-shipping-common.mk
include device/google/gs101/fingerprint/udfps_common.mk
+include device/google/gs101/telephony/pktrouter.mk
include hardware/google/pixel/vibrator/cs40l25/device.mk
+include device/google/gs101/bluetooth/bluetooth.mk
ifeq ($(filter factory_oriole, $(TARGET_PRODUCT)),)
include device/google/gs101/fingerprint/udfps_shipping.mk
@@ -62,7 +64,7 @@
# Power HAL config
PRODUCT_COPY_FILES += \
- device/google/raviole/powerhint-oriole.json:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.json
+ device/google/raviole/powerhint-oriole.json:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.json
# Bluetooth
PRODUCT_PRODUCT_PROPERTIES += \
@@ -118,12 +120,14 @@
# SecureElement
PRODUCT_PACKAGES += \
- android.hardware.secure_element@1.2-service-gto
+ android.hardware.secure_element@1.2-service-gto \
+ android.hardware.secure_element@1.2-service-gto-ese2
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.se.omapi.ese.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.ese.xml \
frameworks/native/data/etc/android.hardware.se.omapi.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.uicc.xml \
- device/google/raviole/nfc/libse-gto-hal.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libse-gto-hal.conf
+ device/google/raviole/nfc/libse-gto-hal.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libse-gto-hal.conf \
+ device/google/raviole/nfc/libse-gto-hal2.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libse-gto-hal2.conf
DEVICE_MANIFEST_FILE += \
device/google/raviole/nfc/manifest_nfc.xml \
@@ -177,6 +181,10 @@
PRODUCT_VENDOR_PROPERTIES += \
ro.vendor.build.svn=24
+# Set support hide display cutout feature
+PRODUCT_PRODUCT_PROPERTIES += \
+ ro.support_hide_display_cutout=true
+
# Hide cutout overlays
PRODUCT_PACKAGES += \
NoCutoutOverlay \
@@ -207,6 +215,10 @@
PRODUCT_VENDOR_PROPERTIES += \
persist.vendor.camera.exif_reveal_make_model=true
+# Bluetooth HAL
+PRODUCT_PACKAGES += \
+ bt_vendor.conf
+
# Override default distortion output gain according to UX experiments
PRODUCT_PRODUCT_PROPERTIES += \
vendor.audio.hapticgenerator.distortion.output.gain=0.5
@@ -218,15 +230,11 @@
# This device is shipped with 31 (Android S)
PRODUCT_SHIPPING_API_LEVEL := 31
-##############################################
-# DOLBY integration
-include vendor/dolby/ds/dolby-buildspec.mk
-$(call inherit-product, vendor/dolby/ds/dolby-product.mk)
-
-# add list of codecs, but overwrite device/google/gs101/media_codecs_bo_c2.xml
-# with same file but with Dolby codecs listed
-PRODUCT_COPY_FILES := \
- device/google/raviole/media_codecs_bo_dolby_c2.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_c2.xml \
- $(PRODUCT_COPY_FILES)
-
-PRODUCT_RESTRICT_VENDOR_FILES := false
+# userdebug specific
+ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
+# Bluetooth LE Audio Hardware offload
+PRODUCT_PRODUCT_PROPERTIES += \
+ ro.bluetooth.leaudio_offload.supported=true \
+ persist.bluetooth.leaudio_offload.disabled=true \
+ persist.bluetooth.le_audio_test=true
+endif
diff --git a/device-raven.mk b/device-raven.mk
index aab8381..eaaa29b 100644
--- a/device-raven.mk
+++ b/device-raven.mk
@@ -31,6 +31,8 @@
include device/google/raviole/audio/raven/audio-tables.mk
include device/google/gs101/device-shipping-common.mk
include device/google/gs101/fingerprint/udfps_common.mk
+include device/google/gs101/telephony/pktrouter.mk
+include device/google/gs101/bluetooth/bluetooth.mk
ifeq ($(filter factory_raven, $(TARGET_PRODUCT)),)
include device/google/gs101/fingerprint/udfps_shipping.mk
@@ -70,7 +72,7 @@
# Power HAL config
PRODUCT_COPY_FILES += \
- device/google/raviole/powerhint-raven.json:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.json
+ device/google/raviole/powerhint-raven.json:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.json
# Bluetooth
PRODUCT_PRODUCT_PROPERTIES += \
@@ -133,17 +135,20 @@
# SecureElement
PRODUCT_PACKAGES += \
- android.hardware.secure_element@1.2-service-gto
+ android.hardware.secure_element@1.2-service-gto \
+ android.hardware.secure_element@1.2-service-gto-ese2
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.se.omapi.ese.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.ese.xml \
frameworks/native/data/etc/android.hardware.se.omapi.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.uicc.xml \
- device/google/raviole/nfc/libse-gto-hal.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libse-gto-hal.conf
+ device/google/raviole/nfc/libse-gto-hal.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libse-gto-hal.conf \
+ device/google/raviole/nfc/libse-gto-hal2.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libse-gto-hal2.conf
DEVICE_MANIFEST_FILE += \
device/google/raviole/nfc/manifest_nfc.xml \
device/google/raviole/nfc/manifest_se.xml
+
# Vibrator HAL
PRODUCT_PRODUCT_PROPERTIES +=\
ro.vendor.vibrator.hal.long.frequency.shift=15
@@ -189,6 +194,10 @@
PRODUCT_VENDOR_PROPERTIES += \
ro.vendor.build.svn=24
+# Set support hide display cutout feature
+PRODUCT_PRODUCT_PROPERTIES += \
+ ro.support_hide_display_cutout=true
+
# Hide cutout overlays
PRODUCT_PACKAGES += \
NoCutoutOverlay \
@@ -223,6 +232,10 @@
PRODUCT_VENDOR_PROPERTIES += \
persist.vendor.camera.exif_reveal_make_model=true
+# Bluetooth HAL
+PRODUCT_PACKAGES += \
+ bt_vendor.conf
+
# Override default distortion output gain according to UX experiments
PRODUCT_PRODUCT_PROPERTIES += \
vendor.audio.hapticgenerator.distortion.output.gain=0.5
@@ -234,15 +247,11 @@
# This device is shipped with 31 (Android S)
PRODUCT_SHIPPING_API_LEVEL := 31
-#############################################
-# DOLBY integration
-include vendor/dolby/ds/dolby-buildspec.mk
-$(call inherit-product, vendor/dolby/ds/dolby-product.mk)
-
-# add list of codecs, but overwrite device/google/gs101/media_codecs_bo_c2.xml
-# with same file but with Dolby codecs listed
-PRODUCT_COPY_FILES := \
- device/google/raviole/media_codecs_bo_dolby_c2.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_c2.xml \
- $(PRODUCT_COPY_FILES)
-
-PRODUCT_RESTRICT_VENDOR_FILES := false
+# userdebug specific
+ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
+# Bluetooth LE Audio Hardware offload
+PRODUCT_PRODUCT_PROPERTIES += \
+ ro.bluetooth.leaudio_offload.supported=true \
+ persist.bluetooth.leaudio_offload.disabled=true \
+ persist.bluetooth.le_audio_test=true
+endif
diff --git a/device-slider.mk b/device-slider.mk
index 08396e1..26f8798 100644
--- a/device-slider.mk
+++ b/device-slider.mk
@@ -27,6 +27,7 @@
include device/google/gs101/device-common.mk
include device/google/raviole/audio/slider/audio-tables.mk
include hardware/google/pixel/vibrator/cs40l25/device.mk
+include device/google/gs101/bluetooth/bluetooth.mk
$(call soong_config_set,lyric,tuning_product,slider)
$(call soong_config_set,google3a_config,target_device,slider)
@@ -105,6 +106,10 @@
# Trusty liboemcrypto.so
PRODUCT_SOONG_NAMESPACES += vendor/google_devices/raviole/prebuilts
+# Bluetooth HAL
+PRODUCT_PACKAGES += \
+ bt_vendor.conf
+
# Power HAL config
PRODUCT_COPY_FILES += \
device/google/raviole/powerhint-slider.json:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.json
diff --git a/device-whitefin.mk b/device-whitefin.mk
index 5f80809..69f129d 100644
--- a/device-whitefin.mk
+++ b/device-whitefin.mk
@@ -27,6 +27,7 @@
include device/google/gs101/device-common.mk
include hardware/google/pixel/vibrator/drv2624/device.mk
include device/google/raviole/audio/whitefin/audio-tables.mk
+include device/google/gs101/bluetooth/bluetooth.mk
$(call soong_config_set,lyric,tuning_product,slider)
$(call soong_config_set,google3a_config,target_device,slider)
@@ -86,6 +87,10 @@
# Trusty liboemcrypto.so
PRODUCT_SOONG_NAMESPACES += vendor/google_devices/raviole/prebuilts
+# Bluetooth HAL
+PRODUCT_PACKAGES += \
+ bt_vendor.conf
+
# Power HAL config
PRODUCT_COPY_FILES += \
device/google/raviole/powerhint-whitefin.json:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.json
diff --git a/media_codecs_bo_dolby_c2.xml b/media_codecs_bo_dolby_c2.xml
deleted file mode 100644
index 3197674..0000000
--- a/media_codecs_bo_dolby_c2.xml
+++ /dev/null
@@ -1,66 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<!-- Copyright 2018 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>
- <Include href="media_codecs_aosp_c2.xml" />
- <Decoders>
- <MediaCodec name="c2.google.av1.decoder" type="video/av01">
- <Limit name="size" min="96x96" max="3840x2160" />
- <Limit name="alignment" value="2x2" />
- <Limit name="block-size" value="16x16" />
- <Limit name="block-count" range="36-32400" />
- <Limit name="blocks-per-second" min="24" max="1944000" />
- <Limit name="bitrate" range="1-120000000" />
- <Limit name="frame-rate" range="1-180" />
- <Limit name="concurrent-instances" max="16" />
- <Limit name="performance-point-1280x720" value="180" />
- <Limit name="performance-point-1920x1080" value="120" />
- <Limit name="performance-point-3840x2160" value="60" />
- <Feature name="adaptive-playback" />
- <Feature name="can-swap-width-height" value="1" />
- </MediaCodec>
- <MediaCodec name="c2.google.av1.decoder.secure" type="video/av01">
- <Limit name="size" min="96x96" max="3840x2160" />
- <Limit name="alignment" value="2x2" />
- <Limit name="block-size" value="16x16" />
- <Limit name="block-count" range="36-32400" />
- <Limit name="blocks-per-second" min="24" max="1944000" />
- <Limit name="bitrate" range="1-120000000" />
- <Limit name="frame-rate" range="1-180" />
- <Limit name="concurrent-instances" max="16" />
- <Limit name="performance-point-1280x720" value="180" />
- <Limit name="performance-point-1920x1080" value="120" />
- <Limit name="performance-point-3840x2160" value="60" />
- <Feature name="adaptive-playback" />
- <Feature name="secure-playback" required="true" />
- <Feature name="can-swap-width-height" value="1" />
- </MediaCodec>
- <MediaCodec name="c2.dolby.eac3.decoder">
- <Type name="audio/ac3">
- <Alias name="OMX.dolby.ac3.decoder"/>
- <Limit name="channel-count" max="6"/>
- <Limit name="sample-rate" ranges="32000,44100,48000"/>
- <Limit name="bitrate" range="32000-640000"/>
- </Type>
- <Attribute name="software-codec"/>
- <Type name="audio/eac3">
- <Alias name="OMX.dolby.eac3.decoder"/>
- <Limit name="channel-count" max="8"/>
- <Limit name="sample-rate" ranges="32000,44100,48000"/>
- <Limit name="bitrate" range="32000-6144000"/>
- </Type>
- </MediaCodec>
- </Decoders>
-</MediaCodecs>
diff --git a/nfc/manifest_se.xml b/nfc/manifest_se.xml
index 9e5cee9..60dc4c2 100644
--- a/nfc/manifest_se.xml
+++ b/nfc/manifest_se.xml
@@ -3,5 +3,6 @@
<name>android.hardware.secure_element</name>
<transport>hwbinder</transport>
<fqname>@1.2::ISecureElement/eSE1</fqname>
+ <fqname>@1.2::ISecureElement/eSE2</fqname>
</hal>
</manifest>
diff --git a/oriole/BoardConfig.mk b/oriole/BoardConfig.mk
index e1ef669..1292d4a 100644
--- a/oriole/BoardConfig.mk
+++ b/oriole/BoardConfig.mk
@@ -13,8 +13,8 @@
# See the License for the specific language governing permissions and
# limitations under the License.
#
-ifdef PHONE_CAR_BOARD_CONFIG
- include $(PHONE_CAR_BOARD_CONFIG)
+ifdef PHONE_CAR_BOARD_PRODUCT
+ include device/google_car/$(PHONE_CAR_BOARD_PRODUCT)/BoardConfig.mk
else
TARGET_BOARD_INFO_FILE := device/google/raviole/board-info.txt
TARGET_BOOTLOADER_BOARD_NAME := oriole
@@ -22,6 +22,7 @@
USES_DEVICE_GOOGLE_RAVIOLE := true
include device/google/gs101/BoardConfig-common.mk
+ include device/google/gs101/wifi/BoardConfig-wifi.mk
-include vendor/google_devices/gs101/prebuilts/BoardConfigVendor.mk
-include vendor/google_devices/oriole/proprietary/BoardConfigVendor.mk
endif
diff --git a/oriole/overlay/frameworks/base/core/res/res/values/config.xml b/oriole/overlay/frameworks/base/core/res/res/values/config.xml
index 6eec9d0..ed02d61 100644
--- a/oriole/overlay/frameworks/base/core/res/res/values/config.xml
+++ b/oriole/overlay/frameworks/base/core/res/res/values/config.xml
@@ -227,6 +227,88 @@
non-zero amplitudes, to bring the vibrator amplitude down to zero using this timing. -->
<integer name="config_vibrationWaveformRampDownDuration">50</integer>
+ <!-- A vibration waveform for notifications that specify DEFAULT_VIBRATE.
+ This value is a float array with values grouped as
+ { targetAmplitude (within [0,1]), targetFrequency (in hertz), duration (in milliseconds) }
+ This is only applied on devices with vibration frequency control. If the device doesn't
+ support frequency control, then the vibration specified in
+ config_defaultNotificationVibePattern is used instead.
+ -->
+ <array name="config_defaultNotificationVibeWaveform">
+ <item>0.0</item>
+ <item>160.0</item>
+ <item>0.0</item>
+
+ <item>0.24</item>
+ <item>200.0</item>
+ <item>100.0</item>
+
+ <item>0.24</item>
+ <item>200.0</item>
+ <item>100.0</item>
+
+ <item>0.0</item>
+ <item>160.0</item>
+ <item>100.0</item>
+
+ <item>0.0</item>
+ <item>160.0</item>
+ <item>100.0</item>
+
+ <item>0.24</item>
+ <item>200.0</item>
+ <item>100.0</item>
+
+ <item>0.24</item>
+ <item>200.0</item>
+ <item>100.0</item>
+
+ <item>0.0</item>
+ <item>160.0</item>
+ <item>100.0</item>
+ </array>
+
+ <!-- A vibration waveform for notifications that do not specify vibration but vibrate anyway,
+ because the device is in vibrate mode. This value is a float array with values grouped as
+ { targetAmplitude (within [0,1]), targetFrequency (in hertz), duration (in milliseconds) }
+ This is only applied on devices with vibration frequency control. If the device doesn't
+ support frequency control, then the vibration specified in
+ config_notificationFallbackVibePattern is used instead.
+ -->
+ <array name="config_notificationFallbackVibeWaveform">
+ <item>0.0</item>
+ <item>160.0</item>
+ <item>0.0</item>
+
+ <item>0.24</item>
+ <item>200.0</item>
+ <item>50.0</item>
+
+ <item>0.24</item>
+ <item>200.0</item>
+ <item>100.0</item>
+
+ <item>0.0</item>
+ <item>160.0</item>
+ <item>50.0</item>
+
+ <item>0.0</item>
+ <item>160.0</item>
+ <item>100.0</item>
+
+ <item>0.24</item>
+ <item>200.0</item>
+ <item>50.0</item>
+
+ <item>0.24</item>
+ <item>200.0</item>
+ <item>100.0</item>
+
+ <item>0.0</item>
+ <item>160.0</item>
+ <item>50.0</item>
+ </array>
+
<!-- the number of the max cached processes in the system. -->
<integer name="config_customizedMaxCachedProcesses">64</integer>
diff --git a/oriole/overlay/frameworks/base/core/res/res/values/dimens.xml b/oriole/overlay/frameworks/base/core/res/res/values/dimens.xml
new file mode 100644
index 0000000..447e59c
--- /dev/null
+++ b/oriole/overlay/frameworks/base/core/res/res/values/dimens.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ * Copyright (c) 2022, 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.
+*/
+-->
+<resources>
+ <!-- for 20dp of padding at 3.5px/dp at default density -->
+ <dimen name="rounded_corner_content_padding">50px</dimen>
+</resources>
+
diff --git a/oriole/overlay/frameworks/base/core/res/res/xml/power_profile.xml b/oriole/overlay/frameworks/base/core/res/res/xml/power_profile.xml
index 0e8589e..c4e23c2 100644
--- a/oriole/overlay/frameworks/base/core/res/res/xml/power_profile.xml
+++ b/oriole/overlay/frameworks/base/core/res/res/xml/power_profile.xml
@@ -26,113 +26,125 @@
<value>2</value> <!-- Cluster 2 has 2 cores (cpu6, cpu7) -->
</array>
- <item name="cpu.suspend">4.35</item>
- <item name="cpu.idle">5.78</item>
- <item name="cpu.active">2.35</item>
- <item name="cpu.cluster_power.cluster0">32.58</item>
- <item name="cpu.cluster_power.cluster1">6.44</item>
- <item name="cpu.cluster_power.cluster2">0</item>
+ <item name="cpu.suspend">10</item>
+ <item name="cpu.idle">28.6</item>
+ <item name="cpu.active">12.37</item>
+ <item name="cpu.cluster_power.cluster0">0.24</item>
+ <item name="cpu.cluster_power.cluster1">3.23</item>
+ <item name="cpu.cluster_power.cluster2">5.94</item>
+ <!-- Different CPU speeds as reported in
+ /sys/devices/system/cpu/cpufreq/ploicy0/scaling_available_frequencies -->
<array name="cpu.core_speeds.cluster0">
- <value>300000</value>
- <value>574000</value>
- <value>738000</value>
- <value>930000</value>
- <value>1098000</value>
- <value>1197000</value>
- <value>1328000</value>
- <value>1401000</value>
- <value>1598000</value>
- <value>1704000</value>
- <value>1803000</value>
- <value>1950000</value>
- <value>2024000</value>
+ <value>300000</value> <!-- 300 MHz CPU speed -->
+ <value>574000</value> <!-- 574 MHz CPU speed -->
+ <value>738000</value> <!-- 738 MHz CPU speed -->
+ <value>930000</value> <!-- 930 MHz CPU speed -->
+ <value>1098000</value> <!-- 1098 MHz CPU speed -->
+ <value>1197000</value> <!-- 1197 MHz CPU speed -->
+ <value>1328000</value> <!-- 1328 MHz CPU speed -->
+ <value>1401000</value> <!-- 1401 MHz CPU speed -->
+ <value>1598000</value> <!-- 1598 MHz CPU speed -->
+ <value>1704000</value> <!-- 1704 MHz CPU speed -->
+ <value>1803000</value> <!-- 1803 MHz CPU speed -->
</array>
+ <!-- Different CPU speeds as reported in
+ /sys/devices/system/cpu/cpufreq/ploicy4/scaling_available_frequencies -->
<array name="cpu.core_speeds.cluster1">
- <value>400000</value>
- <value>553000</value>
- <value>696000</value>
- <value>799000</value>
- <value>910000</value>
- <value>1024000</value>
- <value>1197000</value>
- <value>1328000</value>
- <value>1491000</value>
- <value>1663000</value>
- <value>1836000</value>
- <value>1999000</value>
- <value>2130000</value>
- <value>2253000</value>
+ <value>400000</value> <!-- 400 MHz CPU speed -->
+ <value>553000</value> <!-- 553 MHz CPU speed -->
+ <value>696000</value> <!-- 696 MHz CPU speed -->
+ <value>799000</value> <!-- 799 MHz CPU speed -->
+ <value>910000</value> <!-- 910 MHz CPU speed -->
+ <value>1024000</value> <!-- 1024 MHz CPU speed -->
+ <value>1197000</value> <!-- 1197 MHz CPU speed -->
+ <value>1328000</value> <!-- 1328 MHz CPU speed -->
+ <value>1491000</value> <!-- 1491 MHz CPU speed -->
+ <value>1663000</value> <!-- 1663 MHz CPU speed -->
+ <value>1836000</value> <!-- 1836 MHz CPU speed -->
+ <value>1999000</value> <!-- 1999 MHz CPU speed -->
+ <value>2130000</value> <!-- 2130 MHz CPU speed -->
+ <value>2253000</value> <!-- 2253 MHz CPU speed -->
</array>
+ <!-- Different CPU speeds as reported in
+ /sys/devices/system/cpu/cpufreq/ploicy6/scaling_available_frequencies -->
<array name="cpu.core_speeds.cluster2">
- <value>500000</value>
- <value>851000</value>
- <value>984000</value>
- <value>1106000</value>
- <value>1277000</value>
- <value>1426000</value>
- <value>1582000</value>
- <value>1745000</value>
- <value>1826000</value>
- <value>2048000</value>
- <value>2188000</value>
- <value>2252000</value>
- <value>2401000</value>
- <value>2507000</value>
- <value>2630000</value>
+ <value>500000</value> <!-- 500 MHz CPU speed -->
+ <value>851000</value> <!-- 851 MHz CPU speed -->
+ <value>984000</value> <!-- 984 MHz CPU speed -->
+ <value>1106000</value> <!-- 1106 MHz CPU speed -->
+ <value>1277000</value> <!-- 1277 MHz CPU speed -->
+ <value>1426000</value> <!-- 1426 MHz CPU speed -->
+ <value>1582000</value> <!-- 1582 MHz CPU speed -->
+ <value>1745000</value> <!-- 1745 MHz CPU speed -->
+ <value>1826000</value> <!-- 1826 MHz CPU speed -->
+ <value>2048000</value> <!-- 2048 MHz CPU speed -->
+ <value>2188000</value> <!-- 2188 MHz CPU speed -->
+ <value>2252000</value> <!-- 2252 MHz CPU speed -->
+ <value>2401000</value> <!-- 2401 MHz CPU speed -->
+ <value>2507000</value> <!-- 2507 MHz CPU speed -->
+ <value>2630000</value> <!-- 2630 MHz CPU speed -->
+ <value>2704000</value> <!-- 2704 MHz CPU speed -->
+ <value>2802000</value> <!-- 2802 MHz CPU speed -->
</array>
+ <!-- Additional power used by a CPU core from cluster 0 when running at
+ different speeds, excluding cluster and active cost -->
<array name="cpu.core_power.cluster0">
- <value>13.58</value>
- <value>38.22</value>
- <value>48.59</value>
- <value>64.02</value>
- <value>79.69</value>
- <value>89.66</value>
- <value>105.64</value>
- <value>113.30</value>
- <value>142.24</value>
- <value>158.91</value>
- <value>180.73</value>
- <value>229.19</value>
- <value>266.66</value>
+ <value>1.89</value> <!-- 300 MHz CPU speed -->
+ <value>6.15</value> <!-- 574 MHz CPU speed -->
+ <value>9.34</value> <!-- 738 MHz CPU speed -->
+ <value>14.22</value> <!-- 930 MHz CPU speed -->
+ <value>18.94</value> <!-- 1098 MHz CPU speed -->
+ <value>21.98</value> <!-- 1197 MHz CPU speed -->
+ <value>26.83</value> <!-- 1328 MHz CPU speed -->
+ <value>30.17</value> <!-- 1401 MHz CPU speed -->
+ <value>41.55</value> <!-- 1598 MHz CPU speed -->
+ <value>48.36</value> <!-- 1704 MHz CPU speed -->
+ <value>58.45</value> <!-- 1803 MHz CPU speed -->
</array>
+ <!-- Additional power used by a CPU core from cluster 1 when running at
+ different speeds, excluding cluster and active cost -->
<array name="cpu.core_power.cluster1">
- <value>59.00</value>
- <value>87.69</value>
- <value>114.54</value>
- <value>134.19</value>
- <value>157.72</value>
- <value>184.69</value>
- <value>229.99</value>
- <value>264.08</value>
- <value>316.56</value>
- <value>375.74</value>
- <value>450.94</value>
- <value>529.79</value>
- <value>603.34</value>
- <value>684.48</value>
+ <value>3.71</value> <!-- 400 MHz CPU speed -->
+ <value>6.16</value> <!-- 553 MHz CPU speed -->
+ <value>8</value> <!-- 696 MHz CPU speed -->
+ <value>10.94</value> <!-- 799 MHz CPU speed -->
+ <value>12.73</value> <!-- 910 MHz CPU speed -->
+ <value>14.4</value> <!-- 1024 MHz CPU speed -->
+ <value>21.39</value> <!-- 1197 MHz CPU speed -->
+ <value>24.1</value> <!-- 1328 MHz CPU speed -->
+ <value>30.42</value> <!-- 1491 MHz CPU speed -->
+ <value>42.49</value> <!-- 1663 MHz CPU speed -->
+ <value>49.37</value> <!-- 1836 MHz CPU speed -->
+ <value>58.09</value> <!-- 1999 MHz CPU speed -->
+ <value>67.54</value> <!-- 2130 MHz CPU speed -->
+ <value>79.04</value> <!-- 2253 MHz CPU speed -->
</array>
+ <!-- Additional power used by a CPU core from cluster 2 when running at
+ different speeds, excluding cluster and active cost -->
<array name="cpu.core_power.cluster2">
- <value>199.11</value>
- <value>332.32</value>
- <value>389.40</value>
- <value>452.85</value>
- <value>547.22</value>
- <value>629.93</value>
- <value>735.84</value>
- <value>861.23</value>
- <value>946.15</value>
- <value>1137.98</value>
- <value>1318.48</value>
- <value>1396.56</value>
- <value>1583.05</value>
- <value>1811.61</value>
- <value>2050.00</value>
+ <value>8.36</value> <!-- 500 MHz CPU speed -->
+ <value>16.33</value> <!-- 851 MHz CPU speed -->
+ <value>19.44</value> <!-- 984 MHz CPU speed -->
+ <value>36.71</value> <!-- 1106 MHz CPU speed -->
+ <value>41.42</value> <!-- 1277 MHz CPU speed -->
+ <value>48.24</value> <!-- 1426 MHz CPU speed -->
+ <value>54.77</value> <!-- 1582 MHz CPU speed -->
+ <value>65.32</value> <!-- 1745 MHz CPU speed -->
+ <value>69.58</value> <!-- 1826 MHz CPU speed -->
+ <value>128.49</value> <!-- 2048 MHz CPU speed -->
+ <value>142.15</value> <!-- 2188 MHz CPU speed -->
+ <value>149.74</value> <!-- 2252 MHz CPU speed -->
+ <value>164.78</value> <!-- 2401 MHz CPU speed -->
+ <value>188.68</value> <!-- 2507 MHz CPU speed -->
+ <value>193.15</value> <!-- 2630 MHz CPU speed -->
+ <value>227.98</value> <!-- 2704 MHz CPU speed -->
+ <value>254.25</value> <!-- 2802 MHz CPU speed -->
</array>
<!-- Additional power used when screen is ambient mode -->
diff --git a/oriole/overlay/frameworks/base/packages/SystemUI/res/values/dimens.xml b/oriole/overlay/frameworks/base/packages/SystemUI/res/values/dimens.xml
index b364c4a..61f284d 100644
--- a/oriole/overlay/frameworks/base/packages/SystemUI/res/values/dimens.xml
+++ b/oriole/overlay/frameworks/base/packages/SystemUI/res/values/dimens.xml
@@ -19,9 +19,6 @@
<!-- Don't need the left side padding due to being inset from the cutout -->
<dimen name="status_bar_padding_start">0dp</dimen>
- <!-- for 20dp of padding at 3.5px/dp at default density -->
- <dimen name="rounded_corner_content_padding">50px</dimen>
-
<!-- the padding on the top of the statusbar (usually 0) -->
<dimen name="status_bar_padding_top">1px</dimen>
diff --git a/oriole/overlay/packages/services/AlternativeNetworkAccess/res/values/config.xml b/oriole/overlay/packages/services/AlternativeNetworkAccess/res/values/config.xml
new file mode 100644
index 0000000..46c95af
--- /dev/null
+++ b/oriole/overlay/packages/services/AlternativeNetworkAccess/res/values/config.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2021 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.
+-->
+<resources>
+ <bool name="enable_ons_auto_provisioning">true</bool>
+</resources>
diff --git a/powerhint-oriole.json b/powerhint-oriole.json
index d4d65fa..d820bc0 100644
--- a/powerhint-oriole.json
+++ b/powerhint-oriole.json
@@ -26,7 +26,11 @@
"9999999",
"1098000",
"1401000",
- "1197000"
+ "930000",
+ "1197000",
+ "1328000",
+ "1598000",
+ "1803000"
],
"DefaultIndex": 0,
"ResetOnInit": true
@@ -48,8 +52,12 @@
"9999999",
"1024000",
"1197000",
- "1999000",
- "1491000"
+ "1491000",
+ "910000",
+ "1328000",
+ "1663000",
+ "1836000",
+ "1999000"
],
"DefaultIndex": 0,
"ResetOnInit": true
@@ -71,7 +79,12 @@
"9999999",
"984000",
"1426000",
- "1826000"
+ "1826000",
+ "1277000",
+ "1582000",
+ "1745000",
+ "2048000",
+ "2401000"
],
"DefaultIndex": 0,
"ResetOnInit": true
@@ -177,6 +190,15 @@
"ResetOnInit": true
},
{
+ "Name": "RestrictedCpuset",
+ "Path": "/dev/cpuset/restricted/cpus",
+ "Values": [
+ "0-3",
+ "0-7"
+ ],
+ "ResetOnInit": false
+ },
+ {
"Name": "CDHighCpusetCpus",
"Path": "/dev/cpuset/camera-daemon-high-group/cpus",
"Values": [
@@ -240,15 +262,6 @@
"ResetOnInit": true
},
{
- "Name": "HighCapacityStartCpu",
- "Path": "/sys/kernel/vendor_sched/high_capacity_start_cpu",
- "Values": [
- "4",
- "6"
- ],
- "ResetOnInit": true
- },
- {
"Name": "LimitFlashCurrent",
"Path": "vendor.camera.max_flash_current",
"Values": [
@@ -735,12 +748,6 @@
},
{
"PowerHint": "CAMERA_STREAMING_EXTREME",
- "Node": "HighCapacityStartCpu",
- "Duration": 0,
- "Value": "4"
- },
- {
- "PowerHint": "CAMERA_STREAMING_EXTREME",
"Node": "GPUMinFreq",
"Duration": 0,
"Value": "302000"
@@ -813,12 +820,6 @@
},
{
"PowerHint": "CAMERA_STREAMING_HIGH",
- "Node": "HighCapacityStartCpu",
- "Duration": 0,
- "Value": "4"
- },
- {
- "PowerHint": "CAMERA_STREAMING_HIGH",
"Node": "CPULittleClusterMaxFreq",
"Duration": 0,
"Value": "1401000"
@@ -957,12 +958,6 @@
},
{
"PowerHint": "CAMERA_STREAMING_LOW",
- "Node": "HighCapacityStartCpu",
- "Duration": 0,
- "Value": "4"
- },
- {
- "PowerHint": "CAMERA_STREAMING_LOW",
"Node": "CPUBigClusterMaxFreq",
"Duration": 0,
"Value": "1826000"
@@ -1052,6 +1047,96 @@
"Value": "9999999"
},
{
+ "PowerHint": "LOW_POWER_LITTLE_CLUSTER_50",
+ "Node": "CPULittleClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "930000"
+ },
+ {
+ "PowerHint": "LOW_POWER_LITTLE_CLUSTER_60",
+ "Node": "CPULittleClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1197000"
+ },
+ {
+ "PowerHint": "LOW_POWER_LITTLE_CLUSTER_70",
+ "Node": "CPULittleClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1328000"
+ },
+ {
+ "PowerHint": "LOW_POWER_LITTLE_CLUSTER_80",
+ "Node": "CPULittleClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1598000"
+ },
+ {
+ "PowerHint": "LOW_POWER_LITTLE_CLUSTER_90",
+ "Node": "CPULittleClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1803000"
+ },
+ {
+ "PowerHint": "LOW_POWER_MID_CLUSTER_50",
+ "Node": "CPUMidClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "910000"
+ },
+ {
+ "PowerHint": "LOW_POWER_MID_CLUSTER_60",
+ "Node": "CPUMidClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1328000"
+ },
+ {
+ "PowerHint": "LOW_POWER_MID_CLUSTER_70",
+ "Node": "CPUMidClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1663000"
+ },
+ {
+ "PowerHint": "LOW_POWER_MID_CLUSTER_80",
+ "Node": "CPUMidClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1836000"
+ },
+ {
+ "PowerHint": "LOW_POWER_MID_CLUSTER_90",
+ "Node": "CPUMidClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1999000"
+ },
+ {
+ "PowerHint": "LOW_POWER_CPU_50",
+ "Node": "CPUBigClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1277000"
+ },
+ {
+ "PowerHint": "LOW_POWER_CPU_60",
+ "Node": "CPUBigClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1582000"
+ },
+ {
+ "PowerHint": "LOW_POWER_CPU_70",
+ "Node": "CPUBigClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1745000"
+ },
+ {
+ "PowerHint": "LOW_POWER_CPU_80",
+ "Node": "CPUBigClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "2048000"
+ },
+ {
+ "PowerHint": "LOW_POWER_CPU_90",
+ "Node": "CPUBigClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "2401000"
+ },
+ {
"PowerHint": "REFRESH_90FPS",
"Node": "TAUClampBoost",
"Duration": 0,
@@ -1361,6 +1446,18 @@
"Node": "MLUclampBoost",
"Duration": 2000,
"Value": "512"
+ },
+ {
+ "PowerHint": "DEVICE_IDLE",
+ "Node": "RestrictedCpuset",
+ "Duration": 0,
+ "Value": "0-3"
+ },
+ {
+ "PowerHint": "DISPLAY_INACTIVE",
+ "Node": "RestrictedCpuset",
+ "Duration": 0,
+ "Value": "0-3"
}
]
}
diff --git a/powerhint-raven.json b/powerhint-raven.json
index 4c46342..82f3df4 100644
--- a/powerhint-raven.json
+++ b/powerhint-raven.json
@@ -26,7 +26,11 @@
"9999999",
"1098000",
"1401000",
- "1197000"
+ "930000",
+ "1197000",
+ "1328000",
+ "1598000",
+ "1803000"
],
"DefaultIndex": 0,
"ResetOnInit": true
@@ -48,8 +52,12 @@
"9999999",
"1024000",
"1197000",
- "1999000",
- "1491000"
+ "1491000",
+ "910000",
+ "1328000",
+ "1663000",
+ "1836000",
+ "1999000"
],
"DefaultIndex": 0,
"ResetOnInit": true
@@ -71,7 +79,12 @@
"9999999",
"984000",
"1426000",
- "1826000"
+ "1826000",
+ "1277000",
+ "1582000",
+ "1745000",
+ "2048000",
+ "2401000"
],
"DefaultIndex": 0,
"ResetOnInit": true
@@ -178,6 +191,15 @@
"ResetOnInit": true
},
{
+ "Name": "RestrictedCpuset",
+ "Path": "/dev/cpuset/restricted/cpus",
+ "Values": [
+ "0-3",
+ "0-7"
+ ],
+ "ResetOnInit": false
+ },
+ {
"Name": "CDHighCpusetCpus",
"Path": "/dev/cpuset/camera-daemon-high-group/cpus",
"Values": [
@@ -241,15 +263,6 @@
"ResetOnInit": true
},
{
- "Name": "HighCapacityStartCpu",
- "Path": "/sys/kernel/vendor_sched/high_capacity_start_cpu",
- "Values": [
- "4",
- "6"
- ],
- "ResetOnInit": true
- },
- {
"Name": "LimitFlashCurrent",
"Path": "vendor.camera.max_flash_current",
"Values": [
@@ -747,12 +760,6 @@
},
{
"PowerHint": "CAMERA_STREAMING_EXTREME",
- "Node": "HighCapacityStartCpu",
- "Duration": 0,
- "Value": "4"
- },
- {
- "PowerHint": "CAMERA_STREAMING_EXTREME",
"Node": "GPUMinFreq",
"Duration": 0,
"Value": "302000"
@@ -825,12 +832,6 @@
},
{
"PowerHint": "CAMERA_STREAMING_HIGH",
- "Node": "HighCapacityStartCpu",
- "Duration": 0,
- "Value": "4"
- },
- {
- "PowerHint": "CAMERA_STREAMING_HIGH",
"Node": "CPULittleClusterMaxFreq",
"Duration": 0,
"Value": "1401000"
@@ -969,12 +970,6 @@
},
{
"PowerHint": "CAMERA_STREAMING_LOW",
- "Node": "HighCapacityStartCpu",
- "Duration": 0,
- "Value": "4"
- },
- {
- "PowerHint": "CAMERA_STREAMING_LOW",
"Node": "CPUBigClusterMaxFreq",
"Duration": 0,
"Value": "1826000"
@@ -1064,6 +1059,96 @@
"Value": "9999999"
},
{
+ "PowerHint": "LOW_POWER_LITTLE_CLUSTER_50",
+ "Node": "CPULittleClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "930000"
+ },
+ {
+ "PowerHint": "LOW_POWER_LITTLE_CLUSTER_60",
+ "Node": "CPULittleClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1197000"
+ },
+ {
+ "PowerHint": "LOW_POWER_LITTLE_CLUSTER_70",
+ "Node": "CPULittleClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1328000"
+ },
+ {
+ "PowerHint": "LOW_POWER_LITTLE_CLUSTER_80",
+ "Node": "CPULittleClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1598000"
+ },
+ {
+ "PowerHint": "LOW_POWER_LITTLE_CLUSTER_90",
+ "Node": "CPULittleClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1803000"
+ },
+ {
+ "PowerHint": "LOW_POWER_MID_CLUSTER_50",
+ "Node": "CPUMidClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "910000"
+ },
+ {
+ "PowerHint": "LOW_POWER_MID_CLUSTER_60",
+ "Node": "CPUMidClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1328000"
+ },
+ {
+ "PowerHint": "LOW_POWER_MID_CLUSTER_70",
+ "Node": "CPUMidClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1663000"
+ },
+ {
+ "PowerHint": "LOW_POWER_MID_CLUSTER_80",
+ "Node": "CPUMidClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1836000"
+ },
+ {
+ "PowerHint": "LOW_POWER_MID_CLUSTER_90",
+ "Node": "CPUMidClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1999000"
+ },
+ {
+ "PowerHint": "LOW_POWER_CPU_50",
+ "Node": "CPUBigClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1277000"
+ },
+ {
+ "PowerHint": "LOW_POWER_CPU_60",
+ "Node": "CPUBigClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1582000"
+ },
+ {
+ "PowerHint": "LOW_POWER_CPU_70",
+ "Node": "CPUBigClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1745000"
+ },
+ {
+ "PowerHint": "LOW_POWER_CPU_80",
+ "Node": "CPUBigClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "2048000"
+ },
+ {
+ "PowerHint": "LOW_POWER_CPU_90",
+ "Node": "CPUBigClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "2401000"
+ },
+ {
"PowerHint": "REFRESH_120FPS",
"Node": "TAUClampBoost",
"Duration": 0,
@@ -1285,18 +1370,18 @@
},
{
"PowerHint": "FP_BOOST",
- "Node": "CPUBigClusterMinFreq",
- "Duration": 1000,
- "Value": "9999999"
- },
- {
- "PowerHint": "FP_BOOST",
"Node": "CPU_LITTLE_TSKIN_BYPASS",
"Duration": 1000,
"Value": "1"
},
{
"PowerHint": "FP_BOOST",
+ "Node": "CPUBigClusterMinFreq",
+ "Duration": 1000,
+ "Value": "9999999"
+ },
+ {
+ "PowerHint": "FP_BOOST",
"Node": "CPU_MID_TSKIN_BYPASS",
"Duration": 1000,
"Value": "1"
@@ -1378,6 +1463,18 @@
"Node": "MLUclampBoost",
"Duration": 2000,
"Value": "512"
+ },
+ {
+ "PowerHint": "DEVICE_IDLE",
+ "Node": "RestrictedCpuset",
+ "Duration": 0,
+ "Value": "0-3"
+ },
+ {
+ "PowerHint": "DISPLAY_INACTIVE",
+ "Node": "RestrictedCpuset",
+ "Duration": 0,
+ "Value": "0-3"
}
]
}
diff --git a/powerhint-slider.json b/powerhint-slider.json
index 5c3b1b7..b342d53 100644
--- a/powerhint-slider.json
+++ b/powerhint-slider.json
@@ -26,7 +26,11 @@
"9999999",
"1098000",
"1401000",
- "1197000"
+ "930000",
+ "1197000",
+ "1328000",
+ "1598000",
+ "1803000"
],
"DefaultIndex": 0,
"ResetOnInit": true
@@ -48,8 +52,12 @@
"9999999",
"1024000",
"1197000",
- "1999000",
- "1491000"
+ "1491000",
+ "910000",
+ "1328000",
+ "1663000",
+ "1836000",
+ "1999000"
],
"DefaultIndex": 0,
"ResetOnInit": true
@@ -71,7 +79,12 @@
"9999999",
"984000",
"1426000",
- "1826000"
+ "1826000",
+ "1277000",
+ "1582000",
+ "1745000",
+ "2048000",
+ "2401000"
],
"DefaultIndex": 0,
"ResetOnInit": true
@@ -242,15 +255,6 @@
"ResetOnInit": true
},
{
- "Name": "HighCapacityStartCpu",
- "Path": "/sys/kernel/vendor_sched/high_capacity_start_cpu",
- "Values": [
- "4",
- "6"
- ],
- "ResetOnInit": true
- },
- {
"Name": "LimitFlashCurrent",
"Path": "vendor.camera.max_flash_current",
"Values": [
@@ -320,7 +324,7 @@
"Name": "LittleControlTempSet",
"Path": "/dev/thermal/tz-by-name/LITTLE/trip_point_2_temp",
"Values": [
- "90000",
+ "95000",
"80000"
],
"DefaultIndex": 0,
@@ -721,12 +725,6 @@
},
{
"PowerHint": "CAMERA_STREAMING_EXTREME",
- "Node": "HighCapacityStartCpu",
- "Duration": 0,
- "Value": "4"
- },
- {
- "PowerHint": "CAMERA_STREAMING_EXTREME",
"Node": "GPUMinFreq",
"Duration": 0,
"Value": "302000"
@@ -799,12 +797,6 @@
},
{
"PowerHint": "CAMERA_STREAMING_HIGH",
- "Node": "HighCapacityStartCpu",
- "Duration": 0,
- "Value": "4"
- },
- {
- "PowerHint": "CAMERA_STREAMING_HIGH",
"Node": "CPULittleClusterMaxFreq",
"Duration": 0,
"Value": "1401000"
@@ -943,12 +935,6 @@
},
{
"PowerHint": "CAMERA_STREAMING_LOW",
- "Node": "HighCapacityStartCpu",
- "Duration": 0,
- "Value": "4"
- },
- {
- "PowerHint": "CAMERA_STREAMING_LOW",
"Node": "CPUBigClusterMaxFreq",
"Duration": 0,
"Value": "1826000"
@@ -1038,6 +1024,96 @@
"Value": "9999999"
},
{
+ "PowerHint": "LOW_POWER_LITTLE_CLUSTER_50",
+ "Node": "CPULittleClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "930000"
+ },
+ {
+ "PowerHint": "LOW_POWER_LITTLE_CLUSTER_60",
+ "Node": "CPULittleClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1197000"
+ },
+ {
+ "PowerHint": "LOW_POWER_LITTLE_CLUSTER_70",
+ "Node": "CPULittleClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1328000"
+ },
+ {
+ "PowerHint": "LOW_POWER_LITTLE_CLUSTER_80",
+ "Node": "CPULittleClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1598000"
+ },
+ {
+ "PowerHint": "LOW_POWER_LITTLE_CLUSTER_90",
+ "Node": "CPULittleClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1803000"
+ },
+ {
+ "PowerHint": "LOW_POWER_MID_CLUSTER_50",
+ "Node": "CPUMidClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "910000"
+ },
+ {
+ "PowerHint": "LOW_POWER_MID_CLUSTER_60",
+ "Node": "CPUMidClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1328000"
+ },
+ {
+ "PowerHint": "LOW_POWER_MID_CLUSTER_70",
+ "Node": "CPUMidClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1663000"
+ },
+ {
+ "PowerHint": "LOW_POWER_MID_CLUSTER_80",
+ "Node": "CPUMidClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1836000"
+ },
+ {
+ "PowerHint": "LOW_POWER_MID_CLUSTER_90",
+ "Node": "CPUMidClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1999000"
+ },
+ {
+ "PowerHint": "LOW_POWER_CPU_50",
+ "Node": "CPUBigClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1277000"
+ },
+ {
+ "PowerHint": "LOW_POWER_CPU_60",
+ "Node": "CPUBigClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1582000"
+ },
+ {
+ "PowerHint": "LOW_POWER_CPU_70",
+ "Node": "CPUBigClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1745000"
+ },
+ {
+ "PowerHint": "LOW_POWER_CPU_80",
+ "Node": "CPUBigClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "2048000"
+ },
+ {
+ "PowerHint": "LOW_POWER_CPU_90",
+ "Node": "CPUBigClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "2401000"
+ },
+ {
"PowerHint": "REFRESH_120FPS",
"Node": "TAUClampBoost",
"Duration": 0,
diff --git a/powerhint-whitefin.json b/powerhint-whitefin.json
index 5c3b1b7..b342d53 100644
--- a/powerhint-whitefin.json
+++ b/powerhint-whitefin.json
@@ -26,7 +26,11 @@
"9999999",
"1098000",
"1401000",
- "1197000"
+ "930000",
+ "1197000",
+ "1328000",
+ "1598000",
+ "1803000"
],
"DefaultIndex": 0,
"ResetOnInit": true
@@ -48,8 +52,12 @@
"9999999",
"1024000",
"1197000",
- "1999000",
- "1491000"
+ "1491000",
+ "910000",
+ "1328000",
+ "1663000",
+ "1836000",
+ "1999000"
],
"DefaultIndex": 0,
"ResetOnInit": true
@@ -71,7 +79,12 @@
"9999999",
"984000",
"1426000",
- "1826000"
+ "1826000",
+ "1277000",
+ "1582000",
+ "1745000",
+ "2048000",
+ "2401000"
],
"DefaultIndex": 0,
"ResetOnInit": true
@@ -242,15 +255,6 @@
"ResetOnInit": true
},
{
- "Name": "HighCapacityStartCpu",
- "Path": "/sys/kernel/vendor_sched/high_capacity_start_cpu",
- "Values": [
- "4",
- "6"
- ],
- "ResetOnInit": true
- },
- {
"Name": "LimitFlashCurrent",
"Path": "vendor.camera.max_flash_current",
"Values": [
@@ -320,7 +324,7 @@
"Name": "LittleControlTempSet",
"Path": "/dev/thermal/tz-by-name/LITTLE/trip_point_2_temp",
"Values": [
- "90000",
+ "95000",
"80000"
],
"DefaultIndex": 0,
@@ -721,12 +725,6 @@
},
{
"PowerHint": "CAMERA_STREAMING_EXTREME",
- "Node": "HighCapacityStartCpu",
- "Duration": 0,
- "Value": "4"
- },
- {
- "PowerHint": "CAMERA_STREAMING_EXTREME",
"Node": "GPUMinFreq",
"Duration": 0,
"Value": "302000"
@@ -799,12 +797,6 @@
},
{
"PowerHint": "CAMERA_STREAMING_HIGH",
- "Node": "HighCapacityStartCpu",
- "Duration": 0,
- "Value": "4"
- },
- {
- "PowerHint": "CAMERA_STREAMING_HIGH",
"Node": "CPULittleClusterMaxFreq",
"Duration": 0,
"Value": "1401000"
@@ -943,12 +935,6 @@
},
{
"PowerHint": "CAMERA_STREAMING_LOW",
- "Node": "HighCapacityStartCpu",
- "Duration": 0,
- "Value": "4"
- },
- {
- "PowerHint": "CAMERA_STREAMING_LOW",
"Node": "CPUBigClusterMaxFreq",
"Duration": 0,
"Value": "1826000"
@@ -1038,6 +1024,96 @@
"Value": "9999999"
},
{
+ "PowerHint": "LOW_POWER_LITTLE_CLUSTER_50",
+ "Node": "CPULittleClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "930000"
+ },
+ {
+ "PowerHint": "LOW_POWER_LITTLE_CLUSTER_60",
+ "Node": "CPULittleClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1197000"
+ },
+ {
+ "PowerHint": "LOW_POWER_LITTLE_CLUSTER_70",
+ "Node": "CPULittleClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1328000"
+ },
+ {
+ "PowerHint": "LOW_POWER_LITTLE_CLUSTER_80",
+ "Node": "CPULittleClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1598000"
+ },
+ {
+ "PowerHint": "LOW_POWER_LITTLE_CLUSTER_90",
+ "Node": "CPULittleClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1803000"
+ },
+ {
+ "PowerHint": "LOW_POWER_MID_CLUSTER_50",
+ "Node": "CPUMidClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "910000"
+ },
+ {
+ "PowerHint": "LOW_POWER_MID_CLUSTER_60",
+ "Node": "CPUMidClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1328000"
+ },
+ {
+ "PowerHint": "LOW_POWER_MID_CLUSTER_70",
+ "Node": "CPUMidClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1663000"
+ },
+ {
+ "PowerHint": "LOW_POWER_MID_CLUSTER_80",
+ "Node": "CPUMidClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1836000"
+ },
+ {
+ "PowerHint": "LOW_POWER_MID_CLUSTER_90",
+ "Node": "CPUMidClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1999000"
+ },
+ {
+ "PowerHint": "LOW_POWER_CPU_50",
+ "Node": "CPUBigClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1277000"
+ },
+ {
+ "PowerHint": "LOW_POWER_CPU_60",
+ "Node": "CPUBigClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1582000"
+ },
+ {
+ "PowerHint": "LOW_POWER_CPU_70",
+ "Node": "CPUBigClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "1745000"
+ },
+ {
+ "PowerHint": "LOW_POWER_CPU_80",
+ "Node": "CPUBigClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "2048000"
+ },
+ {
+ "PowerHint": "LOW_POWER_CPU_90",
+ "Node": "CPUBigClusterMaxFreq",
+ "Duration": 3600000,
+ "Value": "2401000"
+ },
+ {
"PowerHint": "REFRESH_120FPS",
"Node": "TAUClampBoost",
"Duration": 0,
diff --git a/powerstats/oriole/Android.bp b/powerstats/oriole/Android.bp
index e67af40..a88a3ab 100644
--- a/powerstats/oriole/Android.bp
+++ b/powerstats/oriole/Android.bp
@@ -15,7 +15,7 @@
soong_namespace {
imports: [
"hardware/google/pixel",
- "device/google/gs101",
+ "device/google/gs101/powerstats",
]
}
diff --git a/powerstats/raven/Android.bp b/powerstats/raven/Android.bp
index e67af40..a88a3ab 100644
--- a/powerstats/raven/Android.bp
+++ b/powerstats/raven/Android.bp
@@ -15,7 +15,7 @@
soong_namespace {
imports: [
"hardware/google/pixel",
- "device/google/gs101",
+ "device/google/gs101/powerstats",
]
}
diff --git a/powerstats/slider/Android.bp b/powerstats/slider/Android.bp
index e67af40..a88a3ab 100644
--- a/powerstats/slider/Android.bp
+++ b/powerstats/slider/Android.bp
@@ -15,7 +15,7 @@
soong_namespace {
imports: [
"hardware/google/pixel",
- "device/google/gs101",
+ "device/google/gs101/powerstats",
]
}
diff --git a/powerstats/whitefin/Android.bp b/powerstats/whitefin/Android.bp
index e67af40..a88a3ab 100644
--- a/powerstats/whitefin/Android.bp
+++ b/powerstats/whitefin/Android.bp
@@ -15,7 +15,7 @@
soong_namespace {
imports: [
"hardware/google/pixel",
- "device/google/gs101",
+ "device/google/gs101/powerstats",
]
}
diff --git a/raven/BoardConfig.mk b/raven/BoardConfig.mk
index c3f2cc7..2b67f76 100644
--- a/raven/BoardConfig.mk
+++ b/raven/BoardConfig.mk
@@ -14,8 +14,8 @@
# limitations under the License.
#
-ifdef PHONE_CAR_BOARD_CONFIG
- include $(PHONE_CAR_BOARD_CONFIG)
+ifdef PHONE_CAR_BOARD_PRODUCT
+ include device/google_car/$(PHONE_CAR_BOARD_PRODUCT)/BoardConfig.mk
else
TARGET_BOARD_INFO_FILE := device/google/raviole/board-info.txt
TARGET_BOOTLOADER_BOARD_NAME := raven
@@ -23,6 +23,7 @@
USES_DEVICE_GOOGLE_RAVIOLE := true
include device/google/gs101/BoardConfig-common.mk
+ include device/google/gs101/wifi/BoardConfig-wifi.mk
-include vendor/google_devices/gs101/prebuilts/BoardConfigVendor.mk
-include vendor/google_devices/raven/proprietary/BoardConfigVendor.mk
endif
diff --git a/raven/overlay/frameworks/base/core/res/res/values/config.xml b/raven/overlay/frameworks/base/core/res/res/values/config.xml
index a83a4e4..966332c 100644
--- a/raven/overlay/frameworks/base/core/res/res/values/config.xml
+++ b/raven/overlay/frameworks/base/core/res/res/values/config.xml
@@ -195,11 +195,96 @@
non-zero amplitudes, to bring the vibrator amplitude down to zero using this timing. -->
<integer name="config_vibrationWaveformRampDownDuration">50</integer>
+ <!-- A vibration waveform for notifications that specify DEFAULT_VIBRATE.
+ This value is a float array with values grouped as
+ { targetAmplitude (within [0,1]), targetFrequency (in hertz), duration (in milliseconds) }
+ This is only applied on devices with vibration frequency control. If the device doesn't
+ support frequency control, then the vibration specified in
+ config_defaultNotificationVibePattern is used instead.
+ -->
+ <array name="config_defaultNotificationVibeWaveform">
+ <item>0.0</item>
+ <item>160.0</item>
+ <item>0.0</item>
+
+ <item>0.24</item>
+ <item>200.0</item>
+ <item>100.0</item>
+
+ <item>0.24</item>
+ <item>200.0</item>
+ <item>100.0</item>
+
+ <item>0.0</item>
+ <item>160.0</item>
+ <item>100.0</item>
+
+ <item>0.0</item>
+ <item>160.0</item>
+ <item>100.0</item>
+
+ <item>0.24</item>
+ <item>200.0</item>
+ <item>100.0</item>
+
+ <item>0.24</item>
+ <item>200.0</item>
+ <item>100.0</item>
+
+ <item>0.0</item>
+ <item>160.0</item>
+ <item>100.0</item>
+ </array>
+
+ <!-- A vibration waveform for notifications that do not specify vibration but vibrate anyway,
+ because the device is in vibrate mode. This value is a float array with values grouped as
+ { targetAmplitude (within [0,1]), targetFrequency (in hertz), duration (in milliseconds) }
+ This is only applied on devices with vibration frequency control. If the device doesn't
+ support frequency control, then the vibration specified in
+ config_notificationFallbackVibePattern is used instead.
+ -->
+ <array name="config_notificationFallbackVibeWaveform">
+ <item>0.0</item>
+ <item>160.0</item>
+ <item>0.0</item>
+
+ <item>0.24</item>
+ <item>200.0</item>
+ <item>50.0</item>
+
+ <item>0.24</item>
+ <item>200.0</item>
+ <item>100.0</item>
+
+ <item>0.0</item>
+ <item>160.0</item>
+ <item>50.0</item>
+
+ <item>0.0</item>
+ <item>160.0</item>
+ <item>100.0</item>
+
+ <item>0.24</item>
+ <item>200.0</item>
+ <item>50.0</item>
+
+ <item>0.24</item>
+ <item>200.0</item>
+ <item>100.0</item>
+
+ <item>0.0</item>
+ <item>160.0</item>
+ <item>50.0</item>
+ </array>
+
<!-- Height of the status bar.
Do not read this dimen directly. Use {@link SystemBarUtils#getStatusBarHeight} instead.
-->
<dimen name="status_bar_height">28dp</dimen>
+ <!-- If face auth sends the user directly to home/last open app, or stays on keyguard by default-->
+ <bool name="config_faceAuthDismissesKeyguard">false</bool>
+
<!-- the number of the max cached processes in the system. -->
<integer name="config_customizedMaxCachedProcesses">64</integer>
diff --git a/raven/overlay/frameworks/base/core/res/res/values/dimens.xml b/raven/overlay/frameworks/base/core/res/res/values/dimens.xml
new file mode 100644
index 0000000..1188e6c
--- /dev/null
+++ b/raven/overlay/frameworks/base/core/res/res/values/dimens.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ * Copyright (c) 2022, 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.
+*/
+-->
+<resources>
+ <!-- for 20dp of padding at 3.5px/dp at default density -->
+ <dimen name="rounded_corner_content_padding">50px</dimen>
+</resources>
+
diff --git a/raven/overlay/frameworks/base/core/res/res/xml/power_profile.xml b/raven/overlay/frameworks/base/core/res/res/xml/power_profile.xml
index 5273eb6..1937c0d 100644
--- a/raven/overlay/frameworks/base/core/res/res/xml/power_profile.xml
+++ b/raven/overlay/frameworks/base/core/res/res/xml/power_profile.xml
@@ -26,113 +26,125 @@
<value>2</value> <!-- Cluster 2 has 2 cores (cpu6, cpu7) -->
</array>
- <item name="cpu.suspend">4.35</item>
- <item name="cpu.idle">5.78</item>
- <item name="cpu.active">2.35</item>
- <item name="cpu.cluster_power.cluster0">32.58</item>
- <item name="cpu.cluster_power.cluster1">6.44</item>
- <item name="cpu.cluster_power.cluster2">0</item>
+ <item name="cpu.suspend">10</item>
+ <item name="cpu.idle">28.6</item>
+ <item name="cpu.active">12.37</item>
+ <item name="cpu.cluster_power.cluster0">0.24</item>
+ <item name="cpu.cluster_power.cluster1">3.23</item>
+ <item name="cpu.cluster_power.cluster2">5.94</item>
+ <!-- Different CPU speeds as reported in
+ /sys/devices/system/cpu/cpufreq/ploicy0/scaling_available_frequencies -->
<array name="cpu.core_speeds.cluster0">
- <value>300000</value>
- <value>574000</value>
- <value>738000</value>
- <value>930000</value>
- <value>1098000</value>
- <value>1197000</value>
- <value>1328000</value>
- <value>1401000</value>
- <value>1598000</value>
- <value>1704000</value>
- <value>1803000</value>
- <value>1950000</value>
- <value>2024000</value>
+ <value>300000</value> <!-- 300 MHz CPU speed -->
+ <value>574000</value> <!-- 574 MHz CPU speed -->
+ <value>738000</value> <!-- 738 MHz CPU speed -->
+ <value>930000</value> <!-- 930 MHz CPU speed -->
+ <value>1098000</value> <!-- 1098 MHz CPU speed -->
+ <value>1197000</value> <!-- 1197 MHz CPU speed -->
+ <value>1328000</value> <!-- 1328 MHz CPU speed -->
+ <value>1401000</value> <!-- 1401 MHz CPU speed -->
+ <value>1598000</value> <!-- 1598 MHz CPU speed -->
+ <value>1704000</value> <!-- 1704 MHz CPU speed -->
+ <value>1803000</value> <!-- 1803 MHz CPU speed -->
</array>
+ <!-- Different CPU speeds as reported in
+ /sys/devices/system/cpu/cpufreq/ploicy4/scaling_available_frequencies -->
<array name="cpu.core_speeds.cluster1">
- <value>400000</value>
- <value>553000</value>
- <value>696000</value>
- <value>799000</value>
- <value>910000</value>
- <value>1024000</value>
- <value>1197000</value>
- <value>1328000</value>
- <value>1491000</value>
- <value>1663000</value>
- <value>1836000</value>
- <value>1999000</value>
- <value>2130000</value>
- <value>2253000</value>
+ <value>400000</value> <!-- 400 MHz CPU speed -->
+ <value>553000</value> <!-- 553 MHz CPU speed -->
+ <value>696000</value> <!-- 696 MHz CPU speed -->
+ <value>799000</value> <!-- 799 MHz CPU speed -->
+ <value>910000</value> <!-- 910 MHz CPU speed -->
+ <value>1024000</value> <!-- 1024 MHz CPU speed -->
+ <value>1197000</value> <!-- 1197 MHz CPU speed -->
+ <value>1328000</value> <!-- 1328 MHz CPU speed -->
+ <value>1491000</value> <!-- 1491 MHz CPU speed -->
+ <value>1663000</value> <!-- 1663 MHz CPU speed -->
+ <value>1836000</value> <!-- 1836 MHz CPU speed -->
+ <value>1999000</value> <!-- 1999 MHz CPU speed -->
+ <value>2130000</value> <!-- 2130 MHz CPU speed -->
+ <value>2253000</value> <!-- 2253 MHz CPU speed -->
</array>
+ <!-- Different CPU speeds as reported in
+ /sys/devices/system/cpu/cpufreq/ploicy6/scaling_available_frequencies -->
<array name="cpu.core_speeds.cluster2">
- <value>500000</value>
- <value>851000</value>
- <value>984000</value>
- <value>1106000</value>
- <value>1277000</value>
- <value>1426000</value>
- <value>1582000</value>
- <value>1745000</value>
- <value>1826000</value>
- <value>2048000</value>
- <value>2188000</value>
- <value>2252000</value>
- <value>2401000</value>
- <value>2507000</value>
- <value>2630000</value>
+ <value>500000</value> <!-- 500 MHz CPU speed -->
+ <value>851000</value> <!-- 851 MHz CPU speed -->
+ <value>984000</value> <!-- 984 MHz CPU speed -->
+ <value>1106000</value> <!-- 1106 MHz CPU speed -->
+ <value>1277000</value> <!-- 1277 MHz CPU speed -->
+ <value>1426000</value> <!-- 1426 MHz CPU speed -->
+ <value>1582000</value> <!-- 1582 MHz CPU speed -->
+ <value>1745000</value> <!-- 1745 MHz CPU speed -->
+ <value>1826000</value> <!-- 1826 MHz CPU speed -->
+ <value>2048000</value> <!-- 2048 MHz CPU speed -->
+ <value>2188000</value> <!-- 2188 MHz CPU speed -->
+ <value>2252000</value> <!-- 2252 MHz CPU speed -->
+ <value>2401000</value> <!-- 2401 MHz CPU speed -->
+ <value>2507000</value> <!-- 2507 MHz CPU speed -->
+ <value>2630000</value> <!-- 2630 MHz CPU speed -->
+ <value>2704000</value> <!-- 2704 MHz CPU speed -->
+ <value>2802000</value> <!-- 2802 MHz CPU speed -->
</array>
+ <!-- Additional power used by a CPU core from cluster 0 when running at
+ different speeds, excluding cluster and active cost -->
<array name="cpu.core_power.cluster0">
- <value>13.58</value>
- <value>38.22</value>
- <value>48.59</value>
- <value>64.02</value>
- <value>79.69</value>
- <value>89.66</value>
- <value>105.64</value>
- <value>113.30</value>
- <value>142.24</value>
- <value>158.91</value>
- <value>180.73</value>
- <value>229.19</value>
- <value>266.66</value>
+ <value>1.89</value> <!-- 300 MHz CPU speed -->
+ <value>6.15</value> <!-- 574 MHz CPU speed -->
+ <value>9.34</value> <!-- 738 MHz CPU speed -->
+ <value>14.22</value> <!-- 930 MHz CPU speed -->
+ <value>18.94</value> <!-- 1098 MHz CPU speed -->
+ <value>21.98</value> <!-- 1197 MHz CPU speed -->
+ <value>26.83</value> <!-- 1328 MHz CPU speed -->
+ <value>30.17</value> <!-- 1401 MHz CPU speed -->
+ <value>41.55</value> <!-- 1598 MHz CPU speed -->
+ <value>48.36</value> <!-- 1704 MHz CPU speed -->
+ <value>58.45</value> <!-- 1803 MHz CPU speed -->
</array>
+ <!-- Additional power used by a CPU core from cluster 1 when running at
+ different speeds, excluding cluster and active cost -->
<array name="cpu.core_power.cluster1">
- <value>59.00</value>
- <value>87.69</value>
- <value>114.54</value>
- <value>134.19</value>
- <value>157.72</value>
- <value>184.69</value>
- <value>229.99</value>
- <value>264.08</value>
- <value>316.56</value>
- <value>375.74</value>
- <value>450.94</value>
- <value>529.79</value>
- <value>603.34</value>
- <value>684.48</value>
+ <value>3.71</value> <!-- 400 MHz CPU speed -->
+ <value>6.16</value> <!-- 553 MHz CPU speed -->
+ <value>8</value> <!-- 696 MHz CPU speed -->
+ <value>10.94</value> <!-- 799 MHz CPU speed -->
+ <value>12.73</value> <!-- 910 MHz CPU speed -->
+ <value>14.4</value> <!-- 1024 MHz CPU speed -->
+ <value>21.39</value> <!-- 1197 MHz CPU speed -->
+ <value>24.1</value> <!-- 1328 MHz CPU speed -->
+ <value>30.42</value> <!-- 1491 MHz CPU speed -->
+ <value>42.49</value> <!-- 1663 MHz CPU speed -->
+ <value>49.37</value> <!-- 1836 MHz CPU speed -->
+ <value>58.09</value> <!-- 1999 MHz CPU speed -->
+ <value>67.54</value> <!-- 2130 MHz CPU speed -->
+ <value>79.04</value> <!-- 2253 MHz CPU speed -->
</array>
+ <!-- Additional power used by a CPU core from cluster 2 when running at
+ different speeds, excluding cluster and active cost -->
<array name="cpu.core_power.cluster2">
- <value>199.11</value>
- <value>332.32</value>
- <value>389.40</value>
- <value>452.85</value>
- <value>547.22</value>
- <value>629.93</value>
- <value>735.84</value>
- <value>861.23</value>
- <value>946.15</value>
- <value>1137.98</value>
- <value>1318.48</value>
- <value>1396.56</value>
- <value>1583.05</value>
- <value>1811.61</value>
- <value>2050.00</value>
+ <value>8.36</value> <!-- 500 MHz CPU speed -->
+ <value>16.33</value> <!-- 851 MHz CPU speed -->
+ <value>19.44</value> <!-- 984 MHz CPU speed -->
+ <value>36.71</value> <!-- 1106 MHz CPU speed -->
+ <value>41.42</value> <!-- 1277 MHz CPU speed -->
+ <value>48.24</value> <!-- 1426 MHz CPU speed -->
+ <value>54.77</value> <!-- 1582 MHz CPU speed -->
+ <value>65.32</value> <!-- 1745 MHz CPU speed -->
+ <value>69.58</value> <!-- 1826 MHz CPU speed -->
+ <value>128.49</value> <!-- 2048 MHz CPU speed -->
+ <value>142.15</value> <!-- 2188 MHz CPU speed -->
+ <value>149.74</value> <!-- 2252 MHz CPU speed -->
+ <value>164.78</value> <!-- 2401 MHz CPU speed -->
+ <value>188.68</value> <!-- 2507 MHz CPU speed -->
+ <value>193.15</value> <!-- 2630 MHz CPU speed -->
+ <value>227.98</value> <!-- 2704 MHz CPU speed -->
+ <value>254.25</value> <!-- 2802 MHz CPU speed -->
</array>
<!-- Additional power used when screen is ambient mode -->
diff --git a/raven/overlay/frameworks/base/packages/SystemUI/res/values/dimens.xml b/raven/overlay/frameworks/base/packages/SystemUI/res/values/dimens.xml
index fb6ecc9..6d0894d 100644
--- a/raven/overlay/frameworks/base/packages/SystemUI/res/values/dimens.xml
+++ b/raven/overlay/frameworks/base/packages/SystemUI/res/values/dimens.xml
@@ -16,9 +16,6 @@
*/
-->
<resources>
- <!-- for 20dp of padding at 3.5px/dp at default density -->
- <dimen name="rounded_corner_content_padding">50px</dimen>
-
<!-- the padding on the top of the statusbar (usually 0) -->
<dimen name="status_bar_padding_top">1px</dimen>
diff --git a/raven/overlay/packages/services/AlternativeNetworkAccess/res/values/config.xml b/raven/overlay/packages/services/AlternativeNetworkAccess/res/values/config.xml
new file mode 100644
index 0000000..46c95af
--- /dev/null
+++ b/raven/overlay/packages/services/AlternativeNetworkAccess/res/values/config.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2021 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.
+-->
+<resources>
+ <bool name="enable_ons_auto_provisioning">true</bool>
+</resources>
diff --git a/slider/BoardConfig.mk b/slider/BoardConfig.mk
index 887ecbe..82425d2 100644
--- a/slider/BoardConfig.mk
+++ b/slider/BoardConfig.mk
@@ -21,4 +21,5 @@
BOARD_BOOTCONFIG += androidboot.selinux=permissive
include device/google/gs101/BoardConfig-common.mk
+include device/google/gs101/wifi/BoardConfig-wifi.mk
-include vendor/google_devices/gs101/prebuilts/BoardConfigVendor.mk
diff --git a/whitefin/BoardConfig.mk b/whitefin/BoardConfig.mk
index e042336..5b5a07a 100644
--- a/whitefin/BoardConfig.mk
+++ b/whitefin/BoardConfig.mk
@@ -21,4 +21,5 @@
BOARD_BOOTCONFIG += androidboot.selinux=permissive
include device/google/gs101/BoardConfig-common.mk
+include device/google/gs101/wifi/BoardConfig-wifi.mk
-include vendor/google_devices/gs101/prebuilts/BoardConfigVendor.mk