xpeng: Convert tree from berlna

The partition reserved sizes were taking from stock ROM

IE, blockdev --getsize64 /dev/block/mapper/system_a

Also add TARGET_IS_VAB cflag as ro.virtual_ab.enabled is true on stock
so that our commonized tree can enable VAB-specific changes.

Change-Id: I922f61e5a0380d16eba5967f6c77346437290eb6
This commit is contained in:
Marc Bourgoin 2023-01-22 19:41:19 -07:00
parent 32f768abbc
commit 72a7ab0b82
73 changed files with 2018 additions and 4592 deletions

View file

@ -1,21 +1,11 @@
# #
# Copyright (C) 2022 The LineageOS Project # Copyright (C) 2022-2023 The LineageOS Project
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # SPDX-License-Identifier: Apache-2.0
# 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.
# #
LOCAL_PATH := $(call my-dir) LOCAL_PATH := $(call my-dir)
ifeq ($(TARGET_DEVICE),berlna) ifeq ($(TARGET_DEVICE),xpeng)
include $(call all-makefiles-under,$(LOCAL_PATH)) include $(call all-makefiles-under,$(LOCAL_PATH))
endif endif

View file

@ -1,28 +1,15 @@
# #
# Copyright (C) 2017-2021 The LineageOS Project # Copyright (C) 2017-2023 The LineageOS Project
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # SPDX-License-Identifier: Apache-2.0
# 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.
# #
INSTALLED_KERNEL_TARGET := $(PRODUCT_OUT)/kernel INSTALLED_KERNEL_TARGET := $(PRODUCT_OUT)/kernel
recovery_uncompressed_ramdisk := $(PRODUCT_OUT)/ramdisk-recovery.cpio recovery_uncompressed_ramdisk := $(PRODUCT_OUT)/ramdisk-recovery.cpio
RECOVERY_FIRMWARE_TARGETS := \ RECOVERY_FIRMWARE_TARGETS := \
aw8695_haptic.bin \ mp_novatek_ts-NT36675-21101302-6044-xpeng.bin \
aw8695_rtp.bin \ novatek_ts-NT36675-21101302-6044-xpeng.bin
mp-novatek_ts-NT36675-21061805-603a-berlna.bin \
novatek_ts-NT36675-21042101-603a-berlna-evt.bin \
novatek_ts-NT36675-21061805-603a-berlna.bin
INSTALLED_RECOVERY_FIRMWARE_TARGETS := $(RECOVERY_FIRMWARE_TARGETS:%=$(TARGET_RECOVERY_ROOT_OUT)/vendor/firmware/%) INSTALLED_RECOVERY_FIRMWARE_TARGETS := $(RECOVERY_FIRMWARE_TARGETS:%=$(TARGET_RECOVERY_ROOT_OUT)/vendor/firmware/%)
$(INSTALLED_RECOVERY_FIRMWARE_TARGETS): $(INSTALLED_KERNEL_TARGET) $(INSTALLED_RECOVERY_FIRMWARE_TARGETS): $(INSTALLED_KERNEL_TARGET)

View file

@ -1,23 +1,13 @@
# #
# Copyright (C) 2022 The LineageOS Project # Copyright (C) 2022-2023 The LineageOS Project
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # SPDX-License-Identifier: Apache-2.0
# 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.
# #
PRODUCT_MAKEFILES := \ PRODUCT_MAKEFILES := \
$(LOCAL_DIR)/lineage_berlna.mk $(LOCAL_DIR)/lineage_xpeng.mk
COMMON_LUNCH_CHOICES := \ COMMON_LUNCH_CHOICES := \
lineage_berlna-user \ lineage_xpeng-user \
lineage_berlna-userdebug \ lineage_xpeng-userdebug \
lineage_berlna-eng lineage_xpeng-eng

View file

@ -1,33 +1,23 @@
# #
# Copyright (C) 2022 The LineageOS Project # Copyright (C) 2022-2023 The LineageOS Project
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # SPDX-License-Identifier: Apache-2.0
# 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.
# #
DEVICE_PATH := device/motorola/berlna DEVICE_PATH := device/motorola/xpeng
# Inherit from motorola sm7325-common # Inherit from motorola sm7325-common
include device/motorola/sm7325-common/BoardConfigCommon.mk include device/motorola/sm7325-common/BoardConfigCommon.mk
# Bootloader # Bootloader
TARGET_BOOTLOADER_BOARD_NAME := berlna TARGET_BOOTLOADER_BOARD_NAME := xpeng
# HIDL # HIDL
DEVICE_MANIFEST_YUPIK_FILES += $(DEVICE_PATH)/manifest_berlna.xml DEVICE_MANIFEST_FILE += $(DEVICE_PATH)/manifest_xpeng.xml
# Kernel # Kernel
BOARD_KERNEL_CMDLINE += androidboot.hab.product=berlna BOARD_KERNEL_CMDLINE += androidboot.hab.product=xpeng
TARGET_KERNEL_CONFIG += vendor/lineage_berlna.config TARGET_KERNEL_CONFIG += vendor/lineage_xpeng.config
# Kernel Modules # Kernel Modules
BOARD_VENDOR_KERNEL_MODULES_LOAD := $(strip $(shell cat $(DEVICE_PATH)/modules.load)) BOARD_VENDOR_KERNEL_MODULES_LOAD := $(strip $(shell cat $(DEVICE_PATH)/modules.load))
@ -35,19 +25,15 @@ BOARD_VENDOR_KERNEL_MODULES_BLOCKLIST_FILE := $(DEVICE_PATH)/modules.blocklist
BOARD_VENDOR_RAMDISK_RECOVERY_KERNEL_MODULES_LOAD := $(strip $(shell cat $(DEVICE_PATH)/modules.load.recovery)) BOARD_VENDOR_RAMDISK_RECOVERY_KERNEL_MODULES_LOAD := $(strip $(shell cat $(DEVICE_PATH)/modules.load.recovery))
BOOT_KERNEL_MODULES := $(BOARD_VENDOR_RAMDISK_RECOVERY_KERNEL_MODULES_LOAD) BOOT_KERNEL_MODULES := $(BOARD_VENDOR_RAMDISK_RECOVERY_KERNEL_MODULES_LOAD)
# Kernel modules - WLAN
TARGET_MODULE_ALIASES += \
wlan.ko:qca_cld3_qca6750.ko
# Partitions # Partitions
BOARD_USERDATAIMAGE_PARTITION_SIZE := 237371371520 BOARD_USERDATAIMAGE_PARTITION_SIZE := 116674899968
ifneq ($(WITH_GMS),true) ifneq ($(WITH_GMS),true)
BOARD_PRODUCTIMAGE_PARTITION_RESERVED_SIZE := 1073741824 BOARD_PRODUCTIMAGE_PARTITION_RESERVED_SIZE := 3195027456
BOARD_SYSTEMIMAGE_PARTITION_RESERVED_SIZE := 898367488 BOARD_SYSTEMIMAGE_PARTITION_RESERVED_SIZE := 872398848
BOARD_SYSTEM_EXTIMAGE_PARTITION_RESERVED_SIZE := 1073741824 BOARD_SYSTEM_EXTIMAGE_PARTITION_RESERVED_SIZE := 914399232
endif endif
BOARD_MOT_DP_GROUP_SIZE := 7916748800 BOARD_MOT_DP_GROUP_SIZE := 8585740288 # ( BOARD_SUPER_PARTITION_SIZE - 4MB )
BOARD_SUPER_PARTITION_SIZE := 15854469120 BOARD_SUPER_PARTITION_SIZE := 8589934592
# Properties # Properties
TARGET_SYSTEM_PROP += $(DEVICE_PATH)/system.prop TARGET_SYSTEM_PROP += $(DEVICE_PATH)/system.prop
@ -57,10 +43,10 @@ TARGET_VENDOR_PROP += $(DEVICE_PATH)/vendor.prop
TARGET_RECOVERY_UI_MARGIN_HEIGHT := 90 TARGET_RECOVERY_UI_MARGIN_HEIGHT := 90
# Security # Security
VENDOR_SECURITY_PATCH := 2023-01-01 VENDOR_SECURITY_PATCH := 2022-11-01
# SELinux # SELinux
BOARD_SEPOLICY_DIRS += $(DEVICE_PATH)/sepolicy/vendor BOARD_SEPOLICY_DIRS += $(DEVICE_PATH)/sepolicy/vendor
# inherit from the proprietary version # inherit from the proprietary version
include vendor/motorola/berlna/BoardConfigVendor.mk include vendor/motorola/xpeng/BoardConfigVendor.mk

View file

