43 Commits
vic ... bka

Author SHA1 Message Date
fd417e9708 pantah: Initialize for Evolution X 11.x
Signed-off-by: AnierinB <anierin@evolution-x.org>

panthah: Fix status bar padding
Signed-off-by: AnierinB <anierin@evolution-x.org>
2025-09-26 04:54:22 +00:00
LuK1337
7adf23061a pantah: We don't support udfps touch handler
This commit fixes broken UDFPS on gs101/gs201/zuma. The breakage is a
combination of two changes: The A16 UDFPS HAL fallback switching from
false to true, and the introduction of
`topic:fingerprint-halHandlesDisplayTouches`.

When HAL sets halHandlesDisplayTouches to true, its onPointerDown() /
onPointerUp() methods won't be called, which in this case will simply
break it.

This went unnoticed on Android 15 because the HAL defaulted to false and
the fps_touch_handler_supported property was not set.

Change-Id: If24475b5f14b7f02b90774be6acf20865285f1ab
Signed-off-by: AnierinB <anierin@evolution-x.org>
2025-08-28 21:09:05 +00:00
Michael Bestas
e976b849ec pantah: Drop prebuilt kernel dependency
Change-Id: I3b474210eb4c0e339d8fdb5dce07ca7718e3b485
2025-08-28 16:16:02 +03:00
Michael Bestas
da30d294e9 Update fingerprint/build description from BP2A.250805.005
Change-Id: I5fc205cf4ba3d45be65405bcc4847aec60cd5ab0
2025-08-13 02:22:25 +00:00
Michael Bestas
dcd1618102 Update fingerprint/build description from BP2A.250705.008
Change-Id: Ife9a5d07de7dc6b2e08963a68f033c4231495d44
2025-07-09 16:02:42 +03:00
Michael Bestas
11eac5db32 pantah: Drop flood control HAL
We are missing the sepolicy for it and it's disabled

Change-Id: I22f2055e74ecfd3115cd035e685245ca0d6202e2
2025-06-26 10:18:44 +03:00
Michael Bestas
e104440fe5 pantah: Drop deprecated com.android.vndk.current.on_vendor
Change-Id: I9e5827ebf0aa0438d85f16db55273c7c7306c9e0
2025-06-26 10:18:44 +03:00
Michael Bestas
7b2692ce56 pantah: Remove non-existent vendor includes
Change-Id: I1bc76430d30259984f4eb91907be61ef39646c27
2025-06-26 10:18:44 +03:00
Michael Bestas
e11dc4e1c9 pantah: Remove userdebug/eng configuration
Change-Id: I3739e6e099681c667c80723f0f6e3197923ff762
2025-06-26 10:18:44 +03:00
Michael Bestas
9af3b65a4f pantah: Remove factory scripts & self-extractors
Change-Id: I64f34481d9d3a41f5c01b5a9a3cd27db2cd10866
2025-06-26 10:18:44 +03:00
Michael Bestas
cfb0d5fe2c pantah: Remove all boards except cheetah/panther
Change-Id: Ib34dd38d55f39e9a61c0f61d9c659e07494177a1
2025-06-26 10:18:43 +03:00
Michael Bestas
ecf4feae3a pantah: Remove AOSP gerrit configuration
Change-Id: I3bf3987b08a710ddf278cae5243946fae70fce6a
2025-06-26 10:18:43 +03:00
Michael Bestas
73aca2ed6d Update fingerprint/build description from BP2A.250605.031.A2
Change-Id: I498c559fb272b2070b40c8d8ea207415adff6940
2025-06-26 10:18:43 +03:00
Michael Bestas
293aa36532 pantah: Update UWB calibration from BP2A
Change-Id: I5114b07f04d1870abdd85170c9e1aaa9ac9d40d6
2025-06-23 21:56:12 +03:00
Michael Bestas
eff8d716df pantah: Update powerhint.json from BP2A
Change-Id: I3aa8cb97c1bc2fdbedb6783a11b99e6c759caa41
2025-06-23 21:56:12 +03:00
Michael Bestas
3a421bd14f pantah: Update gps configuration from BP2A
Change-Id: If17af64c96227a9655a0e6e287cc311bd62b4c4f
2025-06-23 21:56:12 +03:00
Michael Bestas
708d76f287 pantah: Update bluetooth configuration from BP2A
Change-Id: I2d7a821a558e9074d1e45465110dd9cdae43702f
2025-06-23 21:56:12 +03:00
Michael Bestas
f63b91d235 pantah: Update proprietary files setup for 16
Change-Id: I915a8192f5694d03ddbd2a6d4c6ea5033669500a
2025-06-23 21:56:11 +03:00
Michael Bestas
e5c987ca81 Merge tag 'aml_tz6_351400020' into staging/lineage-23.0_merge-aml_tz6_351400020
aml_tz6_351400020 (13155446,com.google.android.go.tzdata6,com.google.android.tzdata6)

# -----BEGIN PGP SIGNATURE-----
#
# iF0EABECAB0WIQRDQNE1cO+UXoOBCWTorT+BmrEOeAUCZ9i73wAKCRDorT+BmrEO
# eFbRAJ0S0/Zi4ZB/oWewusf8lsWMr+5bUACfSu9piWiaNneuN5Hc0GqsnCnu0Ik=
# =24wO
# -----END PGP SIGNATURE-----
# gpg: Signature made Tue Mar 18 02:18:39 2025 EET
# gpg:                using DSA key 4340D13570EF945E83810964E8AD3F819AB10E78
# gpg: Good signature from "The Android Open Source Project <initial-contribution@android.com>" [ultimate]

# By guibing (2) and others
# Via Android Build Coastguard Worker (9) and others
* tag 'aml_tz6_351400020':
  Remove old unused VINTF manifest file
  Enable BQR vendor snoop log
  ADPF:pantah: use tagged ADPF profile for SYSTEM_UI.
  ADPF:pantah: remove unused adpf profiles.
  Hide LE audio toggle for ASHA device on P22
  powerhint: Mask hints in AA and DISPLAY_IDLE
  Enable open source multi akm for specific Broadcom project
  thermal: Remove bcl related tzones
  Disable Bluetooth Hearing Access Profile default enable for P22
  Vibrator: Add permissions for owt_lib_compat

 Conflicts:
	aosp_cheetah.mk
	aosp_panther.mk

Change-Id: I5edff58c766bd8efb73f4b15a1f917a7fc8c97ba
2025-06-23 05:20:48 +03:00
Android Build Coastguard Worker
db8d72d758 Snap for 13025264 from 6c335f493e to mainline-tzdata6-release
Change-Id: I0b4f3d6d3469681d35e7c3bb19716e79ee62e3a8
2025-02-06 14:21:27 -08:00
Devin Moore
6c335f493e Remove old unused VINTF manifest file am: 57138c70b5 am: f7e9cfe37a
Original change: https://android-review.googlesource.com/c/device/google/pantah/+/3478207

Change-Id: Ib72c66f5581fba4930feaa8cd81b42c023e53c91
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2025-02-06 03:30:25 -08:00
Devin Moore
f7e9cfe37a Remove old unused VINTF manifest file am: 57138c70b5
Original change: https://android-review.googlesource.com/c/device/google/pantah/+/3478207

Change-Id: Iac448f7c20fcc89f5f2db237e971320dc1c8b1e4
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2025-02-06 03:05:11 -08:00
Devin Moore
57138c70b5 Remove old unused VINTF manifest file
This file is out of date and unused, so remove it.
It's targeting Android R FCM and declaring old HIDL versions of HALs
that these devices do not use.

Test: m
Bug: 388074589
Change-Id: I68d1254031455d020cbb813021c63ea54e38689b
2025-02-05 21:44:35 +00:00
Barry
cb3fc7c93c Enable BQR vendor snoop log
Enable BQR vendor snoop log and enable enable Vendor Specific Quality
event(s)

Bug: 393493640
Test: Manual Test
Flag: EXEMPT system prop update
Change-Id: I260cedd9b4af909427292e38503c04c47f98fe9c
2025-02-05 07:14:12 -08:00
guibing
828326837b ADPF:pantah: use tagged ADPF profile for SYSTEM_UI.
- Add a event node for SYSTEM_UI;
- Add a separate SYSTEM_UI profile.

Bug: 393196667
Test: adb shell dumpsys android.hardware.power.IPower/default
Flag: NONE powerhal doesn't have a flag yet
Change-Id: I21b94cbe664728935d40976942861c3255054866
2025-02-03 19:16:15 +00:00
guibing
e3834b8564 ADPF:pantah: remove unused adpf profiles.
Bug: 393196667
Test: adb shell dumpsys android.hardware.power.IPower/default
Flag: NONE powerhal doesn't have a flag yet
Change-Id: I7b90d90300491fd8ca4cbda9c784a6a03c05ef32
2025-02-03 19:04:25 +00:00
Angela Wang
4bc66f68e2 Hide LE audio toggle for ASHA device on P22
Set bluetooth.leaudio.toggle_for_asha to false

Flag: EXEMPT properties change only
Bug: 390070780
Test: m
Change-Id: I5bd83a67dc6d31476d9de2565b73c4208a20b372
2025-01-20 01:14:32 -08:00
Paulsu Su
ff6d0e8c9e powerhint: Mask hints in AA and DISPLAY_IDLE
This CL adds a powerhint for AA mode to mask storming hint. DISPLAY_IDLE masks DISPLAY_UPDATE_IMMINENT and CPU_LOAD_RESET when Android Auto property is set. When navigation in Android Auto, the two hint with action to boost memlat is costly.

Bug: 380188115  
Change-Id: I825a56ac32a0ecdc8b441af9cb64e81b1d04f9a6
Test: Local test with desktop_head_unit_internal
Flag: EXEMPT powerhint change
2025-01-15 00:41:23 -08:00
Isaac Chiou
a038d3df73 Enable open source multi akm for specific Broadcom project
For cross akm roaming function, we have two ways in supplicant :
1. Open source way.
2. Broadcom specific way.

Originally, Broadcom projects follow way 2 due to the limitation of the driver.
For now, we plan to move all Broadcom projects to follow way 1 to make supplicant code clean and downsteam without conflict.

For those projects which is ready for way 1, we control it to follow way 1 with WIFI_BRCM_OPEN_SOURCE_MULTI_AKM config.
For the rest of Broadcom projects, we still follow way 2 until the multiple AKMs is fully supported by driver and verified.

For ongoing Broadcom project, we also need to exercise the open source path in supplicant to do multiple AKM configuration to comply with WFA Wifi 7 AKM24 specification (b/331896542 ).

Bug: 246871098
Test: AU drop test
Test: Cross AKM roaming test
Flag: EXEMPT enable control flag for aosp akms
Change-Id: I57fadcc164b23d6bdb85a0909d23dfa32fc71b12
2025-01-14 18:42:41 -08:00
samou
769b5b1177 thermal: Remove bcl related tzones
Flag: EXEMPT tuning changes
Test: Confirm boot
Bug: 389568268
Change-Id: I83d55df0e8065ab9ef10348e5fbbdf2a48cacb6a
Signed-off-by: samou <samou@google.com>
2025-01-13 19:52:43 -08:00
Android Build Coastguard Worker
0f7e7a53d5 Snap for 12872597 from 640c3160c9 to mainline-tzdata6-release
Change-Id: I13e52155bd9426393b14ffe8c2e82f63d8b2a950
2025-01-06 04:35:49 -08:00
Tommy Chang
640c3160c9 Disable Bluetooth Hearing Access Profile default enable for P22
Set bluetooth.profile.hap.enabled_by_default to false

bug: 386323913
Test: m
Flag: EXEMPT, properties change only for feature config
Change-Id: I1f7898f9fedefff9b64cbb51b5fbb177b87d57e4
2024-12-30 00:31:10 -08:00
Xin Li
1a1577159b [automerger skipped] Merge 24Q4 into AOSP main am: 57417a8bc1 -s ours am: 0ee4817514 -s ours
am skip reason: Merged-In I9590c44abb8cc1a2334ad4c882683db277662ef0 with SHA-1 eb703190ba is already in history

Original change: https://googleplex-android-review.googlesource.com/c/device/google/pantah/+/29694489

Change-Id: Iab9aeef820861c56bda357520e328bf22fa078bf
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-12-13 20:57:38 -08:00
Xin Li
0ee4817514 [automerger skipped] Merge 24Q4 into AOSP main am: 57417a8bc1 -s ours
am skip reason: Merged-In I9590c44abb8cc1a2334ad4c882683db277662ef0 with SHA-1 eb703190ba is already in history

Original change: https://android-review.googlesource.com/c/device/google/pantah/+/3413781

Change-Id: I3a9f88c2c3bcb53f9b5c4f5abbab69bf81496eb2
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-12-13 19:10:34 -08:00
Xin Li
57417a8bc1 Merge 24Q4 into AOSP main
Bug: 370570306
Merged-In: I9590c44abb8cc1a2334ad4c882683db277662ef0
Change-Id: Ia59bc28357acde4ff3f6c17a3c5489955daa2323
2024-12-13 11:15:10 -08:00
Nathan Kulczak
9788538100 Vibrator: Add permissions for owt_lib_compat
Add permissions to access owt_lib_compat sysfs attribute

Bug: 346570576
Flag: vendor.vibrator.hal.flags.enable_pwle_v2
Test: Flash to device and use access sysfs
Change-Id: Ic86d17458f0c97b1a1a91fbfcf718fc8d4d6d7ba
Signed-off-by: Nathan Kulczak <nathankulczak@google.com>
2024-12-10 17:44:21 +00:00
Android Build Coastguard Worker
97b6ab3465 Snap for 12605939 from 38c5d366ef to mainline-tzdata6-release
Change-Id: Icf4f1a01a72361bb23be8d16c8b2bddf21066b91
2024-11-05 10:10:12 +00:00
Android Build Coastguard Worker
8ab2935272 Snap for 12462067 from 8dbfc347b8 to mainline-tzdata6-release
Change-Id: I4ea75f532d212c1433e13375ff00862ff25ea205
2024-10-07 08:59:09 +00:00
Android Build Coastguard Worker
4498f59c64 Snap for 12238800 from c12283dc31 to mainline-tzdata6-release
Change-Id: I68400292b50f61b6adb88cc15aa7cc2222edc53d
2024-08-16 12:59:22 +00:00
Android Build Coastguard Worker
d1301bd1d4 Snap for 12034474 from d3d2c4e680 to mainline-tzdata6-release
Change-Id: I498454d6554dc0119a9bcbb9e3367dab8c74d6da
2024-07-01 08:34:58 +00:00
Android Build Coastguard Worker
67d3e05127 Snap for 11947112 from d6e1c7e636 to mainline-tzdata6-release
Change-Id: I2c59fa93b97dfb5cfa6cd4f3263504e801ec21c2
2024-06-10 10:13:02 +00:00
Android Build Coastguard Worker
93e60667f6 Snap for 11919022 from 517524f2d3 to mainline-tzdata6-release
Change-Id: I28f6f10d0d9fd404586b44034085475eb2f84c7b
2024-06-03 15:31:00 +00:00
Android Build Coastguard Worker
7f88841fd6 Snap for 11607654 from c33899b653 to mainline-tzdata6-release
Change-Id: I1520a928c9779c11572a4358bf21cf049a4a4ca5
2024-03-21 12:27:30 +00:00
242 changed files with 1822 additions and 1644464 deletions

View File

@@ -15,23 +15,7 @@
#
PRODUCT_MAKEFILES := \
$(LOCAL_DIR)/aosp_cloudripper.mk \
$(LOCAL_DIR)/factory_cloudripper.mk \
$(LOCAL_DIR)/aosp_ravenclaw.mk \
$(LOCAL_DIR)/factory_ravenclaw.mk \
$(LOCAL_DIR)/aosp_cheetah.mk \
$(LOCAL_DIR)/aosp_cheetah_hwasan.mk \
$(LOCAL_DIR)/factory_cheetah.mk \
$(LOCAL_DIR)/aosp_panther.mk \
$(LOCAL_DIR)/aosp_panther_hwasan.mk \
$(LOCAL_DIR)/factory_panther.mk \
$(LOCAL_DIR)/lineage_cheetah.mk \
$(LOCAL_DIR)/lineage_panther.mk
COMMON_LUNCH_CHOICES := \
aosp_cloudripper-trunk_staging-userdebug \
aosp_ravenclaw-trunk_staging-userdebug \
aosp_cheetah-trunk_staging-userdebug \
aosp_cheetah_hwasan-trunk_staging-userdebug \
aosp_panther-trunk_staging-userdebug \
aosp_panther_hwasan-trunk_staging-userdebug

4
BoardConfigEvolution.mk Normal file
View File

@@ -0,0 +1,4 @@
#
# SPDX-FileCopyrightText: 2024 The Evolution X Project
# SPDX-License-Identifier: Apache-2.0
#

4
OWNERS
View File

@@ -1,4 +0,0 @@
per-file powerhint-*.json = jychen@google.com,jenhaochen@google.com,wvw@google.com,joaodias@google.com
# per-file for Pixel device makefiles, see go/pixel-device-mk-owner-checklist for details.
per-file *.mk,*/BoardConfig.mk,{**/,}Android.bp=file:device/google/gs-common:main:/MK_OWNERS

View File

@@ -1,2 +0,0 @@
[Builtin Hooks]
jsonlint = true

View File

@@ -27,12 +27,3 @@ PRODUCT_DEVICE := cheetah
PRODUCT_MODEL := AOSP on Cheetah
PRODUCT_BRAND := Android
PRODUCT_MANUFACTURER := Google
DEVICE_MANIFEST_FILE := \
device/google/pantah/manifest.xml
# Keep the VNDK APEX in /system partition for REL branches as these branches are
# expected to have stable API/ABI surfaces.
ifneq (REL,$(PLATFORM_VERSION_CODENAME))
PRODUCT_PACKAGES += com.android.vndk.current.on_vendor
endif

View File

@@ -1,23 +0,0 @@
#
# Copyright 2023 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
$(call inherit-product, device/google/pantah/aosp_cheetah.mk)
PRODUCT_NAME := aosp_cheetah_hwasan
# Add "hwaddress" as a global sanitizer if it's missing.
ifeq ($(filter hwaddress,$(SANITIZE_TARGET)),)
SANITIZE_TARGET := $(strip $(SANITIZE_TARGET) hwaddress)
endif

View File

@@ -1,32 +0,0 @@
#
# Copyright 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.
#
TARGET_LINUX_KERNEL_VERSION := 5.10
USE_SWIFTSHADER := true
BOARD_USES_SWIFTSHADER := true
$(call inherit-product, device/google/gs201/aosp_common.mk)
$(call inherit-product, device/google/pantah/device-cloudripper.mk)
PRODUCT_NAME := aosp_cloudripper
PRODUCT_DEVICE := cloudripper
PRODUCT_MODEL := AOSP on cloudripper
PRODUCT_BRAND := Android
PRODUCT_MANUFACTURER := Google
DEVICE_MANIFEST_FILE := \
device/google/pantah/manifest.xml

View File

@@ -27,12 +27,3 @@ PRODUCT_DEVICE := panther
PRODUCT_MODEL := AOSP on Panther
PRODUCT_BRAND := Android
PRODUCT_MANUFACTURER := Google
DEVICE_MANIFEST_FILE := \
device/google/pantah/manifest.xml
# Keep the VNDK APEX in /system partition for REL branches as these branches are
# expected to have stable API/ABI surfaces.
ifneq (REL,$(PLATFORM_VERSION_CODENAME))
PRODUCT_PACKAGES += com.android.vndk.current.on_vendor
endif

View File

@@ -1,23 +0,0 @@
#
# Copyright 2023 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
$(call inherit-product, device/google/pantah/aosp_panther.mk)
PRODUCT_NAME := aosp_panther_hwasan
# Add "hwaddress" as a global sanitizer if it's missing.
ifeq ($(filter hwaddress,$(SANITIZE_TARGET)),)
SANITIZE_TARGET := $(strip $(SANITIZE_TARGET) hwaddress)
endif

View File

@@ -1,33 +0,0 @@
#
# Copyright 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.
#
TARGET_LINUX_KERNEL_VERSION := 5.10
USE_SWIFTSHADER := true
BOARD_USES_SWIFTSHADER := true
BOARD_WITHOUT_RADIO := true
$(call inherit-product, device/google/gs201/aosp_common.mk)
$(call inherit-product, device/google/pantah/device-ravenclaw.mk)
PRODUCT_NAME := aosp_ravenclaw
PRODUCT_DEVICE := ravenclaw
PRODUCT_MODEL := AOSP on Ravenclaw
PRODUCT_BRAND := Android
PRODUCT_MANUFACTURER := Google
DEVICE_MANIFEST_FILE := \
device/google/pantah/manifest.xml

View File

@@ -64,26 +64,3 @@ PRODUCT_COPY_FILES += \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia_stereo/mcps.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/mcps.dat \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/waves_config.ini:$(TARGET_COPY_OUT_VENDOR)/etc/waves_config.ini \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/waves_preset.mps:$(TARGET_COPY_OUT_VENDOR)/etc/waves_preset.mps
# eng specific
ifneq (,$(filter eng, $(TARGET_BUILD_VARIANT)))
PRODUCT_COPY_FILES += \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia_stereo/BLUETOOTH.mods:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/BLUETOOTH.mods \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia_stereo/HANDSFREE.mods:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HANDSFREE.mods \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia_stereo/HANDSET.mods:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HANDSET.mods \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia_stereo/HEADSET.mods:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HEADSET.mods
#Bluenote files
PRODUCT_COPY_FILES += \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/bluenote/template.xml:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/template.xml \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/bluenote/tuning_constraints_combination.xml:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/tuning_constraints_combination.xml
# Mixer Path Configuration for Audio Speaker Calibration Tool crus_sp_cal
PRODUCT_COPY_FILES += \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/cs35l41/crus_sp_cal_mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/crus_sp_cal_mixer_paths.xml
PRODUCT_COPY_FILES += \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/tests/test_config.ini:$(TARGET_COPY_OUT_VENDOR)/etc/test_config.ini \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/tests/test_preset.mps:$(TARGET_COPY_OUT_VENDOR)/etc/test_preset.mps
endif

View File

@@ -1,388 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<mixer>
<ctl name="TDM_0_RX Mixer EP3" value="0" />
<ctl name="TDM_0_RX Mixer EP6" value="0" />
<ctl name="I2S_0_RX Mixer EP3" value="0" />
<ctl name="Main AMP Enable Switch" value="0" />
<ctl name="R Main AMP Enable Switch" value="0" />
<ctl name="MIC HW Gain At Lower Power Mode (cB)" value="-160" />
<ctl name="MIC HW Gain At High Power Mode (cB)" value="0" />
<ctl name="MIC Record Soft Gain (dB)" value="0"/>
<ctl name="EP1 TX Mixer TDM_0_TX" value="0" />
<ctl name="DEFAULT_MIC_ID" value="0" />
<ctl name="MIC0" value="0" />
<ctl name="MIC1" value="0" />
<ctl name="MIC2" value="0" />
<ctl name="MIC3" value="0" />
<ctl name="AoC Speaker Mixer ASP Mode" value="ASP_ON" />
<ctl name="TDM_0_RX Mixer US" value="0" />
<ctl name="US Record Enable" value="0" />
<path name="mfg-playback">
</path>
<path name="deep-buffer-playback speaker">
<ctl name="AoC Speaker Mixer ASP Mode" value="ASP_BYPASS" />
<ctl name="TDM_0_RX Mixer EP6" value="1" />
<path name="mfg-playback" />
</path>
<path name="deep-buffer-playback headphones">
<ctl name="I2S_0_RX Mixer EP6" value="1" />
<path name="mfg-playback" />
</path>
<path name="mfg-record">
<ctl name="EP1 TX Mixer TDM_0_TX" value="1" />
</path>
<path name="mfg-record usb-headset-mic">
<ctl name="Audio Capture Mic Source" value="USB_MIC"/>
<ctl name="USB Capture FORMAT v2" value="1" />
<ctl name="USB Config To AoC v2" value="1"/>
<ctl name="EP1 TX Mixer USB_TX" value="1"/>
</path>
<path name="us-mfg-record">
<ctl name="US Record Enable" value="1" />
<ctl name="EP1 TX Mixer TDM_0_TX" value="1" />
</path>
<path name="mic1-status">
<ctl name="MIC0" value="1" />
</path>
<path name="mic2-status">
<ctl name="MIC1" value="1" />
</path>
<path name="mic3-status">
<ctl name="MIC2" value="1" />
</path>
<path name="mic4-status">
<ctl name="MIC3" value="0" />
</path>
<path name="mic1-gain">
<ctl name="MIC HW Gain At Lower Power Mode (cB)" />
<ctl name="MIC HW Gain At High Power Mode (cB)" />
</path>
<path name="mic2-gain">
<ctl name="MIC HW Gain At Lower Power Mode (cB)" />
<ctl name="MIC HW Gain At High Power Mode (cB)" />
</path>
<path name="mic3-gain">
<ctl name="MIC HW Gain At Lower Power Mode (cB)" />
<ctl name="MIC HW Gain At High Power Mode (cB)" />
</path>
<path name="mic4-gain">
<ctl name="MIC HW Gain At Lower Power Mode (cB)" />
<ctl name="MIC HW Gain At High Power Mode (cB)" />
</path>
<path name="mic1-sw-gain">
<ctl name="MIC Record Soft Gain (dB)" />
</path>
<path name="mic2-sw-gain">
<ctl name="MIC Record Soft Gain (dB)" />
</path>
<path name="mic3-sw-gain">
<ctl name="MIC Record Soft Gain (dB)" />
</path>
<path name="mic4-sw-gain">
<ctl name="MIC Record Soft Gain (dB)" />
</path>
<path name="usb-capture-gain">
<ctl name="MIC Record Soft Gain (dB)" />
</path>
<path name="mic1-only">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="-1" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="-1" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1" />
<ctl name="MIC0" value="1" />
<ctl name="MIC Record Soft Gain (dB)" value="0" />
</path>
<path name="mic2-only">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="3" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="-1" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="-1" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1" />
<ctl name="MIC1" value="1" />
<ctl name="MIC Record Soft Gain (dB)" value="0" />
</path>
<path name="mic3-only">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="2" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="-1" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="-1" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1" />
<ctl name="MIC2" value="1" />
<ctl name="MIC Record Soft Gain (dB)" value="0" />
</path>
<path name="mic4-only">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="3" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="-1" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="-1" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1" />
<ctl name="MIC3" value="0" />
<ctl name="MIC Record Soft Gain (dB)" value="0" />
</path>
<path name="mic-all">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1" />
<ctl name="MIC0" value="1" />
<ctl name="MIC1" value="1" />
<ctl name="MIC2" value="1" />
<ctl name="MIC3" value="0" />
<ctl name="MIC Record Soft Gain (dB)" value="0" />
</path>
<path name="amp_iv-only">
<ctl name="R ASPTX1 Slot Position" value="2" />
<ctl name="R ASPTX2 Slot Position" value="3" />
<ctl name="R ASPTX3 Slot Position" value="6" />
<ctl name="R ASPTX4 Slot Position" value="7" />
<ctl name="ASPTX1 Slot Position" value="0" />
<ctl name="ASPTX2 Slot Position" value="1" />
<ctl name="ASPTX3 Slot Position" value="4" />
<ctl name="ASPTX4 Slot Position" value="5" />
<ctl name="R ASP TX1 Source" value="VMON" />
<ctl name="R ASP TX2 Source" value="ASPRX1" />
<ctl name="R ASP TX3 Source" value="Zero" />
<ctl name="R ASP TX4 Source" value="Zero" />
<ctl name="ASP TX1 Source" value="VMON" />
<ctl name="ASP TX2 Source" value="ASPRX1" />
<ctl name="ASP TX3 Source" value="Zero" />
<ctl name="ASP TX4 Source" value="Zero" />
<ctl name="NoHost1 TX Mixer TDM_0_TX" value="1" />
</path>
<path name="amp_iv1-only">
<ctl name="R ASPTX1 Slot Position" value="4" />
<ctl name="R ASPTX2 Slot Position" value="5" />
<ctl name="R ASPTX3 Slot Position" value="6" />
<ctl name="R ASPTX4 Slot Position" value="7" />
<ctl name="ASPTX1 Slot Position" value="0" />
<ctl name="ASPTX2 Slot Position" value="1" />
<ctl name="ASPTX3 Slot Position" value="2" />
<ctl name="ASPTX4 Slot Position" value="3" />
<ctl name="R ASP TX1 Source" value="Zero" />
<ctl name="R ASP TX2 Source" value="Zero" />
<ctl name="R ASP TX3 Source" value="Zero" />
<ctl name="R ASP TX4 Source" value="Zero" />
<ctl name="ASP TX1 Source" value="VMON" />
<ctl name="ASP TX2 Source" value="IMON" />
<ctl name="ASP TX3 Source" value="VPMON" />
<ctl name="ASP TX4 Source" value="ASPRX1" />
<ctl name="NoHost1 TX Mixer TDM_0_TX" value="1" />
</path>
<path name="amp_iv2-only">
<ctl name="R ASPTX1 Slot Position" value="0" />
<ctl name="R ASPTX2 Slot Position" value="1" />
<ctl name="R ASPTX3 Slot Position" value="2" />
<ctl name="R ASPTX4 Slot Position" value="3" />
<ctl name="ASPTX1 Slot Position" value="4" />
<ctl name="ASPTX2 Slot Position" value="5" />
<ctl name="ASPTX3 Slot Position" value="6" />
<ctl name="ASPTX4 Slot Position" value="7" />
<ctl name="R ASP TX1 Source" value="VMON" />
<ctl name="R ASP TX2 Source" value="IMON" />
<ctl name="R ASP TX3 Source" value="VPMON" />
<ctl name="R ASP TX4 Source" value="ASPRX1" />
<ctl name="ASP TX1 Source" value="Zero" />
<ctl name="ASP TX2 Source" value="Zero" />
<ctl name="ASP TX3 Source" value="Zero" />
<ctl name="ASP TX4 Source" value="Zero" />
<ctl name="NoHost1 TX Mixer TDM_0_TX" value="1" />
</path>
<path name="us-amp_iv-only">
<ctl name="TDM_0_RX Sample Rate" value="SR_96K" />
<ctl name="TDM_0_TX Sample Rate" value="SR_96K" />
<path name="amp_iv-only" />
</path>
<path name="us-amp_iv1-only">
<ctl name="TDM_0_RX Sample Rate" value="SR_96K" />
<ctl name="TDM_0_TX Sample Rate" value="SR_96K" />
<path name="amp_iv1-only" />
</path>
<path name="us-amp_iv2-only">
<ctl name="TDM_0_RX Sample Rate" value="SR_96K" />
<ctl name="TDM_0_TX Sample Rate" value="SR_96K" />
<path name="amp_iv2-only" />
</path>
<path name="speaker1-status">
<ctl name="Main AMP Enable Switch" value="1" />
</path>
<path name="speaker2-status">
<ctl name="R Main AMP Enable Switch" value="1" />
</path>
<path name="speaker1-gain">
<ctl name="AMP PCM Gain" />
</path>
<path name="speaker2-gain">
<ctl name="R AMP PCM Gain" />
</path>
<path name="usb-playback-gain">
<ctl name="Headset Playback Volume" />
</path>
<path name="mfg-playback speaker">
<ctl name="AoC Speaker Mixer ASP Mode" value="ASP_BYPASS" />
<ctl name="TDM_0_RX Mixer EP3" value="1" />
<ctl name="ASPRX1 Slot Position" value="0" />
<ctl name="R ASPRX1 Slot Position" value="1" />
<ctl name="SINK_IDS" id="0" value="0" />
<ctl name="SINK_IDS" id="1" value="-1" />
</path>
<path name="mfg-playback headphones">
<ctl name="I2S_0_RX Chan" value="Two" />
<ctl name="I2S_0_RX Format" value="S32_LE" />
<ctl name="I2S_0_RX Mixer EP3" value="1" />
<ctl name="SINK_IDS" id="0" value="1" />
<ctl name="SINK_IDS" id="1" value="-1" />
</path>
<path name="mfg-playback usb-headphones">
<ctl name="USB Dev ID v2" value="2" />
<ctl name="USB Playback EP ID v2" value="1" />
<ctl name="USB Playback FORMAT v2" value="6" />
<ctl name="USB Playback SR v2" value="48000" />
<ctl name="USB Playback CH v2" value="2" />
<ctl name="USB Playback BW v2" value="16" />
<ctl name="USB Config To AoC v2" value="1" />
<ctl name="USB_RX Mixer EP3" value="1" />
</path>
<path name="us-mfg-playback speaker">
<ctl name="TDM_0_RX Sample Rate" value="SR_96K" />
<ctl name="TDM_0_TX Sample Rate" value="SR_96K" />
<ctl name="TDM_0_RX Mixer US" value="1" />
</path>
<path name="speaker1-only">
<ctl name="Main AMP Enable Switch" value="1" />
<path name="mfg-playback speaker" />
<ctl name="AMP PCM Gain" value="17" />
<ctl name="PCM Source" value="ASP" />
</path>
<path name="speaker2-only">
<ctl name="R Main AMP Enable Switch" value="1" />
<path name="mfg-playback speaker" />
<ctl name="R AMP PCM Gain" value="17" />
<ctl name="R PCM Source" value="ASP" />
</path>
<path name="us-speaker1-only">
<path name="us-mfg-playback speaker" />
<ctl name="PCM Source" value="ASP" />
<ctl name="Main AMP Enable Switch" value="1" />
</path>
<path name="us-speaker2-only">
<path name="us-mfg-playback speaker" />
<ctl name="R PCM Source" value="ASP" />
<ctl name="R Main AMP Enable Switch" value="1" />
</path>
<path name="headphones">
<ctl name="DAC1 MIXL DAC1 Switch" value="1" />
<ctl name="DAC1 MIXR DAC1 Switch" value="1" />
<ctl name="Stereo1 DAC MIXL DAC L1 Switch" value="1" />
<ctl name="Stereo1 DAC MIXR DAC R1 Switch" value="1" />
<ctl name="DAC L1 Source" value="Stereo1 DAC Mixer" />
<ctl name="DAC R1 Source" value="Stereo1 DAC Mixer" />
<ctl name="HPOL Playback Switch" value="1" />
<ctl name="HPOR Playback Switch" value="1" />
<path name="mfg-playback headphones" />
</path>
<path name="speaker-all">
<ctl name="Main AMP Enable Switch" value="1" />
<ctl name="PCM Source" value="ASP" />
<ctl name="R Main AMP Enable Switch" value="1" />
<ctl name="R PCM Source" value="ASP" />
<path name="mfg-playback speaker" />
</path>
<path name="us-speaker-all">
<path name="us-mfg-playback speaker" />
<ctl name="PCM Source" value="ASP" />
<ctl name="Main AMP Enable Switch" value="1" />
<ctl name="R PCM Source" value="ASP" />
<ctl name="R Main AMP Enable Switch" value="1" />
</path>
<path name="loopback-mic-speaker">
<ctl name="EP1 TX Mixer TDM_0_TX" value="1" />
<ctl name="SINK_IDS" id="0" value="0" />
<ctl name="SINK_IDS" id="1" value="-1" />
<path name="mfg-playback" />
</path>
<path name="loopback-mic-headphones">
<ctl name="EP1 TX Mixer TDM_0_TX" value="1" />
<ctl name="SINK_IDS" id="0" value="1" />
<ctl name="SINK_IDS" id="1" value="-1" />
<path name="mfg-playback" />
</path>
<path name="loopback-mic-usb-headphones">
<ctl name="MIC HW Gain At Lower Power Mode (cB)" value="-160" />
<ctl name="MIC HW Gain At High Power Mode (cB)" value="0" />
<ctl name="TDM_0_TX Format" value="S32_LE" />
<ctl name="TDM_0_TX Chan" value="One" />
<ctl name="EP1 TX Mixer TDM_0_TX" value="1" />
</path>
<path name="loopback-usb-mic-speaker">
<ctl name="Audio Capture Mic Source" value='USB_MIC' />
<ctl name="USB Capture FORMAT v2" value="1" />
<ctl name="MIC Record Soft Gain (dB)" value="0" />
</path>
<path name="loopback-usb-mic-usb-headphone">
<ctl name="Audio Capture Mic Source" value='USB_MIC' />
<ctl name="USB Capture FORMAT v2" value="1" />
<ctl name="MIC Record Soft Gain (dB)" value="0" />
</path>
<pcm_id name="loopback-mic1" value="EP1 capture (*)"/>
<pcm_id name="loopback-mic2" value="EP1 capture (*)"/>
<pcm_id name="loopback-mic3" value="EP1 capture (*)"/>
<pcm_id name="loopback-mic4" value="EP1 capture (*)"/>
<pcm_id name="loopback-speaker1" value="EP3 playback (*)"/>
<pcm_id name="loopback-speaker2" value="EP3 playback (*)"/>
<pcm_id name="loopback-speaker3" value="EP3 playback (*)"/>
<pcm_id name="loopback-headphones" value="EP3 playback (*)"/>
<pcm_id name="loopback-usb-headphones" value="EP3 playback (*)"/>
<pcm_id name="loopback-usb-mic" value="EP1 capture (*)"/>
<pcm_id name="loopback-amp_iv" value="nohost1 capture (*)"/>
</mixer>

View File

@@ -1,307 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Copyright (c) 2018-2020, The Linux Foundation. All rights reserved. -->
<!-- -->
<!-- Redistribution and use in source and binary forms, with or without -->
<!-- modification, are permitted provided that the following conditions are -->
<!-- met: -->
<!-- * Redistributions of source code must retain the above copyright -->
<!-- notice, this list of conditions and the following disclaimer. -->
<!-- * Redistributions in binary form must reproduce the above -->
<!-- copyright notice, this list of conditions and the following -->
<!-- disclaimer in the documentation and/or other materials provided -->
<!-- with the distribution. -->
<!-- * Neither the name of The Linux Foundation nor the names of its -->
<!-- contributors may be used to endorse or promote products derived -->
<!-- from this software without specific prior written permission. -->
<!-- -->
<!-- THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED -->
<!-- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -->
<!-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT -->
<!-- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS -->
<!-- BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -->
<!-- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -->
<!-- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR -->
<!-- BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -->
<!-- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN -->
<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -->
<mixer>
<!-- Initial Values -->
<!-- Preload Stage -->
<ctl name="Main AMP Enable Switch" value="0" />
<ctl name="DSP1 Preload Switch" value="0" />
<ctl name="R Main AMP Enable Switch" value="0" />
<ctl name="R DSP1 Preload Switch" value="0" />
<!-- Clock-trigger Stage -->
<ctl name="SINK_IDS" id="0" value="-1"/>
<ctl name="SINK_IDS" id="1" value="-1"/>
<ctl name="PCM Playback Volume" value="10"/>
<ctl name="TDM_0_RX Mixer EP6" value="0"/>
<!-- Preparation Stage -->
<path name="crus-switch-fw-prepare">
<ctl name="DRE DRE Switch" value="1" />
<ctl name="VBSTMON Output Switch" value="1" />
<ctl name="DSP Booted" value="0" />
<ctl name="DSP1 Preload Switch" value="0" />
<ctl name="R DRE DRE Switch" value="1" />
<ctl name="R VBSTMON Output Switch" value="1" />
<ctl name="R DSP Booted" value="0" />
<ctl name="R DSP1 Preload Switch" value="0" />
</path>
<!-- Preload Stage -->
<path name="crus-fw-preload">
<ctl name="DSP1 Preload Switch" value="1" />
<ctl name="R DSP1 Preload Switch" value="1" />
</path>
<!-- Firmware-switching Stage -->
<path name="crus-switch-fw-Calibration">
<ctl name="AMP PCM Gain" value="17" />
<ctl name="Digital PCM Volume" value="817" />
<ctl name="PCM Source" value="DSP" />
<ctl name="DSP1 Firmware" value="Calibration" />
<ctl name="R AMP PCM Gain" value="17" />
<ctl name="R Digital PCM Volume" value="817" />
<ctl name="R PCM Source" value="DSP" />
<ctl name="R DSP1 Firmware" value="Calibration" />
</path>
<path name="crus-switch-fw-Diagnostic">
<ctl name="AMP PCM Gain" value="17" />
<ctl name="Digital PCM Volume" value="817" />
<ctl name="PCM Source" value="DSP" />
<ctl name="DSP1 Firmware" value="Diagnostic" />
<ctl name="R AMP PCM Gain" value="17" />
<ctl name="R Digital PCM Volume" value="817" />
<ctl name="R PCM Source" value="DSP" />
<ctl name="R DSP1 Firmware" value="Diagnostic" />
</path>
<path name="crus-switch-fw-Protection">
<ctl name="PCM Source" value="DSP" />
<ctl name="DSP1 Firmware" value="Protection" />
<ctl name="R PCM Source" value="DSP" />
<ctl name="R DSP1 Firmware" value="Protection" />
</path>
<!-- DSP-initialization Stage -->
<path name="crus-dsp-pre-calibration-amp1">
<ctl name="Main AMP Enable Switch" value="1" />
</path>
<path name="crus-dsp-pre-calibration-amp2">
<ctl name="R Main AMP Enable Switch" value="1" />
</path>
<path name="crus-dsp-pre-calibration">
<path name="crus-dsp-pre-calibration-amp1" />
<path name="crus-dsp-pre-calibration-amp2" />
</path>
<path name="crus-dsp-pre-diagnostic-amp1">
<ctl name="Main AMP Enable Switch" value="1" />
</path>
<path name="crus-dsp-pre-diagnostic-amp2">
<ctl name="R Main AMP Enable Switch" value="1" />
</path>
<path name="crus-dsp-pre-diagnostic">
<path name="crus-dsp-pre-diagnostic-amp1" />
<path name="crus-dsp-pre-diagnostic-amp2" />
</path>
<path name="crus-dsp-pre-protection">
<ctl name="Main AMP Enable Switch" value="1" />
<ctl name="R Main AMP Enable Switch" value="1" />
</path>
<!-- Clock-trigger Stage -->
<path name="platform-controls">
<ctl name="PCM Playback Volume" value="1000"/>
<ctl name="SINK_IDS" id="0" value="0"/>
<ctl name="SINK_IDS" id="1" value="-1"/>
<ctl name="TDM_0_RX Mixer EP6" value="1"/>
</path>
<!-- Post loaded firmware -->
<path name="crus-dsp-post-loading-fw">
<ctl name="Main AMP Enable Switch" value="0" />
<ctl name="R Main AMP Enable Switch" value="0" />
</path>
<!-- Value & Information Fetch Stage -->
<path name="platform-values">
<ctl name="TDM_0_RX Format" />
<ctl name="TDM_0_RX Chan" />
<ctl name="TDM_0_RX Sample Rate" />
<ctl name="PCM Playback Volume" />
<ctl name="TDM_0_RX Mixer EP6" />
</path>
<path name="cs35l41-values">
<ctl name="DRE DRE Switch" />
<ctl name="R DRE DRE Switch" />
<ctl name="VBSTMON Output Switch" />
<ctl name="R VBSTMON Output Switch" />
<ctl name="AMP PCM Gain" />
<ctl name="R AMP PCM Gain" />
<ctl name="Digital PCM Volume" />
<ctl name="R Digital PCM Volume" />
<ctl name="PCM Source" />
<ctl name="R PCM Source" />
<ctl name="DSP Booted" />
<ctl name="R DSP Booted" />
<ctl name="Main AMP Enable Switch" />
<ctl name="R Main AMP Enable Switch" />
<ctl name="DSP1 Preload Switch" />
<ctl name="R DSP1 Preload Switch" />
<ctl name="DSP1 Firmware" />
<ctl name="R DSP1 Firmware" />
</path>
<!-- Note that the order of controls does matter because
it should be matched to the structure defined in
sp_cal_common.h -->
<!--
struct calibration_data {
unsigned int cal_r;
unsigned int cal_status;
unsigned int cal_checksum;
unsigned int cal_ambient;
unsigned int amp_pcm_gain;
unsigned int digital_pcm_gain;
};
-->
<path name="cs35l41-dsp-amp1-calibration-values">
<ctl name="DSP1 Calibration cd CAL_R" />
<ctl name="DSP1 Calibration cd CAL_STATUS" />
<ctl name="DSP1 Calibration cd CAL_CHECKSUM" />
<ctl name="DSP1 Calibration cd CAL_AMBIENT" />
<ctl name="AMP PCM Gain" />
<ctl name="Digital PCM Volume" />
<!-- Only for debug print -->
<ctl name="DSP1 Calibration cd CAL_SET_STATUS" />
</path>
<path name="cs35l41-dsp-amp2-calibration-values">
<ctl name="R DSP1 Calibration cd CAL_R" />
<ctl name="R DSP1 Calibration cd CAL_STATUS" />
<ctl name="R DSP1 Calibration cd CAL_CHECKSUM" />
<ctl name="R DSP1 Calibration cd CAL_AMBIENT" />
<ctl name="R AMP PCM Gain" />
<ctl name="R Digital PCM Volume" />
<!-- Only for debug print -->
<ctl name="R DSP1 Calibration cd CAL_SET_STATUS" />
</path>
<!--
struct diagnostic_data {
struct calibration_data calibration_data;
unsigned int z_low_diff;
unsigned int diag_f0;
unsigned int diag_f0_status;
};
-->
<path name="cs35l41-dsp-amp1-diagnostic-values">
<!-- struct calibration_data START -->
<ctl name="DSP1 Diagnostic cd CAL_R" />
<ctl name="DSP1 Diagnostic cd CAL_STATUS" />
<ctl name="DSP1 Diagnostic cd CAL_CHECKSUM" />
<ctl name="DSP1 Diagnostic cd CAL_AMBIENT" />
<ctl name="AMP PCM Gain" />
<ctl name="Digital PCM Volume" />
<!-- struct calibration_data END -->
<ctl name="DSP1 Diagnostic cd DIAG_Z_LOW_DIFF" />
<ctl name="DSP1 Diagnostic cd DIAG_F0" />
<ctl name="DSP1 Diagnostic cd DIAG_F0_STATUS" />
<!-- Only for debug print -->
<ctl name="DSP1 Diagnostic cd CAL_SET_STATUS" />
</path>
<path name="cs35l41-dsp-amp2-diagnostic-values">
<!-- struct calibration_data START -->
<ctl name="R DSP1 Diagnostic cd CAL_R" />
<ctl name="R DSP1 Diagnostic cd CAL_STATUS" />
<ctl name="R DSP1 Diagnostic cd CAL_CHECKSUM" />
<ctl name="R DSP1 Diagnostic cd CAL_AMBIENT" />
<ctl name="R AMP PCM Gain" />
<ctl name="R Digital PCM Volume" />
<!-- struct calibration_data END -->
<ctl name="R DSP1 Diagnostic cd DIAG_Z_LOW_DIFF" />
<ctl name="R DSP1 Diagnostic cd DIAG_F0" />
<ctl name="R DSP1 Diagnostic cd DIAG_F0_STATUS" />
<!-- Only for debug print -->
<ctl name="R DSP1 Diagnostic cd CAL_SET_STATUS" />
</path>
<path name="cs35l41-dsp-amp1-protection-values">
<!-- struct calibration_data START -->
<ctl name="DSP1 Protection cd CAL_R" />
<ctl name="DSP1 Protection cd CAL_STATUS" />
<ctl name="DSP1 Protection cd CAL_CHECKSUM" />
<ctl name="DSP1 Protection cd CAL_AMBIENT" />
<!-- These controls are unrelated so we can simply
skip them
<ctl name="AMP PCM Gain" />
<ctl name="Digital PCM Volume" />
-->
<!-- struct calibration_data END -->
</path>
<path name="cs35l41-dsp-amp2-protection-values">
<!-- struct calibration_data START -->
<ctl name="R DSP1 Protection cd CAL_R" />
<ctl name="R DSP1 Protection cd CAL_STATUS" />
<ctl name="R DSP1 Protection cd CAL_CHECKSUM" />
<ctl name="R DSP1 Protection cd CAL_AMBIENT" />
<!-- These controls are unrelated so we can simply
skip them
<ctl name="R AMP PCM Gain" />
<ctl name="R Digital PCM Volume" />
-->
<!-- struct calibration_data END -->
</path>
<path name="cs35l41-dsp-amp1-calibration-completion">
<ctl name="DSP1 Calibration cd CAL_STATUS" />
</path>
<path name="cs35l41-dsp-amp2-calibration-completion">
<ctl name="R DSP1 Calibration cd CAL_STATUS" />
</path>
<path name="cs35l41-dsp-amp1-protection-completion">
<ctl name="DSP1 Protection cd CAL_SET_STATUS" />
</path>
<path name="cs35l41-dsp-amp2-protection-completion">
<ctl name="R DSP1 Protection cd CAL_SET_STATUS" />
</path>
<path name="cs35l41-dsp-amp1-diagnostic-completion">
<ctl name="DSP1 Diagnostic cd CAL_STATUS" />
<ctl name="DSP1 Diagnostic cd DIAG_F0_STATUS" />
</path>
<path name="cs35l41-dsp-amp2-diagnostic-completion">
<ctl name="R DSP1 Diagnostic cd CAL_STATUS" />
<ctl name="R DSP1 Diagnostic cd DIAG_F0_STATUS" />
</path>
<path name="cs35l41-dsp-amp1-enable-status">
<ctl name="Main AMP Enable Switch" />
</path>
<path name="cs35l41-dsp-amp2-enable-status">
<ctl name="R Main AMP Enable Switch" />
</path>
</mixer>

View File

@@ -1,22 +0,0 @@
#
# 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.
#
AUDIO_FACTORY_TABLE_FOLDER := cheetah
# Mixer Path Configuration for Audio Factory
PRODUCT_COPY_FILES += \
device/google/pantah/audio/$(AUDIO_FACTORY_TABLE_FOLDER)/config/mixer_paths_factory.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_factory.xml

View File

@@ -1,290 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<template>
<modules>
<module id="2" name="Waves">
<param id="0" max="3" name="opMode_" type="uint32"/>
</module>
<module id="3" name="Forte">
<param id="0" max="3" name="opMode_" type="uint32"/>
</module>
<module id="5" name="Auto Gain Control">
<param default="0" id="0" max="3" name="opMode_" type="uint32"/>
<param default="48000" id="1" name="fs_" type="uint32"/>
<param default="1" id="2" name="numCh_" type="uint32"/>
<param default="1" id="3" name="chMask_" type="uint32"/>
<param id="16" name="GainApplied" type="float"/>
<param id="17" name="idealRMS" type="float"/>
<param id="18" name="noiseGate" type="float"/>
<param id="19" name="minGain" type="float"/>
<param id="20" name="maxGain" type="float"/>
<param id="21" name="longGainAtRt" type="uint32"/>
<param id="22" name="GainAtRt" type="uint32"/>
<param id="23" name="rmsTav" type="uint32"/>
</module>
<module id="6" name="Surround Record">
<param default="0" id="0" max="3" name="opMode_" type="uint32"/>
<param default="48000" id="1" name="fs_" type="uint32"/>
<param default="3" id="2" name="numCh_" type="uint32"/>
<param default="7" id="3" name="chMask_" type="uint32"/>
<param id="16" max="1" min="0" name="alpha" type="float"/>
<param complex="true" id="17" name="ch0_profileL" size="1024" type="float"/>
<param complex="true" id="18" name="ch1_profileL" size="1024" type="float"/>
<param complex="true" id="19" name="ch2_profileL" size="1024" type="float"/>
<param complex="true" id="20" name="ch0_profileR" size="1024" type="float"/>
<param complex="true" id="21" name="ch1_profileR" size="1024" type="float"/>
<param complex="true" id="22" name="ch2_profileR" size="1024" type="float"/>
<param complex="true" id="23" name="ch0_profileAZ" size="1024" type="float"/>
<param complex="true" id="24" name="ch1_profileAZ" size="1024" type="float"/>
<param complex="true" id="25" name="ch2_profileAZ" size="1024" type="float"/>
<struct id="26">
<param default="1" name="ch_gain" type="float"/>
<param default="1" name="zoom_gain" type="float"/>
</struct>
<param default="0" id="27" name="ch0_assignFrom" type="int32"/>
<param default="1" id="28" name="ch1_assignFrom" type="int32"/>
<param default="2" id="29" name="ch2_assignFrom" type="int32"/>
<param default="0.333" id="30" max="1" min="0.01" name="alphaEnhancedRate" type="float"/>
</module>
<module id="7" name="Multi Channel IIR 2">
<param default="0" id="0" max="3" name="opMode_" type="uint32"/>
<param default="48000" id="1" name="fs_" type="uint32"/>
<param default="3" id="2" name="numCh_" type="uint32"/>
<param default="1" id="3" name="chMask_" type="uint32"/>
<param default="3" id="16" max="3" min="1" name="numOfChannel" type="uint32"/>
<param id="17" name="coeff" size="300" type="float"/>
<struct id="18">
<param max="18" min="-96" name="gain" size="60" type="float"/>
<param max="24000" min="0" name="frequency" size="60" type="uint32"/>
<param max="200" min="0" name="qfactor" size="60" type="float"/>
<param default="4" name="type" size="60" type="int32"/>
</struct>
</module>
<module id="8" name="Multi Band DRC">
<param default="0" id="0" max="3" name="opMode_" type="uint32"/>
<param default="48000" id="1" name="fs_" type="uint32"/>
<param default="2" id="2" name="numCh_" type="uint32"/>
<param default="3" id="3" name="chMask_" type="uint32"/>
<struct id="16">
<param default="1" max="3" min="1" name="numBand" type="uint32"/>
<param name="IIR_LowPass1" size="5" type="float"/>
<param name="IIR_HighPass1" size="5" type="float"/>
<param name="IIR_LowPass2" size="5" type="float"/>
<param name="IIR_HighPass2" size="5" type="float"/>
</struct>
<struct id="17">
<param max="20" min="0" name="band0_delay_ms" type="float"/>
<param default="5" max="20" min="0" minInclusive="false" name="band0_rms_ms" type="float"/>
<param max="30" min="0" name="band0_gain_dB" type="float"/>
<param max="30" min="-30" name="band0_Min_Gain_dB" type="float"/>
<param default="1" max="3" min="1" name="band0_numOfKnee" type="uint32"/>
<param name="band0_threadhold_dB" size="3" type="float"/>
<param name="band0_compressRatio" size="4" type="float"/>
<param name="band0_kneeWidth" size="3" type="float"/>
<param name="band0_attackTime_ms" size="4" type="float"/>
<param name="band0_releaseTime_ms" size="4" type="float"/>
<param name="band0_hysteresis" size="4" type="float"/>
<param max="20" min="0" name="band1_delay_ms" type="float"/>
<param default="5" max="20" min="0" minInclusive="false" name="band1_rms_ms" type="float"/>
<param max="30" min="0" name="band1_gain_dB" type="float"/>
<param max="30" min="-30" name="band1_Min_Gain_dB" type="float"/>
<param default="1" max="3" min="1" name="band1_numOfKnee" type="uint32"/>
<param name="band1_threadhold_dB" size="3" type="float"/>
<param name="band1_compressRatio" size="4" type="float"/>
<param name="band1_kneeWidth" size="3" type="float"/>
<param name="band1_attackTime_ms" size="4" type="float"/>
<param name="band1_releaseTime_ms" size="4" type="float"/>
<param name="band1_hysteresis" size="4" type="float"/>
<param max="20" min="0" name="band2_delay_ms" type="float"/>
<param default="5" max="20" min="0" minInclusive="false" name="band2_rms_ms" type="float"/>
<param max="30" min="0" name="band2_gain_dB" type="float"/>
<param max="30" min="-30" name="band2_Min_Gain_dB" type="float"/>
<param default="1" max="3" min="1" name="band2_numOfKnee" type="uint32"/>
<param name="band2_threadhold_dB" size="3" type="float"/>
<param name="band2_compressRatio" size="4" type="float"/>
<param name="band2_kneeWidth" size="3" type="float"/>
<param name="band2_attackTime_ms" size="4" type="float"/>
<param name="band2_releaseTime_ms" size="4" type="float"/>
<param name="band2_hysteresis" size="4" type="float"/>
</struct>
<struct id="18">
<param max="30" min="-30" name="limiter_gain_dB" type="float"/>
<param max="0" min="-30" name="limiter_threadhold_dB" type="float"/>
<param max="100" min="0" name="limiter_attackTime_ms" type="float"/>
<param max="100" min="0" name="limiter_releaseTime_ms" type="float"/>
</struct>
<struct id="19">
<param name="frequency0" type="uint32"/>
<param name="frequency1" type="uint32"/>
</struct>
</module>
<module id="11" name="Stationary Noise Suppression">
<param default="0" id="0" max="3" name="opMode_" type="uint32"/>
<param default="48000" id="1" name="fs_" type="uint32"/>
<param default="2" id="2" name="numCh_" type="uint32"/>
<param default="3" id="3" name="chMask_" type="uint32"/>
<param default="1" id="16" name="strength level" type="uint32"/>
<param id="17" name="POWER_TIME_SMOOTH" type="float"/>
<param id="18" name="RMS_TIME_SMOOTH" type="float"/>
<param id="19" name="LOWER_BAND_THRESHOLD" size="129" type="float"/>
<param id="20" name="UPPER_BAND_THRESHOLD" size="3" type="float"/>
<param id="21" name="ATTACK_TIME" type="float"/>
<param id="22" name="RELEASE_TIME" type="float"/>
</module>
<module id="14" name="Linear Gain">
<param default="0" id="0" max="3" name="opMode_" type="uint32"/>
<param default="48000" id="1" name="fs_" type="uint32"/>
<param default="1" id="2" name="numCh_" type="uint32"/>
<param default="1" id="3" name="chMask_" type="uint32"/>
<param id="16" name="Simple_gain" type="float"/>
<param default="0" id="17" name="ch0_assignFrom" type="int32"/>
<param default="1" id="18" name="ch1_assignFrom" type="int32"/>
<param default="2" id="19" name="ch2_assignFrom" type="int32"/>
</module>
<module id="17" name="Wind Noise Reduction">
<param default="0" id="0" max="3" name="opMode_" type="uint32"/>
<param default="48000" id="1" name="fs_" type="uint32"/>
<param default="2" id="2" name="numCh_" type="uint32"/>
<param default="3" id="3" name="chMask_" type="uint32"/>
<param default="450" id="16" name="DECISION_SMOOTHING_FACTOR" type="int32"/>
<param default="50" id="17" name="DECISION_ATTACK_SMOOTHING_FACTOR" type="int32"/>
<param default="50" id="18" name="DECISION_RELEASE_HIGH_SMOOTHING_FACTOR" type="int32"/>
<param default="50" id="19" name="DECISION_RELEASE_LOW_SMOOTHING_FACTOR" type="int32"/>
<param default="700" id="20" name="DECISION_RELEASE_THRESHOLD" type="int32"/>
<param default="0" id="21" name="DECISION_RANGE_OFFSET_FACTOR" type="int32"/>
<param default="1000" id="22" name="DECISION_RANGE_SLOPE_FACTOR" type="int32"/>
<param default="450" id="23" name="DECISION_GAIN_SMOOTHING_FACTOR" type="int32"/>
<param default="27" id="24" name="DECISION_DB_RANGE" type="int32"/>
<param default="1000" id="25" name="MASTER_REDUCTION_FACTOR" type="int32"/>
<param default="15" id="26" name="KEEP_NUM_OF_PREV_DECISIONS" type="int32"/>
<param default="1000" id="27" name="DEC_PRE_GAIN" type="int32"/>
<param default="16000" id="28" name="SUP_PRE_GAIN" type="int32"/>
<param default="2" id="29" name="COHERENCE_ENABLE" type="int32"/>
<param default="1" id="30" name="COHERENCE_START_BIN" type="int32"/>
<param default="10" id="31" name="COHERENCE_END_BIN" type="int32"/>
<param default="300" id="32" name="COHERENCE_THRESHOLD" type="int32"/>
<param default="990" id="33" name="COHERENCE_FORGETTING_FACTOR" type="int32"/>
<param default="0" id="34" name="DB_SCALING_FACTOR" type="int32"/>
<param default="9" id="35" name="SEP_LAYER" type="int32"/>
<param default="1" id="36" name="SP_GAIN_ENABLE" type="int32"/>
<param default="15" id="37" name="SP_GAIN_MAX_BIN" type="int32"/>
<param default="500" id="38" name="SP_GAIN_MIN" type="int32"/>
<param default="200" id="39" name="SP_GAIN_TH_MIN" type="int32"/>
<param default="450" id="40" name="SP_GAIN_TH_MAX" type="int32"/>
<param default="800" id="41" name="SP_GAIN_SMOOTH" type="int32"/>
<param default="3" id="42" name="SP_GAIN_FREQ_SMOOTH" type="int32"/>
<param default="300" id="43" name="MASTER_MAX_SUP_SMOOTHING_FACTOR" type="int32"/>
<param default="1" id="44" name="GAIN_FREQ_SMOOTH" type="int32"/>
<param default="2" id="45" name="GMIN_CURVE_TYPE" type="int32"/>
<param default="55" id="46" name="GMIN_LINEAR_SPLIT_MID_POINT_BINR" type="int32"/>
<param default="330" id="47" name="GMIN_LINEAR_SPLIT_MID_POINT_VAL" type="int32"/>
<param default="1000" id="48" name="SP_OVERSUB_RATIO" type="int32"/>
<param default="16" id="49" name="WIND_ENERGY_EST_COMPENSATION_GAIN" type="int32"/>
<param default="2000" id="50" name="WIND_ENERGY_CURVE_SLOPE" type="int32"/>
<param default="300" id="51" name="WIND_ENERGY_CURVE_OFFSET" type="int32"/>
<param default="16000" id="52" name="WIND_ENERGY_CURVE_MIN" type="int32"/>
<param default="16000" id="53" name="WIND_ENERGY_CURVE_MAX" type="int32"/>
<param default="900" id="54" name="WIND_ENERGY_SMOOTHING" type="int32"/>
<param default="144" id="55" name="WIND_ENERGY_NORM_DENOM" type="int32"/>
<param default="600" id="56" name="WIND_ENERGY_CURVE_SCALED_TH_MIN" type="int32"/>
<param default="900" id="57" name="WIND_ENERGY_CURVE_SCALED_TH_MAX" type="int32"/>
<param default="1" id="58" name="ENABLE_ML_COMBI_WIND_ENERGY" type="int32"/>
<param default="1" id="59" name="ENABLE_SP_COMBI_WIND_ENERGY" type="int32"/>
<param default="1" id="60" name="ENALBE_SP_COMBI_OVERSUBTRACTION" type="int32"/>
<param default="1" id="61" name="ENABLE_PRIORI_SNR" type="int32"/>
<param default="1000" id="62" name="PRIORI_SNR_ML_TUNING" type="int32"/>
<param default="15" id="63" name="DEC_PREV_NUM" type="int32"/>
<param default="1" id="64" name="SSC_ENABLE" type="int32"/>
<param default="930" id="65" name="SSC_SOFT_SMOOTHING_FACTOR" type="int32"/>
<param default="1600" id="66" name="SSC_OVERDRIVE" type="int32"/>
<param default="3" id="67" name="SSC_MIN_FREQ" type="int32"/>
<param default="130" id="68" name="SSC_MAX_FREQ" type="int32"/>
<param default="700" id="69" name="SSC_PSD_SMOOTHING_FACTOR" type="int32"/>
<param default="12" id="70" name="SSC_SOFT_DECISION_MIN_FREQ" type="int32"/>
<param default="450" id="71" name="SSC_SOFT_DECISION_MAX_FREQ" type="int32"/>
<param default="5" id="72" name="SSC_KEEP_SAVED_PROB_SMOOTH_SIZE" type="int32"/>
<param default="1000" id="73" name="GAIN_BOOSTING_COST" type="int32"/>
</module>
<module id="18" name="Multi Channel IIR 1">
<param default="0" id="0" max="3" name="opMode_" type="uint32"/>
<param default="48000" id="1" name="fs_" type="uint32"/>
<param default="2" id="2" name="numCh_" type="uint32"/>
<param default="3" id="3" name="chMask_" type="uint32"/>
<param default="3" id="16" max="3" min="1" name="numOfChannel" type="uint32"/>
<param id="17" name="coeff" size="300" type="float"/>
<struct id="18">
<param max="18" min="-96" name="gain" size="60" type="float"/>
<param max="24000" min="0" name="frequency" size="60" type="uint32"/>
<param max="200" min="0" name="qfactor" size="60" type="float"/>
<param default="4" name="type" size="60" type="int32"/>
</struct>
</module>
<module id="32" name="Single Band DRC">
<param default="1" id="0" max="3" name="opMode_" type="uint32"/>
<param default="48000" id="1" name="fs_" type="uint32"/>
<param default="2" id="2" name="numCh_" type="uint32"/>
<param default="3" id="3" name="chMask_" type="uint32"/>
<struct id="16">
<param max="20" min="0" name="delay_ms" type="float"/>
<param default="5" max="20" min="0" minInclusive="false" name="rms_ms" type="float"/>
<param max="30" min="0" name="gain_dB" type="float"/>
<param max="30" min="-30" name="Min_Gain_dB" type="float"/>
<param default="1" max="3" min="1" name="numOfKnee" type="uint32"/>
<param name="threadhold_dB" size="3" type="float"/>
<param name="compressRatio" size="4" type="float"/>
<param name="kneeWidth" size="3" type="float"/>
<param name="attackTime_ms" size="4" type="float"/>
<param name="releaseTime_ms" size="4" type="float"/>
<param name="hysteresis" size="4" type="float"/>
<param default="0" max="1" min="0" name="rms_manual_enable" type="uint32"/>
<param default="0" max="2" min="0" name="rms_channel" type="uint32"/>
</struct>
<struct id="17">
<param max="30" min="-30" name="limiter_gain_dB" type="float"/>
<param max="0" min="-30" name="limiter_threadhold_dB" type="float"/>
<param max="100" min="0" name="limiter_attackTime_ms" type="uint32"/>
<param max="100" min="0" name="limiter_releaseTime_ms" type="uint32"/>
</struct>
</module>
<module id="10000" name="Eraser">
<param id="275" name="eraser_pre_gain" type="uint32"/>
<param id="277" name="eraser_post_gain" type="uint32"/>
<param id="279" name="non_eraser_gain" type="uint32"/>
</module>
<module id="10001" name="Cleaner">
<param id="299" name="cleaner_post_gain" type="uint32"/>
</module>
<module id="10002" name="CHRE">
<param id="297" name="chre_gain" type="uint32"/>
</module>
</modules>
<signalflows>
<signalflow id="1" name="Spatial Audio">
<block id="128">
<moduleRef id="18"/>
<moduleRef id="17"/>
</block>
<block id="134">
<moduleRef id="14"/>
<moduleRef id="11"/>
<moduleRef id="6"/>
<moduleRef id="7"/>
<moduleRef id="5"/>
<moduleRef id="8"/>
</block>
</signalflow>
<signalflow id="2" name="General Mic Recording">
<block id="137">
<moduleRef id="14"/>
<moduleRef id="7"/>
<moduleRef id="8"/>
</block>
</signalflow>
<signalflow id="1000" name="Smart Feature">
<block id="0">
<moduleRef id="10000"/>
<moduleRef id="10001"/>
<moduleRef id="10002"/>
</block>
</signalflow>
</signalflows>
</template>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,58 +0,0 @@
########################################################################################################
# (Optional) The supported features list for platform vendors to query from.
# Platform vendors should call maxxaudio_qdsp_is_feature_supported with a string to query from the list.
# This config has no effect in the MaxxAudioQdspHalController. It's only meaningful for platform vendors.
# Putting any value other than 1 would be equivalent to not supported.
########################################################################################################
[HAL_SUPPORTED_FEATURES]
CUSTOM_ACTION_256=1
########################################################################################################
# This defined the options of supported sample rates.
# This can be configured by Waves or platform vendor.
########################################################################################################
[HAL_SUPPORTED_SAMPLE_RATES]
SR_COMMON = 48000
########################################################################################################
# (Optional) The subtypes that applies to different angles(0, 90, 180, 270). Can be empty if not applicable.
# This can be configured by Waves or platform vendor.
########################################################################################################
[HAL_ORIENTATION_SUBTYPES]
OST_SPEAKER = 0:12,90:13,180:12,270:0|13
########################################################################################################
# This defines available preset configurations.
# This should be configured by Waves only unless platform vendor is familiar with MPS structure.
########################################################################################################
[HAL_SUPPORTED_PRESETS]
SPEAKER_MUSIC = OM:1,SM:2,OST:OST_SPEAKER
SPEAKER_SAFE_MUSIC = OM:10,SM:2,OST:OST_SPEAKER
SPEAKER_SAFE_CALL = OM:10,SM:2,OST:OST_SPEAKER
HEADSET_MUSIC = OM:2,SM:2
########################################################################################################
# This defines available CONTROL configurations. Only define the CONTROL if you need it.
# The numbers could vary from device to device.
# This can be configured by Waves or platform vendor.
########################################################################################################
[HAL_SUPPORTED_CONTROLS]
SPEAKER_INSTANCE = INSTANCE:1,DEV:0,SR:SR_COMMON,PRESET:SPEAKER_MUSIC|SPEAKER_SAFE_MUSIC|SPEAKER_SAFE_CALL
A2DP_INSTANCE = INSTANCE:2,DEV:0,SR:SR_COMMON,PRESET:HEADSET_MUSIC
USB_HEADPHONE_INSTANCE = INSTANCE:4,DEV:0,SR:SR_COMMON,PRESET:HEADSET_MUSIC
[COEFS_CONVERTER_SETTING]
AlgFxPath=/vendor/lib/libAlgFx_HiFi3z.so
AlgFxPath64=/vendor/lib64/libAlgFx_HiFi3z.so
# do not modify the following if not necessary
#AudioFormatType=0
#AudioFormatChannels=2
#AudioFormatSampleRate=48000
#AudioFormatBitsPerSample=32
#AudioFormatSampleSize=4
#AudioFormatIncrement=8
[CUSTOM_ACTION_256]
CASE_1=PRIORITY:0,NUMBERS:2:0|1,PRESET:SPEAKER_MUSIC
CASE_2=PRIORITY:1,NUMBERS:1|2|4194304:2|3|4,PRESET:SPEAKER_SAFE_CALL
CASE_3=PRIORITY:2,NUMBERS:1|4194304:0|1,PRESET:SPEAKER_SAFE_MUSIC

View File

@@ -1,73 +0,0 @@
#
# 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.
#
AUDIO_TABLE_FOLDER := cloudripper
# Platform Configuration for AudioHAL / SoundTriggerHAL
PRODUCT_COPY_FILES += \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/config/audio_policy_configuration_bluetooth_legacy_hal.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration_bluetooth_legacy_hal.xml \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/config/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/config/audio_policy_configuration_a2dp_offload_disabled.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration_a2dp_offload_disabled.xml \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/config/audio_platform_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_configuration.xml \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/config/sound_trigger_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_configuration.xml
# AudioEffectHAL Configuration
PRODUCT_COPY_FILES += \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/config/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml
# Mixer Path Configuration for AudioHAL
PRODUCT_COPY_FILES += \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/config/mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths.xml
# Speaker firmware files
SPK_FIRMWARE_PATH := $(AUDIO_TABLE_FOLDER)/cs35l41/fw
SPK_FIRMWARE_FULL_PATH := device/google/pantah/audio/$(SPK_FIRMWARE_PATH)
PRODUCT_COPY_FILES += $(call copy-files,$(wildcard $(SPK_FIRMWARE_FULL_PATH)/*),$(TARGET_COPY_OUT_VENDOR)/firmware)
# Audio tuning
PRODUCT_COPY_FILES += \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/bluenote/recording.gatf:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/recording.gatf \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/BLUETOOTH.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/BLUETOOTH.dat \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HANDSFREE.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HANDSFREE.dat \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HANDSET.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HANDSET.dat \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HEADSET.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HEADSET.dat \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/mcps.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/mcps.dat \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/waves_config.ini:$(TARGET_COPY_OUT_VENDOR)/etc/waves_config.ini \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/waves_preset.mps:$(TARGET_COPY_OUT_VENDOR)/etc/waves_preset.mps
# userdebug specific
ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
PRODUCT_COPY_FILES += \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/BLUETOOTH.mods:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/BLUETOOTH.mods \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HANDSFREE.mods:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HANDSFREE.mods \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HANDSET.mods:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HANDSET.mods \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HEADSET.mods:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HEADSET.mods
#Bluenote files
PRODUCT_COPY_FILES += \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/bluenote/template.xml:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/template.xml \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/bluenote/tuning_constraints_combination.xml:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/tuning_constraints_combination.xml
# Mixer Path Configuration for Audio Speaker Calibration Tool crus_sp_cal
PRODUCT_COPY_FILES += \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/cs35l41/crus_sp_cal_mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/crus_sp_cal_mixer_paths.xml
PRODUCT_COPY_FILES += \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/tests/test_config.ini:$(TARGET_COPY_OUT_VENDOR)/etc/test_config.ini \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/tests/test_preset.mps:$(TARGET_COPY_OUT_VENDOR)/etc/test_preset.mps
endif

View File

@@ -1,63 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<audio_effects_conf version="2.0" xmlns="http://schemas.android.com/audio/audio_effects_conf/v2_0">
<libraries>
<library name="bundle" path="libbundlewrapper.so"/>
<library name="reverb" path="libreverbwrapper.so"/>
<library name="visualizer_sw" path="libvisualizer.so"/>
<library name="downmix" path="libdownmix.so"/>
<library name="dynamics_processing" path="libdynproc.so"/>
<library name="loudness_enhancer" path="libldnhncr.so"/>
<library name="proxy" path="libeffectproxy.so"/>
<library name="offload_effect" path="liboffloadeffect.so"/>
<library name="haptic_generator" path="libhapticgenerator.so"/>
</libraries>
<effects>
<effectProxy name="bassboost" library="proxy" uuid="2f0871a2-c93c-4824-9664-42eb2909f2ef">
<libsw library="bundle" uuid="8631f300-72e2-11df-b57e-0002a5d5c51b"/>
<libhw library="offload_effect" uuid="c7e3b29d-e797-4cf9-9912-17c1956510cc"/>
</effectProxy>
<effectProxy name="virtualizer" library="proxy" uuid="626499c6-647e-455e-8c45-2d106e23c755">
<libsw library="bundle" uuid="1d4033c0-8557-11df-9f2d-0002a5d5c51b"/>
<libhw library="offload_effect" uuid="f8f88a03-fdf8-4554-8e60-77fbf8f2d3b0"/>
</effectProxy>
<effectProxy name="equalizer" library="proxy" uuid="49004f03-3391-4c44-97dd-a043d526ea7d">
<libsw library="bundle" uuid="ce772f20-847d-11df-bb17-0002a5d5c51b"/>
<libhw library="offload_effect" uuid="50deaa30-4a83-4b1f-bfe3-dec6d605ede0"/>
</effectProxy>
<effect name="volume" library="bundle" uuid="119341a0-8469-11df-81f9-0002a5d5c51b"/>
<effectProxy name="reverb_env_aux" library="proxy" uuid="b8154738-a0a1-4fc0-bb79-c845a3197739">
<libsw library="reverb" uuid="4a387fc0-8ab3-11df-8bad-0002a5d5c51b"/>
<libhw library="offload_effect" uuid="0c84bcd9-bce4-441b-ba9e-51f80897c949"/>
</effectProxy>
<effectProxy name="reverb_env_ins" library="proxy" uuid="ba0f19fe-8790-4831-a58b-1f3299dd0bae">
<libsw library="reverb" uuid="c7a511a0-a3bb-11df-860e-0002a5d5c51b"/>
<libhw library="offload_effect" uuid="86d1877a-127f-4bdc-9665-c958903ad7b2"/>
</effectProxy>
<effectProxy name="reverb_pre_aux" library="proxy" uuid="80974a8b-b3be-4c21-8c0b-b392a54e13bc">
<libsw library="reverb" uuid="f29a1400-a3bb-11df-8ddc-0002a5d5c51b"/>
<libhw library="offload_effect" uuid="4f90220c-9742-4467-a9d7-122f85c01195"/>
</effectProxy>
<effectProxy name="reverb_pre_ins" library="proxy" uuid="c02d7dce-ca56-4aea-8c83-bbb53e5600e8">
<libsw library="reverb" uuid="172cdf00-a3bc-11df-a72f-0002a5d5c51b"/>
<libhw library="offload_effect" uuid="a2cf6b45-360b-49f3-94d7-fdb9837f89e8"/>
</effectProxy>
<effectProxy name="visualizer" library="proxy" uuid="b27271d9-64d6-413c-b316-80005ad09008">
<libsw library="visualizer_sw" uuid="d069d9e0-8329-11df-9168-0002a5d5c51b"/>
<libhw library="offload_effect" uuid="99fb2ecb-3426-4a0e-8082-1a1da5604b7d"/>
</effectProxy>
<effect name="downmix" library="downmix" uuid="93f04452-e4fe-41cc-91f9-e475b6d1d69f"/>
<effect name="loudness_enhancer" library="loudness_enhancer" uuid="fa415329-2034-4bea-b5dc-5b381c8d1e2c"/>
<effect name="aec" library="offload_effect" uuid="28c28780-ec8b-48b6-8590-8c84557d797d"/>
<effect name="ns" library="offload_effect" uuid="62ff2836-d050-43c3-9c2d-94a73dad2c64"/>
<effect name="haptic_generator" library="haptic_generator" uuid="97c4acd1-8b82-4f2f-832e-c2fe5d7a9931"/>
<effect name="dynamics_processing" library="dynamics_processing" uuid="e0e6539b-1781-7261-676f-6d7573696340"/>
</effects>
<postprocess>
</postprocess>
<preprocess>
<stream type="voice_communication">
<apply effect="aec"/>
<apply effect="ns"/>
</stream>
</preprocess>
</audio_effects_conf>

View File

@@ -1,309 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Copyright (c) 2019, The Linux Foundation. All rights reserved. -->
<!-- -->
<!-- Redistribution and use in source and binary forms, with or without -->
<!-- modification, are permitted provided that the following conditions are -->
<!-- met: -->
<!-- * Redistributions of source code must retain the above copyright -->
<!-- notice, this list of conditions and the following disclaimer. -->
<!-- * Redistributions in binary form must reproduce the above -->
<!-- copyright notice, this list of conditions and the following -->
<!-- disclaimer in the documentation and/or other materials provided -->
<!-- with the distribution. -->
<!-- * Neither the name of The Linux Foundation nor the names of its -->
<!-- contributors may be used to endorse or promote products derived -->
<!-- from this software without specific prior written permission. -->
<!-- -->
<!-- THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED -->
<!-- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -->
<!-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT -->
<!-- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS -->
<!-- BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -->
<!-- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -->
<!-- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR -->
<!-- BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -->
<!-- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN -->
<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -->
<audio_platform_configuration>
<hw_intf>
<intf id="BE_HW_RX_INTF_0" name="TDM_RX_0" min_bit="24" min_chan="2" min_rate="48000" block_id="16"/>
<intf id="BE_HW_RX_INTF_1" name="TDM_RX_1" min_bit="24" min_chan="2" min_rate="48000" block_id="17"/>
<intf id="BE_HW_RX_INTF_2" name="USB_RX" min_bit="24" min_chan="2" min_rate="48000" block_id="20"/>
<intf id="BE_HW_RX_INTF_3" name="I2S_RX_0" min_bit="24" min_chan="2" min_rate="48000" block_id="18"/>
<!--intf id="BE_HW_RX_INTF_2" name="USB_RX" min_bit="24" min_chan="2" min_rate="48000" ctrl_config="USB device" ctrl_rate="Sample Rate" ctrl_bit="Bit Width" ctrl_chan="Channel"/-->
<!--intf id="BE_HW_RX_INTF_3" name="BT_RX"/-->
<intf id="BE_VIRTUAL_VOICE_RX_TUNING" block_id="19"/>
<intf id="BE_VIRTUAL_VOICE_TX_TUNING" block_id="19"/>
<intf id="BE_HW_TX_INTF_0" block_id="134,128,137"/>
<intf id="BE_VIRTUAL_CRYSTAL_CLEAR_AUDIO_TUNING" block_id="138"/>
</hw_intf>
<product_lists>
<product name="Blackbird">
<id value="18d1:5033"/>
</product>
<product name="Condor">
<id value="18d1:5034"/>
</product>
<product name="Condor_Sprint">
<id value="18d1:5038"/>
</product>
<product name="Condor_Sprint2">
<id value="18d1:5036"/>
</product>
</product_lists>
<!-- The microphone capability is fake data -->
<microphone_characteristics>
<microphone device_id="builtin_mic_1" type="AUDIO_DEVICE_IN_BUILTIN_MIC" address="bottom" location="AUDIO_MICROPHONE_LOCATION_MAINBODY"
group="0" index_in_the_group="0" directionality="AUDIO_MICROPHONE_DIRECTIONALITY_OMNI" num_frequency_responses="93"
frequencies="100.00 106.00 112.00 118.00 125.00 132.00 140.00 150.00 160.00 170.00 180.00 190.00 200.00 212.00 224.00 236.00 250.00 265.00 280.00 300.00 315.00 335.00 355.00 375.00 400.00 425.00 450.00 475.00 500.00 530.00 560.00 600.00 630.00 670.00 710.00 750.00 800.00 850.00 900.00 950.00 1000.00 1060.00 1120.00 1180.00 1250.00 1320.00 1400.00 1500.00 1600.00 1700.00 1800.00 1900.00 2000.00 2120.00 2240.00 2360.00 2500.00 2650.00 2800.00 3000.00 3150.00 3350.00 3550.00 3750.00 4000.00 4250.00 4500.00 4750.00 5000.00 5300.00 5600.00 6000.00 6300.00 6700.00 7100.00 7500.00 8000.00 8500.00 9000.00 9500.00 10000.00 10600.00 11200.00 11800.00 12500.00 13200.00 14000.00 15000.00 16000.00 17000.00 18000.00 19000.00 20000.00"
responses="-0.78 -0.71 -0.64 -0.60 -0.55 -0.50 -0.47 -0.42 -0.39 -0.36 -0.34 -0.33 -0.32 -0.29 -0.28 -0.28 -0.27 -0.25 -0.25 -0.24 -0.23 -0.23 -0.22 -0.22 -0.19 -0.17 -0.15 -0.15 -0.14 -0.14 -0.12 -0.11 -0.10 -0.10 -0.08 -0.07 -0.07 -0.04 -0.03 -0.01 0.00 0.04 0.06 0.07 0.08 0.13 0.09 0.14 0.19 0.23 0.28 0.29 0.31 0.37 0.88 0.86 0.77 0.78 0.84 0.86 1.05 1.12 1.18 1.25 1.43 1.66 1.83 2.02 2.23 2.59 2.84 3.35 4.01 6.82 6.62 6.42 7.30 8.23 7.54 12.68 13.76 18.69 19.68 20.90 23.70 25.10 21.65 16.18 18.84 25.44 23.48 23.22 24.89"
sensitivity="-37.0" max_spl="132.5" min_spl="28.5" orientation="0.0 0.0 1.0" geometric_location="0.0269 0.0058 0.0079" />
<microphone device_id="builtin_mic_2" type="AUDIO_DEVICE_IN_BACK_MIC" address="back" location="AUDIO_MICROPHONE_LOCATION_MAINBODY"
group="0" index_in_the_group="1" directionality="AUDIO_MICROPHONE_DIRECTIONALITY_OMNI" num_frequency_responses="92"
frequencies="106.00 112.00 118.00 125.00 132.00 140.00 150.00 160.00 170.00 180.00 190.00 200.00 212.00 224.00 236.00 250.00 265.00 280.00 300.00 315.00 335.00 355.00 375.00 400.00 425.00 450.00 475.00 500.00 530.00 560.00 600.00 630.00 670.00 710.00 750.00 800.00 850.00 900.00 950.00 1000.00 1060.00 1120.00 1180.00 1250.00 1320.00 1400.00 1500.00 1600.00 1700.00 1800.00 1900.00 2000.00 2120.00 2240.00 2360.00 2500.00 2650.00 2800.00 3000.00 3150.00 3350.00 3550.00 3750.00 4000.00 4250.00 4500.00 4750.00 5000.00 5300.00 5600.00 6000.00 6300.00 6700.00 7100.00 7500.00 8000.00 8500.00 9000.00 9500.00 10000.00 10600.00 11200.00 11800.00 12500.00 13200.00 14000.00 15000.00 16000.00 17000.00 18000.00 19000.00 20000.00"
responses="-0.75 -0.74 -0.69 -0.65 -0.62 -0.61 -0.56 -0.53 -0.50 -0.47 -0.43 -0.40 -0.37 -0.36 -0.33 -0.30 -0.28 -0.25 -0.24 -0.24 -0.24 -0.25 -0.24 -0.12 -0.10 -0.08 -0.09 -0.07 -0.07 -0.06 -0.06 -0.06 -0.05 -0.04 -0.05 -0.04 -0.01 0.02 0.02 0.00 0.02 0.03 0.07 0.10 0.10 0.13 0.01 0.01 0.10 0.11 0.19 0.24 0.38 0.46 0.26 0.27 0.43 0.76 0.75 1.09 1.09 0.94 1.06 1.21 1.47 1.45 1.36 2.07 2.85 2.90 3.85 4.65 5.84 5.46 6.15 7.50 8.30 10.62 12.70 16.65 20.95 25.41 26.32 20.20 16.60 11.24 7.85 7.62 20.19 7.32 2.87 5.18"
sensitivity="-37.0" max_spl="132.5" min_spl="28.5" orientation="0.0 1.0 0.0" geometric_location="0.0546 0.1456 0.00415" />
<microphone device_id="builtin_mic_3" type="AUDIO_DEVICE_IN_BUILTIN_MIC" address="top" location="AUDIO_MICROPHONE_LOCATION_MAINBODY"
group="0" index_in_the_group="2" directionality="AUDIO_MICROPHONE_DIRECTIONALITY_OMNI" num_frequency_responses="92"
frequencies="100.00 106.00 112.00 118.00 125.00 132.00 140.00 150.00 160.00 170.00 180.00 190.00 200.00 212.00 224.00 236.00 250.00 265.00 280.00 300.00 315.00 335.00 355.00 375.00 400.00 425.00 450.00 475.00 500.00 530.00 560.00 600.00 630.00 670.00 710.00 750.00 800.00 850.00 900.00 950.00 1000.00 1060.00 1120.00 1180.00 1250.00 1320.00 1400.00 1500.00 1600.00 1700.00 1800.00 1900.00 2000.00 2120.00 2240.00 2360.00 2500.00 2650.00 2800.00 3000.00 3150.00 3350.00 3550.00 3750.00 4000.00 4250.00 4500.00 4750.00 5000.00 5300.00 5600.00 6000.00 6300.00 6700.00 7100.00 7500.00 8000.00 8500.00 9000.00 9500.00 10000.00 10600.00 11200.00 11800.00 12500.00 13200.00 14000.00 15000.00 16000.00 17000.00 18000.00 19000.00"
responses="-9.24 -9.31 -9.39 -9.45 -9.46 -9.47 -9.50 -9.52 -9.51 -9.52 -9.51 -9.50 -9.49 -9.47 -9.48 -9.49 -9.48 -9.50 -9.51 -9.53 -9.55 -9.59 -9.63 -9.67 -9.58 -9.57 -9.65 -9.68 -9.71 -9.75 -9.79 -9.84 -9.87 -9.87 -9.90 -9.90 -9.91 -9.97 -10.01 -10.05 -9.85 -9.93 -9.94 -9.98 -10.04 -10.12 -10.28 -10.25 -10.01 -9.86 -9.81 -9.82 -9.61 -9.46 -8.27 -8.42 -8.98 -8.99 -8.82 -9.21 -8.92 -8.97 -9.30 -9.44 -9.52 -9.28 -9.09 -8.81 -7.02 -5.72 -5.30 -7.26 -8.39 -12.28 -8.23 -6.99 -5.52 -4.87 -3.82 -6.09 0.00 -2.15 -0.26 1.48 5.22 10.92 6.41 9.55 12.96 3.35 22.00 19.75"
sensitivity="-37.0" max_spl="132.5" min_spl="28.5" orientation="0.0 0.0 1.0" geometric_location="0.0274 0.14065 0.0079" />
</microphone_characteristics>
<!-- The microphone mapping of backend device is fake data -->
<input_backend_cfg_mic_mapping>
<backend_cfg in_cfg="IN_CAMCORDER_LANDSCAPE_BE_CFG">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</backend_cfg>
<backend_cfg in_cfg="IN_CAMCORDER_INVERT_LANDSCAPE_BE_CFG">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</backend_cfg>
<backend_cfg in_cfg="IN_CAMCORDER_PORTRAIT_BE_CFG">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</backend_cfg>
<backend_cfg in_cfg="IN_CAMCORDER_SELFIE_LANDSCAPE_BE_CFG">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</backend_cfg>
<backend_cfg in_cfg="IN_CAMCORDER_SELFIE_INVERT_LANDSCAPE_BE_CFG">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</backend_cfg>
<backend_cfg in_cfg="IN_CAMCORDER_SELFIE_PORTRAIT_BE_CFG">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</backend_cfg>
<backend_cfg in_cfg="IN_HANDSET_MIC_BE_CFG">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</backend_cfg>
<backend_cfg in_cfg="IN_VOICECALL_HANDSET_MIC_BE_CFG">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</backend_cfg>
<backend_cfg in_cfg="IN_VOICECALL_SPEAKER_MIC_BE_CFG">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</backend_cfg>
<backend_cfg in_cfg="IN_USB_TTY_VCO_MIC_BE_CFG">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</backend_cfg>
<backend_cfg in_cfg="IN_VOICE_RECOGN_MIC_BE_CFG">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT"/>
</backend_cfg>
<backend_cfg in_cfg="IN_UNPROCESSED_MIC_BE_CFG">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT"/>
</backend_cfg>
<backend_cfg in_cfg="IN_UNPROCESSED_DUAL_MIC_BE_CFG">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT"/>
</backend_cfg>
<backend_cfg in_cfg="IN_UNPROCESSED_TRIPLE_MIC_BE_CFG">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT"/>
</backend_cfg>
</input_backend_cfg_mic_mapping>
<usecase_attr>
<!-- for output with AUDIO_OUTPUT_FLAG_RAW, 32 periods * 64 frames(around 1.3ms) * 2ch * 4(s32) = 16384 bytes -->
<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, 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"/>
<!-- 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 -->
<usecase id="UC_HAPTIC_AUDIO" dev1="2" dev2="7" period="10" period_num="4"/>
<!-- for VOIP output, 4 * 10ms buffer -->
<usecase id="UC_VOIP_PLAYBACK" dev1="16" dyn_path="true" dsp_vol="true" mmap="false" period="10" period_num="4" pcm_ch="2"/>
<!-- for input -->
<usecase id="UC_AUDIO_RECORD" dev1="8" dyn_path="true" dsp_vol="false" mmap="false" period="20" period_num="4"/>
<usecase id="UC_HOSTLESS_UL" dev1="15"/>
<!-- for VOIP input, 4 * 10ms buffer -->
<usecase id="UC_VOIP_RECORD" dev1="17" dyn_path="true" dsp_vol="false" mmap="false" period="20" period_num="2"/>
<!-- for input wit AUDIO_INPUT_FLAG_FAST 480 periods * 1ms buffer, 16-bit, 2ch, buffer size 92160 bytes-->
<usecase id="UC_LOW_LATENCY_AUDIO_RECORD" dev1="10" dyn_path="true" dsp_vol="false" mmap="true" period="1" period_num="480"/>
<!-- for input wit AUDIO_INPUT_FLAG_MMAP_NOIRQ 240 periods * 1ms buffer, 32-bit,2 ch, buffer size 92160 bytes -->
<usecase id="UC_MMAP_RECORD" dev1="9" dyn_path="true" dsp_vol="false" mmap="true" period="1" period_num="240"/>
<!-- for hifi -->
<usecase id="UC_HIFI_PLAYBACK" dev1="25" period="20" period_num="4"/>
<usecase id="UC_HIFI_RECORD" dev1="26" period="20" period_num="4"/>
</usecase_attr>
<dsp_latency>
<usecase id="UC_LOW_LATENCY_PLAYBACK" type="playback">
<be_cfg be_id="OUT_SPEAKER_BE_CFG" latency="20000"/>
<be_cfg be_id="OUT_USB_HEADSET_BE_CFG" latency="60000"/>
<be_cfg be_id="OUT_USB_HEADPHONE_BE_CFG" latency="60000"/>
<be_cfg be_id="OUT_A2DP_BE_CFG" latency="60000"/>
<be_cfg be_id="OUT_BLE_BE_CFG" latency="60000"/>
</usecase>
<usecase id="UC_DEEP_BUFFER_PLAYBACK" type="playback">
<be_cfg be_id="OUT_SPEAKER_BE_CFG" latency="70000"/>
<be_cfg be_id="OUT_USB_HEADSET_BE_CFG" latency="70000"/>
<be_cfg be_id="OUT_USB_HEADPHONE_BE_CFG" latency="70000"/>
<be_cfg be_id="OUT_A2DP_BE_CFG" latency="180000"/>
<be_cfg be_id="OUT_BLE_BE_CFG" latency="80000"/>
</usecase>
<usecase id="UC_COMPRESSED_OFFLOAD_PLAYBACK" type="playback">
<be_cfg be_id="OUT_SPEAKER_BE_CFG" latency="40000"/>
<be_cfg be_id="OUT_USB_HEADSET_BE_CFG" latency="40000"/>
<be_cfg be_id="OUT_USB_HEADPHONE_BE_CFG" latency="40000"/>
<be_cfg be_id="OUT_A2DP_BE_CFG" latency="70000"/>
<be_cfg be_id="OUT_BLE_BE_CFG" latency="20000"/>
</usecase>
<usecase id="UC_IMMERSIVE_PLAYBACK" type="playback">
<be_cfg be_id="OUT_A2DP_BE_CFG" latency="100000"/>
</usecase>
<usecase id="UC_AUDIO_RECORD" type="capture">
<be_cfg be_id="IN_CAMCORDER_LANDSCAPE_BE_CFG" latency="160000"/>
<be_cfg be_id="IN_CAMCORDER_INVERT_LANDSCAPE_BE_CFG" latency="160000"/>
<be_cfg be_id="IN_CAMCORDER_PORTRAIT_BE_CFG" latency="160000"/>
<be_cfg be_id="IN_CAMCORDER_SELFIE_LANDSCAPE_BE_CFG" latency="160000"/>
<be_cfg be_id="IN_CAMCORDER_SELFIE_INVERT_LANDSCAPE_BE_CFG" latency="160000"/>
<be_cfg be_id="IN_CAMCORDER_SELFIE_PORTRAIT_BE_CFG" latency="160000"/>
<be_cfg be_id="IN_CAMCORDER_MIC_BE_CFG" latency="160000"/>
<be_cfg be_id="IN_CAMCORDER_TRIPLE_MIC_BE_CFG" latency="160000"/>
<be_cfg be_id="IN_BTSCO_MIC_BE_CFG" latency="40000"/>
<be_cfg be_id="IN_BTSCO_MIC_NREC_BE_CFG" latency="40000"/>
<be_cfg be_id="IN_BTSCO_MIC_WB_BE_CFG" latency="40000"/>
<be_cfg be_id="IN_BTSCO_MIC_WB_NREC_BE_CFG" latency="40000"/>
</usecase>
</dsp_latency>
<soundcard_name name="google,aoc-snd-card" />
<cfg_attr>
<cfg id="OUT_SPEAKER_BE_CFG" intf_name="TDM_RX_0" mux="HW_MUX_GP_0" tuning_id="2"/>
<cfg id="OUT_HAC_HANDSET_BE_CFG" intf_name="TDM_RX_1" mux="HW_MUX_GP_1" be_path="hac-handset"/>
<cfg id="OUT_USB_HEADSET_BE_CFG">
<override product="Blackbird" tuning_id="22"/>
<override product="Condor" tuning_id="33"/>
</cfg>
<cfg id="OUT_USB_TTY_FULL_BE_CFG" be_path="usb-headphone" codec_path="usb-headphone"/>
<cfg id="OUT_USB_TTY_VCO_BE_CFG" be_path="usb-headphone" codec_path="usb-headphone"/>
<cfg id="OUT_USB_TTY_HCO_BE_CFG" be_path="NULL" codec_path="voice-speaker"/>
<cfg id="IN_USB_TTY_FULL_MIC_BE_CFG" be_path="usb-headset-mic" codec_path="usb-headset-mic" mux="HW_MUX_GP_0"/>
<cfg id="IN_USB_TTY_VCO_MIC_BE_CFG" be_path="NULL" codec_path="voice-speaker-mic"/>
<cfg id="IN_USB_TTY_HCO_MIC_BE_CFG" be_path="usb-headset-mic" codec_path="usb-headset-mic" mux="HW_MUX_GP_0"/>
<cfg id="IN_SPK_VI_BE_CFG" codec_path="NULL" be_path="spk-vi"/>
<cfg id="IN_CAMCORDER_LANDSCAPE_BE_CFG" tuning_id="70"/>
<cfg id="IN_CAMCORDER_INVERT_LANDSCAPE_BE_CFG" tuning_id="71"/>
<cfg id="IN_CAMCORDER_PORTRAIT_BE_CFG" tuning_id="72"/>
<cfg id="IN_CAMCORDER_SELFIE_LANDSCAPE_BE_CFG" tuning_id="73"/>
<cfg id="IN_CAMCORDER_SELFIE_INVERT_LANDSCAPE_BE_CFG" tuning_id="74"/>
<cfg id="IN_CAMCORDER_SELFIE_PORTRAIT_BE_CFG" tuning_id="75"/>
<cfg id="IN_CAMCORDER_MIC_BE_CFG" tuning_id="70"/>
<cfg id="IN_CAMCORDER_TRIPLE_MIC_BE_CFG" tuning_id="70"/>
<cfg id="IN_BTSCO_MIC_BE_CFG" mux="HW_MUX_GP_0"/>
<cfg id="IN_BTSCO_MIC_NREC_BE_CFG" mux="HW_MUX_GP_0"/>
<cfg id="IN_BTSCO_MIC_WB_BE_CFG" mux="HW_MUX_GP_0"/>
<cfg id="IN_BTSCO_MIC_WB_NREC_BE_CFG" mux="HW_MUX_GP_0"/>
<cfg id="IN_VOICE_RECOGN_USB_HEADSET_MIC_BE_CFG" mux="HW_MUX_GP_0"/>
<cfg id="IN_USB_HEADSET_MIC_BE_CFG" mux="HW_MUX_GP_0"/>
<cfg id="IN_VOICECALL_USB_HEADSET_MIC_BE_CFG" mux="HW_MUX_GP_0"/>
<cfg id="IN_UNPROCESSED_USB_HEADSET_MIC_BE_CFG" mux="HW_MUX_GP_0"/>
</cfg_attr>
<xlate_id>
<item component="TUNING_COMPONENT_WAVES" id="2"/>
<item component="TUNING_COMPONENT_FORTEMEDIA" id="3"/>
<item component="TUNING_COMPONENT_CAMCORDER" id="6"/>
</xlate_id>
<voip_db_mapping>
<voip_path id="VOIP_RX_USB" value="0.01,0.02,0.04,0.1,0.21,0.47,1.0"/>
</voip_db_mapping>
<device_handle>
<handler libname="audio_bt_aoc.so"/>
<handler libname="audio_usb_aoc.so" argu="MaxSamplingRate=192000,UnsupportedFormat=S24_LE,MaxCapPacketInterval=125,MaxCapSampleRate=192000,MaxCapBitWidth=32,MaxCapChannel=2,EnableHifi192kMultichannel=0"/>
</device_handle>
<external_module>
<module libname="audio_waves_aoc.so" argu="Sink=SPK:1"/>
<module libname="audio_fortemedia_aoc.so" argu="DL_CH=y VoIP_DLCHs=SPK:1,USB:1 VoIP_Rate=32000 BOOST_USB_SWB_CLK=y SHARED_MODULE=1130578253"/>
<module libname="liboffloadeffect.so"/>
<module libname="audio_amcs_ext.so"/>
<module libname="audio_bluenote_aoc.so"/>
<module libname="audio_cca_aoc.so"/>
</external_module>
</audio_platform_configuration>

View File

@@ -1,255 +0,0 @@
<?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_AB" />
</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_OPUS AUDIO_FORMAT_AAC AUDIO_FORMAT_SBC">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</devicePort>
<devicePort tagName="BT A2DP Headphones" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES" role="sink"
encodedFormats="AUDIO_FORMAT_OPUS AUDIO_FORMAT_AAC AUDIO_FORMAT_SBC">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</devicePort>
<devicePort tagName="BT A2DP Speaker" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER" role="sink"
encodedFormats="AUDIO_FORMAT_OPUS AUDIO_FORMAT_AAC AUDIO_FORMAT_SBC">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</devicePort>
<devicePort tagName="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,mmap_no_irq_out,voip_rx,compressed_offload"/>
<route type="mix" sink="Speaker Safe"
sources="primary output,deep buffer,haptic,raw,mmap_no_irq_out,voip_rx,compressed_offload"/>
<route type="mix" sink="Earpiece"
sources="primary output,deep buffer,haptic,raw,mmap_no_irq_out,voip_rx,compressed_offload"/>
<route type="mix" sink="BT A2DP Out"
sources="primary output,deep buffer,haptic,voip_rx,compressed_offload"/>
<route type="mix" sink="BT A2DP Headphones"
sources="primary output,deep buffer,haptic,voip_rx,compressed_offload"/>
<route type="mix" sink="BT A2DP Speaker"
sources="primary output,deep buffer,haptic,voip_rx,compressed_offload"/>
<route type="mix" sink="USB Device Out"
sources="primary output,deep buffer,haptic,raw,mmap_no_irq_out,voip_rx,hifi_playback,compressed_offload"/>
<route type="mix" sink="USB Headset Out"
sources="primary output,deep buffer,haptic,raw,mmap_no_irq_out,voip_rx,hifi_playback,compressed_offload"/>
<route type="mix" sink="BT SCO"
sources="primary output,deep buffer,haptic,voip_rx,compressed_offload"/>
<route type="mix" sink="BT SCO Headset"
sources="primary output,deep buffer,haptic,voip_rx,compressed_offload"/>
<route type="mix" sink="BT SCO Car Kit"
sources="primary output,deep buffer,haptic,voip_rx,compressed_offload"/>
<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>

View File

@@ -1,234 +0,0 @@
<?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_AB" />
</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="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,mmap_no_irq_out,voip_rx,compressed_offload"/>
<route type="mix" sink="Speaker Safe"
sources="primary output,deep buffer,haptic,raw,mmap_no_irq_out,voip_rx,compressed_offload"/>
<route type="mix" sink="Earpiece"
sources="primary output,deep buffer,haptic,raw,mmap_no_irq_out,voip_rx,compressed_offload"/>
<route type="mix" sink="USB Device Out"
sources="primary output,deep buffer,haptic,raw,mmap_no_irq_out,voip_rx,hifi_playback,compressed_offload"/>
<route type="mix" sink="USB Headset Out"
sources="primary output,deep buffer,haptic,raw,mmap_no_irq_out,voip_rx,hifi_playback,compressed_offload"/>
<route type="mix" sink="BT SCO"
sources="primary output,deep buffer,haptic,voip_rx,compressed_offload"/>
<route type="mix" sink="BT SCO Headset"
sources="primary output,deep buffer,haptic,voip_rx,compressed_offload"/>
<route type="mix" sink="BT SCO Car Kit"
sources="primary output,deep buffer,haptic,voip_rx,compressed_offload"/>
<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>

View File

@@ -1,234 +0,0 @@
<?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_AB" />
</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="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,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Speaker Safe"
sources="primary output,deep buffer,haptic,raw,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="Earpiece"
sources="primary output,deep buffer,haptic,raw,mmap_no_irq_out,voip_rx"/>
<route type="mix" sink="USB Device Out"
sources="primary output,deep buffer,haptic,raw,mmap_no_irq_out,voip_rx,hifi_playback"/>
<route type="mix" sink="USB Headset Out"
sources="primary output,deep buffer,haptic,raw,mmap_no_irq_out,voip_rx,hifi_playback"/>
<route type="mix" sink="BT SCO"
sources="primary output,deep buffer,haptic,voip_rx"/>
<route type="mix" sink="BT SCO Headset"
sources="primary output,deep buffer,haptic,voip_rx"/>
<route type="mix" sink="BT SCO Car Kit"
sources="primary output,deep buffer,haptic,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>
<!-- A2dp Audio HAL -->
<xi:include href="a2dp_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>

View File

@@ -1,844 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Copyright (c) 2019, The Linux Foundation. All rights reserved. -->
<!-- -->
<!-- Redistribution and use in source and binary forms, with or without -->
<!-- modification, are permitted provided that the following conditions are -->
<!-- met: -->
<!-- * Redistributions of source code must retain the above copyright -->
<!-- notice, this list of conditions and the following disclaimer. -->
<!-- * Redistributions in binary form must reproduce the above -->
<!-- copyright notice, this list of conditions and the following -->
<!-- disclaimer in the documentation and/or other materials provided -->
<!-- with the distribution. -->
<!-- * Neither the name of The Linux Foundation nor the names of its -->
<!-- contributors may be used to endorse or promote products derived -->
<!-- from this software without specific prior written permission. -->
<!-- -->
<!-- THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED -->
<!-- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -->
<!-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT -->
<!-- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS -->
<!-- BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -->
<!-- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -->
<!-- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR -->
<!-- BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -->
<!-- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN -->
<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -->
<mixer>
<!-- Initial default value of ALSA command -->
<!-- PCM timeout -->
<ctl name="PCM Stream Wait Time in MSec" value="100"/>
<ctl name="Voice PCM Stream Wait Time in MSec" value="500"/>
<!-- TDM 0 setting -->
<ctl name="TDM_0_RX Chan" value="Four"/>
<ctl name="TDM_0_RX Format" value="S32_LE"/>
<ctl name="TDM_0_TX Chan" value="Four"/>
<ctl name="TDM_0_TX Format" value="S32_LE"/>
<!-- Haptic setting -->
<ctl name="Haptics Source" value="PCM"/>
<ctl name="HR Haptics Source" value="PCM"/>
<ctl name="HAPTIC_RX Format" value="S32_LE"/>
<ctl name="HAPTIC_RX SlotFmt" value="S32_LE"/>
<ctl name="HAPTIC_RX Chan" value="Four"/>
<ctl name="HAPTIC_RX nSlot" value="Four"/>
<ctl name="RX Slots" id="0" value="2"/>
<ctl name="RX Slots" id="1" value="0"/>
<ctl name="HR RX Slots" id="0" value="3"/>
<ctl name="HR RX Slots" id="1" value="0"/>
<!-- Cirrus Booster Amp TDM slot assignment-->
<!-- RX slot -->
<ctl name="ASPRX1 Slot Position" value="0"/>
<ctl name="R ASPRX1 Slot Position" value="1"/>
<ctl name="E ASPRX1 Slot Position" value="0"/>
<ctl name="ASPRX2 Slot Position" value="7"/>
<ctl name="R ASPRX2 Slot Position" value="7"/>
<ctl name="E ASPRX2 Slot Position" value="7"/>
<!-- TX slot -->
<ctl name="ASPTX1 Slot Position" value="0"/>
<ctl name="R ASPTX1 Slot Position" value="1"/>
<ctl name="E ASPTX1 Slot Position" value="7"/>
<ctl name="ASPTX2 Slot Position" value="2"/>
<ctl name="R ASPTX2 Slot Position" value="3"/>
<ctl name="E ASPTX2 Slot Position" value="7"/>
<ctl name="ASPTX3 Slot Position" value="7"/>
<ctl name="R ASPTX3 Slot Position" value="7"/>
<ctl name="E ASPTX3 Slot Position" value="7"/>
<ctl name="ASPTX4 Slot Position" value="7"/>
<ctl name="R ASPTX4 Slot Position" value="7"/>
<ctl name="E ASPTX4 Slot Position" value="7"/>
<!-- Cirrus Booster Amp Output Gain -->
<ctl name="AMP PCM Gain" value="16dB"/>
<ctl name="R AMP PCM Gain" value="16dB"/>
<ctl name="E AMP PCM Gain" value="10dB"/>
<ctl name="Digital PCM Volume" value="817"/>
<ctl name="R Digital PCM Volume" value="817"/>
<ctl name="E Digital PCM Volume" value="817"/>
<!-- Cirrus Booster Amp Power -->
<ctl name="AMP Enable Switch" value="0"/>
<ctl name="R AMP Enable Switch" value="0"/>
<ctl name="E AMP Enable Switch" value="0"/>
<!-- Cirrus Amp Mode -->
<ctl name="Amplifier Mode" value="SPK"/>
<ctl name="R Amplifier Mode" value="SPK"/>
<ctl name="E Amplifier Mode" value="RCV"/>
<!-- Cirrus Booster mode -->
<ctl name="DACPCM Source" value="ASP_RX1"/>
<ctl name="R DACPCM Source" value="ASP_RX1"/>
<ctl name="E DACPCM Source" value="ASP_RX1"/>
<!-- Cirrus ASP TX source -->
<ctl name="ASP_TX1 Source" value="VMON" />
<ctl name="R ASP_TX1 Source" value="VMON" />
<ctl name="E ASP_TX1 Source" value="VMON" />
<ctl name="ASP_TX2 Source" value="IMON" />
<ctl name="R ASP_TX2 Source" value="IMON" />
<ctl name="E ASP_TX2 Source" value="IMON" />
<ctl name="ASP_TX3 Source" value="Zero" />
<ctl name="R ASP_TX3 Source" value="Zero" />
<ctl name="E ASP_TX3 Source" value="Zero" />
<ctl name="ASP_TX4 Source" value="Zero" />
<ctl name="R ASP_TX4 Source" value="Zero" />
<ctl name="E ASP_TX4 Source" value="Zero" />
<!-- default EP volume -->
<ctl name="PCM Playback Switch" value="1"/>
<ctl name="PCM Playback Volume" value="10"/>
<!-- audio RX route initial/default value -->
<ctl name="TDM_0_RX Mixer EP1" value="0"/>
<ctl name="TDM_0_RX Mixer EP2" value="0"/>
<ctl name="TDM_0_RX Mixer EP3" value="0"/>
<ctl name="TDM_0_RX Mixer EP4" value="0"/>
<ctl name="TDM_0_RX Mixer EP5" value="0"/>
<ctl name="TDM_0_RX Mixer EP6" value="0"/>
<ctl name="TDM_0_RX Mixer EP7" value="0"/>
<ctl name="TDM_0_RX Mixer EP8" value="0"/>
<ctl name="TDM_0_RX Mixer NoHost1" value="0"/>
<ctl name="TDM_0_RX Mixer VOIP" value="0"/>
<ctl name="TDM_0_RX Mixer RAW" value="0"/>
<ctl name="TDM_1_RX Mixer EP1" value="0"/>
<ctl name="TDM_1_RX Mixer EP2" value="0"/>
<ctl name="TDM_1_RX Mixer EP3" value="0"/>
<ctl name="TDM_1_RX Mixer EP4" value="0"/>
<ctl name="TDM_1_RX Mixer EP5" value="0"/>
<ctl name="TDM_1_RX Mixer EP6" value="0"/>
<ctl name="TDM_1_RX Mixer EP7" value="0"/>
<ctl name="TDM_1_RX Mixer EP8" value="0"/>
<ctl name="TDM_1_RX Mixer NoHost1" value="0"/>
<ctl name="USB_RX Mixer EP1" value="0"/>
<ctl name="USB_RX Mixer EP2" value="0"/>
<ctl name="USB_RX Mixer EP3" value="0"/>
<ctl name="USB_RX Mixer EP4" value="0"/>
<ctl name="USB_RX Mixer EP5" value="0"/>
<ctl name="USB_RX Mixer EP6" value="0"/>
<ctl name="USB_RX Mixer EP7" value="0"/>
<ctl name="USB_RX Mixer NoHost1" value="0"/>
<ctl name="USB_RX Mixer VOIP" value="0"/>
<ctl name="USB_RX Mixer HIFI" value="0"/>
<ctl name="USB_RX Mixer RAW" value="0"/>
<ctl name="BT_RX Mixer EP1" value="0"/>
<ctl name="BT_RX Mixer EP2" value="0"/>
<ctl name="BT_RX Mixer EP3" value="0"/>
<ctl name="BT_RX Mixer EP4" value="0"/>
<ctl name="BT_RX Mixer EP5" value="0"/>
<ctl name="BT_RX Mixer EP6" value="0"/>
<ctl name="BT_RX Mixer EP7" value="0"/>
<ctl name="BT_RX Mixer NoHost1" value="0"/>
<ctl name="BT_RX Mixer VOIP" value="0"/>
<ctl name="INCALL_RX Mixer EP1" value="0"/>
<ctl name="INCALL_RX Mixer EP2" value="0"/>
<ctl name="INCALL_RX Mixer EP3" value="0"/>
<ctl name="INCALL_RX Mixer EP4" value="0"/>
<ctl name="INCALL_RX Mixer EP5" value="0"/>
<ctl name="INCALL_RX Mixer EP6" value="0"/>
<ctl name="INCALL_RX Mixer EP7" value="0"/>
<ctl name="INCALL_RX Mixer NoHost1" value="0"/>
<ctl name="SINK_IDS" id="0" value="-1"/>
<ctl name="SINK_IDS" id="1" value="-1"/>
<!-- audio TX route initial/default value -->
<ctl name="EP1 TX Mixer TDM_0_TX" value="0"/>
<ctl name="EP2 TX Mixer TDM_0_TX" value="0"/>
<ctl name="EP3 TX Mixer TDM_0_TX" value="0"/>
<ctl name="EP4 TX Mixer TDM_0_TX" value="0"/>
<ctl name="EP5 TX Mixer TDM_0_TX" value="0"/>
<ctl name="EP6 TX Mixer TDM_0_TX" value="0"/>
<ctl name="NoHost1 TX Mixer TDM_0_TX" value="0"/>
<ctl name="EP1 TX Mixer TDM_1_TX" value="0"/>
<ctl name="EP2 TX Mixer TDM_1_TX" value="0"/>
<ctl name="EP3 TX Mixer TDM_1_TX" value="0"/>
<ctl name="EP4 TX Mixer TDM_1_TX" value="0"/>
<ctl name="EP5 TX Mixer TDM_1_TX" value="0"/>
<ctl name="EP6 TX Mixer TDM_1_TX" value="0"/>
<ctl name="NoHost1 TX Mixer TDM_1_TX" value="0"/>
<ctl name="EP1 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="EP2 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="EP3 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="EP4 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="EP5 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="EP6 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="NoHost1 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="VOIP TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="EP1 TX Mixer BT_TX" value="0"/>
<ctl name="EP2 TX Mixer BT_TX" value="0"/>
<ctl name="EP3 TX Mixer BT_TX" value="0"/>
<ctl name="EP4 TX Mixer BT_TX" value="0"/>
<ctl name="EP5 TX Mixer BT_TX" value="0"/>
<ctl name="EP6 TX Mixer BT_TX" value="0"/>
<ctl name="NoHost1 TX Mixer BT_TX" value="0"/>
<ctl name="VOIP TX Mixer BT_TX" value="0"/>
<ctl name="EP1 TX Mixer USB_TX" value="0"/>
<ctl name="EP2 TX Mixer USB_TX" value="0"/>
<ctl name="EP3 TX Mixer USB_TX" value="0"/>
<ctl name="EP4 TX Mixer USB_TX" value="0"/>
<ctl name="EP5 TX Mixer USB_TX" value="0"/>
<ctl name="EP6 TX Mixer USB_TX" value="0"/>
<ctl name="NoHost1 TX Mixer USB_TX" value="0"/>
<ctl name="VOIP TX Mixer USB_TX" value="0"/>
<ctl name="EP1 TX Mixer INCALL_TX" value="0"/>
<ctl name="EP2 TX Mixer INCALL_TX" value="0"/>
<ctl name="EP3 TX Mixer INCALL_TX" value="0"/>
<ctl name="EP4 TX Mixer INCALL_TX" value="0"/>
<ctl name="EP5 TX Mixer INCALL_TX" value="0"/>
<ctl name="EP6 TX Mixer INCALL_TX" value="0"/>
<ctl name="NoHost1 TX Mixer INCALL_TX" value="0"/>
<ctl name="EP4 TX Mixer I2S_2_TX" value="0"/>
<!-- AoC Mic setting -->
<ctl name="MIC DC Blocker" value="1" />
<ctl name="MIC HW Gain At High Power Mode (cB)" value="0" />
<ctl name="MIC Record Soft Gain (dB)" value="-40"/>
<!-- USB setting v2 -->
<ctl name="USB Bus ID v2" value="2"/>
<ctl name="USB Dev ID v2" value="2"/>
<ctl name="USB Playback EP ID v2" value="1"/>
<ctl name="USB Playback FORMAT v2" value="0"/>
<ctl name="USB Playback SR v2" value="48000"/>
<ctl name="USB Playback CH v2" value="2"/>
<ctl name="USB Playback BW v2" value="24"/>
<ctl name="USB Capture EP ID v2" value="1"/>
<ctl name="USB Capture FORMAT v2" value="0"/>
<ctl name="USB Capture SR v2" value="48000"/>
<ctl name="USB Capture CH v2" value="1"/>
<ctl name="USB Capture BW v2" value="16"/>
<ctl name="AoC Modem Downlink ASRC Mode" value="ASP_ON"/>
<ctl name="Voice Call Mic Source" value="Builtin_MIC"/>
<ctl name="Mic Spatial Module Enable" value="0"/>
<ctl name="Audio Capture Eraser Enable" value="0"/>
<!-- audio PDM mic default state -->
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="-1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="-1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="-1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="Audio Capture Mic Source" value="Builtin_MIC"/>
<!-- sidetone controls -->
<ctl name="Sidetone Enable" value="0"/>
<ctl name="Sidetone Volume" value="-96"/>
<ctl name="Sidetone Selected Mic" value="0"/>
<ctl name="Sidetone EQ Stage Number" value="1"/>
<!-- IEEE 754, value is in float -->
<ctl name="Sidetone Biquad0" id="0" value="0"/>
<ctl name="Sidetone Biquad0" id="1" value="0"/>
<ctl name="Sidetone Biquad0" id="2" value="0"/>
<ctl name="Sidetone Biquad0" id="3" value="0"/>
<ctl name="Sidetone Biquad0" id="4" value="0"/>
<ctl name="Sidetone Biquad0" id="5" value="0"/>
<ctl name="Sidetone Biquad1" id="0" value="0"/>
<ctl name="Sidetone Biquad1" id="1" value="0"/>
<ctl name="Sidetone Biquad1" id="2" value="0"/>
<ctl name="Sidetone Biquad1" id="3" value="0"/>
<ctl name="Sidetone Biquad1" id="4" value="0"/>
<ctl name="Sidetone Biquad1" id="5" value="0"/>
<ctl name="Sidetone Biquad2" id="0" value="0"/>
<ctl name="Sidetone Biquad2" id="1" value="0"/>
<ctl name="Sidetone Biquad2" id="2" value="0"/>
<ctl name="Sidetone Biquad2" id="3" value="0"/>
<ctl name="Sidetone Biquad2" id="4" value="0"/>
<ctl name="Sidetone Biquad2" id="5" value="0"/>
<ctl name="Sidetone Biquad3" id="0" value="0"/>
<ctl name="Sidetone Biquad3" id="1" value="0"/>
<ctl name="Sidetone Biquad3" id="2" value="0"/>
<ctl name="Sidetone Biquad3" id="3" value="0"/>
<ctl name="Sidetone Biquad3" id="4" value="0"/>
<ctl name="Sidetone Biquad3" id="5" value="0"/>
<ctl name="Sidetone Biquad4" id="0" value="0"/>
<ctl name="Sidetone Biquad4" id="1" value="0"/>
<ctl name="Sidetone Biquad4" id="2" value="0"/>
<ctl name="Sidetone Biquad4" id="3" value="0"/>
<ctl name="Sidetone Biquad4" id="4" value="0"/>
<ctl name="Sidetone Biquad4" id="5" value="0"/>
<ctl name="Incall Capture Stream0" value="Off"/>
<ctl name="Incall Capture Stream1" value="Off"/>
<ctl name="Incall Capture Stream2" value="Off"/>
<!-- These two controls control the muting function of mics and sinks during the voice call. -->
<!-- They would be enabled by HAL. -->
<ctl name="Incall Sink Mute" value="0"/>
<ctl name="Incall Mic Mute" value="0"/>
<!-- Decoder Reference Enable is controlled in aoc_control -->
<ctl name="Decoder Reference Enable" value="0"/>
<ctl name="LVM Enable" value="0"/>
<!-- sidetone dynamic control -->
<path name="sidetone-for handset">
<!-- 1065353216 = 0x3f800000 = 1.0 -->
<ctl name="Sidetone Biquad0" id="0" value="1065353216"/>
<ctl name="Sidetone Biquad0" id="1" value="1065353216"/>
<ctl name="Sidetone Biquad0" id="2" value="0"/>
<ctl name="Sidetone Biquad0" id="3" value="0"/>
<ctl name="Sidetone Biquad0" id="4" value="0"/>
<ctl name="Sidetone Biquad0" id="5" value="0"/>
<ctl name="Sidetone Biquad1" id="0" value="1065353216"/>
<ctl name="Sidetone Biquad1" id="1" value="1065353216"/>
<ctl name="Sidetone Biquad1" id="2" value="0"/>
<ctl name="Sidetone Biquad1" id="3" value="0"/>
<ctl name="Sidetone Biquad1" id="4" value="0"/>
<ctl name="Sidetone Biquad1" id="5" value="0"/>
<ctl name="Sidetone Biquad2" id="0" value="1065353216"/>
<ctl name="Sidetone Biquad2" id="1" value="1065353216"/>
<ctl name="Sidetone Biquad2" id="2" value="0"/>
<ctl name="Sidetone Biquad2" id="3" value="0"/>
<ctl name="Sidetone Biquad2" id="4" value="0"/>
<ctl name="Sidetone Biquad2" id="5" value="0"/>
<ctl name="Sidetone Biquad3" id="0" value="1065353216"/>
<ctl name="Sidetone Biquad3" id="1" value="1065353216"/>
<ctl name="Sidetone Biquad3" id="2" value="0"/>
<ctl name="Sidetone Biquad3" id="3" value="0"/>
<ctl name="Sidetone Biquad3" id="4" value="0"/>
<ctl name="Sidetone Biquad3" id="5" value="0"/>
<ctl name="Sidetone Biquad4" id="0" value="1065353216"/>
<ctl name="Sidetone Biquad4" id="1" value="1065353216"/>
<ctl name="Sidetone Biquad4" id="2" value="0"/>
<ctl name="Sidetone Biquad4" id="3" value="0"/>
<ctl name="Sidetone Biquad4" id="4" value="0"/>
<ctl name="Sidetone Biquad4" id="5" value="0"/>
<ctl name="Sidetone EQ Stage Number" value="5"/>
<ctl name="Sidetone Volume" value="-90"/>
<ctl name="Sidetone Enable" value="1"/>
</path>
<!-- audio playback dynamic route -->
<path name="deep-buffer-playbackP">
<ctl name="TDM_0_RX Mixer EP6" value="1"/>
</path>
<path name="deep-buffer-playbackP hac-handset">
</path>
<path name="deep-buffer-playbackP bt">
<ctl name="BT_RX Mixer EP6" value="1"/>
</path>
<path name="deep-buffer-playbackP usb-headphone">
<ctl name="USB_RX Mixer EP6" value="1"/>
</path>
<path name="deep-buffer-playbackP hearing-aid">
</path>
<path name="low-latency-playbackP">
<ctl name="TDM_0_RX Mixer EP2" value="1"/>
</path>
<path name="low-latency-playbackP hac-handset">
</path>
<path name="low-latency-playbackP bt">
<ctl name="BT_RX Mixer EP2" value="1"/>
</path>
<path name="low-latency-playbackP usb-headphone">
<ctl name="USB_RX Mixer EP2" value="1"/>
</path>
<path name="low-latency-playbackP hearing-aid">
</path>
<path name="raw-playbackP">
<ctl name="TDM_0_RX Mixer RAW" value="1"/>
</path>
<path name="raw-playbackP hac-handset">
</path>
<path name="raw-playbackP usb-headphone">
<ctl name="USB_RX Mixer RAW" value="1"/>
</path>
<path name="raw-playbackP hearing-aid">
</path>
<path name="mmap-playbackP">
<ctl name="TDM_0_RX Mixer EP1" value="1"/>
</path>
<path name="mmap-playbackP hac-handset">
</path>
<path name="mmap-playbackP usb-headphone">
<ctl name="USB_RX Mixer EP1" value="1"/>
</path>
<path name="mmap-playbackP hearing-aid">
</path>
<path name="compress-offload-playback">
<ctl name="LVM Enable" value="1" />
</path>
<path name="compress-offload-playbackP">
<path name="compress-offload-playback" />
<ctl name="TDM_0_RX Mixer EP7" value="1"/>
</path>
<path name="compress-offload-playbackP hac-handset">
<path name="compress-offload-playback" />
</path>
<path name="compress-offload-playbackP bt">
<path name="compress-offload-playback" />
<ctl name="BT_RX Mixer EP7" value="1"/>
</path>
<path name="compress-offload-playbackP usb-headphone">
<path name="compress-offload-playback" />
<ctl name="USB_RX Mixer EP7" value="1"/>
</path>
<path name="compress-offload-playbackP hearing-aid">
<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>
<path name="voip-playbackP hac-handset">
</path>
<path name="voip-playbackP bt">
<ctl name="BT_RX Mixer VOIP" value="1"/>
</path>
<path name="voip-playbackP usb-headphone">
<ctl name="USB_RX Mixer VOIP" value="1"/>
</path>
<path name="voip-playbackP hearing-aid">
</path>
<path name="haptic-audioP">
<ctl name="TDM_0_RX Mixer EP3" value="1"/>
<ctl name="TDM_0_RX Mixer EP8" value="1"/>
</path>
<path name="haptic-audioP hac-handset">
</path>
<path name="haptic-audioP bt">
<ctl name="BT_RX Mixer EP3" value="1"/>
<ctl name="TDM_0_RX Mixer EP8" value="1"/>
</path>
<path name="haptic-audioP usb-headphone">
<ctl name="USB_RX Mixer EP3" value="1"/>
<ctl name="TDM_0_RX Mixer EP8" value="1"/>
</path>
<path name="hifi-playbackP">
</path>
<path name="hifi-playbackP usb-headphone">
<ctl name="USB_RX Mixer HIFI" value="1"/>
</path>
<path name="hifi-recordC">
</path>
<path name="hifi-recordC usb-headset-mic">
</path>
<!-- audio capture dynamic route -->
<path name="audio-recordC">
<ctl name="EP1 TX Mixer INTERNAL_MIC_TX" value="1"/>
</path>
<path name="audio-recordC usb-headset-mic">
<ctl name="EP1 TX Mixer USB_TX" value="1"/>
</path>
<path name="audio-recordC bt-mic">
<ctl name="EP1 TX Mixer BT_TX" value="1"/>
</path>
<path name="voip-recordC">
<ctl name="VOIP TX Mixer INTERNAL_MIC_TX" value="1"/>
</path>
<path name="voip-recordC usb-headset-mic">
<ctl name="VOIP TX Mixer USB_TX" value="1"/>
</path>
<path name="voip-recordC bt-mic">
<ctl name="VOIP TX Mixer BT_TX" value="1"/>
</path>
<!-- voice-call dynamic route -->
<path name="voice-callP">
<ctl name="TDM_0_RX Mixer EP5" value="1"/>
</path>
<path name="voice-callP bt">
<ctl name="BT_RX Mixer EP5" value="1"/>
</path>
<path name="voice-callP usb-headphone">
<ctl name="USB_RX Mixer EP5" value="1"/>
</path>
<path name="voice-callP hearing-aid">
<ctl name="INCALL_RX Mixer EP5" value="1"/>
</path>
<path name="voice-callP call-screen">
<ctl name="INCALL_RX Mixer EP5" value="1"/>
</path>
<path name="voice-callC">
<ctl name="EP4 TX Mixer INTERNAL_MIC_TX" value="1"/>
</path>
<path name="voice-callC usb-headset-mic">
<ctl name="EP4 TX Mixer USB_TX" value="1"/>
</path>
<path name="voice-callC bt-mic">
<ctl name="EP4 TX Mixer BT_TX" value="1"/>
</path>
<path name="voice-callC hearing-aid">
<ctl name="EP4 TX Mixer INCALL_TX" value="1"/>
</path>
<path name="voice-callC call-screen">
<ctl name="EP4 TX Mixer INCALL_TX" value="1"/>
</path>
<path name="hostless-ulC spk-vi">
<ctl name="NoHost1 TX Mixer TDM_0_TX" value="1"/>
</path>
<path name="telephony-rx-captureC">
<ctl name="Incall Capture Stream0" value="DL"/>
</path>
<path name="incall-capture1C uplink">
<ctl name="Incall Capture Stream1" value="UL"/>
</path>
<path name="incall-capture1C downlink">
<ctl name="Incall Capture Stream1" value="DL"/>
</path>
<path name="incall-capture1C call">
<ctl name="Incall Capture Stream1" value="UL_DL"/>
</path>
<path name="incall-capture2C uplink">
<ctl name="Incall Capture Stream2" value="UL"/>
</path>
<path name="incall-capture2C downlink">
<ctl name="Incall Capture Stream2" value="DL"/>
</path>
<path name="incall-capture2C call">
<ctl name="Incall Capture Stream2" value="UL_DL"/>
</path>
<path name="low-latency-recordC">
<ctl name="EP3 TX Mixer INTERNAL_MIC_TX" value="1"/>
</path>
<path name="low-latency-recordC usb-headset-mic">
<ctl name="EP3 TX Mixer USB_TX" value="1"/>
</path>
<path name="mmap-recordC">
<ctl name="EP2 TX Mixer INTERNAL_MIC_TX" value="1"/>
</path>
<path name="mmap-recordC usb-headset-mic">
<ctl name="EP2 TX Mixer USB_TX" value="1"/>
</path>
<!-- codec setting -->>
<!-- Rx device -->
<path name="handset">
<ctl name="E DACPCM Source" value="ASP_RX1"/>
<ctl name="E AMP PCM Gain" value="10dB"/>
<ctl name="ASPTX1 Slot Position" value="4"/>
<ctl name="E ASPTX1 Slot Position" value="0"/>
<ctl name="ASPTX2 Slot Position" value="5"/>
<ctl name="E ASPTX2 Slot Position" value="2"/>
<ctl name="E AMP Enable Switch" value="1"/>
</path>
<path name="voice-handset">
<ctl name="E DACPCM Source" value="ASP_RX1"/>
<ctl name="E AMP PCM Gain" value="10dB"/>
<ctl name="ASPTX1 Slot Position" value="4"/>
<ctl name="E ASPTX1 Slot Position" value="0"/>
<ctl name="ASPTX2 Slot Position" value="5"/>
<ctl name="E ASPTX2 Slot Position" value="2"/>
<ctl name="E AMP Enable Switch" value="1"/>
</path>
<path name="voice-hac">
<path name="voice-handset"/>
</path>
<path name="voice-hac-handset">
</path>
<path name="speaker">
<ctl name="AMP Enable Switch" value="1"/>
<ctl name="R AMP Enable Switch" value="1"/>
</path>
<path name="voice-speaker">
<ctl name="ASP_TX1 Source" value="VMON" />
<ctl name="R ASP_TX1 Source" value="Zero" />
<ctl name="ASPTX1 Slot Position" value="0"/>
<ctl name="R ASPTX1 Slot Position" value="1"/>
<ctl name="ASPRX1 Slot Position" value="0"/>
<ctl name="R ASPRX1 Slot Position" value="1"/>
<ctl name="AMP Enable Switch" value="1"/>
<ctl name="R AMP Enable Switch" value="1"/>
</path>
<path name="voice-dual-speaker">
<path name="speaker" />
</path>
<path name="speaker-safe">
<ctl name="R AMP Enable Switch" value="1"/>
</path>
<path name="usb-tty-full">
</path>
<path name="usb-tty-hco">
</path>
<path name="usb-tty-vco">
</path>
<!-- Tx device -->
<path name="handset-mic">
<ctl name="Mic Spatial Module Enable" value="1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="MIC DC Blocker" value="1"/>
</path>
<path name="handset-mic-post">
<ctl name="MIC Record Soft Gain (dB)" value="22"/>
</path>
<path name="voice-handset-mic">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="MIC DC Blocker" value="1"/>
<ctl name="MIC HW Gain At High Power Mode (cB)" value="130"/>
</path>
<path name="voice-handset-mic-post">
<ctl name="MIC Record Soft Gain (dB)" value="0"/>
</path>
<path name="speaker-mic">
<ctl name="Mic Spatial Module Enable" value="1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="MIC DC Blocker" value="1"/>
</path>
<path name="speaker-mic-post">
<ctl name="MIC Record Soft Gain (dB)" value="0"/>
</path>
<path name="voice-speaker-mic">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="MIC DC Blocker" value="1"/>
<ctl name="MIC HW Gain At High Power Mode (cB)" value="130"/>
</path>
<path name="voice-speaker-mic-post">
<ctl name="MIC Record Soft Gain (dB)" value="0"/>
</path>
<path name="camcorder-mic">
<ctl name="Mic Spatial Module Enable" value="1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="MIC DC Blocker" value="1"/>
</path>
<path name="camcorder-mic-post">
<ctl name="MIC Record Soft Gain (dB)" value="0"/>
</path>
<path name="voice-recog-mic">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="MIC DC Blocker" value="1"/>
</path>
<path name="voice-recog-mic-post">
<ctl name="MIC Record Soft Gain (dB)" value="22"/>
</path>
<path name="voice-recog-aec-mic">
<ctl name="Audio Capture Eraser Enable" value="1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="MIC DC Blocker" value="1"/>
<ctl name="Audio Capture Mic Source" value="ERASER"/>
</path>
<path name="voice-recog-aec-mic-post">
<ctl name="MIC Record Soft Gain (dB)" value="0"/>
</path>
<path name="unprocessed-mic">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="MIC DC Blocker" value="1"/>
</path>
<path name="unprocessed-mic-post">
<ctl name="MIC Record Soft Gain (dB)" value="5"/>
</path>
<path name="unprocessed-dual-mic">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="MIC DC Blocker" value="1"/>
</path>
<path name="unprocessed-dual-mic-post">
<ctl name="MIC Record Soft Gain (dB)" value="5"/>
</path>
<path name="unprocessed-triple-mic">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="MIC DC Blocker" value="1"/>
</path>
<path name="unprocessed-triple-mic-post">
<ctl name="MIC Record Soft Gain (dB)" value="5"/>
</path>
<path name="bt-mic">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="Audio Capture Mic Source" value="BT_MIC"/>
<ctl name="Voice Call Mic Source" value="BT_MIC"/>
</path>
<path name="bt-mic-post">
<ctl name="MIC Record Soft Gain (dB)" value="0"/>
</path>
<path name="usb-headset-mic">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="Audio Capture Mic Source" value="USB_MIC"/>
<ctl name="Voice Call Mic Source" value="USB_MIC"/>
</path>
<path name="usb-headset-mic-post">
<ctl name="MIC Record Soft Gain (dB)" value="0"/>
</path>
<!-- cs35l41 specific path to load firmware in cs35l41.c -->
<path name="cs35l41-load-protection-firmware-start">
<!-- Enable it after get the protection firmware
<ctl name="DSP Booted" value="0" />
<ctl name="R DSP Booted" value="0" />
<ctl name="DSP1 Preload Switch" value="0" />
<ctl name="R DSP1 Preload Switch" value="0" />
-->
</path>
<path name="cs35l41-load-protection-firmware-end">
<!-- Enable it after get the protection firmware
<ctl name="DSP1 Preload Switch" value="1" />
<ctl name="R DSP1 Preload Switch" value="1" />
-->
</path>
<!-- cs35l41 specific path to load firmware in cs35l41.c end-->
</mixer>

View File

@@ -1,398 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<mixer>
<ctl name="TDM_0_RX Mixer EP3" value="0" />
<ctl name="TDM_0_RX Mixer EP6" value="0" />
<ctl name="I2S_0_RX Mixer EP3" value="0" />
<ctl name="AMP Enable Switch" value="0" />
<ctl name="R AMP Enable Switch" value="0" />
<ctl name="E AMP Enable Switch" value="0" />
<ctl name="SINK_IDS" id="0" value="-1" />
<ctl name="SINK_IDS" id="1" value="-1" />
<ctl name="MIC HW Gain At Lower Power Mode (cB)" value="-160" />
<ctl name="MIC HW Gain At High Power Mode (cB)" value="0" />
<ctl name="EP1 TX Mixer TDM_0_TX" value="0" />
<ctl name="DEFAULT_MIC_ID" value="0" />
<ctl name="MIC0" value="0" />
<ctl name="MIC1" value="0" />
<ctl name="MIC2" value="0" />
<ctl name="MIC3" value="0" />
<ctl name="AoC Speaker Mixer ASP Mode" value="ASP_ON" />
<path name="mfg-playback">
</path>
<path name="deep-buffer-playback speaker">
<ctl name="AoC Speaker Mixer ASP Mode" value="ASP_BYPASS" />
<ctl name="TDM_0_RX Mixer EP6" value="1" />
<path name="mfg-playback" />
</path>
<path name="deep-buffer-playback headphones">
<ctl name="I2S_0_RX Mixer EP6" value="1" />
<path name="mfg-playback" />
</path>
<path name="mfg-record">
<ctl name="EP1 TX Mixer TDM_0_TX" value="1" />
</path>
<path name="mic1-status">
<ctl name="MIC0" value="1" />
</path>
<path name="mic2-status">
<ctl name="MIC1" value="1" />
</path>
<path name="mic3-status">
<ctl name="MIC2" value="1" />
</path>
<path name="mic4-status">
<ctl name="MIC3" value="1" />
</path>
<path name="mic1-gain">
<ctl name="MIC HW Gain At Lower Power Mode (cB)" />
<ctl name="MIC HW Gain At High Power Mode (cB)" />
</path>
<path name="mic2-gain">
<ctl name="MIC HW Gain At Lower Power Mode (cB)" />
<ctl name="MIC HW Gain At High Power Mode (cB)" />
</path>
<path name="mic3-gain">
<ctl name="MIC HW Gain At Lower Power Mode (cB)" />
<ctl name="MIC HW Gain At High Power Mode (cB)" />
</path>
<path name="mic4-gain">
<ctl name="MIC HW Gain At Lower Power Mode (cB)" />
<ctl name="MIC HW Gain At High Power Mode (cB)" />
</path>
<path name="mic1-sw-gain">
<ctl name="MIC Record Soft Gain (dB)" />
</path>
<path name="mic2-sw-gain">
<ctl name="MIC Record Soft Gain (dB)" />
</path>
<path name="mic3-sw-gain">
<ctl name="MIC Record Soft Gain (dB)" />
</path>
<path name="mic4-sw-gain">
<ctl name="MIC Record Soft Gain (dB)" />
</path>
<path name="usb-capture-gain">
<ctl name="Headset Capture Volume" />
</path>
<path name="mic1-only">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="-1" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="-1" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1" />
<ctl name="MIC0" value="1" />
</path>
<path name="mic2-only">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="1" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="-1" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="-1" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1" />
<ctl name="MIC1" value="1" />
</path>
<path name="mic3-only">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="2" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="-1" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="-1" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1" />
<ctl name="MIC2" value="1" />
</path>
<path name="mic4-only">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="3" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="-1" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="-1" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1" />
<ctl name="MIC3" value="1" />
</path>
<path name="mic-all">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="1" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="3" />
<ctl name="MIC0" value="1" />
<ctl name="MIC1" value="1" />
<ctl name="MIC2" value="1" />
<ctl name="MIC3" value="1" />
</path>
<path name="amp_iv-only">
<ctl name="E ASPTX1 Slot Position" value="3" />
<ctl name="E ASPTX2 Slot Position" value="5" />
<ctl name="E ASPTX3 Slot Position" value="6" />
<ctl name="E ASPTX4 Slot Position" value="7" />
<ctl name="R ASPTX1 Slot Position" value="2" />
<ctl name="R ASPTX2 Slot Position" value="0" />
<ctl name="R ASPTX3 Slot Position" value="6" />
<ctl name="R ASPTX4 Slot Position" value="7" />
<ctl name="ASPTX1 Slot Position" value="1" />
<ctl name="ASPTX2 Slot Position" value="4" />
<ctl name="ASPTX3 Slot Position" value="5" />
<ctl name="ASPTX4 Slot Position" value="6" />
<ctl name="E ASP_TX1 Source" value="ASPRX1" />
<ctl name="E ASP_TX2 Source" value="Zero" />
<ctl name="E ASP_TX3 Source" value="Zero" />
<ctl name="E ASP_TX4 Source" value="Zero" />
<ctl name="R ASP_TX1 Source" value="VMON" />
<ctl name="R ASP_TX2 Source" value="ASPRX1" />
<ctl name="R ASP_TX3 Source" value="Zero" />
<ctl name="R ASP_TX4 Source" value="Zero" />
<ctl name="ASP_TX1 Source" value="ASPRX1" />
<ctl name="ASP_TX2 Source" value="Zero" />
<ctl name="ASP_TX3 Source" value="Zero" />
<ctl name="ASP_TX4 Source" value="Zero" />
<ctl name="NoHost1 TX Mixer TDM_0_TX" value="1" />
</path>
<path name="amp_iv1-only">
<ctl name="E ASPTX1 Slot Position" value="4" />
<ctl name="E ASPTX2 Slot Position" value="5" />
<ctl name="E ASPTX3 Slot Position" value="6" />
<ctl name="E ASPTX4 Slot Position" value="7" />
<ctl name="R ASPTX1 Slot Position" value="4" />
<ctl name="R ASPTX2 Slot Position" value="5" />
<ctl name="R ASPTX3 Slot Position" value="6" />
<ctl name="R ASPTX4 Slot Position" value="7" />
<ctl name="ASPTX1 Slot Position" value="0" />
<ctl name="ASPTX2 Slot Position" value="1" />
<ctl name="ASPTX3 Slot Position" value="2" />
<ctl name="ASPTX4 Slot Position" value="3" />
<ctl name="E ASP_TX1 Source" value="Zero" />
<ctl name="E ASP_TX2 Source" value="Zero" />
<ctl name="E ASP_TX3 Source" value="Zero" />
<ctl name="E ASP_TX4 Source" value="Zero" />
<ctl name="R ASP_TX1 Source" value="Zero" />
<ctl name="R ASP_TX2 Source" value="Zero" />
<ctl name="R ASP_TX3 Source" value="Zero" />
<ctl name="R ASP_TX4 Source" value="Zero" />
<ctl name="ASP_TX1 Source" value="VMON" />
<ctl name="ASP_TX2 Source" value="IMON" />
<ctl name="ASP_TX3 Source" value="VPMON" />
<ctl name="ASP_TX4 Source" value="ASPRX1" />
<ctl name="NoHost1 TX Mixer TDM_0_TX" value="1" />
</path>
<path name="amp_iv2-only">
<ctl name="E ASPTX1 Slot Position" value="4" />
<ctl name="E ASPTX2 Slot Position" value="5" />
<ctl name="E ASPTX3 Slot Position" value="6" />
<ctl name="E ASPTX4 Slot Position" value="7" />
<ctl name="R ASPTX1 Slot Position" value="0" />
<ctl name="R ASPTX2 Slot Position" value="1" />
<ctl name="R ASPTX3 Slot Position" value="2" />
<ctl name="R ASPTX4 Slot Position" value="3" />
<ctl name="ASPTX1 Slot Position" value="4" />
<ctl name="ASPTX2 Slot Position" value="5" />
<ctl name="ASPTX3 Slot Position" value="6" />
<ctl name="ASPTX4 Slot Position" value="7" />
<ctl name="E ASP_TX1 Source" value="Zero" />
<ctl name="E ASP_TX2 Source" value="Zero" />
<ctl name="E ASP_TX3 Source" value="Zero" />
<ctl name="E ASP_TX4 Source" value="Zero" />
<ctl name="R ASP_TX1 Source" value="VMON" />
<ctl name="R ASP_TX2 Source" value="IMON" />
<ctl name="R ASP_TX3 Source" value="VPMON" />
<ctl name="R ASP_TX4 Source" value="ASPRX1" />
<ctl name="ASP_TX1 Source" value="Zero" />
<ctl name="ASP_TX2 Source" value="Zero" />
<ctl name="ASP_TX3 Source" value="Zero" />
<ctl name="ASP_TX4 Source" value="Zero" />
<ctl name="NoHost1 TX Mixer TDM_0_TX" value="1" />
</path>
<path name="amp_iv3-only">
<ctl name="E ASPTX1 Slot Position" value="0" />
<ctl name="E ASPTX2 Slot Position" value="1" />
<ctl name="E ASPTX3 Slot Position" value="2" />
<ctl name="E ASPTX4 Slot Position" value="3" />
<ctl name="R ASPTX1 Slot Position" value="4" />
<ctl name="R ASPTX2 Slot Position" value="5" />
<ctl name="R ASPTX3 Slot Position" value="6" />
<ctl name="R ASPTX4 Slot Position" value="7" />
<ctl name="ASPTX1 Slot Position" value="4" />
<ctl name="ASPTX2 Slot Position" value="5" />
<ctl name="ASPTX3 Slot Position" value="6" />
<ctl name="ASPTX4 Slot Position" value="7" />
<ctl name="E ASP_TX1 Source" value="VMON" />
<ctl name="E ASP_TX2 Source" value="IMON" />
<ctl name="E ASP_TX3 Source" value="VPMON" />
<ctl name="E ASP_TX4 Source" value="ASPRX1" />
<ctl name="R ASP_TX1 Source" value="Zero" />
<ctl name="R ASP_TX2 Source" value="Zero" />
<ctl name="R ASP_TX3 Source" value="Zero" />
<ctl name="R ASP_TX4 Source" value="Zero" />
<ctl name="ASP_TX1 Source" value="Zero" />
<ctl name="ASP_TX2 Source" value="Zero" />
<ctl name="ASP_TX3 Source" value="Zero" />
<ctl name="ASP_TX4 Source" value="Zero" />
<ctl name="NoHost1 TX Mixer TDM_0_TX" value="1" />
</path>
<path name="speaker1-status">
<ctl name="AMP Enable Switch" value="1" />
</path>
<path name="speaker2-status">
<ctl name="R AMP Enable Switch" value="1" />
</path>
<path name="speaker3-status">
<ctl name="E AMP Enable Switch" value="1" />
</path>
<path name="speaker1-gain">
<ctl name="AMP PCM Gain" />
</path>
<path name="speaker2-gain">
<ctl name="R AMP PCM Gain" />
</path>
<path name="speaker3-gain">
<ctl name="E AMP PCM Gain" />
</path>
<path name="usb-playback-gain">
<ctl name="Headset Playback Volume" />
</path>
<path name="mfg-playback speaker">
<ctl name="AoC Speaker Mixer ASP Mode" value="ASP_BYPASS" />
<ctl name="TDM_0_RX Chan" value="Two" />
<ctl name="TDM_0_RX Format" value="S32_LE" />
<ctl name="ASPRX1 Slot Position" value="0" />
<ctl name="ASPRX2 Slot Position" value="7" />
<ctl name="R ASPRX1 Slot Position" value="1" />
<ctl name="R ASPRX2 Slot Position" value="7" />
<ctl name="SINK_IDS" id="0" value="0" />
<ctl name="SINK_IDS" id="1" value="-1" />
<ctl name="TDM_0_RX Mixer EP3" value="1" />
</path>
<path name="mfg-playback headphones">
<ctl name="I2S_0_RX Chan" value="Two" />
<ctl name="I2S_0_RX Format" value="S32_LE" />
<ctl name="I2S_0_RX Mixer EP3" value="1" />
<ctl name="SINK_IDS" id="0" value="1" />
<ctl name="SINK_IDS" id="1" value="-1" />
</path>
<path name="mfg-playback usb-headphones">
<ctl name="USB Dev ID" value="1" />
<ctl name="USB Playback EP ID" value="1" />
<ctl name="USB Playback SR" value="48000" />
<ctl name="USB Playback CH" value="2" />
<ctl name="USB Playback BW" value="16" />
<ctl name="USB Config To AoC" value="1" />
<ctl name="USB_RX Mixer EP3" value="1" />
</path>
<path name="speaker1-only">
<path name="mfg-playback speaker" />
<ctl name="Amplifier Mode" value="SPK" />
<ctl name="AMP PCM Gain" value="19dB" />
<ctl name="DACPCM Source" value="ASP_RX1" />
<ctl name="AMP Enable Switch" value="1" />
</path>
<path name="speaker2-only">
<path name="mfg-playback speaker" />
<ctl name="R Amplifier Mode" value="SPK" />
<ctl name="R AMP PCM Gain" value="19dB" />
<ctl name="R DACPCM Source" value="ASP_RX1" />
<ctl name="R AMP Enable Switch" value="1" />
</path>
<path name="speaker3-only">
<path name="mfg-playback speaker" />
<ctl name="E Amplifier Mode" value="SPK" />
<ctl name="E DACPCM Source" value="ASP_RX1" />
<ctl name="E AMP Enable Switch" value="1" />
</path>
<path name="headphones">
<ctl name="DAC1 MIXL DAC1 Switch" value="1" />
<ctl name="DAC1 MIXR DAC1 Switch" value="1" />
<ctl name="Stereo1 DAC MIXL DAC L1 Switch" value="1" />
<ctl name="Stereo1 DAC MIXR DAC R1 Switch" value="1" />
<ctl name="DAC L1 Source" value="Stereo1 DAC Mixer" />
<ctl name="DAC R1 Source" value="Stereo1 DAC Mixer" />
<ctl name="HPOL Playback Switch" value="1" />
<ctl name="HPOR Playback Switch" value="1" />
<path name="mfg-playback headphones" />
</path>
<path name="speaker-all">
<ctl name="Amplifier Mode" value="SPK" />
<ctl name="DACPCM Source" value="ASP_RX1" />
<ctl name="AMP Enable Switch" value="1" />
<ctl name="R Amplifier Mode" value="SPK" />
<ctl name="R DACPCM Source" value="ASP_RX1" />
<ctl name="R AMP Enable Switch" value="1" />
<ctl name="E Amplifier Mode" value="SPK" />
<ctl name="E DACPCM Source" value="ASP_RX1" />
<ctl name="E AMP Enable Switch" value="1" />
<path name="mfg-playback speaker" />
</path>
<path name="loopback-mic-speaker">
<ctl name="EP1 TX Mixer TDM_0_TX" value="1" />
<ctl name="SINK_IDS" id="0" value="0" />
<ctl name="SINK_IDS" id="1" value="-1" />
<path name="mfg-playback" />
</path>
<path name="loopback-mic-headphones">
<ctl name="EP1 TX Mixer TDM_0_TX" value="1" />
<ctl name="SINK_IDS" id="0" value="1" />
<ctl name="SINK_IDS" id="1" value="-1" />
<path name="mfg-playback" />
</path>
<path name="loopback-mic-usb-headphones">
<ctl name="MIC HW Gain At Lower Power Mode (cB)" value="-160" />
<ctl name="MIC HW Gain At High Power Mode (cB)" value="0" />
<ctl name="TDM_0_TX Format" value="S32_LE" />
<ctl name="TDM_0_TX Chan" value="One" />
<ctl name="USB Config To AoC" value="1" />
<ctl name="EP1 TX Mixer TDM_0_TX" value="1" />
</path>
<path name="loopback-usb-mic-speaker">
</path>
<path name="loopback-usb-mic-usb-headphone">
</path>
<pcm_id name="loopback-mic1" value="EP1 capture (*)"/>
<pcm_id name="loopback-mic2" value="EP1 capture (*)"/>
<pcm_id name="loopback-mic3" value="EP1 capture (*)"/>
<pcm_id name="loopback-mic4" value="EP1 capture (*)"/>
<pcm_id name="loopback-speaker1" value="EP3 playback (*)"/>
<pcm_id name="loopback-speaker2" value="EP3 playback (*)"/>
<pcm_id name="loopback-speaker3" value="EP3 playback (*)"/>
<pcm_id name="loopback-headphones" value="EP3 playback (*)"/>
<pcm_id name="loopback-usb-headphones" value="EP3 playback (*)"/>
<pcm_id name="loopback-usb-mic" value="EP1 capture (*)"/>
<pcm_id name="loopback-amp_iv" value="nohost1 capture (*)"/>
</mixer>

View File

@@ -1,33 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Copyright (c) 2020, The Linux Foundation. All rights reserved. -->
<!-- -->
<!-- Redistribution and use in source and binary forms, with or without -->
<!-- modification, are permitted provided that the following conditions are -->
<!-- met: -->
<!-- * Redistributions of source code must retain the above copyright -->
<!-- notice, this list of conditions and the following disclaimer. -->
<!-- * Redistributions in binary form must reproduce the above -->
<!-- copyright notice, this list of conditions and the following -->
<!-- disclaimer in the documentation and/or other materials provided -->
<!-- with the distribution. -->
<!-- * Neither the name of The Linux Foundation nor the names of its -->
<!-- contributors may be used to endorse or promote products derived -->
<!-- from this software without specific prior written permission. -->
<!-- -->
<!-- THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED -->
<!-- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -->
<!-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT -->
<!-- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS -->
<!-- BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -->
<!-- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -->
<!-- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR -->
<!-- BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -->
<!-- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN -->
<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -->
<sound_trigger_hal_configuration>
<supported_model>
<model name="CLIENT_HOTWORD" uuid="7038ddc8-30f2-11e6-b0ac-40a8f03d3f15" model_type="keyphrase" bargein="true"/>
<model name="CLIENT_AMBIENT_MUSIC" uuid="9f6ad62a-1f0b-11e7-87c5-40a8f03d3f15" model_type="generic" bargein="false"/>
<model name="CLIENT_AMBIENT_MUSIC_BREAK" uuid="12caddb1-acdb-4dce-8cb0-2e95a2313aee" model_type="generic" bargein="false"/>
</supported_model>
</sound_trigger_hal_configuration>

View File

@@ -1,307 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Copyright (c) 2018-2020, The Linux Foundation. All rights reserved. -->
<!-- -->
<!-- Redistribution and use in source and binary forms, with or without -->
<!-- modification, are permitted provided that the following conditions are -->
<!-- met: -->
<!-- * Redistributions of source code must retain the above copyright -->
<!-- notice, this list of conditions and the following disclaimer. -->
<!-- * Redistributions in binary form must reproduce the above -->
<!-- copyright notice, this list of conditions and the following -->
<!-- disclaimer in the documentation and/or other materials provided -->
<!-- with the distribution. -->
<!-- * Neither the name of The Linux Foundation nor the names of its -->
<!-- contributors may be used to endorse or promote products derived -->
<!-- from this software without specific prior written permission. -->
<!-- -->
<!-- THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED -->
<!-- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -->
<!-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT -->
<!-- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS -->
<!-- BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -->
<!-- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -->
<!-- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR -->
<!-- BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -->
<!-- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN -->
<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -->
<mixer>
<!-- Initial Values -->
<!-- Preload Stage -->
<ctl name="Main AMP Enable Switch" value="0" />
<ctl name="DSP1 Preload Switch" value="0" />
<ctl name="R Main AMP Enable Switch" value="0" />
<ctl name="R DSP1 Preload Switch" value="0" />
<!-- Clock-trigger Stage -->
<ctl name="SINK_IDS" id="0" value="-1"/>
<ctl name="SINK_IDS" id="1" value="-1"/>
<ctl name="PCM Playback Volume" value="10"/>
<ctl name="TDM_0_RX Mixer EP6" value="0"/>
<!-- Preparation Stage -->
<path name="crus-switch-fw-prepare">
<ctl name="DRE DRE Switch" value="1" />
<ctl name="VBSTMON Output Switch" value="1" />
<ctl name="DSP Booted" value="0" />
<ctl name="DSP1 Preload Switch" value="0" />
<ctl name="R DRE DRE Switch" value="1" />
<ctl name="R VBSTMON Output Switch" value="1" />
<ctl name="R DSP Booted" value="0" />
<ctl name="R DSP1 Preload Switch" value="0" />
</path>
<!-- Preload Stage -->
<path name="crus-fw-preload">
<ctl name="DSP1 Preload Switch" value="1" />
<ctl name="R DSP1 Preload Switch" value="1" />
</path>
<!-- Firmware-switching Stage -->
<path name="crus-switch-fw-Calibration">
<ctl name="AMP PCM Gain" value="17" />
<ctl name="Digital PCM Volume" value="817" />
<ctl name="PCM Source" value="DSP" />
<ctl name="DSP1 Firmware" value="Calibration" />
<ctl name="R AMP PCM Gain" value="17" />
<ctl name="R Digital PCM Volume" value="817" />
<ctl name="R PCM Source" value="DSP" />
<ctl name="R DSP1 Firmware" value="Calibration" />
</path>
<path name="crus-switch-fw-Diagnostic">
<ctl name="AMP PCM Gain" value="17" />
<ctl name="Digital PCM Volume" value="817" />
<ctl name="PCM Source" value="DSP" />
<ctl name="DSP1 Firmware" value="Diagnostic" />
<ctl name="R AMP PCM Gain" value="17" />
<ctl name="R Digital PCM Volume" value="817" />
<ctl name="R PCM Source" value="DSP" />
<ctl name="R DSP1 Firmware" value="Diagnostic" />
</path>
<path name="crus-switch-fw-Protection">
<ctl name="PCM Source" value="DSP" />
<ctl name="DSP1 Firmware" value="Protection" />
<ctl name="R PCM Source" value="DSP" />
<ctl name="R DSP1 Firmware" value="Protection" />
</path>
<!-- DSP-initialization Stage -->
<path name="crus-dsp-pre-calibration-amp1">
<ctl name="Main AMP Enable Switch" value="1" />
</path>
<path name="crus-dsp-pre-calibration-amp2">
<ctl name="R Main AMP Enable Switch" value="1" />
</path>
<path name="crus-dsp-pre-calibration">
<path name="crus-dsp-pre-calibration-amp1" />
<path name="crus-dsp-pre-calibration-amp2" />
</path>
<path name="crus-dsp-pre-diagnostic-amp1">
<ctl name="Main AMP Enable Switch" value="1" />
</path>
<path name="crus-dsp-pre-diagnostic-amp2">
<ctl name="R Main AMP Enable Switch" value="1" />
</path>
<path name="crus-dsp-pre-diagnostic">
<path name="crus-dsp-pre-diagnostic-amp1" />
<path name="crus-dsp-pre-diagnostic-amp2" />
</path>
<path name="crus-dsp-pre-protection">
<ctl name="Main AMP Enable Switch" value="1" />
<ctl name="R Main AMP Enable Switch" value="1" />
</path>
<!-- Clock-trigger Stage -->
<path name="platform-controls">
<ctl name="PCM Playback Volume" value="1000"/>
<ctl name="SINK_IDS" id="0" value="0"/>
<ctl name="SINK_IDS" id="1" value="-1"/>
<ctl name="TDM_0_RX Mixer EP6" value="1"/>
</path>
<!-- Post loaded firmware -->
<path name="crus-dsp-post-loading-fw">
<ctl name="Main AMP Enable Switch" value="0" />
<ctl name="R Main AMP Enable Switch" value="0" />
</path>
<!-- Value & Information Fetch Stage -->
<path name="platform-values">
<ctl name="TDM_0_RX Format" />
<ctl name="TDM_0_RX Chan" />
<ctl name="TDM_0_RX Sample Rate" />
<ctl name="PCM Playback Volume" />
<ctl name="TDM_0_RX Mixer EP6" />
</path>
<path name="cs35l41-values">
<ctl name="DRE DRE Switch" />
<ctl name="R DRE DRE Switch" />
<ctl name="VBSTMON Output Switch" />
<ctl name="R VBSTMON Output Switch" />
<ctl name="AMP PCM Gain" />
<ctl name="R AMP PCM Gain" />
<ctl name="Digital PCM Volume" />
<ctl name="R Digital PCM Volume" />
<ctl name="PCM Source" />
<ctl name="R PCM Source" />
<ctl name="DSP Booted" />
<ctl name="R DSP Booted" />
<ctl name="Main AMP Enable Switch" />
<ctl name="R Main AMP Enable Switch" />
<ctl name="DSP1 Preload Switch" />
<ctl name="R DSP1 Preload Switch" />
<ctl name="DSP1 Firmware" />
<ctl name="R DSP1 Firmware" />
</path>
<!-- Note that the order of controls does matter because
it should be matched to the structure defined in
sp_cal_common.h -->
<!--
struct calibration_data {
unsigned int cal_r;
unsigned int cal_status;
unsigned int cal_checksum;
unsigned int cal_ambient;
unsigned int amp_pcm_gain;
unsigned int digital_pcm_gain;
};
-->
<path name="cs35l41-dsp-amp1-calibration-values">
<ctl name="DSP1 Calibration cd CAL_R" />
<ctl name="DSP1 Calibration cd CAL_STATUS" />
<ctl name="DSP1 Calibration cd CAL_CHECKSUM" />
<ctl name="DSP1 Calibration cd CAL_AMBIENT" />
<ctl name="AMP PCM Gain" />
<ctl name="Digital PCM Volume" />
<!-- Only for debug print -->
<ctl name="DSP1 Calibration cd CAL_SET_STATUS" />
</path>
<path name="cs35l41-dsp-amp2-calibration-values">
<ctl name="R DSP1 Calibration cd CAL_R" />
<ctl name="R DSP1 Calibration cd CAL_STATUS" />
<ctl name="R DSP1 Calibration cd CAL_CHECKSUM" />
<ctl name="R DSP1 Calibration cd CAL_AMBIENT" />
<ctl name="R AMP PCM Gain" />
<ctl name="R Digital PCM Volume" />
<!-- Only for debug print -->
<ctl name="R DSP1 Calibration cd CAL_SET_STATUS" />
</path>
<!--
struct diagnostic_data {
struct calibration_data calibration_data;
unsigned int z_low_diff;
unsigned int diag_f0;
unsigned int diag_f0_status;
};
-->
<path name="cs35l41-dsp-amp1-diagnostic-values">
<!-- struct calibration_data START -->
<ctl name="DSP1 Diagnostic cd CAL_R" />
<ctl name="DSP1 Diagnostic cd CAL_STATUS" />
<ctl name="DSP1 Diagnostic cd CAL_CHECKSUM" />
<ctl name="DSP1 Diagnostic cd CAL_AMBIENT" />
<ctl name="AMP PCM Gain" />
<ctl name="Digital PCM Volume" />
<!-- struct calibration_data END -->
<ctl name="DSP1 Diagnostic cd DIAG_Z_LOW_DIFF" />
<ctl name="DSP1 Diagnostic cd DIAG_F0" />
<ctl name="DSP1 Diagnostic cd DIAG_F0_STATUS" />
<!-- Only for debug print -->
<ctl name="DSP1 Diagnostic cd CAL_SET_STATUS" />
</path>
<path name="cs35l41-dsp-amp2-diagnostic-values">
<!-- struct calibration_data START -->
<ctl name="R DSP1 Diagnostic cd CAL_R" />
<ctl name="R DSP1 Diagnostic cd CAL_STATUS" />
<ctl name="R DSP1 Diagnostic cd CAL_CHECKSUM" />
<ctl name="R DSP1 Diagnostic cd CAL_AMBIENT" />
<ctl name="R AMP PCM Gain" />
<ctl name="R Digital PCM Volume" />
<!-- struct calibration_data END -->
<ctl name="R DSP1 Diagnostic cd DIAG_Z_LOW_DIFF" />
<ctl name="R DSP1 Diagnostic cd DIAG_F0" />
<ctl name="R DSP1 Diagnostic cd DIAG_F0_STATUS" />
<!-- Only for debug print -->
<ctl name="R DSP1 Diagnostic cd CAL_SET_STATUS" />
</path>
<path name="cs35l41-dsp-amp1-protection-values">
<!-- struct calibration_data START -->
<ctl name="DSP1 Protection cd CAL_R" />
<ctl name="DSP1 Protection cd CAL_STATUS" />
<ctl name="DSP1 Protection cd CAL_CHECKSUM" />
<ctl name="DSP1 Protection cd CAL_AMBIENT" />
<!-- These controls are unrelated so we can simply
skip them
<ctl name="AMP PCM Gain" />
<ctl name="Digital PCM Volume" />
-->
<!-- struct calibration_data END -->
</path>
<path name="cs35l41-dsp-amp2-protection-values">
<!-- struct calibration_data START -->
<ctl name="R DSP1 Protection cd CAL_R" />
<ctl name="R DSP1 Protection cd CAL_STATUS" />
<ctl name="R DSP1 Protection cd CAL_CHECKSUM" />
<ctl name="R DSP1 Protection cd CAL_AMBIENT" />
<!-- These controls are unrelated so we can simply
skip them
<ctl name="R AMP PCM Gain" />
<ctl name="R Digital PCM Volume" />
-->
<!-- struct calibration_data END -->
</path>
<path name="cs35l41-dsp-amp1-calibration-completion">
<ctl name="DSP1 Calibration cd CAL_STATUS" />
</path>
<path name="cs35l41-dsp-amp2-calibration-completion">
<ctl name="R DSP1 Calibration cd CAL_STATUS" />
</path>
<path name="cs35l41-dsp-amp1-protection-completion">
<ctl name="DSP1 Protection cd CAL_SET_STATUS" />
</path>
<path name="cs35l41-dsp-amp2-protection-completion">
<ctl name="R DSP1 Protection cd CAL_SET_STATUS" />
</path>
<path name="cs35l41-dsp-amp1-diagnostic-completion">
<ctl name="DSP1 Diagnostic cd CAL_STATUS" />
<ctl name="DSP1 Diagnostic cd DIAG_F0_STATUS" />
</path>
<path name="cs35l41-dsp-amp2-diagnostic-completion">
<ctl name="R DSP1 Diagnostic cd CAL_STATUS" />
<ctl name="R DSP1 Diagnostic cd DIAG_F0_STATUS" />
</path>
<path name="cs35l41-dsp-amp1-enable-status">
<ctl name="Main AMP Enable Switch" />
</path>
<path name="cs35l41-dsp-amp2-enable-status">
<ctl name="R Main AMP Enable Switch" />
</path>
</mixer>

View File

@@ -1,22 +0,0 @@
#
# 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.
#
AUDIO_FACTORY_TABLE_FOLDER := cloudripper
# Mixer Path Configuration for Audio Factory
PRODUCT_COPY_FILES += \
device/google/pantah/audio/$(AUDIO_FACTORY_TABLE_FOLDER)/config/mixer_paths_factory.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_factory.xml

File diff suppressed because one or more lines are too long

View File

@@ -1,284 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<template>
<modules>
<module id="2" name="Waves">
<param id="0" max="3" name="opMode_" type="uint32"/>
</module>
<module id="3" name="Forte">
<param id="0" max="3" name="opMode_" type="uint32"/>
</module>
<module id="5" name="Auto Gain Control">
<param default="0" id="0" max="3" name="opMode_" type="uint32"/>
<param default="48000" id="1" name="fs_" type="uint32"/>
<param default="1" id="2" name="numCh_" type="uint32"/>
<param default="1" id="3" name="chMask_" type="uint32"/>
<param id="16" name="GainApplied" type="float"/>
<param id="17" name="idealRMS" type="float"/>
<param id="18" name="noiseGate" type="float"/>
<param id="19" name="minGain" type="float"/>
<param id="20" name="maxGain" type="float"/>
<param id="21" name="longGainAtRt" type="uint32"/>
<param id="22" name="GainAtRt" type="uint32"/>
<param id="23" name="rmsTav" type="uint32"/>
</module>
<module id="6" name="Surround Record">
<param default="0" id="0" max="3" name="opMode_" type="uint32"/>
<param default="48000" id="1" name="fs_" type="uint32"/>
<param default="3" id="2" name="numCh_" type="uint32"/>
<param default="7" id="3" name="chMask_" type="uint32"/>
<param id="16" max="1" min="0" name="alpha" type="float"/>
<param complex="true" id="17" name="ch0_profileL" size="1024" type="float"/>
<param complex="true" id="18" name="ch1_profileL" size="1024" type="float"/>
<param complex="true" id="19" name="ch2_profileL" size="1024" type="float"/>
<param complex="true" id="20" name="ch0_profileR" size="1024" type="float"/>
<param complex="true" id="21" name="ch1_profileR" size="1024" type="float"/>
<param complex="true" id="22" name="ch2_profileR" size="1024" type="float"/>
<param complex="true" id="23" name="ch0_profileAZ" size="1024" type="float"/>
<param complex="true" id="24" name="ch1_profileAZ" size="1024" type="float"/>
<param complex="true" id="25" name="ch2_profileAZ" size="1024" type="float"/>
<struct id="26">
<param default="1" name="ch_gain" type="float"/>
<param default="1" name="zoom_gain" type="float"/>
</struct>
<param default="0" id="27" name="ch0_assignFrom" type="int32"/>
<param default="1" id="28" name="ch1_assignFrom" type="int32"/>
<param default="2" id="29" name="ch2_assignFrom" type="int32"/>
</module>
<module id="7" name="Multi Channel IIR 2">
<param default="0" id="0" max="3" name="opMode_" type="uint32"/>
<param default="48000" id="1" name="fs_" type="uint32"/>
<param default="3" id="2" name="numCh_" type="uint32"/>
<param default="1" id="3" name="chMask_" type="uint32"/>
<param default="3" id="16" max="3" min="1" name="numOfChannel" type="uint32"/>
<param id="17" name="coeff" size="300" type="float"/>
<struct id="18">
<param max="18" min="-96" name="gain" size="60" type="float"/>
<param max="24000" min="0" name="frequency" size="60" type="uint32"/>
<param max="200" min="0" name="qfactor" size="60" type="float"/>
<param default="4" name="type" size="60" type="int32"/>
</struct>
</module>
<module id="8" name="Multi Band DRC">
<param default="0" id="0" max="3" name="opMode_" type="uint32"/>
<param default="48000" id="1" name="fs_" type="uint32"/>
<param default="2" id="2" name="numCh_" type="uint32"/>
<param default="3" id="3" name="chMask_" type="uint32"/>
<struct id="16">
<param default="1" max="3" min="1" name="numBand" type="uint32"/>
<param name="IIR_LowPass1" size="5" type="float"/>
<param name="IIR_HighPass1" size="5" type="float"/>
<param name="IIR_LowPass2" size="5" type="float"/>
<param name="IIR_HighPass2" size="5" type="float"/>
</struct>
<struct id="17">
<param max="20" min="0" name="band0_delay_ms" type="float"/>
<param default="5" max="20" min="0" minInclusive="false" name="band0_rms_ms" type="float"/>
<param max="30" min="0" name="band0_gain_dB" type="float"/>
<param max="30" min="-30" name="band0_Min_Gain_dB" type="float"/>
<param default="1" max="3" min="1" name="band0_numOfKnee" type="uint32"/>
<param name="band0_threadhold_dB" size="3" type="float"/>
<param name="band0_compressRatio" size="4" type="float"/>
<param name="band0_kneeWidth" size="3" type="float"/>
<param name="band0_attackTime_ms" size="4" type="float"/>
<param name="band0_releaseTime_ms" size="4" type="float"/>
<param name="band0_hysteresis" size="4" type="float"/>
<param max="20" min="0" name="band1_delay_ms" type="float"/>
<param default="5" max="20" min="0" minInclusive="false" name="band1_rms_ms" type="float"/>
<param max="30" min="0" name="band1_gain_dB" type="float"/>
<param max="30" min="-30" name="band1_Min_Gain_dB" type="float"/>
<param default="1" max="3" min="1" name="band1_numOfKnee" type="uint32"/>
<param name="band1_threadhold_dB" size="3" type="float"/>
<param name="band1_compressRatio" size="4" type="float"/>
<param name="band1_kneeWidth" size="3" type="float"/>
<param name="band1_attackTime_ms" size="4" type="float"/>
<param name="band1_releaseTime_ms" size="4" type="float"/>
<param name="band1_hysteresis" size="4" type="float"/>
<param max="20" min="0" name="band2_delay_ms" type="float"/>
<param default="5" max="20" min="0" minInclusive="false" name="band2_rms_ms" type="float"/>
<param max="30" min="0" name="band2_gain_dB" type="float"/>
<param max="30" min="-30" name="band2_Min_Gain_dB" type="float"/>
<param default="1" max="3" min="1" name="band2_numOfKnee" type="uint32"/>
<param name="band2_threadhold_dB" size="3" type="float"/>
<param name="band2_compressRatio" size="4" type="float"/>
<param name="band2_kneeWidth" size="3" type="float"/>
<param name="band2_attackTime_ms" size="4" type="float"/>
<param name="band2_releaseTime_ms" size="4" type="float"/>
<param name="band2_hysteresis" size="4" type="float"/>
</struct>
<struct id="18">
<param max="30" min="-30" name="limiter_gain_dB" type="float"/>
<param max="0" min="-30" name="limiter_threadhold_dB" type="float"/>
<param max="100" min="0" name="limiter_attackTime_ms" type="float"/>
<param max="100" min="0" name="limiter_releaseTime_ms" type="float"/>
</struct>
<struct id="19">
<param name="frequency0" type="uint32"/>
<param name="frequency1" type="uint32"/>
</struct>
</module>
<module id="11" name="Stationary Noise Suppression">
<param default="0" id="0" max="3" name="opMode_" type="uint32"/>
<param default="48000" id="1" name="fs_" type="uint32"/>
<param default="2" id="2" name="numCh_" type="uint32"/>
<param default="3" id="3" name="chMask_" type="uint32"/>
<param default="1" id="16" name="strength level" type="uint32"/>
<param id="17" name="POWER_TIME_SMOOTH" type="float"/>
<param id="18" name="RMS_TIME_SMOOTH" type="float"/>
<param id="19" name="LOWER_BAND_THRESHOLD" size="129" type="float"/>
<param id="20" name="UPPER_BAND_THRESHOLD" size="3" type="float"/>
<param id="21" name="ATTACK_TIME" type="float"/>
<param id="22" name="RELEASE_TIME" type="float"/>
</module>
<module id="14" name="Linear Gain">
<param default="0" id="0" max="3" name="opMode_" type="uint32"/>
<param default="48000" id="1" name="fs_" type="uint32"/>
<param default="1" id="2" name="numCh_" type="uint32"/>
<param default="1" id="3" name="chMask_" type="uint32"/>
<param id="16" name="Simple_gain" type="float"/>
</module>
<module id="17" name="Wind Noise Reduction">
<param default="0" id="0" max="3" name="opMode_" type="uint32"/>
<param default="48000" id="1" name="fs_" type="uint32"/>
<param default="2" id="2" name="numCh_" type="uint32"/>
<param default="3" id="3" name="chMask_" type="uint32"/>
<param default="450" id="16" name="DECISION_SMOOTHING_FACTOR" type="int32"/>
<param default="50" id="17" name="DECISION_ATTACK_SMOOTHING_FACTOR" type="int32"/>
<param default="50" id="18" name="DECISION_RELEASE_HIGH_SMOOTHING_FACTOR" type="int32"/>
<param default="50" id="19" name="DECISION_RELEASE_LOW_SMOOTHING_FACTOR" type="int32"/>
<param default="700" id="20" name="DECISION_RELEASE_THRESHOLD" type="int32"/>
<param default="0" id="21" name="DECISION_RANGE_OFFSET_FACTOR" type="int32"/>
<param default="1000" id="22" name="DECISION_RANGE_SLOPE_FACTOR" type="int32"/>
<param default="450" id="23" name="DECISION_GAIN_SMOOTHING_FACTOR" type="int32"/>
<param default="27" id="24" name="DECISION_DB_RANGE" type="int32"/>
<param default="1000" id="25" name="MASTER_REDUCTION_FACTOR" type="int32"/>
<param default="15" id="26" name="KEEP_NUM_OF_PREV_DECISIONS" type="int32"/>
<param default="1000" id="27" name="DEC_PRE_GAIN" type="int32"/>
<param default="16000" id="28" name="SUP_PRE_GAIN" type="int32"/>
<param default="2" id="29" name="COHERENCE_ENABLE" type="int32"/>
<param default="1" id="30" name="COHERENCE_START_BIN" type="int32"/>
<param default="10" id="31" name="COHERENCE_END_BIN" type="int32"/>
<param default="300" id="32" name="COHERENCE_THRESHOLD" type="int32"/>
<param default="990" id="33" name="COHERENCE_FORGETTING_FACTOR" type="int32"/>
<param default="0" id="34" name="DB_SCALING_FACTOR" type="int32"/>
<param default="9" id="35" name="SEP_LAYER" type="int32"/>
<param default="1" id="36" name="SP_GAIN_ENABLE" type="int32"/>
<param default="15" id="37" name="SP_GAIN_MAX_BIN" type="int32"/>
<param default="500" id="38" name="SP_GAIN_MIN" type="int32"/>
<param default="200" id="39" name="SP_GAIN_TH_MIN" type="int32"/>
<param default="450" id="40" name="SP_GAIN_TH_MAX" type="int32"/>
<param default="800" id="41" name="SP_GAIN_SMOOTH" type="int32"/>
<param default="3" id="42" name="SP_GAIN_FREQ_SMOOTH" type="int32"/>
<param default="300" id="43" name="MASTER_MAX_SUP_SMOOTHING_FACTOR" type="int32"/>
<param default="1" id="44" name="GAIN_FREQ_SMOOTH" type="int32"/>
<param default="2" id="45" name="GMIN_CURVE_TYPE" type="int32"/>
<param default="55" id="46" name="GMIN_LINEAR_SPLIT_MID_POINT_BINR" type="int32"/>
<param default="330" id="47" name="GMIN_LINEAR_SPLIT_MID_POINT_VAL" type="int32"/>
<param default="1000" id="48" name="SP_OVERSUB_RATIO" type="int32"/>
<param default="16" id="49" name="WIND_ENERGY_EST_COMPENSATION_GAIN" type="int32"/>
<param default="2000" id="50" name="WIND_ENERGY_CURVE_SLOPE" type="int32"/>
<param default="300" id="51" name="WIND_ENERGY_CURVE_OFFSET" type="int32"/>
<param default="16000" id="52" name="WIND_ENERGY_CURVE_MIN" type="int32"/>
<param default="16000" id="53" name="WIND_ENERGY_CURVE_MAX" type="int32"/>
<param default="900" id="54" name="WIND_ENERGY_SMOOTHING" type="int32"/>
<param default="144" id="55" name="WIND_ENERGY_NORM_DENOM" type="int32"/>
<param default="600" id="56" name="WIND_ENERGY_CURVE_SCALED_TH_MIN" type="int32"/>
<param default="900" id="57" name="WIND_ENERGY_CURVE_SCALED_TH_MAX" type="int32"/>
<param default="1" id="58" name="ENABLE_ML_COMBI_WIND_ENERGY" type="int32"/>
<param default="1" id="59" name="ENABLE_SP_COMBI_WIND_ENERGY" type="int32"/>
<param default="1" id="60" name="ENALBE_SP_COMBI_OVERSUBTRACTION" type="int32"/>
<param default="1" id="61" name="ENABLE_PRIORI_SNR" type="int32"/>
<param default="1000" id="62" name="PRIORI_SNR_ML_TUNING" type="int32"/>
<param default="15" id="63" name="DEC_PREV_NUM" type="int32"/>
<param default="1" id="64" name="SSC_ENABLE" type="int32"/>
<param default="930" id="65" name="SSC_SOFT_SMOOTHING_FACTOR" type="int32"/>
<param default="1600" id="66" name="SSC_OVERDRIVE" type="int32"/>
<param default="3" id="67" name="SSC_MIN_FREQ" type="int32"/>
<param default="130" id="68" name="SSC_MAX_FREQ" type="int32"/>
<param default="700" id="69" name="SSC_PSD_SMOOTHING_FACTOR" type="int32"/>
<param default="12" id="70" name="SSC_SOFT_DECISION_MIN_FREQ" type="int32"/>
<param default="450" id="71" name="SSC_SOFT_DECISION_MAX_FREQ" type="int32"/>
<param default="5" id="72" name="SSC_KEEP_SAVED_PROB_SMOOTH_SIZE" type="int32"/>
<param default="1000" id="73" name="GAIN_BOOSTING_COST" type="int32"/>
</module>
<module id="18" name="Multi Channel IIR 1">
<param default="0" id="0" max="3" name="opMode_" type="uint32"/>
<param default="48000" id="1" name="fs_" type="uint32"/>
<param default="2" id="2" name="numCh_" type="uint32"/>
<param default="3" id="3" name="chMask_" type="uint32"/>
<param default="3" id="16" max="3" min="1" name="numOfChannel" type="uint32"/>
<param id="17" name="coeff" size="300" type="float"/>
<struct id="18">
<param max="18" min="-96" name="gain" size="60" type="float"/>
<param max="24000" min="0" name="frequency" size="60" type="uint32"/>
<param max="200" min="0" name="qfactor" size="60" type="float"/>
<param default="4" name="type" size="60" type="int32"/>
</struct>
</module>
<module id="32" name="Single Band DRC">
<param default="1" id="0" max="3" name="opMode_" type="uint32"/>
<param default="48000" id="1" name="fs_" type="uint32"/>
<param default="2" id="2" name="numCh_" type="uint32"/>
<param default="3" id="3" name="chMask_" type="uint32"/>
<struct id="16">
<param max="20" min="0" name="delay_ms" type="float"/>
<param default="5" max="20" min="0" minInclusive="false" name="rms_ms" type="float"/>
<param max="30" min="0" name="gain_dB" type="float"/>
<param max="30" min="-30" name="Min_Gain_dB" type="float"/>
<param default="1" max="3" min="1" name="numOfKnee" type="uint32"/>
<param name="threadhold_dB" size="3" type="float"/>
<param name="compressRatio" size="4" type="float"/>
<param name="kneeWidth" size="3" type="float"/>
<param name="attackTime_ms" size="4" type="float"/>
<param name="releaseTime_ms" size="4" type="float"/>
<param name="hysteresis" size="4" type="float"/>
</struct>
<struct id="17">
<param max="30" min="-30" name="limiter_gain_dB" type="float"/>
<param max="0" min="-30" name="limiter_threadhold_dB" type="float"/>
<param max="100" min="0" name="limiter_attackTime_ms" type="uint32"/>
<param max="100" min="0" name="limiter_releaseTime_ms" type="uint32"/>
</struct>
</module>
<module id="10000" name="Eraser">
<param id="275" name="eraser_pre_gain" type="uint32"/>
<param id="277" name="eraser_post_gain" type="uint32"/>
<param id="279" name="non_eraser_gain" type="uint32"/>
</module>
<module id="10001" name="Cleaner">
<param id="299" name="cleaner_post_gain" type="uint32"/>
</module>
<module id="10002" name="CHRE">
<param id="297" name="chre_gain" type="uint32"/>
</module>
</modules>
<signalflows>
<signalflow id="1" name="Spatial Audio">
<block id="128">
<moduleRef id="18"/>
<moduleRef id="17"/>
</block>
<block id="134">
<moduleRef id="14"/>
<moduleRef id="11"/>
<moduleRef id="6"/>
<moduleRef id="7"/>
<moduleRef id="5"/>
<moduleRef id="8"/>
</block>
</signalflow>
<signalflow id="2" name="General Mic Recording">
<block id="137">
<moduleRef id="14"/>
<moduleRef id="7"/>
<moduleRef id="32"/>
</block>
</signalflow>
<signalflow id="1000" name="Smart Feature">
<block id="0">
<moduleRef id="10000"/>
<moduleRef id="10001"/>
<moduleRef id="10002"/>
</block>
</signalflow>
</signalflows>
</template>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,58 +0,0 @@
########################################################################################################
# (Optional) The supported features list for platform vendors to query from.
# Platform vendors should call maxxaudio_qdsp_is_feature_supported with a string to query from the list.
# This config has no effect in the MaxxAudioQdspHalController. It's only meaningful for platform vendors.
# Putting any value other than 1 would be equivalent to not supported.
########################################################################################################
[HAL_SUPPORTED_FEATURES]
CUSTOM_ACTION_256=1
########################################################################################################
# This defined the options of supported sample rates.
# This can be configured by Waves or platform vendor.
########################################################################################################
[HAL_SUPPORTED_SAMPLE_RATES]
SR_COMMON = 48000
########################################################################################################
# (Optional) The subtypes that applies to different angles(0, 90, 180, 270). Can be empty if not applicable.
# This can be configured by Waves or platform vendor.
########################################################################################################
[HAL_ORIENTATION_SUBTYPES]
OST_SPEAKER = 0:12,90:13,180:12,270:0|13
########################################################################################################
# This defines available preset configurations.
# This should be configured by Waves only unless platform vendor is familiar with MPS structure.
########################################################################################################
[HAL_SUPPORTED_PRESETS]
SPEAKER_MUSIC = OM:1,SM:2,OST:OST_SPEAKER
SPEAKER_SAFE_MUSIC = OM:10,SM:2,OST:OST_SPEAKER
SPEAKER_SAFE_CALL = OM:10,SM:2,OST:OST_SPEAKER
HEADSET_MUSIC = OM:2,SM:2
########################################################################################################
# This defines available CONTROL configurations. Only define the CONTROL if you need it.
# The numbers could vary from device to device.
# This can be configured by Waves or platform vendor.
########################################################################################################
[HAL_SUPPORTED_CONTROLS]
SPEAKER_INSTANCE = INSTANCE:1,DEV:0,SR:SR_COMMON,PRESET:SPEAKER_MUSIC|SPEAKER_SAFE_MUSIC|SPEAKER_SAFE_CALL
A2DP_INSTANCE = INSTANCE:2,DEV:0,SR:SR_COMMON,PRESET:HEADSET_MUSIC
USB_HEADPHONE_INSTANCE = INSTANCE:4,DEV:0,SR:SR_COMMON,PRESET:HEADSET_MUSIC
[COEFS_CONVERTER_SETTING]
AlgFxPath=/vendor/lib/libAlgFx_HiFi3z.so
AlgFxPath64=/vendor/lib64/libAlgFx_HiFi3z.so
# do not modify the following if not necessary
#AudioFormatType=0
#AudioFormatChannels=2
#AudioFormatSampleRate=48000
#AudioFormatBitsPerSample=32
#AudioFormatSampleSize=4
#AudioFormatIncrement=8
[CUSTOM_ACTION_256]
CASE_1=PRIORITY:0,NUMBERS:2:0|1,PRESET:SPEAKER_MUSIC
CASE_2=PRIORITY:1,NUMBERS:1|2|4194304:2|3|4,PRESET:SPEAKER_SAFE_CALL
CASE_3=PRIORITY:2,NUMBERS:1|4194304:0|1,PRESET:SPEAKER_SAFE_MUSIC

View File

@@ -1,58 +0,0 @@
########################################################################################################
# (Optional) The supported features list for platform vendors to query from.
# Platform vendors should call maxxaudio_qdsp_is_feature_supported with a string to query from the list.
# This config has no effect in the MaxxAudioQdspHalController. It's only meaningful for platform vendors.
# Putting any value other than 1 would be equivalent to not supported.
########################################################################################################
[HAL_SUPPORTED_FEATURES]
CUSTOM_ACTION_256=1
########################################################################################################
# This defined the options of supported sample rates.
# This can be configured by Waves or platform vendor.
########################################################################################################
[HAL_SUPPORTED_SAMPLE_RATES]
SR_COMMON = 48000
########################################################################################################
# (Optional) The subtypes that applies to different angles(0, 90, 180, 270). Can be empty if not applicable.
# This can be configured by Waves or platform vendor.
########################################################################################################
[HAL_ORIENTATION_SUBTYPES]
OST_SPEAKER = 0:12,90:13,180:12,270:0|13
########################################################################################################
# This defines available preset configurations.
# This should be configured by Waves only unless platform vendor is familiar with MPS structure.
########################################################################################################
[HAL_SUPPORTED_PRESETS]
SPEAKER_MUSIC = OM:1,SM:2,OST:OST_SPEAKER
SPEAKER_SAFE_MUSIC = OM:10,SM:2,OST:OST_SPEAKER
SPEAKER_SAFE_CALL = OM:10,SM:2,OST:OST_SPEAKER
HEADSET_MUSIC = OM:2,SM:2
########################################################################################################
# This defines available CONTROL configurations. Only define the CONTROL if you need it.
# The numbers could vary from device to device.
# This can be configured by Waves or platform vendor.
########################################################################################################
[HAL_SUPPORTED_CONTROLS]
SPEAKER_INSTANCE = INSTANCE:1,DEV:0,SR:SR_COMMON,PRESET:SPEAKER_MUSIC|SPEAKER_SAFE_MUSIC|SPEAKER_SAFE_CALL
A2DP_INSTANCE = INSTANCE:2,DEV:0,SR:SR_COMMON,PRESET:HEADSET_MUSIC
USB_HEADPHONE_INSTANCE = INSTANCE:4,DEV:0,SR:SR_COMMON,PRESET:HEADSET_MUSIC
[COEFS_CONVERTER_SETTING]
AlgFxPath=/vendor/lib/libAlgFx_HiFi3z.so
AlgFxPath64=/vendor/lib64/libAlgFx_HiFi3z.so
# do not modify the following if not necessary
#AudioFormatType=0
#AudioFormatChannels=2
#AudioFormatSampleRate=48000
#AudioFormatBitsPerSample=32
#AudioFormatSampleSize=4
#AudioFormatIncrement=8
[CUSTOM_ACTION_256]
CASE_1=PRIORITY:0,NUMBERS:2:0|1,PRESET:SPEAKER_MUSIC
CASE_2=PRIORITY:1,NUMBERS:1|2|4194304:2|3|4,PRESET:SPEAKER_SAFE_CALL
CASE_3=PRIORITY:2,NUMBERS:1|4194304:0|1,PRESET:SPEAKER_SAFE_MUSIC

View File

@@ -64,26 +64,3 @@ PRODUCT_COPY_FILES += \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia_stereo/mcps.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/mcps.dat \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/waves_config.ini:$(TARGET_COPY_OUT_VENDOR)/etc/waves_config.ini \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/waves_preset.mps:$(TARGET_COPY_OUT_VENDOR)/etc/waves_preset.mps
# eng specific
ifneq (,$(filter eng, $(TARGET_BUILD_VARIANT)))
PRODUCT_COPY_FILES += \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia_stereo/BLUETOOTH.mods:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/BLUETOOTH.mods \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia_stereo/HANDSFREE.mods:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HANDSFREE.mods \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia_stereo/HANDSET.mods:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HANDSET.mods \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia_stereo/HEADSET.mods:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HEADSET.mods
#Bluenote files
PRODUCT_COPY_FILES += \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/bluenote/template.xml:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/template.xml \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/bluenote/tuning_constraints_combination.xml:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/tuning_constraints_combination.xml
# Mixer Path Configuration for Audio Speaker Calibration Tool crus_sp_cal
PRODUCT_COPY_FILES += \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/cs35l41/crus_sp_cal_mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/crus_sp_cal_mixer_paths.xml
PRODUCT_COPY_FILES += \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/tests/test_config.ini:$(TARGET_COPY_OUT_VENDOR)/etc/test_config.ini \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/tests/test_preset.mps:$(TARGET_COPY_OUT_VENDOR)/etc/test_preset.mps
endif

View File

@@ -1,388 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<mixer>
<ctl name="TDM_0_RX Mixer EP3" value="0" />
<ctl name="TDM_0_RX Mixer EP6" value="0" />
<ctl name="I2S_0_RX Mixer EP3" value="0" />
<ctl name="Main AMP Enable Switch" value="0" />
<ctl name="R Main AMP Enable Switch" value="0" />
<ctl name="MIC HW Gain At Lower Power Mode (cB)" value="-160" />
<ctl name="MIC HW Gain At High Power Mode (cB)" value="0" />
<ctl name="MIC Record Soft Gain (dB)" value="0"/>
<ctl name="EP1 TX Mixer TDM_0_TX" value="0" />
<ctl name="DEFAULT_MIC_ID" value="0" />
<ctl name="MIC0" value="0" />
<ctl name="MIC1" value="0" />
<ctl name="MIC2" value="0" />
<ctl name="MIC3" value="0" />
<ctl name="AoC Speaker Mixer ASP Mode" value="ASP_ON" />
<ctl name="TDM_0_RX Mixer US" value="0" />
<ctl name="US Record Enable" value="0" />
<path name="mfg-playback">
</path>
<path name="deep-buffer-playback speaker">
<ctl name="AoC Speaker Mixer ASP Mode" value="ASP_BYPASS" />
<ctl name="TDM_0_RX Mixer EP6" value="1" />
<path name="mfg-playback" />
</path>
<path name="deep-buffer-playback headphones">
<ctl name="I2S_0_RX Mixer EP6" value="1" />
<path name="mfg-playback" />
</path>
<path name="mfg-record">
<ctl name="EP1 TX Mixer TDM_0_TX" value="1" />
</path>
<path name="mfg-record usb-headset-mic">
<ctl name="Audio Capture Mic Source" value="USB_MIC"/>
<ctl name="USB Capture FORMAT v2" value="1" />
<ctl name="USB Config To AoC v2" value="1"/>
<ctl name="EP1 TX Mixer USB_TX" value="1"/>
</path>
<path name="us-mfg-record">
<ctl name="US Record Enable" value="1" />
<ctl name="EP1 TX Mixer TDM_0_TX" value="1" />
</path>
<path name="mic1-status">
<ctl name="MIC0" value="1" />
</path>
<path name="mic2-status">
<ctl name="MIC1" value="1" />
</path>
<path name="mic3-status">
<ctl name="MIC2" value="1" />
</path>
<path name="mic4-status">
<ctl name="MIC3" value="0" />
</path>
<path name="mic1-gain">
<ctl name="MIC HW Gain At Lower Power Mode (cB)" />
<ctl name="MIC HW Gain At High Power Mode (cB)" />
</path>
<path name="mic2-gain">
<ctl name="MIC HW Gain At Lower Power Mode (cB)" />
<ctl name="MIC HW Gain At High Power Mode (cB)" />
</path>
<path name="mic3-gain">
<ctl name="MIC HW Gain At Lower Power Mode (cB)" />
<ctl name="MIC HW Gain At High Power Mode (cB)" />
</path>
<path name="mic4-gain">
<ctl name="MIC HW Gain At Lower Power Mode (cB)" />
<ctl name="MIC HW Gain At High Power Mode (cB)" />
</path>
<path name="mic1-sw-gain">
<ctl name="MIC Record Soft Gain (dB)" />
</path>
<path name="mic2-sw-gain">
<ctl name="MIC Record Soft Gain (dB)" />
</path>
<path name="mic3-sw-gain">
<ctl name="MIC Record Soft Gain (dB)" />
</path>
<path name="mic4-sw-gain">
<ctl name="MIC Record Soft Gain (dB)" />
</path>
<path name="usb-capture-gain">
<ctl name="MIC Record Soft Gain (dB)" />
</path>
<path name="mic1-only">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="-1" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="-1" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1" />
<ctl name="MIC0" value="1" />
<ctl name="MIC Record Soft Gain (dB)" value="0" />
</path>
<path name="mic2-only">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="3" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="-1" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="-1" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1" />
<ctl name="MIC1" value="1" />
<ctl name="MIC Record Soft Gain (dB)" value="0" />
</path>
<path name="mic3-only">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="2" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="-1" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="-1" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1" />
<ctl name="MIC2" value="1" />
<ctl name="MIC Record Soft Gain (dB)" value="0" />
</path>
<path name="mic4-only">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="3" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="-1" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="-1" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1" />
<ctl name="MIC3" value="0" />
<ctl name="MIC Record Soft Gain (dB)" value="0" />
</path>
<path name="mic-all">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1" />
<ctl name="MIC0" value="1" />
<ctl name="MIC1" value="1" />
<ctl name="MIC2" value="1" />
<ctl name="MIC3" value="0" />
<ctl name="MIC Record Soft Gain (dB)" value="0" />
</path>
<path name="amp_iv-only">
<ctl name="R ASPTX1 Slot Position" value="2" />
<ctl name="R ASPTX2 Slot Position" value="3" />
<ctl name="R ASPTX3 Slot Position" value="6" />
<ctl name="R ASPTX4 Slot Position" value="7" />
<ctl name="ASPTX1 Slot Position" value="0" />
<ctl name="ASPTX2 Slot Position" value="1" />
<ctl name="ASPTX3 Slot Position" value="4" />
<ctl name="ASPTX4 Slot Position" value="5" />
<ctl name="R ASP TX1 Source" value="VMON" />
<ctl name="R ASP TX2 Source" value="ASPRX1" />
<ctl name="R ASP TX3 Source" value="Zero" />
<ctl name="R ASP TX4 Source" value="Zero" />
<ctl name="ASP TX1 Source" value="VMON" />
<ctl name="ASP TX2 Source" value="ASPRX1" />
<ctl name="ASP TX3 Source" value="Zero" />
<ctl name="ASP TX4 Source" value="Zero" />
<ctl name="NoHost1 TX Mixer TDM_0_TX" value="1" />
</path>
<path name="amp_iv1-only">
<ctl name="R ASPTX1 Slot Position" value="4" />
<ctl name="R ASPTX2 Slot Position" value="5" />
<ctl name="R ASPTX3 Slot Position" value="6" />
<ctl name="R ASPTX4 Slot Position" value="7" />
<ctl name="ASPTX1 Slot Position" value="0" />
<ctl name="ASPTX2 Slot Position" value="1" />
<ctl name="ASPTX3 Slot Position" value="2" />
<ctl name="ASPTX4 Slot Position" value="3" />
<ctl name="R ASP TX1 Source" value="Zero" />
<ctl name="R ASP TX2 Source" value="Zero" />
<ctl name="R ASP TX3 Source" value="Zero" />
<ctl name="R ASP TX4 Source" value="Zero" />
<ctl name="ASP TX1 Source" value="VMON" />
<ctl name="ASP TX2 Source" value="IMON" />
<ctl name="ASP TX3 Source" value="VPMON" />
<ctl name="ASP TX4 Source" value="ASPRX1" />
<ctl name="NoHost1 TX Mixer TDM_0_TX" value="1" />
</path>
<path name="amp_iv2-only">
<ctl name="R ASPTX1 Slot Position" value="0" />
<ctl name="R ASPTX2 Slot Position" value="1" />
<ctl name="R ASPTX3 Slot Position" value="2" />
<ctl name="R ASPTX4 Slot Position" value="3" />
<ctl name="ASPTX1 Slot Position" value="4" />
<ctl name="ASPTX2 Slot Position" value="5" />
<ctl name="ASPTX3 Slot Position" value="6" />
<ctl name="ASPTX4 Slot Position" value="7" />
<ctl name="R ASP TX1 Source" value="VMON" />
<ctl name="R ASP TX2 Source" value="IMON" />
<ctl name="R ASP TX3 Source" value="VPMON" />
<ctl name="R ASP TX4 Source" value="ASPRX1" />
<ctl name="ASP TX1 Source" value="Zero" />
<ctl name="ASP TX2 Source" value="Zero" />
<ctl name="ASP TX3 Source" value="Zero" />
<ctl name="ASP TX4 Source" value="Zero" />
<ctl name="NoHost1 TX Mixer TDM_0_TX" value="1" />
</path>
<path name="us-amp_iv-only">
<ctl name="TDM_0_RX Sample Rate" value="SR_96K" />
<ctl name="TDM_0_TX Sample Rate" value="SR_96K" />
<path name="amp_iv-only" />
</path>
<path name="us-amp_iv1-only">
<ctl name="TDM_0_RX Sample Rate" value="SR_96K" />
<ctl name="TDM_0_TX Sample Rate" value="SR_96K" />
<path name="amp_iv1-only" />
</path>
<path name="us-amp_iv2-only">
<ctl name="TDM_0_RX Sample Rate" value="SR_96K" />
<ctl name="TDM_0_TX Sample Rate" value="SR_96K" />
<path name="amp_iv2-only" />
</path>
<path name="speaker1-status">
<ctl name="Main AMP Enable Switch" value="1" />
</path>
<path name="speaker2-status">
<ctl name="R Main AMP Enable Switch" value="1" />
</path>
<path name="speaker1-gain">
<ctl name="AMP PCM Gain" />
</path>
<path name="speaker2-gain">
<ctl name="R AMP PCM Gain" />
</path>
<path name="usb-playback-gain">
<ctl name="Headset Playback Volume" />
</path>
<path name="mfg-playback speaker">
<ctl name="AoC Speaker Mixer ASP Mode" value="ASP_BYPASS" />
<ctl name="TDM_0_RX Mixer EP3" value="1" />
<ctl name="ASPRX1 Slot Position" value="0" />
<ctl name="R ASPRX1 Slot Position" value="1" />
<ctl name="SINK_IDS" id="0" value="0" />
<ctl name="SINK_IDS" id="1" value="-1" />
</path>
<path name="mfg-playback headphones">
<ctl name="I2S_0_RX Chan" value="Two" />
<ctl name="I2S_0_RX Format" value="S32_LE" />
<ctl name="I2S_0_RX Mixer EP3" value="1" />
<ctl name="SINK_IDS" id="0" value="1" />
<ctl name="SINK_IDS" id="1" value="-1" />
</path>
<path name="mfg-playback usb-headphones">
<ctl name="USB Dev ID v2" value="2" />
<ctl name="USB Playback EP ID v2" value="1" />
<ctl name="USB Playback FORMAT v2" value="6" />
<ctl name="USB Playback SR v2" value="48000" />
<ctl name="USB Playback CH v2" value="2" />
<ctl name="USB Playback BW v2" value="16" />
<ctl name="USB Config To AoC v2" value="1" />
<ctl name="USB_RX Mixer EP3" value="1" />
</path>
<path name="us-mfg-playback speaker">
<ctl name="TDM_0_RX Sample Rate" value="SR_96K" />
<ctl name="TDM_0_TX Sample Rate" value="SR_96K" />
<ctl name="TDM_0_RX Mixer US" value="1" />
</path>
<path name="speaker1-only">
<ctl name="Main AMP Enable Switch" value="1" />
<path name="mfg-playback speaker" />
<ctl name="AMP PCM Gain" value="17" />
<ctl name="PCM Source" value="ASP" />
</path>
<path name="speaker2-only">
<ctl name="R Main AMP Enable Switch" value="1" />
<path name="mfg-playback speaker" />
<ctl name="R AMP PCM Gain" value="17" />
<ctl name="R PCM Source" value="ASP" />
</path>
<path name="us-speaker1-only">
<path name="us-mfg-playback speaker" />
<ctl name="PCM Source" value="ASP" />
<ctl name="Main AMP Enable Switch" value="1" />
</path>
<path name="us-speaker2-only">
<path name="us-mfg-playback speaker" />
<ctl name="R PCM Source" value="ASP" />
<ctl name="R Main AMP Enable Switch" value="1" />
</path>
<path name="headphones">
<ctl name="DAC1 MIXL DAC1 Switch" value="1" />
<ctl name="DAC1 MIXR DAC1 Switch" value="1" />
<ctl name="Stereo1 DAC MIXL DAC L1 Switch" value="1" />
<ctl name="Stereo1 DAC MIXR DAC R1 Switch" value="1" />
<ctl name="DAC L1 Source" value="Stereo1 DAC Mixer" />
<ctl name="DAC R1 Source" value="Stereo1 DAC Mixer" />
<ctl name="HPOL Playback Switch" value="1" />
<ctl name="HPOR Playback Switch" value="1" />
<path name="mfg-playback headphones" />
</path>
<path name="speaker-all">
<ctl name="Main AMP Enable Switch" value="1" />
<ctl name="PCM Source" value="ASP" />
<ctl name="R Main AMP Enable Switch" value="1" />
<ctl name="R PCM Source" value="ASP" />
<path name="mfg-playback speaker" />
</path>
<path name="us-speaker-all">
<path name="us-mfg-playback speaker" />
<ctl name="PCM Source" value="ASP" />
<ctl name="Main AMP Enable Switch" value="1" />
<ctl name="R PCM Source" value="ASP" />
<ctl name="R Main AMP Enable Switch" value="1" />
</path>
<path name="loopback-mic-speaker">
<ctl name="EP1 TX Mixer TDM_0_TX" value="1" />
<ctl name="SINK_IDS" id="0" value="0" />
<ctl name="SINK_IDS" id="1" value="-1" />
<path name="mfg-playback" />
</path>
<path name="loopback-mic-headphones">
<ctl name="EP1 TX Mixer TDM_0_TX" value="1" />
<ctl name="SINK_IDS" id="0" value="1" />
<ctl name="SINK_IDS" id="1" value="-1" />
<path name="mfg-playback" />
</path>
<path name="loopback-mic-usb-headphones">
<ctl name="MIC HW Gain At Lower Power Mode (cB)" value="-160" />
<ctl name="MIC HW Gain At High Power Mode (cB)" value="0" />
<ctl name="TDM_0_TX Format" value="S32_LE" />
<ctl name="TDM_0_TX Chan" value="One" />
<ctl name="EP1 TX Mixer TDM_0_TX" value="1" />
</path>
<path name="loopback-usb-mic-speaker">
<ctl name="Audio Capture Mic Source" value='USB_MIC' />
<ctl name="USB Capture FORMAT v2" value="1" />
<ctl name="MIC Record Soft Gain (dB)" value="0" />
</path>
<path name="loopback-usb-mic-usb-headphone">
<ctl name="Audio Capture Mic Source" value='USB_MIC' />
<ctl name="USB Capture FORMAT v2" value="1" />
<ctl name="MIC Record Soft Gain (dB)" value="0" />
</path>
<pcm_id name="loopback-mic1" value="EP1 capture (*)"/>
<pcm_id name="loopback-mic2" value="EP1 capture (*)"/>
<pcm_id name="loopback-mic3" value="EP1 capture (*)"/>
<pcm_id name="loopback-mic4" value="EP1 capture (*)"/>
<pcm_id name="loopback-speaker1" value="EP3 playback (*)"/>
<pcm_id name="loopback-speaker2" value="EP3 playback (*)"/>
<pcm_id name="loopback-speaker3" value="EP3 playback (*)"/>
<pcm_id name="loopback-headphones" value="EP3 playback (*)"/>
<pcm_id name="loopback-usb-headphones" value="EP3 playback (*)"/>
<pcm_id name="loopback-usb-mic" value="EP1 capture (*)"/>
<pcm_id name="loopback-amp_iv" value="nohost1 capture (*)"/>
</mixer>

View File

@@ -1,307 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Copyright (c) 2018-2020, The Linux Foundation. All rights reserved. -->
<!-- -->
<!-- Redistribution and use in source and binary forms, with or without -->
<!-- modification, are permitted provided that the following conditions are -->
<!-- met: -->
<!-- * Redistributions of source code must retain the above copyright -->
<!-- notice, this list of conditions and the following disclaimer. -->
<!-- * Redistributions in binary form must reproduce the above -->
<!-- copyright notice, this list of conditions and the following -->
<!-- disclaimer in the documentation and/or other materials provided -->
<!-- with the distribution. -->
<!-- * Neither the name of The Linux Foundation nor the names of its -->
<!-- contributors may be used to endorse or promote products derived -->
<!-- from this software without specific prior written permission. -->
<!-- -->
<!-- THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED -->
<!-- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -->
<!-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT -->
<!-- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS -->
<!-- BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -->
<!-- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -->
<!-- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR -->
<!-- BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -->
<!-- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN -->
<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -->
<mixer>
<!-- Initial Values -->
<!-- Preload Stage -->
<ctl name="Main AMP Enable Switch" value="0" />
<ctl name="DSP1 Preload Switch" value="0" />
<ctl name="R Main AMP Enable Switch" value="0" />
<ctl name="R DSP1 Preload Switch" value="0" />
<!-- Clock-trigger Stage -->
<ctl name="SINK_IDS" id="0" value="-1"/>
<ctl name="SINK_IDS" id="1" value="-1"/>
<ctl name="PCM Playback Volume" value="10"/>
<ctl name="TDM_0_RX Mixer EP6" value="0"/>
<!-- Preparation Stage -->
<path name="crus-switch-fw-prepare">
<ctl name="DRE DRE Switch" value="1" />
<ctl name="VBSTMON Output Switch" value="1" />
<ctl name="DSP Booted" value="0" />
<ctl name="DSP1 Preload Switch" value="0" />
<ctl name="R DRE DRE Switch" value="1" />
<ctl name="R VBSTMON Output Switch" value="1" />
<ctl name="R DSP Booted" value="0" />
<ctl name="R DSP1 Preload Switch" value="0" />
</path>
<!-- Preload Stage -->
<path name="crus-fw-preload">
<ctl name="DSP1 Preload Switch" value="1" />
<ctl name="R DSP1 Preload Switch" value="1" />
</path>
<!-- Firmware-switching Stage -->
<path name="crus-switch-fw-Calibration">
<ctl name="AMP PCM Gain" value="17" />
<ctl name="Digital PCM Volume" value="817" />
<ctl name="PCM Source" value="DSP" />
<ctl name="DSP1 Firmware" value="Calibration" />
<ctl name="R AMP PCM Gain" value="17" />
<ctl name="R Digital PCM Volume" value="817" />
<ctl name="R PCM Source" value="DSP" />
<ctl name="R DSP1 Firmware" value="Calibration" />
</path>
<path name="crus-switch-fw-Diagnostic">
<ctl name="AMP PCM Gain" value="17" />
<ctl name="Digital PCM Volume" value="817" />
<ctl name="PCM Source" value="DSP" />
<ctl name="DSP1 Firmware" value="Diagnostic" />
<ctl name="R AMP PCM Gain" value="17" />
<ctl name="R Digital PCM Volume" value="817" />
<ctl name="R PCM Source" value="DSP" />
<ctl name="R DSP1 Firmware" value="Diagnostic" />
</path>
<path name="crus-switch-fw-Protection">
<ctl name="PCM Source" value="DSP" />
<ctl name="DSP1 Firmware" value="Protection" />
<ctl name="R PCM Source" value="DSP" />
<ctl name="R DSP1 Firmware" value="Protection" />
</path>
<!-- DSP-initialization Stage -->
<path name="crus-dsp-pre-calibration-amp1">
<ctl name="Main AMP Enable Switch" value="1" />
</path>
<path name="crus-dsp-pre-calibration-amp2">
<ctl name="R Main AMP Enable Switch" value="1" />
</path>
<path name="crus-dsp-pre-calibration">
<path name="crus-dsp-pre-calibration-amp1" />
<path name="crus-dsp-pre-calibration-amp2" />
</path>
<path name="crus-dsp-pre-diagnostic-amp1">
<ctl name="Main AMP Enable Switch" value="1" />
</path>
<path name="crus-dsp-pre-diagnostic-amp2">
<ctl name="R Main AMP Enable Switch" value="1" />
</path>
<path name="crus-dsp-pre-diagnostic">
<path name="crus-dsp-pre-diagnostic-amp1" />
<path name="crus-dsp-pre-diagnostic-amp2" />
</path>
<path name="crus-dsp-pre-protection">
<ctl name="Main AMP Enable Switch" value="1" />
<ctl name="R Main AMP Enable Switch" value="1" />
</path>
<!-- Clock-trigger Stage -->
<path name="platform-controls">
<ctl name="PCM Playback Volume" value="1000"/>
<ctl name="SINK_IDS" id="0" value="0"/>
<ctl name="SINK_IDS" id="1" value="-1"/>
<ctl name="TDM_0_RX Mixer EP6" value="1"/>
</path>
<!-- Post loaded firmware -->
<path name="crus-dsp-post-loading-fw">
<ctl name="Main AMP Enable Switch" value="0" />
<ctl name="R Main AMP Enable Switch" value="0" />
</path>
<!-- Value & Information Fetch Stage -->
<path name="platform-values">
<ctl name="TDM_0_RX Format" />
<ctl name="TDM_0_RX Chan" />
<ctl name="TDM_0_RX Sample Rate" />
<ctl name="PCM Playback Volume" />
<ctl name="TDM_0_RX Mixer EP6" />
</path>
<path name="cs35l41-values">
<ctl name="DRE DRE Switch" />
<ctl name="R DRE DRE Switch" />
<ctl name="VBSTMON Output Switch" />
<ctl name="R VBSTMON Output Switch" />
<ctl name="AMP PCM Gain" />
<ctl name="R AMP PCM Gain" />
<ctl name="Digital PCM Volume" />
<ctl name="R Digital PCM Volume" />
<ctl name="PCM Source" />
<ctl name="R PCM Source" />
<ctl name="DSP Booted" />
<ctl name="R DSP Booted" />
<ctl name="Main AMP Enable Switch" />
<ctl name="R Main AMP Enable Switch" />
<ctl name="DSP1 Preload Switch" />
<ctl name="R DSP1 Preload Switch" />
<ctl name="DSP1 Firmware" />
<ctl name="R DSP1 Firmware" />
</path>
<!-- Note that the order of controls does matter because
it should be matched to the structure defined in
sp_cal_common.h -->
<!--
struct calibration_data {
unsigned int cal_r;
unsigned int cal_status;
unsigned int cal_checksum;
unsigned int cal_ambient;
unsigned int amp_pcm_gain;
unsigned int digital_pcm_gain;
};
-->
<path name="cs35l41-dsp-amp1-calibration-values">
<ctl name="DSP1 Calibration cd CAL_R" />
<ctl name="DSP1 Calibration cd CAL_STATUS" />
<ctl name="DSP1 Calibration cd CAL_CHECKSUM" />
<ctl name="DSP1 Calibration cd CAL_AMBIENT" />
<ctl name="AMP PCM Gain" />
<ctl name="Digital PCM Volume" />
<!-- Only for debug print -->
<ctl name="DSP1 Calibration cd CAL_SET_STATUS" />
</path>
<path name="cs35l41-dsp-amp2-calibration-values">
<ctl name="R DSP1 Calibration cd CAL_R" />
<ctl name="R DSP1 Calibration cd CAL_STATUS" />
<ctl name="R DSP1 Calibration cd CAL_CHECKSUM" />
<ctl name="R DSP1 Calibration cd CAL_AMBIENT" />
<ctl name="R AMP PCM Gain" />
<ctl name="R Digital PCM Volume" />
<!-- Only for debug print -->
<ctl name="R DSP1 Calibration cd CAL_SET_STATUS" />
</path>
<!--
struct diagnostic_data {
struct calibration_data calibration_data;
unsigned int z_low_diff;
unsigned int diag_f0;
unsigned int diag_f0_status;
};
-->
<path name="cs35l41-dsp-amp1-diagnostic-values">
<!-- struct calibration_data START -->
<ctl name="DSP1 Diagnostic cd CAL_R" />
<ctl name="DSP1 Diagnostic cd CAL_STATUS" />
<ctl name="DSP1 Diagnostic cd CAL_CHECKSUM" />
<ctl name="DSP1 Diagnostic cd CAL_AMBIENT" />
<ctl name="AMP PCM Gain" />
<ctl name="Digital PCM Volume" />
<!-- struct calibration_data END -->
<ctl name="DSP1 Diagnostic cd DIAG_Z_LOW_DIFF" />
<ctl name="DSP1 Diagnostic cd DIAG_F0" />
<ctl name="DSP1 Diagnostic cd DIAG_F0_STATUS" />
<!-- Only for debug print -->
<ctl name="DSP1 Diagnostic cd CAL_SET_STATUS" />
</path>
<path name="cs35l41-dsp-amp2-diagnostic-values">
<!-- struct calibration_data START -->
<ctl name="R DSP1 Diagnostic cd CAL_R" />
<ctl name="R DSP1 Diagnostic cd CAL_STATUS" />
<ctl name="R DSP1 Diagnostic cd CAL_CHECKSUM" />
<ctl name="R DSP1 Diagnostic cd CAL_AMBIENT" />
<ctl name="R AMP PCM Gain" />
<ctl name="R Digital PCM Volume" />
<!-- struct calibration_data END -->
<ctl name="R DSP1 Diagnostic cd DIAG_Z_LOW_DIFF" />
<ctl name="R DSP1 Diagnostic cd DIAG_F0" />
<ctl name="R DSP1 Diagnostic cd DIAG_F0_STATUS" />
<!-- Only for debug print -->
<ctl name="R DSP1 Diagnostic cd CAL_SET_STATUS" />
</path>
<path name="cs35l41-dsp-amp1-protection-values">
<!-- struct calibration_data START -->
<ctl name="DSP1 Protection cd CAL_R" />
<ctl name="DSP1 Protection cd CAL_STATUS" />
<ctl name="DSP1 Protection cd CAL_CHECKSUM" />
<ctl name="DSP1 Protection cd CAL_AMBIENT" />
<!-- These controls are unrelated so we can simply
skip them
<ctl name="AMP PCM Gain" />
<ctl name="Digital PCM Volume" />
-->
<!-- struct calibration_data END -->
</path>
<path name="cs35l41-dsp-amp2-protection-values">
<!-- struct calibration_data START -->
<ctl name="R DSP1 Protection cd CAL_R" />
<ctl name="R DSP1 Protection cd CAL_STATUS" />
<ctl name="R DSP1 Protection cd CAL_CHECKSUM" />
<ctl name="R DSP1 Protection cd CAL_AMBIENT" />
<!-- These controls are unrelated so we can simply
skip them
<ctl name="R AMP PCM Gain" />
<ctl name="R Digital PCM Volume" />
-->
<!-- struct calibration_data END -->
</path>
<path name="cs35l41-dsp-amp1-calibration-completion">
<ctl name="DSP1 Calibration cd CAL_STATUS" />
</path>
<path name="cs35l41-dsp-amp2-calibration-completion">
<ctl name="R DSP1 Calibration cd CAL_STATUS" />
</path>
<path name="cs35l41-dsp-amp1-protection-completion">
<ctl name="DSP1 Protection cd CAL_SET_STATUS" />
</path>
<path name="cs35l41-dsp-amp2-protection-completion">
<ctl name="R DSP1 Protection cd CAL_SET_STATUS" />
</path>
<path name="cs35l41-dsp-amp1-diagnostic-completion">
<ctl name="DSP1 Diagnostic cd CAL_STATUS" />
<ctl name="DSP1 Diagnostic cd DIAG_F0_STATUS" />
</path>
<path name="cs35l41-dsp-amp2-diagnostic-completion">
<ctl name="R DSP1 Diagnostic cd CAL_STATUS" />
<ctl name="R DSP1 Diagnostic cd DIAG_F0_STATUS" />
</path>
<path name="cs35l41-dsp-amp1-enable-status">
<ctl name="Main AMP Enable Switch" />
</path>
<path name="cs35l41-dsp-amp2-enable-status">
<ctl name="R Main AMP Enable Switch" />
</path>
</mixer>

View File

@@ -1,22 +0,0 @@
#
# 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.
#
AUDIO_FACTORY_TABLE_FOLDER := panther
# Mixer Path Configuration for Audio Factory
PRODUCT_COPY_FILES += \
device/google/pantah/audio/$(AUDIO_FACTORY_TABLE_FOLDER)/config/mixer_paths_factory.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_factory.xml

View File

@@ -1,290 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<template>
<modules>
<module id="2" name="Waves">
<param id="0" max="3" name="opMode_" type="uint32"/>
</module>
<module id="3" name="Forte">
<param id="0" max="3" name="opMode_" type="uint32"/>
</module>
<module id="5" name="Auto Gain Control">
<param default="0" id="0" max="3" name="opMode_" type="uint32"/>
<param default="48000" id="1" name="fs_" type="uint32"/>
<param default="1" id="2" name="numCh_" type="uint32"/>
<param default="1" id="3" name="chMask_" type="uint32"/>
<param id="16" name="GainApplied" type="float"/>
<param id="17" name="idealRMS" type="float"/>
<param id="18" name="noiseGate" type="float"/>
<param id="19" name="minGain" type="float"/>
<param id="20" name="maxGain" type="float"/>
<param id="21" name="longGainAtRt" type="uint32"/>
<param id="22" name="GainAtRt" type="uint32"/>
<param id="23" name="rmsTav" type="uint32"/>
</module>
<module id="6" name="Surround Record">
<param default="0" id="0" max="3" name="opMode_" type="uint32"/>
<param default="48000" id="1" name="fs_" type="uint32"/>
<param default="3" id="2" name="numCh_" type="uint32"/>
<param default="7" id="3" name="chMask_" type="uint32"/>
<param id="16" max="1" min="0" name="alpha" type="float"/>
<param complex="true" id="17" name="ch0_profileL" size="1024" type="float"/>
<param complex="true" id="18" name="ch1_profileL" size="1024" type="float"/>
<param complex="true" id="19" name="ch2_profileL" size="1024" type="float"/>
<param complex="true" id="20" name="ch0_profileR" size="1024" type="float"/>
<param complex="true" id="21" name="ch1_profileR" size="1024" type="float"/>
<param complex="true" id="22" name="ch2_profileR" size="1024" type="float"/>
<param complex="true" id="23" name="ch0_profileAZ" size="1024" type="float"/>
<param complex="true" id="24" name="ch1_profileAZ" size="1024" type="float"/>
<param complex="true" id="25" name="ch2_profileAZ" size="1024" type="float"/>
<struct id="26">
<param default="1" name="ch_gain" type="float"/>
<param default="1" name="zoom_gain" type="float"/>
</struct>
<param default="0" id="27" name="ch0_assignFrom" type="int32"/>
<param default="1" id="28" name="ch1_assignFrom" type="int32"/>
<param default="2" id="29" name="ch2_assignFrom" type="int32"/>
<param default="0.333" id="30" max="1" min="0.01" name="alphaEnhancedRate" type="float"/>
</module>
<module id="7" name="Multi Channel IIR 2">
<param default="0" id="0" max="3" name="opMode_" type="uint32"/>
<param default="48000" id="1" name="fs_" type="uint32"/>
<param default="3" id="2" name="numCh_" type="uint32"/>
<param default="1" id="3" name="chMask_" type="uint32"/>
<param default="3" id="16" max="3" min="1" name="numOfChannel" type="uint32"/>
<param id="17" name="coeff" size="300" type="float"/>
<struct id="18">
<param max="18" min="-96" name="gain" size="60" type="float"/>
<param max="24000" min="0" name="frequency" size="60" type="uint32"/>
<param max="200" min="0" name="qfactor" size="60" type="float"/>
<param default="4" name="type" size="60" type="int32"/>
</struct>
</module>
<module id="8" name="Multi Band DRC">
<param default="0" id="0" max="3" name="opMode_" type="uint32"/>
<param default="48000" id="1" name="fs_" type="uint32"/>
<param default="2" id="2" name="numCh_" type="uint32"/>
<param default="3" id="3" name="chMask_" type="uint32"/>
<struct id="16">
<param default="1" max="3" min="1" name="numBand" type="uint32"/>
<param name="IIR_LowPass1" size="5" type="float"/>
<param name="IIR_HighPass1" size="5" type="float"/>
<param name="IIR_LowPass2" size="5" type="float"/>
<param name="IIR_HighPass2" size="5" type="float"/>
</struct>
<struct id="17">
<param max="20" min="0" name="band0_delay_ms" type="float"/>
<param default="5" max="20" min="0" minInclusive="false" name="band0_rms_ms" type="float"/>
<param max="30" min="0" name="band0_gain_dB" type="float"/>
<param max="30" min="-30" name="band0_Min_Gain_dB" type="float"/>
<param default="1" max="3" min="1" name="band0_numOfKnee" type="uint32"/>
<param name="band0_threadhold_dB" size="3" type="float"/>
<param name="band0_compressRatio" size="4" type="float"/>
<param name="band0_kneeWidth" size="3" type="float"/>
<param name="band0_attackTime_ms" size="4" type="float"/>
<param name="band0_releaseTime_ms" size="4" type="float"/>
<param name="band0_hysteresis" size="4" type="float"/>
<param max="20" min="0" name="band1_delay_ms" type="float"/>
<param default="5" max="20" min="0" minInclusive="false" name="band1_rms_ms" type="float"/>
<param max="30" min="0" name="band1_gain_dB" type="float"/>
<param max="30" min="-30" name="band1_Min_Gain_dB" type="float"/>
<param default="1" max="3" min="1" name="band1_numOfKnee" type="uint32"/>
<param name="band1_threadhold_dB" size="3" type="float"/>
<param name="band1_compressRatio" size="4" type="float"/>
<param name="band1_kneeWidth" size="3" type="float"/>
<param name="band1_attackTime_ms" size="4" type="float"/>
<param name="band1_releaseTime_ms" size="4" type="float"/>
<param name="band1_hysteresis" size="4" type="float"/>
<param max="20" min="0" name="band2_delay_ms" type="float"/>
<param default="5" max="20" min="0" minInclusive="false" name="band2_rms_ms" type="float"/>
<param max="30" min="0" name="band2_gain_dB" type="float"/>
<param max="30" min="-30" name="band2_Min_Gain_dB" type="float"/>
<param default="1" max="3" min="1" name="band2_numOfKnee" type="uint32"/>
<param name="band2_threadhold_dB" size="3" type="float"/>
<param name="band2_compressRatio" size="4" type="float"/>
<param name="band2_kneeWidth" size="3" type="float"/>
<param name="band2_attackTime_ms" size="4" type="float"/>
<param name="band2_releaseTime_ms" size="4" type="float"/>
<param name="band2_hysteresis" size="4" type="float"/>
</struct>
<struct id="18">
<param max="30" min="-30" name="limiter_gain_dB" type="float"/>
<param max="0" min="-30" name="limiter_threadhold_dB" type="float"/>
<param max="100" min="0" name="limiter_attackTime_ms" type="float"/>
<param max="100" min="0" name="limiter_releaseTime_ms" type="float"/>
</struct>
<struct id="19">
<param name="frequency0" type="uint32"/>
<param name="frequency1" type="uint32"/>
</struct>
</module>
<module id="11" name="Stationary Noise Suppression">
<param default="0" id="0" max="3" name="opMode_" type="uint32"/>
<param default="48000" id="1" name="fs_" type="uint32"/>
<param default="2" id="2" name="numCh_" type="uint32"/>
<param default="3" id="3" name="chMask_" type="uint32"/>
<param default="1" id="16" name="strength level" type="uint32"/>
<param id="17" name="POWER_TIME_SMOOTH" type="float"/>
<param id="18" name="RMS_TIME_SMOOTH" type="float"/>
<param id="19" name="LOWER_BAND_THRESHOLD" size="129" type="float"/>
<param id="20" name="UPPER_BAND_THRESHOLD" size="3" type="float"/>
<param id="21" name="ATTACK_TIME" type="float"/>
<param id="22" name="RELEASE_TIME" type="float"/>
</module>
<module id="14" name="Linear Gain">
<param default="0" id="0" max="3" name="opMode_" type="uint32"/>
<param default="48000" id="1" name="fs_" type="uint32"/>
<param default="1" id="2" name="numCh_" type="uint32"/>
<param default="1" id="3" name="chMask_" type="uint32"/>
<param id="16" name="Simple_gain" type="float"/>
<param default="0" id="17" name="ch0_assignFrom" type="int32"/>
<param default="1" id="18" name="ch1_assignFrom" type="int32"/>
<param default="2" id="19" name="ch2_assignFrom" type="int32"/>
</module>
<module id="17" name="Wind Noise Reduction">
<param default="0" id="0" max="3" name="opMode_" type="uint32"/>
<param default="48000" id="1" name="fs_" type="uint32"/>
<param default="2" id="2" name="numCh_" type="uint32"/>
<param default="3" id="3" name="chMask_" type="uint32"/>
<param default="450" id="16" name="DECISION_SMOOTHING_FACTOR" type="int32"/>
<param default="50" id="17" name="DECISION_ATTACK_SMOOTHING_FACTOR" type="int32"/>
<param default="50" id="18" name="DECISION_RELEASE_HIGH_SMOOTHING_FACTOR" type="int32"/>
<param default="50" id="19" name="DECISION_RELEASE_LOW_SMOOTHING_FACTOR" type="int32"/>
<param default="700" id="20" name="DECISION_RELEASE_THRESHOLD" type="int32"/>
<param default="0" id="21" name="DECISION_RANGE_OFFSET_FACTOR" type="int32"/>
<param default="1000" id="22" name="DECISION_RANGE_SLOPE_FACTOR" type="int32"/>
<param default="450" id="23" name="DECISION_GAIN_SMOOTHING_FACTOR" type="int32"/>
<param default="27" id="24" name="DECISION_DB_RANGE" type="int32"/>
<param default="1000" id="25" name="MASTER_REDUCTION_FACTOR" type="int32"/>
<param default="15" id="26" name="KEEP_NUM_OF_PREV_DECISIONS" type="int32"/>
<param default="1000" id="27" name="DEC_PRE_GAIN" type="int32"/>
<param default="16000" id="28" name="SUP_PRE_GAIN" type="int32"/>
<param default="2" id="29" name="COHERENCE_ENABLE" type="int32"/>
<param default="1" id="30" name="COHERENCE_START_BIN" type="int32"/>
<param default="10" id="31" name="COHERENCE_END_BIN" type="int32"/>
<param default="300" id="32" name="COHERENCE_THRESHOLD" type="int32"/>
<param default="990" id="33" name="COHERENCE_FORGETTING_FACTOR" type="int32"/>
<param default="0" id="34" name="DB_SCALING_FACTOR" type="int32"/>
<param default="9" id="35" name="SEP_LAYER" type="int32"/>
<param default="1" id="36" name="SP_GAIN_ENABLE" type="int32"/>
<param default="15" id="37" name="SP_GAIN_MAX_BIN" type="int32"/>
<param default="500" id="38" name="SP_GAIN_MIN" type="int32"/>
<param default="200" id="39" name="SP_GAIN_TH_MIN" type="int32"/>
<param default="450" id="40" name="SP_GAIN_TH_MAX" type="int32"/>
<param default="800" id="41" name="SP_GAIN_SMOOTH" type="int32"/>
<param default="3" id="42" name="SP_GAIN_FREQ_SMOOTH" type="int32"/>
<param default="300" id="43" name="MASTER_MAX_SUP_SMOOTHING_FACTOR" type="int32"/>
<param default="1" id="44" name="GAIN_FREQ_SMOOTH" type="int32"/>
<param default="2" id="45" name="GMIN_CURVE_TYPE" type="int32"/>
<param default="55" id="46" name="GMIN_LINEAR_SPLIT_MID_POINT_BINR" type="int32"/>
<param default="330" id="47" name="GMIN_LINEAR_SPLIT_MID_POINT_VAL" type="int32"/>
<param default="1000" id="48" name="SP_OVERSUB_RATIO" type="int32"/>
<param default="16" id="49" name="WIND_ENERGY_EST_COMPENSATION_GAIN" type="int32"/>
<param default="2000" id="50" name="WIND_ENERGY_CURVE_SLOPE" type="int32"/>
<param default="300" id="51" name="WIND_ENERGY_CURVE_OFFSET" type="int32"/>
<param default="16000" id="52" name="WIND_ENERGY_CURVE_MIN" type="int32"/>
<param default="16000" id="53" name="WIND_ENERGY_CURVE_MAX" type="int32"/>
<param default="900" id="54" name="WIND_ENERGY_SMOOTHING" type="int32"/>
<param default="144" id="55" name="WIND_ENERGY_NORM_DENOM" type="int32"/>
<param default="600" id="56" name="WIND_ENERGY_CURVE_SCALED_TH_MIN" type="int32"/>
<param default="900" id="57" name="WIND_ENERGY_CURVE_SCALED_TH_MAX" type="int32"/>
<param default="1" id="58" name="ENABLE_ML_COMBI_WIND_ENERGY" type="int32"/>
<param default="1" id="59" name="ENABLE_SP_COMBI_WIND_ENERGY" type="int32"/>
<param default="1" id="60" name="ENALBE_SP_COMBI_OVERSUBTRACTION" type="int32"/>
<param default="1" id="61" name="ENABLE_PRIORI_SNR" type="int32"/>
<param default="1000" id="62" name="PRIORI_SNR_ML_TUNING" type="int32"/>
<param default="15" id="63" name="DEC_PREV_NUM" type="int32"/>
<param default="1" id="64" name="SSC_ENABLE" type="int32"/>
<param default="930" id="65" name="SSC_SOFT_SMOOTHING_FACTOR" type="int32"/>
<param default="1600" id="66" name="SSC_OVERDRIVE" type="int32"/>
<param default="3" id="67" name="SSC_MIN_FREQ" type="int32"/>
<param default="130" id="68" name="SSC_MAX_FREQ" type="int32"/>
<param default="700" id="69" name="SSC_PSD_SMOOTHING_FACTOR" type="int32"/>
<param default="12" id="70" name="SSC_SOFT_DECISION_MIN_FREQ" type="int32"/>
<param default="450" id="71" name="SSC_SOFT_DECISION_MAX_FREQ" type="int32"/>
<param default="5" id="72" name="SSC_KEEP_SAVED_PROB_SMOOTH_SIZE" type="int32"/>
<param default="1000" id="73" name="GAIN_BOOSTING_COST" type="int32"/>
</module>
<module id="18" name="Multi Channel IIR 1">
<param default="0" id="0" max="3" name="opMode_" type="uint32"/>
<param default="48000" id="1" name="fs_" type="uint32"/>
<param default="2" id="2" name="numCh_" type="uint32"/>
<param default="3" id="3" name="chMask_" type="uint32"/>
<param default="3" id="16" max="3" min="1" name="numOfChannel" type="uint32"/>
<param id="17" name="coeff" size="300" type="float"/>
<struct id="18">
<param max="18" min="-96" name="gain" size="60" type="float"/>
<param max="24000" min="0" name="frequency" size="60" type="uint32"/>
<param max="200" min="0" name="qfactor" size="60" type="float"/>
<param default="4" name="type" size="60" type="int32"/>
</struct>
</module>
<module id="32" name="Single Band DRC">
<param default="1" id="0" max="3" name="opMode_" type="uint32"/>
<param default="48000" id="1" name="fs_" type="uint32"/>
<param default="2" id="2" name="numCh_" type="uint32"/>
<param default="3" id="3" name="chMask_" type="uint32"/>
<struct id="16">
<param max="20" min="0" name="delay_ms" type="float"/>
<param default="5" max="20" min="0" minInclusive="false" name="rms_ms" type="float"/>
<param max="30" min="0" name="gain_dB" type="float"/>
<param max="30" min="-30" name="Min_Gain_dB" type="float"/>
<param default="1" max="3" min="1" name="numOfKnee" type="uint32"/>
<param name="threadhold_dB" size="3" type="float"/>
<param name="compressRatio" size="4" type="float"/>
<param name="kneeWidth" size="3" type="float"/>
<param name="attackTime_ms" size="4" type="float"/>
<param name="releaseTime_ms" size="4" type="float"/>
<param name="hysteresis" size="4" type="float"/>
<param default="0" max="1" min="0" name="rms_manual_enable" type="uint32"/>
<param default="0" max="2" min="0" name="rms_channel" type="uint32"/>
</struct>
<struct id="17">
<param max="30" min="-30" name="limiter_gain_dB" type="float"/>
<param max="0" min="-30" name="limiter_threadhold_dB" type="float"/>
<param max="100" min="0" name="limiter_attackTime_ms" type="uint32"/>
<param max="100" min="0" name="limiter_releaseTime_ms" type="uint32"/>
</struct>
</module>
<module id="10000" name="Eraser">
<param id="275" name="eraser_pre_gain" type="uint32"/>
<param id="277" name="eraser_post_gain" type="uint32"/>
<param id="279" name="non_eraser_gain" type="uint32"/>
</module>
<module id="10001" name="Cleaner">
<param id="299" name="cleaner_post_gain" type="uint32"/>
</module>
<module id="10002" name="CHRE">
<param id="297" name="chre_gain" type="uint32"/>
</module>
</modules>
<signalflows>
<signalflow id="1" name="Spatial Audio">
<block id="128">
<moduleRef id="18"/>
<moduleRef id="17"/>
</block>
<block id="134">
<moduleRef id="14"/>
<moduleRef id="11"/>
<moduleRef id="6"/>
<moduleRef id="7"/>
<moduleRef id="5"/>
<moduleRef id="8"/>
</block>
</signalflow>
<signalflow id="2" name="General Mic Recording">
<block id="137">
<moduleRef id="14"/>
<moduleRef id="7"/>
<moduleRef id="8"/>
</block>
</signalflow>
<signalflow id="1000" name="Smart Feature">
<block id="0">
<moduleRef id="10000"/>
<moduleRef id="10001"/>
<moduleRef id="10002"/>
</block>
</signalflow>
</signalflows>
</template>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,58 +0,0 @@
########################################################################################################
# (Optional) The supported features list for platform vendors to query from.
# Platform vendors should call maxxaudio_qdsp_is_feature_supported with a string to query from the list.
# This config has no effect in the MaxxAudioQdspHalController. It's only meaningful for platform vendors.
# Putting any value other than 1 would be equivalent to not supported.
########################################################################################################
[HAL_SUPPORTED_FEATURES]
CUSTOM_ACTION_256=1
########################################################################################################
# This defined the options of supported sample rates.
# This can be configured by Waves or platform vendor.
########################################################################################################
[HAL_SUPPORTED_SAMPLE_RATES]
SR_COMMON = 48000
########################################################################################################
# (Optional) The subtypes that applies to different angles(0, 90, 180, 270). Can be empty if not applicable.
# This can be configured by Waves or platform vendor.
########################################################################################################
[HAL_ORIENTATION_SUBTYPES]
OST_SPEAKER = 0:12,90:13,180:12,270:0|13
########################################################################################################
# This defines available preset configurations.
# This should be configured by Waves only unless platform vendor is familiar with MPS structure.
########################################################################################################
[HAL_SUPPORTED_PRESETS]
SPEAKER_MUSIC = OM:1,SM:2,OST:OST_SPEAKER
SPEAKER_SAFE_MUSIC = OM:10,SM:2,OST:OST_SPEAKER
SPEAKER_SAFE_CALL = OM:10,SM:2,OST:OST_SPEAKER
HEADSET_MUSIC = OM:2,SM:2
########################################################################################################
# This defines available CONTROL configurations. Only define the CONTROL if you need it.
# The numbers could vary from device to device.
# This can be configured by Waves or platform vendor.
########################################################################################################
[HAL_SUPPORTED_CONTROLS]
SPEAKER_INSTANCE = INSTANCE:1,DEV:0,SR:SR_COMMON,PRESET:SPEAKER_MUSIC|SPEAKER_SAFE_MUSIC|SPEAKER_SAFE_CALL
A2DP_INSTANCE = INSTANCE:2,DEV:0,SR:SR_COMMON,PRESET:HEADSET_MUSIC
USB_HEADPHONE_INSTANCE = INSTANCE:4,DEV:0,SR:SR_COMMON,PRESET:HEADSET_MUSIC
[COEFS_CONVERTER_SETTING]
AlgFxPath=/vendor/lib/libAlgFx_HiFi3z.so
AlgFxPath64=/vendor/lib64/libAlgFx_HiFi3z.so
# do not modify the following if not necessary
#AudioFormatType=0
#AudioFormatChannels=2
#AudioFormatSampleRate=48000
#AudioFormatBitsPerSample=32
#AudioFormatSampleSize=4
#AudioFormatIncrement=8
[CUSTOM_ACTION_256]
CASE_1=PRIORITY:0,NUMBERS:2:0|1,PRESET:SPEAKER_MUSIC
CASE_2=PRIORITY:1,NUMBERS:1|2|4194304:2|3|4,PRESET:SPEAKER_SAFE_CALL
CASE_3=PRIORITY:2,NUMBERS:1|4194304:0|1,PRESET:SPEAKER_SAFE_MUSIC

View File

@@ -1,73 +0,0 @@
#
# 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.
#
AUDIO_TABLE_FOLDER := ravenclaw
# Platform Configuration for AudioHAL / SoundTriggerHAL
PRODUCT_COPY_FILES += \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/config/audio_policy_configuration_bluetooth_legacy_hal.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration_bluetooth_legacy_hal.xml \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/config/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/config/audio_policy_configuration_a2dp_offload_disabled.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration_a2dp_offload_disabled.xml \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/config/audio_platform_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_configuration.xml \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/config/sound_trigger_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_configuration.xml
# AudioEffectHAL Configuration
PRODUCT_COPY_FILES += \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/config/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml
# Mixer Path Configuration for AudioHAL
PRODUCT_COPY_FILES += \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/config/mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths.xml
# Speaker firmware files
SPK_FIRMWARE_PATH := $(AUDIO_TABLE_FOLDER)/cs35l41/fw
SPK_FIRMWARE_FULL_PATH := device/google/pantah/audio/$(SPK_FIRMWARE_PATH)
PRODUCT_COPY_FILES += $(call copy-files,$(wildcard $(SPK_FIRMWARE_FULL_PATH)/*),$(TARGET_COPY_OUT_VENDOR)/firmware)
# Audio tuning
PRODUCT_COPY_FILES += \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/bluenote/recording.gatf:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/recording.gatf \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/BLUETOOTH.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/BLUETOOTH.dat \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HANDSFREE.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HANDSFREE.dat \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HANDSET.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HANDSET.dat \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HEADSET.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HEADSET.dat \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/mcps.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/mcps.dat \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/waves_config.ini:$(TARGET_COPY_OUT_VENDOR)/etc/waves_config.ini \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/waves_preset.mps:$(TARGET_COPY_OUT_VENDOR)/etc/waves_preset.mps
# userdebug specific
ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
PRODUCT_COPY_FILES += \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/BLUETOOTH.mods:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/BLUETOOTH.mods \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HANDSFREE.mods:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HANDSFREE.mods \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HANDSET.mods:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HANDSET.mods \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HEADSET.mods:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HEADSET.mods
#Bluenote files
PRODUCT_COPY_FILES += \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/bluenote/template.xml:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/template.xml \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/bluenote/tuning_constraints_combination.xml:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/tuning_constraints_combination.xml
# Mixer Path Configuration for Audio Speaker Calibration Tool crus_sp_cal
PRODUCT_COPY_FILES += \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/cs35l41/crus_sp_cal_mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/crus_sp_cal_mixer_paths.xml
PRODUCT_COPY_FILES += \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/tests/test_config.ini:$(TARGET_COPY_OUT_VENDOR)/etc/test_config.ini \
device/google/pantah/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/tests/test_preset.mps:$(TARGET_COPY_OUT_VENDOR)/etc/test_preset.mps
endif

View File

@@ -1,63 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<audio_effects_conf version="2.0" xmlns="http://schemas.android.com/audio/audio_effects_conf/v2_0">
<libraries>
<library name="bundle" path="libbundlewrapper.so"/>
<library name="reverb" path="libreverbwrapper.so"/>
<library name="visualizer_sw" path="libvisualizer.so"/>
<library name="downmix" path="libdownmix.so"/>
<library name="dynamics_processing" path="libdynproc.so"/>
<library name="loudness_enhancer" path="libldnhncr.so"/>
<library name="proxy" path="libeffectproxy.so"/>
<library name="offload_effect" path="liboffloadeffect.so"/>
<library name="haptic_generator" path="libhapticgenerator.so"/>
</libraries>
<effects>
<effectProxy name="bassboost" library="proxy" uuid="2f0871a2-c93c-4824-9664-42eb2909f2ef">
<libsw library="bundle" uuid="8631f300-72e2-11df-b57e-0002a5d5c51b"/>
<libhw library="offload_effect" uuid="c7e3b29d-e797-4cf9-9912-17c1956510cc"/>
</effectProxy>
<effectProxy name="virtualizer" library="proxy" uuid="626499c6-647e-455e-8c45-2d106e23c755">
<libsw library="bundle" uuid="1d4033c0-8557-11df-9f2d-0002a5d5c51b"/>
<libhw library="offload_effect" uuid="f8f88a03-fdf8-4554-8e60-77fbf8f2d3b0"/>
</effectProxy>
<effectProxy name="equalizer" library="proxy" uuid="49004f03-3391-4c44-97dd-a043d526ea7d">
<libsw library="bundle" uuid="ce772f20-847d-11df-bb17-0002a5d5c51b"/>
<libhw library="offload_effect" uuid="50deaa30-4a83-4b1f-bfe3-dec6d605ede0"/>
</effectProxy>
<effect name="volume" library="bundle" uuid="119341a0-8469-11df-81f9-0002a5d5c51b"/>
<effectProxy name="reverb_env_aux" library="proxy" uuid="b8154738-a0a1-4fc0-bb79-c845a3197739">
<libsw library="reverb" uuid="4a387fc0-8ab3-11df-8bad-0002a5d5c51b"/>
<libhw library="offload_effect" uuid="0c84bcd9-bce4-441b-ba9e-51f80897c949"/>
</effectProxy>
<effectProxy name="reverb_env_ins" library="proxy" uuid="ba0f19fe-8790-4831-a58b-1f3299dd0bae">
<libsw library="reverb" uuid="c7a511a0-a3bb-11df-860e-0002a5d5c51b"/>
<libhw library="offload_effect" uuid="86d1877a-127f-4bdc-9665-c958903ad7b2"/>
</effectProxy>
<effectProxy name="reverb_pre_aux" library="proxy" uuid="80974a8b-b3be-4c21-8c0b-b392a54e13bc">
<libsw library="reverb" uuid="f29a1400-a3bb-11df-8ddc-0002a5d5c51b"/>
<libhw library="offload_effect" uuid="4f90220c-9742-4467-a9d7-122f85c01195"/>
</effectProxy>
<effectProxy name="reverb_pre_ins" library="proxy" uuid="c02d7dce-ca56-4aea-8c83-bbb53e5600e8">
<libsw library="reverb" uuid="172cdf00-a3bc-11df-a72f-0002a5d5c51b"/>
<libhw library="offload_effect" uuid="a2cf6b45-360b-49f3-94d7-fdb9837f89e8"/>
</effectProxy>
<effectProxy name="visualizer" library="proxy" uuid="b27271d9-64d6-413c-b316-80005ad09008">
<libsw library="visualizer_sw" uuid="d069d9e0-8329-11df-9168-0002a5d5c51b"/>
<libhw library="offload_effect" uuid="99fb2ecb-3426-4a0e-8082-1a1da5604b7d"/>
</effectProxy>
<effect name="downmix" library="downmix" uuid="93f04452-e4fe-41cc-91f9-e475b6d1d69f"/>
<effect name="loudness_enhancer" library="loudness_enhancer" uuid="fa415329-2034-4bea-b5dc-5b381c8d1e2c"/>
<effect name="aec" library="offload_effect" uuid="28c28780-ec8b-48b6-8590-8c84557d797d"/>
<effect name="ns" library="offload_effect" uuid="62ff2836-d050-43c3-9c2d-94a73dad2c64"/>
<effect name="haptic_generator" library="haptic_generator" uuid="97c4acd1-8b82-4f2f-832e-c2fe5d7a9931"/>
<effect name="dynamics_processing" library="dynamics_processing" uuid="e0e6539b-1781-7261-676f-6d7573696340"/>
</effects>
<postprocess>
</postprocess>
<preprocess>
<stream type="voice_communication">
<apply effect="aec"/>
<apply effect="ns"/>
</stream>
</preprocess>
</audio_effects_conf>

View File

@@ -1,310 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Copyright (c) 2019, The Linux Foundation. All rights reserved. -->
<!-- -->
<!-- Redistribution and use in source and binary forms, with or without -->
<!-- modification, are permitted provided that the following conditions are -->
<!-- met: -->
<!-- * Redistributions of source code must retain the above copyright -->
<!-- notice, this list of conditions and the following disclaimer. -->
<!-- * Redistributions in binary form must reproduce the above -->
<!-- copyright notice, this list of conditions and the following -->
<!-- disclaimer in the documentation and/or other materials provided -->
<!-- with the distribution. -->
<!-- * Neither the name of The Linux Foundation nor the names of its -->
<!-- contributors may be used to endorse or promote products derived -->
<!-- from this software without specific prior written permission. -->
<!-- -->
<!-- THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED -->
<!-- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -->
<!-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT -->
<!-- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS -->
<!-- BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -->
<!-- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -->
<!-- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR -->
<!-- BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -->
<!-- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN -->
<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -->
<audio_platform_configuration>
<hw_intf>
<intf id="BE_HW_RX_INTF_0" name="TDM_RX_0" min_bit="24" min_chan="2" min_rate="48000" block_id="16"/>
<intf id="BE_HW_RX_INTF_1" name="TDM_RX_1" min_bit="24" min_chan="2" min_rate="48000" block_id="17"/>
<intf id="BE_HW_RX_INTF_2" name="USB_RX" min_bit="24" min_chan="2" min_rate="48000" block_id="20"/>
<intf id="BE_HW_RX_INTF_3" name="I2S_RX_0" min_bit="24" min_chan="2" min_rate="48000" block_id="18"/>
<!--intf id="BE_HW_RX_INTF_2" name="USB_RX" min_bit="24" min_chan="2" min_rate="48000" ctrl_config="USB device" ctrl_rate="Sample Rate" ctrl_bit="Bit Width" ctrl_chan="Channel"/-->
<!--intf id="BE_HW_RX_INTF_3" name="BT_RX"/-->
<intf id="BE_VIRTUAL_VOICE_RX_TUNING" block_id="19"/>
<intf id="BE_VIRTUAL_VOICE_TX_TUNING" block_id="19"/>
<intf id="BE_HW_TX_INTF_0" block_id="134,128,137"/>
<intf id="BE_VIRTUAL_CRYSTAL_CLEAR_AUDIO_TUNING" block_id="138"/>
</hw_intf>
<product_lists>
<product name="Blackbird">
<id value="18d1:5033"/>
</product>
<product name="Condor">
<id value="18d1:5034"/>
</product>
<product name="Condor_Sprint">
<id value="18d1:5038"/>
</product>
<product name="Condor_Sprint2">
<id value="18d1:5036"/>
</product>
</product_lists>
<!-- The microphone capability is fake data -->
<microphone_characteristics>
<microphone device_id="builtin_mic_1" type="AUDIO_DEVICE_IN_BUILTIN_MIC" address="bottom" location="AUDIO_MICROPHONE_LOCATION_MAINBODY"
group="0" index_in_the_group="0" directionality="AUDIO_MICROPHONE_DIRECTIONALITY_OMNI" num_frequency_responses="93"
frequencies="100.00 106.00 112.00 118.00 125.00 132.00 140.00 150.00 160.00 170.00 180.00 190.00 200.00 212.00 224.00 236.00 250.00 265.00 280.00 300.00 315.00 335.00 355.00 375.00 400.00 425.00 450.00 475.00 500.00 530.00 560.00 600.00 630.00 670.00 710.00 750.00 800.00 850.00 900.00 950.00 1000.00 1060.00 1120.00 1180.00 1250.00 1320.00 1400.00 1500.00 1600.00 1700.00 1800.00 1900.00 2000.00 2120.00 2240.00 2360.00 2500.00 2650.00 2800.00 3000.00 3150.00 3350.00 3550.00 3750.00 4000.00 4250.00 4500.00 4750.00 5000.00 5300.00 5600.00 6000.00 6300.00 6700.00 7100.00 7500.00 8000.00 8500.00 9000.00 9500.00 10000.00 10600.00 11200.00 11800.00 12500.00 13200.00 14000.00 15000.00 16000.00 17000.00 18000.00 19000.00 20000.00"
responses="-0.78 -0.71 -0.64 -0.60 -0.55 -0.50 -0.47 -0.42 -0.39 -0.36 -0.34 -0.33 -0.32 -0.29 -0.28 -0.28 -0.27 -0.25 -0.25 -0.24 -0.23 -0.23 -0.22 -0.22 -0.19 -0.17 -0.15 -0.15 -0.14 -0.14 -0.12 -0.11 -0.10 -0.10 -0.08 -0.07 -0.07 -0.04 -0.03 -0.01 0.00 0.04 0.06 0.07 0.08 0.13 0.09 0.14 0.19 0.23 0.28 0.29 0.31 0.37 0.88 0.86 0.77 0.78 0.84 0.86 1.05 1.12 1.18 1.25 1.43 1.66 1.83 2.02 2.23 2.59 2.84 3.35 4.01 6.82 6.62 6.42 7.30 8.23 7.54 12.68 13.76 18.69 19.68 20.90 23.70 25.10 21.65 16.18 18.84 25.44 23.48 23.22 24.89"
sensitivity="-37.0" max_spl="132.5" min_spl="28.5" orientation="0.0 0.0 1.0" geometric_location="0.0269 0.0058 0.0079" />
<microphone device_id="builtin_mic_2" type="AUDIO_DEVICE_IN_BACK_MIC" address="back" location="AUDIO_MICROPHONE_LOCATION_MAINBODY"
group="0" index_in_the_group="1" directionality="AUDIO_MICROPHONE_DIRECTIONALITY_OMNI" num_frequency_responses="92"
frequencies="106.00 112.00 118.00 125.00 132.00 140.00 150.00 160.00 170.00 180.00 190.00 200.00 212.00 224.00 236.00 250.00 265.00 280.00 300.00 315.00 335.00 355.00 375.00 400.00 425.00 450.00 475.00 500.00 530.00 560.00 600.00 630.00 670.00 710.00 750.00 800.00 850.00 900.00 950.00 1000.00 1060.00 1120.00 1180.00 1250.00 1320.00 1400.00 1500.00 1600.00 1700.00 1800.00 1900.00 2000.00 2120.00 2240.00 2360.00 2500.00 2650.00 2800.00 3000.00 3150.00 3350.00 3550.00 3750.00 4000.00 4250.00 4500.00 4750.00 5000.00 5300.00 5600.00 6000.00 6300.00 6700.00 7100.00 7500.00 8000.00 8500.00 9000.00 9500.00 10000.00 10600.00 11200.00 11800.00 12500.00 13200.00 14000.00 15000.00 16000.00 17000.00 18000.00 19000.00 20000.00"
responses="-0.75 -0.74 -0.69 -0.65 -0.62 -0.61 -0.56 -0.53 -0.50 -0.47 -0.43 -0.40 -0.37 -0.36 -0.33 -0.30 -0.28 -0.25 -0.24 -0.24 -0.24 -0.25 -0.24 -0.12 -0.10 -0.08 -0.09 -0.07 -0.07 -0.06 -0.06 -0.06 -0.05 -0.04 -0.05 -0.04 -0.01 0.02 0.02 0.00 0.02 0.03 0.07 0.10 0.10 0.13 0.01 0.01 0.10 0.11 0.19 0.24 0.38 0.46 0.26 0.27 0.43 0.76 0.75 1.09 1.09 0.94 1.06 1.21 1.47 1.45 1.36 2.07 2.85 2.90 3.85 4.65 5.84 5.46 6.15 7.50 8.30 10.62 12.70 16.65 20.95 25.41 26.32 20.20 16.60 11.24 7.85 7.62 20.19 7.32 2.87 5.18"
sensitivity="-37.0" max_spl="132.5" min_spl="28.5" orientation="0.0 1.0 0.0" geometric_location="0.0546 0.1456 0.00415" />
<microphone device_id="builtin_mic_3" type="AUDIO_DEVICE_IN_BUILTIN_MIC" address="top" location="AUDIO_MICROPHONE_LOCATION_MAINBODY"
group="0" index_in_the_group="2" directionality="AUDIO_MICROPHONE_DIRECTIONALITY_OMNI" num_frequency_responses="92"
frequencies="100.00 106.00 112.00 118.00 125.00 132.00 140.00 150.00 160.00 170.00 180.00 190.00 200.00 212.00 224.00 236.00 250.00 265.00 280.00 300.00 315.00 335.00 355.00 375.00 400.00 425.00 450.00 475.00 500.00 530.00 560.00 600.00 630.00 670.00 710.00 750.00 800.00 850.00 900.00 950.00 1000.00 1060.00 1120.00 1180.00 1250.00 1320.00 1400.00 1500.00 1600.00 1700.00 1800.00 1900.00 2000.00 2120.00 2240.00 2360.00 2500.00 2650.00 2800.00 3000.00 3150.00 3350.00 3550.00 3750.00 4000.00 4250.00 4500.00 4750.00 5000.00 5300.00 5600.00 6000.00 6300.00 6700.00 7100.00 7500.00 8000.00 8500.00 9000.00 9500.00 10000.00 10600.00 11200.00 11800.00 12500.00 13200.00 14000.00 15000.00 16000.00 17000.00 18000.00 19000.00"
responses="-9.24 -9.31 -9.39 -9.45 -9.46 -9.47 -9.50 -9.52 -9.51 -9.52 -9.51 -9.50 -9.49 -9.47 -9.48 -9.49 -9.48 -9.50 -9.51 -9.53 -9.55 -9.59 -9.63 -9.67 -9.58 -9.57 -9.65 -9.68 -9.71 -9.75 -9.79 -9.84 -9.87 -9.87 -9.90 -9.90 -9.91 -9.97 -10.01 -10.05 -9.85 -9.93 -9.94 -9.98 -10.04 -10.12 -10.28 -10.25 -10.01 -9.86 -9.81 -9.82 -9.61 -9.46 -8.27 -8.42 -8.98 -8.99 -8.82 -9.21 -8.92 -8.97 -9.30 -9.44 -9.52 -9.28 -9.09 -8.81 -7.02 -5.72 -5.30 -7.26 -8.39 -12.28 -8.23 -6.99 -5.52 -4.87 -3.82 -6.09 0.00 -2.15 -0.26 1.48 5.22 10.92 6.41 9.55 12.96 3.35 22.00 19.75"
sensitivity="-37.0" max_spl="132.5" min_spl="28.5" orientation="0.0 0.0 1.0" geometric_location="0.0274 0.14065 0.0079" />
</microphone_characteristics>
<!-- The microphone mapping of backend device is fake data -->
<input_backend_cfg_mic_mapping>
<backend_cfg in_cfg="IN_CAMCORDER_LANDSCAPE_BE_CFG">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</backend_cfg>
<backend_cfg in_cfg="IN_CAMCORDER_INVERT_LANDSCAPE_BE_CFG">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</backend_cfg>
<backend_cfg in_cfg="IN_CAMCORDER_PORTRAIT_BE_CFG">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</backend_cfg>
<backend_cfg in_cfg="IN_CAMCORDER_SELFIE_LANDSCAPE_BE_CFG">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</backend_cfg>
<backend_cfg in_cfg="IN_CAMCORDER_SELFIE_INVERT_LANDSCAPE_BE_CFG">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</backend_cfg>
<backend_cfg in_cfg="IN_CAMCORDER_SELFIE_PORTRAIT_BE_CFG">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</backend_cfg>
<backend_cfg in_cfg="IN_HANDSET_MIC_BE_CFG">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</backend_cfg>
<backend_cfg in_cfg="IN_VOICECALL_HANDSET_MIC_BE_CFG">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</backend_cfg>
<backend_cfg in_cfg="IN_VOICECALL_SPEAKER_MIC_BE_CFG">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</backend_cfg>
<backend_cfg in_cfg="IN_USB_TTY_VCO_MIC_BE_CFG">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</backend_cfg>
<backend_cfg in_cfg="IN_VOICE_RECOGN_MIC_BE_CFG">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT"/>
</backend_cfg>
<backend_cfg in_cfg="IN_UNPROCESSED_MIC_BE_CFG">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT"/>
</backend_cfg>
<backend_cfg in_cfg="IN_UNPROCESSED_DUAL_MIC_BE_CFG">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT"/>
</backend_cfg>
<backend_cfg in_cfg="IN_UNPROCESSED_TRIPLE_MIC_BE_CFG">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT"/>
</backend_cfg>
</input_backend_cfg_mic_mapping>
<usecase_attr>
<!-- for output with AUDIO_OUTPUT_FLAG_RAW, 32 periods * 64 frames(around 1.3ms) * 2ch * 4(s32) = 16384 bytes -->
<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, 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"/>
<!-- 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 -->
<usecase id="UC_HAPTIC_AUDIO" dev1="2" dev2="7" period="10" period_num="4"/>
<!-- for VOIP output, 4 * 10ms buffer -->
<usecase id="UC_VOIP_PLAYBACK" dev1="16" dyn_path="true" dsp_vol="true" mmap="false" period="10" period_num="4" pcm_ch="2"/>
<!-- for input -->
<usecase id="UC_AUDIO_RECORD" dev1="8" dyn_path="true" dsp_vol="false" mmap="false" period="20" period_num="4"/>
<usecase id="UC_HOSTLESS_UL" dev1="15"/>
<!-- for VOIP input, 4 * 10ms buffer -->
<usecase id="UC_VOIP_RECORD" dev1="17" dyn_path="true" dsp_vol="false" mmap="false" period="20" period_num="2"/>
<!-- for input wit AUDIO_INPUT_FLAG_FAST 480 periods * 1ms buffer, 16-bit, 2ch, buffer size 92160 bytes-->
<usecase id="UC_LOW_LATENCY_AUDIO_RECORD" dev1="10" dyn_path="true" dsp_vol="false" mmap="true" period="1" period_num="480"/>
<!-- for input wit AUDIO_INPUT_FLAG_MMAP_NOIRQ 240 periods * 1ms buffer, 32-bit,2 ch, buffer size 92160 bytes -->
<usecase id="UC_MMAP_RECORD" dev1="9" dyn_path="true" dsp_vol="false" mmap="true" period="1" period_num="240"/>
<!-- for hifi -->
<usecase id="UC_HIFI_PLAYBACK" dev1="25" period="20" period_num="4"/>
<usecase id="UC_HIFI_RECORD" dev1="26" period="20" period_num="4"/>
</usecase_attr>
<dsp_latency>
<usecase id="UC_LOW_LATENCY_PLAYBACK" type="playback">
<be_cfg be_id="OUT_SPEAKER_BE_CFG" latency="20000"/>
<be_cfg be_id="OUT_USB_HEADSET_BE_CFG" latency="60000"/>
<be_cfg be_id="OUT_USB_HEADPHONE_BE_CFG" latency="60000"/>
<be_cfg be_id="OUT_A2DP_BE_CFG" latency="60000"/>
<be_cfg be_id="OUT_BLE_BE_CFG" latency="60000"/>
</usecase>
<usecase id="UC_DEEP_BUFFER_PLAYBACK" type="playback">
<be_cfg be_id="OUT_SPEAKER_BE_CFG" latency="70000"/>
<be_cfg be_id="OUT_USB_HEADSET_BE_CFG" latency="70000"/>
<be_cfg be_id="OUT_USB_HEADPHONE_BE_CFG" latency="70000"/>
<be_cfg be_id="OUT_A2DP_BE_CFG" latency="180000"/>
<be_cfg be_id="OUT_BLE_BE_CFG" latency="80000"/>
</usecase>
<usecase id="UC_COMPRESSED_OFFLOAD_PLAYBACK" type="playback">
<be_cfg be_id="OUT_SPEAKER_BE_CFG" latency="40000"/>
<be_cfg be_id="OUT_USB_HEADSET_BE_CFG" latency="40000"/>
<be_cfg be_id="OUT_USB_HEADPHONE_BE_CFG" latency="40000"/>
<be_cfg be_id="OUT_A2DP_BE_CFG" latency="70000"/>
<be_cfg be_id="OUT_BLE_BE_CFG" latency="20000"/>
</usecase>
<usecase id="UC_IMMERSIVE_PLAYBACK" type="playback">
<be_cfg be_id="OUT_A2DP_BE_CFG" latency="100000"/>
</usecase>
<usecase id="UC_AUDIO_RECORD" type="capture">
<be_cfg be_id="IN_CAMCORDER_LANDSCAPE_BE_CFG" latency="160000"/>
<be_cfg be_id="IN_CAMCORDER_INVERT_LANDSCAPE_BE_CFG" latency="160000"/>
<be_cfg be_id="IN_CAMCORDER_PORTRAIT_BE_CFG" latency="160000"/>
<be_cfg be_id="IN_CAMCORDER_SELFIE_LANDSCAPE_BE_CFG" latency="160000"/>
<be_cfg be_id="IN_CAMCORDER_SELFIE_INVERT_LANDSCAPE_BE_CFG" latency="160000"/>
<be_cfg be_id="IN_CAMCORDER_SELFIE_PORTRAIT_BE_CFG" latency="160000"/>
<be_cfg be_id="IN_CAMCORDER_MIC_BE_CFG" latency="160000"/>
<be_cfg be_id="IN_CAMCORDER_TRIPLE_MIC_BE_CFG" latency="160000"/>
<be_cfg be_id="IN_BTSCO_MIC_BE_CFG" latency="40000"/>
<be_cfg be_id="IN_BTSCO_MIC_NREC_BE_CFG" latency="40000"/>
<be_cfg be_id="IN_BTSCO_MIC_WB_BE_CFG" latency="40000"/>
<be_cfg be_id="IN_BTSCO_MIC_WB_NREC_BE_CFG" latency="40000"/>
</usecase>
</dsp_latency>
<soundcard_name name="google,aoc-snd-card" />
<cfg_attr>
<cfg id="OUT_SPEAKER_BE_CFG" intf_name="TDM_RX_0" mux="HW_MUX_GP_0" tuning_id="2"/>
<cfg id="OUT_HAC_HANDSET_BE_CFG" intf_name="TDM_RX_1" mux="HW_MUX_GP_1" be_path="hac-handset"/>
<cfg id="OUT_USB_HEADSET_BE_CFG">
<override product="Blackbird" tuning_id="22"/>
<override product="Condor" tuning_id="33"/>
</cfg>
<cfg id="OUT_USB_TTY_FULL_BE_CFG" be_path="usb-headphone" codec_path="usb-headphone"/>
<cfg id="OUT_USB_TTY_VCO_BE_CFG" be_path="usb-headphone" codec_path="usb-headphone"/>
<cfg id="OUT_USB_TTY_HCO_BE_CFG" be_path="NULL" codec_path="voice-speaker"/>
<cfg id="IN_USB_TTY_FULL_MIC_BE_CFG" be_path="usb-headset-mic" codec_path="usb-headset-mic" mux="HW_MUX_GP_0"/>
<cfg id="IN_USB_TTY_VCO_MIC_BE_CFG" be_path="NULL" codec_path="voice-speaker-mic"/>
<cfg id="IN_USB_TTY_HCO_MIC_BE_CFG" be_path="usb-headset-mic" codec_path="usb-headset-mic" mux="HW_MUX_GP_0"/>
<cfg id="IN_SPK_VI_BE_CFG" codec_path="NULL" be_path="spk-vi"/>
<cfg id="IN_CAMCORDER_LANDSCAPE_BE_CFG" tuning_id="70"/>
<cfg id="IN_CAMCORDER_INVERT_LANDSCAPE_BE_CFG" tuning_id="71"/>
<cfg id="IN_CAMCORDER_PORTRAIT_BE_CFG" tuning_id="72"/>
<cfg id="IN_CAMCORDER_SELFIE_LANDSCAPE_BE_CFG" tuning_id="73"/>
<cfg id="IN_CAMCORDER_SELFIE_INVERT_LANDSCAPE_BE_CFG" tuning_id="74"/>
<cfg id="IN_CAMCORDER_SELFIE_PORTRAIT_BE_CFG" tuning_id="75"/>
<cfg id="IN_CAMCORDER_MIC_BE_CFG" tuning_id="70"/>
<cfg id="IN_CAMCORDER_TRIPLE_MIC_BE_CFG" tuning_id="70"/>
<cfg id="IN_BTSCO_MIC_BE_CFG" mux="HW_MUX_GP_0"/>
<cfg id="IN_BTSCO_MIC_NREC_BE_CFG" mux="HW_MUX_GP_0"/>
<cfg id="IN_BTSCO_MIC_WB_BE_CFG" mux="HW_MUX_GP_0"/>
<cfg id="IN_BTSCO_MIC_WB_NREC_BE_CFG" mux="HW_MUX_GP_0"/>
<cfg id="IN_VOICE_RECOGN_USB_HEADSET_MIC_BE_CFG" mux="HW_MUX_GP_0"/>
<cfg id="IN_USB_HEADSET_MIC_BE_CFG" mux="HW_MUX_GP_0"/>
<cfg id="IN_VOICECALL_USB_HEADSET_MIC_BE_CFG" mux="HW_MUX_GP_0"/>
<cfg id="IN_UNPROCESSED_USB_HEADSET_MIC_BE_CFG" mux="HW_MUX_GP_0"/>
</cfg_attr>
<xlate_id>
<item component="TUNING_COMPONENT_WAVES" id="2"/>
<item component="TUNING_COMPONENT_FORTEMEDIA" id="3"/>
<item component="TUNING_COMPONENT_CAMCORDER" id="6"/>
</xlate_id>
<voip_db_mapping>
<voip_path id="VOIP_RX_USB" value="0.01,0.02,0.04,0.1,0.21,0.47,1.0"/>
</voip_db_mapping>
<device_handle>
<handler libname="audio_bt_aoc.so"/>
<handler libname="audio_usb_aoc.so" argu="MaxSamplingRate=192000,UnsupportedFormat=S24_LE,MaxCapPacketInterval=125,MaxCapSampleRate=192000,MaxCapBitWidth=32,MaxCapChannel=2,EnableHifi192kMultichannel=0"/>
</device_handle>
<external_module>
<module libname="audio_spk_35l41.so"/>
<module libname="audio_waves_aoc.so" argu="Sink=SPK:1"/>
<module libname="audio_fortemedia_aoc.so" argu="DL_CH=y VoIP_DLCHs=SPK:1,USB:1 VoIP_Rate=32000"/>
<module libname="liboffloadeffect.so"/>
<module libname="audio_amcs_ext.so"/>
<module libname="audio_bluenote_aoc.so"/>
<module libname="audio_cca_aoc.so"/>
</external_module>
</audio_platform_configuration>

View File

@@ -1,255 +0,0 @@
<?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_OPUS AUDIO_FORMAT_AAC AUDIO_FORMAT_SBC">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</devicePort>
<devicePort tagName="BT A2DP Headphones" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES" role="sink"
encodedFormats="AUDIO_FORMAT_OPUS AUDIO_FORMAT_AAC AUDIO_FORMAT_SBC">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</devicePort>
<devicePort tagName="BT A2DP Speaker" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER" role="sink"
encodedFormats="AUDIO_FORMAT_OPUS AUDIO_FORMAT_AAC AUDIO_FORMAT_SBC">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="44100 48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</devicePort>
<devicePort tagName="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,raw,mmap_no_irq_out,voip_rx,compressed_offload"/>
<route type="mix" sink="Speaker Safe"
sources="primary output,deep buffer,raw,mmap_no_irq_out,voip_rx,compressed_offload"/>
<route type="mix" sink="Earpiece"
sources="primary output,deep buffer,raw,mmap_no_irq_out,voip_rx,compressed_offload"/>
<route type="mix" sink="BT A2DP Out"
sources="primary output,deep buffer,voip_rx,compressed_offload"/>
<route type="mix" sink="BT A2DP Headphones"
sources="primary output,deep buffer,voip_rx,compressed_offload"/>
<route type="mix" sink="BT A2DP Speaker"
sources="primary output,deep buffer,voip_rx,compressed_offload"/>
<route type="mix" sink="USB Device Out"
sources="primary output,deep buffer,raw,mmap_no_irq_out,voip_rx,compressed_offload"/>
<route type="mix" sink="USB Headset Out"
sources="primary output,deep buffer,raw,mmap_no_irq_out,voip_rx,compressed_offload"/>
<route type="mix" sink="BT SCO"
sources="primary output,deep buffer,voip_rx,compressed_offload"/>
<route type="mix" sink="BT SCO Headset"
sources="primary output,deep buffer,voip_rx,compressed_offload"/>
<route type="mix" sink="BT SCO Car Kit"
sources="primary output,deep buffer,voip_rx,compressed_offload"/>
<!--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>

View File

@@ -1,234 +0,0 @@
<?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="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,raw,mmap_no_irq_out,voip_rx,compressed_offload"/>
<route type="mix" sink="Speaker Safe"
sources="primary output,deep buffer,raw,mmap_no_irq_out,voip_rx,compressed_offload"/>
<route type="mix" sink="Earpiece"
sources="primary output,deep buffer,raw,mmap_no_irq_out,voip_rx,compressed_offload"/>
<route type="mix" sink="USB Device Out"
sources="primary output,deep buffer,raw,mmap_no_irq_out,voip_rx,compressed_offload"/>
<route type="mix" sink="USB Headset Out"
sources="primary output,deep buffer,raw,mmap_no_irq_out,voip_rx,compressed_offload"/>
<route type="mix" sink="BT SCO"
sources="primary output,deep buffer,voip_rx,compressed_offload"/>
<route type="mix" sink="BT SCO Headset"
sources="primary output,deep buffer,voip_rx,compressed_offload"/>
<route type="mix" sink="BT SCO Car Kit"
sources="primary output,deep buffer,voip_rx,compressed_offload"/>
<!--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>

View File

@@ -1,234 +0,0 @@
<?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="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,raw,mmap_no_irq_out,voip_rx,compressed_offload"/>
<route type="mix" sink="Speaker Safe"
sources="primary output,deep buffer,raw,mmap_no_irq_out,voip_rx,compressed_offload"/>
<route type="mix" sink="Earpiece"
sources="primary output,deep buffer,raw,mmap_no_irq_out,voip_rx,compressed_offload"/>
<route type="mix" sink="USB Device Out"
sources="primary output,deep buffer,raw,mmap_no_irq_out,voip_rx,compressed_offload"/>
<route type="mix" sink="USB Headset Out"
sources="primary output,deep buffer,raw,mmap_no_irq_out,voip_rx,compressed_offload"/>
<route type="mix" sink="BT SCO"
sources="primary output,deep buffer,voip_rx,compressed_offload"/>
<route type="mix" sink="BT SCO Headset"
sources="primary output,deep buffer,voip_rx,compressed_offload"/>
<route type="mix" sink="BT SCO Car Kit"
sources="primary output,deep buffer,voip_rx,compressed_offload"/>
<!--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>
<!-- A2dp Audio HAL -->
<xi:include href="a2dp_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>

View File

@@ -1,799 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Copyright (c) 2019, The Linux Foundation. All rights reserved. -->
<!-- -->
<!-- Redistribution and use in source and binary forms, with or without -->
<!-- modification, are permitted provided that the following conditions are -->
<!-- met: -->
<!-- * Redistributions of source code must retain the above copyright -->
<!-- notice, this list of conditions and the following disclaimer. -->
<!-- * Redistributions in binary form must reproduce the above -->
<!-- copyright notice, this list of conditions and the following -->
<!-- disclaimer in the documentation and/or other materials provided -->
<!-- with the distribution. -->
<!-- * Neither the name of The Linux Foundation nor the names of its -->
<!-- contributors may be used to endorse or promote products derived -->
<!-- from this software without specific prior written permission. -->
<!-- -->
<!-- THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED -->
<!-- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -->
<!-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT -->
<!-- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS -->
<!-- BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -->
<!-- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -->
<!-- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR -->
<!-- BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -->
<!-- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN -->
<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -->
<mixer>
<!-- Initial default value of ALSA command -->
<!-- PCM timeout -->
<ctl name="PCM Stream Wait Time in MSec" value="100"/>
<ctl name="Voice PCM Stream Wait Time in MSec" value="500"/>
<!-- TDM 0 setting -->
<ctl name="TDM_0_RX Chan" value="Four"/>
<ctl name="TDM_0_RX Format" value="S32_LE"/>
<ctl name="TDM_0_TX Chan" value="Four"/>
<ctl name="TDM_0_TX Format" value="S32_LE"/>
<!-- Haptic setting -->
<ctl name="HAPTIC_RX Format" value="S32_LE"/>
<ctl name="HAPTIC_RX SlotFmt" value="S32_LE"/>
<ctl name="HAPTIC_RX Chan" value="Four"/>
<ctl name="HAPTIC_RX nSlot" value="Four"/>
<ctl name="RX Slots" id="0" value="2"/>
<ctl name="RX Slots" id="1" value="3"/>
<!-- Cirrus Booster Amp TDM slot assignment-->
<!-- RX slot -->
<ctl name="ASPRX1 Slot Position" value="0"/>
<ctl name="ASPRX2 Slot Position" value="1"/>
<ctl name="R ASPRX1 Slot Position" value="1"/>
<ctl name="R ASPRX2 Slot Position" value="0"/>
<!-- TX slot -->
<ctl name="ASPTX1 Slot Position" value="0"/>
<ctl name="R ASPTX1 Slot Position" value="1"/>
<ctl name="ASPTX2 Slot Position" value="2"/>
<ctl name="R ASPTX2 Slot Position" value="3"/>
<ctl name="ASPTX3 Slot Position" value="4"/>
<ctl name="R ASPTX3 Slot Position" value="5"/>
<ctl name="ASPTX4 Slot Position" value="6"/>
<ctl name="R ASPTX4 Slot Position" value="7"/>
<!-- Cirrus Booster Amp DRE and VBST config-->
<ctl name="VBSTMON Output Switch" value="1"/>
<ctl name="R VBSTMON Output Switch" value="1"/>
<ctl name="DRE DRE Switch" value="1"/>
<ctl name="R DRE DRE Switch" value="1"/>
<!-- Cirrus Booster Amp Output Gain -->
<ctl name="AMP PCM Gain" value="17"/>
<ctl name="R AMP PCM Gain" value="17"/>
<ctl name="Digital PCM Volume" value="817"/>
<ctl name="R Digital PCM Volume" value="817"/>
<!-- Cirrus Booster Amp Power -->
<ctl name="Main AMP Enable Switch" value="0"/>
<ctl name="R Main AMP Enable Switch" value="0"/>
<!-- Cirrus Booster mode -->
<ctl name="PCM Source" value="DSP"/>
<ctl name="R PCM Source" value="DSP"/>
<ctl name="DSP1 Firmware" value="Protection"/>
<ctl name="R DSP1 Firmware" value="Protection"/>
<ctl name="DSP RX1 Source" value="ASPRX1"/>
<ctl name="DSP RX2 Source" value="ASPRX1"/>
<ctl name="R DSP RX1 Source" value="ASPRX1"/>
<ctl name="R DSP RX2 Source" value="ASPRX1"/>
<ctl name="Boost Peak Current Limit" value="3.50A"/>
<ctl name="R Boost Peak Current Limit" value="3.50A"/>
<!-- Cirrus ASP TX source -->
<ctl name="ASP TX1 Source" value="VMON" />
<ctl name="R ASP TX1 Source" value="VMON" />
<ctl name="ASP TX2 Source" value="IMON" />
<ctl name="R ASP TX2 Source" value="IMON" />
<ctl name="ASP TX3 Source" value="Zero" />
<ctl name="R ASP TX3 Source" value="Zero" />
<ctl name="ASP TX4 Source" value="Zero" />
<ctl name="R ASP TX4 Source" value="Zero" />
<!-- default EP volume -->
<ctl name="PCM Playback Switch" value="1"/>
<ctl name="PCM Playback Volume" value="10"/>
<!-- audio RX route initial/default value -->
<ctl name="TDM_0_RX Mixer EP1" value="0"/>
<ctl name="TDM_0_RX Mixer EP2" value="0"/>
<ctl name="TDM_0_RX Mixer EP3" value="0"/>
<ctl name="TDM_0_RX Mixer EP4" value="0"/>
<ctl name="TDM_0_RX Mixer EP5" value="0"/>
<ctl name="TDM_0_RX Mixer EP6" value="0"/>
<ctl name="TDM_0_RX Mixer EP7" value="0"/>
<ctl name="TDM_0_RX Mixer EP8" value="0"/>
<ctl name="TDM_0_RX Mixer NoHost1" value="0"/>
<ctl name="TDM_0_RX Mixer VOIP" value="0"/>
<ctl name="TDM_0_RX Mixer RAW" value="0"/>
<ctl name="TDM_1_RX Mixer EP1" value="0"/>
<ctl name="TDM_1_RX Mixer EP2" value="0"/>
<ctl name="TDM_1_RX Mixer EP3" value="0"/>
<ctl name="TDM_1_RX Mixer EP4" value="0"/>
<ctl name="TDM_1_RX Mixer EP5" value="0"/>
<ctl name="TDM_1_RX Mixer EP6" value="0"/>
<ctl name="TDM_1_RX Mixer EP7" value="0"/>
<ctl name="TDM_1_RX Mixer EP8" value="0"/>
<ctl name="TDM_1_RX Mixer NoHost1" value="0"/>
<ctl name="USB_RX Mixer EP1" value="0"/>
<ctl name="USB_RX Mixer EP2" value="0"/>
<ctl name="USB_RX Mixer EP3" value="0"/>
<ctl name="USB_RX Mixer EP4" value="0"/>
<ctl name="USB_RX Mixer EP5" value="0"/>
<ctl name="USB_RX Mixer EP6" value="0"/>
<ctl name="USB_RX Mixer EP7" value="0"/>
<ctl name="USB_RX Mixer NoHost1" value="0"/>
<ctl name="USB_RX Mixer VOIP" value="0"/>
<ctl name="USB_RX Mixer HIFI" value="0"/>
<ctl name="USB_RX Mixer RAW" value="0"/>
<ctl name="BT_RX Mixer EP1" value="0"/>
<ctl name="BT_RX Mixer EP2" value="0"/>
<ctl name="BT_RX Mixer EP3" value="0"/>
<ctl name="BT_RX Mixer EP4" value="0"/>
<ctl name="BT_RX Mixer EP5" value="0"/>
<ctl name="BT_RX Mixer EP6" value="0"/>
<ctl name="BT_RX Mixer EP7" value="0"/>
<ctl name="BT_RX Mixer NoHost1" value="0"/>
<ctl name="BT_RX Mixer VOIP" value="0"/>
<ctl name="INCALL_RX Mixer EP1" value="0"/>
<ctl name="INCALL_RX Mixer EP2" value="0"/>
<ctl name="INCALL_RX Mixer EP3" value="0"/>
<ctl name="INCALL_RX Mixer EP4" value="0"/>
<ctl name="INCALL_RX Mixer EP5" value="0"/>
<ctl name="INCALL_RX Mixer EP6" value="0"/>
<ctl name="INCALL_RX Mixer EP7" value="0"/>
<ctl name="INCALL_RX Mixer NoHost1" value="0"/>
<ctl name="SINK_IDS" id="0" value="-1"/>
<ctl name="SINK_IDS" id="1" value="-1"/>
<!-- audio TX route initial/default value -->
<ctl name="EP1 TX Mixer TDM_0_TX" value="0"/>
<ctl name="EP2 TX Mixer TDM_0_TX" value="0"/>
<ctl name="EP3 TX Mixer TDM_0_TX" value="0"/>
<ctl name="EP4 TX Mixer TDM_0_TX" value="0"/>
<ctl name="EP5 TX Mixer TDM_0_TX" value="0"/>
<ctl name="EP6 TX Mixer TDM_0_TX" value="0"/>
<ctl name="NoHost1 TX Mixer TDM_0_TX" value="0"/>
<ctl name="EP1 TX Mixer TDM_1_TX" value="0"/>
<ctl name="EP2 TX Mixer TDM_1_TX" value="0"/>
<ctl name="EP3 TX Mixer TDM_1_TX" value="0"/>
<ctl name="EP4 TX Mixer TDM_1_TX" value="0"/>
<ctl name="EP5 TX Mixer TDM_1_TX" value="0"/>
<ctl name="EP6 TX Mixer TDM_1_TX" value="0"/>
<ctl name="NoHost1 TX Mixer TDM_1_TX" value="0"/>
<ctl name="EP1 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="EP2 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="EP3 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="EP4 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="EP5 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="EP6 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="NoHost1 TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="VOIP TX Mixer INTERNAL_MIC_TX" value="0"/>
<ctl name="EP1 TX Mixer BT_TX" value="0"/>
<ctl name="EP2 TX Mixer BT_TX" value="0"/>
<ctl name="EP3 TX Mixer BT_TX" value="0"/>
<ctl name="EP4 TX Mixer BT_TX" value="0"/>
<ctl name="EP5 TX Mixer BT_TX" value="0"/>
<ctl name="EP6 TX Mixer BT_TX" value="0"/>
<ctl name="NoHost1 TX Mixer BT_TX" value="0"/>
<ctl name="VOIP TX Mixer BT_TX" value="0"/>
<ctl name="EP1 TX Mixer USB_TX" value="0"/>
<ctl name="EP2 TX Mixer USB_TX" value="0"/>
<ctl name="EP3 TX Mixer USB_TX" value="0"/>
<ctl name="EP4 TX Mixer USB_TX" value="0"/>
<ctl name="EP5 TX Mixer USB_TX" value="0"/>
<ctl name="EP6 TX Mixer USB_TX" value="0"/>
<ctl name="NoHost1 TX Mixer USB_TX" value="0"/>
<ctl name="VOIP TX Mixer USB_TX" value="0"/>
<ctl name="EP1 TX Mixer INCALL_TX" value="0"/>
<ctl name="EP2 TX Mixer INCALL_TX" value="0"/>
<ctl name="EP3 TX Mixer INCALL_TX" value="0"/>
<ctl name="EP4 TX Mixer INCALL_TX" value="0"/>
<ctl name="EP5 TX Mixer INCALL_TX" value="0"/>
<ctl name="EP6 TX Mixer INCALL_TX" value="0"/>
<ctl name="NoHost1 TX Mixer INCALL_TX" value="0"/>
<ctl name="EP4 TX Mixer I2S_2_TX" value="0"/>
<!-- AoC Mic setting -->
<ctl name="MIC DC Blocker" value="1" />
<ctl name="MIC HW Gain At High Power Mode (cB)" value="0" />
<ctl name="MIC Record Soft Gain (dB)" value="-40"/>
<!-- USB setting v2 -->
<ctl name="USB Bus ID v2" value="2"/>
<ctl name="USB Dev ID v2" value="2"/>
<ctl name="USB Playback EP ID v2" value="1"/>
<ctl name="USB Playback FORMAT v2" value="0"/>
<ctl name="USB Playback SR v2" value="48000"/>
<ctl name="USB Playback CH v2" value="2"/>
<ctl name="USB Playback BW v2" value="24"/>
<ctl name="USB Capture EP ID v2" value="1"/>
<ctl name="USB Capture FORMAT v2" value="0"/>
<ctl name="USB Capture SR v2" value="48000"/>
<ctl name="USB Capture CH v2" value="1"/>
<ctl name="USB Capture BW v2" value="16"/>
<ctl name="AoC Modem Downlink ASRC Mode" value="ASP_ON"/>
<ctl name="Voice Call Mic Source" value="Builtin_MIC"/>
<ctl name="Mic Spatial Module Enable" value="0"/>
<!-- audio PDM mic default state -->
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="-1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="-1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="-1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="Audio Capture Mic Source" value="Builtin_MIC"/>
<!-- sidetone controls -->
<ctl name="Sidetone Enable" value="0"/>
<ctl name="Sidetone Volume" value="-96"/>
<ctl name="Sidetone Selected Mic" value="0"/>
<ctl name="Sidetone EQ Stage Number" value="1"/>
<!-- IEEE 754, value is in float -->
<ctl name="Sidetone Biquad0" id="0" value="0"/>
<ctl name="Sidetone Biquad0" id="1" value="0"/>
<ctl name="Sidetone Biquad0" id="2" value="0"/>
<ctl name="Sidetone Biquad0" id="3" value="0"/>
<ctl name="Sidetone Biquad0" id="4" value="0"/>
<ctl name="Sidetone Biquad0" id="5" value="0"/>
<ctl name="Sidetone Biquad1" id="0" value="0"/>
<ctl name="Sidetone Biquad1" id="1" value="0"/>
<ctl name="Sidetone Biquad1" id="2" value="0"/>
<ctl name="Sidetone Biquad1" id="3" value="0"/>
<ctl name="Sidetone Biquad1" id="4" value="0"/>
<ctl name="Sidetone Biquad1" id="5" value="0"/>
<ctl name="Sidetone Biquad2" id="0" value="0"/>
<ctl name="Sidetone Biquad2" id="1" value="0"/>
<ctl name="Sidetone Biquad2" id="2" value="0"/>
<ctl name="Sidetone Biquad2" id="3" value="0"/>
<ctl name="Sidetone Biquad2" id="4" value="0"/>
<ctl name="Sidetone Biquad2" id="5" value="0"/>
<ctl name="Sidetone Biquad3" id="0" value="0"/>
<ctl name="Sidetone Biquad3" id="1" value="0"/>
<ctl name="Sidetone Biquad3" id="2" value="0"/>
<ctl name="Sidetone Biquad3" id="3" value="0"/>
<ctl name="Sidetone Biquad3" id="4" value="0"/>
<ctl name="Sidetone Biquad3" id="5" value="0"/>
<ctl name="Sidetone Biquad4" id="0" value="0"/>
<ctl name="Sidetone Biquad4" id="1" value="0"/>
<ctl name="Sidetone Biquad4" id="2" value="0"/>
<ctl name="Sidetone Biquad4" id="3" value="0"/>
<ctl name="Sidetone Biquad4" id="4" value="0"/>
<ctl name="Sidetone Biquad4" id="5" value="0"/>
<ctl name="Incall Capture Stream0" value="Off"/>
<ctl name="Incall Capture Stream1" value="Off"/>
<ctl name="Incall Capture Stream2" value="Off"/>
<!-- These two controls control the muting function of mics and sinks during the voice call. -->
<!-- They would be enabled by HAL. -->
<ctl name="Incall Sink Mute" value="0"/>
<ctl name="Incall Mic Mute" value="0"/>
<!-- Decoder Reference Enable is controlled in aoc_control -->
<ctl name="Decoder Reference Enable" value="0"/>
<ctl name="LVM Enable" value="0"/>
<!-- sidetone dynamic control -->
<path name="sidetone-for handset">
<!-- 1065353216 = 0x3f800000 = 1.0 -->
<ctl name="Sidetone Biquad0" id="0" value="1065353216"/>
<ctl name="Sidetone Biquad0" id="1" value="1065353216"/>
<ctl name="Sidetone Biquad0" id="2" value="0"/>
<ctl name="Sidetone Biquad0" id="3" value="0"/>
<ctl name="Sidetone Biquad0" id="4" value="0"/>
<ctl name="Sidetone Biquad0" id="5" value="0"/>
<ctl name="Sidetone Biquad1" id="0" value="1065353216"/>
<ctl name="Sidetone Biquad1" id="1" value="1065353216"/>
<ctl name="Sidetone Biquad1" id="2" value="0"/>
<ctl name="Sidetone Biquad1" id="3" value="0"/>
<ctl name="Sidetone Biquad1" id="4" value="0"/>
<ctl name="Sidetone Biquad1" id="5" value="0"/>
<ctl name="Sidetone Biquad2" id="0" value="1065353216"/>
<ctl name="Sidetone Biquad2" id="1" value="1065353216"/>
<ctl name="Sidetone Biquad2" id="2" value="0"/>
<ctl name="Sidetone Biquad2" id="3" value="0"/>
<ctl name="Sidetone Biquad2" id="4" value="0"/>
<ctl name="Sidetone Biquad2" id="5" value="0"/>
<ctl name="Sidetone Biquad3" id="0" value="1065353216"/>
<ctl name="Sidetone Biquad3" id="1" value="1065353216"/>
<ctl name="Sidetone Biquad3" id="2" value="0"/>
<ctl name="Sidetone Biquad3" id="3" value="0"/>
<ctl name="Sidetone Biquad3" id="4" value="0"/>
<ctl name="Sidetone Biquad3" id="5" value="0"/>
<ctl name="Sidetone Biquad4" id="0" value="1065353216"/>
<ctl name="Sidetone Biquad4" id="1" value="1065353216"/>
<ctl name="Sidetone Biquad4" id="2" value="0"/>
<ctl name="Sidetone Biquad4" id="3" value="0"/>
<ctl name="Sidetone Biquad4" id="4" value="0"/>
<ctl name="Sidetone Biquad4" id="5" value="0"/>
<ctl name="Sidetone EQ Stage Number" value="5"/>
<ctl name="Sidetone Volume" value="-90"/>
<ctl name="Sidetone Enable" value="1"/>
</path>
<!-- audio playback dynamic route -->
<path name="deep-buffer-playbackP">
<ctl name="TDM_0_RX Mixer EP6" value="1"/>
</path>
<path name="deep-buffer-playbackP hac-handset">
</path>
<path name="deep-buffer-playbackP bt">
<ctl name="BT_RX Mixer EP6" value="1"/>
</path>
<path name="deep-buffer-playbackP usb-headphone">
<ctl name="USB_RX Mixer EP6" value="1"/>
</path>
<path name="deep-buffer-playbackP hearing-aid">
</path>
<path name="low-latency-playbackP">
<ctl name="TDM_0_RX Mixer EP2" value="1"/>
</path>
<path name="low-latency-playbackP hac-handset">
</path>
<path name="low-latency-playbackP bt">
<ctl name="BT_RX Mixer EP2" value="1"/>
</path>
<path name="low-latency-playbackP usb-headphone">
<ctl name="USB_RX Mixer EP2" value="1"/>
</path>
<path name="low-latency-playbackP hearing-aid">
</path>
<path name="raw-playbackP">
<ctl name="TDM_0_RX Mixer RAW" value="1"/>
</path>
<path name="raw-playbackP hac-handset">
</path>
<path name="raw-playbackP usb-headphone">
<ctl name="USB_RX Mixer RAW" value="1"/>
</path>
<path name="raw-playbackP hearing-aid">
</path>
<path name="mmap-playbackP">
<ctl name="TDM_0_RX Mixer EP1" value="1"/>
</path>
<path name="mmap-playbackP hac-handset">
</path>
<path name="mmap-playbackP usb-headphone">
<ctl name="USB_RX Mixer EP1" value="1"/>
</path>
<path name="mmap-playbackP hearing-aid">
</path>
<path name="compress-offload-playback">
<ctl name="LVM Enable" value="1" />
</path>
<path name="compress-offload-playbackP">
<path name="compress-offload-playback" />
<ctl name="TDM_0_RX Mixer EP7" value="1"/>
</path>
<path name="compress-offload-playbackP hac-handset">
<path name="compress-offload-playback" />
</path>
<path name="compress-offload-playbackP bt">
<path name="compress-offload-playback" />
<ctl name="BT_RX Mixer EP7" value="1"/>
</path>
<path name="compress-offload-playbackP usb-headphone">
<path name="compress-offload-playback" />
<ctl name="USB_RX Mixer EP7" value="1"/>
</path>
<path name="compress-offload-playbackP hearing-aid">
<path name="compress-offload-playback" />
</path>
<path name="voip-playbackP">
<ctl name="TDM_0_RX Mixer VOIP" value="1"/>
</path>
<path name="voip-playbackP hac-handset">
</path>
<path name="voip-playbackP bt">
<ctl name="BT_RX Mixer VOIP" value="1"/>
</path>
<path name="voip-playbackP usb-headphone">
<ctl name="USB_RX Mixer VOIP" value="1"/>
</path>
<path name="voip-playbackP hearing-aid">
</path>
<path name="haptic-audioP">
<ctl name="TDM_0_RX Mixer EP3" value="1"/>
<ctl name="TDM_0_RX Mixer EP8" value="1"/>
</path>
<path name="haptic-audioP hac-handset">
</path>
<path name="haptic-audioP bt">
<ctl name="BT_RX Mixer EP3" value="1"/>
<ctl name="TDM_0_RX Mixer EP8" value="1"/>
</path>
<path name="haptic-audioP usb-headphone">
<ctl name="USB_RX Mixer EP3" value="1"/>
<ctl name="TDM_0_RX Mixer EP8" value="1"/>
</path>
<path name="hifi-playbackP">
</path>
<path name="hifi-playbackP usb-headphone">
<ctl name="USB_RX Mixer HIFI" value="1"/>
</path>
<path name="hifi-recordC">
</path>
<path name="hifi-recordC usb-headset-mic">
</path>
<!-- audio capture dynamic route -->
<path name="audio-recordC">
<ctl name="EP1 TX Mixer INTERNAL_MIC_TX" value="1"/>
</path>
<path name="audio-recordC usb-headset-mic">
<ctl name="EP1 TX Mixer USB_TX" value="1"/>
</path>
<path name="audio-recordC bt-mic">
<ctl name="EP1 TX Mixer BT_TX" value="1"/>
</path>
<path name="voip-recordC">
<ctl name="VOIP TX Mixer INTERNAL_MIC_TX" value="1"/>
</path>
<path name="voip-recordC usb-headset-mic">
<ctl name="VOIP TX Mixer USB_TX" value="1"/>
</path>
<path name="voip-recordC bt-mic">
<ctl name="VOIP TX Mixer BT_TX" value="1"/>
</path>
<!-- voice-call dynamic route -->
<path name="voice-callP">
<ctl name="TDM_0_RX Mixer EP5" value="1"/>
</path>
<path name="voice-callP bt">
<ctl name="BT_RX Mixer EP5" value="1"/>
</path>
<path name="voice-callP usb-headphone">
<ctl name="USB_RX Mixer EP5" value="1"/>
</path>
<path name="voice-callP hearing-aid">
<ctl name="INCALL_RX Mixer EP5" value="1"/>
</path>
<path name="voice-callP call-screen">
<ctl name="INCALL_RX Mixer EP5" value="1"/>
</path>
<path name="voice-callC">
<ctl name="EP4 TX Mixer INTERNAL_MIC_TX" value="1"/>
</path>
<path name="voice-callC usb-headset-mic">
<ctl name="EP4 TX Mixer USB_TX" value="1"/>
</path>
<path name="voice-callC bt-mic">
<ctl name="EP4 TX Mixer BT_TX" value="1"/>
</path>
<path name="voice-callC hearing-aid">
<ctl name="EP4 TX Mixer INCALL_TX" value="1"/>
</path>
<path name="voice-callC call-screen">
<ctl name="EP4 TX Mixer INCALL_TX" value="1"/>
</path>
<path name="hostless-ulC spk-vi">
<ctl name="NoHost1 TX Mixer TDM_0_TX" value="1"/>
</path>
<path name="telephony-rx-captureC">
<ctl name="Incall Capture Stream0" value="DL"/>
</path>
<path name="incall-capture1C uplink">
<ctl name="Incall Capture Stream1" value="UL"/>
</path>
<path name="incall-capture1C downlink">
<ctl name="Incall Capture Stream1" value="DL"/>
</path>
<path name="incall-capture1C call">
<ctl name="Incall Capture Stream1" value="UL_DL"/>
</path>
<path name="incall-capture2C uplink">
<ctl name="Incall Capture Stream2" value="UL"/>
</path>
<path name="incall-capture2C downlink">
<ctl name="Incall Capture Stream2" value="DL"/>
</path>
<path name="incall-capture2C call">
<ctl name="Incall Capture Stream2" value="UL_DL"/>
</path>
<path name="low-latency-recordC">
<ctl name="EP3 TX Mixer INTERNAL_MIC_TX" value="1"/>
</path>
<path name="low-latency-recordC usb-headset-mic">
<ctl name="EP3 TX Mixer USB_TX" value="1"/>
</path>
<path name="mmap-recordC">
<ctl name="EP2 TX Mixer INTERNAL_MIC_TX" value="1"/>
</path>
<path name="mmap-recordC usb-headset-mic">
<ctl name="EP2 TX Mixer USB_TX" value="1"/>
</path>
<!-- codec setting -->>
<!-- Rx device -->
<path name="handset">
<ctl name="PCM Source" value="ASP"/>
<ctl name="AMP PCM Gain" value="6"/>
<ctl name="Main AMP Enable Switch" value="1"/>
</path>
<path name="voice-handset">
<ctl name="Boost Peak Current Limit" value="3.50A"/>
<ctl name="PCM Source" value="ASP"/>
<ctl name="AMP PCM Gain" value="6"/>
<ctl name="Main AMP Enable Switch" value="1"/>
</path>
<path name="voice-hac">
<path name="voice-handset"/>
</path>
<path name="voice-hac-handset">
</path>
<path name="speaker">
<ctl name="Boost Peak Current Limit" value="2.50A"/>
<ctl name="R Boost Peak Current Limit" value="2.50A"/>
<ctl name="Main AMP Enable Switch" value="1"/>
<ctl name="R Main AMP Enable Switch" value="1"/>
</path>
<path name="voice-speaker">
<ctl name="R Boost Peak Current Limit" value="3.50A"/>
<ctl name="ASPTX1 Slot Position" value="1"/>
<ctl name="R ASPTX1 Slot Position" value="0"/>
<ctl name="R DSP RX2 Source" value="ASPRX2"/>
<ctl name="R Main AMP Enable Switch" value="1"/>
</path>
<path name="voice-dual-speaker">
<path name="speaker" />
</path>
<path name="speaker-safe">
<ctl name="R Boost Peak Current Limit" value="3.50A"/>
<ctl name="R Main AMP Enable Switch" value="1"/>
</path>
<path name="usb-tty-full">
</path>
<path name="usb-tty-hco">
</path>
<path name="usb-tty-vco">
</path>
<!-- Tx device -->
<path name="handset-mic">
<ctl name="Mic Spatial Module Enable" value="1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="MIC DC Blocker" value="1"/>
</path>
<path name="handset-mic-post">
<ctl name="MIC Record Soft Gain (dB)" value="22"/>
</path>
<path name="voice-handset-mic">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="MIC DC Blocker" value="1"/>
<ctl name="MIC HW Gain At High Power Mode (cB)" value="130"/>
</path>
<path name="voice-handset-mic-post">
<ctl name="MIC Record Soft Gain (dB)" value="0"/>
</path>
<path name="speaker-mic">
<ctl name="Mic Spatial Module Enable" value="1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="MIC DC Blocker" value="1"/>
</path>
<path name="speaker-mic-post">
<ctl name="MIC Record Soft Gain (dB)" value="0"/>
</path>
<path name="voice-speaker-mic">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="MIC DC Blocker" value="1"/>
<ctl name="MIC HW Gain At High Power Mode (cB)" value="130"/>
</path>
<path name="voice-speaker-mic-post">
<ctl name="MIC Record Soft Gain (dB)" value="0"/>
</path>
<path name="camcorder-mic">
<ctl name="Mic Spatial Module Enable" value="1"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="MIC DC Blocker" value="1"/>
</path>
<path name="camcorder-mic-post">
<ctl name="MIC Record Soft Gain (dB)" value="0"/>
</path>
<path name="voice-recog-mic">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="MIC DC Blocker" value="1"/>
</path>
<path name="voice-recog-mic-post">
<ctl name="MIC Record Soft Gain (dB)" value="22"/>
</path>
<path name="unprocessed-mic">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="MIC DC Blocker" value="1"/>
</path>
<path name="unprocessed-mic-post">
<ctl name="MIC Record Soft Gain (dB)" value="5"/>
</path>
<path name="unprocessed-dual-mic">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="MIC DC Blocker" value="1"/>
</path>
<path name="unprocessed-dual-mic-post">
<ctl name="MIC Record Soft Gain (dB)" value="5"/>
</path>
<path name="unprocessed-triple-mic">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="MIC DC Blocker" value="1"/>
</path>
<path name="unprocessed-triple-mic-post">
<ctl name="MIC Record Soft Gain (dB)" value="5"/>
</path>
<path name="bt-mic">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="Audio Capture Mic Source" value="BT_MIC"/>
<ctl name="Voice Call Mic Source" value="BT_MIC"/>
</path>
<path name="bt-mic-post">
<ctl name="MIC Record Soft Gain (dB)" value="0"/>
</path>
<path name="usb-headset-mic">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2"/>
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1"/>
<ctl name="Audio Capture Mic Source" value="USB_MIC"/>
<ctl name="Voice Call Mic Source" value="USB_MIC"/>
</path>
<path name="usb-headset-mic-post">
<ctl name="MIC Record Soft Gain (dB)" value="0"/>
</path>
<!-- cs35l41 specific path to load firmware in cs35l41.c -->
<path name="cs35l41-load-protection-firmware-start">
<!-- Enable it after get the protection firmware -->
<ctl name="DSP Booted" value="0" />
<ctl name="R DSP Booted" value="0" />
<ctl name="DSP1 Preload Switch" value="0" />
<ctl name="R DSP1 Preload Switch" value="0" />
</path>
<path name="cs35l41-load-protection-firmware-end">
<!-- Enable it after get the protection firmware -->
<ctl name="DSP1 Preload Switch" value="1" />
<ctl name="R DSP1 Preload Switch" value="1" />
</path>
<!-- cs35l41 specific path to load firmware in cs35l41.c end-->
</mixer>

View File

@@ -1,390 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<mixer>
<ctl name="TDM_0_RX Mixer EP3" value="0" />
<ctl name="TDM_0_RX Mixer EP6" value="0" />
<ctl name="I2S_0_RX Mixer EP3" value="0" />
<ctl name="Main AMP Enable Switch" value="0" />
<ctl name="R Main AMP Enable Switch" value="0" />
<ctl name="MIC HW Gain At Lower Power Mode (cB)" value="-160" />
<ctl name="MIC HW Gain At High Power Mode (cB)" value="0" />
<ctl name="MIC Record Soft Gain (dB)" value="0"/>
<ctl name="EP1 TX Mixer TDM_0_TX" value="0" />
<ctl name="DEFAULT_MIC_ID" value="0" />
<ctl name="MIC0" value="0" />
<ctl name="MIC1" value="0" />
<ctl name="MIC2" value="0" />
<ctl name="MIC3" value="0" />
<ctl name="AoC Speaker Mixer ASP Mode" value="ASP_ON" />
<ctl name="TDM_0_RX Sample Rate" value="SR_48K" />
<ctl name="TDM_0_TX Sample Rate" value="SR_48K" />
<ctl name="TDM_0_RX Mixer US" value="0" />
<ctl name="US Record Enable" value="0" />
<path name="mfg-playback">
</path>
<path name="deep-buffer-playback speaker">
<ctl name="AoC Speaker Mixer ASP Mode" value="ASP_BYPASS" />
<ctl name="TDM_0_RX Mixer EP6" value="1" />
<path name="mfg-playback" />
</path>
<path name="deep-buffer-playback headphones">
<ctl name="I2S_0_RX Mixer EP6" value="1" />
<path name="mfg-playback" />
</path>
<path name="mfg-record">
<ctl name="EP1 TX Mixer TDM_0_TX" value="1" />
</path>
<path name="mfg-record usb-headset-mic">
<ctl name="Audio Capture Mic Source" value="USB_MIC"/>
<ctl name="USB Capture FORMAT v2" value="1" />
<ctl name="USB Config To AoC v2" value="1"/>
<ctl name="EP1 TX Mixer USB_TX" value="1"/>
</path>
<path name="us-mfg-record">
<ctl name="US Record Enable" value="1" />
<ctl name="EP1 TX Mixer TDM_0_TX" value="1" />
</path>
<path name="mic1-status">
<ctl name="MIC0" value="1" />
</path>
<path name="mic2-status">
<ctl name="MIC1" value="1" />
</path>
<path name="mic3-status">
<ctl name="MIC2" value="1" />
</path>
<path name="mic4-status">
<ctl name="MIC3" value="0" />
</path>
<path name="mic1-gain">
<ctl name="MIC HW Gain At Lower Power Mode (cB)" />
<ctl name="MIC HW Gain At High Power Mode (cB)" />
</path>
<path name="mic2-gain">
<ctl name="MIC HW Gain At Lower Power Mode (cB)" />
<ctl name="MIC HW Gain At High Power Mode (cB)" />
</path>
<path name="mic3-gain">
<ctl name="MIC HW Gain At Lower Power Mode (cB)" />
<ctl name="MIC HW Gain At High Power Mode (cB)" />
</path>
<path name="mic4-gain">
<ctl name="MIC HW Gain At Lower Power Mode (cB)" />
<ctl name="MIC HW Gain At High Power Mode (cB)" />
</path>
<path name="mic1-sw-gain">
<ctl name="MIC Record Soft Gain (dB)" />
</path>
<path name="mic2-sw-gain">
<ctl name="MIC Record Soft Gain (dB)" />
</path>
<path name="mic3-sw-gain">
<ctl name="MIC Record Soft Gain (dB)" />
</path>
<path name="mic4-sw-gain">
<ctl name="MIC Record Soft Gain (dB)" />
</path>
<path name="usb-capture-gain">
<ctl name="MIC Record Soft Gain (dB)" />
</path>
<path name="mic1-only">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="-1" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="-1" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1" />
<ctl name="MIC0" value="1" />
<ctl name="MIC Record Soft Gain (dB)" value="0" />
</path>
<path name="mic2-only">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="3" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="-1" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="-1" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1" />
<ctl name="MIC1" value="1" />
<ctl name="MIC Record Soft Gain (dB)" value="0" />
</path>
<path name="mic3-only">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="2" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="-1" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="-1" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1" />
<ctl name="MIC2" value="1" />
<ctl name="MIC Record Soft Gain (dB)" value="0" />
</path>
<path name="mic4-only">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="3" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="-1" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="-1" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1" />
<ctl name="MIC3" value="0" />
<ctl name="MIC Record Soft Gain (dB)" value="0" />
</path>
<path name="mic-all">
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="0" value="0" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="1" value="3" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="2" value="2" />
<ctl name="BUILDIN MIC ID CAPTURE LIST" id="3" value="-1" />
<ctl name="MIC0" value="1" />
<ctl name="MIC1" value="1" />
<ctl name="MIC2" value="1" />
<ctl name="MIC3" value="0" />
<ctl name="MIC Record Soft Gain (dB)" value="0" />
</path>
<path name="amp_iv-only">
<ctl name="R ASPTX1 Slot Position" value="2" />
<ctl name="R ASPTX2 Slot Position" value="3" />
<ctl name="R ASPTX3 Slot Position" value="6" />
<ctl name="R ASPTX4 Slot Position" value="7" />
<ctl name="ASPTX1 Slot Position" value="0" />
<ctl name="ASPTX2 Slot Position" value="1" />
<ctl name="ASPTX3 Slot Position" value="4" />
<ctl name="ASPTX4 Slot Position" value="5" />
<ctl name="R ASP TX1 Source" value="VMON" />
<ctl name="R ASP TX2 Source" value="ASPRX1" />
<ctl name="R ASP TX3 Source" value="Zero" />
<ctl name="R ASP TX4 Source" value="Zero" />
<ctl name="ASP TX1 Source" value="VMON" />
<ctl name="ASP TX2 Source" value="ASPRX1" />
<ctl name="ASP TX3 Source" value="Zero" />
<ctl name="ASP TX4 Source" value="Zero" />
<ctl name="NoHost1 TX Mixer TDM_0_TX" value="1" />
</path>
<path name="amp_iv1-only">
<ctl name="R ASPTX1 Slot Position" value="4" />
<ctl name="R ASPTX2 Slot Position" value="5" />
<ctl name="R ASPTX3 Slot Position" value="6" />
<ctl name="R ASPTX4 Slot Position" value="7" />
<ctl name="ASPTX1 Slot Position" value="0" />
<ctl name="ASPTX2 Slot Position" value="1" />
<ctl name="ASPTX3 Slot Position" value="2" />
<ctl name="ASPTX4 Slot Position" value="3" />
<ctl name="R ASP TX1 Source" value="Zero" />
<ctl name="R ASP TX2 Source" value="Zero" />
<ctl name="R ASP TX3 Source" value="Zero" />
<ctl name="R ASP TX4 Source" value="Zero" />
<ctl name="ASP TX1 Source" value="VMON" />
<ctl name="ASP TX2 Source" value="IMON" />
<ctl name="ASP TX3 Source" value="VPMON" />
<ctl name="ASP TX4 Source" value="ASPRX1" />
<ctl name="NoHost1 TX Mixer TDM_0_TX" value="1" />
</path>
<path name="amp_iv2-only">
<ctl name="R ASPTX1 Slot Position" value="0" />
<ctl name="R ASPTX2 Slot Position" value="1" />
<ctl name="R ASPTX3 Slot Position" value="2" />
<ctl name="R ASPTX4 Slot Position" value="3" />
<ctl name="ASPTX1 Slot Position" value="4" />
<ctl name="ASPTX2 Slot Position" value="5" />
<ctl name="ASPTX3 Slot Position" value="6" />
<ctl name="ASPTX4 Slot Position" value="7" />
<ctl name="R ASP TX1 Source" value="VMON" />
<ctl name="R ASP TX2 Source" value="IMON" />
<ctl name="R ASP TX3 Source" value="VPMON" />
<ctl name="R ASP TX4 Source" value="ASPRX1" />
<ctl name="ASP TX1 Source" value="Zero" />
<ctl name="ASP TX2 Source" value="Zero" />
<ctl name="ASP TX3 Source" value="Zero" />
<ctl name="ASP TX4 Source" value="Zero" />
<ctl name="NoHost1 TX Mixer TDM_0_TX" value="1" />
</path>
<path name="us-amp_iv-only">
<ctl name="TDM_0_RX Sample Rate" value="SR_96K" />
<ctl name="TDM_0_TX Sample Rate" value="SR_96K" />
<path name="amp_iv-only" />
</path>
<path name="us-amp_iv1-only">
<ctl name="TDM_0_RX Sample Rate" value="SR_96K" />
<ctl name="TDM_0_TX Sample Rate" value="SR_96K" />
<path name="amp_iv1-only" />
</path>
<path name="us-amp_iv2-only">
<ctl name="TDM_0_RX Sample Rate" value="SR_96K" />
<ctl name="TDM_0_TX Sample Rate" value="SR_96K" />
<path name="amp_iv2-only" />
</path>
<path name="speaker1-status">
<ctl name="Main AMP Enable Switch" value="1" />
</path>
<path name="speaker2-status">
<ctl name="R Main AMP Enable Switch" value="1" />
</path>
<path name="speaker1-gain">
<ctl name="AMP PCM Gain" />
</path>
<path name="speaker2-gain">
<ctl name="R AMP PCM Gain" />
</path>
<path name="usb-playback-gain">
<ctl name="Headset Playback Volume" />
</path>
<path name="mfg-playback speaker">
<ctl name="AoC Speaker Mixer ASP Mode" value="ASP_BYPASS" />
<ctl name="TDM_0_RX Mixer EP3" value="1" />
<ctl name="ASPRX1 Slot Position" value="0" />
<ctl name="R ASPRX1 Slot Position" value="1" />
<ctl name="SINK_IDS" id="0" value="0" />
<ctl name="SINK_IDS" id="1" value="-1" />
</path>
<path name="mfg-playback headphones">
<ctl name="I2S_0_RX Chan" value="Two" />
<ctl name="I2S_0_RX Format" value="S32_LE" />
<ctl name="I2S_0_RX Mixer EP3" value="1" />
<ctl name="SINK_IDS" id="0" value="1" />
<ctl name="SINK_IDS" id="1" value="-1" />
</path>
<path name="mfg-playback usb-headphones">
<ctl name="USB Dev ID v2" value="2" />
<ctl name="USB Playback EP ID v2" value="1" />
<ctl name="USB Playback FORMAT v2" value="6" />
<ctl name="USB Playback SR v2" value="48000" />
<ctl name="USB Playback CH v2" value="2" />
<ctl name="USB Playback BW v2" value="16" />
<ctl name="USB Config To AoC v2" value="1" />
<ctl name="USB_RX Mixer EP3" value="1" />
</path>
<path name="us-mfg-playback speaker">
<ctl name="TDM_0_RX Sample Rate" value="SR_96K" />
<ctl name="TDM_0_TX Sample Rate" value="SR_96K" />
<ctl name="TDM_0_RX Mixer US" value="1" />
</path>
<path name="speaker1-only">
<ctl name="Main AMP Enable Switch" value="1" />
<path name="mfg-playback speaker" />
<ctl name="AMP PCM Gain" value="17" />
<ctl name="PCM Source" value="ASP" />
</path>
<path name="speaker2-only">
<ctl name="R Main AMP Enable Switch" value="1" />
<path name="mfg-playback speaker" />
<ctl name="R AMP PCM Gain" value="17" />
<ctl name="R PCM Source" value="ASP" />
</path>
<path name="us-speaker1-only">
<path name="us-mfg-playback speaker" />
<ctl name="PCM Source" value="ASP" />
<ctl name="Main AMP Enable Switch" value="1" />
</path>
<path name="us-speaker2-only">
<path name="us-mfg-playback speaker" />
<ctl name="R PCM Source" value="ASP" />
<ctl name="R Main AMP Enable Switch" value="1" />
</path>
<path name="headphones">
<ctl name="DAC1 MIXL DAC1 Switch" value="1" />
<ctl name="DAC1 MIXR DAC1 Switch" value="1" />
<ctl name="Stereo1 DAC MIXL DAC L1 Switch" value="1" />
<ctl name="Stereo1 DAC MIXR DAC R1 Switch" value="1" />
<ctl name="DAC L1 Source" value="Stereo1 DAC Mixer" />
<ctl name="DAC R1 Source" value="Stereo1 DAC Mixer" />
<ctl name="HPOL Playback Switch" value="1" />
<ctl name="HPOR Playback Switch" value="1" />
<path name="mfg-playback headphones" />
</path>
<path name="speaker-all">
<ctl name="Main AMP Enable Switch" value="1" />
<ctl name="PCM Source" value="ASP" />
<ctl name="R Main AMP Enable Switch" value="1" />
<ctl name="R PCM Source" value="ASP" />
<path name="mfg-playback speaker" />
</path>
<path name="us-speaker-all">
<path name="us-mfg-playback speaker" />
<ctl name="PCM Source" value="ASP" />
<ctl name="Main AMP Enable Switch" value="1" />
<ctl name="R PCM Source" value="ASP" />
<ctl name="R Main AMP Enable Switch" value="1" />
</path>
<path name="loopback-mic-speaker">
<ctl name="EP1 TX Mixer TDM_0_TX" value="1" />
<ctl name="SINK_IDS" id="0" value="0" />
<ctl name="SINK_IDS" id="1" value="-1" />
<path name="mfg-playback" />
</path>
<path name="loopback-mic-headphones">
<ctl name="EP1 TX Mixer TDM_0_TX" value="1" />
<ctl name="SINK_IDS" id="0" value="1" />
<ctl name="SINK_IDS" id="1" value="-1" />
<path name="mfg-playback" />
</path>
<path name="loopback-mic-usb-headphones">
<ctl name="MIC HW Gain At Lower Power Mode (cB)" value="-160" />
<ctl name="MIC HW Gain At High Power Mode (cB)" value="0" />
<ctl name="TDM_0_TX Format" value="S32_LE" />
<ctl name="TDM_0_TX Chan" value="One" />
<ctl name="EP1 TX Mixer TDM_0_TX" value="1" />
</path>
<path name="loopback-usb-mic-speaker">
<ctl name="Audio Capture Mic Source" value='USB_MIC' />
<ctl name="USB Capture FORMAT v2" value="1" />
<ctl name="MIC Record Soft Gain (dB)" value="0" />
</path>
<path name="loopback-usb-mic-usb-headphone">
<ctl name="Audio Capture Mic Source" value='USB_MIC' />
<ctl name="USB Capture FORMAT v2" value="1" />
<ctl name="MIC Record Soft Gain (dB)" value="0" />
</path>
<pcm_id name="loopback-mic1" value="EP1 capture (*)"/>
<pcm_id name="loopback-mic2" value="EP1 capture (*)"/>
<pcm_id name="loopback-mic3" value="EP1 capture (*)"/>
<pcm_id name="loopback-mic4" value="EP1 capture (*)"/>
<pcm_id name="loopback-speaker1" value="EP3 playback (*)"/>
<pcm_id name="loopback-speaker2" value="EP3 playback (*)"/>
<pcm_id name="loopback-speaker3" value="EP3 playback (*)"/>
<pcm_id name="loopback-headphones" value="EP3 playback (*)"/>
<pcm_id name="loopback-usb-headphones" value="EP3 playback (*)"/>
<pcm_id name="loopback-usb-mic" value="EP1 capture (*)"/>
<pcm_id name="loopback-amp_iv" value="nohost1 capture (*)"/>
</mixer>

View File

@@ -1,33 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Copyright (c) 2020, The Linux Foundation. All rights reserved. -->
<!-- -->
<!-- Redistribution and use in source and binary forms, with or without -->
<!-- modification, are permitted provided that the following conditions are -->
<!-- met: -->
<!-- * Redistributions of source code must retain the above copyright -->
<!-- notice, this list of conditions and the following disclaimer. -->
<!-- * Redistributions in binary form must reproduce the above -->
<!-- copyright notice, this list of conditions and the following -->
<!-- disclaimer in the documentation and/or other materials provided -->
<!-- with the distribution. -->
<!-- * Neither the name of The Linux Foundation nor the names of its -->
<!-- contributors may be used to endorse or promote products derived -->
<!-- from this software without specific prior written permission. -->
<!-- -->
<!-- THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED -->
<!-- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -->
<!-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT -->
<!-- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS -->
<!-- BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -->
<!-- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -->
<!-- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR -->
<!-- BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -->
<!-- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN -->
<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -->
<sound_trigger_hal_configuration>
<supported_model>
<model name="CLIENT_HOTWORD" uuid="7038ddc8-30f2-11e6-b0ac-40a8f03d3f15" model_type="keyphrase" bargein="true"/>
<model name="CLIENT_AMBIENT_MUSIC" uuid="9f6ad62a-1f0b-11e7-87c5-40a8f03d3f15" model_type="generic" bargein="false"/>
<model name="CLIENT_AMBIENT_MUSIC_BREAK" uuid="12caddb1-acdb-4dce-8cb0-2e95a2313aee" model_type="generic" bargein="false"/>
</supported_model>
</sound_trigger_hal_configuration>

View File

@@ -1,307 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Copyright (c) 2018-2020, The Linux Foundation. All rights reserved. -->
<!-- -->
<!-- Redistribution and use in source and binary forms, with or without -->
<!-- modification, are permitted provided that the following conditions are -->
<!-- met: -->
<!-- * Redistributions of source code must retain the above copyright -->
<!-- notice, this list of conditions and the following disclaimer. -->
<!-- * Redistributions in binary form must reproduce the above -->
<!-- copyright notice, this list of conditions and the following -->
<!-- disclaimer in the documentation and/or other materials provided -->
<!-- with the distribution. -->
<!-- * Neither the name of The Linux Foundation nor the names of its -->
<!-- contributors may be used to endorse or promote products derived -->
<!-- from this software without specific prior written permission. -->
<!-- -->
<!-- THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED -->
<!-- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -->
<!-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT -->
<!-- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS -->
<!-- BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -->
<!-- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -->
<!-- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR -->
<!-- BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -->
<!-- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN -->
<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -->
<mixer>
<!-- Initial Values -->
<!-- Preload Stage -->
<ctl name="Main AMP Enable Switch" value="0" />
<ctl name="DSP1 Preload Switch" value="0" />
<ctl name="R Main AMP Enable Switch" value="0" />
<ctl name="R DSP1 Preload Switch" value="0" />
<!-- Clock-trigger Stage -->
<ctl name="SINK_IDS" id="0" value="-1"/>
<ctl name="SINK_IDS" id="1" value="-1"/>
<ctl name="PCM Playback Volume" value="10"/>
<ctl name="TDM_0_RX Mixer EP6" value="0"/>
<!-- Preparation Stage -->
<path name="crus-switch-fw-prepare">
<ctl name="DRE DRE Switch" value="1" />
<ctl name="VBSTMON Output Switch" value="1" />
<ctl name="DSP Booted" value="0" />
<ctl name="DSP1 Preload Switch" value="0" />
<ctl name="R DRE DRE Switch" value="1" />
<ctl name="R VBSTMON Output Switch" value="1" />
<ctl name="R DSP Booted" value="0" />
<ctl name="R DSP1 Preload Switch" value="0" />
</path>
<!-- Preload Stage -->
<path name="crus-fw-preload">
<ctl name="DSP1 Preload Switch" value="1" />
<ctl name="R DSP1 Preload Switch" value="1" />
</path>
<!-- Firmware-switching Stage -->
<path name="crus-switch-fw-Calibration">
<ctl name="AMP PCM Gain" value="17" />
<ctl name="Digital PCM Volume" value="817" />
<ctl name="PCM Source" value="DSP" />
<ctl name="DSP1 Firmware" value="Calibration" />
<ctl name="R AMP PCM Gain" value="17" />
<ctl name="R Digital PCM Volume" value="817" />
<ctl name="R PCM Source" value="DSP" />
<ctl name="R DSP1 Firmware" value="Calibration" />
</path>
<path name="crus-switch-fw-Diagnostic">
<ctl name="AMP PCM Gain" value="17" />
<ctl name="Digital PCM Volume" value="817" />
<ctl name="PCM Source" value="DSP" />
<ctl name="DSP1 Firmware" value="Diagnostic" />
<ctl name="R AMP PCM Gain" value="17" />
<ctl name="R Digital PCM Volume" value="817" />
<ctl name="R PCM Source" value="DSP" />
<ctl name="R DSP1 Firmware" value="Diagnostic" />
</path>
<path name="crus-switch-fw-Protection">
<ctl name="PCM Source" value="DSP" />
<ctl name="DSP1 Firmware" value="Protection" />
<ctl name="R PCM Source" value="DSP" />
<ctl name="R DSP1 Firmware" value="Protection" />
</path>
<!-- DSP-initialization Stage -->
<path name="crus-dsp-pre-calibration-amp1">
<ctl name="Main AMP Enable Switch" value="1" />
</path>
<path name="crus-dsp-pre-calibration-amp2">
<ctl name="R Main AMP Enable Switch" value="1" />
</path>
<path name="crus-dsp-pre-calibration">
<path name="crus-dsp-pre-calibration-amp1" />
<path name="crus-dsp-pre-calibration-amp2" />
</path>
<path name="crus-dsp-pre-diagnostic-amp1">
<ctl name="Main AMP Enable Switch" value="1" />
</path>
<path name="crus-dsp-pre-diagnostic-amp2">
<ctl name="R Main AMP Enable Switch" value="1" />
</path>
<path name="crus-dsp-pre-diagnostic">
<path name="crus-dsp-pre-diagnostic-amp1" />
<path name="crus-dsp-pre-diagnostic-amp2" />
</path>
<path name="crus-dsp-pre-protection">
<ctl name="Main AMP Enable Switch" value="1" />
<ctl name="R Main AMP Enable Switch" value="1" />
</path>
<!-- Clock-trigger Stage -->
<path name="platform-controls">
<ctl name="PCM Playback Volume" value="1000"/>
<ctl name="SINK_IDS" id="0" value="0"/>
<ctl name="SINK_IDS" id="1" value="-1"/>
<ctl name="TDM_0_RX Mixer EP6" value="1"/>
</path>
<!-- Post loaded firmware -->
<path name="crus-dsp-post-loading-fw">
<ctl name="Main AMP Enable Switch" value="0" />
<ctl name="R Main AMP Enable Switch" value="0" />
</path>
<!-- Value & Information Fetch Stage -->
<path name="platform-values">
<ctl name="TDM_0_RX Format" />
<ctl name="TDM_0_RX Chan" />
<ctl name="TDM_0_RX Sample Rate" />
<ctl name="PCM Playback Volume" />
<ctl name="TDM_0_RX Mixer EP6" />
</path>
<path name="cs35l41-values">
<ctl name="DRE DRE Switch" />
<ctl name="R DRE DRE Switch" />
<ctl name="VBSTMON Output Switch" />
<ctl name="R VBSTMON Output Switch" />
<ctl name="AMP PCM Gain" />
<ctl name="R AMP PCM Gain" />
<ctl name="Digital PCM Volume" />
<ctl name="R Digital PCM Volume" />
<ctl name="PCM Source" />
<ctl name="R PCM Source" />
<ctl name="DSP Booted" />
<ctl name="R DSP Booted" />
<ctl name="Main AMP Enable Switch" />
<ctl name="R Main AMP Enable Switch" />
<ctl name="DSP1 Preload Switch" />
<ctl name="R DSP1 Preload Switch" />
<ctl name="DSP1 Firmware" />
<ctl name="R DSP1 Firmware" />
</path>
<!-- Note that the order of controls does matter because
it should be matched to the structure defined in
sp_cal_common.h -->
<!--
struct calibration_data {
unsigned int cal_r;
unsigned int cal_status;
unsigned int cal_checksum;
unsigned int cal_ambient;
unsigned int amp_pcm_gain;
unsigned int digital_pcm_gain;
};
-->
<path name="cs35l41-dsp-amp1-calibration-values">
<ctl name="DSP1 Calibration cd CAL_R" />
<ctl name="DSP1 Calibration cd CAL_STATUS" />
<ctl name="DSP1 Calibration cd CAL_CHECKSUM" />
<ctl name="DSP1 Calibration cd CAL_AMBIENT" />
<ctl name="AMP PCM Gain" />
<ctl name="Digital PCM Volume" />
<!-- Only for debug print -->
<ctl name="DSP1 Calibration cd CAL_SET_STATUS" />
</path>
<path name="cs35l41-dsp-amp2-calibration-values">
<ctl name="R DSP1 Calibration cd CAL_R" />
<ctl name="R DSP1 Calibration cd CAL_STATUS" />
<ctl name="R DSP1 Calibration cd CAL_CHECKSUM" />
<ctl name="R DSP1 Calibration cd CAL_AMBIENT" />
<ctl name="R AMP PCM Gain" />
<ctl name="R Digital PCM Volume" />
<!-- Only for debug print -->
<ctl name="R DSP1 Calibration cd CAL_SET_STATUS" />
</path>
<!--
struct diagnostic_data {
struct calibration_data calibration_data;
unsigned int z_low_diff;
unsigned int diag_f0;
unsigned int diag_f0_status;
};
-->
<path name="cs35l41-dsp-amp1-diagnostic-values">
<!-- struct calibration_data START -->
<ctl name="DSP1 Diagnostic cd CAL_R" />
<ctl name="DSP1 Diagnostic cd CAL_STATUS" />
<ctl name="DSP1 Diagnostic cd CAL_CHECKSUM" />
<ctl name="DSP1 Diagnostic cd CAL_AMBIENT" />
<ctl name="AMP PCM Gain" />
<ctl name="Digital PCM Volume" />
<!-- struct calibration_data END -->
<ctl name="DSP1 Diagnostic cd DIAG_Z_LOW_DIFF" />
<ctl name="DSP1 Diagnostic cd DIAG_F0" />
<ctl name="DSP1 Diagnostic cd DIAG_F0_STATUS" />
<!-- Only for debug print -->
<ctl name="DSP1 Diagnostic cd CAL_SET_STATUS" />
</path>
<path name="cs35l41-dsp-amp2-diagnostic-values">
<!-- struct calibration_data START -->
<ctl name="R DSP1 Diagnostic cd CAL_R" />
<ctl name="R DSP1 Diagnostic cd CAL_STATUS" />
<ctl name="R DSP1 Diagnostic cd CAL_CHECKSUM" />
<ctl name="R DSP1 Diagnostic cd CAL_AMBIENT" />
<ctl name="R AMP PCM Gain" />
<ctl name="R Digital PCM Volume" />
<!-- struct calibration_data END -->
<ctl name="R DSP1 Diagnostic cd DIAG_Z_LOW_DIFF" />
<ctl name="R DSP1 Diagnostic cd DIAG_F0" />
<ctl name="R DSP1 Diagnostic cd DIAG_F0_STATUS" />
<!-- Only for debug print -->
<ctl name="R DSP1 Diagnostic cd CAL_SET_STATUS" />
</path>
<path name="cs35l41-dsp-amp1-protection-values">
<!-- struct calibration_data START -->
<ctl name="DSP1 Protection cd CAL_R" />
<ctl name="DSP1 Protection cd CAL_STATUS" />
<ctl name="DSP1 Protection cd CAL_CHECKSUM" />
<ctl name="DSP1 Protection cd CAL_AMBIENT" />
<!-- These controls are unrelated so we can simply
skip them
<ctl name="AMP PCM Gain" />
<ctl name="Digital PCM Volume" />
-->
<!-- struct calibration_data END -->
</path>
<path name="cs35l41-dsp-amp2-protection-values">
<!-- struct calibration_data START -->
<ctl name="R DSP1 Protection cd CAL_R" />
<ctl name="R DSP1 Protection cd CAL_STATUS" />
<ctl name="R DSP1 Protection cd CAL_CHECKSUM" />
<ctl name="R DSP1 Protection cd CAL_AMBIENT" />
<!-- These controls are unrelated so we can simply
skip them
<ctl name="R AMP PCM Gain" />
<ctl name="R Digital PCM Volume" />
-->
<!-- struct calibration_data END -->
</path>
<path name="cs35l41-dsp-amp1-calibration-completion">
<ctl name="DSP1 Calibration cd CAL_STATUS" />
</path>
<path name="cs35l41-dsp-amp2-calibration-completion">
<ctl name="R DSP1 Calibration cd CAL_STATUS" />
</path>
<path name="cs35l41-dsp-amp1-protection-completion">
<ctl name="DSP1 Protection cd CAL_SET_STATUS" />
</path>
<path name="cs35l41-dsp-amp2-protection-completion">
<ctl name="R DSP1 Protection cd CAL_SET_STATUS" />
</path>
<path name="cs35l41-dsp-amp1-diagnostic-completion">
<ctl name="DSP1 Diagnostic cd CAL_STATUS" />
<ctl name="DSP1 Diagnostic cd DIAG_F0_STATUS" />
</path>
<path name="cs35l41-dsp-amp2-diagnostic-completion">
<ctl name="R DSP1 Diagnostic cd CAL_STATUS" />
<ctl name="R DSP1 Diagnostic cd DIAG_F0_STATUS" />
</path>
<path name="cs35l41-dsp-amp1-enable-status">
<ctl name="Main AMP Enable Switch" />
</path>
<path name="cs35l41-dsp-amp2-enable-status">
<ctl name="R Main AMP Enable Switch" />
</path>
</mixer>

Some files were not shown because too many files have changed in this diff Show More