bangkk: Initial tree conversion from dubai

* Remove regulatory info overlays.
* Drop dubai camera.
* All configs updated from bangkk MMI-U1TC34M.22-64-18 build.

Change-Id: I1fa8c8d6adb783dad7176a168fed6117211f4899
This commit is contained in:
Anand S 2024-07-03 12:56:42 +05:30
parent 27bb9b7e1c
commit ca38f9abba
No known key found for this signature in database
GPG key ID: 3B2983FA448B3D61
72 changed files with 4912 additions and 3629 deletions

View file

@ -16,6 +16,6 @@
LOCAL_PATH := $(call my-dir)
ifeq ($(TARGET_DEVICE),dubai)
ifeq ($(TARGET_DEVICE),bangkk)
include $(call all-makefiles-under,$(LOCAL_PATH))
endif

View file

@ -15,4 +15,4 @@
#
PRODUCT_MAKEFILES := \
$(LOCAL_DIR)/lineage_dubai.mk
$(LOCAL_DIR)/lineage_bangkk.mk

View file

@ -14,25 +14,25 @@
# limitations under the License.
#
DEVICE_PATH := device/motorola/dubai
DEVICE_PATH := device/motorola/bangkk
# Inherit from motorola sm7325-common
include device/motorola/sm7325-common/BoardConfigCommon.mk
# Inherit from motorola sm6375-common
include device/motorola/sm6375-common/BoardConfigCommon.mk
# Bootloader
TARGET_BOOTLOADER_BOARD_NAME := dubai
TARGET_BOOTLOADER_BOARD_NAME := bangkk
# Fingerprint
TARGET_SURFACEFLINGER_UDFPS_LIB := //$(DEVICE_PATH):libudfps_extension.dubai
TARGET_SURFACEFLINGER_UDFPS_LIB := //$(DEVICE_PATH):libudfps_extension.bangkk
SOONG_CONFIG_qtidisplay_udfps := true
# HIDL
DEVICE_FRAMEWORK_COMPATIBILITY_MATRIX_FILE += $(DEVICE_PATH)/device_framework_matrix_dubai.xml
DEVICE_MANIFEST_FILE += $(DEVICE_PATH)/manifest_dubai.xml
DEVICE_FRAMEWORK_COMPATIBILITY_MATRIX_FILE += $(DEVICE_PATH)/device_framework_matrix_bangkk.xml
DEVICE_MANIFEST_FILE += $(DEVICE_PATH)/manifest_bangkk.xml
# Kernel
BOARD_KERNEL_CMDLINE += androidboot.hab.product=dubai
TARGET_KERNEL_CONFIG += vendor/lineage_dubai.config
BOARD_KERNEL_CMDLINE += androidboot.hab.product=bangkk
TARGET_KERNEL_CONFIG += vendor/bangkk_defconfig
# Kernel Modules
BOARD_VENDOR_KERNEL_MODULES_LOAD := $(strip $(shell cat $(DEVICE_PATH)/modules.load))
@ -41,9 +41,8 @@ BOARD_VENDOR_RAMDISK_RECOVERY_KERNEL_MODULES_LOAD := $(strip $(shell cat $(DEVIC
BOOT_KERNEL_MODULES := $(BOARD_VENDOR_RAMDISK_RECOVERY_KERNEL_MODULES_LOAD)
# Partitions
BOARD_USERDATAIMAGE_PARTITION_SIZE := 116340535296
BOARD_MOT_DP_GROUP_SIZE := 8921284608 # ( BOARD_SUPER_PARTITION_SIZE - 4MB )
BOARD_SUPER_PARTITION_SIZE := 8925478912
BOARD_MOT_DP_GROUP_SIZE := 6706692096 # (BOARD_SUPER_PARTITION_SIZE - 4MB)
BOARD_SUPER_PARTITION_SIZE := 6710886400
# Properties
TARGET_SYSTEM_PROP += $(DEVICE_PATH)/system.prop
@ -52,8 +51,8 @@ TARGET_VENDOR_PROP += $(DEVICE_PATH)/vendor.prop
# Recovery
TARGET_RECOVERY_UI_MARGIN_HEIGHT := 90
# Security
# Security patch level
VENDOR_SECURITY_PATCH := 2024-05-01
# inherit from the proprietary version
include vendor/motorola/dubai/BoardConfigVendor.mk
include vendor/motorola/bangkk/BoardConfigVendor.mk

View file

@ -1,3 +1 @@
Device tree for the Motorola edge 30
Information about the device, build and install instructions can be found [here](http://wiki.lineageos.org/devices/dubai/)
# Device configuration files for Motorola moto g84 5G (bangkk)

60
audio/audio_effects.xml Executable file → Normal file
View file

@ -2,7 +2,7 @@
<audio_effects_conf version="2.0" xmlns="http://schemas.android.com/audio/audio_effects_conf/v2_0">
<libraries>
<library name="proxy" path="libeffectproxy.so"/>
<library name="mmieffects" path="libmmieffectswrapper.so"/>
<library name="mot_speaker_helper" path="libspeakerbundle.so"/>
<library name="bundle" path="libbundlewrapper.so"/>
<library name="reverb" path="libreverbwrapper.so"/>
<library name="visualizer" path="libvisualizer.so"/>
@ -10,13 +10,23 @@
<library name="dynamics_processing" path="libdynproc.so"/>
<library name="loudness_enhancer" path="libldnhncr.so"/>
<library name="audio_pre_processing" path="libqcomvoiceprocessing.so"/>
<library name="moto_sst" path="libmsstwrapper.so"/>
<!--DOLBY DAP-->
<library name="dap" path="libswdap.so"/>
<library name="dvl" path="libdlbvol.so"/>
<!--DOLBY END-->
<!--DOLBY GAME-->
<library name="gamedap" path="libswgamedap.so"/>
<!--DOLBY END-->
<!--DOLBY VQE-->
<library name="vqe" path="libswvqe.so"/>
<!--DOLBY END-->
</libraries>
<effects>
<effect name="bassboost" library="bundle" uuid="8631f300-72e2-11df-b57e-0002a5d5c51b"/>
<effect name="virtualizer" library="bundle" uuid="1d4033c0-8557-11df-9f2d-0002a5d5c51b"/>
<effect name="equalizer" library="bundle" uuid="ce772f20-847d-11df-bb17-0002a5d5c51b"/>
<effect name="volume" library="bundle" uuid="119341a0-8469-11df-81f9-0002a5d5c51b"/>
<effect name="mmieffects" library="mmieffects" uuid="bce61ec2-eca4-445c-9dcb-91cc7cce01ba"/>
<effect name="reverb_env_aux" library="reverb" uuid="4a387fc0-8ab3-11df-8bad-0002a5d5c51b"/>
<effect name="reverb_env_ins" library="reverb" uuid="c7a511a0-a3bb-11df-860e-0002a5d5c51b"/>
<effect name="reverb_pre_aux" library="reverb" uuid="f29a1400-a3bb-11df-8ddc-0002a5d5c51b"/>
@ -25,9 +35,55 @@
<effect name="downmix" library="downmix" uuid="93f04452-e4fe-41cc-91f9-e475b6d1d69f"/>
<effect name="dynamics_processing" library="dynamics_processing" uuid="e0e6539b-1781-7261-676f-6d7573696340"/>
<effect name="loudness_enhancer" library="loudness_enhancer" uuid="fa415329-2034-4bea-b5dc-5b381c8d1e2c"/>
<effectProxy name="music_helper" library="proxy" uuid="00905020-4e52-11e4-83aa-0002a5d5c51b">
<libsw library="mot_speaker_helper" uuid="bce61ec2-eca4-445c-9dcb-91cc7cce01ab"/>
<libhw library="mot_speaker_helper" uuid="bce61ec2-eca4-445c-9dcb-91cc7cce01b0"/>
</effectProxy>
<effect name="voice_helper" library="mot_speaker_helper" uuid="bce61ec2-eca4-445c-9dcb-91cc7cce01ac"/>
<effect name="ring_helper" library="mot_speaker_helper" uuid="bce61ec2-eca4-445c-9dcb-91cc7cce01ad"/>
<effect name="notification_helper" library="mot_speaker_helper" uuid="bce61ec2-eca4-445c-9dcb-91cc7cce01ae"/>
<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="moto_sst" library="moto_sst" uuid="01325f27-2882-44f7-bdec-e7ce4ea3a581"/>
<!--DOLBY DAP-->
<effect name="dap" library="dap" uuid="9d4921da-8225-4f29-aefa-39537a04bcaa"/>
<effect name="dlb_music_listener" library="dvl" uuid="40f66c8b-5aa5-4345-8919-53ec431aaa98"/>
<effect name="dlb_ring_listener" library="dvl" uuid="21d14087-558a-4f21-94a9-5002dce64bce"/>
<effect name="dlb_alarm_listener" library="dvl" uuid="6aff229c-30c6-4cc8-9957-dbfe5c1bd7f6"/>
<effect name="dlb_system_listener" library="dvl" uuid="874db4d8-051d-4b7b-bd95-a3bebc837e9e"/>
<effect name="dlb_notification_listener" library="dvl" uuid="1f0091e3-6ad8-40fe-9b09-5948f9a26e7e"/>
<!--DOLBY END-->
<!--DOLBY GAME-->
<effect name="gamedap" library="gamedap" uuid="3783c334-d3a0-4d13-874f-0032e5fb80e2"/>
<!--DOLBY END-->
<!--DOLBY VQE-->
<effect name="vqe" library="vqe" uuid="64a0f614-7fa4-48b8-b081-d59dc954616f"/>
<!--DOLBY END-->
</effects>
<postprocess>
<stream type="music">
<apply effect="music_helper"/>
<apply effect="dlb_music_listener"/>
</stream>
<stream type="ring">
<apply effect="ring_helper"/>
<apply effect="dlb_ring_listener"/>
</stream>
<stream type="alarm">
<apply effect="ring_helper"/>
<apply effect="dlb_alarm_listener"/>
</stream>
<stream type="voice_call">
<apply effect="voice_helper"/>
</stream>
<stream type="system">
<apply effect="dlb_system_listener"/>
</stream>
<stream type="notification">
<apply effect="notification_helper"/>
<apply effect="dlb_notification_listener"/>
</stream>
</postprocess>
<preprocess>
<stream type="voice_communication">
<apply effect="aec"/>

2
audio/audio_ext_spkr.conf Executable file → Normal file
View file

@ -1,5 +1,5 @@
global_config {
name Dubai
name Bangkk
sonification_pad 20
sonification_prox_timeout_sec 5
}

View file

@ -0,0 +1,80 @@
# 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
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
}
deep_buffer {
flags AUDIO_OUTPUT_FLAG_DEEP_BUFFER
formats AUDIO_FORMAT_PCM_16_BIT
sampling_rates 48000
bit_width 16
app_type 69936
}
}
inputs {
voip_tx {
flags AUDIO_INPUT_FLAG_VOIP_TX
formats AUDIO_FORMAT_PCM_16_BIT
sampling_rates 48000
bit_width 16
app_type 69946
}
}

58
audio/audio_policy_configuration.xml Executable file → Normal file
View file

@ -45,11 +45,11 @@
samplingRates="44100,48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="deep_buffer" role="source"
flags="AUDIO_OUTPUT_FLAG_NONE">
flags="AUDIO_OUTPUT_FLAG_DEEP_BUFFER">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="hifi_playback" role="source" />
<mixPort name="hifi_playback" role="source" />
<mixPort name="direct_pcm" role="source"
flags="AUDIO_OUTPUT_FLAG_DIRECT">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
@ -90,10 +90,10 @@
<mixPort name="primary input" role="sink">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000"
channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_IN_FRONT_BACK"/>
channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_IN_FRONT_BACK,AUDIO_CHANNEL_IN_AMBISONIC,AUDIO_CHANNEL_INDEX_MASK_3,AUDIO_CHANNEL_INDEX_MASK_4"/>
<profile name="" format="AUDIO_FORMAT_PCM_8_24_BIT"
samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000"
channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_IN_FRONT_BACK"/>
channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO,AUDIO_CHANNEL_IN_FRONT_BACK,AUDIO_CHANNEL_IN_AMBISONIC,AUDIO_CHANNEL_INDEX_MASK_3,AUDIO_CHANNEL_INDEX_MASK_4"/>
</mixPort>
<mixPort name="scc input" role="sink" flags="AUDIO_INPUT_FLAG_HW_HOTWORD">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
@ -117,9 +117,9 @@
channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO"/>
</mixPort>
<mixPort name="voip_rx" role="source"
flags="AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_VOIP_RX">
flags="AUDIO_OUTPUT_FLAG_VOIP_RX">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="8000,16000,32000,48000" channelMasks="AUDIO_CHANNEL_OUT_STEREO,AUDIO_CHANNEL_OUT_MONO"/>
samplingRates="8000,16000,32000,48000" channelMasks="AUDIO_CHANNEL_OUT_MONO,AUDIO_CHANNEL_OUT_STEREO"/>
</mixPort>
<mixPort name="voip_tx" role="sink"
flags="AUDIO_INPUT_FLAG_VOIP_TX">
@ -147,6 +147,15 @@
</devicePort>
<devicePort tagName="BT SCO Car Kit" type="AUDIO_DEVICE_OUT_BLUETOOTH_SCO_CARKIT" role="sink">
</devicePort>
<devicePort tagName="BT A2DP Out" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP" role="sink"
encodedFormats="AUDIO_FORMAT_SBC AUDIO_FORMAT_AAC AUDIO_FORMAT_LDAC AUDIO_FORMAT_APTX AUDIO_FORMAT_APTX_HD AUDIO_FORMAT_CELT AUDIO_FORMAT_APTX_ADAPTIVE">
</devicePort>
<devicePort tagName="BT A2DP Headphones" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES" role="sink"
encodedFormats="AUDIO_FORMAT_SBC AUDIO_FORMAT_AAC AUDIO_FORMAT_LDAC AUDIO_FORMAT_APTX AUDIO_FORMAT_APTX_HD AUDIO_FORMAT_CELT AUDIO_FORMAT_APTX_ADAPTIVE">
</devicePort>
<devicePort tagName="BT A2DP Speaker" type="AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER" role="sink"
encodedFormats="AUDIO_FORMAT_SBC AUDIO_FORMAT_AAC AUDIO_FORMAT_LDAC AUDIO_FORMAT_APTX AUDIO_FORMAT_APTX_HD AUDIO_FORMAT_CELT AUDIO_FORMAT_APTX_ADAPTIVE">
</devicePort>
<devicePort tagName="Proxy" type="AUDIO_DEVICE_OUT_PROXY" role="sink">
</devicePort>
<devicePort tagName="HDMI Out" type="AUDIO_DEVICE_OUT_HDMI" role="sink">
@ -194,6 +203,14 @@
sources="primary output,deep_buffer,direct_pcm,voip_rx"/>
<route type="mix" sink="BT SCO Car Kit"
sources="primary output,deep_buffer,direct_pcm,voip_rx"/>
<route type="mix" sink="BT A2DP Out"
sources="primary output,deep_buffer,direct_pcm,compressed_offload,voip_rx"/>
<route type="mix" sink="BT A2DP Headphones"
sources="primary output,deep_buffer,direct_pcm,compressed_offload,voip_rx"/>
<route type="mix" sink="BT A2DP Speaker"
sources="primary output,deep_buffer,direct_pcm,compressed_offload,voip_rx"/>
<route type="mix" sink="Proxy"
sources="primary output,deep_buffer,direct_pcm,compressed_offload,voip_rx"/>
<route type="mix" sink="HDMI Out"
sources="primary output,deep_buffer,direct_pcm,compressed_offload,voip_rx"/>
<route type="mix" sink="USB Device Out"
@ -204,8 +221,6 @@
sources="voice_tx,incall_music_uplink"/>
<route type="mix" sink="voice_rx"
sources="Telephony Rx"/>
<route type="mix" sink="Proxy"
sources="primary output,deep_buffer,direct_pcm,compressed_offload"/>
<route type="mix" sink="voip_tx"
sources="Built-In Mic,Built-In Back Mic,BT SCO Headset Mic,USB Device In,USB Headset In,Wired Headset Mic"/>
<route type="mix" sink="primary input"
@ -219,17 +234,34 @@
</module>
<!-- A2dp Audio HAL -->
<xi:include href="a2dp_in_audio_policy_configuration.xml"/>
<module name="a2dp" halVersion="2.0">
<mixPorts>
<mixPort name="a2dp input" role="sink">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="44100,48000" channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO"/>
</mixPort>
</mixPorts>
<devicePorts>
<devicePort tagName="BT A2DP In" type="AUDIO_DEVICE_IN_BLUETOOTH_A2DP" role="source">
<profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
samplingRates="44100,48000" channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO"/>
</devicePort>
</devicePorts>
<routes>
<route type="mix" sink="a2dp input"
sources="BT A2DP In"/>
</routes>
</module>
<!-- Usb Audio HAL -->
<xi:include href="usb_audio_policy_configuration.xml"/>
<!-- Remote Submix Audio HAL -->
<xi:include href="r_submix_audio_policy_configuration.xml"/>
<!-- Bluetooth Audio HAL -->
<xi:include href="bluetooth_audio_policy_configuration.xml"/>
<!-- qti non-offload configuration -->
<xi:include href="/vendor/etc/bluetooth_qti_audio_policy_configuration.xml"/>
</modules>
<!-- End of Modules section -->

60
audio/audio_policy_volumes.xml Executable file → Normal file
View file

@ -8,22 +8,28 @@ volume index from 0 to 100.
</volume>
-->
<volumes>
<volume stream="AUDIO_STREAM_VOICE_CALL" deviceCategory="DEVICE_CATEGORY_HEADSET">
<point>0,-3700</point>
<point>20,-2600</point>
<point>40,-1800</point>
<point>60,-1100</point>
<point>80,-500</point>
<point>100,0</point>
</volume>
<volume stream="AUDIO_STREAM_VOICE_CALL" deviceCategory="DEVICE_CATEGORY_SPEAKER">
<point>0,-3000</point>
<point>33,-2000</point>
<point>66,-1000</point>
<point>100,0</point>
</volume>
<volume stream="AUDIO_STREAM_VOICE_CALL" deviceCategory="DEVICE_CATEGORY_EARPIECE"
<volume stream="AUDIO_STREAM_VOICE_CALL" deviceCategory="DEVICE_CATEGORY_HEADSET"
ref="DEFAULT_VOICE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_VOICE_CALL" deviceCategory="DEVICE_CATEGORY_SPEAKER">
<point>0,-3000</point>
<point>25,-2500</point>
<point>37,-2100</point>
<point>50,-1800</point>
<point>63,-1500</point>
<point>75,-1200</point>
<point>87,-900</point>
<point>100,0</point>
</volume>
<volume stream="AUDIO_STREAM_VOICE_CALL" deviceCategory="DEVICE_CATEGORY_EARPIECE">
<point>0,-2500</point>
<point>25,-1880</point>
<point>37,-1450</point>
<point>50,-1250</point>
<point>63,-900</point>
<point>75,-650</point>
<point>87,-350</point>
<point>100,0</point>
</volume>
<volume stream="AUDIO_STREAM_VOICE_CALL" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
ref="DEFAULT_MEDIA_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_SYSTEM" deviceCategory="DEVICE_CATEGORY_HEADSET">
@ -32,8 +38,12 @@ volume index from 0 to 100.
<point>66,-2200</point>
<point>100,-1800</point>
</volume>
<volume stream="AUDIO_STREAM_SYSTEM" deviceCategory="DEVICE_CATEGORY_SPEAKER"
ref="DEFAULT_SYSTEM_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_SYSTEM" deviceCategory="DEVICE_CATEGORY_SPEAKER">
<point>1,-3600</point>
<point>33,-2700</point>
<point>66,-1800</point>
<point>100,-900</point>
</volume>
<volume stream="AUDIO_STREAM_SYSTEM" deviceCategory="DEVICE_CATEGORY_EARPIECE"
ref="DEFAULT_SYSTEM_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_SYSTEM" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
@ -46,12 +56,8 @@ volume index from 0 to 100.
ref="DEFAULT_DEVICE_CATEGORY_EARPIECE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_RING" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"
ref="SONIFICATION_CATEGORY_EXT_MEDIA_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_MUSIC" deviceCategory="DEVICE_CATEGORY_HEADSET">
<point>1,-6000</point>
<point>33,-3800</point>
<point>66,-1800</point>
<point>100,0</point>
</volume>
<volume stream="AUDIO_STREAM_MUSIC" deviceCategory="DEVICE_CATEGORY_HEADSET"
ref="DEFAULT_MEDIA_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_MUSIC" deviceCategory="DEVICE_CATEGORY_SPEAKER"
ref="DEFAULT_DEVICE_CATEGORY_SPEAKER_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_MUSIC" deviceCategory="DEVICE_CATEGORY_EARPIECE"
@ -68,8 +74,12 @@ volume index from 0 to 100.
ref="SONIFICATION_CATEGORY_EXT_MEDIA_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_NOTIFICATION" deviceCategory="DEVICE_CATEGORY_HEADSET"
ref="DEFAULT_DEVICE_CATEGORY_HEADSET_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_NOTIFICATION" deviceCategory="DEVICE_CATEGORY_SPEAKER"
ref="NOTIFICATION_CATEGORY_SPEAKER_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_NOTIFICATION" deviceCategory="DEVICE_CATEGORY_SPEAKER">
<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"
ref="DEFAULT_DEVICE_CATEGORY_EARPIECE_VOLUME_CURVE"/>
<volume stream="AUDIO_STREAM_NOTIFICATION" deviceCategory="DEVICE_CATEGORY_EXT_MEDIA"

37
audio/default_volume_tables.xml Executable file → Normal file
View file

@ -20,17 +20,17 @@
</reference>
<reference name="SONIFICATION_CATEGORY_SPEAKER_VOLUME_CURVE">
<!-- Speaker Sonification reference Volume Curve -->
<point>1,-4800</point>
<point>33,-3100</point>
<point>66,-1500</point>
<point>1,-3900</point>
<point>33,-2600</point>
<point>66,-1300</point>
<point>100,0</point>
</reference>
<reference name="NOTIFICATION_CATEGORY_SPEAKER_VOLUME_CURVE">
<!-- Speaker Sonification reference Volume Curve -->
<point>1,-4900</point>
<point>33,-3400</point>
<point>66,-2000</point>
<point>100,-700</point>
<point>1,-5300</point>
<point>70,-2390</point>
<point>84,-1010</point>
<point>100,0</point>
</reference>
<reference name="DEFAULT_SYSTEM_VOLUME_CURVE">
<!-- Default System reference Volume Curve -->
@ -41,9 +41,9 @@
</reference>
<reference name="DEFAULT_MEDIA_VOLUME_CURVE">
<!-- Default Media reference Volume Curve -->
<point>1,-4800</point>
<point>34,-3200</point>
<point>67,-1600</point>
<point>1,-5400</point>
<point>34,-3600</point>
<point>67,-1800</point>
<point>100,0</point>
</reference>
<reference name="DEFAULT_VOICE_VOLUME_CURVE">
@ -62,9 +62,20 @@
</reference>
<reference name="DEFAULT_DEVICE_CATEGORY_SPEAKER_VOLUME_CURVE">
<!-- Default is Speaker Media Volume Curve -->
<point>1,-5400</point>
<point>33,-3000</point>
<point>66,-1200</point>
<point>1,-5600</point>
<point>13,-4200</point>
<point>20,-3900</point>
<point>27,-3400</point>
<point>33,-3100</point>
<point>40,-2800</point>
<point>47,-2500</point>
<point>50,-2200</point>
<point>60,-1900</point>
<point>66,-1650</point>
<point>73,-1450</point>
<point>80,-1250</point>
<point>86,-1050</point>
<point>90,-850</point>
<point>100,0</point>
</reference>
<reference name="DEFAULT_DEVICE_CATEGORY_EARPIECE_VOLUME_CURVE">

View file

@ -38,11 +38,14 @@
<device name="SND_DEVICE_IN_SPEAKER_TMIC_AEC_NS" module_id="0x10F35" instance_id="0x0" param_id="0x10EAF" param_value="0x01"/>
<device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC_NS_BROADSIDE" module_id="0x10F34" instance_id="0x0" param_id="0x10EAF" param_value="0x01"/>
<device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC_NS" module_id="0x10F33" instance_id="0x0" param_id="0x10EAF" param_value="0x01"/>
<device name="SND_DEVICE_IN_SPEAKER_MIC_AEC_NS_NN" module_id="0x10F31" instance_id="0x0" param_id="0x10EAF" param_value="0x01"/>
<device name="SND_DEVICE_IN_SPEAKER_MIC_AEC_NS" module_id="0x10F31" instance_id="0x0" param_id="0x10EAF" param_value="0x01"/>
<device name="SND_DEVICE_IN_AUX_MIC_AEC_NS" module_id="0x10F31" instance_id="0x0" param_id="0x10EAF" param_value="0x01"/>
<device name="SND_DEVICE_IN_HANDSET_DMIC_AEC_NS" module_id="0x10F33" instance_id="0x0" param_id="0x10EAF" param_value="0x01"/>
<device name="SND_DEVICE_IN_HANDSET_MIC_AEC_NS" module_id="0x10F31" instance_id="0x0" param_id="0x10EAF" param_value="0x01"/>
<device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC_NS_SB" module_id="0x10F39" instance_id="0x8000" param_id="0x10EAF" param_value="0x01"/>
<device name="SND_DEVICE_IN_SPEAKER_MIC_AEC_NS_SB" module_id="0x10F38" instance_id="0x8000" param_id="0x10EAF" param_value="0x01"/>
<device name="SND_DEVICE_IN_AUX_MIC_AEC_NS_SB" module_id="0x10F38" instance_id="0x8000" param_id="0x10EAF" param_value="0x01"/>
<device name="SND_DEVICE_IN_HANDSET_DMIC_AEC_NS_SB" module_id="0x10F39" instance_id="0x8000" param_id="0x10EAF" param_value="0x01"/>
<device name="SND_DEVICE_IN_HANDSET_MIC_AEC_NS_SB" module_id="0x10F38" instance_id="0x8000" param_id="0x10EAF" param_value="0x01"/>
</aec>
@ -50,11 +53,14 @@
<device name="SND_DEVICE_IN_SPEAKER_TMIC_AEC_NS" module_id="0x10F35" instance_id="0x0" param_id="0x10EAF" param_value="0x02"/>
<device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC_NS_BROADSIDE" module_id="0x10F34" instance_id="0x0" param_id="0x10EAF" param_value="0x02"/>
<device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC_NS" module_id="0x10F33" instance_id="0x0" param_id="0x10EAF" param_value="0x02"/>
<device name="SND_DEVICE_IN_SPEAKER_MIC_AEC_NS_NN" module_id="0x10F31" instance_id="0x0" param_id="0x10EAF" param_value="0x02"/>
<device name="SND_DEVICE_IN_SPEAKER_MIC_AEC_NS" module_id="0x10F31" instance_id="0x0" param_id="0x10EAF" param_value="0x02"/>
<device name="SND_DEVICE_IN_AUX_MIC_AEC_NS" module_id="0x10F31" instance_id="0x0" param_id="0x10EAF" param_value="0x02"/>
<device name="SND_DEVICE_IN_HANDSET_DMIC_AEC_NS" module_id="0x10F33" instance_id="0x0" param_id="0x10EAF" param_value="0x02"/>
<device name="SND_DEVICE_IN_HANDSET_MIC_AEC_NS" module_id="0x10F31" instance_id="0x0" param_id="0x10EAF" param_value="0x02"/>
<device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC_NS_SB" module_id="0x10F39" instance_id="0x8000" param_id="0x10EAF" param_value="0x02"/>
<device name="SND_DEVICE_IN_SPEAKER_MIC_AEC_NS_SB" module_id="0x10F38" instance_id="0x8000" param_id="0x10EAF" param_value="0x02"/>
<device name="SND_DEVICE_IN_AUX_MIC_AEC_NS_SB" module_id="0x10F38" instance_id="0x8000" param_id="0x10EAF" param_value="0x02"/>
<device name="SND_DEVICE_IN_HANDSET_DMIC_AEC_NS_SB" module_id="0x10F39" instance_id="0x8000" param_id="0x10EAF" param_value="0x02"/>
<device name="SND_DEVICE_IN_HANDSET_MIC_AEC_NS_SB" module_id="0x10F38" instance_id="0x8000" param_id="0x10EAF" param_value="0x02"/>
</ns>
@ -77,9 +83,9 @@
<usecase name="USECASE_VOWLAN_CALL" type="in" id="-1"/>
<usecase name="USECASE_VOWLAN_CALL" type="out" id="-1"/>
<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="37"/>
<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="80"/>
<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_PROXY2" type="in" id="42"/>
@ -92,11 +98,11 @@
<usecase name="USECASE_AUDIO_HFP_SCO_WB" type="in" id="12" />
<usecase name="USECASE_AUDIO_PLAYBACK_MMAP" type="out" id="29" />
<usecase name="USECASE_AUDIO_RECORD_MMAP" type="in" id="29" />
<usecase name="USECASE_AUDIO_A2DP_ABR_FEEDBACK" type="in" id="36" />
<usecase name="USECASE_AUDIO_A2DP_ABR_FEEDBACK" type="out" id="36" />
<usecase name="USECASE_AUDIO_A2DP_ABR_FEEDBACK" type="in" id="35" />
<usecase name="USECASE_AUDIO_A2DP_ABR_FEEDBACK" type="out" id="35" />
<usecase name="USECASE_INCALL_MUSIC_UPLINK" type="out" id="23" />
<usecase name="USECASE_INCALL_MUSIC_UPLINK2" type="out" id="23" />
<usecase name="USECASE_AUDIO_RECORD_COMPRESS2" type="in" id="37" />
<usecase name="USECASE_AUDIO_RECORD_COMPRESS2" type="in" id="36" />
<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_UPLINK_AND_DOWNLINK" type="in" id="23" />
@ -104,7 +110,7 @@
<config_params>
<!-- In the below value string, the value indicates default mono -->
<!-- speaker. It can be set to either left or right -->
<param key="mono_speaker" value="left"/>
<param key="mono_speaker" value="right"/>
<param key="true_32_bit" value="true"/>
<param key="hifi_filter" value="false"/>
<param key="native_audio_mode" value="multiple_mix_dsp"/>
@ -134,7 +140,6 @@
</crystalk_devices>
<acdb_ids>
<!-- Output devices -->
<device name="SND_DEVICE_OUT_HANDSET" acdb_id="7" />
<device name="SND_DEVICE_OUT_VOICE_HANDSET" acdb_id="7" />
<device name="SND_DEVICE_OUT_VOICE_HANDSET_TMUS" acdb_id="7" />
<device name="SND_DEVICE_OUT_VOICE_TTY_HCO_HANDSET" acdb_id="7" />
@ -142,12 +147,23 @@
<device name="SND_DEVICE_OUT_USB_HEADSET" acdb_id="45" />
<device name="SND_DEVICE_OUT_USB_HEADPHONES" acdb_id="45" />
<device name="SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES" acdb_id="9" />
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_HEADPHONES" acdb_id="9" />
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_AND_VOICE_HEADPHONES" acdb_id="10" />
<device name="SND_DEVICE_OUT_SPEAKER" acdb_id="14" />
<device name="SND_DEVICE_OUT_SPEAKER_RIGHT" acdb_id="13" />
<device name="SND_DEVICE_OUT_SPEAKER_PROTECTED" acdb_id="14" />
<device name="SND_DEVICE_OUT_SPEAKER_REVERSE" acdb_id="14" />
<device name="SND_DEVICE_OUT_SPEAKER_SAFE" acdb_id="14" />
<device name="SND_DEVICE_OUT_VOICE_SPEAKER" acdb_id="15" />
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_2" acdb_id="15" />
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_PROTECTED" acdb_id="15" />
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_2_PROTECTED" acdb_id="15" />
<device name="SND_DEVICE_OUT_SPEAKER_AND_DISPLAY_PORT" acdb_id="15" />
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_HFP" acdb_id="15" />
<device name="SND_DEVICE_OUT_SPEAKER_AND_HDMI" acdb_id="18" />
<device name="SND_DEVICE_OUT_LINE" acdb_id="77" />
<device name="SND_DEVICE_OUT_SPEAKER_AND_LINE" acdb_id="77" />
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_LINE" acdb_id="77" />
<device name="SND_DEVICE_OUT_VOICE_LINE" acdb_id="78" />
<device name="SND_DEVICE_OUT_VOLTE_NB_ANC_HANDSET" acdb_id="200" />
<device name="SND_DEVICE_OUT_VOLTE_NB_HANDSET_TMUS" acdb_id="200" />
@ -156,32 +172,30 @@
<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_VOLTE_NB_TX" acdb_id="246" />
<device name="SND_DEVICE_OUT_AFE_PROXY" acdb_id="19" />
<!-- Input devices -->
<device name="SND_DEVICE_IN_CAPTURE_VI_FEEDBACK" acdb_id="102" />
<device name="SND_DEVICE_IN_HANDSET_MIC_AEC" acdb_id="4" />
<device name="SND_DEVICE_IN_HANDSET_MIC_AEC_NS" acdb_id="4" />
<device name="SND_DEVICE_IN_HANDSET_MIC_AEC_NS_NN" acdb_id="315" />
<device name="SND_DEVICE_IN_HANDSET_MIC_NS" acdb_id="4" />
<device name="SND_DEVICE_IN_HANDSET_MIC_NN" acdb_id="315" />
<device name="SND_DEVICE_IN_HANDSET_MIC_TOP" acdb_id="88" />
<device name="SND_DEVICE_IN_HANDSET_MIC_NN_TOP" acdb_id="88" />
<device name="SND_DEVICE_IN_HANDSET_MIC_TOP" acdb_id="4" />
<device name="SND_DEVICE_IN_HANDSET_MIC_NN_TOP" acdb_id="4" />
<device name="SND_DEVICE_IN_SPEAKER_DMIC" 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_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_SPEAKER_DMIC" acdb_id="35" />
<device name="SND_DEVICE_IN_VOICE_TTY_VCO_HANDSET_MIC" acdb_id="41" />
<device name="SND_DEVICE_IN_USB_HEADSET_MIC" acdb_id="44" />
<device name="SND_DEVICE_IN_SPEAKER_MIC_AEC" acdb_id="114" />
<device name="SND_DEVICE_IN_SPEAKER_MIC_AEC_NS" acdb_id="114" />
<device name="SND_DEVICE_IN_AUX_MIC_AEC_NS" acdb_id="115" />
<device name="SND_DEVICE_IN_SPEAKER_MIC_NS" acdb_id="114" />
<device name="SND_DEVICE_IN_UNPROCESSED_MIC" acdb_id="11" />
<device name="SND_DEVICE_IN_VOICE_DMIC_TMUS" acdb_id="41" />
<device name="SND_DEVICE_IN_HEADSET_MIC" acdb_id="8" />
<device name="SND_DEVICE_IN_HEADSET_MIC_AEC" acdb_id="47" />
<device name="SND_DEVICE_IN_HEADSET_MIC_CQA" acdb_id="60" />
<device name="SND_DEVICE_IN_CAMCORDER_MIC" acdb_id="61" />
@ -191,7 +205,7 @@
<device name="SND_DEVICE_IN_VOICE_REC_MIC_NS" acdb_id="62" />
<device name="SND_DEVICE_IN_HANDSET_DMIC_AEC" acdb_id="111" />
<device name="SND_DEVICE_IN_HANDSET_DMIC_NS" acdb_id="111" />
<device name="SND_DEVICE_IN_HANDSET_DMIC_AEC_NS" acdb_id="111" />
<device name="SND_DEVICE_IN_HANDSET_MIC_AEC_NS_NN" acdb_id="315" />
<device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC" acdb_id="117" />
<device name="SND_DEVICE_IN_SPEAKER_DMIC_NS" acdb_id="117" />
<device name="SND_DEVICE_IN_THREE_MIC" acdb_id="125" />
@ -204,7 +218,6 @@
<device name="SND_DEVICE_IN_USB_HEADSET_MIC_AEC" acdb_id="244" />
<device name="SND_DEVICE_IN_MIC1" acdb_id="60" />
<device name="SND_DEVICE_IN_MIC2" acdb_id="60" />
<device name="SND_DEVICE_IN_MIC3" acdb_id="60" />
<device name="SND_DEVICE_IN_HDMI_MIC" acdb_id="4" />
<device name="SND_DEVICE_IN_BT_SCO_MIC_NREC" acdb_id="122" />
<device name="SND_DEVICE_IN_BT_SCO_MIC_WB_NREC" acdb_id="123" />
@ -215,20 +228,17 @@
<device name="SND_DEVICE_IN_CAMCORDER_SELFIE_INVERT_LANDSCAPE" acdb_id="61" />
<device name="SND_DEVICE_IN_VOICE_REC_DMIC_STEREO" acdb_id="35" />
<device name="SND_DEVICE_IN_CAPTURE_FM" acdb_id="90" />
<device name="SND_DEVICE_IN_VOICE_SPEAKER_MIC_NN" acdb_id="11" />
<device name="SND_DEVICE_IN_VOICE_SPEAKER_MIC_NN" acdb_id="301" />
<device name="SND_DEVICE_IN_VOICE_HEADSET_MIC_NN" acdb_id="302" />
<device name="SND_DEVICE_IN_VOICE_USB_HEADSET_MIC_NN" acdb_id="303" />
<device name="SND_DEVICE_IN_SPEAKER_MIC_NN" acdb_id="114" />
<device name="SND_DEVICE_IN_SPEAKER_MIC_AEC_NN" acdb_id="114" />
<device name="SND_DEVICE_IN_SPEAKER_MIC_NS_NN" acdb_id="114" />
<device name="SND_DEVICE_IN_SPEAKER_MIC_AEC_NS_NN" acdb_id="114" />
<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_SPEAKER_MIC_GAME" acdb_id="114" />
<device name="SND_DEVICE_IN_SPEAKER_MIC_GAME_NN" acdb_id="114" />
<device name="SND_DEVICE_IN_AUX_MIC_AEC_NS" acdb_id="316" />
<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_NS_NN" acdb_id="304" />
<device name="SND_DEVICE_IN_SPEAKER_MIC_AEC_NS_NN" acdb_id="304" />
<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_HEADSET_MIC_NN" acdb_id="305" />
<device name="SND_DEVICE_IN_HEADSET_MIC_FLUENCE_NN" acdb_id="305" />
<device name="SND_DEVICE_IN_USB_HEADSET_MIC_NN" acdb_id="320" />
<device name="SND_DEVICE_IN_USB_HEADSET_MIC_AEC_NN" acdb_id="306" />
</acdb_ids>
@ -243,48 +253,70 @@
<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_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_HIFI_FILTER" 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="SEN_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_HEADPHONES" backend="speaker-and-headphones" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_HEADPHONES" backend="speaker-and-headphones" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES_HIFI_FILTER" backend="speaker-and-headphones" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_LINE" backend="speaker-and-headphones" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_LINE" backend="speaker-and-headphones" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_ANC_HEADSET" backend="speaker-and-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_VOLTE_NB_HEADSET" backend="headset" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_ANC_HEADSET" backend="headset" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_ANC_HEADSET" backend="headphones" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_LINE" backend="headphones" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_FULL_HEADPHONES" backend="headphones" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_FULL_HEADSET" backend="headset" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_FULL_HEADSET" backend="headphones" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_VCO_HEADPHONES" backend="headphones" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_VCO_HEADSET" backend="headset" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_HANDSET" interface="SEN_MI2S_RX"/>
<device name="SND_DEVICE_OUT_CQA_HANDSET" interface="SEN_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOLTE_NB_HANDSET_TMUS" interface="SEN_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOLTE_NB_ANC_HANDSET" interface="SEN_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_HAC_HANDSET" interface="SEN_MI2S_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER" backend="speaker" interface="SEN_MI2S_RX"/>
<device name="SND_DEVICE_OUT_CQA_SPEAKER" backend="speaker" interface="SEN_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOLTE_NB_SPEAKER" backend="speaker" interface="SEN_MI2S_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_LEFT" backend="speaker" interface="SEN_MI2S_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_RIGHT" backend="speaker" interface="SEN_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER" backend="speaker" interface="SEN_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_HANDSET" interface="SEN_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_ANC_HANDSET" interface="SEN_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOLTE_NB_HANDSET" interface="SEN_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOLTE_NB_HAC_HANDSET" interface="SEN_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_HANDSET_TMUS" interface="SEN_MI2S_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_BT_A2DP" interface="SEN_MI2S_RX-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_HCO_HANDSET" backend="hco" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_VCO_HEADSET" backend="headphones" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_HANDSET" backend="handset" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_CQA_HANDSET" backend="handset" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOLTE_NB_HANDSET_TMUS" backend="handset" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOLTE_NB_ANC_HANDSET" backend="handset" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_HAC_HANDSET" backend="handset" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_RIGHT" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_CQA_SPEAKER" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOLTE_NB_SPEAKER" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_EXTERNAL_1" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_EXTERNAL_2" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_REVERSE" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_VBAT" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES_EXTERNAL_1" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES_EXTERNAL_2" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_HANDSET" backend="handset" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_ANC_HANDSET" backend="handset" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOLTE_NB_HANDSET" backend="handset" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOLTE_NB_HAC_HANDSET" backend="handset" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_HANDSET_TMUS" backend="handset" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_IN_HANDSET_GENERIC_QMIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_STEREO" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_VBAT" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_2" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_2_VBAT" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_HDMI" interface="RX_CDC_DMA_RX_0-and-HDMI"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_DISPLAY_PORT" interface="RX_CDC_DMA_RX_0-and-DISPLAY_PORT"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_BT_A2DP" interface="RX_CDC_DMA_RX_0-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_A2DP" interface="RX_CDC_DMA_RX_0-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_HCO_HANDSET" backend="handset" 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_ANC_HANDSET" interface="SEN_MI2S_RX"/>
<device name="SND_DEVICE_OUT_ANC_HANDSET" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_PROTECTED" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_PROTECTED" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_2_PROTECTED" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_PROTECTED_VBAT" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_PROTECTED_VBAT" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_2_PROTECTED_VBAT" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_IN_HANDSET_MIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_MIC_NN" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_MIC_AEC_NS_NN" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_MIC_TOP" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_MIC_NN_TOP" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_MIC_EXTERNAL" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_MIC_AEC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_MIC_NS" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_MIC_AEC_NS_NN" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_MIC_AEC_NS" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_DMIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_DMIC_AEC" interface="TX_CDC_DMA_TX_3"/>
@ -298,16 +330,14 @@
<device name="SND_DEVICE_IN_SPEAKER_MIC_NS" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_MIC_NS_NN" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_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_SPEAKER_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_SPEAKER_DMIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_DMIC_AEC" 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_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_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_NN" backend="headset-mic" interface="TX_CDC_DMA_TX_4"/>
<device name="SND_DEVICE_IN_HEADSET_MIC_FLUENCE" backend="headset-mic" interface="TX_CDC_DMA_TX_4"/>
@ -333,7 +363,6 @@
<device name="SND_DEVICE_IN_CAMCORDER_MIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_CAMCORDER_BF" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_CAMCORDER_BF_REVERSE" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_CAMCORDER_AUDIO_ZOOM" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_VOICE_DMIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_VOICE_DMIC_TMUS" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_VOICE_SPEAKER_DMIC" interface="TX_CDC_DMA_TX_3"/>
@ -348,34 +377,43 @@
<device name="SND_DEVICE_IN_VOICE_REC_DMIC_STEREO" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_VOICE_REC_DMIC_FLUENCE" 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_QUAD_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_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_MONO_1" interface="SEN_MI2S_TX"/>
<device name="SND_DEVICE_IN_CAPTURE_VI_FEEDBACK_MONO_2" interface="SEN_MI2S_TX"/>
<device name="SND_DEVICE_IN_CAPTURE_VI_FEEDBACK" interface="SEC_MI2S_TX"/>
<device name="SND_DEVICE_IN_CAPTURE_VI_FEEDBACK_MONO_1" interface="SEC_MI2S_TX"/>
<device name="SND_DEVICE_IN_CAPTURE_VI_FEEDBACK_MONO_2" interface="SEC_MI2S_TX"/>
<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_AEC_BROADSIDE" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_DMIC_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_HANDSET_QMIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_QMIC_AEC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_QMIC_NS" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_QMIC_AEC_NS" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_THREE_MIC" 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_AEC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_TMIC_NS" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_TMIC_AEC_NS" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_CAMCORDER_AUDIO_ZOOM" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_VOICE_REC_TMIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_UNPROCESSED_MIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_UNPROCESSED_STEREO_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_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_ANC_HEADSET" backend="speaker-and-headphones" interface="SEN_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_WB" backend="speaker-and-bt-sco-wb" interface="SEN_MI2S_RX-and-SLIMBUS_7_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_SPEAKER_AND_VOICE_HEADPHONES" backend="speaker-and-headphones" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_AND_VOICE_ANC_HEADSET" backend="speaker-and-headphones" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_BT_SCO" backend="speaker-and-bt-sco" interface="RX_CDC_DMA_RX_0-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_SCO" backend="speaker-and-bt-sco" interface="RX_CDC_DMA_RX_0-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_BT_SCO_WB" backend="speaker-and-bt-sco-wb" interface="RX_CDC_DMA_RX_0-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_BT_SCO_WB" backend="speaker-and-bt-sco-wb" interface="RX_CDC_DMA_RX_0-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_USB_HEADSET" backend="speaker-and-usb-headset" interface="RX_CDC_DMA_RX_0-and-USB_AUDIO_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_USB_HEADSET" backend="speaker-and-usb-headset" interface="RX_CDC_DMA_RX_0-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_VCO_USB" backend="usb-headset" interface="USB_AUDIO_RX"/>
<device name="SND_DEVICE_OUT_USB_HEADSET" backend="usb-headset" interface="USB_AUDIO_RX"/>
@ -395,7 +433,6 @@
<device name="SND_DEVICE_IN_VOICE_RECOG_USB_HEADSET_MIC" backend="usb-headset-mic" interface="USB_AUDIO_TX"/>
<device name="SND_DEVICE_IN_MIC1" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_MIC2" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_MIC3" interface="TX_CDC_DMA_TX_3"/>
</backend_names>
<!-- below values are for ref purpose to OEM, doesn't contain actual hardware info on MTP -->
<microphone_characteristics>

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -1,25 +0,0 @@
//
// Copyright (C) 2023 ArrowOS
//
// SPDX-License-Identifier: Apache-2.0
//
android_app {
name: "DubaiCameraService",
srcs: [
"src/**/*.java",
"src/**/*.aidl",
],
certificate: "platform",
platform_apis: true,
privileged: true,
system_ext_specific: true,
required: ["privapp-permissions-dubaicameraservice.xml"],
}
prebuilt_etc {
name: "privapp-permissions-dubaicameraservice.xml",
src: "privapp-permissions-dubaicameraservice.xml",
system_ext_specific: true,
sub_dir: "permissions",
}

View file

@ -1,36 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright (C) 2023 ArrowOS
SPDX-License-Identifier: Apache-2.0
-->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.arrow.dubaicameraservice"
android:sharedUserId="android.uid.system">
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.CAMERA_OPEN_CLOSE_LISTENER" />
<uses-permission android:name="android.permission.READ_PRIVILEGED_PHONE_STATE" />
<uses-permission android:name="android.permission.MODIFY_PHONE_STATE" />
<uses-permission android:name="com.qualcomm.permission.USE_QCRIL_MSG_TUNNEL" />
<application
android:label="DubaiCameraService"
android:persistent="true">
<receiver
android:name=".BootReceiver"
android:exported="false">
<intent-filter android:priority="1000">
<action android:name="android.intent.action.BOOT_COMPLETED" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</receiver>
<service android:name=".DubaiCameraService"
android:permission="DubaiCameraService"
android:exported="false">
</service>
</application>
</manifest>

View file

@ -1,11 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright (C) 2023 ArrowOS
SPDX-License-Identifier: Apache-2.0
-->
<permissions>
<privapp-permissions package="com.arrow.dubaicameraservice">
<permission name="android.permission.READ_PRIVILEGED_PHONE_STATE"/>
<permission name="android.permission.MODIFY_PHONE_STATE"/>
</privapp-permissions>
</permissions>

View file

@ -1,22 +0,0 @@
/*
* Copyright (C) 2023 ArrowOS
*
* SPDX-License-Identifier: Apache-2.0
*/
package com.arrow.dubaicameraservice;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
public class BootReceiver extends BroadcastReceiver {
@Override
public void onReceive(final Context context, Intent intent) {
if (!intent.getAction().equals(Intent.ACTION_BOOT_COMPLETED))
return;
DubaiCameraService.startService(context);
}
}

View file

@ -1,163 +0,0 @@
/*
* Copyright (C) 2023 ArrowOS
*
* SPDX-License-Identifier: Apache-2.0
*/
package com.arrow.dubaicameraservice;
import static android.telephony.SubscriptionManager.INVALID_SUBSCRIPTION_ID;
import android.app.Service;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.hardware.camera2.CameraManager;
import android.os.Handler;
import android.os.HandlerExecutor;
import android.os.IBinder;
import android.os.Looper;
import android.os.UserHandle;
import android.telephony.SubscriptionManager;
import android.telephony.TelephonyCallback;
import android.telephony.TelephonyManager;
import android.util.Log;
import java.util.Arrays;
import java.util.Set;
import java.util.concurrent.Executor;
public class DubaiCameraService extends Service {
private static final boolean DEBUG = false;
private static final String TAG = "DubaiCameraService";
private static final String FRONT_CAMERA_ID = "1";
private static final int OFFENDING_NR_BAND = 78;
private static final Set<String> IGNORED_PACKAGES = Set.of(
"co.aospa.sense", // face unlock
"com.google.android.as" // auto rotate, screen attention etc
);
private CameraManager mCameraManager;
private SubscriptionManager mSubManager;
private TelephonyManager mTelephonyManager;
private QcRilMsgUtils mQcRilMsgUtils;
private boolean mIsFrontCamInUse = false;
private int[] mActiveSubIds = new int[0];
private int mDefaultDataSubId = INVALID_SUBSCRIPTION_ID;
private final Handler mHandler = new Handler(Looper.getMainLooper());
private final Executor mExecutor = new HandlerExecutor(mHandler);
private final CameraManager.AvailabilityCallback mCameraCallback =
new CameraManager.AvailabilityCallback() {
@Override
public void onCameraOpened(String cameraId, String packageId) {
dlog("onCameraOpened id=" + cameraId + " package=" + packageId);
if (cameraId.equals(FRONT_CAMERA_ID) && !IGNORED_PACKAGES.contains(packageId)) {
mIsFrontCamInUse = true;
update5gState();
}
}
@Override
public void onCameraClosed(String cameraId) {
dlog("onCameraClosed id=" + cameraId);
if (cameraId.equals(FRONT_CAMERA_ID) && mIsFrontCamInUse) {
mIsFrontCamInUse = false;
update5gState();
}
}
};
private final SubscriptionManager.OnSubscriptionsChangedListener mSubListener =
new SubscriptionManager.OnSubscriptionsChangedListener() {
@Override
public void onSubscriptionsChanged() {
dlog("onSubscriptionsChanged");
final int[] subs = mSubManager.getActiveSubscriptionIdList();
if (!Arrays.equals(subs, mActiveSubIds)) {
dlog("active subs changed, was: " + Arrays.toString(mActiveSubIds)
+ ", now: " + Arrays.toString(subs));
mActiveSubIds = subs;
update5gState();
}
}
};
private class ActiveDataSubIdCallback extends TelephonyCallback implements
TelephonyCallback.ActiveDataSubscriptionIdListener {
@Override
public void onActiveDataSubscriptionIdChanged(int subId) {
dlog("onActiveDataSubscriptionIdChanged subId:" + subId);
if (subId != mDefaultDataSubId) {
mDefaultDataSubId = subId;
update5gState();
}
}
};
private final TelephonyCallback mTelephonyCallback = new ActiveDataSubIdCallback();
@Override
public void onCreate() {
dlog("onCreate");
mQcRilMsgUtils = new QcRilMsgUtils(this);
mCameraManager = getSystemService(CameraManager.class);
mSubManager = getSystemService(SubscriptionManager.class);
mTelephonyManager = getSystemService(TelephonyManager.class);
}
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
dlog("onStartCommand");
mQcRilMsgUtils.bindService();
mCameraManager.registerAvailabilityCallback(mCameraCallback, mHandler);
mTelephonyManager.registerTelephonyCallback(mExecutor, mTelephonyCallback);
mSubManager.addOnSubscriptionsChangedListener(mExecutor, mSubListener);
return START_STICKY;
}
@Override
public void onDestroy() {
dlog("onDestroy");
mQcRilMsgUtils.unbindService();
mCameraManager.unregisterAvailabilityCallback(mCameraCallback);
mTelephonyManager.unregisterTelephonyCallback(mTelephonyCallback);
mSubManager.removeOnSubscriptionsChangedListener(mSubListener);
}
@Override
public IBinder onBind(Intent intent) {
return null;
}
public static void startService(Context context) {
Log.i(TAG, "Starting service");
context.startServiceAsUser(new Intent(context, DubaiCameraService.class),
UserHandle.CURRENT);
}
private void update5gState() {
if (mDefaultDataSubId == INVALID_SUBSCRIPTION_ID
|| mActiveSubIds.length == 0) {
dlog("update5gState: Invalid subid or no active subs!");
return;
}
if (mQcRilMsgUtils.setNrBandEnabled(mSubManager.getPhoneId(mDefaultDataSubId),
OFFENDING_NR_BAND, !mIsFrontCamInUse)) {
Log.i(TAG, (mIsFrontCamInUse ? "Disabled" : "Enabled") + " NR band "
+ OFFENDING_NR_BAND + " for subId " + mDefaultDataSubId);
} else {
Log.e(TAG, "Failed to " + (mIsFrontCamInUse ? "disable" : "enable") + " NR band "
+ OFFENDING_NR_BAND + " for subId " + mDefaultDataSubId);
}
}
protected static void dlog(String msg) {
if (DEBUG) Log.d(TAG, msg);
}
}

View file

@ -1,170 +0,0 @@
/*
* Copyright (C) 2023 ArrowOS
*
* SPDX-License-Identifier: Apache-2.0
*/
package com.arrow.dubaicameraservice;
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.content.ServiceConnection;
import android.os.IBinder;
import android.os.RemoteException;
import android.util.Log;
import com.qualcomm.qcrilmsgtunnel.IQcrilMsgTunnel;
import java.nio.ByteBuffer;
import java.nio.ByteOrder;
public class QcRilMsgUtils {
private static final String TAG = "DubaiCameraService-QcRil";
private static final String PACKAGE_NAME = "com.qualcomm.qcrilmsgtunnel";
private static final String SERVICE_NAME = "com.qualcomm.qcrilmsgtunnel.QcrilMsgTunnelService";
private static final int OEM_RIL_REQUEST_GET_BAND_PREF = 327723;
private static final int OEM_RIL_REQUEST_SET_BAND_PREF = 327724;
private static final int BAND_CONFIG_LENGTH = 168;
private static final int LTE_CONFIG_LENGTH = 4;
private static final int NR_CONFIG_LENGTH = 8;
private IQcrilMsgTunnel mService;
private QcrilMsgTunnelConnection mServiceConnection;
private Context mContext;
public QcRilMsgUtils(Context context) {
mContext = context;
mServiceConnection = new QcrilMsgTunnelConnection();
}
protected void bindService() {
dlog("bindService");
if (!mContext.bindService(new Intent().setClassName(PACKAGE_NAME, SERVICE_NAME),
mServiceConnection, Context.BIND_AUTO_CREATE)) {
Log.e(TAG, "Failed to bind to QcrilMsgTunnelService!");
}
}
protected void unbindService() {
dlog("unbindService");
mContext.unbindService(mServiceConnection);
mService = null;
}
/* TODO: split this function */
protected boolean setNrBandEnabled(int phoneId, int band, boolean enabled) {
if (mService == null) {
Log.e(TAG, "setNrSaBandEnabled: mService is null!");
return false;
}
dlog("setNrSaBandEnabled: phoneId=" + phoneId + " band=" + band + " enabled=" + enabled);
// get band config
byte[] reqData = new byte[8];
ByteBuffer reqBuf = ByteBuffer.wrap(reqData)
.order(ByteOrder.BIG_ENDIAN)
.putInt(OEM_RIL_REQUEST_GET_BAND_PREF)
.putInt(0);
byte[] resp = new byte[BAND_CONFIG_LENGTH];
try {
int ret = mService.sendOemRilRequestRaw(reqData, resp, phoneId);
if (ret < 0)
throw new Exception();
} catch (Exception e) {
Log.e(TAG, "sendOemRilRequestRaw failed to get band config!", e);
return false;
}
ByteBuffer buf = ByteBuffer.wrap(resp)
.order(ByteOrder.nativeOrder());
long nasConfig = buf.getLong();
long[] lteConfigs = new long[LTE_CONFIG_LENGTH];
for (int i = 0; i < LTE_CONFIG_LENGTH; i++) {
lteConfigs[i] = buf.getLong();
}
long[] nrSaConfigs = new long[NR_CONFIG_LENGTH];
for (int i = 0; i < NR_CONFIG_LENGTH; i++) {
nrSaConfigs[i] = buf.getLong();
}
long[] nrNsaConfigs = new long[NR_CONFIG_LENGTH];
for (int i = 0; i < NR_CONFIG_LENGTH; i++) {
nrNsaConfigs[i] = buf.getLong();
}
// modify band config
int row = (band - 1) / 64;
int col = (band - 1) % 64;
if (enabled) {
nrSaConfigs[row] |= (1 << col);
nrNsaConfigs[row] |= (1 << col);
} else {
nrSaConfigs[row] &= ~(1 << col);
nrNsaConfigs[row] &= ~(1 << col);
}
// set band config
byte[] newData = new byte[BAND_CONFIG_LENGTH + 8];
ByteBuffer newBuf = ByteBuffer.wrap(newData)
.order(ByteOrder.BIG_ENDIAN)
.putInt(OEM_RIL_REQUEST_SET_BAND_PREF)
.putInt(BAND_CONFIG_LENGTH)
.order(ByteOrder.nativeOrder())
.putLong(nasConfig);
for (int i = 0; i < LTE_CONFIG_LENGTH; i++) {
newBuf.putLong(lteConfigs[i]);
}
for (int i = 0; i < NR_CONFIG_LENGTH; i++) {
newBuf.putLong(nrSaConfigs[i]);
}
for (int i = 0; i < NR_CONFIG_LENGTH; i++) {
newBuf.putLong(nrNsaConfigs[i]);
}
try {
int ret = mService.sendOemRilRequestRaw(newData, new byte[1], phoneId);
if (ret < 0)
throw new Exception();
} catch (Exception e) {
Log.e(TAG, "sendOemRilRequestRaw failed to set band config!", e);
return false;
}
return true;
}
private class QcrilMsgTunnelConnection implements ServiceConnection {
@Override
public void onServiceConnected(ComponentName name, IBinder service) {
mService = IQcrilMsgTunnel.Stub.asInterface(service);
if (mService == null) {
Log.e(TAG, "Unable to get IQcrilMsgTunnel!");
return;
}
try {
service.linkToDeath(new IBinder.DeathRecipient() {
@Override
public void binderDied() {
Log.e(TAG, "QcrilMsgTunnel service died, trying to bind again");
mService = null;
QcRilMsgUtils.this.bindService();
}
}, 0);
} catch (RemoteException e) {
Log.e(TAG, "linkToDeath failed", e);
}
Log.i(TAG, "QcrilMsgTunnel service connected");
}
@Override
public void onServiceDisconnected(ComponentName name) {
Log.i(TAG, "QcrilMsgTunnel service disconnected");
mService = null;
}
}
private static void dlog(String msg) {
DubaiCameraService.dlog(msg);
}
}

View file

@ -1,11 +0,0 @@
package com.qualcomm.qcrilmsgtunnel;
interface IQcrilMsgTunnel {
/**
* Sends a OEM request to the RIL and returns the response back to the
* Caller. The returnValue is negative on failure. 0 or length of response on SUCCESS
*/
int sendOemRilRequestRaw(in byte[] request, out byte[] response, in int sub);
}

View file

@ -0,0 +1,9 @@
#
# FTS Touch sensor fod key event
#
#
# 704 finger touch down
# 705 finger touch up
# fts_ts "finger present"
key 704 SYSTEM_NAVIGATION_DOWN
key 705 SYSTEM_NAVIGATION_UP

0
configs/keylayout/goodix_ts.kl Executable file → Normal file
View file

View file

@ -1,123 +0,0 @@
[DETECT-STANDBY]
algo_type virtual
trip_sensor msm_therm
thresholds -18000
thresholds_clr -20000
sensors lcd_brightness_value
weights 20
sampling 1000
less_than
math 7
[OVERRIDE-CHG]
algo_type monitor
sampling 1000
sensor DETECT-STANDBY
thresholds 1
thresholds_clr 0
actions internal_override
action_info 1
[FREEZE-CHG]
algo_type monitor
sampling 1000
descending
sensor DETECT-STANDBY
thresholds 0
thresholds_clr 1
actions freeze_rule
action_info 1
[FRONT_TEMP]
algo_type virtual
trip_sensor msm_therm
thresholds -18000
thresholds_clr -20000
sensors pa_therm1 battery
weights 35 65
offsets 0 0
sampling 5000
math 0
sys_temp
[REPORT-FRONT-TEMP]
algo_type monitor
sampling 300000
sensor FRONT_TEMP
thresholds 42000
thresholds_clr 40000
actions report
action_info 1
[BACK_TEMP]
algo_type virtual
trip_sensor msm_therm
thresholds -18000
thresholds_clr -20000
sensors msm_therm battery
weights 50 50
offsets -800
sampling 5000
math 0
sys_temp
[REPORT-BACK-TEMP]
algo_type monitor
sampling 300000
sensor BACK_TEMP
thresholds 42000
thresholds_clr 40000
actions report
action_info 1
[MON-PDPOWER1]
algo_type monitor
sampling 1000
sensor quiet_therm
thresholds 43000 43500 44000 44500 46000 47500 48500 70000
thresholds_clr 41000 41500 42000 42500 44000 45500 46500 68000
actions battery battery battery battery battery battery battery battery
action_info 8 7 6 5 4 3 2 2
freezing
[MON-PDPOWER2]
algo_type monitor
sampling 1000
sensor msm_therm
thresholds 41000 42000 43000 44000 46000 48000 50000 70000
thresholds_clr 39000 40000 41000 42000 44000 46000 48000 68000
actions battery battery battery battery battery battery battery battery
action_info 8 6 5 4 3 2 1 1
override_c 15000
[MON-MSM-CPU47]
algo_type monitor
sampling 1000
sensor BACK_TEMP
thresholds 42000 43000 44000 45000 46000 47000 49000 70000
thresholds_clr 39000 40000 41000 42000 43000 44000 47000 68000
actions cpu4+cpu7 cpu4+cpu7 cpu4+cpu7 cpu4+cpu7 cpu4+cpu7 cpu4+cpu7 cpu4+cpu7 cpu4+cpu7
action_info 21312000+2380800 2054400+2208000 1900800+2035200 1651200+1862400 1516800+1766400 1344000+1516800 1228800+1324800 1228800+1324800
[MON-MSM-CPU0]
algo_type monitor
sampling 1000
sensor BACK_TEMP
thresholds 43000 44000 45000 46000 47000 70000
thresholds_clr 41000 42000 43000 44000 45000 68000
actions cpu0 cpu0 cpu0 cpu0 cpu0 cpu0
action_info 1651200 1516800 1324800 1152000 940800 940800
[MON-PA-FR1]
algo_type monitor
sampling 5000
sensor BACK_TEMP
thresholds 60000
thresholds_clr 58000
actions modem_pa_fr1
action_info 1

View file

@ -29,24 +29,25 @@ PRODUCT_AAPT_CONFIG := normal
PRODUCT_AAPT_PREF_CONFIG := 400dpi
PRODUCT_AAPT_PREBUILT_DPI := xxxhdpi xxhdpi xhdpi hdpi
PRODUCT_SHIPPING_API_LEVEL := 31
# Shipping API level
PRODUCT_SHIPPING_API_LEVEL := 33
# Inherit from motorola sm7325-common
$(call inherit-product, device/motorola/sm7325-common/common.mk)
# Inherit from motorola sm6375-common
$(call inherit-product, device/motorola/sm6375-common/common.mk)
# Overlay
PRODUCT_PACKAGES += \
FrameworksResDubai \
LineageSystemUIDubai \
SettingsResDubai \
SettingsProviderResDubai \
SystemUIResDubai \
WifiResDubai
FrameworksResBangkk \
LineageSystemUIBangkk \
SettingsResBangkk \
SettingsProviderResBangkk \
SystemUIResBangkk \
WifiResBangkk
# Audio
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_yupik/mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio/sku_yupik/mixer_paths.xml \
$(LOCAL_PATH)/audio/sku_holi/audio_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio/sku_holi/audio_platform_info.xml \
$(LOCAL_PATH)/audio/sku_holi/mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio/sku_holi/mixer_paths.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_ext_spkr.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_ext_spkr.conf \
@ -55,12 +56,11 @@ PRODUCT_COPY_FILES += \
# Camera
PRODUCT_PACKAGES += \
DubaiCameraService \
libgui_shim_vendor
# Fingerprint
PRODUCT_PACKAGES += \
android.hardware.biometrics.fingerprint@2.3-service.dubai
android.hardware.biometrics.fingerprint@2.3-service.bangkk
# Init
$(foreach f,$(wildcard $(LOCAL_PATH)/rootdir/etc/init/hw/*.rc),\
@ -72,26 +72,31 @@ $(foreach f,$(wildcard $(LOCAL_PATH)/rootdir/bin/*.sh),\
# Keylayout
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/configs/keylayout/fts_ts.kl:$(TARGET_COPY_OUT_VENDOR)/usr/keylayout/fts_ts.kl \
$(LOCAL_PATH)/configs/keylayout/goodix_ts.kl:$(TARGET_COPY_OUT_VENDOR)/usr/keylayout/goodix_ts.kl
# NFC
PRODUCT_PACKAGES += \
android.hardware.nfc@1.2.vendor \
android.hardware.nfc@1.2-service.st \
android.hardware.nfc@1.2-service.samsung \
nfc_nci_samsung \
SecureElement \
android.hardware.secure_element@1.2.vendor \
com.android.nfc_extras \
libchrome.vendor \
Tag \
nfc_nci.st21nfc.default
Tag
# Permissions
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.nfc.hce.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hce.xml \
frameworks/native/data/etc/android.hardware.nfc.hcef.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hcef.xml \
frameworks/native/data/etc/android.hardware.nfc.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.uicc.xml \
frameworks/native/data/etc/android.hardware.nfc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.xml \
frameworks/native/data/etc/com.nxp.mifare.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/com.nxp.mifare.xml
# Sensors
PRODUCT_PACKAGES += \
sensors.dubai
sensors.bangkk
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/sensors/hals.conf:$(TARGET_COPY_OUT_VENDOR)/etc/sensors/hals.conf
@ -99,9 +104,5 @@ PRODUCT_COPY_FILES += \
# Soong namespaces
PRODUCT_SOONG_NAMESPACES += $(LOCAL_PATH)
# Thermal
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/configs/thermal-engine-dubai-game-perf.conf:$(TARGET_COPY_OUT_VENDOR)/etc/thermal-engine-dubai.conf
# Inherit from vendor blobs
$(call inherit-product, vendor/motorola/dubai/dubai-vendor.mk)
$(call inherit-product, vendor/motorola/bangkk/bangkk-vendor.mk)

View file

@ -22,8 +22,8 @@ fi
set -e
export DEVICE=dubai
export DEVICE_COMMON=sm7325-common
export DEVICE=bangkk
export DEVICE_COMMON=sm6375-common
export VENDOR=motorola
"./../../${VENDOR}/${DEVICE_COMMON}/extract-files.sh" "$@"

View file

@ -1,8 +1,8 @@
cc_binary {
name: "android.hardware.biometrics.fingerprint@2.3-service.dubai",
name: "android.hardware.biometrics.fingerprint@2.3-service.bangkk",
defaults: ["hidl_defaults"],
init_rc: ["android.hardware.biometrics.fingerprint@2.3-service.dubai.rc"],
vintf_fragments: ["android.hardware.biometrics.fingerprint@2.3-service.dubai.xml"],
init_rc: ["android.hardware.biometrics.fingerprint@2.3-service.bangkk.rc"],
vintf_fragments: ["android.hardware.biometrics.fingerprint@2.3-service.bangkk.xml"],
relative_install_path: "hw",
srcs: [
"service.cpp",
@ -22,7 +22,7 @@ cc_binary {
}
cc_library_static {
name: "libudfps_extension.dubai",
name: "libudfps_extension.bangkk",
srcs: ["UdfpsExtension.cpp"],
include_dirs: [
"frameworks/native/services/surfaceflinger/CompositionEngine/include"

View file

@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#define LOG_TAG "android.hardware.biometrics.fingerprint@2.3-service.dubai"
#define LOG_TAG "android.hardware.biometrics.fingerprint@2.3-service.bangkk"
#include "BiometricsFingerprint.h"

View file

@ -1,4 +1,4 @@
service fps_hal.dubai /vendor/bin/hw/android.hardware.biometrics.fingerprint@2.3-service.dubai
service fps_hal.bangkk /vendor/bin/hw/android.hardware.biometrics.fingerprint@2.3-service.bangkk
# "class hal" causes a race condition on some devices due to files created
# in /data. As a workaround, postpone startup until later in boot once
# /data is mounted.

View file

@ -14,7 +14,7 @@
* limitations under the License.
*/
#define LOG_TAG "android.hardware.biometrics.fingerprint@2.3-service.dubai"
#define LOG_TAG "android.hardware.biometrics.fingerprint@2.3-service.bangkk"
#include <android-base/logging.h>
#include <hidl/HidlTransportSupport.h>
#include "BiometricsFingerprint.h"

View file

@ -1,6 +1,6 @@
[
{
"repository": "android_device_motorola_sm7325-common",
"repository": "android_device_motorola_sm6375-common",
"target_path": "device/motorola/sm7325-common"
}
]

View file

@ -8,22 +8,22 @@
$(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk)
$(call inherit-product, $(SRC_TARGET_DIR)/product/full_base_telephony.mk)
# Inherit from dubai device
$(call inherit-product, device/motorola/dubai/device.mk)
# Inherit from bangkk device
$(call inherit-product, device/motorola/bangkk/device.mk)
# Inherit some common Lineage stuff.
$(call inherit-product, vendor/lineage/config/common_full_phone.mk)
PRODUCT_NAME := lineage_dubai
PRODUCT_DEVICE := dubai
PRODUCT_NAME := lineage_bangkk
PRODUCT_DEVICE := bangkk
PRODUCT_MANUFACTURER := motorola
PRODUCT_BRAND := motorola
PRODUCT_MODEL := motorola edge 30
PRODUCT_MODEL := moto g84 5G
PRODUCT_GMS_CLIENTID_BASE := android-motorola
PRODUCT_BUILD_PROP_OVERRIDES += \
TARGET_PRODUCT=dubai_g \
PRIVATE_BUILD_DESC="dubai_g-user 13 T1RDS33.116-33-15-6 e089e7-b95537 release-keys"
TARGET_PRODUCT=bangkk_g \
PRIVATE_BUILD_DESC="bangkk_g-user 14 U1TC34M.22-64-18 48c0d4 release-keys"
BUILD_FINGERPRINT := motorola/dubai_g/dubai:13/T1RDS33.116-33-15-6/e089e7-b95537:user/release-keys
BUILD_FINGERPRINT := motorola/bangkk_g/bangkk:14/U1TC34M.22-64-18/48c0d4:user/release-keys

View file

@ -84,8 +84,6 @@ blocklist vmw_vsock_virtio_transport
blocklist vmw_vsock_virtio_transport_common
blocklist vsock_diag
blocklist vsock
blocklist qca_cld3_wlan
blocklist qca_cld3_qca6390
blocklist torture
blocklist locktorture
blocklist rcutorture
@ -93,11 +91,20 @@ blocklist rcutorture
#
# Motorola platform module block list
#
blocklist utags
blocklist watchdogtest
blocklist moto_f_usbnet
# Copyright (c) 2019-2020, The Linux Foundation. All rights reserved.
#
# Motorola product module block list
#
blocklist fpsensor_spi_tee
blocklist fpc1020_mmi
blocklist qpnp_adaptive_charge
blocklist nova_0flash_mmi
blocklist leds_aw99703
blocklist leds_lm3697
blocklist focaltech_0flash_v2_mmi
blocklist mmi_smbcharger_iio
blocklist mmi_parallel_charger_iio

View file

@ -1,110 +1,66 @@
stub_dlkm.ko
machine_dlkm.ko
fc2580.ko
mt2063.ko
tda9887.ko
apr_dlkm.ko
mxl5005s.ko
xc4000.ko
tuner-xc2028.ko
radio-i2c-rtc6226-qca.ko
max2165.ko
qt1010.ko
slimbus-ngd.ko
llcc_perfmon.ko
platform_dlkm.ko
wsa883x_dlkm.ko
tea5767.ko
msi001.ko
qm1d1c0042.ko
fc0013.ko
btpower.ko
tua9001.ko
m88rs6000t.ko
qcom_edac.ko
fc0011.ko
wcd937x_dlkm.ko
pinctrl_lpi_dlkm.ko
fc0012.ko
aw882xx_k504.ko
mt20xx.ko
xc5000.ko
wcd9xxx_dlkm.ko
bt_fm_slim.ko
tea5761.ko
rx_macro_dlkm.ko
pinctrl_wcd_dlkm.ko
wsa_macro_dlkm.ko
adsp_loader_dlkm.ko
wcd938x_dlkm.ko
q6_dlkm.ko
hdmi_dlkm.ko
swr_haptics_dlkm.ko
tda18218.ko
msm_drm.ko
tda18212.ko
aw87xxx_dlkm.ko
wcd937x_slave_dlkm.ko
mt2060.ko
q6_notifier_dlkm.ko
tuner-simple.ko
snd_event_dlkm.ko
mc44s803.ko
wcd_core_dlkm.ko
qm1d1b0004.ko
tda18250.ko
mbhc_dlkm.ko
tuner-types.ko
si2157.ko
mt2131.ko
slimbus.ko
native_dlkm.ko
va_macro_dlkm.ko
hid-aksys.ko
mt2266.ko
bolero_cdc_dlkm.ko
mxl5007t.ko
wcd938x_slave_dlkm.ko
platform_dlkm.ko
wcd938x_dlkm.ko
lzo_decompress.ko
q6_pdr_dlkm.ko
e4000.ko
it913x.ko
swr_ctrl_dlkm.ko
mxl301rf.ko
swr_dlkm.ko
rdbg.ko
swr_dmic_dlkm.ko
r820t.ko
camera.ko
wcd_core_dlkm.ko
q6_dlkm.ko
mbhc_dlkm.ko
tx_macro_dlkm.ko
swr_ctrl_dlkm.ko
swr_dlkm.ko
sec_nfc.ko
snd_event_dlkm.ko
aw882xx_acf.ko
rdbg.ko
zram.ko
wcd937x_dlkm.ko
camera.ko
machine_dlkm.ko
wsa881x_analog_dlkm.ko
lzo-rle.ko
native_dlkm.ko
lzo.ko
stub_dlkm.ko
aw882xx_k419.ko
wcd9xxx_dlkm.ko
btpower.ko
va_macro_dlkm.ko
bolero_cdc_dlkm.ko
adsp_loader_dlkm.ko
apr_dlkm.ko
lzo_compress.ko
q6_notifier_dlkm.ko
bt_fm_slim.ko
rx_macro_dlkm.ko
wcd938x_slave_dlkm.ko
wlan.ko
rmnet_core.ko
rmnet_ctl.ko
rmnet_offload.ko
rmnet_shs.ko
utags.ko
mmi_relay.ko
mmi_info.ko
mmi_annotate.ko
sensors_class.ko
watchdogtest.ko
exfat.ko
bm_adsp_ulog.ko
mmi_charger.ko
qti_glink_charger.ko
qpnp_adaptive_charge.ko
cirrus_wm_adsp.ko
cirrus_cs35l41.ko
cirrus_cs35l45.ko
aw862x.ko
mmi_info.ko
mmi_relay.ko
wl2864c.ko
cci_intf.ko
st21nfc.ko
nfc_i2c.ko
sx937x_sar.ko
moto_f_usbnet.ko
touchscreen_mmi.ko
goodix_brl_mmi.ko
watchdogtest.ko
qpnp_adaptive_charge.ko
rbs_fod_mmi.ko
sx937x_sar.ko
awinic_sar.ko
mmi_sys_temp.ko
rbs_fps_mmi.ko
mmi_info.ko
mmi_annotate.ko
ldo_vibrator_mmi.ko
touchscreen_mmi.ko
focaltech_v3.ko
goodix_brl_mmi.ko
cci_intf.ko
bq25980_mmi_iio.ko
mmi-smbcharger-iio.ko
mmi_parallel_charger_iio.ko
moto_mm.ko
moto_swap.ko

View file

@ -1,7 +1,10 @@
focaltech_v3.ko
goodix_brl_mmi.ko
msm_drm.ko
mmi_relay.ko
sensors_class.ko
touchscreen_mmi.ko
mmi_annotate.ko
mmi_info.ko
goodix_brl_mmi.ko
mmi_parallel_charger_iio.ko
mmi-smbcharger-iio.ko
touchscreen_mmi.ko
sensors_class.ko

View file

@ -1,6 +1,6 @@
# All unpinned blobs below are extracted from dubai_g-user 13 T1RDS33.116-33-15-6 e089e7-b95537 release-keys - RETAIL variant.
# All unpinned blobs are extracted from bangkk_g-user 14 U1TC34M.22-64-18 48c0d4 release-keys
# ACDB Data
# ACDB-data
vendor/etc/acdbdata/Bluetooth_cal.acdb
vendor/etc/acdbdata/General_cal.acdb
vendor/etc/acdbdata/Global_cal.acdb
@ -13,16 +13,12 @@ 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.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.3_0.0__3.0.0_0.0__eai_1.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.6.3_0.0__3.0.0_0.0__eai_1.36_enpu2.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
# Audio firmware
vendor/firmware/aw882xx_pid_1852_acf.bin
vendor/firmware/aw882xx_pid_2113_acf.bin
vendor/firmware/aw882xx_spk_reg.bin
vendor/firmware/aw_skt.bin
# Audio libraries
vendor/lib/libacdbloader.so
vendor/lib64/libacdbloader.so
@ -33,12 +29,10 @@ vendor/lib64/camera/fdconfigpreview.bin
vendor/lib64/camera/fdconfigpreviewlite.bin
vendor/lib64/camera/fdconfigvideo.bin
vendor/lib64/camera/fdconfigvideolite.bin
vendor/lib64/camera/com.qti.flash.aw36514.so
vendor/lib64/camera/com.qti.flash.ocp81373.so
vendor/lib64/com.qti.chiusecaseselector.so
vendor/lib64/com.qti.settings.kamorta.so
vendor/lib64/com.qti.settings.kodiak.so
vendor/lib64/com.qti.settings.mannar.so
vendor/lib64/com.qti.settings.sdm865.so
vendor/lib64/com.qti.settings.sm8350.so
vendor/lib64/com.qti.stats.common.so
vendor/lib64/com.qualcomm.mcx.distortionmapper.so
vendor/lib64/com.qualcomm.mcx.linearmapper.so
@ -46,23 +40,10 @@ vendor/lib64/com.qualcomm.mcx.policy.mfl.so
vendor/lib64/com.qualcomm.qti.mcx.usecase.extension.so
vendor/lib64/hw/camera.qcom.so
vendor/lib64/hw/com.qti.chi.override.so
vendor/lib64/libFace3DTA.so
vendor/lib64/libFace3D_hlos.so
vendor/lib64/libQ6MSFR_manager_stub.so
vendor/lib64/libQnnHtp.so
vendor/lib64/libQnnHtpV68Stub.so
vendor/lib64/libaidenoiser.so
vendor/lib64/libaidenoiserv2.so
vendor/lib64/libBSTSWAD.so
vendor/lib64/libarcsoft_chi_utils.so
vendor/lib64/libarcsoft_distortion_correction.so
vendor/lib64/libarcsoft_dual_sat.so
vendor/lib64/libarcsoft_dual_zoomtranslator.so
vendor/lib64/libarcsoft_hdr_detection.so
vendor/lib64/libarcsoft_high_dynamic_range.so
vendor/lib64/libarcsoft_portrait_distortion_correction.so
vendor/lib64/libarcsoft_portrait_super_night_raw.so
vendor/lib64/libarcsoft_low_light_shot.so
vendor/lib64/libarcsoft_portrait_super_night_se_raw.so
vendor/lib64/libarcsoft_qnnhtp.so
vendor/lib64/libarcsoft_super_night_raw.so
vendor/lib64/libarcsoft_super_night_se_raw.so
vendor/lib64/libbitmlengine.so
@ -75,21 +56,20 @@ vendor/lib64/libcamxfacialfeatures.so
vendor/lib64/libcamxfdalgo.so
vendor/lib64/libcamxfdengine.so
vendor/lib64/libcamxifestriping.so
vendor/lib64/libcamxifestriping.so
vendor/lib64/libcamximageformatutils.so
vendor/lib64/libcamxqsatalgo.so
vendor/lib64/libcamxstatscore.so
vendor/lib64/libcamxswispiqmodule.so
vendor/lib64/libcamxswprocessalgo.so
vendor/lib64/libcamxtintlessalgo.so
vendor/lib64/libcapiv2svacnn.so
vendor/lib64/libcapiv2svarnn.so
vendor/lib64/libcapiv2vop.so
vendor/lib64/libchilog.so
vendor/lib64/libcom.qti.chinodeutils.so
vendor/lib64/libdualcam_optical_zoom_control.so
vendor/lib64/libdualcam_video_optical_zoom.so
vendor/lib64/libface3d_dev.so
vendor/lib64/libipebpsstriping.so
vendor/lib64/libipebpsstriping170.so
vendor/lib64/libjpege.so
vendor/lib64/libmfec.so
vendor/lib64/libmctfengine_stub.so
vendor/lib64/libmmcamera_bestats.so
vendor/lib64/libmmcamera_cac3.so
vendor/lib64/libmmcamera_faceproc.so
@ -101,39 +81,36 @@ vendor/lib64/libmmcamera_pdpc.so
vendor/lib64/libmot_afd.so
vendor/lib64/libmot_chi_desktop_helper.so
vendor/lib64/libmot_engine_settings.so
vendor/lib64/libmotoisdataqueue.so
vendor/lib64/libmpbase.so
vendor/lib64/libofflinedump.so
vendor/lib64/libofflinelog.so
vendor/lib64/libopencv.so
vendor/lib64/libopestriping.so
vendor/lib64/libos.so
vendor/lib64/libpowercore.so
vendor/lib64/libqll10.so
vendor/lib64/libqllengine.so
vendor/lib64/libremosaic_wrapper.so
vendor/lib64/libsns_device_mode_stub.so
vendor/lib64/libsns_fastRPC_util.so
vendor/lib64/libsns_low_lat_stream_stub.so
vendor/lib64/libsnsdiaglog.so
vendor/lib64/libswregistrationalgo.so
vendor/lib64/libsynx.so
vendor/lib64/libtfestriping.so
vendor/lib64/libthreadutils.so
vendor/lib64/libundistort_impl.so
vendor/lib64/libvideooptfeature.so
vendor/lib64/libvidhance.so
vendor/lib64/libvidhance_active_ois.so
vendor/lib64/libvidhance_dmbr.so
vendor/lib64/libvidhance_face_stabilizer.so
vendor/lib64/libvidhance_fbc.so
vendor/lib64/libvidhance_horizon_correction.so
vendor/lib64/libvidhance_stabilizer.so
vendor/lib64/libvidhance_zoom_stabilization.so
vendor/lib64/vendor.qti.hardware.camera.postproc@1.0-service-impl.so
# Camera - Motorola
vendor/bin/hw/motorola.hardware.camera.desktop@2.0-service
vendor/etc/init/motorola.hardware.camera.desktop@2.0-service.rc
vendor/etc/init/motorola.hardware.camera.imgtuner@2.0-service.rc
vendor/lib64/motorola.hardware.camera.desktop@1.0.so
vendor/lib64/motorola.hardware.camera.desktop@2.0.so
# Camera - Components
vendor/lib64/camera/components/com.arcsoft.node.smooth_transition.so
vendor/lib64/camera/components/com.arcsoft.node.mfnr.so
vendor/lib64/camera/components/com.arcsoft.node.supernightraw.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.hdr.so
vendor/lib64/camera/components/com.mot.node.scene_detect.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.eisv2.so
vendor/lib64/camera/components/com.qti.eisv3.so
@ -156,8 +133,6 @@ vendor/lib64/camera/components/com.qti.node.stich.so
vendor/lib64/camera/components/com.qti.node.swaidenoiser.so
vendor/lib64/camera/components/com.qti.node.swbestats.so
vendor/lib64/camera/components/com.qti.node.swcac.so
vendor/lib64/camera/components/com.qti.node.swec.so
vendor/lib64/camera/components/com.qti.node.swfusion.so
vendor/lib64/camera/components/com.qti.node.swlsc.so
vendor/lib64/camera/components/com.qti.node.swmctf.so
vendor/lib64/camera/components/com.qti.node.swmfnr.so
@ -179,98 +154,74 @@ vendor/lib64/camera/components/com.qti.stats.hafoverride.so
vendor/lib64/camera/components/com.qti.stats.pdlib.so
vendor/lib64/camera/components/com.qti.stats.pdlibsony.so
vendor/lib64/camera/components/com.qti.stats.pdlibwrapper.so
vendor/lib64/camera/components/com.qti.stats.tracker.so
vendor/lib64/camera/components/com.qtistatic.stats.aec.so
vendor/lib64/camera/components/com.qtistatic.stats.af.so
vendor/lib64/camera/components/com.qtistatic.stats.awb.so
vendor/lib64/camera/components/com.qtistatic.stats.pdlib.so
vendor/lib64/camera/components/com.vidhance.node.ica.so
vendor/lib64/camera/components/com.vidhance.node.processing.so
vendor/lib64/camera/components/com.vidhance.stats.aec_dmbr.so
vendor/lib64/camera/components/libdepthmapwrapper_secure.so
# Camera - eeprom
vendor/lib64/camera/com.mot.eeprom.mot_dubai_gc02m1b_otp.so
vendor/lib64/camera/com.mot.eeprom.mot_gt24p128e_ov50a_eeprom.so
vendor/lib64/camera/com.mot.eeprom.mot_gt24p128e_s5kjn1_eeprom.so
vendor/lib64/camera/com.mot.eeprom.mot_gt24p64e_ov32b40_eeprom.so
# Camera - etc
vendor/etc/camera/aec_golden_depth.bin
vendor/etc/camera/aec_golden_wide.bin
vendor/etc/camera/arcsoft_calibration_u_dc.bin
vendor/etc/camera/dual_golden_depth.bin
vendor/etc/camera/dual_golden_wide.bin
vendor/etc/camera/mot_engine_config.bin
vendor/etc/camera/vidhance_calibration
# Camera - feature2
vendor/lib64/com.qti.feature2.anchorsync.so
vendor/lib64/com.qti.feature2.arcrawpro.so
vendor/lib64/com.qti.feature2.demux.so
vendor/lib64/com.qti.feature2.derivedoffline.so
vendor/lib64/com.qti.feature2.frameselect.so
vendor/lib64/com.qti.feature2.fusion.so
vendor/lib64/com.qti.feature2.generic.so
vendor/lib64/com.qti.feature2.gs.cedros.so
vendor/lib64/com.qti.feature2.gs.kamorta.so
vendor/lib64/com.qti.feature2.gs.kodiak.so
vendor/lib64/com.qti.feature2.gs.mannar.so
vendor/lib64/com.qti.feature2.gs.sdm865.so
vendor/lib64/com.qti.feature2.gs.sm8350.so
vendor/lib64/com.qti.feature2.hdr.so
vendor/lib64/com.qti.feature2.mcreprocrt.so
vendor/lib64/com.qti.feature2.memcpy.so
vendor/lib64/com.qti.feature2.mfsr.so
vendor/lib64/com.qti.feature2.ml.so
vendor/lib64/com.qti.feature2.mux.so
vendor/lib64/com.qti.feature2.qcfa.so
vendor/lib64/com.qti.feature2.rawhdr.so
vendor/lib64/com.qti.feature2.realtimeserializer.so
vendor/lib64/com.qti.feature2.rt.so
vendor/lib64/com.qti.feature2.rtmcx.so
vendor/lib64/com.qti.feature2.serializer.so
vendor/lib64/com.qti.feature2.statsregeneration.so
vendor/lib64/com.qti.feature2.stub.so
vendor/lib64/com.qti.feature2.swmf.so
# Camera - ICP
vendor/firmware/CAMERA_ICP_170.elf
# Camera - etc
vendor/etc/camera/SwadAIMod.bin
vendor/etc/camera/SwadCalib.bin
vendor/etc/camera/SwadParamList.txt
vendor/etc/camera/aec_golden_wide.bin
vendor/etc/camera/anc_detect_model
vendor/etc/camera/anc_track_model
vendor/etc/camera/dual_golden_wide.bin
vendor/etc/camera/vidhance.lic
vendor/etc/camera/vidhance_calibration
# Camera - Motorola
product/etc/permissions/com.motorola.camera3.dubai.xml:vendor/etc/permissions/com.motorola.camera3.dubai.xml
vendor/bin/hw/motorola.hardware.camera.desktop@2.0-service
vendor/etc/init/motorola.hardware.camera.desktop@2.0-service.rc
vendor/etc/init/motorola.hardware.camera.imgtuner@1.0-service.rc
vendor/lib64/motorola.hardware.camera.desktop@1.0.so
vendor/lib64/motorola.hardware.camera.desktop@2.0.so
# Camera - eeprom
vendor/lib64/camera/com.mot.eeprom.mot_bangkk_s5k4h7_otp.so
vendor/lib64/camera/com.mot.eeprom.mot_gt24p128f_s5kgn9_eeprom.so
vendor/lib64/camera/com.mot.eeprom.mot_gt24p64b_ov16a1q_eeprom.so
# Camera - OIS
vendor/firmware/mot_dw9781c.prog
# Camera - sensor
vendor/lib64/camera/com.qti.sensor.mot_gc02m1b.so
vendor/lib64/camera/com.qti.sensor.mot_ov32b40.so
vendor/lib64/camera/com.qti.sensor.mot_ov50a.so
vendor/lib64/camera/com.qti.sensor.mot_s5kjn1.so
vendor/lib64/camera/com.qti.sensormodule.mot_dubai_gc02m1b_tsp.bin
vendor/lib64/camera/com.qti.sensormodule.mot_dubai_ov32b40_ofilm.bin
vendor/lib64/camera/com.qti.sensormodule.mot_dubai_ov50a_sunny.bin
vendor/lib64/camera/com.qti.sensormodule.mot_dubai_s5kjn1_qtech.bin
# Camera - sensors
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_s5kgn9.so
vendor/lib64/camera/com.qti.sensormodule.mot_bangkk_ov16a1q_ofilm.bin
vendor/lib64/camera/com.qti.sensormodule.mot_bangkk_s5k4h7_qtech.bin
vendor/lib64/camera/com.qti.sensormodule.mot_bangkk_s5kgn9_ak7377.bin
vendor/lib64/camera/com.qti.sensormodule.mot_bangkk_s5kgn9_ofilm.bin
# Camera - tuned
vendor/lib64/camera/com.qti.tuned.default.bin
vendor/lib64/camera/com.qti.tuned.mot_dubai_gc02m1b.bin
vendor/lib64/camera/com.qti.tuned.mot_dubai_ov32b40.bin
vendor/lib64/camera/com.qti.tuned.mot_dubai_ov50a.bin
vendor/lib64/camera/com.qti.tuned.mot_dubai_s5kjn1.bin
vendor/lib64/camera/com.qti.tuned.mot_bangkk_ov16a1q.bin
vendor/lib64/camera/com.qti.tuned.mot_bangkk_ov16a1q_india.bin
vendor/lib64/camera/com.qti.tuned.mot_bangkk_s5k4h7af.bin
vendor/lib64/camera/com.qti.tuned.mot_bangkk_s5k4h7af_india.bin
vendor/lib64/camera/com.qti.tuned.mot_bangkk_s5kgn9.bin
vendor/lib64/camera/com.qti.tuned.mot_bangkk_s5kgn9_ak7377.bin
vendor/lib64/camera/com.qti.tuned.mot_bangkk_s5kgn9_ak7377_india.bin
vendor/lib64/camera/com.qti.tuned.mot_bangkk_s5kgn9_india.bin
# Display calibration data
vendor/etc/qdcm_calib_data_mipi_mot_cmd_csot_1080p_dsc_655.xml
vendor/etc/qdcm_calib_data_mipi_mot_cmd_tm_1080p_dsc_655.xml
vendor/etc/qdcm_calib_data_nt36672e_60_Hz_fhd_plus_video_mode_panel_without_DSC.xml
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_mipi_moto_vid_csot_1080p_dsc_655.xml
vendor/etc/qdcm_calib_data_mipi_moto_vid_tm_1080p_dsc_655.xml
vendor/etc/qdcm_calib_data_mipi_moto_vid_tm_u8_1080p_dsc_655.xml
# Fingerprint
vendor/bin/hw/android.hardware.biometrics.fingerprint@2.1-service-ets
@ -280,85 +231,36 @@ vendor/lib64/libets_teeclient_v3.so
vendor/lib64/vendor.egistec.hardware.fingerprint@4.0.so
vendor/lib64/vendor.qti.hardware.fingerprint@1.0.so
# Firmware - From Bangkk
vendor/firmware/aw87xxx_acf.bin
vendor/firmware/aw963xx_reg_0.bin
vendor/firmware/csot_focal_test_limits.ini
vendor/firmware/focaltech-csot-ft3681-26-0000-bangkk.bin
vendor/firmware/goodix-tm-gt9916S-23062705-649a9b6c-bangkk.bin
vendor/firmware/mot_aw86006.prog
vendor/firmware/mot_dw9784.prog
vendor/firmware/sec_s3nrn4v_firmware.bin
vendor/firmware/tm_goodix_cfg_group.bin
# HotwordEnrollment
-product/priv-app/HotwordEnrollmentOKGoogleHEXAGON_WIDEBAND/HotwordEnrollmentOKGoogleHEXAGON_WIDEBAND.apk
-product/priv-app/HotwordEnrollmentXGoogleHEXAGON_WIDEBAND/HotwordEnrollmentXGoogleHEXAGON_WIDEBAND.apk
system_ext/etc/permissions/com.android.hotwordenrollment.common.util.xml
system_ext/framework/com.android.hotwordenrollment.common.util.jar
# MotCamera4 - from dubai - dubai_g-user 13 T1RDS33.116-33-15-1 06f6d-c0e7b release-keys - RETAIL variant
product/app/MotCamera3AI/MotCamera3AI.apk;PRESIGNED|44b210e8a14092edf50396182eb37818c24a10e4
product/etc/init/init.motcamera3.lens.rc|293260214b3b60496fb61709276295f17036f506
product/priv-app/MotCamera4/MotCamera4.apk|8f945fa4439d7166536e7e2a8acff563d1aee334
product/lib64/libAncHumanSegFigureFusion-jni.so|29b3f53abf695f59093fa789cffaf79771b49568
product/lib64/libFNVfbEngineHAL_legacy.so|228508501f39e855c89df1463f4a44e2cb085540
product/lib64/libNvBeautyEffect.so|cd80f5049b2f668379f1d3ecbf6e6206de20a46d
product/lib64/libSNPE.so|a90efc5216de3cc3f20fb70f3e1ee567729f02f0
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/libarcsoft_dualcam_refocus.so|4e8778a48d5d9bb33ef85063ee4b9dbedfb858e2
product/lib64/libarcsoft_frc.so|dab92e6bd066b44bb557f24c9cb2c587df2aab46
product/lib64/libarcsoft_hdr_detection.so|b9c9d06189c7394c1a1780e7b434a58993035b49
product/lib64/libarcsoft_hdr_scbokeh_image.so|2c2d9e9c173ed5516a7e425e6b1b1ee0b9f1d1a8
product/lib64/libarcsoft_high_dynamic_range.so|5b377a50612bafb30af4cb271327053abfe88a32
product/lib64/libarcsoft_multiframe_bokeh_image.so|a2ac6da70a9bc9d42ac5287127bb8faa7951a05c
product/lib64/libarcsoft_scbokeh_Generic.so|5f51996cb89299b9c222bc211a514db3b1d398b8
product/lib64/libas-super-slow-motion.so|a323551fbfce86d4951e964a2e94f289c0190d79
product/lib64/libbarhopper_v3.so|156387210e424f30d2642edeff2a549d77808abd
product/lib64/libbg-postproc-jni.so|8c9d3dc74ef641c5456640451c70cfb6507f56f2
product/lib64/libc++.so|e8707820517ab7713b8ca6ac4462361e00629c26
product/lib64/libc++_shared.so|dbbd9e4d06e2566c31bdc744dd7391536a780cc6
product/lib64/libcamerax_extension_jni.so|58f91e63adf1a7642b9f2c5fc5be915a6896c111
product/lib64/libdoc-util.so|4a81cced80dcce4869446f9970509ded771ca89b
product/lib64/libdynamic_depth.so|515f03132a086f15c565dd89b192ede5eeca7e29
product/lib64/libfn-beauty-vfb-legacy-base.so|f0a72449ee71ed63aecbd5783576c2f3ad5fa5cb
product/lib64/libfoundation.so|fedb660a03cff0cd51a11be5472c550ad8f0482a
product/lib64/libgg-dynamic_depth.so|5019a87cd8795e5d5a498971cfa5cbcaa3b0fb1e
product/lib64/libgg-tensorflow-lite.so|339239bd3e9efbfa6379f07f0d2d7496b10a3d74
product/lib64/libgif.so|310d708f0c9b60c065514c1e3f1534c8ba347c7d
product/lib64/libjpeg.so|a51f6dde2a6d7eb11378a2575a5e6bf625a15bbb
product/lib64/liblenovo_panorama.so|13c8b6cc2366eea46c5fcb7eb3665a5ba5d38ed4
product/lib64/libmcf-base.so|879813b31805da7ea3f8cf6409b142a7b13cf66b
product/lib64/libmcf-jni.so|f65dd95befd29203caf6ad219c9cf580e15a05d0
product/lib64/libmcf-qc-fd-offline_local.so|99d2dbab152e22d6ae3d552cee3a172fc886ba24
product/lib64/libmcf-stand-alone-sm.so|dd8c3309f8835b20086c3f888a90031c7869fb77
product/lib64/libmeishe-nv-effects-thumbnails.so|a98f88462d5e129c19d3007c73151cdf98f83cfa
product/lib64/libmmcamera_faceproc2.so|1c732d58bf24c939f568cda340318e5b873dce3b
product/lib64/libmorpho_cinema_graph.so|c689a3734f6963b6ad4be3a9ddfae00c1c82acb0
product/lib64/libmorpho_panorama_gp3.so|239287acb6bbb790b793538030d219742a1ff5d0
product/lib64/libmorpho_panorama_gp3_core.so|af05f89eb7d96b5980337361b4cd082eeb52d400
product/lib64/libmorpho_sensor_fusion.so|bbbdfc2b980c3c5810a7d26f14c735c1b64a2af9
product/lib64/libmot-cinemagraph-engine.so|436fec2e80ab8775e6337c42ddf0a4961dcde600
product/lib64/libmot-util.so|db7ea99db0b906e6ef0ced21d10e5530b3bd106b
product/lib64/libmpbase.so|07021c39abbc5c8538f6df1876a3eb3015ff9c2a
product/lib64/libqc-snpe.so|d56cb26ade27bbd4f3ce3d193982fa33523394cb
product/lib64/libsmart_ppt.so|1ba24a17a049e175e5509a9ea1cba38940159efc
product/lib64/libtensorflowlite.so|17f94dc427220788db8f10d658d3a330488ac7d6
product/lib64/libtensorflowlite_gpu_delegate.so|821bcbece27d47c49daac00a65fdf48213befad1
# MotCamera4 - Permissions
product/etc/permissions/com.motorola.camera3.content.ai.xml
product/etc/permissions/com.motorola.camera3.dubai.xml
product/etc/permissions/com.motorola.camera3.lens.xml
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
# NFC
vendor/bin/STFlashTool
# NFC - configs
vendor/etc/libnfc-hal-st.conf
vendor/etc/libnfc-nci-st.conf
vendor/etc/st21nfc_conf_ds.txt
vendor/etc/st21nfc_conf_ss.txt
# NFC firmware
vendor/firmware/st21nfc_fw.bin
vendor/firmware/st21nfc_fw7.bin
vendor/etc/libnfc-PN557.conf
vendor/etc/libnfc-SN220-UICC.conf
vendor/etc/libnfc-SN220.conf
vendor/etc/libnfc-mtp-SN100-UICC.conf
vendor/etc/libnfc-mtp-SN100.conf
vendor/etc/libnfc-mtp-SN100_38_4MHZ.conf
vendor/etc/libnfc-nxp-pnscr.conf
vendor/etc/libnfc-qrd-SN100.conf
vendor/etc/libnfc-qrd-SN100_38_4MHZ.conf
vendor/etc/libnfc-sec-nci.conf
vendor/etc/libnfc-sec-vendor.conf
vendor/etc/nfc_calibration.txt
# OEM
vendor/etc/vhw.xml
@ -367,17 +269,8 @@ vendor/etc/vhw.xml
vendor/lib64/sensors.moto.so
vendor/lib64/sensors.ssc.so
# Sensor - configs
vendor/etc/sensors/config/icm4x6xx.json
vendor/etc/sensors/config/kodiak_default_sensors.json
vendor/etc/sensors/config/kodiak_dynamic_sensors.json
vendor/etc/sensors/config/kodiak_irq.json
vendor/etc/sensors/config/kodiak_power_0.json
vendor/etc/sensors/config/lsm6dso_0.json
vendor/etc/sensors/config/mmc5603x_0.json
# Sensors Configs
vendor/etc/sensors/config/mot_camgest.json
vendor/etc/sensors/config/mot_devorient.json
vendor/etc/sensors/config/mxg4300_0.json
vendor/etc/sensors/config/sns_amd.json
vendor/etc/sensors/config/sns_amd_sw_disabled.json
vendor/etc/sensors/config/sns_amd_sw_enabled.json
@ -413,8 +306,13 @@ vendor/etc/sensors/config/sns_tilt_sw_disabled.json
vendor/etc/sensors/config/sns_tilt_sw_enabled.json
vendor/etc/sensors/config/sns_tilt_to_wake.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/config/strait_default_sensors.json
vendor/etc/sensors/config/strait_dynamic_sensors.json
vendor/etc/sensors/config/strait_lsm6dso_0.json
vendor/etc/sensors/config/strait_mmc56x3x_0.json
vendor/etc/sensors/config/strait_mn78xxx_0.json
vendor/etc/sensors/config/strait_power_0.json
vendor/etc/sensors/config/strait_qmc6308_0.json
vendor/etc/sensors/proto/descriptor.proto
vendor/etc/sensors/proto/mot_barocal.proto
vendor/etc/sensors/proto/mot_camgest.proto
@ -432,7 +330,6 @@ vendor/etc/sensors/proto/mot_offbody.proto
vendor/etc/sensors/proto/mot_probe.proto
vendor/etc/sensors/proto/mot_proxcal.proto
vendor/etc/sensors/proto/mot_stowed.proto
vendor/etc/sensors/proto/mot_tap.proto
vendor/etc/sensors/proto/mot_vsync.proto
vendor/etc/sensors/proto/nanopb.proto
vendor/etc/sensors/proto/sns_accel.proto
@ -458,6 +355,7 @@ vendor/etc/sensors/proto/sns_ext_svc.proto
vendor/etc/sensors/proto/sns_facing.proto
vendor/etc/sensors/proto/sns_fmv.proto
vendor/etc/sensors/proto/sns_formatter.proto
vendor/etc/sensors/proto/sns_formatter_notify.proto
vendor/etc/sensors/proto/sns_fw.proto
vendor/etc/sensors/proto/sns_game_rv.proto
vendor/etc/sensors/proto/sns_geomag_rv.proto
@ -475,7 +373,6 @@ vendor/etc/sensors/proto/sns_mag_cal.proto
vendor/etc/sensors/proto/sns_mot_factory_cal.proto
vendor/etc/sensors/proto/sns_oem1.proto
vendor/etc/sensors/proto/sns_offbody_detect.proto
vendor/etc/sensors/proto/sns_panel_status.proto
vendor/etc/sensors/proto/sns_pedometer.proto
vendor/etc/sensors/proto/sns_pedometer_wrist.proto
vendor/etc/sensors/proto/sns_physical_sensor_test.proto
@ -502,35 +399,14 @@ vendor/etc/sensors/proto/sns_thermopile.proto
vendor/etc/sensors/proto/sns_threshold.proto
vendor/etc/sensors/proto/sns_tilt.proto
vendor/etc/sensors/proto/sns_tilt_to_wake.proto
vendor/etc/sensors/proto/sns_trimag.proto
vendor/etc/sensors/proto/sns_ultra_violet.proto
vendor/etc/sensors/proto/sns_wrist_tilt_gesture.proto
vendor/etc/sensors/proto/tcs3708.proto
vendor/etc/sensors/sns_reg_config
# Thermal engine - configs
# Thermal configs
vendor/etc/thermal-engine-bangkk-camera.conf
vendor/etc/thermal-engine-bangkk-game-normal.conf
vendor/etc/thermal-engine-bangkk-game-perf.conf
vendor/etc/thermal-engine-bangkk.conf
vendor/etc/thermal-engine.conf
# Touchscreen firmware
vendor/firmware/csot_goodix_cfg_group.bin
vendor/firmware/csot_goodix_test_limits_255.csv
vendor/firmware/goodix-csot-gt9916S-2202250f-62187be9-dubai.bin
vendor/firmware/goodix-tianma-gt9916S-2202250f-62187c3e-dubai.bin
vendor/firmware/tianma_goodix_cfg_group.bin
vendor/firmware/tianma_goodix_test_limits_255.csv
# Vibration firmware
vendor/firmware/aw8622x_haptic.bin
vendor/firmware/aw8622x_osc_rtp_12K_10s.bin
vendor/firmware/aw8622x_rtp.bin
# WPSS firmware - from S1RDS32.55-106-3
vendor/firmware/wpss.b00|9214ea9be39a858849f2f854a13499d68208a659
vendor/firmware/wpss.b01|e15f757c7a97f62a4d529e50769b75de7016588c
vendor/firmware/wpss.b02|ae11da8b635ded3ed976b7d32b5e088b86a3aeaa
vendor/firmware/wpss.b03|0590fe4f97d77dd110a8474f1219e40e9a26d6c2
vendor/firmware/wpss.b04|a80736069f2e1a077c31ddedc04204479cf1650e
vendor/firmware/wpss.b05|e6492d98c65316c43bd20b2e79a69de28a15c00d
vendor/firmware/wpss.b06|3337d698242ca04332a65023b915b076f3ef6dfb
vendor/firmware/wpss.b07|0a8b713c17d486485c3b35eea4eed471e5330004
vendor/firmware/wpss.mdt|50925b033c00324162fd708e9cda99c75d42efec
vendor/firmware/wpss.qdb|0684693df38ddc4647c62c386e4683c6a7aa9696

View file

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

View file

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

View file

@ -7,5 +7,5 @@
<!-- Height of the status bar in landscape. The height should be
Max((status bar content height + waterfall top size), top cutout size) -->
<dimen name="status_bar_height">24.0dip</dimen>
<dimen name="status_bar_height">106.0dip</dimen>
</resources>

View file

@ -35,6 +35,9 @@
<item>1250</item>
<item>3500</item>
<item>5500</item>
<item>10000</item>
<item>50000</item>
<item>120000</item>
</array>
<!-- Array of desired screen brightness in nits corresponding to the lux values
@ -51,7 +54,7 @@
array. The brightness values must be non-negative and non-decreasing. This must be
overridden in platform specific overlays -->
<array name="config_autoBrightnessDisplayValuesNits">
<item>2</item>
<item>3</item>
<item>7</item>
<item>10</item>
<item>12</item>
@ -60,8 +63,11 @@
<item>111</item>
<item>149</item>
<item>192</item>
<item>252</item>
<item>325</item>
<item>500</item>
<item>700</item>
<item>800</item>
<item>1000</item>
</array>
<!-- An array describing the screen's backlight values corresponding to the brightness
@ -69,17 +75,19 @@
This array should be equal in size to config_screenBrightnessBacklight. -->
<array name="config_screenBrightnessBacklight">
<item>0</item>
<item>1</item>
<item>4</item>
<item>5</item>
<item>6</item>
<item>12</item>
<item>48</item>
<item>57</item>
<item>76</item>
<item>98</item>
<item>9</item>
<item>27</item>
<item>35</item>
<item>38</item>
<item>55</item>
<item>106</item>
<item>113</item>
<item>129</item>
<item>147</item>
<item>183</item>
<item>228</item>
<item>239</item>
<item>244</item>
<item>255</item>
</array>
@ -91,8 +99,7 @@
This array should be equal in size to config_screenBrightnessBacklight -->
<array name="config_screenBrightnessNits">
<item>0</item>
<item>2</item>
<item>3</item>
<item>7</item>
<item>10</item>
<item>12</item>
@ -101,8 +108,11 @@
<item>111</item>
<item>149</item>
<item>192</item>
<item>252</item>
<item>325</item>
<item>500</item>
<item>700</item>
<item>800</item>
<item>1000</item>
</array>
<!-- Stability requirements in milliseconds for accepting a new brightness level. This is used
@ -135,11 +145,11 @@
@see https://www.w3.org/TR/SVG/paths.html#PathData
-->
<string translatable="false" name="config_mainBuiltInDisplayCutout">
M -35,0
L 35,0
L 35,105
L -35,105
Z
M -38,0
L 38,0
L 38,106
L -38,106
Z
</string>
<!-- Indicate whether to allow the device to suspend when the screen is off
@ -199,7 +209,7 @@
<!-- The properties of a UDFPS sensor in pixels, in the order listed below: -->
<integer-array name="config_udfps_sensor_props" translatable="false" >
<item>540</item> <!-- sensorLocationX -->
<item>2164</item> <!-- sensorLocationY -->
<item>2168</item> <!-- sensorLocationY -->
<item>91</item> <!-- sensorRadius -->
</integer-array>
@ -215,28 +225,19 @@
<!-- Vibrator pattern for feedback about a long screen/key press -->
<array name="config_longPressVibePattern">
<item>0</item>
<item>67</item>
<item>60</item>
</array>
<!-- Vibrator pattern for feedback about touching a virtual key -->
<array name="config_virtualKeyVibePattern">
<item>0</item>
<item>67</item>
<item>50</item>
</array>
<!-- Vibrator pattern for feedback about booting with safe mode enabled -->
<array name="config_safeModeEnabledVibePattern">
<array name="config_clockTickVibePattern">
<item>0</item>
<item>0</item>
<item>94</item>
</array>
<!-- Vibrator pattern for feedback about hitting a scroll barrier -->
<array name="config_scrollBarrierVibePattern">
<item>0</item>
<item>15</item>
<item>30</item>
<item>15</item>
<item>40</item>
</array>
<!-- ComponentName of a dream to show whenever the system would otherwise have
@ -263,7 +264,7 @@
<bool name="config_dozeAlwaysOnEnabled">false</bool>
<!-- MMS user agent string -->
<string name="config_mms_user_agent" translatable="false">motorolaedge30</string>
<string name="config_mms_user_agent" translatable="false">motog845g</string>
<!-- 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>

View file

@ -5,11 +5,11 @@
-->
<resources>
<!-- Radius of the software rounded corners. -->
<dimen name="rounded_corner_radius">95.0px</dimen>
<dimen name="rounded_corner_radius">105.0px</dimen>
<!-- Height of the status bar in portrait. The height should be
Max((status bar content height + waterfall top size), top cutout size) -->
<dimen name="status_bar_height_portrait">105.0px</dimen>
<dimen name="status_bar_height_portrait">106.0px</dimen>
<dimen name="status_bar_padding_top_portrait">20.0px</dimen>
<dimen name="status_bar_padding_top_portrait">19.0px</dimen>
</resources>

View file

@ -0,0 +1,82 @@
<?xml version="1.0" encoding="utf-8"?>
<device name="Android">
<item name="none">0</item>
<item name="screen.on">120.12</item>
<item name="screen.full">370.48</item>
<item name="wifi.on">1.78</item>
<item name="wifi.active">88.58</item>
<item name="wifi.scan">44.18</item>
<item name="camera.avg">607.96</item>
<item name="camera.flashlight">149.85</item>
<item name="gps.on">50.69</item>
<item name="radio.active">124.89</item>
<item name="radio.scanning">35</item>
<array name="radio.on">
<value>35</value>
<value>30</value>
<value>25</value>
<value>20</value>
<value>15</value>
<value>10</value>
<value>5</value>
<value>1.090</value>
</array>
<array name="cpu.clusters.cores">
<value>6</value>
<value>2</value>
</array>
<array name="cpu.core_speeds.cluster0">
<value>300000</value>
<value>576000</value>
<value>691200</value>
<value>940800</value>
<value>1113600</value>
<value>1324800</value>
<value>1516800</value>
<value>1651200</value>
<value>1708800</value>
<value>1804800</value>
</array>
<array name="cpu.core_speeds.cluster1">
<value>691200</value>
<value>940800</value>
<value>1228800</value>
<value>1401600</value>
<value>1516800</value>
<value>1651200</value>
<value>1804800</value>
<value>1900800</value>
<value>2054400</value>
<value>2208000</value>
</array>
<array name="cpu.core_power.cluster0">
<value>22.1</value>
<value>24.3</value>
<value>25.3</value>
<value>30.3</value>
<value>33.2</value>
<value>36.6</value>
<value>43.2</value>
<value>50.2</value>
<value>52.2</value>
<value>55.8</value>
</array>
<array name="cpu.core_power.cluster1">
<value>49.6</value>
<value>67.2</value>
<value>90.7</value>
<value>112.0</value>
<value>127.9</value>
<value>149.2</value>
<value>168.4</value>
<value>187.2</value>
<value>200.6</value>
<value>228.3</value>
</array>
<item name="cpu.cluster_power.cluster0">0.7</item>
<item name="cpu.cluster_power.cluster1">8.7</item>
<item name="cpu.suspend">5.993</item>
<item name="cpu.idle">8.606</item>
<item name="cpu.active">9.4</item>
<item name="battery.capacity">5000</item>
</device>

View file

@ -4,6 +4,6 @@
//
runtime_resource_overlay {
name: "LineageSystemUIDubai",
name: "LineageSystemUIBangkk",
vendor: true,
}

View file

@ -4,7 +4,7 @@
SPDX-License-Identifier: Apache-2.0
-->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.android.systemui.dubai.lineage">
package="com.android.systemui.bangkk.lineage">
<overlay
android:isStatic="true"

View file

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

View file

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

View file

@ -16,10 +16,7 @@
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<!-- Whether to show a preference item for regulatory information in About phone -->
<bool name="config_show_regulatory_info">true</bool>
<!-- The radius of the enrollment progress bar, in dp -->
<integer name="config_udfpsEnrollProgressBar">65</integer>
<integer name="config_udfpsEnrollProgressBar">70</integer>
</resources>

View file

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

View file

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

View file

@ -5,5 +5,5 @@
-->
<resources>
<!-- Default for Settings.Global.DEVICE_NAME $1=MODEL-->
<string name="def_device_name_simple">motorola edge 30</string>
<string name="def_device_name_simple">moto g84 5G</string>
</resources>

View file

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

View file

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

View file

@ -4,7 +4,7 @@
//
runtime_resource_overlay {
name: "WifiResDubai",
name: "WifiResBangkk",
sdk_version: "current",
vendor: true,
}

View file

@ -4,7 +4,7 @@
SPDX-License-Identifier: Apache-2.0
-->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.android.wifi.resources.overlay.dubai">
package="com.android.wifi.resources.overlay.bangkk">
<overlay
android:isStatic="true"

View file

@ -19,6 +19,6 @@
<resources>
<!-- Default access point SSID used for tethering -->
<string name="wifi_tether_configure_ssid_default" translatable="false">motorola edge 30</string>
<string name="wifi_tether_configure_ssid_default" translatable="false">moto g84 5G</string>
</resources>

View file

@ -1,113 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<device name="Android">
<item name="none">0</item>
<item name="screen.on.display0">139.28</item>
<item name="screen.full.display0">450</item>
<item name="wifi.on">0.9</item>
<item name="wifi.active">34.36</item>
<item name="wifi.scan">4.73</item>
<item name="camera.avg">523.93</item>
<item name="camera.flashlight">200.75</item>
<item name="gps.on">171</item>
<item name="radio.active">136.278</item>
<item name="radio.scanning">10.57</item>
<array name="radio.on">
<value>33.079</value>
<value>30</value>
<value>25</value>
<value>20</value>
<value>15</value>
<value>10</value>
<value>5</value>
<value>1.463</value>
</array>
<array name="cpu.clusters.cores">
<value>4</value>
<value>3</value>
<value>1</value>
</array>
<array name="cpu.core_speeds.cluster0">
<value>300000</value>
<value>691200</value>
<value>806400</value>
<value>940800</value>
<value>1152000</value>
<value>1324800</value>
<value>1516800</value>
<value>1651200</value>
<value>1804800</value>
</array>
<array name="cpu.core_speeds.cluster1">
<value>691200</value>
<value>940800</value>
<value>1228800</value>
<value>1344000</value>
<value>1516800</value>
<value>1651200</value>
<value>1900800</value>
<value>2054400</value>
<value>2131200</value>
<value>2400000</value>
</array>
<array name="cpu.core_speeds.cluster2">
<value>806400</value>
<value>1056000</value>
<value>1324800</value>
<value>1516800</value>
<value>1766400</value>
<value>1862400</value>
<value>2035200</value>
<value>2208000</value>
<value>2380800</value>
<value>2515200</value>
</array>
<array name="cpu.core_power.cluster0">
<value>4.13</value>
<value>6.9</value>
<value>7.26</value>
<value>8.88</value>
<value>12.17</value>
<value>15.7</value>
<value>20.06</value>
<value>25.76</value>
<value>30.9</value>
</array>
<array name="cpu.core_power.cluster1">
<value>26.93</value>
<value>20.23</value>
<value>57.22</value>
<value>71.71</value>
<value>91.77</value>
<value>108.31</value>
<value>158.29</value>
<value>182.69</value>
<value>186.79</value>
<value>230.89</value>
</array>
<array name="cpu.core_power.cluster2">
<value>34.69</value>
<value>49.4</value>
<value>70.56</value>
<value>89.92</value>
<value>117.81</value>
<value>129.49</value>
<value>185.7</value>
<value>184.51</value>
<value>218.2</value>
<value>243.16</value>
</array>
<item name="cpu.cluster_power.cluster0">1.13</item>
<item name="cpu.cluster_power.cluster1">1.13</item>
<item name="cpu.cluster_power.cluster1">1.13</item>
<item name="cpu.suspend">6.5</item>
<item name="cpu.idle">12.86</item>
<item name="cpu.active">6.79</item>
<item name="battery.capacity">4020</item>
<item name="modem.controller.idle">6</item>
<item name="modem.controller.rx">180</item>
<item name="modem.controller.tx">186</item>
<item name="modem.controller.voltage">3700</item>
<array name="memory.bandwidths">
<value>17</value>
</array>
</device>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 81 KiB

View file

@ -1,59 +1,51 @@
import /vendor/etc/init/hw/init.vendor.st21nfc.rc
on early-init && property:ro.bootmode=mot-factory
insmod /vendor/lib/modules/moto_f_usbnet.ko
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
on early-init
insmod /vendor/lib/modules/bm_adsp_ulog.ko
insmod /vendor/lib/modules/mmi_charger.ko
insmod /vendor/lib/modules/qti_glink_charger.ko
insmod /vendor/lib/modules/aw882xx_k504.ko
insmod /vendor/lib/modules/cirrus_wm_adsp.ko
insmod /vendor/lib/modules/cirrus_cs35l41.ko
insmod /vendor/lib/modules/cirrus_cs35l45.ko
insmod /vendor/lib/modules/mmi_sys_temp.ko
insmod /vendor/lib/modules/wl2864c.ko
insmod /vendor/lib/modules/goodix_brl_mmi.ko
insmod /vendor/lib/modules/camera.ko
insmod /vendor/lib/modules/aw862x.ko
insmod /vendor/lib/modules/cci_intf.ko
insmod /vendor/lib/modules/qpnp_adaptive_charge.ko
start vendor.mmi_modules
on fs
# egis fod ko
insmod /vendor/lib/modules/rbs_fps_mmi.ko
# sec_nfc
import /vendor/etc/init/hw/init.nfc.sec.rc
on post-fs
# Sensors
chown system system /sys/devices/platform/soc/a94000.spi/spi_master/spi0/spi0.0/touchscreen/primary/double_tap_enabled
chown system system /sys/devices/platform/soc/a94000.spi/spi_master/spi0/spi0.0/touchscreen/primary/double_tap_pressed
chown system system /sys/devices/platform/soc/a94000.spi/spi_master/spi0/spi0.0/touchscreen/primary/udfps_enabled
chown system system /sys/devices/platform/soc/a94000.spi/spi_master/spi0/spi0.0/touchscreen/primary/udfps_pressed
# "Tap to wake" gesture
chown root input /sys/class/sensors/dt-gesture/enable
chmod 0660 /sys/class/sensors/dt-gesture/enable
chown root input /sys/class/sensors/dt-gesture/poll_delay
chmod 0660 /sys/class/sensors/dt-gesture/poll_delay
on post-fs
chown system system /sys/devices/platform/soc/4804000.ufshc/clkgate_enable
chown system system /sys/devices/platform/soc/4804000.ufshc/devfreq/4804000.ufshc/min_freq
on post-fs-data
mkdir /mnt/vendor/persist/tof 0755 vendor_tcmd camera
chown vendor_tcmd camera /mnt/vendor/persist/tof/refspad_cal
chown vendor_tcmd camera /mnt/vendor/persist/tof/xtalk_g1_cal
chown vendor_tcmd camera /mnt/vendor/persist/tof/xtalk_shape_cal
chown vendor_tcmd camera /mnt/vendor/persist/tof/xtalk_production_cal
chown vendor_tcmd camera /mnt/vendor/persist/tof/offset_cal
chmod 0640 /mnt/vendor/persist/tof/refspad_cal
chmod 0640 /mnt/vendor/persist/tof/xtalk_g1_cal
chmod 0640 /mnt/vendor/persist/tof/xtalk_shape_cal
chmod 0640 /mnt/vendor/persist/tof/xtalk_production_cal
chmod 0640 /mnt/vendor/persist/tof/offset_cal
# Param updater data for various modules
mkdir /data/vendor/param 0775 system system
chown system system /sys/devices/platform/soc/soc:fm_wcn39x0/elna_en
# 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
# change permission for stylus
chown system system /sys/class/touchscreen/primary/palm_settings
# Change ownership and permission for bq25960-standalone factory testing
chown system system /sys/class/power_supply/bq25960-standalone/voltage_now
chown system system /sys/bus/iio/devices/iio:device6/in_index_bq25980_cp_enabled_input
chmod 0644 /sys/class/power_supply/bq25960-standalone/voltage_now
chmod 0664 /sys/bus/iio/devices/iio:device6/in_index_bq25980_cp_enabled_input
# Add for Egis Fod fingerprint
mkdir /data/vendor/egis 0770 system system
mkdir /mnt/vendor/persist/egis 0770 system system
mkdir /data/vendor/tzstorage/egis 0770 system system
mkdir /data/vendor/egis/cqa 0770 system system
# Add for after-sale ois gyro cal
mkdir /mnt/vendor/persist/camera/gyro_compat 0770 vendor_tcmd camera
# Add for OIS hall test result
mkdir /mnt/vendor/persist/camera/ois_hall 0770 vendor_tcmd camera
# Add for OIS hall data
mkdir /mnt/vendor/persist/camera/ois_hall_data 0770 vendor_tcmd camera
# Add for fod fps calibration
chown system system /sys/class/backlight/panel0-backlight/brightness
chown system system /sys/class/drm/card0-DSI-1/panelName
@ -64,37 +56,77 @@ on post-fs-data
chmod 0666 /sys/class/drm/card0-DSI-1/panelName
chmod 0666 /sys/class/drm/card0-DSI-1/panelId
# Add for modem rfs logs
rm /data/vendor/radio/read_modem_efs
write /data/vendor/radio/read_modem_efs 0
chmod 0666 /data/vendor/radio/read_modem_efs
on early-init
insmod /vendor/lib/modules/leds_aw99703.ko
insmod /vendor/lib/modules/leds_lm3697.ko
exec u:r:vendor_modprobe:s0 -- /vendor/bin/modprobe -r -d /vendor/lib/modules/${ro.vendor.mot.gki.path} zram
on boot
# vibrator hal need to access this sysfs node for AF noise issue
chown system system /sys/devices/platform/soc/soc:mot,cam-actuator/onekey_actuator
chmod 0660 /sys/devices/platform/soc/soc:mot,cam-actuator/onekey_actuator
# change permission for capsensor
chown system system /sys/class/capsense/reset
chown system system /sys/class/capsense/int_state
chown radio system /sys/class/capsense/reg
chown radio system /sys/class/capsense/fw_download_status
chown system system /sys/class/capsense/mode
chmod 0660 /sys/class/capsense/reset
chmod 0660 /sys/class/capsense/int_state
chmod 0660 /sys/class/capsense/reg
chmod 0660 /sys/class/capsense/fw_download_status
# touch
chown system system /sys/class/touchscreen/primary/interpolation
chmod 0660 /sys/class/touchscreen/primary/interpolation
chown system system /sys/class/touchscreen/primary/sample
chmod 0660 /sys/class/touchscreen/primary/sample
chown system system /sys/class/touchscreen/primary/edge
chmod 0660 /sys/class/touchscreen/primary/edge
chown system system /sys/class/touchscreen/primary/gesture
chmod 0660 /sys/class/touchscreen/primary/gesture
chmod 0660 /sys/class/capsense/mode
chmod 0666 /dev/gtp_tools
#bluetooth sar
write /data/vendor/radio/bluetooth_sar disable
chmod 0644 /data/vendor/radio/bluetooth_sar
chown radio /data/vendor/radio/bluetooth_sar
on fs
insmod /vendor/lib/modules/${ro.vendor.mot.gki.path}/rbs_fod_mmi.ko
on boot && property:ro.vendor.mot.gki.path=5.4-gki
insmod /vendor/lib/modules/${ro.vendor.mot.gki.path}/nfc_i2c.ko
on late-init
insmod /vendor/lib/modules/${ro.vendor.mot.gki.path}/qpnp_adaptive_charge.ko
insmod /vendor/lib/modules/${ro.vendor.mot.gki.path}/mmi-smbcharger-iio.ko
insmod /vendor/lib/modules/${ro.vendor.mot.gki.path}/mmi_parallel_charger_iio.ko
exec u:r:vendor_modprobe:s0 -- /vendor/bin/modprobe -a -d /vendor/lib/modules/${ro.vendor.mot.gki.path} moto_mm moto_swap
on early-boot
# Add for egis fingerprint
chown system system /dev/esfp0
chmod 0664 /dev/esfp0
on boot
# allow TCMD to access cci for OIS test
chmod 0660 /dev/cci_intf
chown system camera /dev/cci_intf
chmod 0660 /dev/cci_intf
on property:ro.boot.mode=mot-factory
chmod 0666 /dev/cci_intf
#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/force_pmic_icl
chown vendor_tcmd system /sys/devices/platform/soc/soc:qcom,pmic_glink/soc:qcom,pmic_glink:qcom,battery_charger/force_charging_enable
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:qcom,battery_charger/force_charging_enable
# Touch game mode control
chown system system /sys/class/touchscreen/primary/rotate
chmod 0660 /sys/class/touchscreen/primary/rotate
chown system system /sys/class/touchscreen/primary/interpolation
chmod 0660 /sys/class/touchscreen/primary/interpolation
chown system system /sys/class/touchscreen/primary/edge
chmod 0660 /sys/class/touchscreen/primary/edge
chown system system /sys/class/touchscreen/primary/first_filter
chmod 0660 /sys/class/touchscreen/primary/first_filter
# 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/lower_limit
on charger
insmod /vendor/lib/modules/${ro.vendor.mot.gki.path}/qpnp_adaptive_charge.ko
insmod /vendor/lib/modules/${ro.vendor.mot.gki.path}/mmi-smbcharger-iio.ko
insmod /vendor/lib/modules/${ro.vendor.mot.gki.path}/mmi_parallel_charger_iio.ko
service capsense_reset /system/vendor/bin/capsense_reset
on post-fs-data && property:ro.boot.mode=charger
setprop persist.vendor.hvdcp_opti.start 1
service capsense_reset /vendor/bin/capsense_reset
class core
user system
group system input
@ -103,5 +135,22 @@ service capsense_reset /system/vendor/bin/capsense_reset
on property:sys.boot_completed=1
start capsense_reset
on property:persist.vendor.paramfile.parse_panel=1
write /sys/devices/platform/soc/soc:qcom,dsi-display-primary/dsi_display_parse_para "5"
service vendor.modem-rfs-sh /vendor/bin/init.mmi.modem-rfs.sh loop_forever
class late_start
user root
group log system radio
oneshot
on post-fs-data && property:ro.boot.mode=mot-factory
#open usb debug log
write /sys/kernel/debug/dynamic_debug/control "file gadget.c +p"
write /sys/kernel/debug/dynamic_debug/control "file composite.c +p"
write /sys/kernel/debug/dynamic_debug/control "file configfs.c +p"
write /sys/kernel/debug/dynamic_debug/control "file phy-msm-snps-hs.c +p"
write /sys/kernel/debug/dynamic_debug/control "file phy-msm-ssusb-qmp.c +p"
on property:vendor.bluetooth.sar_state=connect
write /data/vendor/radio/bluetooth_sar connect
on property:vendor.bluetooth.sar_state=disconnect
write /data/vendor/radio/bluetooth_sar disconnect

View file

@ -0,0 +1,12 @@
on boot
on post-fs-data
# NFC storage
# mkdir /data/nfc
# NFC permission
chown nfc nfc /dev/sec-nfc
chmod 0770 /dev/sec-nfc
# chown nfc nfc /data/nfc
# chmod 0770 /data/nfc

View file

@ -1,23 +0,0 @@
# This file needs to be executed by vendor_init at boot of the device,
# both in normal and factory mode.
on post-fs
# Change ownership and permision of st nfc device
chown nfc nfc /dev/st21nfc
chmod 0660 /dev/st21nfc
on property:ro.vendor.hw.nfc=true && property:persist.vendor.radio.multisim.config=*
start vendor.stflashtool
on property:ro.vendor.hw.nfc=st && property:persist.vendor.radio.multisim.config=*
start vendor.stflashtool
on property:ro.vendor.hw.nfc=ese_st && property:persist.vendor.radio.multisim.config=*
start vendor.stflashtool
service vendor.stflashtool /vendor/bin/STFlashTool -c /vendor/etc/st21nfc_conf.txt -P vendor.nfc.fw_status
group nfc
user nfc
oneshot
disabled

View file

@ -5,7 +5,7 @@
//
cc_library_shared {
name: "sensors.dubai",
name: "sensors.bangkk",
defaults: ["hidl_defaults"],
srcs: [
"Sensor.cpp",
@ -29,7 +29,7 @@ cc_library_shared {
"android.hardware.sensors@2.X-multihal",
],
cflags: [
"-DLOG_TAG=\"sensors.dubai\"",
"-DLOG_TAG=\"sensors.bangkk\"",
],
vendor: true,
}

View file

@ -1,3 +1,2 @@
sensors.ssc.so
sensors.moto.so
sensors.dubai.so
sensors.ssc.so

View file

@ -8,8 +8,8 @@
set -e
export DEVICE=dubai
export DEVICE_COMMON=sm7325-common
export DEVICE=bangkk
export DEVICE_COMMON=sm6375-common
export VENDOR=motorola
"./../../${VENDOR}/${DEVICE_COMMON}/setup-makefiles.sh" "$@"

View file

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

View file

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

View file

@ -1,11 +1,11 @@
# Bluetooth
bluetooth.device.default_name=motorola edge 30
bluetooth.device.default_name=moto g84 5G
# Camera
persist.vendor.camera.physical.num=4
persist.vendor.camera.physical.num=3
# Motorola
ro.mot.build.customerid=global
# NFC
ro.vendor.hw.nfc=st
persist.vendor.nfc.config_secfile_name=libnfc-sec-nci.conf