@ -1,19 +1,30 @@
# Device configuration for Motorola Edge (2021) # Device configuration for Motorola moto g200 5G / Edge S30
The moto g200 5G / Edge S30 (codenamed _"xpeng"_) are high-end smartphones from Motorola.
It was announced on 12 December 2021. Release date was 21 December 2021.
## Device specifications ## Device specifications
Basic | Spec Sheet Basic | Spec Sheet
-------:|:------------------------- -------:|:-------------------------
CPU | Octa-core (1x2.4 GHz Cortex-A78 & 3x2.2 GHz Cortex-A78 & 4x1.9 GHz Cortex-A55) CPU | Octa-core (1x2.99 GHz Cortex-X1 & 3x2.42 GHz Cortex-A78 & 4x1.80 GHz Cortex-A55)
CHIPSET | Qualcomm SM7325 Snapdragon 778G CHIPSET | Qualcomm SM8350 Snapdragon 888+ 5G (5 nm)
GPU | Adreno 642L GPU | Adreno 660
Memory | 8 / 12GB
Shipped Android Version | 11 Shipped Android Version | 11
Memory | 8GB Storage | 256/512
Storage | 256GB
Battery | 5000 mAh Battery | 5000 mAh
Dimensions | 169 x 75.6 x 9 mm Dimensions | 168.1 x 75.5 x 8.9 mm
Display | 1080 x 2460 pixels, 6.8" TFT IPS LCD, 144Hz, HDR10 Display | 1080 x 2460 pixels, 6.8" LTPS IPS LCD, HDR10
Rear Camera | 108 MP (f/1.9) + 8 MP (f/2.2) + 2 MP (f/2.4) Rear Camera 1 | 108 MP, f/1.9, (wide), 1/1.52", 0.7µm, PDAF
Front Camera | 32 MP (f/2.3) Rear Camera 2 | 13 MP, f/2.2, 119˚ (ultrawide), 1.12µm, AF
Rear Camera 3 | 2 MP, f/2.4, (depth)
Front Camera | 16 MP, f/2.2, (wide), 1.00µm
Extras | NFC (on g200), Bluetooth 5.2 A2DP LE, UDFPS, USB Type-C 2.0, Fast charging 33W
Ingress Protection | IP52
Touch Sampling Rate | 428 Hz (on g200) or 576Hz (on S30)
![Device Picture](https://fdn2.gsmarena.com/vv/pics/motorola/motorola-edge-2021-00.jpg) ## Device picture
![Device Picture](https://i.imgur.com/04lu80E.png)

View file

@ -10,8 +10,6 @@
<library name="dynamics_processing" path="libdynproc.so"/> <library name="dynamics_processing" path="libdynproc.so"/>
<library name="loudness_enhancer" path="libldnhncr.so"/> <library name="loudness_enhancer" path="libldnhncr.so"/>
<library name="audio_pre_processing" path="libqcomvoiceprocessing.so"/> <library name="audio_pre_processing" path="libqcomvoiceprocessing.so"/>
<library name="maxxaudio3" path="libmaxxeffect-cembedded.so"/>
<library name="bc360" path="libbc360.so"/>
</libraries> </libraries>
<effects> <effects>
<effect name="bassboost" library="bundle" uuid="8631f300-72e2-11df-b57e-0002a5d5c51b"/> <effect name="bassboost" library="bundle" uuid="8631f300-72e2-11df-b57e-0002a5d5c51b"/>
@ -29,8 +27,6 @@
<effect name="loudness_enhancer" library="loudness_enhancer" uuid="fa415329-2034-4bea-b5dc-5b381c8d1e2c"/> <effect name="loudness_enhancer" library="loudness_enhancer" uuid="fa415329-2034-4bea-b5dc-5b381c8d1e2c"/>
<effect name="aec" library="audio_pre_processing" uuid="0f8d0d2a-59e5-45fe-b6e4-248c8a799109"/> <effect name="aec" library="audio_pre_processing" uuid="0f8d0d2a-59e5-45fe-b6e4-248c8a799109"/>
<effect name="ns" library="audio_pre_processing" uuid="1d97bb0b-9e2f-4403-9ae3-58c2554306f8"/> <effect name="ns" library="audio_pre_processing" uuid="1d97bb0b-9e2f-4403-9ae3-58c2554306f8"/>
<effect library="maxxaudio3" name="maxxaudio3" uuid="ae12da60-99ac-11df-b456-0002a5d5c51b"/>
<effect name="boomcloud" library="bc360" uuid="5ec83eb9-9403-43ae-924f-c124589c8bd4"/>
</effects> </effects>
<preprocess> <preprocess>
<stream type="voice_communication"> <stream type="voice_communication">

View file

@ -44,6 +44,10 @@
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT" <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="44100,48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/> samplingRates="44100,48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort> </mixPort>
<mixPort name="haptics output" role="source">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO_HAPTIC_A"/>
</mixPort>
<mixPort name="deep_buffer" role="source" <mixPort name="deep_buffer" role="source"
flags="AUDIO_OUTPUT_FLAG_DEEP_BUFFER"> flags="AUDIO_OUTPUT_FLAG_DEEP_BUFFER">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT" <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
@ -179,7 +183,7 @@
<route type="mix" sink="Earpiece" <route type="mix" sink="Earpiece"
sources="primary output,deep_buffer,direct_pcm,compressed_offload,voip_rx"/> sources="primary output,deep_buffer,direct_pcm,compressed_offload,voip_rx"/>
<route type="mix" sink="Speaker" <route type="mix" sink="Speaker"
sources="primary output,deep_buffer,direct_pcm,compressed_offload,voip_rx"/> sources="primary output,haptics output,deep_buffer,direct_pcm,compressed_offload,voip_rx"/>
<route type="mix" sink="Wired Headset" <route type="mix" sink="Wired Headset"
sources="primary output,deep_buffer,direct_pcm,compressed_offload,voip_rx"/> sources="primary output,deep_buffer,direct_pcm,compressed_offload,voip_rx"/>
<route type="mix" sink="Wired Headphones" <route type="mix" sink="Wired Headphones"

View file

@ -11,9 +11,9 @@ volume index from 0 to 100.
<volume stream="AUDIO_STREAM_VOICE_CALL" deviceCategory="DEVICE_CATEGORY_HEADSET" <volume stream="AUDIO_STREAM_VOICE_CALL" deviceCategory="DEVICE_CATEGORY_HEADSET"
ref="DEFAULT_VOICE_VOLUME_CURVE"/> ref="DEFAULT_VOICE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_VOICE_CALL" deviceCategory="DEVICE_CATEGORY_SPEAKER"> <volume stream="AUDIO_STREAM_VOICE_CALL" deviceCategory="DEVICE_CATEGORY_SPEAKER">
<point>0,-3000</point> <point>0,-3300</point>
<point>33,-2300</point> <point>33,-2100</point>
<point>66,-1600</point> <point>66,-1000</point>
<point>100,0</point> <point>100,0</point>
</volume> </volume>
<volume stream="AUDIO_STREAM_VOICE_CALL" deviceCategory="DEVICE_CATEGORY_EARPIECE" <volume stream="AUDIO_STREAM_VOICE_CALL" deviceCategory="DEVICE_CATEGORY_EARPIECE"
@ -40,12 +40,8 @@ volume index from 0 to 100.
ref="DEFAULT_DEVICE_CATEGORY_EARPIECE_VOLUME_CURVE"/> ref="DEFAULT_DEVICE_CATEGORY_EARPIECE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_RING" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA" <volume stream="AUDIO_STREAM_RING" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
ref="SONIFICATION_CATEGORY_EXT_MEDIA_VOLUME_CURVE"/> ref="SONIFICATION_CATEGORY_EXT_MEDIA_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_MUSIC" deviceCategory="DEVICE_CATEGORY_HEADSET"> <volume stream="AUDIO_STREAM_MUSIC" deviceCategory="DEVICE_CATEGORY_HEADSET"
<point>1,-5800</point> ref="DEFAULT_MEDIA_VOLUME_CURVE"/>
<point>34,-3200</point>
<point>67,-1600</point>
<point>100,0</point>
</volume>
<volume stream="AUDIO_STREAM_MUSIC" deviceCategory="DEVICE_CATEGORY_SPEAKER" <volume stream="AUDIO_STREAM_MUSIC" deviceCategory="DEVICE_CATEGORY_SPEAKER"
ref="DEFAULT_DEVICE_CATEGORY_SPEAKER_VOLUME_CURVE"/> ref="DEFAULT_DEVICE_CATEGORY_SPEAKER_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_MUSIC" deviceCategory="DEVICE_CATEGORY_EARPIECE" <volume stream="AUDIO_STREAM_MUSIC" deviceCategory="DEVICE_CATEGORY_EARPIECE"
@ -62,8 +58,12 @@ volume index from 0 to 100.
ref="SONIFICATION_CATEGORY_EXT_MEDIA_VOLUME_CURVE"/> ref="SONIFICATION_CATEGORY_EXT_MEDIA_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_NOTIFICATION" deviceCategory="DEVICE_CATEGORY_HEADSET" <volume stream="AUDIO_STREAM_NOTIFICATION" deviceCategory="DEVICE_CATEGORY_HEADSET"
ref="DEFAULT_DEVICE_CATEGORY_HEADSET_VOLUME_CURVE"/> ref="DEFAULT_DEVICE_CATEGORY_HEADSET_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_NOTIFICATION" deviceCategory="DEVICE_CATEGORY_SPEAKER" <volume stream="AUDIO_STREAM_NOTIFICATION" deviceCategory="DEVICE_CATEGORY_SPEAKER">
ref="NOTIFICATION_CATEGORY_SPEAKER_VOLUME_CURVE"/> <point>1,-3500</point>
<point>33,-2100</point>
<point>66,-1300</point>
<point>100,-500</point>
</volume>
<volume stream="AUDIO_STREAM_NOTIFICATION" deviceCategory="DEVICE_CATEGORY_EARPIECE" <volume stream="AUDIO_STREAM_NOTIFICATION" deviceCategory="DEVICE_CATEGORY_EARPIECE"
ref="DEFAULT_DEVICE_CATEGORY_EARPIECE_VOLUME_CURVE"/> ref="DEFAULT_DEVICE_CATEGORY_EARPIECE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_NOTIFICATION" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA" <volume stream="AUDIO_STREAM_NOTIFICATION" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"

View file

@ -41,9 +41,9 @@
</reference> </reference>
<reference name="DEFAULT_MEDIA_VOLUME_CURVE"> <reference name="DEFAULT_MEDIA_VOLUME_CURVE">
<!-- Default Media reference Volume Curve --> <!-- Default Media reference Volume Curve -->
<point>1,-4800</point> <point>1,-5400</point>
<point>34,-3200</point> <point>34,-3600</point>
<point>67,-1600</point> <point>67,-1800</point>
<point>100,0</point> <point>100,0</point>
</reference> </reference>
<reference name="DEFAULT_VOICE_VOLUME_CURVE"> <reference name="DEFAULT_VOICE_VOLUME_CURVE">
@ -62,12 +62,12 @@
</reference> </reference>
<reference name="DEFAULT_DEVICE_CATEGORY_SPEAKER_VOLUME_CURVE"> <reference name="DEFAULT_DEVICE_CATEGORY_SPEAKER_VOLUME_CURVE">
<!-- Default is Speaker Media Volume Curve --> <!-- Default is Speaker Media Volume Curve -->
<point>1,-6400</point> <point>1,-6500</point>
<point>30,-4300</point> <point>30,-4500</point>
<point>43,-2600</point> <point>43,-3300</point>
<point>65,-1400</point> <point>65,-2200</point>
<point>85,-750</point> <point>85,-1200</point>
<point>93,-500</point> <point>93,-600</point>
<point>100,0</point> <point>100,0</point>
</reference> </reference>
<reference name="DEFAULT_DEVICE_CATEGORY_EARPIECE_VOLUME_CURVE"> <reference name="DEFAULT_DEVICE_CATEGORY_EARPIECE_VOLUME_CURVE">

View file

@ -0,0 +1,73 @@
# List of profiles for the output device session where stream is routed.
# A stream opened with the inputs attributes which match the "flags" and
# "formats" as specified in the profile is routed to a device at
# sample rate specified under "sampling_rates" and bit width under
# "bit_width" and the topology extracted from the acdb data against
# the "app_type".
#
# the flags and formats are specified using the strings corresponding to
# enums in audio.h and audio_policy.h. They are concatenated with "|"
# without space or "\n".
# the flags and formats should match the ones in "audio_policy.conf"
outputs {
default {
flags AUDIO_OUTPUT_FLAG_PRIMARY
formats AUDIO_FORMAT_PCM_16_BIT
sampling_rates 48000
bit_width 16
app_type 69937
}
voip_rx {
flags AUDIO_OUTPUT_FLAG_VOIP_RX|AUDIO_OUTPUT_FLAG_DIRECT
formats AUDIO_FORMAT_PCM_16_BIT
sampling_rates 48000
bit_width 16
app_type 69946
}
direct_pcm_16 {
flags AUDIO_OUTPUT_FLAG_DIRECT
formats AUDIO_FORMAT_PCM_16_BIT|AUDIO_FORMAT_PCM_24_BIT_PACKED|AUDIO_FORMAT_PCM_8_24_BIT|AUDIO_FORMAT_PCM_32_BIT
sampling_rates 44100|48000|88200|96000|176400|192000
bit_width 16
app_type 69936
}
direct_pcm_24 {
flags AUDIO_OUTPUT_FLAG_DIRECT
formats AUDIO_FORMAT_PCM_24_BIT_PACKED|AUDIO_FORMAT_PCM_8_24_BIT|AUDIO_FORMAT_PCM_32_BIT
sampling_rates 44100|48000|88200|96000|176400|192000|352800|384000
bit_width 24
app_type 69940
}
direct_pcm_32 {
flags AUDIO_OUTPUT_FLAG_DIRECT
formats AUDIO_FORMAT_PCM_32_BIT
sampling_rates 44100|48000|88200|96000|176400|192000|352800|384000
bit_width 32
app_type 69942
}
compress_offload_16 {
flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD|AUDIO_OUTPUT_FLAG_NON_BLOCKING
formats AUDIO_FORMAT_MP3|AUDIO_FORMAT_PCM_16_BIT_OFFLOAD|AUDIO_FORMAT_PCM_24_BIT_OFFLOAD|AUDIO_FORMAT_FLAC|AUDIO_FORMAT_ALAC|AUDIO_FORMAT_APE|AUDIO_FORMAT_AAC_LC|AUDIO_FORMAT_AAC_HE_V1|AUDIO_FORMAT_AAC_HE_V2|AUDIO_FORMAT_WMA|AUDIO_FORMAT_WMA_PRO|AUDIO_FORMAT_VORBIS|AUDIO_FORMAT_AAC_ADTS_LC|AUDIO_FORMAT_AAC_ADTS_HE_V1|AUDIO_FORMAT_AAC_ADTS_HE_V2|AUDIO_FORMAT_AAC_LATM_LC|AUDIO_FORMAT_AAC_LATM_HE_V1|AUDIO_FORMAT_AAC_LATM_HE_V2
sampling_rates 44100|48000|88200|96000|176400|192000
bit_width 16
app_type 69936
}
compress_offload_24 {
flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD|AUDIO_OUTPUT_FLAG_NON_BLOCKING
formats AUDIO_FORMAT_MP3|AUDIO_FORMAT_PCM_24_BIT_OFFLOAD|AUDIO_FORMAT_FLAC|AUDIO_FORMAT_ALAC|AUDIO_FORMAT_APE|AUDIO_FORMAT_AAC_LC|AUDIO_FORMAT_AAC_HE_V1|AUDIO_FORMAT_AAC_HE_V2|AUDIO_FORMAT_WMA_PRO|AUDIO_FORMAT_VORBIS|AUDIO_FORMAT_AAC_ADTS_LC|AUDIO_FORMAT_AAC_ADTS_HE_V1|AUDIO_FORMAT_AAC_ADTS_HE_V2|AUDIO_FORMAT_AAC_LATM_LC|AUDIO_FORMAT_AAC_LATM_HE_V1|AUDIO_FORMAT_AAC_LATM_HE_V2
sampling_rates 44100|48000|88200|96000|176400|192000
bit_width 24
app_type 69940
}
}
inputs {
voip_tx {
flags AUDIO_INPUT_FLAG_VOIP_TX
formats AUDIO_FORMAT_PCM_16_BIT
sampling_rates 48000
bit_width 16
app_type 69946
}
}

View file

@ -79,12 +79,11 @@
<usecase name="USECASE_AUDIO_PLAYBACK_FM" type="out" id="30"/> <usecase name="USECASE_AUDIO_PLAYBACK_FM" type="out" id="30"/>
<usecase name="USECASE_AUDIO_PLAYBACK_FM" type="in" id="38"/> <usecase name="USECASE_AUDIO_PLAYBACK_FM" type="in" id="38"/>
<usecase name="USECASE_AUDIO_SPKR_CALIB_RX" type="out" id="30"/> <usecase name="USECASE_AUDIO_SPKR_CALIB_RX" type="out" id="30"/>
<usecase name="USECASE_AUDIO_SPKR_CALIB_TX" type="in" id="45"/> <usecase name="USECASE_AUDIO_SPKR_CALIB_TX" type="in" id="47"/>
<usecase name="USECASE_AUDIO_PLAYBACK_AFE_PROXY" type="out" id="5"/> <usecase name="USECASE_AUDIO_PLAYBACK_AFE_PROXY" type="out" id="5"/>
<usecase name="USECASE_AUDIO_RECORD_AFE_PROXY" type="in" id="6"/> <usecase name="USECASE_AUDIO_RECORD_AFE_PROXY" type="in" id="6"/>
<usecase name="USECASE_AUDIO_RECORD_AFE_PROXY2" type="in" id="42"/> <usecase name="USECASE_AUDIO_RECORD_AFE_PROXY2" type="in" id="42"/>
<usecase name="USECASE_AUDIO_RECORD_LOW_LATENCY" type="in" id="13" /> <usecase name="USECASE_AUDIO_RECORD_LOW_LATENCY" type="in" id="13" />
<usecase name="USECASE_AUDIO_RECORD_VOIP_LOW_LATENCY" type="in" id="13" />
<usecase name="USECASE_AUDIO_PLAYBACK_ULL" type="out" id="13" /> <usecase name="USECASE_AUDIO_PLAYBACK_ULL" type="out" id="13" />
<usecase name="USECASE_AUDIO_PLAYBACK_SILENCE" type="out" id="23" /> <usecase name="USECASE_AUDIO_PLAYBACK_SILENCE" type="out" id="23" />
<usecase name="USECASE_AUDIO_PLAYBACK_VOIP" type="out" id="12" /> <usecase name="USECASE_AUDIO_PLAYBACK_VOIP" type="out" id="12" />
@ -101,6 +100,8 @@
<usecase name="USECASE_INCALL_REC_UPLINK" type="in" id="23" /> <usecase name="USECASE_INCALL_REC_UPLINK" type="in" id="23" />
<usecase name="USECASE_INCALL_REC_DOWNLINK" type="in" id="23" /> <usecase name="USECASE_INCALL_REC_DOWNLINK" type="in" id="23" />
<usecase name="USECASE_INCALL_REC_UPLINK_AND_DOWNLINK" type="in" id="23" /> <usecase name="USECASE_INCALL_REC_UPLINK_AND_DOWNLINK" type="in" id="23" />
<usecase name="USECASE_AUDIO_PLAYBACK_WITH_HAPTICS" type="out" id="40" />
<usecase name="USECASE_AUDIO_PLAYBACK_HAPTICS" type="out" id="41" />
</pcm_ids> </pcm_ids>
<config_params> <config_params>
<!-- In the below value string, the value indicates default mono --> <!-- In the below value string, the value indicates default mono -->
@ -156,7 +157,8 @@
<device name="SND_DEVICE_OUT_VOICE_USB_HEADSET" acdb_id="245" /> <device name="SND_DEVICE_OUT_VOICE_USB_HEADSET" acdb_id="245" />
<device name="SND_DEVICE_OUT_VOICE_USB_HEADPHONES" acdb_id="245" /> <device name="SND_DEVICE_OUT_VOICE_USB_HEADPHONES" acdb_id="245" />
<device name="SND_DEVICE_OUT_VOLTE_NB_TX" acdb_id="246" /> <device name="SND_DEVICE_OUT_VOLTE_NB_TX" acdb_id="246" />
<device name="SND_DEVICE_OUT_AFE_PROXY" acdb_id="19" /> <device name="SND_DEVICE_OUT_HAPTICS" acdb_id="400" />
<!-- Input devices --> <!-- Input devices -->
<device name="SND_DEVICE_IN_CAPTURE_VI_FEEDBACK" acdb_id="102" /> <device name="SND_DEVICE_IN_CAPTURE_VI_FEEDBACK" acdb_id="102" />
@ -170,7 +172,7 @@
<device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC" acdb_id="35" /> <device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC" acdb_id="35" />
<device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC_NS" acdb_id="35" /> <device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC_NS" acdb_id="35" />
<device name="SND_DEVICE_IN_SPEAKER_DMIC_NS" acdb_id="35" /> <device name="SND_DEVICE_IN_SPEAKER_DMIC_NS" acdb_id="35" />
<device name="SND_DEVICE_IN_HANDSET_DMIC_STEREO" acdb_id="34" /> <device name="SND_DEVICE_IN_HANDSET_DMIC_STEREO" acdb_id="35" />
<device name="SND_DEVICE_IN_VOICE_REC_DMIC_FLUENCE" acdb_id="35" /> <device name="SND_DEVICE_IN_VOICE_REC_DMIC_FLUENCE" acdb_id="35" />
<device name="SND_DEVICE_IN_VOICE_SPEAKER_DMIC" acdb_id="35" /> <device name="SND_DEVICE_IN_VOICE_SPEAKER_DMIC" acdb_id="35" />
<device name="SND_DEVICE_IN_VOICE_TTY_VCO_HANDSET_MIC" acdb_id="41" /> <device name="SND_DEVICE_IN_VOICE_TTY_VCO_HANDSET_MIC" acdb_id="41" />
@ -214,15 +216,13 @@
<device name="SND_DEVICE_IN_CAPTURE_FM" acdb_id="90" /> <device name="SND_DEVICE_IN_CAPTURE_FM" acdb_id="90" />
<device name="SND_DEVICE_IN_VOICE_SPEAKER_MIC_NN" acdb_id="301" /> <device name="SND_DEVICE_IN_VOICE_SPEAKER_MIC_NN" acdb_id="301" />
<device name="SND_DEVICE_IN_VOICE_HEADSET_MIC_NN" acdb_id="8" /> <device name="SND_DEVICE_IN_VOICE_HEADSET_MIC_NN" acdb_id="8" />
<device name="SND_DEVICE_IN_VOICE_USB_HEADSET_MIC_NN" acdb_id="303" /> <device name="SND_DEVICE_IN_VOICE_USB_HEADSET_MIC_NN" acdb_id="44" />
<device name="SND_DEVICE_IN_SPEAKER_MIC_NN" acdb_id="304" /> <device name="SND_DEVICE_IN_SPEAKER_MIC_NN" acdb_id="304" />
<device name="SND_DEVICE_IN_SPEAKER_MIC_AEC_NN" acdb_id="304" /> <device name="SND_DEVICE_IN_SPEAKER_MIC_AEC_NN" acdb_id="304" />
<device name="SND_DEVICE_IN_SPEAKER_MIC_NS_NN" acdb_id="304" /> <device name="SND_DEVICE_IN_SPEAKER_MIC_NS_NN" acdb_id="304" />
<device name="SND_DEVICE_IN_SPEAKER_MIC_AEC_NS_NN" acdb_id="304" /> <device name="SND_DEVICE_IN_SPEAKER_MIC_AEC_NS_NN" acdb_id="304" />
<device name="SND_DEVICE_IN_HEADSET_MIC_NN" acdb_id="319" /> <device name="SND_DEVICE_IN_HEADSET_MIC_NN" acdb_id="319" />
<device name="SND_DEVICE_IN_HEADSET_MIC_FLUENCE_NN" acdb_id="305" /> <device name="SND_DEVICE_IN_HEADSET_MIC_FLUENCE_NN" acdb_id="305" />
<device name="SND_DEVICE_IN_SPEAKER_MIC_GAME" acdb_id="114" />
<device name="SND_DEVICE_IN_SPEAKER_MIC_GAME_NN" acdb_id="304" />
<device name="SND_DEVICE_IN_AUX_MIC_AEC_NS" acdb_id="316" /> <device name="SND_DEVICE_IN_AUX_MIC_AEC_NS" acdb_id="316" />
<device name="SND_DEVICE_IN_AUX_MIC_AEC_NS_NN" acdb_id="316" /> <device name="SND_DEVICE_IN_AUX_MIC_AEC_NS_NN" acdb_id="316" />
<device name="SND_DEVICE_IN_USB_HEADSET_MIC_NN" acdb_id="306" /> <device name="SND_DEVICE_IN_USB_HEADSET_MIC_NN" acdb_id="306" />
@ -240,10 +240,10 @@
<device name="SND_DEVICE_OUT_BT_A2DP" backend="bt-a2dp" interface="SLIMBUS_7_RX"/> <device name="SND_DEVICE_OUT_BT_A2DP" backend="bt-a2dp" interface="SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_LINE" backend="headphones" interface="RX_CDC_DMA_RX_0"/> <device name="SND_DEVICE_OUT_LINE" backend="headphones" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_ANC_HEADSET" backend="headphones" interface="RX_CDC_DMA_RX_0"/> <device name="SND_DEVICE_OUT_ANC_HEADSET" backend="headphones" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES" backend="speaker-and-headphones" interface="SEN_MI2S_RX-and-RX_CDC_DMA_RX_0"/> <device name="SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES" backend="speaker-and-headphones" interface="PRI_MI2S_RX-and-RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES_HIFI_FILTER" backend="speaker-and-headphones" interface="SEN_MI2S_RX-and-RX_CDC_DMA_RX_0"/> <device name="SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES_HIFI_FILTER" backend="speaker-and-headphones" interface="PRI_MI2S_RX-and-RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_LINE" backend="speaker-and-headphones" interface="SEN_MI2S_RX-and-RX_CDC_DMA_RX_0"/> <device name="SND_DEVICE_OUT_SPEAKER_AND_LINE" backend="speaker-and-headphones" interface="PRI_MI2S_RX-and-RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_ANC_HEADSET" backend="speaker-and-headphones" interface="SEN_MI2S_RX-and-RX_CDC_DMA_RX_0"/> <device name="SND_DEVICE_OUT_SPEAKER_AND_ANC_HEADSET" backend="speaker-and-headphones" interface="PRI_MI2S_RX-and-RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_HEADPHONES" backend="headphones" interface="RX_CDC_DMA_RX_0"/> <device name="SND_DEVICE_OUT_VOICE_HEADPHONES" backend="headphones" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_HEADSET" backend="headset" interface="RX_CDC_DMA_RX_0"/> <device name="SND_DEVICE_OUT_VOICE_HEADSET" backend="headset" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOLTE_NB_HEADSET" backend="headset" interface="RX_CDC_DMA_RX_0"/> <device name="SND_DEVICE_OUT_VOLTE_NB_HEADSET" backend="headset" interface="RX_CDC_DMA_RX_0"/>
@ -258,16 +258,16 @@
<device name="SND_DEVICE_OUT_VOLTE_NB_HANDSET_TMUS" interface="RX_CDC_DMA_RX_0"/> <device name="SND_DEVICE_OUT_VOLTE_NB_HANDSET_TMUS" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOLTE_NB_ANC_HANDSET" interface="RX_CDC_DMA_RX_0"/> <device name="SND_DEVICE_OUT_VOLTE_NB_ANC_HANDSET" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_HAC_HANDSET" interface="RX_CDC_DMA_RX_0"/> <device name="SND_DEVICE_OUT_VOICE_HAC_HANDSET" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER" backend="speaker" interface="SEN_MI2S_RX"/> <device name="SND_DEVICE_OUT_SPEAKER" backend="speaker" interface="PRI_MI2S_RX"/>
<device name="SND_DEVICE_OUT_CQA_SPEAKER" backend="speaker" interface="SEN_MI2S_RX"/> <device name="SND_DEVICE_OUT_CQA_SPEAKER" backend="speaker" interface="PRI_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOLTE_NB_SPEAKER" backend="speaker" interface="SEN_MI2S_RX"/> <device name="SND_DEVICE_OUT_VOLTE_NB_SPEAKER" backend="speaker" interface="PRI_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER" backend="speaker" interface="SEN_MI2S_RX"/> <device name="SND_DEVICE_OUT_VOICE_SPEAKER" backend="speaker" interface="PRI_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_HANDSET" interface="RX_CDC_DMA_RX_0"/> <device name="SND_DEVICE_OUT_VOICE_HANDSET" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_ANC_HANDSET" interface="RX_CDC_DMA_RX_0"/> <device name="SND_DEVICE_OUT_VOICE_ANC_HANDSET" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOLTE_NB_HANDSET" interface="RX_CDC_DMA_RX_0"/> <device name="SND_DEVICE_OUT_VOLTE_NB_HANDSET" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOLTE_NB_HAC_HANDSET" interface="RX_CDC_DMA_RX_0"/> <device name="SND_DEVICE_OUT_VOLTE_NB_HAC_HANDSET" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_HANDSET_TMUS" interface="RX_CDC_DMA_RX_0"/> <device name="SND_DEVICE_OUT_VOICE_HANDSET_TMUS" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_BT_A2DP" interface="SEN_MI2S_RX-and-SLIMBUS_7_RX"/> <device name="SND_DEVICE_OUT_SPEAKER_AND_BT_A2DP" interface="PRI_MI2S_RX-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_HCO_HANDSET" backend="headset" interface="RX_CDC_DMA_RX_0"/> <device name="SND_DEVICE_OUT_VOICE_TTY_HCO_HANDSET" backend="headset" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_ANC_FB_HEADSET" interface="RX_CDC_DMA_RX_0"/> <device name="SND_DEVICE_OUT_ANC_FB_HEADSET" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_ANC_FB_HEADSET" interface="RX_CDC_DMA_RX_0"/> <device name="SND_DEVICE_OUT_VOICE_ANC_FB_HEADSET" interface="RX_CDC_DMA_RX_0"/>
@ -298,8 +298,6 @@
<device name="SND_DEVICE_IN_SPEAKER_DMIC_NS" interface="TX_CDC_DMA_TX_3"/> <device name="SND_DEVICE_IN_SPEAKER_DMIC_NS" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC_NS" interface="TX_CDC_DMA_TX_3"/> <device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC_NS" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_DMIC_STEREO" interface="TX_CDC_DMA_TX_3"/> <device name="SND_DEVICE_IN_SPEAKER_DMIC_STEREO" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_MIC_GAME" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_MIC_GAME_NN" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_AUX_MIC_AEC_NS" interface="TX_CDC_DMA_TX_3"/> <device name="SND_DEVICE_IN_AUX_MIC_AEC_NS" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_AUX_MIC_AEC_NS_NN" interface="TX_CDC_DMA_TX_3"/> <device name="SND_DEVICE_IN_AUX_MIC_AEC_NS_NN" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HEADSET_MIC" backend="headset-mic" interface="TX_CDC_DMA_TX_4"/> <device name="SND_DEVICE_IN_HEADSET_MIC" backend="headset-mic" interface="TX_CDC_DMA_TX_4"/>
@ -343,9 +341,9 @@
<device name="SND_DEVICE_IN_AANC_HANDSET_MIC" interface="TX_CDC_DMA_TX_3"/> <device name="SND_DEVICE_IN_AANC_HANDSET_MIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_STEREO_DMIC" interface="TX_CDC_DMA_TX_3"/> <device name="SND_DEVICE_IN_HANDSET_STEREO_DMIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_STEREO_DMIC" interface="TX_CDC_DMA_TX_3"/> <device name="SND_DEVICE_IN_SPEAKER_STEREO_DMIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_CAPTURE_VI_FEEDBACK" interface="SEN_MI2S_TX"/> <device name="SND_DEVICE_IN_CAPTURE_VI_FEEDBACK" interface="PRI_MI2S_TX"/>
<device name="SND_DEVICE_IN_CAPTURE_VI_FEEDBACK_MONO_1" interface="SEN_MI2S_TX"/> <device name="SND_DEVICE_IN_CAPTURE_VI_FEEDBACK_MONO_1" interface="PRI_MI2S_TX"/>
<device name="SND_DEVICE_IN_CAPTURE_VI_FEEDBACK_MONO_2" interface="SEN_MI2S_TX"/> <device name="SND_DEVICE_IN_CAPTURE_VI_FEEDBACK_MONO_2" interface="PRI_MI2S_TX"/>
<device name="SND_DEVICE_IN_VOICE_SPEAKER_DMIC_BROADSIDE" interface="TX_CDC_DMA_TX_3"/> <device name="SND_DEVICE_IN_VOICE_SPEAKER_DMIC_BROADSIDE" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_DMIC_BROADSIDE" interface="TX_CDC_DMA_TX_3"/> <device name="SND_DEVICE_IN_SPEAKER_DMIC_BROADSIDE" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC_BROADSIDE" interface="TX_CDC_DMA_TX_3"/> <device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC_BROADSIDE" interface="TX_CDC_DMA_TX_3"/>
@ -353,7 +351,6 @@
<device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC_NS_BROADSIDE" interface="TX_CDC_DMA_TX_3"/> <device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC_NS_BROADSIDE" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_VOICE_FLUENCE_DMIC_AANC" interface="TX_CDC_DMA_TX_3"/> <device name="SND_DEVICE_IN_VOICE_FLUENCE_DMIC_AANC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_THREE_MIC" interface="TX_CDC_DMA_TX_3"/> <device name="SND_DEVICE_IN_THREE_MIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_VOICE_HEARING_AID" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_TMIC_FLUENCE_PRO" interface="TX_CDC_DMA_TX_3"/> <device name="SND_DEVICE_IN_HANDSET_TMIC_FLUENCE_PRO" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_TMIC" interface="TX_CDC_DMA_TX_3"/> <device name="SND_DEVICE_IN_HANDSET_TMIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_TMIC_AEC" interface="TX_CDC_DMA_TX_3"/> <device name="SND_DEVICE_IN_HANDSET_TMIC_AEC" interface="TX_CDC_DMA_TX_3"/>
@ -365,12 +362,11 @@
<device name="SND_DEVICE_IN_UNPROCESSED_THREE_MIC" interface="TX_CDC_DMA_TX_3"/> <device name="SND_DEVICE_IN_UNPROCESSED_THREE_MIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_UNPROCESSED_QUAD_MIC" interface="TX_CDC_DMA_TX_3"/> <device name="SND_DEVICE_IN_UNPROCESSED_QUAD_MIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_UNPROCESSED_HEADSET_MIC" interface="TX_CDC_DMA_TX_3"/> <device name="SND_DEVICE_IN_UNPROCESSED_HEADSET_MIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_AND_VOICE_HEADPHONES" backend="speaker-and-headphones" interface="SEN_MI2S_RX-and-RX_CDC_DMA_RX_0"/> <device name="SND_DEVICE_OUT_VOICE_SPEAKER_AND_VOICE_HEADPHONES" backend="speaker-and-headphones" interface="PRI_MI2S_RX-and-RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_AND_VOICE_ANC_HEADSET" backend="speaker-and-headphones" interface="SEN_MI2S_RX-and-RX_CDC_DMA_RX_0"/> <device name="SND_DEVICE_OUT_VOICE_SPEAKER_AND_VOICE_ANC_HEADSET" backend="speaker-and-headphones" interface="PRI_MI2S_RX-and-RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_BT_SCO" backend="speaker-and-bt-sco" interface="SEN_MI2S_RX-and-SLIMBUS_7_RX"/> <device name="SND_DEVICE_OUT_SPEAKER_AND_BT_SCO" backend="speaker-and-bt-sco" interface="PRI_MI2S_RX-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_BT_SCO_WB" backend="speaker-and-bt-sco-wb" interface="SEN_MI2S_RX-and-SLIMBUS_7_RX"/> <device name="SND_DEVICE_OUT_SPEAKER_AND_BT_SCO_WB" backend="speaker-and-bt-sco-wb" interface="PRI_MI2S_RX-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_BT_SCO_SWB" backend="speaker-and-bt-sco-swb" interface="TERT_MI2S_RX-and-SLIMBUS_7_RX"/> <device name="SND_DEVICE_OUT_SPEAKER_AND_USB_HEADSET" backend="speaker-and-usb-headset" interface="PRI_MI2S_RX-and-USB_AUDIO_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_USB_HEADSET" backend="speaker-and-usb-headset" interface="SEN_MI2S_RX-and-USB_AUDIO_RX"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_FULL_USB" backend="usb-headset" interface="USB_AUDIO_RX"/> <device name="SND_DEVICE_OUT_VOICE_TTY_FULL_USB" backend="usb-headset" interface="USB_AUDIO_RX"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_VCO_USB" backend="usb-headset" interface="USB_AUDIO_RX"/> <device name="SND_DEVICE_OUT_VOICE_TTY_VCO_USB" backend="usb-headset" interface="USB_AUDIO_RX"/>
<device name="SND_DEVICE_OUT_USB_HEADSET" backend="usb-headset" interface="USB_AUDIO_RX"/> <device name="SND_DEVICE_OUT_USB_HEADSET" backend="usb-headset" interface="USB_AUDIO_RX"/>

View file

@ -103,20 +103,20 @@
<ctl name="DISPLAY_PORT1 Mixer MultiMedia14" value="0" /> <ctl name="DISPLAY_PORT1 Mixer MultiMedia14" value="0" />
<ctl name="DISPLAY_PORT1 Mixer MultiMedia15" value="0" /> <ctl name="DISPLAY_PORT1 Mixer MultiMedia15" value="0" />
<ctl name="DISPLAY_PORT1 Mixer MultiMedia16" value="0" /> <ctl name="DISPLAY_PORT1 Mixer MultiMedia16" value="0" />
<ctl name="SEN_MI2S_RX Audio Mixer MultiMedia1" value="0" /> <ctl name="PRI_MI2S_RX Audio Mixer MultiMedia1" value="0" />
<ctl name="SEN_MI2S_RX Audio Mixer MultiMedia2" value="0" /> <ctl name="PRI_MI2S_RX Audio Mixer MultiMedia2" value="0" />
<ctl name="SEN_MI2S_RX Audio Mixer MultiMedia3" value="0" /> <ctl name="PRI_MI2S_RX Audio Mixer MultiMedia3" value="0" />
<ctl name="SEN_MI2S_RX Audio Mixer MultiMedia4" value="0" /> <ctl name="PRI_MI2S_RX Audio Mixer MultiMedia4" value="0" />
<ctl name="SEN_MI2S_RX Audio Mixer MultiMedia5" value="0" /> <ctl name="PRI_MI2S_RX Audio Mixer MultiMedia5" value="0" />
<ctl name="SEN_MI2S_RX Audio Mixer MultiMedia7" value="0" /> <ctl name="PRI_MI2S_RX Audio Mixer MultiMedia7" value="0" />
<ctl name="SEN_MI2S_RX Audio Mixer MultiMedia8" value="0" /> <ctl name="PRI_MI2S_RX Audio Mixer MultiMedia8" value="0" />
<ctl name="SEN_MI2S_RX Audio Mixer MultiMedia10" value="0" /> <ctl name="PRI_MI2S_RX Audio Mixer MultiMedia10" value="0" />
<ctl name="SEN_MI2S_RX Audio Mixer MultiMedia11" value="0" /> <ctl name="PRI_MI2S_RX Audio Mixer MultiMedia11" value="0" />
<ctl name="SEN_MI2S_RX Audio Mixer MultiMedia12" value="0" /> <ctl name="PRI_MI2S_RX Audio Mixer MultiMedia12" value="0" />
<ctl name="SEN_MI2S_RX Audio Mixer MultiMedia13" value="0" /> <ctl name="PRI_MI2S_RX Audio Mixer MultiMedia13" value="0" />
<ctl name="SEN_MI2S_RX Audio Mixer MultiMedia14" value="0" /> <ctl name="PRI_MI2S_RX Audio Mixer MultiMedia14" value="0" />
<ctl name="SEN_MI2S_RX Audio Mixer MultiMedia15" value="0" /> <ctl name="PRI_MI2S_RX Audio Mixer MultiMedia15" value="0" />
<ctl name="SEN_MI2S_RX Audio Mixer MultiMedia16" value="0" /> <ctl name="PRI_MI2S_RX Audio Mixer MultiMedia16" value="0" />
<ctl name="RX_CDC_DMA_RX_0 Audio Mixer MultiMedia1" value="0" /> <ctl name="RX_CDC_DMA_RX_0 Audio Mixer MultiMedia1" value="0" />
<ctl name="RX_CDC_DMA_RX_0 Audio Mixer MultiMedia2" value="0" /> <ctl name="RX_CDC_DMA_RX_0 Audio Mixer MultiMedia2" value="0" />
<ctl name="RX_CDC_DMA_RX_0 Audio Mixer MultiMedia3" value="0" /> <ctl name="RX_CDC_DMA_RX_0 Audio Mixer MultiMedia3" value="0" />
@ -191,7 +191,7 @@
<!-- fm end --> <!-- fm end -->
<!-- Multimode Voice1 --> <!-- Multimode Voice1 -->
<ctl name="SEN_MI2S_RX_Voice Mixer VoiceMMode1" value="0" /> <ctl name="PRI_MI2S_RX_Voice Mixer VoiceMMode1" value="0" />
<ctl name="RX_CDC_DMA_RX_0_Voice Mixer VoiceMMode1" value="0" /> <ctl name="RX_CDC_DMA_RX_0_Voice Mixer VoiceMMode1" value="0" />
<ctl name="VoiceMMode1_Tx Mixer TX_CDC_DMA_TX_3_MMode1" value="0" /> <ctl name="VoiceMMode1_Tx Mixer TX_CDC_DMA_TX_3_MMode1" value="0" />
<ctl name="VoiceMMode1_Tx Mixer TX_CDC_DMA_TX_4_MMode1" value="0" /> <ctl name="VoiceMMode1_Tx Mixer TX_CDC_DMA_TX_4_MMode1" value="0" />
@ -211,7 +211,7 @@
<!-- Miltimode Voice1 end--> <!-- Miltimode Voice1 end-->
<!-- Multimode Voice2 --> <!-- Multimode Voice2 -->
<ctl name="SEN_MI2S_RX_Voice Mixer VoiceMMode2" value="0" /> <ctl name="PRI_MI2S_RX_Voice Mixer VoiceMMode2" value="0" />
<ctl name="RX_CDC_DMA_RX_0_Voice Mixer VoiceMMode2" value="0" /> <ctl name="RX_CDC_DMA_RX_0_Voice Mixer VoiceMMode2" value="0" />
<ctl name="VoiceMMode2_Tx Mixer TX_CDC_DMA_TX_3_MMode2" value="0" /> <ctl name="VoiceMMode2_Tx Mixer TX_CDC_DMA_TX_3_MMode2" value="0" />
<ctl name="VoiceMMode2_Tx Mixer TX_CDC_DMA_TX_4_MMode2" value="0" /> <ctl name="VoiceMMode2_Tx Mixer TX_CDC_DMA_TX_4_MMode2" value="0" />
@ -230,7 +230,7 @@
<ctl name="VoiceMMode2_Tx Mixer PROXY_TX_MMode2" value="0" /> <ctl name="VoiceMMode2_Tx Mixer PROXY_TX_MMode2" value="0" />
<!-- Multimode Voice2 end--> <!-- Multimode Voice2 end-->
<ctl name="SEN_MI2S_RX_VI_FB_MUX" value="ZERO" /> <ctl name="PRI_MI2S_RX_VI_FB_MUX" value="ZERO" />
<!-- Voice external ec. reference --> <!-- Voice external ec. reference -->
<ctl name="VOC_EXT_EC MUX" value="NONE" /> <ctl name="VOC_EXT_EC MUX" value="NONE" />
@ -254,7 +254,7 @@
<!-- Incall Music End --> <!-- Incall Music End -->
<!-- compress-voip-call start --> <!-- compress-voip-call start -->
<ctl name="SEN_MI2S_RX_Voice Mixer Voip" value="0" /> <ctl name="PRI_MI2S_RX_Voice Mixer Voip" value="0" />
<ctl name="RX_CDC_DMA_RX_0_Voice Mixer Voip" value="0" /> <ctl name="RX_CDC_DMA_RX_0_Voice Mixer Voip" value="0" />
<ctl name="Voip_Tx Mixer TX_CDC_DMA_TX_3_Voip" value="0" /> <ctl name="Voip_Tx Mixer TX_CDC_DMA_TX_3_Voip" value="0" />
<ctl name="Voip_Tx Mixer TX_CDC_DMA_TX_4_Voip" value="0" /> <ctl name="Voip_Tx Mixer TX_CDC_DMA_TX_4_Voip" value="0" />
@ -279,6 +279,7 @@
<!-- audio record compress end--> <!-- audio record compress end-->
<!-- split a2dp --> <!-- split a2dp -->
<ctl name="BT SampleRate" value="KHZ_8" />
<ctl name="AFE Input Channels" value="Zero" /> <ctl name="AFE Input Channels" value="Zero" />
<ctl name="SLIM7_RX ADM Channels" value="Zero" /> <ctl name="SLIM7_RX ADM Channels" value="Zero" />
<!-- split a2dp end--> <!-- split a2dp end-->
@ -291,6 +292,7 @@
<ctl name="AFE_PCM_RX Audio Mixer MultiMedia3" value="0" /> <ctl name="AFE_PCM_RX Audio Mixer MultiMedia3" value="0" />
<!-- Codec controls --> <!-- Codec controls -->
<ctl name="SWR DAC_Port Switch" value="0" />
<!-- RX Controls --> <!-- RX Controls -->
<ctl name="RX_MACRO RX0 MUX" value="ZERO" /> <ctl name="RX_MACRO RX0 MUX" value="ZERO" />
@ -442,6 +444,7 @@
<ctl name="RX INT2_1 VBAT RX AUX VBAT Enable" value="0" /> <ctl name="RX INT2_1 VBAT RX AUX VBAT Enable" value="0" />
<!-- Codec controls end --> <!-- Codec controls end -->
<ctl name="Haptics Amplitude Step" value="180" />
<!-- defaults for mmap record --> <!-- defaults for mmap record -->
<ctl name="MultiMedia16 Mixer TX_CDC_DMA_TX_3" value="0" /> <ctl name="MultiMedia16 Mixer TX_CDC_DMA_TX_3" value="0" />
@ -451,8 +454,8 @@
<ctl name="RX_CDC_DMA_RX_6 Audio Mixer MultiMedia32" value="0"/> <ctl name="RX_CDC_DMA_RX_6 Audio Mixer MultiMedia32" value="0"/>
<ctl name="RX_CDC_DMA_RX_6 Channels" value="One" /> <ctl name="RX_CDC_DMA_RX_6 Channels" value="One" />
<ctl name="SEN_MI2S_RX Channels" value="One" /> <ctl name="PRIM_MI2S_RX Channels" value="One" />
<ctl name="SEN_MI2S_TX Channels" value="Two" /> <ctl name="PRIM_MI2S_TX Channels" value="Two" />
<!-- These are audio route (FE to BE) specific mixer settings --> <!-- These are audio route (FE to BE) specific mixer settings -->
<path name="gsm-mode"> <path name="gsm-mode">
@ -464,7 +467,12 @@
</path> </path>
<path name="echo-reference"> <path name="echo-reference">
<ctl name="AUDIO_REF_EC_UL1 MUX" value="SEN_MI2S_TX" /> <ctl name="AUDIO_REF_EC_UL1 MUX" value="I2S_RX" />
<ctl name="EC Reference Channels" value="One"/>
</path>
<path name="echo-reference handset">
<ctl name="AUDIO_REF_EC_UL1 MUX" value="RX_CDC_DMA_RX_0" />
<ctl name="EC Reference Channels" value="One"/> <ctl name="EC Reference Channels" value="One"/>
</path> </path>
@ -477,6 +485,11 @@
<path name="echo-reference headphones" /> <path name="echo-reference headphones" />
</path> </path>
<path name="echo-reference display-port">
<ctl name="AUDIO_REF_EC_UL1 MUX" value="DISPLAY_PORT" />
<ctl name="EC Reference Channels" value="Two"/>
</path>
<path name="echo-reference headphones-44.1"> <path name="echo-reference headphones-44.1">
<ctl name="AUDIO_REF_EC_UL1 MUX" value="RX_CDC_DMA_RX_0" /> <ctl name="AUDIO_REF_EC_UL1 MUX" value="RX_CDC_DMA_RX_0" />
<ctl name="EC Reference Channels" value="Two"/> <ctl name="EC Reference Channels" value="Two"/>
@ -495,23 +508,8 @@
<path name="echo-reference bt-sco" /> <path name="echo-reference bt-sco" />
</path> </path>
<path name="echo-reference-voip-low-latency">
<ctl name="AUDIO_REF_EC_UL8 MUX" value="TERT_MI2S_RX" />
<ctl name="EC Reference Channels" value="Two"/>
</path>
<path name="echo-reference-voip-low-latency handset">
<ctl name="AUDIO_REF_EC_UL8 MUX" value="TERT_MI2S_RX" />
<ctl name="EC Reference Channels" value="One"/>
</path>
<path name="echo-reference-voip-low-latency headphones">
<ctl name="AUDIO_REF_EC_UL8 MUX" value="TERT_MI2S_RX" />
<ctl name="EC Reference Channels" value="Two"/>
</path>
<path name="echo-reference-voip"> <path name="echo-reference-voip">
<ctl name="AUDIO_REF_EC_UL10 MUX" value="SEN_MI2S_TX" /> <ctl name="AUDIO_REF_EC_UL10 MUX" value="I2S_RX" />
<ctl name="EC Reference Channels" value="One"/> <ctl name="EC Reference Channels" value="One"/>
</path> </path>
@ -538,7 +536,7 @@
</path> </path>
<path name="deep-buffer-playback speaker"> <path name="deep-buffer-playback speaker">
<ctl name="SEN_MI2S_RX Audio Mixer MultiMedia1" value="1" /> <ctl name="PRI_MI2S_RX Audio Mixer MultiMedia1" value="1" />
</path> </path>
<path name="deep-buffer-playback bt-sco"> <path name="deep-buffer-playback bt-sco">
@ -546,6 +544,7 @@
</path> </path>
<path name="deep-buffer-playback bt-sco-wb"> <path name="deep-buffer-playback bt-sco-wb">
<ctl name="BT SampleRate" value="KHZ_16" />
<path name="deep-buffer-playback bt-sco" /> <path name="deep-buffer-playback bt-sco" />
</path> </path>
@ -603,12 +602,20 @@
<path name="deep-buffer-playback speaker" /> <path name="deep-buffer-playback speaker" />
</path> </path>
<path name="deep-buffer-playback display-port">
<ctl name="DISPLAY_PORT Mixer MultiMedia1" value="1" />
</path>
<path name="low-latency-playback"> <path name="low-latency-playback">
<ctl name="RX_CDC_DMA_RX_0 Audio Mixer MultiMedia5" value="1" /> <ctl name="RX_CDC_DMA_RX_0 Audio Mixer MultiMedia5" value="1" />
</path> </path>
<path name="low-latency-playback speaker"> <path name="low-latency-playback speaker">
<ctl name="SEN_MI2S_RX Audio Mixer MultiMedia5" value="1" /> <ctl name="PRI_MI2S_RX Audio Mixer MultiMedia5" value="1" />
</path>
<path name="low-latency-playback display-port">
<ctl name="DISPLAY_PORT Mixer MultiMedia5" value="1" />
</path> </path>
<path name="low-latency-playback bt-sco"> <path name="low-latency-playback bt-sco">
@ -616,6 +623,7 @@
</path> </path>
<path name="low-latency-playback bt-sco-wb"> <path name="low-latency-playback bt-sco-wb">
<ctl name="BT SampleRate" value="KHZ_16" />
<path name="low-latency-playback bt-sco" /> <path name="low-latency-playback bt-sco" />
</path> </path>
@ -678,7 +686,7 @@
</path> </path>
<path name="audio-ull-playback speaker"> <path name="audio-ull-playback speaker">
<ctl name="SEN_MI2S_RX Audio Mixer MultiMedia8" value="1" /> <ctl name="PRI_MI2S_RX Audio Mixer MultiMedia8" value="1" />
</path> </path>
<path name="audio-ull-playback headphones"> <path name="audio-ull-playback headphones">
@ -694,11 +702,16 @@
<path name="audio-ull-playback speaker" /> <path name="audio-ull-playback speaker" />
</path> </path>
<path name="audio-ull-playback display-port">
<ctl name="DISPLAY_PORT Mixer MultiMedia8" value="1" />
</path>
<path name="audio-ull-playback bt-sco"> <path name="audio-ull-playback bt-sco">
<ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia8" value="1" /> <ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia8" value="1" />
</path> </path>
<path name="audio-ull-playback bt-sco-wb"> <path name="audio-ull-playback bt-sco-wb">
<ctl name="BT SampleRate" value="KHZ_16" />
<path name="audio-ull-playback bt-sco" /> <path name="audio-ull-playback bt-sco" />
</path> </path>
@ -738,12 +751,16 @@
<path name="audio-ull-playback speaker" /> <path name="audio-ull-playback speaker" />
</path> </path>
<path name="multi-channel-playback display-port">
<ctl name="DISPLAY_PORT Mixer MultiMedia2" value="1" />
</path>
<path name="multi-channel-playback afe-proxy"> <path name="multi-channel-playback afe-proxy">
<ctl name="AFE_PCM_RX Audio Mixer MultiMedia2" value="1" /> <ctl name="AFE_PCM_RX Audio Mixer MultiMedia2" value="1" />
</path> </path>
<path name="compress-offload-playback speaker"> <path name="compress-offload-playback speaker">
<ctl name="SEN_MI2S_RX Audio Mixer MultiMedia4" value="1" /> <ctl name="PRI_MI2S_RX Audio Mixer MultiMedia4" value="1" />
</path> </path>
<path name="compress-offload-playback"> <path name="compress-offload-playback">
@ -755,6 +772,7 @@
</path> </path>
<path name="compress-offload-playback bt-sco-wb"> <path name="compress-offload-playback bt-sco-wb">
<ctl name="BT SampleRate" value="KHZ_16" />
<path name="compress-offload-playback bt-sco" /> <path name="compress-offload-playback bt-sco" />
</path> </path>
@ -779,6 +797,14 @@
<path name="compress-offload-playback speaker" /> <path name="compress-offload-playback speaker" />
</path> </path>
<path name="compress-offload-playback display-port">
<ctl name="DISPLAY_PORT Mixer MultiMedia4" value="1" />
</path>
<path name="silence-playback display-port">
<ctl name="DISPLAY_PORT Mixer MultiMedia9" value="1" />
</path>
<path name="compress-offload-playback headphones"> <path name="compress-offload-playback headphones">
<ctl name="RX_CDC_DMA_RX_0 Audio Mixer MultiMedia4" value="1" /> <ctl name="RX_CDC_DMA_RX_0 Audio Mixer MultiMedia4" value="1" />
</path> </path>
@ -825,7 +851,7 @@
</path> </path>
<path name="compress-offload-playback2 speaker"> <path name="compress-offload-playback2 speaker">
<ctl name="SEN_MI2S_RX Audio Mixer MultiMedia7" value="1" /> <ctl name="PRI_MI2S_RX Audio Mixer MultiMedia7" value="1" />
</path> </path>
<path name="compress-offload-playback2 bt-sco"> <path name="compress-offload-playback2 bt-sco">
@ -906,6 +932,7 @@
</path> </path>
<path name="audio-record bt-sco-wb"> <path name="audio-record bt-sco-wb">
<ctl name="BT SampleRate" value="KHZ_16" />
<path name="audio-record bt-sco" /> <path name="audio-record bt-sco" />
</path> </path>
@ -930,6 +957,7 @@
</path> </path>
<path name="audio-record-compress bt-sco-wb"> <path name="audio-record-compress bt-sco-wb">
<ctl name="BT SampleRate" value="KHZ_16" />
<path name="audio-record-compress bt-sco" /> <path name="audio-record-compress bt-sco" />
</path> </path>
@ -954,6 +982,7 @@
</path> </path>
<path name="audio-record-compress2 bt-sco-wb"> <path name="audio-record-compress2 bt-sco-wb">
<ctl name="BT SampleRate" value="KHZ_16" />
<path name="audio-record-compress2 bt-sco" /> <path name="audio-record-compress2 bt-sco" />
</path> </path>
@ -978,6 +1007,7 @@
</path> </path>
<path name="low-latency-record bt-sco-wb"> <path name="low-latency-record bt-sco-wb">
<ctl name="BT SampleRate" value="KHZ_16" />
<path name="low-latency-record bt-sco" /> <path name="low-latency-record bt-sco" />
</path> </path>
@ -1125,7 +1155,7 @@
</path> </path>
<path name="compress-voip-call"> <path name="compress-voip-call">
<ctl name="SEN_MI2S_RX_Voice Mixer Voip" value="1" /> <ctl name="PRI_MI2S_RX_Voice Mixer Voip" value="1" />
<ctl name="Voip_Tx Mixer TX_CDC_DMA_TX_3_Voip" value="1" /> <ctl name="Voip_Tx Mixer TX_CDC_DMA_TX_3_Voip" value="1" />
</path> </path>
@ -1155,6 +1185,7 @@
</path> </path>
<path name="compress-voip-call bt-sco-wb"> <path name="compress-voip-call bt-sco-wb">
<ctl name="BT SampleRate" value="KHZ_16" />
<path name="compress-voip-call bt-sco" /> <path name="compress-voip-call bt-sco" />
</path> </path>
@ -1164,7 +1195,7 @@
<path name="compress-voip-call afe-proxy"> <path name="compress-voip-call afe-proxy">
<ctl name="AFE_PCM_RX_Voice Mixer Voip" value="1" /> <ctl name="AFE_PCM_RX_Voice Mixer Voip" value="1" />
<ctl name="Voip_Tx Mixer TX_CDC_DMA_TX_3_Voip" value="1" /> <ctl name="Voip_Tx Mixer AFE_PCM_TX_Voip" value="1" />
</path> </path>
<path name="compress-voip-call usb-headphones"> <path name="compress-voip-call usb-headphones">
@ -1183,7 +1214,7 @@
</path> </path>
<path name="voicemmode1-call speaker"> <path name="voicemmode1-call speaker">
<ctl name="SEN_MI2S_RX_Voice Mixer VoiceMMode1" value="1" /> <ctl name="PRI_MI2S_RX_Voice Mixer VoiceMMode1" value="1" />
<ctl name="VoiceMMode1_Tx Mixer TX_CDC_DMA_TX_3_MMode1" value="1" /> <ctl name="VoiceMMode1_Tx Mixer TX_CDC_DMA_TX_3_MMode1" value="1" />
</path> </path>
@ -1213,6 +1244,7 @@
</path> </path>
<path name="voicemmode1-call bt-sco-wb"> <path name="voicemmode1-call bt-sco-wb">
<ctl name="BT SampleRate" value="KHZ_16" />
<path name="voicemmode1-call bt-sco" /> <path name="voicemmode1-call bt-sco" />
</path> </path>
@ -1235,13 +1267,23 @@
<ctl name="VoiceMMode1_Tx Mixer USB_AUDIO_TX_MMode1" value="1" /> <ctl name="VoiceMMode1_Tx Mixer USB_AUDIO_TX_MMode1" value="1" />
</path> </path>
<path name="voicemmode1-call display-port-and-usb-headset-mic">
<ctl name="DISPLAY_PORT_RX_Voice Mixer VoiceMMode1" value="1" />
<ctl name="VoiceMMode1_Tx Mixer USB_AUDIO_TX_MMode1" value="1" />
</path>
<path name="voicemmode1-call display-port">
<ctl name="DISPLAY_PORT_RX_Voice Mixer VoiceMMode1" value="1" />
<ctl name="VoiceMMode1_Tx Mixer TX_CDC_DMA_TX_3_MMode1" value="1" />
</path>
<path name="voicemmode2-call"> <path name="voicemmode2-call">
<ctl name="RX_CDC_DMA_RX_0_Voice Mixer VoiceMMode2" value="1" /> <ctl name="RX_CDC_DMA_RX_0_Voice Mixer VoiceMMode2" value="1" />
<ctl name="VoiceMMode2_Tx Mixer TX_CDC_DMA_TX_3_MMode2" value="1" /> <ctl name="VoiceMMode2_Tx Mixer TX_CDC_DMA_TX_3_MMode2" value="1" />
</path> </path>
<path name="voicemmode2-call speaker"> <path name="voicemmode2-call speaker">
<ctl name="SEN_MI2S_RX_Voice Mixer VoiceMMode2" value="1" /> <ctl name="PRI_MI2S_RX_Voice Mixer VoiceMMode2" value="1" />
<ctl name="VoiceMMode2_Tx Mixer TX_CDC_DMA_TX_3_MMode2" value="1" /> <ctl name="VoiceMMode2_Tx Mixer TX_CDC_DMA_TX_3_MMode2" value="1" />
</path> </path>
@ -1261,6 +1303,7 @@
</path> </path>
<path name="voicemmode2-call bt-sco-wb"> <path name="voicemmode2-call bt-sco-wb">
<ctl name="BT SampleRate" value="KHZ_16" />
<path name="voicemmode2-call bt-sco" /> <path name="voicemmode2-call bt-sco" />
</path> </path>
@ -1283,6 +1326,16 @@
<ctl name="VoiceMMode2_Tx Mixer USB_AUDIO_TX_MMode2" value="1" /> <ctl name="VoiceMMode2_Tx Mixer USB_AUDIO_TX_MMode2" value="1" />
</path> </path>
<path name="voicemmode2-call display-port-and-usb-headset-mic">
<ctl name="DISPLAY_PORT_RX_Voice Mixer VoiceMMode2" value="1" />
<ctl name="VoiceMMode2_Tx Mixer USB_AUDIO_TX_MMode2" value="1" />
</path>
<path name="voicemmode2-call display-port">
<ctl name="DISPLAY_PORT_RX_Voice Mixer VoiceMMode2" value="1" />
<ctl name="VoiceMMode2_Tx Mixer TX_CDC_DMA_TX_3_MMode2" value="1" />
</path>
<path name="voicemmode2-call hearing-aid"> <path name="voicemmode2-call hearing-aid">
<ctl name="PROXY_RX_Voice Mixer VoiceMMode2" value="1" /> <ctl name="PROXY_RX_Voice Mixer VoiceMMode2" value="1" />
<ctl name="VoiceMMode2_Tx Mixer TX_CDC_DMA_TX_3_MMode2" value="1" /> <ctl name="VoiceMMode2_Tx Mixer TX_CDC_DMA_TX_3_MMode2" value="1" />
@ -1299,7 +1352,7 @@
</path> </path>
<path name="audio-playback-voip speaker"> <path name="audio-playback-voip speaker">
<ctl name="SEN_MI2S_RX Audio Mixer MultiMedia10" value="1" /> <ctl name="PRI_MI2S_RX Audio Mixer MultiMedia10" value="1" />
</path> </path>
<path name="audio-playback-voip headphones"> <path name="audio-playback-voip headphones">
@ -1315,6 +1368,7 @@
</path> </path>
<path name="audio-playback-voip bt-sco-wb"> <path name="audio-playback-voip bt-sco-wb">
<ctl name="BT SampleRate" value="KHZ_16" />
<path name="audio-playback-voip bt-sco" /> <path name="audio-playback-voip bt-sco" />
</path> </path>
@ -1338,11 +1392,16 @@
<ctl name="USB_AUDIO_RX Audio Mixer MultiMedia10" value="1" /> <ctl name="USB_AUDIO_RX Audio Mixer MultiMedia10" value="1" />
</path> </path>
<!-- VoIP Tx settings --> <path name="audio-playback-voip display-port">
<path name="audio-record-voip-low-latency"> <ctl name="DISPLAY_PORT Mixer MultiMedia10" value="1" />
<ctl name="MultiMedia8 Mixer TX_CDC_DMA_TX_3" value="1" />
</path> </path>
<path name="audio-playback-voip speaker-and-display-port">
<path name="audio-playback-voip display-port" />
<path name="audio-playback-voip" />
</path>
<!-- VoIP Tx settings -->
<path name="audio-record-voip"> <path name="audio-record-voip">
<ctl name="MultiMedia10 Mixer TX_CDC_DMA_TX_3" value="1" /> <ctl name="MultiMedia10 Mixer TX_CDC_DMA_TX_3" value="1" />
<ctl name="TX_DEC2 Volume" value="84" /> <ctl name="TX_DEC2 Volume" value="84" />
@ -1361,6 +1420,7 @@
</path> </path>
<path name="audio-record-voip bt-sco-wb"> <path name="audio-record-voip bt-sco-wb">
<ctl name="BT SampleRate" value="KHZ_16" />
<path name="audio-record-voip bt-sco" /> <path name="audio-record-voip bt-sco" />
</path> </path>
@ -1368,6 +1428,131 @@
<path name="audio-record-voip bt-sco" /> <path name="audio-record-voip bt-sco" />
</path> </path>
<path name="audio-with-haptics-playback speaker">
<ctl name="RX_CDC_DMA_RX_6 Audio Mixer MultiMedia32" value="1"/>
<ctl name="PRI_MI2S_RX Audio Mixer MultiMedia31" value="1" />
</path>
<path name="audio-with-haptics-playback">
<ctl name="RX_CDC_DMA_RX_6 Audio Mixer MultiMedia32" value="1"/>
<ctl name="PRI_MI2S_RX Audio Mixer MultiMedia31" value="1" />
</path>
<path name="audio-with-haptics-playback speaker-protected">
<path name="audio-with-haptics-playback" />
</path>
<path name="audio-with-haptics-playback speaker-safe">
<path name="audio-with-haptics-playback" />
</path>
<path name="audio-with-haptics-playback display-port">
<ctl name="RX_CDC_DMA_RX_6 Audio Mixer MultiMedia32" value="1"/>
<ctl name="DISPLAY_PORT Mixer MultiMedia31" value="1" />
</path>
<path name="audio-with-haptics-playback bt-sco">
<ctl name="RX_CDC_DMA_RX_6 Audio Mixer MultiMedia32" value="1"/>
<ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia31" value="1" />
</path>
<path name="audio-with-haptics-playback bt-sco-wb">
<path name="audio-with-haptics-playback bt-sco" />
</path>
<path name="audio-with-haptics-playback bt-sco-swb">
<path name="audio-with-haptics-playback bt-sco" />
</path>
<path name="audio-with-haptics-playback speaker-and-display-port">
<path name="audio-with-haptics-playback display-port" />
<ctl name="PRI_MI2S_RX Audio Mixer MultiMedia31" value="1" />
</path>
<path name="audio-with-haptics-playback afe-proxy">
<ctl name="RX_CDC_DMA_RX_6 Audio Mixer MultiMedia32" value="1"/>
<ctl name="AFE_PCM_RX Audio Mixer MultiMedia31" value="1" />
</path>
<path name="audio-with-haptics-playback usb-headphones">
<ctl name="RX_CDC_DMA_RX_6 Audio Mixer MultiMedia32" value="1"/>
<ctl name="USB_AUDIO_RX Audio Mixer MultiMedia31" value="1" />
</path>
<path name="audio-with-haptics-playback usb-headset">
<ctl name="RX_CDC_DMA_RX_6 Audio Mixer MultiMedia32" value="1"/>
<ctl name="USB_AUDIO_RX Audio Mixer MultiMedia31" value="1" />
</path>
<path name="audio-with-haptics-playback speaker-and-usb-headphones">
<path name="audio-with-haptics-playback usb-headphones" />
<ctl name="PRI_MI2S_RX Audio Mixer MultiMedia31" value="1" />
</path>
<path name="audio-with-haptics-playback speaker-safe-and-usb-headphones">
<path name="audio-with-haptics-playback usb-headphones" />
<ctl name="PRI_MI2S_RX Audio Mixer MultiMedia31" value="1" />
</path>
<path name="audio-with-haptics-playback headphones">
<ctl name="RX_CDC_DMA_RX_6 Audio Mixer MultiMedia32" value="1"/>
<ctl name="RX_CDC_DMA_RX_0 Audio Mixer MultiMedia31" value="1" />
</path>
<path name="audio-with-haptics-playback headset">
<path name="audio-with-haptics-playback headphones" />
</path>
<path name="audio-with-haptics-playback speaker-and-headphones">
<path name="audio-with-haptics-playback headphones" />
<ctl name="PRI_MI2S_RX Audio Mixer MultiMedia31" value="1" />
</path>
<path name="audio-with-haptics-playback speaker-safe-and-headphones">
<path name="audio-with-haptics-playback headphones" />
<ctl name="PRI_MI2S_RX Audio Mixer MultiMedia31" value="1" />
</path>
<path name="audio-with-haptics-playback speaker-and-bt-sco">
<path name="audio-with-haptics-playback bt-sco" />
<ctl name="PRI_MI2S_RX Audio Mixer MultiMedia31" value="1" />
</path>
<path name="audio-with-haptics-playback speaker-safe-and-bt-sco">
<path name="audio-with-haptics-playback bt-sco" />
<ctl name="PRI_MI2S_RX Audio Mixer MultiMedia31" value="1" />
</path>
<path name="audio-with-haptics-playback speaker-and-bt-sco-wb">
<path name="audio-with-haptics-playback bt-sco-wb" />
<ctl name="PRI_MI2S_RX Audio Mixer MultiMedia31" value="1" />
</path>
<path name="audio-with-haptics-playback speaker-safe-and-bt-sco-wb">
<path name="audio-with-haptics-playback bt-sco-wb" />
<ctl name="PRI_MI2S_RX Audio Mixer MultiMedia31" value="1" />
</path>
<path name="audio-with-haptics-playback speaker-and-bt-sco-swb">
<path name="audio-with-haptics-playback bt-sco-swb" />
<ctl name="PRI_MI2S_RX Audio Mixer MultiMedia31" value="1" />
</path>
<path name="audio-with-haptics-playback bt-a2dp">
<ctl name="RX_CDC_DMA_RX_6 Audio Mixer MultiMedia32" value="1"/>
<ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia31" value="1" />
</path>
<path name="audio-with-haptics-playback speaker-and-bt-a2dp">
<path name="audio-with-haptics-playback bt-a2dp" />
<ctl name="PRI_MI2S_RX Audio Mixer MultiMedia31" value="1" />
</path>
<path name="audio-with-haptics-playback speaker-safe-and-bt-a2dp">
<path name="audio-with-haptics-playback bt-a2dp" />
<ctl name="PRI_MI2S_RX Audio Mixer MultiMedia31" value="1" />
</path>
<path name="deep-buffer-playback bt-a2dp"> <path name="deep-buffer-playback bt-a2dp">
<ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia1" value="1" /> <ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia1" value="1" />
</path> </path>
@ -1413,7 +1598,7 @@
</path> </path>
<path name="mmap-playback speaker"> <path name="mmap-playback speaker">
<ctl name="SEN_MI2S_RX Audio Mixer MultiMedia16" value="1" /> <ctl name="PRI_MI2S_RX Audio Mixer MultiMedia16" value="1" />
</path> </path>
<path name="mmap-playback headphones"> <path name="mmap-playback headphones">
@ -1458,6 +1643,11 @@
<path name="mmap-playback speaker" /> <path name="mmap-playback speaker" />
</path> </path>
<path name="mmap-playback speaker-and-display-port">
<path name="mmap-playback display-port" />
<path name="mmap-playback" />
</path>
<path name="mmap-record"> <path name="mmap-record">
<ctl name="MultiMedia16 Mixer TX_CDC_DMA_TX_3" value="1" /> <ctl name="MultiMedia16 Mixer TX_CDC_DMA_TX_3" value="1" />
</path> </path>
@ -1493,6 +1683,10 @@
<ctl name="USB_AUDIO_RX Audio Mixer MultiMedia2" value="1" /> <ctl name="USB_AUDIO_RX Audio Mixer MultiMedia2" value="1" />
</path> </path>
<path name="hifi-playback display-port">
<ctl name="DISPLAY_PORT Mixer MultiMedia2" value="1" />
</path>
<path name="hifi-record"> <path name="hifi-record">
<ctl name="MultiMedia2 Mixer TX_CDC_DMA_TX_3" value="1" /> <ctl name="MultiMedia2 Mixer TX_CDC_DMA_TX_3" value="1" />
</path> </path>
@ -1573,6 +1767,14 @@
<path name="incall_music_uplink" /> <path name="incall_music_uplink" />
</path> </path>
<path name="incall_music_uplink display-port">
<path name="incall_music_uplink" />
</path>
<path name="incall_music_uplink speaker-and-display-port">
<path name="incall_music_uplink" />
</path>
<path name="incall_music_uplink2"> <path name="incall_music_uplink2">
<ctl name="Incall_Music_2 Audio Mixer MultiMedia9" value="1" /> <ctl name="Incall_Music_2 Audio Mixer MultiMedia9" value="1" />
</path> </path>
@ -1581,18 +1783,10 @@
<path name="incall_music_uplink2" /> <path name="incall_music_uplink2" />
</path> </path>
<path name="incall_music_uplink2 handset">
<path name="incall_music_uplink2" />
</path>
<path name="incall_music_uplink2 handset-hac"> <path name="incall_music_uplink2 handset-hac">
<path name="incall_music_uplink2" /> <path name="incall_music_uplink2" />
</path> </path>
<path name="incall_music_uplink2 display-port">
<path name="incall_music_uplink2" />
</path>
<path name="incall_music_uplink2 bt-sco"> <path name="incall_music_uplink2 bt-sco">
<path name="incall_music_uplink2" /> <path name="incall_music_uplink2" />
</path> </path>
@ -1605,10 +1799,6 @@
<path name="incall_music_uplink2" /> <path name="incall_music_uplink2" />
</path> </path>
<path name="incall_music_uplink2 speaker-and-display-port">
<path name="incall_music_uplink2" />
</path>
<path name="incall_music_uplink2 afe-proxy"> <path name="incall_music_uplink2 afe-proxy">
<path name="incall_music_uplink2" /> <path name="incall_music_uplink2" />
</path> </path>
@ -1629,6 +1819,14 @@
<path name="incall_music_uplink2" /> <path name="incall_music_uplink2" />
</path> </path>
<path name="incall_music_uplink2 display-port">
<path name="incall_music_uplink2" />
</path>
<path name="incall_music_uplink2 speaker-and-display-port1">
<path name="incall_music_uplink2" />
</path>
<path name="incall_music_uplink2 headset"> <path name="incall_music_uplink2 headset">
<path name="incall_music_uplink2" /> <path name="incall_music_uplink2" />
</path> </path>
@ -1641,10 +1839,6 @@
<path name="incall_music_uplink2" /> <path name="incall_music_uplink2" />
</path> </path>
<path name="incall_music_uplink2 voice-tty-hco-handset">
<path name="incall_music_uplink2" />
</path>
<path name="incall_music_uplink2 speaker-and-bt-a2dp"> <path name="incall_music_uplink2 speaker-and-bt-a2dp">
<path name="incall_music_uplink2" /> <path name="incall_music_uplink2" />
</path> </path>
@ -1668,7 +1862,7 @@
</path> </path>
<path name="spkr-vi-record"> <path name="spkr-vi-record">
<ctl name="SEN_MI2S_RX_VI_FB_MUX" value="SEN_MI2S_TX" /> <ctl name="PRI_MI2S_RX_VI_FB_MUX" value="PRI_MI2S_TX" />
</path> </path>
<!-- These are actual sound device specific mixer settings --> <!-- These are actual sound device specific mixer settings -->
@ -1676,8 +1870,9 @@
<ctl name="TX_CDC_DMA_TX_3 Channels" value="One" /> <ctl name="TX_CDC_DMA_TX_3 Channels" value="One" />
<ctl name="TX_AIF1_CAP Mixer DEC0" value="1" /> <ctl name="TX_AIF1_CAP Mixer DEC0" value="1" />
<ctl name="TX DEC0 MUX" value="SWR_MIC" /> <ctl name="TX DEC0 MUX" value="SWR_MIC" />
<ctl name="TX SMIC MUX0" value="SWR_MIC0" /> <ctl name="TX SMIC MUX0" value="SWR_MIC4" />
<ctl name="ADC1 ChMap" value="SWRM_TX1_CH1" /> <ctl name="ADC1 ChMap" value="SWRM_TX2_CH1" />
<ctl name="TX0 MODE" value="ADC_LP" />
<ctl name="ADC1_MIXER Switch" value="1" /> <ctl name="ADC1_MIXER Switch" value="1" />
</path> </path>
@ -1685,12 +1880,14 @@
<ctl name="TX_CDC_DMA_TX_4 Channels" value="One"/> <ctl name="TX_CDC_DMA_TX_4 Channels" value="One"/>
<ctl name="TX_AIF2_CAP Mixer DEC0" value="1"/> <ctl name="TX_AIF2_CAP Mixer DEC0" value="1"/>
<ctl name="TX DEC0 MUX" value="SWR_MIC"/> <ctl name="TX DEC0 MUX" value="SWR_MIC"/>
<ctl name="TX SMIC MUX0" value="SWR_MIC4"/> <ctl name="TX SMIC MUX0" value="SWR_MIC5"/>
<ctl name="ADC2 ChMap" value="SWRM_TX2_CH1"/> <ctl name="ADC2 ChMap" value="SWRM_TX2_CH2"/>
<ctl name="MBHC ChMap" value="SWRM_TX3_CH3" />
<ctl name="ADC2 MUX" value="INP2"/> <ctl name="ADC2 MUX" value="INP2"/>
<ctl name="DEC0_BCS Switch" value="1"/> <ctl name="DEC0_BCS Switch" value="1" />
<ctl name="BCS Channel" value="CH5"/> <ctl name="TX1 MODE" value="ADC_LP" />
<ctl name="MBHC ChMap" value="SWRM_TX2_CH2"/> <ctl name="BCS Channel" value="CH10"/>
<ctl name="HDR12 MUX" value="NO_HDR12" />
<ctl name="ADC2_MIXER Switch" value="1"/> <ctl name="ADC2_MIXER Switch" value="1"/>
</path> </path>
@ -1698,27 +1895,33 @@
<ctl name="TX_CDC_DMA_TX_3 Channels" value="One" /> <ctl name="TX_CDC_DMA_TX_3 Channels" value="One" />
<ctl name="TX_AIF1_CAP Mixer DEC0" value="1"/> <ctl name="TX_AIF1_CAP Mixer DEC0" value="1"/>
<ctl name="TX DEC0 MUX" value="SWR_MIC"/> <ctl name="TX DEC0 MUX" value="SWR_MIC"/>
<ctl name="TX SMIC MUX0" value="SWR_MIC4"/> <ctl name="TX SMIC MUX0" value="SWR_MIC6"/>
<ctl name="ADC2 ChMap" value="SWRM_TX2_CH1"/> <ctl name="ADC2 ChMap" value="SWRM_TX2_CH3"/>
<ctl name="ADC2 MUX" value="INP3"/> <ctl name="ADC2 MUX" value="INP3"/>
<ctl name="ADC2_BCS Disable" value="1"/>
<ctl name="TX1 MODE" value="ADC_LP" />
<ctl name="HDR12 MUX" value="NO_HDR12" />
<ctl name="ADC2_MIXER Switch" value="1"/> <ctl name="ADC2_MIXER Switch" value="1"/>
</path> </path>
<path name="amic4"> <path name="amic4">
<ctl name="TX_CDC_DMA_TX_3 Channels" value="One" /> <ctl name="TX_CDC_DMA_TX_3 Channels" value="One" />
<ctl name="TX_AIF1_CAP Mixer DEC0" value="1"/> <ctl name="TX_AIF1_CAP Mixer DEC5" value="1"/>
<ctl name="TX DEC0 MUX" value="SWR_MIC"/> <ctl name="TX DEC5 MUX" value="SWR_MIC"/>
<ctl name="TX SMIC MUX0" value="SWR_MIC5"/> <ctl name="TX SMIC MUX5" value="SWR_MIC8"/>
<ctl name="ADC3 ChMap" value="SWRM_TX2_CH2"/> <ctl name="ADC3 ChMap" value="SWRM_TX3_CH1"/>
<ctl name="ADC3 MUX" value="INP4"/>
<ctl name="HDR34 MUX" value="NO_HDR34"/>
<ctl name="TX2 MODE" value="ADC_LP"/>
<ctl name="ADC3_MIXER Switch" value="1"/> <ctl name="ADC3_MIXER Switch" value="1"/>
</path> </path>
<path name="mic1"> <path name="mic1">
<path name="amic3" /> <path name="amic1" />
</path> </path>
<path name="mic2"> <path name="mic2">
<path name="amic1" /> <path name="amic3" />
</path> </path>
<path name="mic3"> <path name="mic3">
@ -1728,18 +1931,22 @@
<path name="camcorder-mic-bf"> <path name="camcorder-mic-bf">
<ctl name="TX_CDC_DMA_TX_3 Channels" value="Two" /> <ctl name="TX_CDC_DMA_TX_3 Channels" value="Two" />
<!-- the top mic as left channel --> <!-- the top mic as left channel -->
<ctl name="ADC1 Volume" value="8" /> <ctl name="ADC2 Volume" value="8" />
<ctl name="TX_AIF1_CAP Mixer DEC0" value="1" /> <ctl name="TX_AIF1_CAP Mixer DEC0" value="1" />
<ctl name="TX DEC0 MUX" value="SWR_MIC" /> <ctl name="TX DEC0 MUX" value="SWR_MIC" />
<ctl name="TX SMIC MUX0" value="SWR_MIC0" /> <ctl name="TX SMIC MUX0" value="SWR_MIC6" />
<ctl name="ADC1 ChMap" value="SWRM_TX1_CH1" /> <ctl name="ADC2 ChMap" value="SWRM_TX2_CH3"/>
<ctl name="ADC1_MIXER Switch" value="1" /> <ctl name="ADC2_BCS Disable" value="1" />
<!-- the bottom mic as right channel --> <!-- the bottom mic as right channel -->
<ctl name="ADC2 Volume" value="8" /> <ctl name="ADC1 Volume" value="8" />
<ctl name="TX_AIF1_CAP Mixer DEC1" value="1"/> <ctl name="TX_AIF1_CAP Mixer DEC1" value="1"/>
<ctl name="TX DEC1 MUX" value="SWR_MIC"/> <ctl name="TX DEC1 MUX" value="SWR_MIC"/>
<ctl name="TX SMIC MUX1" value="SWR_MIC4"/> <ctl name="TX SMIC MUX1" value="SWR_MIC4"/>
<ctl name="ADC2 ChMap" value="SWRM_TX2_CH1"/> <ctl name="ADC1 ChMap" value="SWRM_TX2_CH1" />
<ctl name="TX0 MODE" value="ADC_LP" />
<ctl name="TX1 MODE" value="ADC_LP" />
<ctl name="HDR12 MUX" value="NO_HDR12" />
<ctl name="ADC1_MIXER Switch" value="1" />
<ctl name="ADC2_MIXER Switch" value="1"/> <ctl name="ADC2_MIXER Switch" value="1"/>
<ctl name="ADC2 MUX" value="INP3"/> <ctl name="ADC2 MUX" value="INP3"/>
</path> </path>
@ -1747,33 +1954,37 @@
<path name="camcorder-mic-bf-reverse"> <path name="camcorder-mic-bf-reverse">
<ctl name="TX_CDC_DMA_TX_3 Channels" value="Two" /> <ctl name="TX_CDC_DMA_TX_3 Channels" value="Two" />
<!-- the bottom mic as left channel --> <!-- the bottom mic as left channel -->
<ctl name="ADC2 Volume" value="8" /> <ctl name="ADC1 Volume" value="8" />
<ctl name="TX_AIF1_CAP Mixer DEC0" value="1"/> <ctl name="TX_AIF1_CAP Mixer DEC0" value="1"/>
<ctl name="TX DEC0 MUX" value="SWR_MIC"/> <ctl name="TX DEC0 MUX" value="SWR_MIC"/>
<ctl name="TX SMIC MUX0" value="SWR_MIC4"/> <ctl name="TX SMIC MUX0" value="SWR_MIC4"/>
<ctl name="ADC2 ChMap" value="SWRM_TX2_CH1"/> <ctl name="ADC1 ChMap" value="SWRM_TX2_CH1"/>
<ctl name="ADC2_MIXER Switch" value="1"/> <ctl name="ADC1_MIXER Switch" value="1"/>
<ctl name="ADC2 MUX" value="INP3"/>
<!-- the top mic as right channel --> <!-- the top mic as right channel -->
<ctl name="ADC1 Volume" value="8" /> <ctl name="ADC2 Volume" value="8" />
<ctl name="TX_AIF1_CAP Mixer DEC1" value="1" /> <ctl name="TX_AIF1_CAP Mixer DEC1" value="1" />
<ctl name="TX DEC1 MUX" value="SWR_MIC" /> <ctl name="TX DEC1 MUX" value="SWR_MIC" />
<ctl name="TX SMIC MUX1" value="SWR_MIC0" /> <ctl name="TX SMIC MUX1" value="SWR_MIC6" />
<ctl name="ADC1 ChMap" value="SWRM_TX1_CH1" /> <ctl name="ADC2 ChMap" value="SWRM_TX2_CH3" />
<ctl name="ADC1_MIXER Switch" value="1" /> <ctl name="ADC2 MUX" value="INP3"/>
<ctl name="ADC1 ChMap" value="SWRM_TX2_CH1" />
<ctl name="TX0 MODE" value="ADC_LP" />
<ctl name="TX1 MODE" value="ADC_LP" />
<ctl name="HDR12 MUX" value="NO_HDR12" />
<ctl name="ADC2_MIXER Switch" value="1" />
</path> </path>
<path name="camcorder-mic-audio-zoom"> <path name="camcorder-mic-audio-zoom">
<ctl name="TX_CDC_DMA_TX_3 Channels" value="Three" /> <ctl name="TX_CDC_DMA_TX_3 Channels" value="Three" />
<!-- the top mic as left channel --> <!-- the top mic as left channel -->
<ctl name="ADC1 Volume" value="6" /> <ctl name="ADC1 Volume" value="8" />
<ctl name="TX_AIF1_CAP Mixer DEC0" value="1" /> <ctl name="TX_AIF1_CAP Mixer DEC0" value="1" />
<ctl name="TX DEC0 MUX" value="SWR_MIC" /> <ctl name="TX DEC0 MUX" value="SWR_MIC" />
<ctl name="TX SMIC MUX0" value="SWR_MIC0" /> <ctl name="TX SMIC MUX0" value="SWR_MIC0" />
<ctl name="ADC1 ChMap" value="SWRM_TX1_CH1" /> <ctl name="ADC1 ChMap" value="SWRM_TX1_CH1" />
<ctl name="ADC1_MIXER Switch" value="1" /> <ctl name="ADC1_MIXER Switch" value="1" />
<!-- the bottom mic as right channel --> <!-- the bottom mic as right channel -->
<ctl name="ADC2 Volume" value="6" /> <ctl name="ADC2 Volume" value="8" />
<ctl name="TX_AIF1_CAP Mixer DEC1" value="1"/> <ctl name="TX_AIF1_CAP Mixer DEC1" value="1"/>
<ctl name="TX DEC1 MUX" value="SWR_MIC"/> <ctl name="TX DEC1 MUX" value="SWR_MIC"/>
<ctl name="TX SMIC MUX1" value="SWR_MIC4"/> <ctl name="TX SMIC MUX1" value="SWR_MIC4"/>
@ -1781,7 +1992,7 @@
<ctl name="ADC2_MIXER Switch" value="1"/> <ctl name="ADC2_MIXER Switch" value="1"/>
<ctl name="ADC2 MUX" value="INP3"/> <ctl name="ADC2 MUX" value="INP3"/>
<!-- the back mic as aux channel --> <!-- the back mic as aux channel -->
<ctl name="ADC3 Volume" value="4" /> <ctl name="ADC3 Volume" value="8" />
<ctl name="TX_AIF1_CAP Mixer DEC2" value="1"/> <ctl name="TX_AIF1_CAP Mixer DEC2" value="1"/>
<ctl name="TX DEC2 MUX" value="SWR_MIC"/> <ctl name="TX DEC2 MUX" value="SWR_MIC"/>
<ctl name="TX SMIC MUX2" value="SWR_MIC5"/> <ctl name="TX SMIC MUX2" value="SWR_MIC5"/>
@ -1797,6 +2008,10 @@
<path name="camcorder-mic-bf" /> <path name="camcorder-mic-bf" />
</path> </path>
<path name="haptics">
<ctl name="SWR DAC_Port Switch" value="1" />
</path>
<path name="speaker"> <path name="speaker">
</path> </path>
@ -1846,7 +2061,7 @@
<path name="sidetone-handset"> <path name="sidetone-handset">
<path name="sidetone-iir" /> <path name="sidetone-iir" />
<ctl name="IIR0 INP0 Volume" value="54" /> <ctl name="IIR0 INP0 Volume" value="0" />
<ctl name="IIR0 INP0 MUX" value="DEC2" /> <ctl name="IIR0 INP0 MUX" value="DEC2" />
<ctl name="RX INT0 MIX2 INP" value="SRC0" /> <ctl name="RX INT0 MIX2 INP" value="SRC0" />
</path> </path>
@ -1856,11 +2071,7 @@
</path> </path>
<path name="speaker-mic"> <path name="speaker-mic">
<path name="amic1" /> <path name="amic3" />
</path>
<path name="speaker-mic-game">
<path name="amic4" />
</path> </path>
<path name="vi-feedback"> <path name="vi-feedback">
@ -1873,21 +2084,21 @@
</path> </path>
<path name="handset"> <path name="handset">
<ctl name="RX_EAR Mode" value="ON" />
<ctl name="RX_MACRO RX0 MUX" value="AIF1_PB" /> <ctl name="RX_MACRO RX0 MUX" value="AIF1_PB" />
<ctl name="RX_CDC_DMA_RX_0 Channels" value="One" /> <ctl name="RX_CDC_DMA_RX_0 Channels" value="One" />
<ctl name="RX INT0_1 MIX1 INP0" value="RX0" /> <ctl name="RX INT0_1 MIX1 INP0" value="RX0" />
<ctl name="RX INT0 DEM MUX" value="CLSH_DSM_OUT" /> <ctl name="RX INT0 DEM MUX" value="CLSH_DSM_OUT" />
<ctl name="EAR_RDAC Switch" value="1" /> <ctl name="EAR_RDAC Switch" value="1" />
<ctl name="RDAC3_MUX" value="RX1" /> <ctl name="RDAC3_MUX" value="RX1" />
<ctl name="RX_EAR Mode" value="ON" />
</path> </path>
<path name="handset-mic"> <path name="handset-mic">
<path name="amic3" /> <path name="amic1" />
</path> </path>
<path name="handset-mic-top"> <path name="handset-mic-top">
<path name="amic1" /> <path name="amic3" />
</path> </path>
<path name="headphones"> <path name="headphones">
@ -2007,11 +2218,19 @@
<path name="afe-proxy"> <path name="afe-proxy">
</path> </path>
<path name="display-port">
</path>
<path name="speaker-and-usb-headphones"> <path name="speaker-and-usb-headphones">
<path name="speaker" /> <path name="speaker" />
<path name="usb-headphones" /> <path name="usb-headphones" />
</path> </path>
<path name="speaker-and-display-port">
<path name="speaker" />
<path name="display-port" />
</path>
<path name="voice-rec-mic"> <path name="voice-rec-mic">
<path name="handset-mic" /> <path name="handset-mic" />
</path> </path>
@ -2044,13 +2263,13 @@
<ctl name="TX_AIF1_CAP Mixer DEC1" value="1" /> <ctl name="TX_AIF1_CAP Mixer DEC1" value="1" />
<ctl name="TX DEC1 MUX" value="SWR_MIC" /> <ctl name="TX DEC1 MUX" value="SWR_MIC" />
<ctl name="TX SMIC MUX1" value="SWR_MIC4" /> <ctl name="TX SMIC MUX1" value="SWR_MIC4" />
<ctl name="ADC2 ChMap" value="SWRM_TX2_CH1" /> <ctl name="ADC2 ChMap" value="SWRM_TX2_CH3" />
<ctl name="ADC2 MUX" value="INP3" /> <ctl name="ADC2 MUX" value="INP3" />
<ctl name="ADC2_MIXER Switch" value="1" /> <ctl name="ADC2_MIXER Switch" value="1" />
<ctl name="TX_AIF1_CAP Mixer DEC2" value="1" /> <ctl name="TX_AIF1_CAP Mixer DEC2" value="1" />
<ctl name="TX DEC2 MUX" value="SWR_MIC" /> <ctl name="TX DEC2 MUX" value="SWR_MIC" />
<ctl name="TX SMIC MUX2" value="SWR_MIC0" /> <ctl name="TX SMIC MUX2" value="SWR_MIC6" />
<ctl name="ADC1 ChMap" value="SWRM_TX1_CH1" /> <ctl name="ADC1 ChMap" value="SWRM_TX2_CH1" />
<ctl name="ADC1_MIXER Switch" value="1" /> <ctl name="ADC1_MIXER Switch" value="1" />
</path> </path>
@ -2071,10 +2290,6 @@
<path name="speaker-dmic-endfire" /> <path name="speaker-dmic-endfire" />
</path> </path>
<path name="hearing-aid-mic">
<path name="voice-speaker-mic"/>
</path>
<path name="voice-dmic-ef-tmus"> <path name="voice-dmic-ef-tmus">
<path name="dmic-endfire" /> <path name="dmic-endfire" />
</path> </path>
@ -2108,6 +2323,57 @@
<path name="dmic-broadside" /> <path name="dmic-broadside" />
</path> </path>
<path name="unprocessed-hdr-mic">
<ctl name="TX_CDC_DMA_TX_3 Channels" value="Four" />
<ctl name="TX_CDC_DMA_TX_3 Format" value="S24_LE" />
<ctl name="TX DEC1 MUX" value="SWR_MIC" />
<ctl name="TX DEC2 MUX" value="SWR_MIC" />
<ctl name="TX DEC5 MUX" value="SWR_MIC" />
<ctl name="TX DEC3 MUX" value="SWR_MIC" />
<ctl name="TX0 MODE" value="ADC_HIFI" />
<ctl name="TX1 MODE" value="ADC_HIFI" />
<ctl name="TX2 MODE" value="ADC_HIFI" />
<ctl name="TX3 MODE" value="ADC_HIFI" />
<ctl name="TX SMIC MUX1" value="SWR_MIC4" />
<ctl name="TX SMIC MUX2" value="SWR_MIC5" />
<ctl name="TX SMIC MUX5" value="SWR_MIC8" />
<ctl name="TX SMIC MUX3" value="SWR_MIC9" />
<ctl name="TX_AIF1_CAP Mixer DEC1" value="1" />
<ctl name="TX_AIF1_CAP Mixer DEC2" value="1" />
<ctl name="TX_AIF1_CAP Mixer DEC5" value="1" />
<ctl name="TX_AIF1_CAP Mixer DEC3" value="1" />
<ctl name="ADC1 ChMap" value="SWRM_TX2_CH1" />
<ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" />
<ctl name="ADC3 ChMap" value="SWRM_TX3_CH1" />
<ctl name="ADC4 ChMap" value="SWRM_TX3_CH2" />
<ctl name="ADC4 MUX" value="INP5" />
<ctl name="HDR12 MUX" value="HDR12" />
<ctl name="HDR34 MUX" value="HDR34" />
<ctl name="ADC1_MIXER Switch" value="1" />
<ctl name="ADC2_MIXER Switch" value="1" />
<ctl name="ADC3_MIXER Switch" value="1" />
<ctl name="ADC4_MIXER Switch" value="1" />
</path>
<path name="unprocessed-hdr-dmic">
<ctl name="TX_CDC_DMA_TX_3 Channels" value="Two" />
<ctl name="TX_CDC_DMA_TX_3 Format" value="S24_LE" />
<ctl name="TX DEC1 MUX" value="SWR_MIC" />
<ctl name="TX DEC2 MUX" value="SWR_MIC" />
<ctl name="TX0 MODE" value="ADC_HIFI" />
<ctl name="TX1 MODE" value="ADC_HIFI" />
<ctl name="TX SMIC MUX1" value="SWR_MIC4" />
<ctl name="TX SMIC MUX2" value="SWR_MIC5" />
<ctl name="TX_AIF1_CAP Mixer DEC1" value="1" />
<ctl name="TX_AIF1_CAP Mixer DEC2" value="1" />
<ctl name="ADC1 ChMap" value="SWRM_TX2_CH1" />
<ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" />
<ctl name="HDR12 MUX" value="HDR12" />
<ctl name="ADC1_MIXER Switch" value="1" />
<ctl name="ADC2_MIXER Switch" value="1" />
</path>
<!-- TTY devices --> <!-- TTY devices -->
<path name="tty-headphones"> <path name="tty-headphones">

View file

@ -0,0 +1,337 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--- Copyright (c) 2014-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, -->
<!--- WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE -->
<!--- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN -->
<!--- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -->
<mixer>
<!-- These are the initial mixer settings -->
<ctl name="LSM1 Mixer VA_CDC_DMA_TX_0" value="0" />
<ctl name="LSM2 Mixer VA_CDC_DMA_TX_0" value="0" />
<ctl name="LSM3 Mixer VA_CDC_DMA_TX_0" value="0" />
<ctl name="LSM4 Mixer VA_CDC_DMA_TX_0" value="0" />
<ctl name="LSM5 Mixer VA_CDC_DMA_TX_0" value="0" />
<ctl name="LSM6 Mixer VA_CDC_DMA_TX_0" value="0" />
<ctl name="LSM7 Mixer VA_CDC_DMA_TX_0" value="0" />
<ctl name="LSM8 Mixer VA_CDC_DMA_TX_0" value="0" />
<ctl name="LSM1 Port" value="None" />
<ctl name="LSM2 Port" value="None" />
<ctl name="LSM3 Port" value="None" />
<ctl name="LSM4 Port" value="None" />
<ctl name="LSM5 Port" value="None" />
<ctl name="LSM6 Port" value="None" />
<ctl name="LSM7 Port" value="None" />
<ctl name="LSM8 Port" value="None" />
<ctl name="VA_CDC_DMA_TX_0 Channels" value="One" />
<ctl name="VA_CDC_DMA_TX_0 SampleRate" value="KHZ_16" />
<ctl name="VA_AIF1_CAP Mixer DEC0" value="0" />
<ctl name="VA_AIF1_CAP Mixer DEC1" value="0" />
<ctl name="VA_AIF1_CAP Mixer DEC2" value="0" />
<ctl name="VA_AIF1_CAP Mixer DEC3" value="0" />
<ctl name="VA_AIF1_CAP Mixer DEC4" value="0" />
<ctl name="VA_AIF1_CAP Mixer DEC5" value="0" />
<ctl name="VA_AIF1_CAP Mixer DEC6" value="0" />
<ctl name="VA_AIF1_CAP Mixer DEC7" value="0" />
<ctl name="VA DEC0 MUX" value="SWR_MIC" />
<ctl name="VA DEC1 MUX" value="SWR_MIC" />
<ctl name="VA DEC2 MUX" value="SWR_MIC" />
<ctl name="VA DEC3 MUX" value="SWR_MIC" />
<ctl name="VA DEC4 MUX" value="SWR_MIC" />
<ctl name="VA DEC5 MUX" value="SWR_MIC" />
<ctl name="VA DEC6 MUX" value="SWR_MIC" />
<ctl name="VA DEC7 MUX" value="SWR_MIC" />
<ctl name="VA DMIC MUX0" value="ZERO" />
<ctl name="VA DMIC MUX1" value="ZERO" />
<ctl name="VA DMIC MUX2" value="ZERO" />
<ctl name="VA DMIC MUX3" value="ZERO" />
<ctl name="VA DMIC MUX4" value="ZERO" />
<ctl name="VA DMIC MUX5" value="ZERO" />
<ctl name="VA DMIC MUX6" value="ZERO" />
<ctl name="VA DMIC MUX7" value="ZERO" />
<ctl name="VA SMIC MUX0" value="ZERO" />
<ctl name="VA SMIC MUX1" value="ZERO" />
<ctl name="VA SMIC MUX2" value="ZERO" />
<ctl name="VA SMIC MUX3" value="ZERO" />
<ctl name="VA SMIC MUX4" value="ZERO" />
<ctl name="VA SMIC MUX5" value="ZERO" />
<ctl name="VA SMIC MUX6" value="ZERO" />
<ctl name="VA SMIC MUX7" value="ZERO" />
<ctl name="ADC2 MUX" value="INP2" />
<ctl name="AUDIO_REF_EC_UL1 MUX" value="None"/>
<ctl name="EC Reference Channels" value="Zero"/>
<ctl name="EC Reference Bit Format" value="0"/>
<ctl name="EC Reference SampleRate" value="0"/>
<ctl name="ADC2_MIXER Switch" value="0" />
<ctl name="LPI Enable" value="0" />
<ctl name="ADC2 Volume" value="12" />
<ctl name="VA_DEC0 MODE" value="ADC_DEFAULT" />
<ctl name="ADC2_BCS Disable" value="0" />
<ctl name="SWR_MIC0 HIFI PortMap" value="ZERO" />
<ctl name="SWR_MIC1 HIFI PortMap" value="ZERO" />
<ctl name="SWR_MIC2 HIFI PortMap" value="ZERO" />
<ctl name="SWR_MIC3 HIFI PortMap" value="ZERO" />
<ctl name="SWR_MIC0 SWR_DMIC_VA_MIXER Switch" value="0" />
<ctl name="SWR_MIC1 SWR_DMIC_VA_MIXER Switch" value="0" />
<ctl name="SWR_MIC2 SWR_DMIC_VA_MIXER Switch" value="0" />
<ctl name="SWR_MIC3 SWR_DMIC_VA_MIXER Switch" value="0" />
<ctl name="SWR_MIC0 LP PortMap" value="ZERO" />
<ctl name="SWR_MIC1 LP PortMap" value="ZERO" />
<ctl name="SWR_MIC2 LP PortMap" value="ZERO" />
<ctl name="SWR_MIC3 LP PortMap" value="ZERO" />
<ctl name="ADC1 ChMap" value="ZERO" />
<ctl name="ADC2 ChMap" value="ZERO" />
<ctl name="ADC3 ChMap" value="ZERO" />
<ctl name="ADC4 ChMap" value="ZERO" />
<ctl name="HDR12 MUX" value="NO_HDR12" />
<ctl name="HDR34 MUX" value="NO_HDR34" />
<ctl name="TX0 MODE" value="ADC_NORMAL" />
<ctl name="TX1 MODE" value="ADC_NORMAL" />
<ctl name="TX2 MODE" value="ADC_NORMAL" />
<ctl name="TX3 MODE" value="ADC_NORMAL" />
<path name="listen-voice-wakeup-1">
<ctl name="LSM1 Mixer VA_CDC_DMA_TX_0" value="1" />
</path>
<path name="listen-voice-wakeup-2">
<ctl name="LSM2 Mixer VA_CDC_DMA_TX_0" value="1" />
</path>
<path name="listen-voice-wakeup-3">
<ctl name="LSM3 Mixer VA_CDC_DMA_TX_0" value="1" />
</path>
<path name="listen-voice-wakeup-4">
<ctl name="LSM4 Mixer VA_CDC_DMA_TX_0" value="1" />
</path>
<path name="listen-voice-wakeup-5">
<ctl name="LSM5 Mixer VA_CDC_DMA_TX_0" value="1" />
</path>
<path name="listen-voice-wakeup-6">
<ctl name="LSM6 Mixer VA_CDC_DMA_TX_0" value="1" />
</path>
<path name="listen-voice-wakeup-7">
<ctl name="LSM7 Mixer VA_CDC_DMA_TX_0" value="1" />
</path>
<path name="listen-voice-wakeup-8">
<ctl name="LSM8 Mixer VA_CDC_DMA_TX_0" value="1" />
</path>
<path name="listen-voice-wakeup-1 preproc">
<path name="listen-voice-wakeup-1" />
</path>
<path name="listen-voice-wakeup-2 preproc">
<path name="listen-voice-wakeup-2" />
</path>
<path name="listen-voice-wakeup-3 preproc">
<path name="listen-voice-wakeup-3" />
</path>
<path name="listen-voice-wakeup-4 preproc">
<path name="listen-voice-wakeup-4" />
</path>
<path name="listen-voice-wakeup-5 preproc">
<path name="listen-voice-wakeup-5" />
</path>
<path name="listen-voice-wakeup-6 preproc">
<path name="listen-voice-wakeup-6" />
</path>
<path name="listen-voice-wakeup-7 preproc">
<path name="listen-voice-wakeup-7" />
</path>
<path name="listen-voice-wakeup-8 preproc">
<path name="listen-voice-wakeup-8" />
</path>
<path name="listen-voice-wakeup-1 port">
<ctl name="LSM1 Port" value="VA_CDC_DMA_TX_0" />
<ctl name="LPI Enable" value="1" />
</path>
<path name="listen-voice-wakeup-2 port">
<ctl name="LSM2 Port" value="VA_CDC_DMA_TX_0" />
<ctl name="LPI Enable" value="1" />
</path>
<path name="listen-voice-wakeup-3 port">
<ctl name="LSM3 Port" value="VA_CDC_DMA_TX_0" />
<ctl name="LPI Enable" value="1" />
</path>
<path name="listen-voice-wakeup-4 port">
<ctl name="LSM4 Port" value="VA_CDC_DMA_TX_0" />
<ctl name="LPI Enable" value="1" />
</path>
<path name="listen-voice-wakeup-5 port">
<ctl name="LSM5 Port" value="VA_CDC_DMA_TX_0" />
<ctl name="LPI Enable" value="1" />
</path>
<path name="listen-voice-wakeup-6 port">
<ctl name="LSM6 Port" value="VA_CDC_DMA_TX_0" />
<ctl name="LPI Enable" value="1" />
</path>
<path name="listen-voice-wakeup-7 port">
<ctl name="LSM7 Port" value="VA_CDC_DMA_TX_0" />
<ctl name="LPI Enable" value="1" />
</path>
<path name="listen-voice-wakeup-8 port">
<ctl name="LSM8 Port" value="VA_CDC_DMA_TX_0" />
<ctl name="LPI Enable" value="1" />
</path>
<path name="listen-voice-wakeup-1 preproc port">
<ctl name="LSM1 Port" value="ADM_LSM_TX" />
<ctl name="LPI Enable" value="0" />
</path>
<path name="listen-voice-wakeup-2 preproc port">
<ctl name="LSM2 Port" value="ADM_LSM_TX" />
<ctl name="LPI Enable" value="0" />
</path>
<path name="listen-voice-wakeup-3 preproc port">
<ctl name="LSM3 Port" value="ADM_LSM_TX" />
<ctl name="LPI Enable" value="0" />
</path>
<path name="listen-voice-wakeup-4 preproc port">
<ctl name="LSM4 Port" value="ADM_LSM_TX" />
<ctl name="LPI Enable" value="0" />
</path>
<path name="listen-voice-wakeup-5 preproc port">
<ctl name="LSM5 Port" value="ADM_LSM_TX" />
<ctl name="LPI Enable" value="0" />
</path>
<path name="listen-voice-wakeup-6 preproc port">
<ctl name="LSM6 Port" value="ADM_LSM_TX" />
<ctl name="LPI Enable" value="0" />
</path>
<path name="listen-voice-wakeup-7 preproc port">
<ctl name="LSM7 Port" value="ADM_LSM_TX" />
<ctl name="LPI Enable" value="0" />
</path>
<path name="listen-voice-wakeup-8 preproc port">
<ctl name="LSM8 Port" value="ADM_LSM_TX" />
<ctl name="LPI Enable" value="0" />
</path>
<path name="listen-ape-handset-mic">
<ctl name="VA_CDC_DMA_TX_0 Channels" value="One" />
<ctl name="VA_AIF1_CAP Mixer DEC0" value="1" />
<ctl name="VA DEC0 MUX" value="SWR_MIC" />
<ctl name="VA_DEC0 MODE" value="ADC_LOW_PWR" />
<ctl name="TX0 MODE" value="ADC_LP" />
<ctl name="VA SMIC MUX0" value="SWR_MIC4" />
<ctl name="ADC1 ChMap" value="SWRM_TX2_CH1" />
<ctl name="ADC1_MIXER Switch" value="1" />
</path>
<path name="listen-ape-handset-mic-preproc">
<path name="listen-ape-handset-mic" />
</path>
<path name="listen-ape-handset-dmic">
<ctl name="VA_CDC_DMA_TX_0 Channels" value="Two" />
<ctl name="VA_AIF1_CAP Mixer DEC0" value="1" />
<ctl name="VA_AIF1_CAP Mixer DEC1" value="1" />
<ctl name="VA DEC0 MUX" value="SWR_MIC" />
<ctl name="VA DEC1 MUX" value="SWR_MIC" />
<ctl name="VA_DEC0 MODE" value="ADC_LOW_PWR" />
<ctl name="VA_DEC1 MODE" value="ADC_LOW_PWR" />
<ctl name="TX0 MODE" value="ADC_LP" />
<ctl name="TX1 MODE" value="ADC_LP" />
<ctl name="VA SMIC MUX0" value="SWR_MIC4" />
<ctl name="VA SMIC MUX1" value="SWR_MIC6" />
<ctl name="ADC2 ChMap" value="SWRM_TX2_CH3" />
<ctl name="ADC1 ChMap" value="SWRM_TX2_CH1" />
<ctl name="ADC2 MUX" value="INP3" />
<ctl name="VA_DEC0 Volume" value="84" />
<ctl name="VA_DEC1 Volume" value="84" />
<ctl name="ADC1_MIXER Switch" value="1" />
<ctl name="ADC2_MIXER Switch" value="1" />
</path>
<path name="listen-ape-handset-tmic">
</path>
<path name="listen-ape-handset-qmic">
</path>
<path name="listen-ape-headset-mic">
<ctl name="VA_AIF1_CAP Mixer DEC0" value="1" />
<ctl name="VA DEC0 MUX" value="SWR_MIC" />
<ctl name="VA SMIC MUX0" value="SWR_MIC5" />
<ctl name="TX1 MODE" value="ADC_LP" />
<ctl name="ADC2 MUX" value="INP2" />
<ctl name="VA_DEC0 MODE" value="ADC_LOW_PWR" />
<ctl name="ADC2 ChMap" value="SWRM_TX2_CH2" />
<ctl name="HDR12 MUX" value="NO_HDR12" />
<ctl name="ADC2_BCS Disable" value="1" />
<ctl name="ADC2_MIXER Switch" value="1" />
</path>
<path name="echo-reference">
<ctl name="AUDIO_REF_EC_UL1 MUX" value="PRI_MI2S_TX"/>
<ctl name="EC Reference Channels" value="One"/>
<ctl name="EC Reference Bit Format" value="S16_LE"/>
<ctl name="EC Reference SampleRate" value="48000"/>
</path>
<path name="echo-reference headphones">
<ctl name="AUDIO_REF_EC_UL1 MUX" value="RX_CDC_DMA_RX_0" />
<ctl name="EC Reference Channels" value="Two"/>
<ctl name="EC Reference Bit Format" value="S16_LE"/>
<ctl name="EC Reference SampleRate" value="48000"/>
</path>
<path name="echo-reference headset">
<path name="echo-reference headphones" />
</path>
<path name="echo-reference a2dp">
<ctl name="AUDIO_REF_EC_UL1 MUX" value="SLIM_7_RX"/>
<ctl name="EC Reference Channels" value="Two"/>
<ctl name="EC Reference Bit Format" value="S16_LE"/>
<ctl name="EC Reference SampleRate" value="48000"/>
</path>
</mixer>

View file

@ -0,0 +1,471 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--- Copyright (c) 2013-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, -->
<!--- WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE -->
<!--- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN -->
<!--- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -->
<sound_trigger_platform_info>
<param version="0x0106" /> <!-- this must be the first param -->
<!--- Version History: -->
<!--- 0x0101: Legacy version. -->
<!--- 0x0102: Includes acdb_ids param with the gcs_usecase tag. This matches -->
<!--- the gcs_usecase with the acdb device that uses it. -->
<!--- 0x0103: app_type and in_channels added to <lsm usecase> and out_channels -->
<!--- added to <adm_config> -->
<!--- 0x0104: instance id support for both WDSP<CPE> and ADSP lsm usecases -->
<!--- 0x0105: Select <lsm_usecase> based on capture device -->
<!--- 0x0106: Add module_params tag to support multiple module and param ids -->
<!--- per <lsm_usecase> -->
<common_config>
<param implementer_version="0x0102" />
<param max_ape_sessions="8" />
<param enable_failure_detection="false" />
<param support_device_switch="true" />
<param transit_to_non_lpi_on_battery_charging="false" />
<!-- Below backend params must match with port used in mixer path file -->
<!-- param used to configure backend sample rate, format and channels -->
<param backend_port_name="VA_CDC_DMA_TX_0" />
<!-- Param used to match and obtain device backend index -->
<param backend_dai_name="VA_CDC_DMA_TX_0" />
<!-- Param used to indicate if SVA has dedicated SLIM ports -->
<param dedicated_sva_path="false" />
<param dedicated_headset_path="false" />
<param platform_lpi_enable="true" />
<param enable_debug_dumps="false" />
<param support_non_lpi_without_ec="false" />
<param concurrent_capture="true" />
<param concurrent_voip_call="false" />
<param concurrent_voice_call="false" />
</common_config>
<acdb_ids>
<param DEVICE_HANDSET_MIC_APE="100" />
<param DEVICE_HANDSET_MIC_PP_APE="135" />
<param DEVICE_HANDSET_DMIC_APE="149" />
<param DEVICE_HANDSET_DMIC_LPI_APE="179" />
<param DEVICE_HANDSET_TMIC_APE="157" />
<param DEVICE_HANDSET_TMIC_LPI_APE="180" />
<param DEVICE_HANDSET_QMIC_APE="137" />
<param DEVICE_HANDSET_QMIC_LPI_APE="181" />
<param DEVICE_HEADSET_MIC_APE="141" />
<param DEVICE_HEADSET_MIC_APE_LPI="182" />
</acdb_ids>
<!-- Multiple sound_model_config tags can be listed, each with unique -->
<!-- vendor_uuid. The below tag represents QTI SVA engine sound model -->
<!-- configuration. ISV must use their own unique vendor_uuid. -->
<!-- QTI SVA -->
<sound_model_config>
<param vendor_uuid="68ab2d40-e860-11e3-95ef-0002a5d5c51b" />
<param execution_type="ADSP" />
<param merge_first_stage_sound_models="false"/>
<param max_ape_phrases="20" />
<param max_ape_users="10" />
<!-- Profile specific data which the algorithm can support -->
<param sample_rate="16000" />
<param bit_width="16" />
<param out_channels="1"/> <!-- Module output channels -->
<param dam_token_id="1"/>
<arm_ss_usecase>
<!-- Options are "KEYWORD_DETECTION", "USER_VERIFICATION", "CUSTOM_DETECTION" -->
<param sm_detection_type= "KEYWORD_DETECTION" />
<param sm_id="0x2" />
<param module_lib="libcapiv2svacnn.so"/>
<param sample_rate="16000"/>
<param bit_wdith="16"/>
<param channel_count="1"/>
</arm_ss_usecase>
<arm_ss_usecase>
<param sm_detection_type= "USER_VERIFICATION" />
<param sm_id="0x4" />
<param module_lib="libcapiv2vop.so"/>
<param sample_rate="16000"/>
<param bit_wdith="16"/>
<param channel_count="1"/>
</arm_ss_usecase>
<arm_ss_usecase>
<param sm_detection_type= "KEYWORD_DETECTION" />
<param sm_id="0x8" />
<param module_lib="libcapiv2svarnn.so"/>
<param sample_rate="16000"/>
<param bit_wdith="16"/>
<param channel_count="1"/>
</arm_ss_usecase>
<!-- Module and param ids with which the algorithm is integrated
in non-graphite firmware (note these must come after gcs params)
Extends flexibility to have different ids based on execution type.
valid execution_type values: "WDSP" "ADSP" -->
<lsm_usecase>
<param capture_device="HANDSET" />
<!-- adm_cfg_profile should match with the one defined under adm_config -->
<!-- Set it to NONE if LSM directly connects to AFE -->
<param adm_cfg_profile="FFECNS" />
<!-- fluence_type: "FLUENCE_MIC", "FLUENCE_DMIC", "FLUENCE_TMIC" -->
<!-- "FLUENCE_QMIC". Param value is valid when adm_cfg_profile -->
<!-- is FFECNS -->
<param fluence_type="FLUENCE_DMIC" />
<param execution_mode="ADSP" />
<!-- lpi_mode: "NON_LPI_BARGE_IN", "NON_LPI", "LPI" -->
<!-- NON_LPI_BARGE_IN: Default non-LPI mode type. lsm_usecase -->
<!-- must be present with this mode type to handle barge-in. -->
<!-- NON_LPI: If another lsm_usecase is present with this mode -->
<!-- type, it will be used for non-LPI non-barge-in usecases. -->
<!-- If not present, NON_LPI_BARGE_IN mode type will be used. -->
<!-- LPI: This mode type will be used for LPI usecases. -->
<param lpi_mode="NON_LPI_BARGE_IN" />
<param app_type="2" /> <!-- app type used in ACDB -->
<param pdk5_app_type="5" />
<param in_channels="2"/> <!-- Module input channels -->
<module_params>
<param module_type="GMM" />
<param load_sound_model_ids="0x00012C1C, 0x0, 0x00012C14" />
<param unload_sound_model_ids="0x00012C1C, 0x0, 0x00012C15" />
<param confidence_levels_ids="0x00012C1C, 0x0, 0x00012C07" />
<param operation_mode_ids="0x00012C1C, 0x0, 0x00012C02" />
<param polling_enable_ids="0x00012C1C, 0x0, 0x00012C1B" />
<param custom_config_ids="0x00012C1C, 0x0, 0x00012C20" />
<param det_event_type_ids="0x00012C1C, 0x0, 0x00012C2C" />
<param lab_dam_cfg_ids="0x00012C08, 0x0, 0x000102C4" />
</module_params>
<module_params>
<param module_type="PDK5" />
<param load_sound_model_ids="0x00012C35, 0x0, 0x00012C36" />
<param unload_sound_model_ids="0x00012C35, 0x0, 0x00012C37" />
<param confidence_levels_ids="0x00012C35, 0x0, 0x00012C38" />
<param custom_config_ids="0x00012C35, 0x0, 0x00012C20" />
<param det_event_type_ids="0x00012C35, 0x0, 0x00012C2C" />
<param lab_dam_cfg_ids="0x00012C08, 0x0, 0x000102C4" />
</module_params>
</lsm_usecase>
<lsm_usecase>
<param capture_device="HANDSET" />
<!-- adm_cfg_profile should match with the one defined under adm_config -->
<!-- Set it to NONE if LSM directly connects to AFE -->
<param adm_cfg_profile="FFECNS" />
<!-- fluence_type: "FLUENCE_MIC", "FLUENCE_DMIC", "FLUENCE_TMIC" -->
<!-- "FLUENCE_QMIC". Param value is valid when adm_cfg_profile -->
<!-- is FFECNS -->
<param fluence_type="FLUENCE_DMIC" />
<param execution_mode="ADSP" />
<!-- lpi_mode: "NON_LPI_BARGE_IN", "NON_LPI", "LPI" -->
<!-- NON_LPI_BARGE_IN: Default non-LPI mode type. lsm_usecase -->
<!-- must be present with this mode type to handle barge-in. -->
<!-- NON_LPI: If another lsm_usecase is present with this mode -->
<!-- type, it will be used for non-LPI non-barge-in usecases. -->
<!-- If not present, NON_LPI_BARGE_IN mode type will be used. -->
<!-- LPI: This mode type will be used for LPI usecases. -->
<param lpi_mode="LPI" />
<param app_type="2" /> <!-- app type used in ACDB -->
<param pdk5_app_type="5" />
<param in_channels="1"/> <!-- Module input channels -->
<module_params>
<param module_type="GMM" />
<param load_sound_model_ids="0x00012C1C, 0x0, 0x00012C14" />
<param unload_sound_model_ids="0x00012C1C, 0x0, 0x00012C15" />
<param confidence_levels_ids="0x00012C1C, 0x0, 0x00012C07" />
<param operation_mode_ids="0x00012C1C, 0x0, 0x00012C02" />
<param polling_enable_ids="0x00012C1C, 0x0, 0x00012C1B" />
<param custom_config_ids="0x00012C1C, 0x0, 0x00012C20" />
<param det_event_type_ids="0x00012C1C, 0x0, 0x00012C2C" />
<param lab_dam_cfg_ids="0x00012C08, 0x0, 0x000102C4" />
</module_params>
<module_params>
<param module_type="PDK5" />
<param load_sound_model_ids="0x00012C35, 0x0, 0x00012C36" />
<param unload_sound_model_ids="0x00012C35, 0x0, 0x00012C37" />
<param confidence_levels_ids="0x00012C35, 0x0, 0x00012C38" />
<param custom_config_ids="0x00012C35, 0x0, 0x00012C20" />
<param det_event_type_ids="0x00012C35, 0x0, 0x00012C2C" />
<param lab_dam_cfg_ids="0x00012C08, 0x0, 0x000102C4" />
</module_params>
</lsm_usecase>
<lsm_usecase>
<param capture_device="HEADSET" />
<param adm_cfg_profile="FFECNS" />
<param fluence_type="FLUENCE_MIC" />
<param execution_mode="ADSP" />
<param app_type="2" /> <!-- app type used in ACDB -->
<param pdk5_app_type="5" />
<param in_channels="1"/> <!-- Module input channels -->
<module_params>
<param module_type="GMM" />
<param load_sound_model_ids="0x00012C1C, 0x0, 0x00012C14" />
<param unload_sound_model_ids="0x00012C1C, 0x0, 0x00012C15" />
<param confidence_levels_ids="0x00012C1C, 0x0, 0x00012C07" />
<param operation_mode_ids="0x00012C1C, 0x0, 0x00012C02" />
<param polling_enable_ids="0x00012C1C, 0x0, 0x00012C1B" />
<param custom_config_ids="0x00012C1C, 0x0, 0x00012C20" />
<param det_event_type_ids="0x00012C1C, 0x0, 0x00012C2C" />
<param lab_dam_cfg_ids="0x00012C08, 0x0, 0x000102C4" />
</module_params>
<module_params>
<param module_type="PDK5" />
<param load_sound_model_ids="0x00012C35, 0x0, 0x00012C36" />
<param unload_sound_model_ids="0x00012C35, 0x0, 0x00012C37" />
<param confidence_levels_ids="0x00012C35, 0x0, 0x00012C38" />
<param custom_config_ids="0x00012C35, 0x0, 0x00012C20" />
<param det_event_type_ids="0x00012C35, 0x0, 0x00012C2C" />
<param lab_dam_cfg_ids="0x00012C08, 0x0, 0x000102C4" />
</module_params>
</lsm_usecase>
<!-- format: "ADPCM_packet" or "PCM_packet" !-->
<!-- transfer_mode: "FTRT" or "RT" -->
<!-- kw_duration is in milli seconds. It is valid only for FTRT
transfer mode -->
<param capture_keyword="PCM_packet, RT, 2000" />
<param client_capture_read_delay="2000" />
</sound_model_config>
<!-- QTI Music Detection !-->
<sound_model_config>
<param vendor_uuid="876c1b46-9d4d-40cc-a4fd-4d5ec7a80e47" />
<param execution_type="ADSP" />
<param max_ape_phrases="1" />
<param max_ape_users="1" />
<!-- Profile specific data which the algorithm can support -->
<param sample_rate="16000" />
<param bit_width="16" />
<param out_channels="1"/> <!-- Module output channels -->
<!-- Module and param ids with which the algorithm is integrated
in non-graphite firmware (note these must come after gcs params)
Extends flexibility to have different ids based on execution type.
valid execution_type values: only "ADSP" -->
<lsm_usecase>
<param capture_device="HANDSET" />
<!-- adm_cfg_profile should match with the one defined under adm_config -->
<!-- Set it to NONE if LSM directly connects to AFE -->
<param adm_cfg_profile="DEFAULT" />
<!-- fluence_type: "FLUENCE_MIC", "FLUENCE_DMIC", "FLUENCE_TMIC" -->
<!-- "FLUENCE_QMIC". Param value is valid when adm_cfg_profile -->
<!-- is FFECNS -->
<param fluence_type="NONE" />
<param execution_mode="ADSP" />
<param app_type="4" /> <!-- app type for MD used in ACDB -->
<param in_channels="1"/> <!-- Module input channels -->
<module_params>
<param load_sound_model_ids="0x00012C22, 0x0, 0x00012C14" />
<param unload_sound_model_ids="0x00012C22, 0x0, 0x00012C15" />
<param confidence_levels_ids="0x00012C22, 0x0, 0x00012C07" />
<param det_event_type_ids="0x00012C22, 0x0, 0x00012C2C" />
<param custom_config_ids="0x00012C22, 0x0, 0x00012C30" />
</module_params>
</lsm_usecase>
<lsm_usecase>
<param capture_device="HEADSET" />
<param adm_cfg_profile="DEFAULT" />
<param fluence_type="NONE" />
<param execution_mode="ADSP" />
<param app_type="4" /> <!-- app type for MD used in ACDB -->
<param in_channels="1"/> <!-- Module input channels -->
<module_params>
<param load_sound_model_ids="0x00012C22, 0x0, 0x00012C14" />
<param unload_sound_model_ids="0x00012C22, 0x0, 0x00012C15" />
<param confidence_levels_ids="0x00012C22, 0x0, 0x00012C07" />
<param det_event_type_ids="0x00012C22, 0x0, 0x00012C2C" />
<param custom_config_ids="0x00012C22, 0x0, 0x00012C30" />
</module_params>
</lsm_usecase>
<!-- format: "ADPCM_packet" or "PCM_packet" !-->
<!-- transfer_mode: "FTRT" or "RT" -->
<!-- kw_duration is in milli seconds. It is valid only for FTRT
transfer mode -->
<param capture_keyword="PCM_packet, FTRT, 1500" />
<param client_capture_read_delay="2000" />
</sound_model_config>
<!-- Google Hotword -->
<sound_model_config>
<param vendor_uuid="7038ddc8-30f2-11e6-b0ac-40a8f03d3f15" />
<param execution_type="ADSP" />
<param max_ape_phrases="1" />
<param max_ape_users="1" />
<!-- Profile specific data which the algorithm can support -->
<param sample_rate="16000" />
<param bit_width="16" />
<param out_channels="1"/> <!-- Module output channels -->
<param get_module_version="true" />
<lsm_usecase>
<param capture_device="HANDSET" />
<!-- adm_cfg_profile should match with the one defined under adm_config -->
<!-- Set it to NONE if LSM directly connects to AFE -->
<param adm_cfg_profile="DEFAULT" />
<!-- fluence_type: "FLUENCE_MIC", "FLUENCE_DMIC", "FLUENCE_TMIC" -->
<!-- "FLUENCE_QMIC". Param value is valid when adm_cfg_profile -->
<!-- is FFECNS -->
<param fluence_type="NONE" />
<param execution_mode="ADSP" />
<!-- lpi_mode: "NON_LPI_BARGE_IN", "NON_LPI", "LPI" -->
<!-- NON_LPI_BARGE_IN: Default non-LPI mode type. lsm_usecase -->
<!-- must be present with this mode type to handle barge-in. -->
<!-- NON_LPI: If another lsm_usecase is present with this mode -->
<!-- type, it will be used for non-LPI non-barge-in usecases. -->
<!-- If not present, NON_LPI_BARGE_IN mode type will be used. -->
<!-- LPI: This mode type will be used for LPI usecases. -->
<param lpi_mode="NON_LPI_BARGE_IN" />
<param app_type="3" /> <!-- app type used in ACDB -->
<param in_channels="1"/> <!-- Module input channels -->
<module_params>
<param load_sound_model_ids="0x18000001, 0x0, 0x00012C14" />
<param unload_sound_model_ids="0x18000001, 0x0, 0x00012C15" />
<param confidence_levels_ids="0x18000001, 0x0, 0x00012C07" />
<param operation_mode_ids="0x18000001, 0x0, 0x00012C02" />
<param polling_enable_ids="0x18000001, 0x0, 0x00012C1B" />
<param custom_config_ids="0x18000001, 0x0, 0x00012C20" />
<param version_ids="0x18000001, 0x0, 0x18000101" />
</module_params>
</lsm_usecase>
<lsm_usecase>
<param capture_device="HANDSET" />
<!-- adm_cfg_profile should match with the one defined under adm_config -->
<!-- Set it to NONE if LSM directly connects to AFE -->
<param adm_cfg_profile="DEFAULT" />
<!-- fluence_type: "FLUENCE_MIC", "FLUENCE_DMIC", "FLUENCE_TMIC" -->
<!-- "FLUENCE_QMIC". Param value is valid when adm_cfg_profile -->
<!-- is FFECNS -->
<param fluence_type="NONE" />
<param execution_mode="ADSP" />
<!-- lpi_mode: "NON_LPI_BARGE_IN", "NON_LPI", "LPI" -->
<!-- NON_LPI_BARGE_IN: Default non-LPI mode type. lsm_usecase -->
<!-- must be present with this mode type to handle barge-in. -->
<!-- NON_LPI: If another lsm_usecase is present with this mode -->
<!-- type, it will be used for non-LPI non-barge-in usecases. -->
<!-- If not present, NON_LPI_BARGE_IN mode type will be used. -->
<!-- LPI: This mode type will be used for LPI usecases. -->
<param lpi_mode="LPI" />
<param app_type="3" /> <!-- app type used in ACDB -->
<param in_channels="1"/> <!-- Module input channels -->
<module_params>
<param load_sound_model_ids="0x18000001, 0x0, 0x00012C14" />
<param unload_sound_model_ids="0x18000001, 0x0, 0x00012C15" />
<param confidence_levels_ids="0x18000001, 0x0, 0x00012C07" />
<param operation_mode_ids="0x18000001, 0x0, 0x00012C02" />
<param polling_enable_ids="0x18000001, 0x0, 0x00012C1B" />
<param custom_config_ids="0x18000001, 0x0, 0x00012C20" />
<param version_ids="0x18000001, 0x0, 0x18000101" />
</module_params>
</lsm_usecase>
<lsm_usecase>
<param capture_device="HEADSET" />
<param adm_cfg_profile="DEFAULT" />
<param fluence_type="NONE" />
<param execution_mode="ADSP" />
<param app_type="3" /> <!-- app type used in ACDB -->
<param in_channels="1"/> <!-- Module input channels -->
<module_params>
<param load_sound_model_ids="0x18000001, 0x0, 0x00012C14" />
<param unload_sound_model_ids="0x18000001, 0x0, 0x00012C15" />
<param confidence_levels_ids="0x18000001, 0x0, 0x00012C07" />
<param operation_mode_ids="0x18000001, 0x0, 0x00012C02" />
<param polling_enable_ids="0x18000001, 0x0, 0x00012C1B" />
<param custom_config_ids="0x18000001, 0x0, 0x00012C20" />
<param version_ids="0x18000001, 0x0, 0x18000101" />
</module_params>
</lsm_usecase>
<!-- format: "ADPCM_packet" or "PCM_packet" !-->
<!-- transfer_mode: "FTRT" or "RT" -->
<!-- kw_duration is in milli seconds. It is valid only for FTRT
transfer mode -->
<param capture_keyword="PCM_raw, FTRT, 2000" />
<param client_capture_read_delay="2000" />
</sound_model_config>
<!-- Google Music Detection -->
<sound_model_config>
<param vendor_uuid="9f6ad62a-1f0b-11e7-87c5-40a8f03d3f15" />
<param execution_type="ADSP" />
<param max_ape_phrases="1" />
<param max_ape_users="1" />
<!-- Profile specific data which the algorithm can support -->
<param sample_rate="16000" />
<param bit_width="16" />
<param out_channels="1"/> <!-- Module output channels -->
<lsm_usecase>
<param capture_device="HANDSET" />
<!-- adm_cfg_profile should match with the one defined under adm_config -->
<!-- Set it to NONE if LSM directly connects to AFE -->
<param adm_cfg_profile="DEFAULT" />
<!-- fluence_type: "FLUENCE_MIC", "FLUENCE_DMIC", "FLUENCE_TMIC" -->
<!-- "FLUENCE_QMIC". Param value is valid when adm_cfg_profile -->
<!-- is FFECNS -->
<param fluence_type="NONE" />
<param execution_mode="ADSP" />
<param app_type="3" /> <!-- app type used in ACDB -->
<param in_channels="1"/> <!-- Module input channels -->
<module_params>
<param load_sound_model_ids="0x18000001, 0x0, 0x00012C14" />
<param unload_sound_model_ids="0x18000001, 0x0, 0x00012C15" />
<param confidence_levels_ids="0x18000001, 0x0, 0x00012C07" />
<param operation_mode_ids="0x18000001, 0x0, 0x00012C02" />
<param polling_enable_ids="0x18000001, 0x0, 0x00012C1B" />
<param custom_config_ids="0x18000001, 0x0, 0x00012C20" />
</module_params>
</lsm_usecase>
<lsm_usecase>
<param capture_device="HEADSET" />
<param adm_cfg_profile="DEFAULT" />
<param fluence_type="NONE" />
<param execution_mode="ADSP" />
<param app_type="3" /> <!-- app type used in ACDB -->
<param in_channels="1"/> <!-- Module input channels -->
<module_params>
<param load_sound_model_ids="0x18000001, 0x0, 0x00012C14" />
<param unload_sound_model_ids="0x18000001, 0x0, 0x00012C15" />
<param confidence_levels_ids="0x18000001, 0x0, 0x00012C07" />
<param operation_mode_ids="0x18000001, 0x0, 0x00012C02" />
<param polling_enable_ids="0x18000001, 0x0, 0x00012C1B" />
<param custom_config_ids="0x18000001, 0x0, 0x00012C20" />
</module_params>
</lsm_usecase>
<!-- format: "ADPCM_packet" or "PCM_packet" !-->
<!-- transfer_mode: "FTRT" or "RT" -->
<!-- kw_duration is in milli seconds. It is valid only for FTRT
transfer mode -->
<param capture_keyword="PCM_raw, FTRT, 5000" />
<param client_capture_read_delay="2000" />
</sound_model_config>
<!-- Multiple adm_config tags can be listed, each with unique profile name. -->
<!-- app_type to match corresponding value from ACDB -->
<adm_config>
<param adm_cfg_profile="FFECNS" />
<param app_type="69947" />
<param sample_rate="16000" />
<param bit_width="16" />
<param out_channels="2"/>
</adm_config>
<adm_config>
<param adm_cfg_profile="DEFAULT" />
<param app_type="69938" />
<param sample_rate="16000" />
<param bit_width="16" />
<param out_channels="1"/>
</adm_config>
</sound_trigger_platform_info>

View file

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

View file

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

View file

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

View file

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

View file

@ -1,18 +1,13 @@
# #
# Copyright (C) 2022 The LineageOS Project # Copyright (C) 2022-2023 The LineageOS Project
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
# You may obtain a copy of the License at # You may obtain a copy of the License at
# #
# http://www.apache.org/licenses/LICENSE-2.0
# # A/B
# Unless required by applicable law or agreed to in writing, software TARGET_IS_VAB := true
# 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.
#
# Boot animation # Boot animation
TARGET_SCREEN_HEIGHT := 2400 TARGET_SCREEN_HEIGHT := 2400
@ -36,15 +31,18 @@ DEVICE_PACKAGE_OVERLAYS += \
$(LOCAL_PATH)/overlay-lineage $(LOCAL_PATH)/overlay-lineage
PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \
FrameworksResBerlna \ FrameworksResXpeng \
LineageSystemUIBerlna \ LineageSystemUIXpeng \
SettingsProviderResBerlna \ SettingsProviderResXpeng \
SystemUIResBerlna SystemUIResXpeng
# Audio # Audio
PRODUCT_COPY_FILES += \ PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/audio/sku_yupik/audio_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio/sku_yupik/audio_platform_info.xml \ $(LOCAL_PATH)/audio/sku_lahaina/audio_io_policy.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio/sku_lahaina/audio_io_policy.conf \
$(LOCAL_PATH)/audio/sku_yupik/mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio/sku_yupik/mixer_paths.xml \ $(LOCAL_PATH)/audio/sku_lahaina/audio_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio/sku_lahaina/audio_platform_info.xml \
$(LOCAL_PATH)/audio/sku_lahaina/mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio/sku_lahaina/mixer_paths.xml \
$(LOCAL_PATH)/audio/sku_lahaina/sound_trigger_mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio/sku_lahaina/sound_trigger_mixer_paths.xml \
$(LOCAL_PATH)/audio/sku_lahaina/sound_trigger_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio/sku_lahaina/sound_trigger_platform_info.xml \
$(LOCAL_PATH)/audio/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \ $(LOCAL_PATH)/audio/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \
$(LOCAL_PATH)/audio/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml \ $(LOCAL_PATH)/audio/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml \
$(LOCAL_PATH)/audio/audio_ext_spkr.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_ext_spkr.conf \ $(LOCAL_PATH)/audio/audio_ext_spkr.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_ext_spkr.conf \
@ -53,7 +51,7 @@ PRODUCT_COPY_FILES += \
# Fingerprint # Fingerprint
PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \
android.hardware.biometrics.fingerprint@2.1-service.berlna \ android.hardware.biometrics.fingerprint@2.1-service.xpeng \
com.motorola.hardware.biometric.fingerprint@1.0.vendor com.motorola.hardware.biometric.fingerprint@1.0.vendor
$(foreach f,$(wildcard $(LOCAL_PATH)/configs/idc/*.idc),\ $(foreach f,$(wildcard $(LOCAL_PATH)/configs/idc/*.idc),\
@ -71,22 +69,20 @@ $(foreach f,$(wildcard $(LOCAL_PATH)/rootdir/bin/*.sh),\
# Init (recovery) # Init (recovery)
PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \
init.recovery.berlna.rc \ init.recovery.xpeng.rc \
load_touch.sh load_touch.sh
# Lineage Touch # Lineage Touch
PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \
vendor.lineage.touch@1.0-service.berlna vendor.lineage.touch@1.0-service.xpeng
# Media # Media
PRODUCT_COPY_FILES += \ PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/media/media_profiles_vendor.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_vendor.xml \ $(LOCAL_PATH)/media/media_profiles_vendor.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_vendor.xml
$(LOCAL_PATH)/media/media_profiles_yupik_v0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_yupik_v0.xml \
$(LOCAL_PATH)/media/media_profiles_yupik_v1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_yupik_v1.xml
# Lights # Lights
PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \
android.hardware.lights-service.berlna android.hardware.lights-service.xpeng
# NFC # NFC
PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \
@ -106,10 +102,10 @@ PRODUCT_COPY_FILES += \
# Sensors # Sensors
PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \
sensors.berlna sensors.xpeng
PRODUCT_COPY_FILES += \ PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/sensors/hals.conf:$(TARGET_COPY_OUT_VENDOR)/etc/sensors/hals.conf $(LOCAL_PATH)/sensors/hals.conf:$(TARGET_COPY_OUT_VENDOR)/etc/sensors/hals.conf
# Inherit from vendor blobs # Inherit from vendor blobs
$(call inherit-product, vendor/motorola/berlna/berlna-vendor.mk) $(call inherit-product, vendor/motorola/xpeng/xpeng-vendor.mk)

View file

@ -1,7 +1,7 @@
#!/bin/bash #!/bin/bash
# #
# Copyright (C) 2016 The CyanogenMod Project # Copyright (C) 2016 The CyanogenMod Project
# Copyright (C) 2017-2020 The LineageOS Project # Copyright (C) 2017-2023 The LineageOS Project
# #
# SPDX-License-Identifier: Apache-2.0 # SPDX-License-Identifier: Apache-2.0
# #
@ -14,7 +14,7 @@ fi
set -e set -e
export DEVICE=berlna export DEVICE=xpeng
export DEVICE_COMMON=sm7325-common export DEVICE_COMMON=sm7325-common
export VENDOR=motorola export VENDOR=motorola

View file

@ -1,21 +1,12 @@
// //
// Copyright (C) 2017-2018 The LineageOS Project // Copyright (C) 2017-2023 The LineageOS Project
// //
// Licensed under the Apache License, Version 2.0 (the "License"); // SPDX-License-Identifier: Apache-2.0
// 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.
cc_binary { cc_binary {
name: "android.hardware.biometrics.fingerprint@2.1-service.berlna", name: "android.hardware.biometrics.fingerprint@2.1-service.xpeng",
vintf_fragments: ["android.hardware.biometrics.fingerprint@2.1-service.berlna.xml"], vintf_fragments: ["android.hardware.biometrics.fingerprint@2.1-service.xpeng.xml"],
init_rc: ["android.hardware.biometrics.fingerprint@2.1-service.berlna.rc"], init_rc: ["android.hardware.biometrics.fingerprint@2.1-service.xpeng.rc"],
defaults: ["hidl_defaults"], defaults: ["hidl_defaults"],
relative_install_path: "hw", relative_install_path: "hw",
srcs: ["service.cpp", "BiometricsFingerprint.cpp"], srcs: ["service.cpp", "BiometricsFingerprint.cpp"],

View file

@ -1,21 +1,11 @@
/* /*
* Copyright (C) 2017 The Android Open Source Project * Copyright (C) 2017 The Android Open Source Project
* Copyright (C) 2018-2020 The LineageOS Project * Copyright (C) 2018-2023 The LineageOS Project
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * SPDX-License-Identifier: Apache-2.0
* 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.
*/ */
#define LOG_TAG "android.hardware.biometrics.fingerprint@2.1-service.berlna" #define LOG_TAG "android.hardware.biometrics.fingerprint@2.1-service.xpeng"
#include "BiometricsFingerprint.h" #include "BiometricsFingerprint.h"

View file

@ -1,4 +1,4 @@
service vendor.fps_hal /vendor/bin/hw/android.hardware.biometrics.fingerprint@2.1-service.berlna service vendor.fps_hal /vendor/bin/hw/android.hardware.biometrics.fingerprint@2.1-service.xpeng
interface android.hardware.biometrics.fingerprint@2.1::IBiometricsFingerprint default interface android.hardware.biometrics.fingerprint@2.1::IBiometricsFingerprint default
oneshot oneshot
# "class hal" causes a race condition on some devices due to files created # "class hal" causes a race condition on some devices due to files created

View file

@ -1,20 +1,10 @@
/* /*
* Copyright (C) 2017 The Android Open Source Project * Copyright (C) 2017 The Android Open Source Project
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * SPDX-License-Identifier: Apache-2.0
* 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.
*/ */
#define LOG_TAG "android.hardware.biometrics.fingerprint@2.1-service.berlna" #define LOG_TAG "android.hardware.biometrics.fingerprint@2.1-service.xpeng"
#include <android/log.h> #include <android/log.h>
#include <hidl/HidlTransportSupport.h> #include <hidl/HidlTransportSupport.h>

View file

@ -14,10 +14,10 @@
// limitations under the License. // limitations under the License.
cc_binary { cc_binary {
name: "android.hardware.lights-service.berlna", name: "android.hardware.lights-service.xpeng",
relative_install_path: "hw", relative_install_path: "hw",
init_rc: ["android.hardware.lights.berlna.rc"], init_rc: ["android.hardware.lights.xpeng.rc"],
vintf_fragments: ["android.hardware.lights.berlna.xml"], vintf_fragments: ["android.hardware.lights.xpeng.xml"],
vendor: true, vendor: true,
shared_libs: [ shared_libs: [
"libbase", "libbase",

View file

@ -15,7 +15,7 @@
* limitations under the License. * limitations under the License.
*/ */
#define LOG_TAG "android.hardware.lights-service.berlna" #define LOG_TAG "android.hardware.lights-service.xpeng"
#include "Lights.h" #include "Lights.h"
#include <android-base/file.h> #include <android-base/file.h>

View file

@ -1,4 +1,4 @@
service vendor.light /vendor/bin/hw/android.hardware.lights-service.berlna service vendor.light /vendor/bin/hw/android.hardware.lights-service.xpeng
class hal class hal
user system user system
group system group system

View file

@ -1,39 +0,0 @@
#
# Copyright (C) 2022 The LineageOS 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.
#
# Inherit from those products. Most specific first.
$(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk)
$(call inherit-product, $(SRC_TARGET_DIR)/product/full_base_telephony.mk)
# Inherit from berlna device
$(call inherit-product, device/motorola/berlna/device.mk)
# Inherit some common Lineage stuff.
$(call inherit-product, vendor/lineage/config/common_full_phone.mk)
PRODUCT_NAME := lineage_berlna
PRODUCT_DEVICE := berlna
PRODUCT_MANUFACTURER := motorola
PRODUCT_BRAND := motorola
PRODUCT_MODEL := motorola edge (2021)
PRODUCT_GMS_CLIENTID_BASE := android-motorola
PRODUCT_BUILD_PROP_OVERRIDES += \
TARGET_PRODUCT=berlna_global \
PRIVATE_BUILD_DESC="berlna_global-user 12 S1RMS32.48-18-11-2-19 5e5bb-394ae release-keys"
BUILD_FINGERPRINT := motorola/berlna_global/berlna:12/S1RMS32M.68-43-16-3/394ae:user/release-keys

29
lineage_xpeng.mk Normal file
View file

@ -0,0 +1,29 @@
#
# Copyright (C) 2022-2023 The LineageOS Project
#
# SPDX-License-Identifier: Apache-2.0
#
# Inherit from those products. Most specific first.
$(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk)
$(call inherit-product, $(SRC_TARGET_DIR)/product/full_base_telephony.mk)
# Inherit from xpeng device
$(call inherit-product, device/motorola/xpeng/device.mk)
# Inherit some common Lineage stuff.
$(call inherit-product, vendor/lineage/config/common_full_phone.mk)
PRODUCT_NAME := lineage_xpeng
PRODUCT_DEVICE := xpeng
PRODUCT_MANUFACTURER := motorola
PRODUCT_BRAND := motorola
PRODUCT_MODEL := moto g200 5G
PRODUCT_GMS_CLIENTID_BASE := android-motorola
PRODUCT_BUILD_PROP_OVERRIDES += \
TARGET_PRODUCT=xpeng_retail \
PRIVATE_BUILD_DESC="xpeng_global-user 12 S1RXS32M.50-13-10 366f1 release-keys"
BUILD_FINGERPRINT := motorola/xpeng_g/xpeng:12/S1RXS32M.50-13-10/366f1:user/release-keys

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -98,9 +98,11 @@ blocklist utags
# Copyright (c) 2019-2020, The Linux Foundation. All rights reserved. # Copyright (c) 2019-2020, The Linux Foundation. All rights reserved.
# #
# Motorola product module block list # Motorola product module block list
#
blocklist goodix_fod_mmi blocklist goodix_fod_mmi
blocklist ets_fps_mmi blocklist fpc1020_mmi
blocklist camera blocklist rbs_fps_mmi
blocklist aw8695 blocklist watchdogtest
blocklist moto_f_usbnet
blocklist leds_aw99703
blocklist leds_lm3697
#

View file

@ -1,81 +1,81 @@
mt2060.ko qm1d1b0004.ko
adsp_loader_dlkm.ko wcd9xxx_dlkm.ko
tua9001.ko
mc44s803.ko
fc0012.ko
mbhc_dlkm.ko
mt2063.ko
tx_macro_dlkm.ko
wcd937x_dlkm.ko
tuner-xc2028.ko
q6_notifier_dlkm.ko
xc5000.ko
snd_event_dlkm.ko
r820t.ko
wsa_macro_dlkm.ko
hid-aksys.ko
mt20xx.ko
wcd938x_dlkm.ko
xc4000.ko
tea5767.ko
swr_ctrl_dlkm.ko
tda18250.ko
tda18218.ko
tuner-simple.ko tuner-simple.ko
fc2580.ko fc2580.ko
mxl301rf.ko
msm_drm.ko
q6_dlkm.ko
tea5761.ko
swr_dmic_dlkm.ko
stub_dlkm.ko
rdbg.ko
pinctrl_wcd_dlkm.ko
platform_dlkm.ko
mxl5005s.ko
qt1010.ko
msi001.ko
mxl5007t.ko
llcc_perfmon.ko
wsa883x_dlkm.ko
native_dlkm.ko
qcom_edac.ko
swr_haptics_dlkm.ko
aw882xx_k504.ko
btpower.ko
bolero_cdc_dlkm.ko
hdmi_dlkm.ko
swr_dlkm.ko
bt_fm_slim.ko
q6_pdr_dlkm.ko q6_pdr_dlkm.ko
rx_macro_dlkm.ko tuner-xc2028.ko
slimbus-ngd.ko
wcd938x_slave_dlkm.ko
it913x.ko
tda18212.ko
mt2131.ko
apr_dlkm.ko apr_dlkm.ko
va_macro_dlkm.ko
m88rs6000t.ko
camera.ko
wcd9xxx_dlkm.ko
si2157.ko
max2165.ko
slimbus.ko slimbus.ko
radio-i2c-rtc6226-qca.ko mc44s803.ko
machine_dlkm.ko adsp_loader_dlkm.ko
bolero_cdc_dlkm.ko
swr_dmic_dlkm.ko
tuner-types.ko tuner-types.ko
fc0013.ko wcd937x_dlkm.ko
e4000.ko btpower.ko
mt2266.ko llcc_perfmon.ko
wcd_core_dlkm.ko hdmi_dlkm.ko
pinctrl_lpi_dlkm.ko tx_macro_dlkm.ko
qm1d1c0042.ko tea5761.ko
native_dlkm.ko
radio-i2c-rtc6226-qca.ko
tea5767.ko
q6_dlkm.ko
r820t.ko
wcd937x_slave_dlkm.ko wcd937x_slave_dlkm.ko
mbhc_dlkm.ko
bt_fm_slim.ko
camera.ko
q6_notifier_dlkm.ko
mxl5005s.ko
wcd938x_dlkm.ko
m88rs6000t.ko
tda18218.ko
mt2063.ko
rdbg.ko
mt2060.ko
fc0013.ko
xc4000.ko
stub_dlkm.ko
qm1d1c0042.ko
qt1010.ko
tda18250.ko
e4000.ko
it913x.ko
hid-aksys.ko
wsa883x_dlkm.ko
pinctrl_wcd_dlkm.ko
fc0012.ko
max2165.ko
xc5000.ko
aw882xx_k504.ko
swr_dlkm.ko
rx_macro_dlkm.ko
pinctrl_lpi_dlkm.ko
wcd938x_slave_dlkm.ko
wsa_macro_dlkm.ko
machine_dlkm.ko
wcd_core_dlkm.ko
va_macro_dlkm.ko
swr_ctrl_dlkm.ko
tua9001.ko
platform_dlkm.ko
msm_drm.ko
fc0011.ko fc0011.ko
qm1d1b0004.ko
tda9887.ko tda9887.ko
qca_cld3_qca6750.ko si2157.ko
swr_haptics_dlkm.ko
msi001.ko
mxl301rf.ko
qcom_edac.ko
snd_event_dlkm.ko
mt2266.ko
mt20xx.ko
tda18212.ko
mxl5007t.ko
slimbus-ngd.ko
mt2131.ko
wlan.ko
rmnet_core.ko rmnet_core.ko
rmnet_ctl.ko rmnet_ctl.ko
rmnet_offload.ko rmnet_offload.ko
@ -90,15 +90,18 @@ bm_adsp_ulog.ko
mmi_charger.ko mmi_charger.ko
qti_glink_charger.ko qti_glink_charger.ko
qpnp_adaptive_charge.ko qpnp_adaptive_charge.ko
aw8695.ko
mmi_relay.ko mmi_relay.ko
goodix_fod_mmi.ko wl2866d.ko
ets_fps_mmi.ko
wl2864c.ko
cci_intf.ko cci_intf.ko
st21nfc.ko leds_aw99703.ko
sx937x_sar.ko leds_lm3697.ko
moto_f_usbnet.ko
touchscreen_mmi.ko touchscreen_mmi.ko
nova_0flash_mmi.ko nova_0flash_mmi.ko
st21nfc.ko
moto_f_usbnet.ko
sx937x_sar.ko
mmi_sys_temp.ko mmi_sys_temp.ko
aw37501.ko
fpc1020_mmi.ko
goodix_fod_mmi.ko
rbs_fps_mmi.ko

View file

@ -1,9 +1,7 @@
camera.ko
msm_drm.ko msm_drm.ko
mmi_info.ko
mmi_annotate.ko
sensors_class.ko
mmi_relay.ko mmi_relay.ko
sensors_class.ko
touchscreen_mmi.ko touchscreen_mmi.ko
mmi_annotate.ko
mmi_info.ko
nova_0flash_mmi.ko nova_0flash_mmi.ko
aw8695.ko

View file

@ -1,10 +1,12 @@
# All unpinned blobs below are extracted from RETUS - S1RMS32.48-18-11-2-19 5e5bb release-keys. # All unpinned blobs below are extracted from xpeng_global-user 12 S1RXS32M.50-13-10 366f1 release-keys.
# ACDB Data # ACDB Data
vendor/etc/acdbdata/nn_ns_models/candidate__2.7.1.31__3.0.0__eai_1.10_enpu1.pmd vendor/etc/acdbdata/nn_ns_models/candidate__2.7.1.31__3.0.0__eai_1.10_enpu1.pmd
vendor/etc/acdbdata/nn_ns_models/fai__2.0.0_0.1__3.0.0_0.0__eai_1.00.pmd vendor/etc/acdbdata/nn_ns_models/fai__2.0.0_0.1__3.0.0_0.0__eai_1.00.pmd
vendor/etc/acdbdata/nn_ns_models/fai__2.2.0_0.1__3.0.0_0.0__eai_1.00.pmd vendor/etc/acdbdata/nn_ns_models/fai__2.2.0_0.1__3.0.0_0.0__eai_1.00.pmd
vendor/etc/acdbdata/nn_ns_models/fai__2.6.1_0.0__eai_v1.10.pmd vendor/etc/acdbdata/nn_ns_models/fai__2.6.1_0.0__eai_v1.10.pmd
vendor/etc/acdbdata/nn_ns_models/fai__2.6.3_0.0__3.0.0_0.0__eai_1.10_enpu1.pmd
vendor/etc/acdbdata/nn_ns_models/fai__2.7.4_0.0__3.0.0_0.0__eai_1.10_enpu1.pmd
vendor/etc/acdbdata/nn_vad_models/fai_3.0.0_0.0_eai_1.00.pmd vendor/etc/acdbdata/nn_vad_models/fai_3.0.0_0.0_eai_1.00.pmd
vendor/etc/acdbdata/Bluetooth_cal.acdb vendor/etc/acdbdata/Bluetooth_cal.acdb
vendor/etc/acdbdata/General_cal.acdb vendor/etc/acdbdata/General_cal.acdb
@ -17,22 +19,15 @@ vendor/etc/acdbdata/adsp_avs_config.acdb
# Audio firmware # Audio firmware
vendor/firmware/aw882xx_afe_params.bin vendor/firmware/aw882xx_afe_params.bin
vendor/firmware/aw882xx_mono.bin
vendor/firmware/aw882xx_pid_1852_acf.bin
vendor/firmware/aw882xx_pid_2113_acf.bin
vendor/firmware/aw882xx_spk_reg.bin vendor/firmware/aw882xx_spk_reg.bin
# Audio libraries # Audio libraries
vendor/etc/maxx_conf.ini
vendor/etc/maxx_default.mps
vendor/lib/libAndroidAlgSys.so
vendor/lib/libacdbloader.so vendor/lib/libacdbloader.so
vendor/lib/libc++_shared.so
vendor/lib/libMAM2_3-AlgFX-Coretex_A9.so
vendor/lib64/libacdbloader.so vendor/lib64/libacdbloader.so
# Audio - soundfx
vendor/lib/soundfx/libmaxxeffect-cembedded.so
vendor/lib/soundfx/libbc360.so
vendor/lib64/soundfx/libbc360.so
# Camera # Camera
vendor/etc/pwr/PowerFeatureConfig.xml vendor/etc/pwr/PowerFeatureConfig.xml
vendor/etc/pwr/VideoPowerOptFeature.xml vendor/etc/pwr/VideoPowerOptFeature.xml
@ -53,7 +48,14 @@ vendor/lib/com.qualcomm.mcx.distortionmapper.so
vendor/lib/com.qualcomm.mcx.linearmapper.so vendor/lib/com.qualcomm.mcx.linearmapper.so
vendor/lib/com.qualcomm.mcx.policy.mfl.so vendor/lib/com.qualcomm.mcx.policy.mfl.so
vendor/lib/com.qualcomm.qti.mcx.usecase.extension.so vendor/lib/com.qualcomm.qti.mcx.usecase.extension.so
vendor/lib/libFace3DTA.so
vendor/lib/libFace3D_hlos.so
vendor/lib/libQ6MSFR_manager_stub.so
vendor/lib/libaidenoiser.so
vendor/lib/libaidenoiserv2.so
vendor/lib/libarcsoft_distortion_correction.so vendor/lib/libarcsoft_distortion_correction.so
vendor/lib/libarcsoft_dualcam_refocus_image.so
vendor/lib/libarcsoft_dualcam_refocus_video.so
vendor/lib/libarcsoft_portrait_distortion_correction.so vendor/lib/libarcsoft_portrait_distortion_correction.so
vendor/lib/libbitmlengine.so vendor/lib/libbitmlengine.so
vendor/lib/libbitmlenginev2.so vendor/lib/libbitmlenginev2.so
@ -73,8 +75,15 @@ vendor/lib/libcamxswprocessalgo.so
vendor/lib/libcamxtintlessalgo.so vendor/lib/libcamxtintlessalgo.so
vendor/lib/libchilog.so vendor/lib/libchilog.so
vendor/lib/libcom.qti.chinodeutils.so vendor/lib/libcom.qti.chinodeutils.so
vendor/lib/libcvp2_1.so
vendor/lib/libcvp_common.so
vendor/lib/libcvp_util.so
vendor/lib/libcvpcpuRev_skel.so
vendor/lib/libface3d_dev.so
vendor/lib/libipebpsstriping.so vendor/lib/libipebpsstriping.so
vendor/lib/libipebpsstriping170.so vendor/lib/libipebpsstriping170.so
vendor/lib/libjpege.so
vendor/lib/libmfec.so
vendor/lib/libmmcamera_bestats.so vendor/lib/libmmcamera_bestats.so
vendor/lib/libmmcamera_cac3.so vendor/lib/libmmcamera_cac3.so
vendor/lib/libmmcamera_faceproc.so vendor/lib/libmmcamera_faceproc.so
@ -86,14 +95,19 @@ vendor/lib/libmmcamera_pdpc.so
vendor/lib/libmot_afd.so vendor/lib/libmot_afd.so
vendor/lib/libmot_chi_desktop_helper.so vendor/lib/libmot_chi_desktop_helper.so
vendor/lib/libmot_engine_settings.so vendor/lib/libmot_engine_settings.so
vendor/lib/libmotext_inf.so
vendor/lib/libmpbase.so vendor/lib/libmpbase.so
vendor/lib/libofflinedump.so vendor/lib/libofflinedump.so
vendor/lib/libofflinelog.so vendor/lib/libofflinelog.so
vendor/lib/libopencv.so vendor/lib/libopencv.so
vendor/lib/libopestriping.so
vendor/lib/libos.so vendor/lib/libos.so
vendor/lib/libpowercore.so vendor/lib/libpowercore.so
vendor/lib/libqll10.so
vendor/lib/libqllengine.so
vendor/lib/libswregistrationalgo.so vendor/lib/libswregistrationalgo.so
vendor/lib/libsynx.so vendor/lib/libsynx.so
vendor/lib/libtfestriping.so
vendor/lib/libthreadutils.so vendor/lib/libthreadutils.so
vendor/lib/libvideooptfeature.so vendor/lib/libvideooptfeature.so
vendor/lib/libvideoutils.so vendor/lib/libvideoutils.so
@ -106,6 +120,7 @@ vendor/lib/libvidhance_horizon_correction.so
vendor/lib/libvidhance_stabilizer.so vendor/lib/libvidhance_stabilizer.so
vendor/lib/libvidhance_zoom_stabilization.so vendor/lib/libvidhance_zoom_stabilization.so
vendor/lib/vendor.qti.hardware.camera.postproc@1.0-service-impl.so vendor/lib/vendor.qti.hardware.camera.postproc@1.0-service-impl.so
vendor/lib/vendor.qti.hardware.cvp@1.0.so
vendor/lib64/camera/fdconfigpreview.bin vendor/lib64/camera/fdconfigpreview.bin
vendor/lib64/camera/fdconfigpreviewlite.bin vendor/lib64/camera/fdconfigpreviewlite.bin
vendor/lib64/camera/fdconfigvideo.bin vendor/lib64/camera/fdconfigvideo.bin
@ -123,9 +138,16 @@ vendor/lib64/com.qualcomm.mcx.distortionmapper.so
vendor/lib64/com.qualcomm.mcx.linearmapper.so vendor/lib64/com.qualcomm.mcx.linearmapper.so
vendor/lib64/com.qualcomm.mcx.policy.mfl.so vendor/lib64/com.qualcomm.mcx.policy.mfl.so
vendor/lib64/com.qualcomm.qti.mcx.usecase.extension.so vendor/lib64/com.qualcomm.qti.mcx.usecase.extension.so
vendor/lib64/libFace3DTA.so
vendor/lib64/libFace3D_hlos.so
vendor/lib64/libQ6MSFR_manager_stub.so
vendor/lib64/libaidenoiser.so
vendor/lib64/libaidenoiserv2.so
vendor/lib64/libarcsoft_distortion_correction.so vendor/lib64/libarcsoft_distortion_correction.so
vendor/lib64/libarcsoft_dual_sat.so vendor/lib64/libarcsoft_dual_sat.so
vendor/lib64/libarcsoft_dual_zoomtranslator.so vendor/lib64/libarcsoft_dual_zoomtranslator.so
vendor/lib64/libarcsoft_dualcam_refocus_image.so
vendor/lib64/libarcsoft_dualcam_refocus_video.so
vendor/lib64/libarcsoft_portrait_distortion_correction.so vendor/lib64/libarcsoft_portrait_distortion_correction.so
vendor/lib64/libbitmlengine.so vendor/lib64/libbitmlengine.so
vendor/lib64/libbitmlenginev2.so vendor/lib64/libbitmlenginev2.so
@ -145,10 +167,17 @@ vendor/lib64/libcamxswprocessalgo.so
vendor/lib64/libcamxtintlessalgo.so vendor/lib64/libcamxtintlessalgo.so
vendor/lib64/libchilog.so vendor/lib64/libchilog.so
vendor/lib64/libcom.qti.chinodeutils.so vendor/lib64/libcom.qti.chinodeutils.so
vendor/lib64/libcvp2_1.so
vendor/lib64/libcvp_common.so
vendor/lib64/libcvp_util.so
vendor/lib64/libcvpcpuRev_skel.so
vendor/lib64/libdualcam_optical_zoom_control.so vendor/lib64/libdualcam_optical_zoom_control.so
vendor/lib64/libdualcam_video_optical_zoom.so vendor/lib64/libdualcam_video_optical_zoom.so
vendor/lib64/libface3d_dev.so
vendor/lib64/libipebpsstriping.so vendor/lib64/libipebpsstriping.so
vendor/lib64/libipebpsstriping170.so vendor/lib64/libipebpsstriping170.so
vendor/lib64/libjpege.so
vendor/lib64/libmfec.so
vendor/lib64/libmmcamera_bestats.so vendor/lib64/libmmcamera_bestats.so
vendor/lib64/libmmcamera_cac3.so vendor/lib64/libmmcamera_cac3.so
vendor/lib64/libmmcamera_faceproc.so vendor/lib64/libmmcamera_faceproc.so
@ -160,14 +189,20 @@ vendor/lib64/libmmcamera_pdpc.so
vendor/lib64/libmot_afd.so vendor/lib64/libmot_afd.so
vendor/lib64/libmot_chi_desktop_helper.so vendor/lib64/libmot_chi_desktop_helper.so
vendor/lib64/libmot_engine_settings.so vendor/lib64/libmot_engine_settings.so
vendor/lib64/libmotext_inf.so
vendor/lib64/libmotohid.so
vendor/lib64/libmpbase.so vendor/lib64/libmpbase.so
vendor/lib64/libofflinedump.so vendor/lib64/libofflinedump.so
vendor/lib64/libofflinelog.so vendor/lib64/libofflinelog.so
vendor/lib64/libopencv.so vendor/lib64/libopencv.so
vendor/lib64/libopestriping.so
vendor/lib64/libos.so vendor/lib64/libos.so
vendor/lib64/libpowercore.so vendor/lib64/libpowercore.so
vendor/lib64/libqll10.so
vendor/lib64/libqllengine.so
vendor/lib64/libswregistrationalgo.so vendor/lib64/libswregistrationalgo.so
vendor/lib64/libsynx.so vendor/lib64/libsynx.so
vendor/lib64/libtfestriping.so
vendor/lib64/libthreadutils.so vendor/lib64/libthreadutils.so
vendor/lib64/libvideooptfeature.so vendor/lib64/libvideooptfeature.so
vendor/lib64/libvidhance.so vendor/lib64/libvidhance.so
@ -179,11 +214,14 @@ vendor/lib64/libvidhance_horizon_correction.so
vendor/lib64/libvidhance_stabilizer.so vendor/lib64/libvidhance_stabilizer.so
vendor/lib64/libvidhance_zoom_stabilization.so vendor/lib64/libvidhance_zoom_stabilization.so
vendor/lib64/vendor.qti.hardware.camera.postproc@1.0-service-impl.so vendor/lib64/vendor.qti.hardware.camera.postproc@1.0-service-impl.so
vendor/lib64/vendor.qti.hardware.cvp@1.0.so
# Camera - Components # Camera - Components
vendor/lib/camera/components/com.arcsoft.node.dc_capture.so vendor/lib/camera/components/com.arcsoft.node.capturebokeh.so
vendor/lib/camera/components/com.arcsoft.node.dc_preview.so vendor/lib/camera/components/com.arcsoft.node.realtimebokeh.so
vendor/lib/camera/components/com.mot.node.c2d.so vendor/lib/camera/components/com.mot.node.c2d.so
vendor/lib/camera/components/com.mot.node.dc_capture.so
vendor/lib/camera/components/com.mot.node.dc_preview.so
vendor/lib/camera/components/com.qti.camx.chiiqutils.so vendor/lib/camera/components/com.qti.camx.chiiqutils.so
vendor/lib/camera/components/com.qti.eisv2.so vendor/lib/camera/components/com.qti.eisv2.so
vendor/lib/camera/components/com.qti.eisv3.so vendor/lib/camera/components/com.qti.eisv3.so
@ -237,10 +275,12 @@ vendor/lib/camera/components/com.qtistatic.stats.pdlib.so
vendor/lib/camera/components/com.vidhance.node.ica.so vendor/lib/camera/components/com.vidhance.node.ica.so
vendor/lib/camera/components/com.vidhance.node.processing.so vendor/lib/camera/components/com.vidhance.node.processing.so
vendor/lib/camera/components/com.vidhance.stats.aec_dmbr.so vendor/lib/camera/components/com.vidhance.stats.aec_dmbr.so
vendor/lib64/camera/components/com.arcsoft.node.dc_capture.so vendor/lib64/camera/components/com.arcsoft.node.capturebokeh.so
vendor/lib64/camera/components/com.arcsoft.node.dc_preview.so vendor/lib64/camera/components/com.arcsoft.node.realtimebokeh.so
vendor/lib64/camera/components/com.arcsoft.node.smooth_transition.so vendor/lib64/camera/components/com.arcsoft.node.smooth_transition.so
vendor/lib64/camera/components/com.mot.node.c2d.so vendor/lib64/camera/components/com.mot.node.c2d.so
vendor/lib64/camera/components/com.mot.node.dc_capture.so
vendor/lib64/camera/components/com.mot.node.dc_preview.so
vendor/lib64/camera/components/com.qti.camx.chiiqutils.so vendor/lib64/camera/components/com.qti.camx.chiiqutils.so
vendor/lib64/camera/components/com.qti.eisv2.so vendor/lib64/camera/components/com.qti.eisv2.so
vendor/lib64/camera/components/com.qti.eisv3.so vendor/lib64/camera/components/com.qti.eisv3.so
@ -297,14 +337,14 @@ vendor/lib64/camera/components/com.vidhance.stats.aec_dmbr.so
vendor/lib64/camera/components/libdepthmapwrapper_secure.so vendor/lib64/camera/components/libdepthmapwrapper_secure.so
# Camera - eeprom # Camera - eeprom
vendor/lib/camera/com.mot.eeprom.mot_gt24p64e_ov32b40_eeprom.so vendor/lib/camera/com.mot.eeprom.mot_gt24p64b_hi1336_eeprom.so
vendor/lib/camera/com.mot.eeprom.mot_gt24p64b_ov16a1q_eeprom.so
vendor/lib/camera/com.mot.eeprom.mot_gt24p64e_s5khm2_eeprom.so vendor/lib/camera/com.mot.eeprom.mot_gt24p64e_s5khm2_eeprom.so
vendor/lib/camera/com.mot.eeprom.mot_ov02b1b_otp.so vendor/lib/camera/com.mot.eeprom.mot_ov02b1b_otp.so
vendor/lib/camera/com.mot.eeprom.mot_s5k4h7_otp.so vendor/lib64/camera/com.mot.eeprom.mot_gt24p64b_hi1336_eeprom.so
vendor/lib64/camera/com.mot.eeprom.mot_gt24p64e_ov32b40_eeprom.so vendor/lib64/camera/com.mot.eeprom.mot_gt24p64b_ov16a1q_eeprom.so
vendor/lib64/camera/com.mot.eeprom.mot_gt24p64e_s5khm2_eeprom.so vendor/lib64/camera/com.mot.eeprom.mot_gt24p64e_s5khm2_eeprom.so
vendor/lib64/camera/com.mot.eeprom.mot_ov02b1b_otp.so vendor/lib64/camera/com.mot.eeprom.mot_ov02b1b_otp.so
vendor/lib64/camera/com.mot.eeprom.mot_s5k4h7_otp.so
# Camera - etc # Camera - etc
vendor/etc/camera/aec_golden_depth.bin vendor/etc/camera/aec_golden_depth.bin
@ -314,6 +354,7 @@ vendor/etc/camera/dual_golden_depth.bin
vendor/etc/camera/dual_golden_wide.bin vendor/etc/camera/dual_golden_wide.bin
vendor/etc/camera/mot_engine_config.bin vendor/etc/camera/mot_engine_config.bin
vendor/etc/camera/vidhance_calibration vendor/etc/camera/vidhance_calibration
vendor/etc/camera/vidhance_calibration_2rd
# Camera - feature2 # Camera - feature2
vendor/lib/com.qti.feature2.anchorsync.so vendor/lib/com.qti.feature2.anchorsync.so
@ -385,36 +426,40 @@ vendor/lib64/motorola.hardware.camera.desktop@1.0.so
vendor/lib64/motorola.hardware.camera.desktop@2.0.so vendor/lib64/motorola.hardware.camera.desktop@2.0.so
# Camera - sensor # Camera - sensor
vendor/lib/camera/com.qti.sensor.mot_hi1336.so
vendor/lib/camera/com.qti.sensor.mot_ov02b1b.so vendor/lib/camera/com.qti.sensor.mot_ov02b1b.so
vendor/lib/camera/com.qti.sensor.mot_ov32b40.so vendor/lib/camera/com.qti.sensor.mot_ov16a1q.so
vendor/lib/camera/com.qti.sensor.mot_s5k4h7.so
vendor/lib/camera/com.qti.sensor.mot_s5khm2.so vendor/lib/camera/com.qti.sensor.mot_s5khm2.so
vendor/lib64/camera/com.qti.sensor.mot_hi1336.so
vendor/lib64/camera/com.qti.sensor.mot_ov02b1b.so vendor/lib64/camera/com.qti.sensor.mot_ov02b1b.so
vendor/lib64/camera/com.qti.sensor.mot_ov32b40.so vendor/lib64/camera/com.qti.sensor.mot_ov16a1q.so
vendor/lib64/camera/com.qti.sensor.mot_s5k4h7.so
vendor/lib64/camera/com.qti.sensor.mot_s5khm2.so vendor/lib64/camera/com.qti.sensor.mot_s5khm2.so
# Camera - sensormodule # Camera - sensormodule
vendor/lib/camera/com.qti.sensormodule.mot_berlna_ov02b1b_sunwin.bin vendor/lib/camera/com.qti.sensormodule.mot_xpeng_hi1336_qtech.bin
vendor/lib/camera/com.qti.sensormodule.mot_berlna_ov32b40_qtech.bin vendor/lib/camera/com.qti.sensormodule.mot_xpeng_ov02b1b_sunwin.bin
vendor/lib/camera/com.qti.sensormodule.mot_berlna_s5k4h7_qtech.bin vendor/lib/camera/com.qti.sensormodule.mot_xpeng_ov16a1q_qtech.bin
vendor/lib/camera/com.qti.sensormodule.mot_berlna_s5khm2_qtech.bin vendor/lib/camera/com.qti.sensormodule.mot_xpeng_s5khm2_qtech.bin
vendor/lib64/camera/com.qti.sensormodule.mot_berlna_ov02b1b_sunwin.bin vendor/lib/camera/com.qti.sensormodule.mot_xpeng_s5khm2sd03_qtech.bin
vendor/lib64/camera/com.qti.sensormodule.mot_berlna_ov32b40_qtech.bin vendor/lib64/camera/com.qti.sensormodule.mot_xpeng_hi1336_qtech.bin
vendor/lib64/camera/com.qti.sensormodule.mot_berlna_s5k4h7_qtech.bin vendor/lib64/camera/com.qti.sensormodule.mot_xpeng_ov02b1b_sunwin.bin
vendor/lib64/camera/com.qti.sensormodule.mot_berlna_s5khm2_qtech.bin vendor/lib64/camera/com.qti.sensormodule.mot_xpeng_ov16a1q_qtech.bin
vendor/lib64/camera/com.qti.sensormodule.mot_xpeng_s5khm2_qtech.bin
vendor/lib64/camera/com.qti.sensormodule.mot_xpeng_s5khm2sd03_qtech.bin
# Camera - tuned # Camera - tuned
vendor/lib/camera/com.qti.tuned.default.bin vendor/lib/camera/com.qti.tuned.default.bin
vendor/lib/camera/com.qti.tuned.mot_berlna_ov02b1b.bin vendor/lib/camera/com.qti.tuned.mot_xpeng_hi1336.bin
vendor/lib/camera/com.qti.tuned.mot_berlna_ov32b40.bin vendor/lib/camera/com.qti.tuned.mot_xpeng_ov02b1b.bin
vendor/lib/camera/com.qti.tuned.mot_berlna_s5k4h7.bin vendor/lib/camera/com.qti.tuned.mot_xpeng_ov16a1q.bin
vendor/lib/camera/com.qti.tuned.mot_berlna_s5khm2.bin vendor/lib/camera/com.qti.tuned.mot_xpeng_s5khm2.bin
vendor/lib/camera/com.qti.tuned.mot_xpeng_s5khm2sd03.bin
vendor/lib64/camera/com.qti.tuned.default.bin vendor/lib64/camera/com.qti.tuned.default.bin
vendor/lib64/camera/com.qti.tuned.mot_berlna_ov02b1b.bin vendor/lib64/camera/com.qti.tuned.mot_xpeng_hi1336.bin
vendor/lib64/camera/com.qti.tuned.mot_berlna_ov32b40.bin vendor/lib64/camera/com.qti.tuned.mot_xpeng_ov02b1b.bin
vendor/lib64/camera/com.qti.tuned.mot_berlna_s5k4h7.bin vendor/lib64/camera/com.qti.tuned.mot_xpeng_ov16a1q.bin
vendor/lib64/camera/com.qti.tuned.mot_berlna_s5khm2.bin vendor/lib64/camera/com.qti.tuned.mot_xpeng_s5khm2.bin
vendor/lib64/camera/com.qti.tuned.mot_xpeng_s5khm2sd03.bin
# Display calibration data # Display calibration data
vendor/etc/qdcm_calib_data_mipi_mot_vid_tianma_1080p_dsc_678.xml vendor/etc/qdcm_calib_data_mipi_mot_vid_tianma_1080p_dsc_678.xml
@ -423,6 +468,7 @@ vendor/etc/qdcm_calib_data_nt36672e_fhd_plus_120Hz_Video_panel.xml
vendor/etc/qdcm_calib_data_nt36672e_fhd_plus_144Hz_video_panel.xml vendor/etc/qdcm_calib_data_nt36672e_fhd_plus_144Hz_video_panel.xml
# Fingerprint (goodix) # Fingerprint (goodix)
vendor/bin/hw/goodix_ident
vendor/lib64/hw/fingerprint.goodix.default.so vendor/lib64/hw/fingerprint.goodix.default.so
vendor/lib64/libgf_ca.so vendor/lib64/libgf_ca.so
vendor/lib64/libgf_hal.so vendor/lib64/libgf_hal.so
@ -432,82 +478,16 @@ vendor/lib64/vendor.goodix.hardware.biometrics.fingerprint@3.0.so
# Fingerprint (egistec) # Fingerprint (egistec)
vendor/bin/hw/android.hardware.biometrics.fingerprint@2.1-service-ets vendor/bin/hw/android.hardware.biometrics.fingerprint@2.1-service-ets
vendor/etc/init/android.hardware.biometrics.fingerprint@2.1-service-ets2.rc vendor/etc/init/android.hardware.biometrics.fingerprint@2.1-service-ets2.rc
vendor/etc/init/init.ets.rc vendor/bin/hw/egis_ident
vendor/lib64/libets_fp_et5.so vendor/lib64/libRbsFlow.so
vendor/lib64/libets_teeclient.so vendor/lib64/libets_teeclient_v2.so
vendor/lib64/vendor.egistec.hardware.fingerprint@2.0.so vendor/lib64/vendor.egistec.hardware.fingerprint@4.0.so
# MotCamera3 # Fingerprint (fpc)
product/app/MotCamera3AI/MotCamera3AI.apk;PRESIGNED vendor/bin/hw/android.hardware.biometrics.fingerprint@2.1-service-fpc
product/priv-app/MotCamera3/MotCamera3.apk;OVERRIDES=Aperture|fe46dccdccfd08bc416fabc97662df3c15440aa6 vendor/etc/init/android.hardware.biometrics.fingerprint@2.1-service-fpc2.rc
system_ext/etc/public.libraries-motocamera.txt vendor/bin/hw/fpc_ident
system_ext/framework/com.motorola.androidx.camera.extensions.jar vendor/lib64/vendor.qti.hardware.fingerprint@1.0.so
system_ext/lib/libmcf_native_window_helper.motocamera.so
system_ext/lib64/libmcf_native_window_helper.motocamera.so
# MotCamera3 - Permissions
product/etc/permissions/com.motorola.camera3.xml
product/etc/permissions/deviceowner-configuration-com.motorola.camera3.xml
product/etc/permissions/privapp-permissions-com.motorola.camera3.xml
product/etc/sysconfig/hiddenapi-whitelist-com.motorola.camera3.xml
system_ext/etc/permissions/com.motorola.androidx.camera.extensions.xml
# MotCamera3 - libs
product/lib64/libarcsoft_dualcam_refocus.so|cde6916a8b3c443e332c23e14229860a0e37aef0
product/lib64/libarcsoft_frc.so|dab92e6bd066b44bb557f24c9cb2c587df2aab46
product/lib64/libarcsoft_hdr_scbokeh_image.so|88391745e78f0234aa2514615ee8b3d76454d7e0
product/lib64/libarcsoft_high_dynamic_range.so|a9e2790263c6ed369b643a363ab0ecf135002453
product/lib64/libarcsoft_multiframe_bokeh_image.so|fcbb9c2f98b81f9462fa64ca8a79debcc64ac862
product/lib64/libarcsoft_scbokeh_Generic.so|a79fe0b8febdb9b920782c15b345182251b7214d
product/lib64/libarcsoft_supernight.so|b5740dc9e0dceae9bdb89f3cc3b100222dc4bc4f
product/lib64/libarcsoft_superportrait.so|428f537e4995d8ef6138f118159b319c9cc8e918
product/lib64/libas-super-slow-motion.so|1a822eb3a844d387f751fc60136c919f1d5289d0
product/lib64/libbarhopper_v3.so|01401953109a122c281f7e625cd6099433b34bb7
product/lib64/libbg-postproc-jni.so|2de65eaabd096ec5e0eac2dfb92158fe9878682c
product/lib64/libcamerax_extension_jni.so|484258aae91d462443bfc1627568522fc49a806c
product/lib64/libc++_shared.so|52beb16998338f6406e30a33b3066cd6cd457074
product/lib64/libc++.so|e8707820517ab7713b8ca6ac4462361e00629c26
product/lib64/libdoc-util.so|5cae17df39eed003f3b751b6ef3e1330faa0cea1
product/lib64/libdynamic_depth.so|515f03132a086f15c565dd89b192ede5eeca7e29
product/lib64/libfn-beauty-vfb-base.so|2116a9a2f2ff5e49e575e00985c3e18d295cdfbc
product/lib64/libFNVfbEngineHAL.so|a7365d9e7d728df8d4ad6ecfba07961fcf924d75
product/lib64/libfoundation.so|ffb388c6c8876cebf4614a0e5ae31c482803dd91
product/lib64/libgg-dynamic_depth.so|ae152e43f07bbd2b037d15b95d20c95451bfe5af
product/lib64/libgg-tensorflow-lite.so|08df2fdef345d48f8fecc5edc75c5e2bbb36bc08
product/lib64/libgif.so|310d708f0c9b60c065514c1e3f1534c8ba347c7d
product/lib64/libjpeg.so|a51f6dde2a6d7eb11378a2575a5e6bf625a15bbb
product/lib64/liblenovo_panorama.so|31cc6042e0cdd661fa9ccd6472058d90dfde00d8
product/lib64/libmcf-base.so|1dc98db1c8b7226bed72ec129fb5c3efa34f501f
product/lib64/libmcf-jni.so|991cb458d1a5ff8a43d83f7c5853dffee53e3da2
product/lib64/libmcf-qc-fd-offline_local.so|99d2dbab152e22d6ae3d552cee3a172fc886ba24
product/lib64/libmcf-stand-alone-sm.so|10a451062fa05ac259460f67dc7e06e50027372f
product/lib64/libmmcamera_faceproc2.so|1c732d58bf24c939f568cda340318e5b873dce3b
product/lib64/libmorpho_cinema_graph.so|c689a3734f6963b6ad4be3a9ddfae00c1c82acb0
product/lib64/libmorpho_panorama_gp3.so|b8ef93fa1b2bcc7f3166bfe8783d650182299935
product/lib64/libmorpho_sensor_fusion.so|eee6c344fc928d2c20a5e7a139d88d7cdbac7a73
product/lib64/libmot-cinemagraph-engine.so|00bc323a7cc11d485ab1dc85403669b5b4313f8b
product/lib64/libmot-util.so|77ead032fb208a404da0072320ce399a16984ac2
product/lib64/libmpbase.so|07021c39abbc5c8538f6df1876a3eb3015ff9c2a
product/lib64/libqc-snpe.so|3080e7127cf3fb3efc5e5da1ebe9715923d257e2
product/lib64/libsmart_ppt.so|bc562289e07bb64095effd8ed473d822272b53b9
product/lib64/libsmudge_detect.so|915e44b5013096b846b87c539d92200a0b048d23
product/lib64/libSNPE.so|ddcec410b42f85808bb8b0d8359c7a6490a934de
product/lib64/libSuperSensorCPU_v05052021.so|22378fd888fc13dac8f46a250f101dbcdb6d44bc
product/lib64/libSuperSensorProcessorCWrapper_v2.so|7e66994ee9b8c7d637afb58e0e341e5c94cf23a2
product/lib64/libSuperSensorProcessor_v05052021.so|2c9204b230bddd089070e5b9238c85b9fe6d94f8
product/lib64/libSuperSensor_v05052021.so|dfbfc247087c8f9dfc86401918c8026b06eaf4a5
product/lib64/libtensorflowlite_gpu_delegate.so|821bcbece27d47c49daac00a65fdf48213befad1
product/lib64/libtensorflowlite.so|17f94dc427220788db8f10d658d3a330488ac7d6
# Moto Permissions
product/etc/permissions/com.motorola.camera3.berlna.xml:vendor/etc/permissions/com.motorola.camera3.berlna.xml
product/etc/permissions/com.motorola.camera3.content.ai.xml:vendor/etc/permissions/com.motorola.camera3.content.ai.xml
product/etc/permissions/com.motorola.camera3.lens.xml:vendor/etc/permissions/com.motorola.camera3.lens.xml
product/etc/permissions/com.motorola.camera3.xml:vendor/etc/permissions/com.motorola.camera3.xml
product/etc/permissions/com.motorola.moto-uirefresh.xml
product/etc/permissions/com.motorola.motodisplay.xml
product/etc/permissions/privapp-permissions-com.motorola.motodisplay.xml
system_ext/etc/permissions/com.motorola.androidx.camera.extensions.xml:vendor/etc/permissions/com.motorola.androidx.camera.extensions.xml
# NFC # NFC
vendor/bin/STFlashTool vendor/bin/STFlashTool
@ -530,20 +510,24 @@ vendor/lib64/sensors.moto.so
vendor/lib64/sensors.ssc.so vendor/lib64/sensors.ssc.so
# Sensor - configs # Sensor - configs
vendor/etc/sensors/config/ak991x_0.json vendor/etc/sensors/config/lahaina_ak991x_0.json
vendor/etc/sensors/config/bmp5_0.json vendor/etc/sensors/config/lahaina_default_sensors.json
vendor/etc/sensors/config/icm4x6xx.json vendor/etc/sensors/config/lahaina_dynamic_sensors.json
vendor/etc/sensors/config/icp101xx.json vendor/etc/sensors/config/lahaina_icm4x6xa_0.json
vendor/etc/sensors/config/icp201xx_0.json vendor/etc/sensors/config/lahaina_irq.json
vendor/etc/sensors/config/kodiak_default_sensors.json vendor/etc/sensors/config/lahaina_lsm6dso.json
vendor/etc/sensors/config/kodiak_dynamic_sensors.json vendor/etc/sensors/config/lahaina_mmc56x3x.json
vendor/etc/sensors/config/kodiak_irq.json vendor/etc/sensors/config/lahaina_power_0.json
vendor/etc/sensors/config/kodiak_power_0.json vendor/etc/sensors/config/lahaina_stk3a5x_0.json
vendor/etc/sensors/config/lps22hh_0.json
vendor/etc/sensors/config/lsm6dso_0.json
vendor/etc/sensors/config/mmc5603x_0.json
vendor/etc/sensors/config/mot_camgest.json vendor/etc/sensors/config/mot_camgest.json
vendor/etc/sensors/config/mot_chopchop.json
vendor/etc/sensors/config/mot_chopchop_closed.json
vendor/etc/sensors/config/mot_devorient.json vendor/etc/sensors/config/mot_devorient.json
vendor/etc/sensors/config/mot_ftm.json
vendor/etc/sensors/config/mot_gpio_flip.json
vendor/etc/sensors/config/mot_ltv.json
vendor/etc/sensors/config/mot_offbody.json
vendor/etc/sensors/config/mot_tap.json
vendor/etc/sensors/config/sns_amd.json vendor/etc/sensors/config/sns_amd.json
vendor/etc/sensors/config/sns_amd_sw_disabled.json vendor/etc/sensors/config/sns_amd_sw_disabled.json
vendor/etc/sensors/config/sns_amd_sw_enabled.json vendor/etc/sensors/config/sns_amd_sw_enabled.json
@ -578,7 +562,6 @@ vendor/etc/sensors/config/sns_tilt_sw_disabled.json
vendor/etc/sensors/config/sns_tilt_sw_enabled.json vendor/etc/sensors/config/sns_tilt_sw_enabled.json
vendor/etc/sensors/config/sns_tilt_to_wake.json vendor/etc/sensors/config/sns_tilt_to_wake.json
vendor/etc/sensors/config/sns_wrist_pedo.json vendor/etc/sensors/config/sns_wrist_pedo.json
vendor/etc/sensors/config/stk3a5x_0.json
vendor/etc/sensors/proto/als_mastercal.proto vendor/etc/sensors/proto/als_mastercal.proto
vendor/etc/sensors/proto/descriptor.proto vendor/etc/sensors/proto/descriptor.proto
vendor/etc/sensors/proto/mot_barocal.proto vendor/etc/sensors/proto/mot_barocal.proto
@ -670,68 +653,13 @@ vendor/etc/sensors/proto/sns_tilt_to_wake.proto
vendor/etc/sensors/proto/sns_trimag.proto vendor/etc/sensors/proto/sns_trimag.proto
vendor/etc/sensors/proto/sns_ultra_violet.proto vendor/etc/sensors/proto/sns_ultra_violet.proto
vendor/etc/sensors/proto/sns_wrist_tilt_gesture.proto vendor/etc/sensors/proto/sns_wrist_tilt_gesture.proto
vendor/etc/sensors/hals.conf
vendor/etc/sensors/sns_reg_config vendor/etc/sensors/sns_reg_config
# Thermal engine - configs # Thermal engine - configs
vendor/etc/thermal-engine-berlna.conf vendor/etc/thermal-engine-xpeng.conf
vendor/etc/thermal-engine.conf vendor/etc/thermal-engine.conf
# Touchscreen firmware # Touchscreen firmware
vendor/firmware/mp-novatek_ts-NT36675-21061805-603a-berlna.bin vendor/firmware/NT36xxx_MP_Setting_Criteria_6044.csv
vendor/firmware/novatek_ts-NT36675-21042101-603a-berlna-evt.bin vendor/firmware/mp_novatek_ts-NT36675-21101302-6044-xpeng.bin
vendor/firmware/novatek_ts-NT36675-21061805-603a-berlna.bin vendor/firmware/novatek_ts-NT36675-21101302-6044-xpeng.bin
vendor/firmware/NT36xxx_MP_Setting_Criteria_603A.csv
# Vibrator firmware
vendor/firmware/aw8695_haptic.bin
vendor/firmware/aw8695_rtp.bin
vendor/firmware/aw8695_rtp_Argo_Navis.bin
vendor/firmware/aw8695_rtp_Attentive.bin
vendor/firmware/aw8695_rtp_Awake.bin
vendor/firmware/aw8695_rtp_Bird_Loop.bin
vendor/firmware/aw8695_rtp_Brilliant_Times.bin
vendor/firmware/aw8695_rtp_Chimey_Phone.bin
vendor/firmware/aw8695_rtp_City_Lights.bin
vendor/firmware/aw8695_rtp_Complex.bin
vendor/firmware/aw8695_rtp_Crazy_Dream.bin
vendor/firmware/aw8695_rtp_Curve_Ball_Blend.bin
vendor/firmware/aw8695_rtp_Digital_Phone.bin
vendor/firmware/aw8695_rtp_Electrovision.bin
vendor/firmware/aw8695_rtp_Ether_Shake.bin
vendor/firmware/aw8695_rtp_Fateful_Words.bin
vendor/firmware/aw8695_rtp_Firefly.bin
vendor/firmware/aw8695_rtp_Flutey_Phone.bin
vendor/firmware/aw8695_rtp_Future_Funk.bin
vendor/firmware/aw8695_rtp_Future_Hi_Tech.bin
vendor/firmware/aw8695_rtp_Girtab.bin
vendor/firmware/aw8695_rtp_Hello.bin
vendor/firmware/aw8695_rtp_Hexagon.bin
vendor/firmware/aw8695_rtp_Hydra.bin
vendor/firmware/aw8695_rtp_Insert_Coin.bin
vendor/firmware/aw8695_rtp_Jumping_Dots.bin
vendor/firmware/aw8695_rtp_Keys.bin
vendor/firmware/aw8695_rtp_Loopy.bin
vendor/firmware/aw8695_rtp_Loopy_Lounge.bin
vendor/firmware/aw8695_rtp_Modular.bin
vendor/firmware/aw8695_rtp_Momentum.bin
vendor/firmware/aw8695_rtp_Morning.bin
vendor/firmware/aw8695_rtp_Moto.bin
vendor/firmware/aw8695_rtp_Natural.bin
vendor/firmware/aw8695_rtp_New_Player.bin
vendor/firmware/aw8695_rtp_Now_or_Never.bin
vendor/firmware/aw8695_rtp_Onward.bin
vendor/firmware/aw8695_rtp_Organ_Dub.bin
vendor/firmware/aw8695_rtp_Overclocked.bin
vendor/firmware/aw8695_rtp_Pegasus.bin
vendor/firmware/aw8695_rtp_Play.bin
vendor/firmware/aw8695_rtp_Pyxis.bin
vendor/firmware/aw8695_rtp_Regrade.bin
vendor/firmware/aw8695_rtp_Scarabaeus.bin
vendor/firmware/aw8695_rtp_Sceptrum.bin
vendor/firmware/aw8695_rtp_Simple.bin
vendor/firmware/aw8695_rtp_Solarium.bin
vendor/firmware/aw8695_rtp_Sparse.bin
vendor/firmware/aw8695_rtp_Terrabytes.bin
vendor/firmware/aw8695_rtp_Verizon_Airwaves.bin
vendor/firmware/aw8695_rtp_Zero_Hour.bin

View file

@ -3,10 +3,10 @@ LOCAL_PATH := $(call my-dir)
# Recovery-Stuffs # Recovery-Stuffs
include $(CLEAR_VARS) include $(CLEAR_VARS)
LOCAL_MODULE := init.recovery.berlna.rc LOCAL_MODULE := init.recovery.xpeng.rc
LOCAL_MODULE_TAGS := optional LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_CLASS := ETC LOCAL_MODULE_CLASS := ETC
LOCAL_SRC_FILES := etc/init.recovery.berlna.rc LOCAL_SRC_FILES := etc/init.recovery.xpeng.rc
LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/ LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/
include $(BUILD_PREBUILT) include $(BUILD_PREBUILT)

View file

@ -38,7 +38,7 @@ load_touch()
cd $firmware_path cd $firmware_path
case $panel_supplier in case $panel_supplier in
tianma) tianma)
firmware_file="novatek_ts-NT36675-21061805-603a-berlna.bin" firmware_file="novatek_ts-NT36675-21101302-6044-xpeng.bin"
;; ;;
esac esac
echo "Firmware file for upgrade $firmware_file" echo "Firmware file for upgrade $firmware_file"

View file

@ -1,5 +1,5 @@
runtime_resource_overlay { runtime_resource_overlay {
name: "FrameworksResBerlna", name: "FrameworksResXpeng",
sdk_version: "current", sdk_version: "current",
vendor: true vendor: true
} }

View file

@ -4,6 +4,6 @@
SPDX-License-Identifier: Apache-2.0 SPDX-License-Identifier: Apache-2.0
--> -->
<manifest xmlns:android="http://schemas.android.com/apk/res/android" <manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="android.overlay.berlna"> package="android.overlay.xpeng">
<overlay android:targetPackage="android" android:isStatic="true" android:priority="600"/> <overlay android:targetPackage="android" android:isStatic="true" android:priority="600"/>
</manifest> </manifest>

View file

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- <!--
Copyright (C) 2022 The LineageOS Project Copyright (C) 2022-2023 The LineageOS Project
SPDX-License-Identifier: Apache-2.0 SPDX-License-Identifier: Apache-2.0
--> -->
<resources> <resources>
@ -24,16 +24,31 @@
backlight values for LUX levels between these control points. backlight values for LUX levels between these control points.
Must be overridden in platform specific overlays --> Must be overridden in platform specific overlays -->
<integer-array name="config_autoBrightnessLevels"> <array name="config_autoBrightnessLevels">
<item>1</item>
<item>2</item>
<item>5</item> <item>5</item>
<item>10</item> <item>10</item>
<item>40</item> <item>29</item>
<item>50</item>
<item>90</item>
<item>100</item> <item>100</item>
<item>325</item> <item>150</item>
<item>1250</item> <item>200</item>
<item>3500</item> <item>300</item>
<item>5500</item> <item>400</item>
</integer-array> <item>500</item>
<item>800</item>
<item>1000</item>
<item>1300</item>
<item>1500</item>
<item>1600</item>
<item>1800</item>
<item>2000</item>
<item>3000</item>
<item>4000</item>
<item>8000</item>
</array>
<!-- Array of desired screen brightness in nits corresponding to the lux values <!-- Array of desired screen brightness in nits corresponding to the lux values
in the config_autoBrightnessLevels array. As with config_screenBrightnessMinimumNits and in the config_autoBrightnessLevels array. As with config_screenBrightnessMinimumNits and
@ -49,33 +64,58 @@
array. The brightness values must be non-negative and non-decreasing. This must be array. The brightness values must be non-negative and non-decreasing. This must be
overridden in platform specific overlays --> overridden in platform specific overlays -->
<array name="config_autoBrightnessDisplayValuesNits"> <array name="config_autoBrightnessDisplayValuesNits">
<item>5</item> <item>2</item>
<item>12</item> <item>10</item>
<item>24</item> <item>20</item>
<item>95</item> <item>50</item>
<item>111</item> <item>70</item>
<item>149</item> <item>85</item>
<item>192</item> <item>110</item>
<item>252</item> <item>130</item>
<item>500</item> <item>150</item>
<item>180</item>
<item>180</item>
<item>180</item>
<item>180</item>
<item>225</item>
<item>270</item>
<item>300</item>
<item>315</item>
<item>330</item>
<item>350</item>
<item>380</item>
<item>420</item>
<item>450</item>
<item>450</item>
<item>450</item>
</array> </array>
<!-- An array describing the screen's backlight values corresponding to the brightness <!-- An array describing the screen's backlight values corresponding to the brightness
values in the config_screenBrightnessNits array. values in the config_screenBrightnessNits array.
This array should be equal in size to config_screenBrightnessBacklight. --> This array should be equal in size to config_screenBrightnessBacklight. -->
<integer-array name="config_screenBrightnessBacklight"> <array name="config_screenBrightnessBacklight">
<item>0</item> <item>0</item>
<item>4</item> <item>1</item>
<item>7</item> <item>6</item>
<item>13</item> <item>11</item>
<item>51</item> <item>28</item>
<item>59</item> <item>40</item>
<item>82</item> <item>48</item>
<item>62</item>
<item>74</item>
<item>85</item>
<item>102</item> <item>102</item>
<item>138</item> <item>128</item>
<item>153</item>
<item>170</item>
<item>179</item>
<item>187</item>
<item>198</item>
<item>215</item>
<item>238</item>
<item>255</item> <item>255</item>
</integer-array> </array>
<!-- An array of floats describing the screen brightness in nits corresponding to the backlight <!-- An array of floats describing the screen brightness in nits corresponding to the backlight
values in the config_screenBrightnessBacklight array. On OLED displays these values values in the config_screenBrightnessBacklight array. On OLED displays these values
@ -86,15 +126,25 @@
This array should be equal in size to config_screenBrightnessBacklight --> This array should be equal in size to config_screenBrightnessBacklight -->
<array name="config_screenBrightnessNits"> <array name="config_screenBrightnessNits">
<item>0</item> <item>0</item>
<item>5</item> <item>2</item>
<item>12</item> <item>10</item>
<item>24</item> <item>20</item>
<item>95</item> <item>50</item>
<item>111</item> <item>70</item>
<item>149</item> <item>85</item>
<item>192</item> <item>110</item>
<item>252</item> <item>130</item>
<item>500</item> <item>150</item>
<item>180</item>
<item>225</item>
<item>270</item>
<item>300</item>
<item>315</item>
<item>330</item>
<item>350</item>
<item>380</item>
<item>420</item>
<item>450</item>
</array> </array>
<!-- Stability requirements in milliseconds for accepting a new brightness level. This is used <!-- Stability requirements in milliseconds for accepting a new brightness level. This is used
@ -194,44 +244,44 @@
<!-- Screen brightness used to dim the screen when the user activity <!-- Screen brightness used to dim the screen when the user activity
timeout expires. May be less than the minimum allowed brightness setting timeout expires. May be less than the minimum allowed brightness setting
that can be set by the user. --> that can be set by the user. -->
<integer name="config_screenBrightnessDim">4</integer> <integer name="config_screenBrightnessDim">2</integer>
<!-- Minimum screen brightness setting allowed by the power manager. <!-- Minimum screen brightness setting allowed by the power manager.
The user is forbidden from setting the brightness below this level. --> The user is forbidden from setting the brightness below this level. -->
<integer name="config_screenBrightnessSettingMinimum">2</integer> <integer name="config_screenBrightnessSettingMinimum">2</integer>
<!-- Vibrator pattern for feedback about a long screen/key press --> <!-- Vibrator pattern for feedback about a long screen/key press -->
<integer-array name="config_longPressVibePattern"> <array name="config_longPressVibePattern">
<item>0</item> <item>0</item>
<item>67</item> <item>67</item>
</integer-array> </array>
<!-- Vibrator pattern for feedback about touching a virtual key --> <!-- Vibrator pattern for feedback about touching a virtual key -->
<integer-array name="config_virtualKeyVibePattern"> <array name="config_virtualKeyVibePattern">
<item>0</item> <item>0</item>
<item>67</item> <item>67</item>
</integer-array> </array>
<!-- Vibrator pattern for a very short but reliable vibration for soft keyboard tap --> <!-- Vibrator pattern for a very short but reliable vibration for soft keyboard tap -->
<integer-array name="config_keyboardTapVibePattern"> <array name="config_keyboardTapVibePattern">
<item>0</item> <item>0</item>
<item>30</item> <item>30</item>
</integer-array> </array>
<!-- Vibrator pattern for feedback about booting with safe mode enabled --> <!-- Vibrator pattern for feedback about booting with safe mode enabled -->
<integer-array name="config_safeModeEnabledVibePattern"> <array name="config_safeModeEnabledVibePattern">
<item>0</item> <item>0</item>
<item>0</item> <item>0</item>
<item>94</item> <item>94</item>
</integer-array> </array>
<!-- Vibrator pattern for feedback about hitting a scroll barrier --> <!-- Vibrator pattern for feedback about hitting a scroll barrier -->
<integer-array name="config_scrollBarrierVibePattern"> <array name="config_scrollBarrierVibePattern">
<item>0</item> <item>0</item>
<item>15</item> <item>15</item>
<item>30</item> <item>30</item>
<item>15</item> <item>15</item>
</integer-array> </array>
<!-- ComponentName of a dream to show whenever the system would otherwise have <!-- ComponentName of a dream to show whenever the system would otherwise have
gone to sleep. When the PowerManager is asked to go to sleep, it will instead gone to sleep. When the PowerManager is asked to go to sleep, it will instead
@ -247,15 +297,6 @@
turned off and the screen off animation has been performed. --> turned off and the screen off animation has been performed. -->
<bool name="config_dozeAfterScreenOffByDefault">true</bool> <bool name="config_dozeAfterScreenOffByDefault">true</bool>
<!-- Whether the always on display mode is available. This should only be enabled
on devices where the display has been tuned to be power efficient in DOZE and/or
DOZE_SUSPEND states. -->
<bool name="config_dozeAlwaysOnDisplayAvailable">true</bool>
<!-- Control whether the always on display mode is enabled by default. This value will be used
during initialization when the setting is still null. -->
<bool name="config_dozeAlwaysOnEnabled">false</bool>
<!-- An array of arrays of side fingerprint sensor properties relative to each display. <!-- An array of arrays of side fingerprint sensor properties relative to each display.
Note: this value is temporary and is expected to be queried directly Note: this value is temporary and is expected to be queried directly
from the HAL in the future. --> from the HAL in the future. -->
@ -290,7 +331,7 @@
<integer name="config_defaultPeakRefreshRate">120</integer> <integer name="config_defaultPeakRefreshRate">120</integer>
<!-- MMS user agent string --> <!-- MMS user agent string -->
<string name="config_mms_user_agent" translatable="false">motorolaedge</string> <string name="config_mms_user_agent" translatable="false">motorolag2005G</string>
<!-- MMS user agent profile url --> <!-- MMS user agent profile url -->
<string name="config_mms_user_agent_profile_url" translatable="false">http://uaprof.motorola.com/phoneconfig/motov1/Profile/motov1.rdf</string> <string name="config_mms_user_agent_profile_url" translatable="false">http://uaprof.motorola.com/phoneconfig/motov1/Profile/motov1.rdf</string>

View file

@ -1,11 +1,11 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- <!--
Copyright (C) 2022 The LineageOS Project Copyright (C) 2022-2023 The LineageOS Project
SPDX-License-Identifier: Apache-2.0 SPDX-License-Identifier: Apache-2.0
--> -->
<resources> <resources>
<!-- Radius of the software rounded corners. --> <!-- Radius of the software rounded corners. -->
<dimen name="rounded_corner_radius">72px</dimen> <dimen name="rounded_corner_radius">85.0px</dimen>
<!-- Height of the status bar in portrait. The height should be <!-- Height of the status bar in portrait. The height should be
Max((status bar content height + waterfall top size), top cutout size) --> Max((status bar content height + waterfall top size), top cutout size) -->

View file

@ -1,9 +1,9 @@
// //
// Copyright (C) 2022 The LineageOS Project // Copyright (C) 2022-2023 The LineageOS Project
// SPDX-License-Identifier: Apache-2.0 // SPDX-License-Identifier: Apache-2.0
// //
runtime_resource_overlay { runtime_resource_overlay {
name: "LineageSystemUIBerlna", name: "LineageSystemUIXpeng",
vendor: true, vendor: true,
} }

View file

@ -1,10 +1,10 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- <!--
Copyright (C) 2022 The LineageOS Project Copyright (C) 2022-2023 The LineageOS Project
SPDX-License-Identifier: Apache-2.0 SPDX-License-Identifier: Apache-2.0
--> -->
<manifest xmlns:android="http://schemas.android.com/apk/res/android" <manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.android.systemui.berlna.lineage"> package="com.android.systemui.xpeng.lineage">
<overlay <overlay
android:isStatic="true" android:isStatic="true"

View file

@ -1,5 +1,5 @@
runtime_resource_overlay { runtime_resource_overlay {
name: "SettingsProviderResBerlna", name: "SettingsProviderResXpeng",
sdk_version: "current", sdk_version: "current",
vendor: true vendor: true
} }

View file

@ -5,6 +5,6 @@
--> -->
<manifest xmlns:android="http://schemas.android.com/apk/res/android" <manifest xmlns:android="http://schemas.android.com/apk/res/android"
coreApp="true" coreApp="true"
package="com.android.providers.settings.overlay.berlna"> package="com.android.providers.settings.overlay.xpeng">
<overlay android:targetPackage="com.android.providers.settings" android:isStatic="true" /> <overlay android:targetPackage="com.android.providers.settings" android:isStatic="true" />
</manifest> </manifest>

View file

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- <!--
Copyright (C) 2022 The LineageOS Project Copyright (C) 2022-2023 The LineageOS Project
SPDX-License-Identifier: Apache-2.0 SPDX-License-Identifier: Apache-2.0
--> -->
<resources> <resources>
<!-- Default for Settings.Global.DEVICE_NAME $1=MODEL--> <!-- Default for Settings.Global.DEVICE_NAME $1=MODEL-->
<string name="def_device_name_simple">motorola edge (2021)</string> <string name="def_device_name_simple">Motorola g200 5G</string>
</resources> </resources>

View file

@ -1,5 +1,5 @@
runtime_resource_overlay { runtime_resource_overlay {
name: "SystemUIResBerlna", name: "SystemUIResXpeng",
sdk_version: "current", sdk_version: "current",
vendor: true vendor: true
} }

View file

@ -5,6 +5,6 @@
--> -->
<manifest xmlns:android="http://schemas.android.com/apk/res/android" <manifest xmlns:android="http://schemas.android.com/apk/res/android"
coreApp="true" coreApp="true"
package="com.android.systemui.overlay.berlna"> package="com.android.systemui.overlay.xpeng">
<overlay android:targetPackage="com.android.systemui" android:isStatic="true" /> <overlay android:targetPackage="com.android.systemui" android:isStatic="true" />
</manifest> </manifest>

View file

@ -8,9 +8,9 @@
<dimen name="status_bar_padding_start">24dp</dimen> <dimen name="status_bar_padding_start">24dp</dimen>
<!-- the padding on the top of the statusbar (usually 0) --> <!-- the padding on the top of the statusbar (usually 0) -->
<dimen name="status_bar_padding_top">10px</dimen> <dimen name="status_bar_padding_top">19.0px</dimen>
<dimen name="rounded_corner_content_padding">6px</dimen> <dimen name="rounded_corner_content_padding">5.0px</dimen>
<!-- Height of the status bar header bar when on Keyguard --> <!-- Height of the status bar header bar when on Keyguard -->
<dimen name="status_bar_header_height_keyguard">@*android:dimen/status_bar_height</dimen> <dimen name="status_bar_header_height_keyguard">@*android:dimen/status_bar_height</dimen>
@ -18,7 +18,7 @@
<!-- Margin on the left side of the carrier text on Keyguard --> <!-- Margin on the left side of the carrier text on Keyguard -->
<dimen name="keyguard_carrier_text_margin">@dimen/status_bar_padding_start</dimen> <dimen name="keyguard_carrier_text_margin">@dimen/status_bar_padding_start</dimen>
<dimen name="system_icons_keyguard_padding_end">10.0px</dimen> <dimen name="system_icons_keyguard_padding_end">9.0px</dimen>
<!-- Location on the screen of the center of the physical power button. --> <!-- Location on the screen of the center of the physical power button. -->
<dimen name="physical_power_button_center_screen_location_y">810px</dimen> <dimen name="physical_power_button_center_screen_location_y">810px</dimen>

View file

@ -1,89 +0,0 @@
#!/vendor/bin/sh
#
# Identify fingerprint sensor model
#
# Copyright (c) 2019 Lenovo
# All rights reserved.
#
# Changed Log:
# ---------------------------------
# April 15, 2019 chengql2@lenovo.com Initial version
# April 28, 2019 chengql2 Add fps_id creating step
# December 2, 2019 chengql2 Store fps_id into persist fs, and identify sensor
# again when secure unit boots as factory mode.
script_name=${0##*/}
script_name=${script_name%.*}
function log {
echo "$script_name: $*" > /dev/kmsg
}
persist_fps_id=/mnt/vendor/persist/fps/vendor_id
FPS_VENDOR_GOODIX=goodix
FPS_VENDOR_EGIS=egis
FPS_VENDOR_NONE=none
function is_file_ready {
if [ "$(ls $1)" != "" ]; then
return 0
fi
log "$0 - wait for $1 ..."
for i in $(seq 1 100); do
if [ "$(ls $1)" == "" ]; then
continue
fi
return 0
done
log "$0 - timeout"
return 1
}
function ident_fps {
log "- install Goodix FPS kernel module"
insmod /vendor/lib/modules/goodix_fod_mmi.ko
log "- identify Goodix fingerprint sensor"
is_file_ready /dev/goodix_fp
is_file_ready /vendor/firmware_mnt/image/goodixfp.mdt
/vendor/bin/hw/goodix_ident
if [ $? -eq 0 ]; then
log "ok"
echo $FPS_VENDOR_GOODIX > $persist_fps_id
return 0
fi
log "- uninstall Goodix FPS kernel module"
rmmod goodix_fod_mmi
log "- install Egis FPS kernel module"
insmod /vendor/lib/modules/ets_fps_mmi.ko
echo $FPS_VENDOR_EGIS > $persist_fps_id
return 0
}
if [ ! -f $persist_fps_id ]; then
ident_fps
return $?
fi
fps_vendor=$(cat $persist_fps_id)
if [ -z $fps_vendor ]; then
fps_vendor=$FPS_VENDOR_NONE
fi
log "FPS vendor: $fps_vendor"
if [ $fps_vendor == $FPS_VENDOR_EGIS ]; then
log "- install EgisTech FPS kernel module"
insmod /vendor/lib/modules/ets_fps_mmi.ko
return $?
fi
if [ $fps_vendor == $FPS_VENDOR_GOODIX ]; then
log "- install Goodix FPS kernel module"
insmod /vendor/lib/modules/goodix_fod_mmi.ko
return $?
fi
ident_fps
return $?

View file

@ -7,103 +7,172 @@
# #
# April 15, 2019 chengql2@lenovo.com Initial version # April 15, 2019 chengql2@lenovo.com Initial version
# December 2, 2019 chengql2 Store fps_id into persist fs # December 2, 2019 chengql2 Store fps_id into persist fs
# November 19, 2020 zengzm refactor the code, support more than 3 fingerprint sensors; support config.
# get the filename, contains the file postfix
script_name=${0##*/} script_name=${0##*/}
# remove the file postfix
script_name=${script_name%.*} script_name=${script_name%.*}
function log { function log {
echo "$script_name: $*" > /dev/kmsg echo "$script_name: $*" > /dev/kmsg
} }
persist_fps_id=/mnt/vendor/persist/fps/vendor_id PROP_GKI_PATH=ro.vendor.mot.gki.path
persist_fps_id2=/mnt/vendor/persist/fps/last_vendor_id GKI_PATH=$(getprop $PROP_GKI_PATH)
MAX_TIMES=20
if [ ! -f $persist_fps_id ]; then # for new projects, only need to config varible vendor_list,kernel_so_list,kernel_so_name_list,hal_list
log "warn: no associated persist file found" # vendor_list: the array contains the sensor name, it will be used for system properties.
return -1 # kernel_so_list: the array contains the kernel so's absolute path. It will be used at insmod.
# kernel_so_name_list: the array contains the kernel so's name. It will be used at rmmod.
# hal_list: the array contains the hal service name.
#
# note: all arrays should have the same size.
vendor_list=('egis' 'fpc' 'goodix')
kernel_so_list=("/vendor/lib/modules/$GKI_PATH/rbs_fps_mmi.ko" "/vendor/lib/modules/$GKI_PATH/fpc1020_mmi.ko" "/vendor/lib/modules/$GKI_PATH/goodix_fod_mmi.ko")
kernel_so_name_list=("rbs_fps_mmi.ko" "fpc1020_mmi.ko" "goodix_fod_mmi.ko")
hal_list=('ets_hal' 'fps_hal' 'vendor.fps_hal')
last_vendor_index=`expr ${#vendor_list[@]} - 1`
vendor_list_size=${#vendor_list[@]}
if [ $vendor_list_size != ${#kernel_so_list[@]} ]; then
log "error, vendor_list.size is not equal to kernel_so_list"
return 255
fi fi
FPS_VENDOR_NONE=none if [ $vendor_list_size != ${#kernel_so_name_list[@]} ]; then
FPS_VENDOR_EGIS=egis log "error, vendor_list.size is not equal to kernel_so_name_list"
FPS_VENDOR_GOODIX=goodix return 255
fi
if [ $vendor_list_size != ${#hal_list[@]} ]; then
log "error, vendor_list.size is not equal to hal_list"
return 255
fi
# At the current boot, what is the fingerprint sensor
persist_fps_id=/mnt/vendor/persist/fps/vendor_id
# what is the fingerprint sensor successfully installed before.
persist_fps_id2=/mnt/vendor/persist/fps/last_vendor_id
FPS_VENDOR_NONE=none
MAX_TIMES=20
# this property store FPS_STATUS_NONE or FPS_STATUS_OK
# after start fingerprint hal service, the hal service will set this property.
prop_fps_status=vendor.hw.fingerprint.status prop_fps_status=vendor.hw.fingerprint.status
# use this to trigger init.mmi.rc
prop_fps_ident=vendor.hw.fps.ident
# if $prop_fps_status=$FPS_STATUS_OK, then will set prop_persist_fps to the specific vendor name.
prop_persist_fps=persist.vendor.hardware.fingerprint prop_persist_fps=persist.vendor.hardware.fingerprint
FPS_STATUS_NONE=none FPS_STATUS_NONE=none
FPS_STATUS_OK=ok FPS_STATUS_OK=ok
function find_vendor_index() {
# param1: the specific vendor name
# return: the vendor index in vendor_list. the valid index is from 0; if not found,return 255
for temp_vendor_index in $(seq 0 $last_vendor_index)
do
if [ "${vendor_list[temp_vendor_index]}" = "$1" ]; then
return $temp_vendor_index
fi
done
return 255
}
function start_hal_service(){
# param1: the vendor index
# return: 0 means success, will setprop $prop_persist_fps
setprop $prop_fps_status $FPS_STATUS_NONE
setprop $prop_fps_ident $FPS_STATUS_NONE
insmod ${kernel_so_list[$1]}
sleep 1
setprop $prop_fps_ident ${vendor_list[$1]}
log "start ${hal_list[$1]}"
start ${hal_list[$1]}
for ii in $(seq 1 $MAX_TIMES)
do
sleep 0.1
fps_status=$(getprop $prop_fps_status)
# log "check fps vendor status: $fps_status"
if [ $fps_status != $FPS_STATUS_NONE ]; then
break
fi
done
log "fingerprint HAL status: $fps_status"
if [ $fps_status == $FPS_STATUS_OK ]; then
log "start ${hal_list[$1]} hal success"
setprop $prop_persist_fps ${vendor_list[$1]}
return 0
fi
log "start ${hal_list[$1]} hal failed, remove kernel so: ${kernel_so_name_list[$1]} "
setprop ctl.stop ${hal_list[$1]}
rmmod ${kernel_so_name_list[$1]}
sleep 0.1
# if failed,return 255
return 255
}
# set last fingerprint sensor
fps_vendor=$(cat $persist_fps_id)
if [ -n "$fps_vendor" ] && [ "$fps_vendor" != $FPS_STATUS_NONE ]; then
echo $fps_vendor > $persist_fps_id2
fi
# get the identified fingerprint sensor
fps_vendor2=$(cat $persist_fps_id2) fps_vendor2=$(cat $persist_fps_id2)
if [ -z $fps_vendor2 ]; then if [ -z $fps_vendor2 ]; then
fps_vendor2=$FPS_VENDOR_NONE fps_vendor2=$FPS_VENDOR_NONE
fi fi
log "FPS vendor (last): $fps_vendor2" log "FPS vendor (last): $fps_vendor2"
fps_vendor=$(cat $persist_fps_id) fps_vendor=$(cat $persist_fps_id)
if [ -z $fps_vendor ]; then if [ -z $fps_vendor ]; then
fps_vendor=$FPS_VENDOR_NONE fps_vendor=$FPS_VENDOR_NONE
fi fi
log "FPS vendor: $fps_vendor" log "FPS vendor (current): $fps_vendor"
if [ $fps_vendor == $FPS_STATUS_NONE ]; then vendor_index=255
log "warn: boot as the last FPS" # try to start the most recent success launched sensor.
fps=$fps_vendor2 if [ $fps_vendor != $FPS_STATUS_NONE ]; then
else find_vendor_index $fps_vendor
fps=$fps_vendor vendor_index=$?
fi if [ $vendor_index != 255 ]; then
log "start $fps_vendor hal service"
for i in $(seq 1 2); do start_hal_service $vendor_index
setprop $prop_fps_status $FPS_STATUS_NONE if [ $? != 255 ]; then
if [ $fps == $FPS_VENDOR_GOODIX ]; then
log "- start service 'goodix_hal'"
start goodix_hal
else
log "- start service 'ets_hal'"
start ets_hal
fi
sleep 1.2
fps_status=$(getprop $prop_fps_status)
if [ $fps_status == $FPS_STATUS_NONE ]; then
log "- wait for fingerprint HAL service ..."
for j in $(seq 1 100); do
fps_status=$(getprop $prop_fps_status)
if [ $fps_status != $FPS_STATUS_NONE ]; then
break
fi
sleep 0.2
done
fi
log "status: $fps_status"
if [ $fps_status == $FPS_STATUS_OK ]; then
log "HAL success"
setprop $prop_persist_fps $fps
if [ $fps_vendor2 == $fps ]; then
return 0 return 0
fi fi
log "- update FPS vendor (last)" fi
echo $fps > $persist_fps_id2 fi
log "- done"
return 0 # try all the fingerprint sensors
for temp_vendor_index in $(seq 0 $last_vendor_index)
do
if [ $temp_vendor_index == $vendor_index ]; then
continue
fi fi
if [ $fps == $fps_vendor2 ]; then if [ ! -e ${kernel_so_list[$temp_vendor_index]} ]; then
if [ $fps == $FPS_VENDOR_GOODIX ]; then log "does not exist ${kernel_so_list[$temp_vendor_index]},ignore this fingerprint sensor"
rmmod goodix_fod_mmi continue
insmod /vendor/lib/modules/ets_fps_mmi.ko fi
fps=$FPS_VENDOR_EGIS
else start_hal_service $temp_vendor_index
rmmod ets_fps_mmi if [ $? != 255 ]; then
insmod /vendor/lib/modules/goodix_fod_mmi.ko echo ${vendor_list[$temp_vendor_index]} > $persist_fps_id
fps=$FPS_VENDOR_GOODIX return 0
fi
log "- update FPS vendor"
echo $fps > $persist_fps_id
sleep 1
else
log "error: HAL fail again"
setprop $prop_persist_fps $FPS_VENDOR_NONE
echo $FPS_VENDOR_NONE > $persist_fps_id
log "- done"
return 1
fi fi
done done
log "error, no fingerprint sensor found"
setprop $prop_persist_fps $FPS_VENDOR_NONE
echo $FPS_VENDOR_NONE > $persist_fps_id

View file

@ -4,28 +4,28 @@ on early-init && property:ro.bootmode=mot-factory
insmod /vendor/lib/modules/moto_f_usbnet.ko insmod /vendor/lib/modules/moto_f_usbnet.ko
on early-init on early-init
exec_background u:r:vendor_modprobe:s0 -- /vendor/bin/modprobe -a -d /vendor/lib/modules/${ro.vendor.mot.gki.path} mmi_annotate mmi_info mmi_relay exec_background u:r:vendor_modprobe:s0 -- /vendor/bin/modprobe -a -d /vendor/lib/modules/${ro.vendor.mot.gki.path} mmi_annotate mmi_info mmi_relay
on early-init on early-init
insmod /vendor/lib/modules/bm_adsp_ulog.ko insmod /vendor/lib/modules/aw882xx_k504.ko
insmod /vendor/lib/modules/mmi_charger.ko insmod /vendor/lib/modules/bm_adsp_ulog.ko
insmod /vendor/lib/modules/qti_glink_charger.ko insmod /vendor/lib/modules/camera.ko
insmod /vendor/lib/modules/aw882xx_k504.ko insmod /vendor/lib/modules/cci_intf.ko
insmod /vendor/lib/modules/mmi_sys_temp.ko insmod /vendor/lib/modules/fpc1020_mmi.ko
insmod /vendor/lib/modules/wl2864c.ko insmod /vendor/lib/modules/goodix_fod_mmi.ko
insmod /vendor/lib/modules/goodix_mmi.ko insmod /vendor/lib/modules/leds_aw99703.ko
insmod /vendor/lib/modules/camera.ko insmod /vendor/lib/modules/leds_lm3697.ko
insmod /vendor/lib/modules/aw8695.ko insmod /vendor/lib/modules/mmi_charger.ko
insmod /vendor/lib/modules/cci_intf.ko insmod /vendor/lib/modules/mmi_sys_temp.ko
insmod /vendor/lib/modules/qpnp_adaptive_charge.ko insmod /vendor/lib/modules/qpnp_adaptive_charge.ko
insmod /vendor/lib/modules/5.4-gki/camera.ko insmod /vendor/lib/modules/qti_glink_charger.ko
insmod /vendor/lib/modules/5.4-gki/aw8695.ko insmod /vendor/lib/modules/rbs_fps_mmi.ko
start vendor.mmi_modules insmod /vendor/lib/modules/wl2866d.ko
on post-fs on post-fs
# Sensors # Sensors
chown system system /sys/devices/platform/soc/a94000.spi/spi_master/spi0/spi0.0/touchscreen/NVT-ts/double_tap_enabled chown system system /sys/devices/platform/soc/998000.spi/spi_master/spi0/spi0.0/touchscreen/NVT-ts/double_tap_enabled
chown system system /sys/devices/platform/soc/a94000.spi/spi_master/spi0/spi0.0/touchscreen/NVT-ts/double_tap_pressed chown system system /sys/devices/platform/soc/998000.spi/spi_master/spi0/spi0.0/touchscreen/NVT-ts/double_tap_pressed
on post-fs-data on post-fs-data
mkdir /mnt/vendor/persist/tof 0755 vendor_tcmd camera mkdir /mnt/vendor/persist/tof 0755 vendor_tcmd camera
@ -42,7 +42,6 @@ on post-fs-data
# Param updater data for various modules # Param updater data for various modules
mkdir /data/vendor/param 0775 system system mkdir /data/vendor/param 0775 system system
mkdir /data/vendor/tzstorage/goodix 0770 system system mkdir /data/vendor/tzstorage/goodix 0770 system system
exec_start vendor.ident-fps-overlay-sh
on early-boot on early-boot
# Goodix fingerprint # Goodix fingerprint
@ -50,52 +49,65 @@ on early-boot
chmod 0664 /dev/goodix_fp chmod 0664 /dev/goodix_fp
on boot on boot
chmod 0664 /mnt/vendor/persist/factory/audio/aw_cali.bin
mkdir /data/vendor/gf_data 0770 system system
mkdir /mnt/vendor/persist/goodix 0770 system system
#change adsp pmic test command file access permission #change adsp pmic test command file access permission
chown vendor_tcmd system /sys/devices/platform/soc/soc:qcom,pmic_glink/soc:qcom,pmic_glink:mmi,qti-glink-charger/tcmd chown vendor_tcmd system /sys/devices/platform/soc/soc:qcom,pmic_glink/soc:qcom,pmic_glink:mmi,qti-glink-charger/tcmd
chown vendor_tcmd system /sys/devices/platform/soc/soc:qcom,pmic_glink/soc:qcom,pmic_glink:mmi,qti-glink-charger/force_pmic_icl chown vendor_tcmd system /sys/devices/platform/soc/soc:qcom,pmic_glink/soc:qcom,pmic_glink:mmi,qti-glink-charger/force_pmic_icl
chmod 0660 /sys/devices/platform/soc/soc:qcom,pmic_glink/soc:qcom,pmic_glink:mmi,qti-glink-charger/tcmd chmod 0660 /sys/devices/platform/soc/soc:qcom,pmic_glink/soc:qcom,pmic_glink:mmi,qti-glink-charger/tcmd
chmod 0660 /sys/devices/platform/soc/soc:qcom,pmic_glink/soc:qcom,pmic_glink:mmi,qti-glink-charger/force_pmic_icl chmod 0660 /sys/devices/platform/soc/soc:qcom,pmic_glink/soc:qcom,pmic_glink:mmi,qti-glink-charger/force_pmic_icl
chown system system /sys/devices/platform/soc/a94000.i2c/i2c-2/2-0049/double_click # Set adaptive charging perms for HAL
chmod 0660 /sys/devices/platform/soc/a94000.i2c/i2c-2/2-0049/double_click
chown system system /sys/devices/platform/soc/a94000.i2c/i2c-2/2-0049/single_click
chmod 0660 /sys/devices/platform/soc/a94000.i2c/i2c-2/2-0049/single_click
# Set adaptive charging perms for HAL
chown system system /sys/module/qpnp_adaptive_charge/parameters/upper_limit chown system system /sys/module/qpnp_adaptive_charge/parameters/upper_limit
chown system system /sys/module/qpnp_adaptive_charge/parameters/lower_limit chown system system /sys/module/qpnp_adaptive_charge/parameters/lower_limit
# allow TCMD to access cci
chmod 0660 /dev/cci_intf
chown system camera /dev/cci_intf
# touch api
chown system system /sys/class/touchscreen/primary/interpolation
chmod 0660 /sys/class/touchscreen/primary/interpolation
chown system system /sys/class/touchscreen/primary/first_filter
chmod 0660 /sys/class/touchscreen/primary/first_filter
chown system system /sys/class/touchscreen/primary/edge
chmod 0660 /sys/class/touchscreen/primary/edge
# touch screen calibration file # touch screen calibration file
mkdir /mnt/vendor/persist/touch mkdir /mnt/vendor/persist/touch
chown vendor_tcmd system /mnt/vendor/persist/touch chown vendor_tcmd system /mnt/vendor/persist/touch
chmod 0775 /mnt/vendor/persist/touch chmod 0775 /mnt/vendor/persist/touch
service capsense_reset /system/vendor/bin/capsense_reset service capsense_reset /system/vendor/bin/capsense_reset
class core class core
user system user system
group system input group system input
disabled disabled
on property:sys.boot_completed=1 on property:sys.boot_completed=1
start capsense_reset start capsense_reset
on property:persist.vendor.paramfile.parse_panel=1 service egis_ident /vendor/bin/hw/egis_ident
write /sys/devices/platform/soc/soc:qcom,dsi-display-primary/dsi_display_parse_para "1"
service vendor.ident-fps-overlay-sh /vendor/bin/init.oem.fingerprint.overlay.sh
class core
user root
group drmrpc system
oneshot
disabled
service vendor.ident-fps-sh /vendor/bin/init.oem.fingerprint.sh
class core
user root
group drmrpc system
oneshot
disabled
service egis_ident /vendor/bin/egis_ident
class late_start class late_start
user system user system
group system group system
oneshot oneshot
disabled disabled
service fpc_ident /vendor/bin/hw/fpc_ident
class late_start
user system
group system
oneshot
disabled
service gf_ident /vendor/bin/hw/goodix_ident
class late_start
user system
group system input uhid
oneshot
disabled
service vendor.hal-fps-sh /vendor/bin/init.oem.fingerprint2.sh
class late_start
user root
group system
oneshot

View file

@ -0,0 +1,22 @@
# Egistec fingerprint feature
on post-fs-data
mkdir /persist/egis 0770 system system
chmod 0660 /sys/devices/platform/egis_input/navigation_event
chmod 0660 /sys/devices/platform/egis_input/navigation_enable
chmod 0660 /sys/devices/soc/0.et320/etspi_enable
chown system system /sys/devices/platform/egis_input/navigation_enable
chown system system /sys/devices/platform/egis_input/navigation_event
chown system system /sys/devices/soc/0.et320/etspi_enable
restorecon /sys/devices/platform/egis_input/navigation_enable
restorecon /sys/devices/platform/egis_input/navigation_event
restorecon /sys/devices/soc/0.et320/etspi_enable
# Egistec fingerprint fp daemon start
# service etsd /system/bin/etsd
# user system
# group system input
# class late_start
on post-fs-data
# service-ets
on property:ro.vendor.hw.fps=false
stop ets_hal

View file

@ -1,11 +1,11 @@
// //
// Copyright (C) 2022 The LineageOS Project // Copyright (C) 2022-2023 The LineageOS Project
// //
// SPDX-License-Identifier: Apache-2.0 // SPDX-License-Identifier: Apache-2.0
// //
cc_library_shared { cc_library_shared {
name: "sensors.berlna", name: "sensors.xpeng",
defaults: ["hidl_defaults"], defaults: ["hidl_defaults"],
srcs: [ srcs: [
"Sensor.cpp", "Sensor.cpp",
@ -29,7 +29,7 @@ cc_library_shared {
"android.hardware.sensors@2.X-multihal", "android.hardware.sensors@2.X-multihal",
], ],
cflags: [ cflags: [
"-DLOG_TAG=\"sensors.berlna\"", "-DLOG_TAG=\"sensors.xpeng\"",
], ],
vendor: true, vendor: true,
} }

View file

@ -1,3 +1,3 @@
sensors.ssc.so sensors.ssc.so
sensors.moto.so sensors.moto.so
sensors.berlna.so sensors.xpeng.so

View file

@ -1,8 +1,10 @@
# HAL Services # HAL Services
/(vendor|system/vendor)/bin/hw/android\.hardware\.lights-service\.berlna u:object_r:hal_light_default_exec:s0 /(vendor|system/vendor)/bin/hw/android\.hardware\.lights-service\.xpeng u:object_r:hal_light_default_exec:s0
/(vendor|system/vendor)/bin/hw/android\.hardware\.light@2\.0-service\.berlna u:object_r:hal_light_default_exec:s0 /(vendor|system/vendor)/bin/hw/android\.hardware\.light@2\.0-service\.xpeng u:object_r:hal_light_default_exec:s0
/(vendor|system/vendor)/bin/init\.oem\.(fingerprint2|fingerprint\.overlay)\.sh u:object_r:vendor_init_fingerprint_exec:s0 /(vendor|system/vendor)/bin/init\.oem\.(fingerprint2|fingerprint\.overlay)\.sh u:object_r:vendor_init_fingerprint_exec:s0
/(vendor|system/vendor)/bin/hw/egis_ident u:object_r:hal_fingerprint_default_exec:s0 /(vendor|system/vendor)/bin/hw/egis_ident u:object_r:hal_fingerprint_default_exec:s0
/(vendor|system/vendor)/bin/hw/fpc_ident u:object_r:hal_fingerprint_default_exec:s0
/(vendor|system/vendor)/bin/hw/goodix_ident u:object_r:hal_fingerprint_default_exec:s0
# Fingerprint # Fingerprint
/(mnt/vendor)/persist/egis(/.*)? u:object_r:fingerprint_vendor_data_file:s0 /(mnt/vendor)/persist/egis(/.*)? u:object_r:fingerprint_vendor_data_file:s0

View file

@ -1,14 +1,14 @@
#!/bin/bash #!/bin/bash
# #
# Copyright (C) 2016 The CyanogenMod Project # Copyright (C) 2016 The CyanogenMod Project
# Copyright (C) 2017-2020 The LineageOS Project # Copyright (C) 2017-2023 The LineageOS Project
# #
# SPDX-License-Identifier: Apache-2.0 # SPDX-License-Identifier: Apache-2.0
# #
set -e set -e
export DEVICE=berlna export DEVICE=xpeng
export DEVICE_COMMON=sm7325-common export DEVICE_COMMON=sm7325-common
export VENDOR=motorola export VENDOR=motorola

View file

@ -1,3 +1,3 @@
# Google # Google
ro.opa.device_model_id=motorola-berlna ro.opa.device_model_id=motorola-xpeng
ro.opa.eligible_device=true ro.opa.eligible_device=true

View file

@ -1,22 +1,12 @@
// //
// Copyright (C) 2020 The LineageOS Project // Copyright (C) 2020-2023 The LineageOS Project
// //
// Licensed under the Apache License, Version 2.0 (the "License"); // SPDX-License-Identifier: Apache-2.0
// 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.
cc_binary { cc_binary {
name: "vendor.lineage.touch@1.0-service.berlna", name: "vendor.lineage.touch@1.0-service.xpeng",
vintf_fragments: ["vendor.lineage.touch@1.0-service.berlna.xml"], vintf_fragments: ["vendor.lineage.touch@1.0-service.xpeng.xml"],
init_rc: ["vendor.lineage.touch@1.0-service.berlna.rc"], init_rc: ["vendor.lineage.touch@1.0-service.xpeng.rc"],
defaults: ["hidl_defaults"], defaults: ["hidl_defaults"],
relative_install_path: "hw", relative_install_path: "hw",
proprietary: true, proprietary: true,

View file

@ -1,20 +1,10 @@
/* /*
* Copyright (C) 2020 The LineageOS Project * Copyright (C) 2020-2023 The LineageOS Project
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * SPDX-License-Identifier: Apache-2.0
* 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.
*/ */
#define LOG_TAG "lineage.touch@1.0-service.berlna" #define LOG_TAG "lineage.touch@1.0-service.xpeng"
#include <android-base/logging.h> #include <android-base/logging.h>
#include <hidl/HidlTransportSupport.h> #include <hidl/HidlTransportSupport.h>

View file

@ -1,4 +1,4 @@
service vendor.touch-hal-1-0 /vendor/bin/hw/vendor.lineage.touch@1.0-service.berlna service vendor.touch-hal-1-0 /vendor/bin/hw/vendor.lineage.touch@1.0-service.xpeng
interface vendor.lineage.touch@1.0::IHighTouchPollingRate default interface vendor.lineage.touch@1.0::IHighTouchPollingRate default
class hal class hal
user system user system

View file

@ -20,7 +20,7 @@ import os
import sys import sys
from hashlib import sha1 from hashlib import sha1
device='berlna' device='xpeng'
vendor='motorola' vendor='motorola'
with open('proprietary-files.txt', 'r') as f: with open('proprietary-files.txt', 'r') as f:

View file

@ -1,5 +1,5 @@
# Bluetooth # Bluetooth
bluetooth.device.default_name=motorola edge (2021) bluetooth.device.default_name=Motorola g200 5G
# Camera # Camera
persist.vendor.camera.physical.num=4 persist.vendor.camera.physical.num=4