sm6150-common: Transform davinci into common tree

* The following things are left in devices, because they're device specific
  - voip compress properties
  - HVDCP properties
  - audio configs
  - power profile
  - rounded corner configuration
  - partition configuration
  - FOD
  - camera motor
  - NFC
  - board-info
  - fstab
  - ipa and graphics firmware
  - shipping and manifest target level

Co-authored-by: Adithya R <gh0strider.2k18.reborn@gmail.com>
Co-authored-by: Arian <arian.kulmer@web.de>
Change-Id: I8bef29041f8f239361b999fc8ab1a43cc2ebb86b
This commit is contained in:
raghavt20 2021-01-12 18:52:43 +01:00 committed by Arian
parent b69b94ab30
commit 0aa378102c
No known key found for this signature in database
GPG Key ID: 48029380598CE3B9
60 changed files with 78 additions and 5959 deletions

View File

@ -16,7 +16,7 @@
LOCAL_PATH := $(call my-dir)
ifeq ($(TARGET_DEVICE),davinci)
ifneq ($(filter davinci phoenix toco violet,$(TARGET_DEVICE)),)
include $(call all-makefiles-under,$(LOCAL_PATH))

View File

@ -1,23 +0,0 @@
#
# Copyright (C) 2020 The LineageOS Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
PRODUCT_MAKEFILES := \
$(LOCAL_DIR)/lineage_davinci.mk
COMMON_LUNCH_CHOICES := \
lineage_davinci-user \
lineage_davinci-userdebug \
lineage_davinci-eng

View File

@ -14,12 +14,12 @@
# limitations under the License.
#
DEVICE_PATH := device/xiaomi/davinci
COMMON_PATH := device/xiaomi/sm6150-common
BUILD_BROKEN_DUP_RULES := true
# Inherit from proprietary files
include vendor/xiaomi/davinci/BoardConfigVendor.mk
include vendor/xiaomi/sm6150-common/BoardConfigVendor.mk
# Architecture
TARGET_ARCH := arm64
@ -39,9 +39,6 @@ TARGET_2ND_CPU_VARIANT_RUNTIME := cortex-a76
# ANT+
BOARD_ANT_WIRELESS_DEVICE := "qualcomm-hidl"
# Assert
TARGET_OTA_ASSERT_DEVICE := davinci,davinciin
# Audio
AUDIO_FEATURE_ENABLED_EXT_AMPLIFIER := true
AUDIO_FEATURE_ENABLED_EXTENDED_COMPRESS_FORMAT := true
@ -59,7 +56,7 @@ USE_CUSTOM_AUDIO_POLICY := 1
USE_XML_AUDIO_POLICY_CONF := 1
# Bluetooth
BOARD_BLUETOOTH_BDROID_BUILDCFG_INCLUDE_DIR := $(DEVICE_PATH)/bluetooth/include
BOARD_BLUETOOTH_BDROID_BUILDCFG_INCLUDE_DIR := $(COMMON_PATH)/bluetooth/include
# Bootloader
TARGET_BOOTLOADER_BOARD_NAME := sm6150
@ -80,32 +77,20 @@ TARGET_USES_HWC2 := true
TARGET_ENABLE_MEDIADRM_64 := true
# Filesystem
TARGET_FS_CONFIG_GEN := $(DEVICE_PATH)/configs/config.fs
TARGET_FS_CONFIG_GEN := $(COMMON_PATH)/configs/config.fs
# FM
BOARD_HAVE_QCOM_FM := true
# FOD
TARGET_SURFACEFLINGER_FOD_LIB := //$(DEVICE_PATH):libfod_extension.davinci
TARGET_USES_FOD_ZPOS := true
# GPS
BOARD_VENDOR_QCOM_GPS_LOC_API_HARDWARE := default
LOC_HIDL_VERSION := 4.0
# HIDL
DEVICE_MANIFEST_FILE := $(DEVICE_PATH)/configs/hidl/manifest.xml
DEVICE_MANIFEST_FILE += $(DEVICE_PATH)/configs/hidl/c2_manifest.xml
DEVICE_MATRIX_FILE := $(DEVICE_PATH)/configs/hidl/compatibility_matrix.xml
ODM_MANIFEST_FILES += $(DEVICE_PATH)/configs/hidl/manifest-qva.xml
ODM_MANIFEST_SKUS += davinci
ODM_MANIFEST_DAVINCI_FILES := \
$(DEVICE_PATH)/configs/hidl/manifest-nfc.xml \
$(DEVICE_PATH)/configs/hidl/manifest-qva.xml
# Init
TARGET_INIT_VENDOR_LIB := //$(DEVICE_PATH):libinit_davinci
TARGET_RECOVERY_DEVICE_MODULES := libinit_davinci
DEVICE_MANIFEST_FILE := $(COMMON_PATH)/configs/hidl/manifest.xml
DEVICE_MANIFEST_FILE += $(COMMON_PATH)/configs/hidl/c2_manifest.xml
DEVICE_MATRIX_FILE := $(COMMON_PATH)/configs/hidl/compatibility_matrix.xml
ODM_MANIFEST_FILES += $(COMMON_PATH)/configs/hidl/manifest-qva.xml
# Kernel
BOARD_KERNEL_BASE := 0x00000000
@ -114,7 +99,6 @@ BOARD_KERNEL_PAGESIZE := 4096
BOARD_KERNEL_SEPARATED_DTBO := true
TARGET_KERNEL_CLANG_COMPILE := true
TARGET_KERNEL_CONFIG := davinci_defconfig
TARGET_KERNEL_SOURCE := kernel/xiaomi/sm6150
BOARD_KERNEL_CMDLINE := console=ttyMSM0,115200n8 earlycon=msm_geni_serial,0xa88000
@ -130,41 +114,22 @@ BOARD_MKBOOTIMG_ARGS := --header_version $(BOARD_BOOTIMG_HEADER_VERSION)
TARGET_USES_ION := true
TARGET_DISABLED_UBWC := true
# Partitions
BOARD_BOOTIMAGE_PARTITION_SIZE := 134217728
BOARD_CACHEIMAGE_PARTITION_SIZE := 268435456
BOARD_DTBOIMG_PARTITION_SIZE := 33554432
BOARD_RECOVERYIMAGE_PARTITION_SIZE := 67108864
BOARD_SYSTEMIMAGE_PARTITION_SIZE := 3758096384
BOARD_USERDATAIMAGE_PARTITION_SIZE := 55371083776
BOARD_VENDORIMAGE_PARTITION_SIZE := 1610612736
BOARD_FLASH_BLOCK_SIZE := 262144 # (BOARD_KERNEL_PAGESIZE * 64)
BOARD_BUILD_SYSTEM_ROOT_IMAGE := true
BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE := ext4
BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE := ext4
TARGET_USERIMAGES_USE_EXT4 := true
TARGET_USERIMAGES_USE_F2FS := true
TARGET_COPY_OUT_VENDOR := vendor
# Platform
TARGET_BOARD_PLATFORM := sm6150
# Power
TARGET_POWERHAL_MODE_EXT := $(DEVICE_PATH)/power/power-mode.cpp
TARGET_POWERHAL_MODE_EXT := $(COMMON_PATH)/power/power-mode.cpp
# Properties
TARGET_ODM_PROP += $(DEVICE_PATH)/odm.prop
TARGET_SYSTEM_PROP += $(DEVICE_PATH)/system.prop
TARGET_VENDOR_PROP += $(DEVICE_PATH)/vendor.prop
TARGET_ODM_PROP += $(COMMON_PATH)/odm.prop
TARGET_SYSTEM_PROP += $(COMMON_PATH)/system.prop
TARGET_VENDOR_PROP += $(COMMON_PATH)/vendor.prop
# QCOM
BOARD_USES_QCOM_HARDWARE := true
# Recovery
BOARD_INCLUDE_RECOVERY_DTBO := true
TARGET_RECOVERY_FSTAB := $(DEVICE_PATH)/rootdir/etc/fstab.qcom
TARGET_RECOVERY_PIXEL_FORMAT := "RGBX_8888"
# RIL
@ -172,7 +137,7 @@ ENABLE_VENDOR_RIL_SERVICE := true
# Releasetools
TARGET_RECOVERY_UPDATER_LIBS := librecovery_updater_xiaomi
TARGET_RELEASETOOLS_EXTENSIONS := $(DEVICE_PATH)
TARGET_RELEASETOOLS_EXTENSIONS := $(COMMON_PATH)
# Security patch level
VENDOR_SECURITY_PATCH := 2020-10-01
@ -181,9 +146,8 @@ VENDOR_SECURITY_PATCH := 2020-10-01
TARGET_SEPOLICY_DIR := msmsteppe
include device/qcom/sepolicy_vndr/SEPolicy.mk
BOARD_PLAT_PRIVATE_SEPOLICY_DIR += $(DEVICE_PATH)/sepolicy/private
BOARD_PLAT_PUBLIC_SEPOLICY_DIR += $(DEVICE_PATH)/sepolicy/public
BOARD_VENDOR_SEPOLICY_DIRS += $(DEVICE_PATH)/sepolicy/vendor
BOARD_PLAT_PRIVATE_SEPOLICY_DIR += $(COMMON_PATH)/sepolicy/private
BOARD_VENDOR_SEPOLICY_DIRS += $(COMMON_PATH)/sepolicy/vendor
# Verified Boot
BOARD_AVB_ENABLE := true

View File

@ -1,26 +1,4 @@
Copyright (C) 2020 The LineageOS Project
Copyright (C) 2020-2021 Paranoid Android.
Device configuration for Xiaomi Mi 9T/Redmi K20
=========================================
The Xiaomi Mi 9T/Redmi K20 (codenamed _"davinci"_) is a mid-range smartphone from Xiaomi.
It was announced in June 2019. Release date was June 2019.
## Device specifications
Basic | Spec Sheet
-------:|:-------------------------
CPU | Dual-core 2.2 GHz Kryo 470 Gold & Hexa-core 1.8 GHz Kryo 470 Silver
Chipset | Qualcomm SDM730 Snapdragon 730
GPU | Adreno 618
Memory | 6 GB RAM
Shipped Android Version | 9.0
Storage | 64/128 GB (UFS 2.0)
Battery | Non-removable Li-Po 4000 mAh
Display | 1080 x 2340 pixels, 6.39 inches (~428 ppi pixel density)
Camera | Main 48 MP f/1.8, telephoto lens, ultrawide lens, dual-LED (dual tone) flash
## Device picture
![Xiaomi Mi 9T/Redmi K20](https://i01.appmifile.com/webfile/globalimg/products/pc/redmik20/index_slider_1.png "Xiaomi Mi 9T/Redmi K20 in carbon black")
# Common device tree for Xiaomi SM6150 based devices

View File

@ -1 +0,0 @@
require version-baseband=4.3.c5-00069,20.10.20

View File

@ -1,401 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Copyright (c) 2014, 2016-2018, 2020 The Linux Foundation. All rights reserved. -->
<!-- -->
<!-- Redistribution and use in source and binary forms, with or without -->
<!-- modification, are permitted provided that the following conditions are -->
<!-- met: -->
<!-- * Redistributions of source code must retain the above copyright -->
<!-- notice, this list of conditions and the following disclaimer. -->
<!-- * Redistributions in binary form must reproduce the above -->
<!-- copyright notice, this list of conditions and the following -->
<!-- disclaimer in the documentation and/or other materials provided -->
<!-- with the distribution. -->
<!-- * Neither the name of The Linux Foundation nor the names of its -->
<!-- contributors may be used to endorse or promote products derived -->
<!-- from this software without specific prior written permission. -->
<!-- -->
<!-- THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED -->
<!-- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -->
<!-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT -->
<!-- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS -->
<!-- BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -->
<!-- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -->
<!-- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR -->
<!-- BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -->
<!-- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN -->
<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -->
<audio_platform_info>
<bit_width_configs>
<device name="SND_DEVICE_OUT_SPEAKER" bit_width="24"/>
</bit_width_configs>
<interface_names>
<device name="AUDIO_DEVICE_IN_BUILTIN_MIC" interface="TX_CDC_DMA_TX_3" codec_type="internal"/>
<device name="AUDIO_DEVICE_IN_BACK_MIC" interface="TX_CDC_DMA_TX_3" codec_type="internal"/>
</interface_names>
<pcm_ids>
<usecase name="USECASE_AUDIO_PLAYBACK_LOW_LATENCY" type="out" id="13"/>
<usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD" type="out" id="8"/>
<usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD2" type="out" id="15"/>
<usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD3" type="out" id="16"/>
<usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD4" type="out" id="28"/>
<usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD5" type="out" id="29"/>
<usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD6" type="out" id="30"/>
<usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD7" type="out" id="31"/>
<usecase name="USECASE_AUDIO_PLAYBACK_OFFLOAD8" type="out" id="32"/>
<usecase name="USECASE_VOICEMMODE1_CALL" type="in" id="2"/>
<usecase name="USECASE_VOICEMMODE1_CALL" type="out" id="2"/>
<usecase name="USECASE_VOICEMMODE2_CALL" type="in" id="19"/>
<usecase name="USECASE_VOICEMMODE2_CALL" type="out" id="19"/>
<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="35"/>
<usecase name="USECASE_AUDIO_PLAYBACK_FM" type="in" id="34"/>
<usecase name="USECASE_AUDIO_SPKR_CALIB_RX" type="out" id="37"/>
<usecase name="USECASE_AUDIO_SPKR_CALIB_TX" type="in" id="38"/>
<usecase name="USECASE_AUDIO_PLAYBACK_AFE_PROXY" type="out" id="6"/>
<usecase name="USECASE_AUDIO_RECORD_AFE_PROXY" type="in" id="7"/>
<usecase name="USECASE_AUDIO_RECORD_LOW_LATENCY" type="in" id="17" />
<usecase name="USECASE_AUDIO_PLAYBACK_ULL" type="out" id="17" />
<usecase name="USECASE_AUDIO_PLAYBACK_SILENCE" type="out" id="27" />
<usecase name="USECASE_AUDIO_PLAYBACK_MMAP" type="out" id="33" />
<usecase name="USECASE_AUDIO_RECORD_MMAP" type="in" id="33" />
<usecase name="USECASE_AUDIO_HFP_SCO" type="in" id="12" />
<usecase name="USECASE_AUDIO_HFP_SCO_WB" type="in" id="12" />
<usecase name="USECASE_AUDIO_PLAYBACK_VOIP" type="out" id="16" />
<usecase name="USECASE_AUDIO_RECORD_VOIP" type="in" id="16" />
<usecase name="USECASE_AUDIO_A2DP_ABR_FEEDBACK" type="in" id="12" />
<usecase name="USECASE_INCALL_MUSIC_UPLINK" type="out" id="27" />
<usecase name="USECASE_INCALL_REC_UPLINK" type="in" id="27" />
<usecase name="USECASE_INCALL_REC_DOWNLINK" type="in" id="27" />
<usecase name="USECASE_INCALL_REC_UPLINK_AND_DOWNLINK" type="in" id="27" />
</pcm_ids>
<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="right"/>
<param key="spkr_1_tz_name" value="wsatz.13"/>
<param key="spkr_2_tz_name" value="wsatz.14"/>
<param key="true_32_bit" value="true"/>
<param key="hifi_filter" value="false"/>
<param key="native_audio_mode" value="true"/>
<param key="hfp_pcm_dev_id" value="39"/>
<param key="input_mic_max_count" value="2"/>
</config_params>
<acdb_ids>
<device name="SND_DEVICE_OUT_SPEAKER" acdb_id="10011"/>
<device name="SND_DEVICE_OUT_SPEAKER_REVERSE" acdb_id="10011"/>
<device name="SND_DEVICE_OUT_SPEAKER_PROTECTED" acdb_id="124"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_PROTECTED" acdb_id="101"/>
<device name="SND_DEVICE_OUT_SPEAKER_PROTECTED_VBAT" acdb_id="124"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_PROTECTED_VBAT" acdb_id="101"/>
<device name="SND_DEVICE_IN_CAPTURE_VI_FEEDBACK" acdb_id="102"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_2_PROTECTED" acdb_id="150"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_2_PROTECTED_VBAT" acdb_id="150"/>
<device name="SND_DEVICE_IN_CAPTURE_VI_FEEDBACK_MONO_1" acdb_id="151"/>
<device name="SND_DEVICE_IN_CAPTURE_VI_FEEDBACK_MONO_2" acdb_id="152"/>
<device name="SND_DEVICE_OUT_SPEAKER_EXTERNAL_1" acdb_id="14"/>
<device name="SND_DEVICE_OUT_SPEAKER_EXTERNAL_2" acdb_id="14"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES_EXTERNAL_1" acdb_id="10"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES_EXTERNAL_2" acdb_id="10"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_USB_HEADSET" acdb_id="45"/>
<device name="SND_DEVICE_IN_UNPROCESSED_USB_HEADSET_MIC" acdb_id="133"/>
<device name="SND_DEVICE_IN_UNPROCESSED_MIC" acdb_id="143"/>
<device name="SND_DEVICE_IN_UNPROCESSED_STEREO_MIC" acdb_id="144"/>
<device name="SND_DEVICE_IN_UNPROCESSED_THREE_MIC" acdb_id="145"/>
<device name="SND_DEVICE_IN_UNPROCESSED_QUAD_MIC" acdb_id="146"/>
<device name="SND_DEVICE_IN_UNPROCESSED_HEADSET_MIC" acdb_id="147"/>
<device name="SND_DEVICE_IN_USB_HEADSET_HEX_MIC" acdb_id="162"/>
<device name="SND_DEVICE_IN_USB_HEADSET_HEX_MIC_AEC" acdb_id="162"/>
<device name="SND_DEVICE_IN_UNPROCESSED_USB_HEADSET_HEX_MIC" acdb_id="162"/>
<device name="SND_DEVICE_IN_VOCE_RECOG_USB_HEADSET_HEX_MIC" acdb_id="162"/>
<device name="SND_DEVICE_IN_HANDSET_GENERIC_QMIC" acdb_id="157"/>
<device name="SND_DEVICE_IN_HEADSET_MIC" acdb_id="10008"/>
<device name="SND_DEVICE_IN_USB_HEADSET_MIC" acdb_id="10009"/>
<device name="SND_DEVICE_OUT_HEADPHONES" acdb_id="10012"/>
<device name="SND_DEVICE_OUT_HEADPHONES_HIFI_FILTER" acdb_id="10026"/>
<device name="SND_DEVICE_OUT_HEADPHONES_44_1" acdb_id="10012"/>
<device name="SND_DEVICE_OUT_BT_A2DP" acdb_id="10012"/>
<device name="SND_DEVICE_OUT_USB_HEADSET" acdb_id="10012"/>
<device name="SND_DEVICE_OUT_USB_HEADPHONES" acdb_id="10012"/>
</acdb_ids>
<backend_names>
<device name="SND_DEVICE_OUT_HEADPHONES" backend="headphones" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_HEADPHONES_HIFI_FILTER" backend="headphones" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_HEADPHONES_44_1" backend="headphones-44.1" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_BT_SCO_WB" backend="bt-sco-wb" interface="SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_BT_SCO" backend="bt-sco" interface="SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_BT_A2DP" backend="bt-a2dp" interface="SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_LINE" backend="headphones" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_ANC_HEADSET" backend="headphones" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES" backend="speaker-and-headphones" interface="PRI_MI2S_RX-and-RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_SAFE_AND_HEADPHONES" backend="speaker-safe-and-headphones" interface="WSA_CDC_DMA_RX_0-and-RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES_HIFI_FILTER" backend="speaker-and-headphones" interface="PRI_MI2S_RX-and-RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_LINE" backend="speaker-and-headphones" interface="PRI_MI2S_RX-and-RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_ANC_HEADSET" backend="speaker-and-headphones" interface="PRI_MI2S_RX-and-RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_HEADPHONES" backend="headphones" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_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_VCO_HEADPHONES" 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_SPEAKER" interface="PRI_MI2S_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_EXTERNAL_1" interface="WSA_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_EXTERNAL_2" interface="WSA_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_REVERSE" interface="PRI_MI2S_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_VBAT" interface="WSA_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES_EXTERNAL_1" interface="WSA_CDC_DMA_RX_0-and-RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_HEADPHONES_EXTERNAL_2" interface="WSA_CDC_DMA_RX_0-and-RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_HANDSET" 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="PRI_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_VBAT" interface="WSA_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_2" interface="PRI_MI2S_RX"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_2_VBAT" interface="WSA_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_HDMI" interface="WSA_CDC_DMA_RX_0-and-HDMI"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_DISPLAY_PORT" interface="WSA_CDC_DMA_RX_0-and-DISPLAY_PORT"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_BT_A2DP" interface="WSA_CDC_DMA_RX_0-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_VOICE_TTY_HCO_HANDSET" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_ANC_FB_HEADSET" backend="headphones" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_ANC_FB_HEADSET" backend="headphones" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_ANC_HANDSET" interface="RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_PROTECTED" interface="WSA_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_PROTECTED" interface="WSA_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_2_PROTECTED" interface="WSA_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_PROTECTED_VBAT" interface="WSA_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_PROTECTED_VBAT" interface="WSA_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_2_PROTECTED_VBAT" interface="WSA_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_WSA" interface="WSA_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_WSA" interface="WSA_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_2_WSA" interface="WSA_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_IN_HANDSET_MIC" 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" 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"/>
<device name="SND_DEVICE_IN_HANDSET_DMIC_NS" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HANDSET_DMIC_AEC_NS" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_MIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_MIC_AEC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_SPEAKER_MIC_NS" 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_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_HEADSET_MIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HEADSET_MIC_FLUENCE" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_VOICE_SPEAKER_MIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_VOICE_HEADSET_MIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_HDMI_MIC" interface="HDMI"/>
<device name="SND_DEVICE_IN_BT_SCO_MIC" interface="SLIMBUS_7_TX"/>
<device name="SND_DEVICE_IN_BT_SCO_MIC_NREC" interface="SLIMBUS_7_TX"/>
<device name="SND_DEVICE_IN_BT_SCO_MIC_WB" interface="SLIMBUS_7_TX"/>
<device name="SND_DEVICE_IN_BT_SCO_MIC_WB_NREC" interface="SLIMBUS_7_TX"/>
<device name="SND_DEVICE_IN_CAMCORDER_MIC" 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_SPEAKER_DMIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_VOICE_SPEAKER_QMIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_VOICE_TTY_FULL_HEADSET_MIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_VOICE_TTY_VCO_HANDSET_MIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_VOICE_TTY_HCO_HEADSET_MIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_VOICE_REC_MIC" interface="TX_CDC_DMA_TX_3"/>
<device name="SND_DEVICE_IN_VOICE_REC_MIC_NS" interface="TX_CDC_DMA_TX_3"/>
<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="WSA_CDC_DMA_TX_0"/>
<device name="SND_DEVICE_IN_CAPTURE_VI_FEEDBACK_MONO_1" interface="WSA_CDC_DMA_TX_0"/>
<device name="SND_DEVICE_IN_CAPTURE_VI_FEEDBACK_MONO_2" interface="WSA_CDC_DMA_TX_0"/>
<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_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="WSA_CDC_DMA_RX_0-and-RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_VOICE_SPEAKER_AND_VOICE_ANC_HEADSET" backend="speaker-and-headphones" interface="WSA_CDC_DMA_RX_0-and-RX_CDC_DMA_RX_0"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_BT_SCO" backend="speaker-and-bt-sco" interface="PRI_MI2S_RX-and-SLIMBUS_7_RX"/>
<device name="SND_DEVICE_OUT_SPEAKER_AND_BT_SCO_WB" backend="speaker-and-bt-sco-wb" interface="PRI_MI2S_RX-and-SLIMBUS_7_RX"/>
</backend_names>
<!-- below values are for ref purpose to OEM, doesn't contain actual hardware info on MTP -->
<microphone_characteristics>
<microphone valid_mask="31" device_id="builtin_mic_1" type="AUDIO_DEVICE_IN_BUILTIN_MIC" address="bottom" location="AUDIO_MICROPHONE_LOCATION_MAINBODY"
group="0" index_in_the_group="0" directionality="AUDIO_MICROPHONE_DIRECTIONALITY_OMNI" num_frequency_responses="93"
frequencies="100.00 106.00 112.00 118.00 125.00 132.00 140.00 150.00 160.00 170.00 180.00 190.00 200.00 212.00 224.00 236.00 250.00 265.00 280.00 300.00 315.00 335.00 355.00 375.00 400.00 425.00 450.00 475.00 500.00 530.00 560.00 600.00 630.00 670.00 710.00 750.00 800.00 850.00 900.00 950.00 1000.00 1060.00 1120.00 1180.00 1250.00 1320.00 1400.00 1500.00 1600.00 1700.00 1800.00 1900.00 2000.00 2120.00 2240.00 2360.00 2500.00 2650.00 2800.00 3000.00 3150.00 3350.00 3550.00 3750.00 4000.00 4250.00 4500.00 4750.00 5000.00 5300.00 5600.00 6000.00 6300.00 6700.00 7100.00 7500.00 8000.00 8500.00 9000.00 9500.00 10000.00 10600.00 11200.00 11800.00 12500.00 13200.00 14000.00 15000.00 16000.00 17000.00 18000.00 19000.00 20000.00"
responses="-0.78 -0.71 -0.64 -0.60 -0.55 -0.50 -0.47 -0.42 -0.39 -0.36 -0.34 -0.33 -0.32 -0.29 -0.28 -0.28 -0.27 -0.25 -0.25 -0.24 -0.23 -0.23 -0.22 -0.22 -0.19 -0.17 -0.15 -0.15 -0.14 -0.14 -0.12 -0.11 -0.10 -0.10 -0.08 -0.07 -0.07 -0.04 -0.03 -0.01 0.00 0.04 0.06 0.07 0.08 0.13 0.09 0.14 0.19 0.23 0.28 0.29 0.31 0.37 0.88 0.86 0.77 0.78 0.84 0.86 1.05 1.12 1.18 1.25 1.43 1.66 1.83 2.02 2.23 2.59 2.84 3.35 4.01 6.82 6.62 6.42 7.30 8.23 7.54 12.68 13.76 18.69 19.68 20.90 23.70 25.10 21.65 16.18 18.84 25.44 23.48 23.22 24.89"
sensitivity="-37.0" max_spl="132.5" min_spl="28.5" orientation="0.0 0.0 1.0" geometric_location="0.0269 0.0058 0.0079" />
<microphone valid_mask="31" device_id="builtin_mic_2" type="AUDIO_DEVICE_IN_BACK_MIC" address="back" location="AUDIO_MICROPHONE_LOCATION_MAINBODY"
group="0" index_in_the_group="1" directionality="AUDIO_MICROPHONE_DIRECTIONALITY_OMNI" num_frequency_responses="92"
frequencies="106.00 112.00 118.00 125.00 132.00 140.00 150.00 160.00 170.00 180.00 190.00 200.00 212.00 224.00 236.00 250.00 265.00 280.00 300.00 315.00 335.00 355.00 375.00 400.00 425.00 450.00 475.00 500.00 530.00 560.00 600.00 630.00 670.00 710.00 750.00 800.00 850.00 900.00 950.00 1000.00 1060.00 1120.00 1180.00 1250.00 1320.00 1400.00 1500.00 1600.00 1700.00 1800.00 1900.00 2000.00 2120.00 2240.00 2360.00 2500.00 2650.00 2800.00 3000.00 3150.00 3350.00 3550.00 3750.00 4000.00 4250.00 4500.00 4750.00 5000.00 5300.00 5600.00 6000.00 6300.00 6700.00 7100.00 7500.00 8000.00 8500.00 9000.00 9500.00 10000.00 10600.00 11200.00 11800.00 12500.00 13200.00 14000.00 15000.00 16000.00 17000.00 18000.00 19000.00 20000.00"
responses="-0.75 -0.74 -0.69 -0.65 -0.62 -0.61 -0.56 -0.53 -0.50 -0.47 -0.43 -0.40 -0.37 -0.36 -0.33 -0.30 -0.28 -0.25 -0.24 -0.24 -0.24 -0.25 -0.24 -0.12 -0.10 -0.08 -0.09 -0.07 -0.07 -0.06 -0.06 -0.06 -0.05 -0.04 -0.05 -0.04 -0.01 0.02 0.02 0.00 0.02 0.03 0.07 0.10 0.10 0.13 0.01 0.01 0.10 0.11 0.19 0.24 0.38 0.46 0.26 0.27 0.43 0.76 0.75 1.09 1.09 0.94 1.06 1.21 1.47 1.45 1.36 2.07 2.85 2.90 3.85 4.65 5.84 5.46 6.15 7.50 8.30 10.62 12.70 16.65 20.95 25.41 26.32 20.20 16.60 11.24 7.85 7.62 20.19 7.32 2.87 5.18"
sensitivity="-37.0" max_spl="132.5" min_spl="28.5" orientation="0.0 1.0 0.0" geometric_location="0.0546 0.1456 0.00415" />
<microphone valid_mask="31" device_id="builtin_mic_3" type="AUDIO_DEVICE_IN_BUILTIN_MIC" address="top" location="AUDIO_MICROPHONE_LOCATION_MAINBODY"
group="0" index_in_the_group="2" directionality="AUDIO_MICROPHONE_DIRECTIONALITY_OMNI" num_frequency_responses="92"
frequencies="100.00 106.00 112.00 118.00 125.00 132.00 140.00 150.00 160.00 170.00 180.00 190.00 200.00 212.00 224.00 236.00 250.00 265.00 280.00 300.00 315.00 335.00 355.00 375.00 400.00 425.00 450.00 475.00 500.00 530.00 560.00 600.00 630.00 670.00 710.00 750.00 800.00 850.00 900.00 950.00 1000.00 1060.00 1120.00 1180.00 1250.00 1320.00 1400.00 1500.00 1600.00 1700.00 1800.00 1900.00 2000.00 2120.00 2240.00 2360.00 2500.00 2650.00 2800.00 3000.00 3150.00 3350.00 3550.00 3750.00 4000.00 4250.00 4500.00 4750.00 5000.00 5300.00 5600.00 6000.00 6300.00 6700.00 7100.00 7500.00 8000.00 8500.00 9000.00 9500.00 10000.00 10600.00 11200.00 11800.00 12500.00 13200.00 14000.00 15000.00 16000.00 17000.00 18000.00 19000.00"
responses="-9.24 -9.31 -9.39 -9.45 -9.46 -9.47 -9.50 -9.52 -9.51 -9.52 -9.51 -9.50 -9.49 -9.47 -9.48 -9.49 -9.48 -9.50 -9.51 -9.53 -9.55 -9.59 -9.63 -9.67 -9.58 -9.57 -9.65 -9.68 -9.71 -9.75 -9.79 -9.84 -9.87 -9.87 -9.90 -9.90 -9.91 -9.97 -10.01 -10.05 -9.85 -9.93 -9.94 -9.98 -10.04 -10.12 -10.28 -10.25 -10.01 -9.86 -9.81 -9.82 -9.61 -9.46 -8.27 -8.42 -8.98 -8.99 -8.82 -9.21 -8.92 -8.97 -9.30 -9.44 -9.52 -9.28 -9.09 -8.81 -7.02 -5.72 -5.30 -7.26 -8.39 -12.28 -8.23 -6.99 -5.52 -4.87 -3.82 -6.09 0.00 -2.15 -0.26 1.48 5.22 10.92 6.41 9.55 12.96 3.35 22.00 19.75"
sensitivity="-37.0" max_spl="132.5" min_spl="28.5" orientation="0.0 0.0 1.0" geometric_location="0.0274 0.14065 0.0079" />
</microphone_characteristics>
<snd_devices>
<input_snd_device>
<input_snd_device_mic_mapping>
<snd_dev in_snd_device="SND_DEVICE_IN_CAMCORDER_MIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_VOICE_REC_MIC_AEC_NS">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_VOICE_REC_MIC_AEC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_VOICE_REC_MIC_NS">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_VOICE_REC_MIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_MIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_VOICE_DMIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_VOICE_DMIC_TMUS">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_VOICE_SPEAKER_DMIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_DMIC_AEC_NS">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_DMIC_AEC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_DMIC_NS">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_DMIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_SPEAKER_DMIC_AEC_NS">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_SPEAKER_DMIC_AEC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_SPEAKER_DMIC_NS">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_SPEAKER_MIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_UNPROCESSED_MIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_UNPROCESSED_STEREO_MIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_UNPROCESSED_THREE_MIC">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_DIRECT"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_HANDSET_DMIC_STEREO">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_UNUSED AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
<snd_dev in_snd_device="SND_DEVICE_IN_SPEAKER_DMIC_STEREO">
<mic_info mic_device_id="builtin_mic_1"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_2"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
<mic_info mic_device_id="builtin_mic_3"
channel_mapping="AUDIO_MICROPHONE_CHANNEL_MAPPING_PROCESSED"/>
</snd_dev>
</input_snd_device_mic_mapping>
</input_snd_device>
</snd_devices>
</audio_platform_info>

File diff suppressed because it is too large Load Diff

View File

@ -1,230 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--- Copyright (c) 2014-2018, The Linux Foundation. All rights reserved. -->
<!--- -->
<!--- Redistribution and use in source and binary forms, with or without -->
<!--- modification, are permitted provided that the following conditions are -->
<!--- met: -->
<!--- * Redistributions of source code must retain the above copyright -->
<!--- notice, this list of conditions and the following disclaimer. -->
<!--- * Redistributions in binary form must reproduce the above -->
<!--- copyright notice, this list of conditions and the following -->
<!--- disclaimer in the documentation and/or other materials provided -->
<!--- with the distribution. -->
<!--- * Neither the name of The Linux Foundation nor the names of its -->
<!--- contributors may be used to endorse or promote products derived -->
<!--- from this software without specific prior written permission. -->
<!--- -->
<!--- THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED -->
<!--- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -->
<!--- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT -->
<!--- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS -->
<!--- BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -->
<!--- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -->
<!--- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR -->
<!--- BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -->
<!--- WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE -->
<!--- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN -->
<!--- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -->
<mixer>
<!-- These are the initial mixer settings -->
<ctl name="LSM1 Mixer TX_CDC_DMA_TX_3" value="0" />
<ctl name="LSM2 Mixer TX_CDC_DMA_TX_3" value="0" />
<ctl name="LSM3 Mixer TX_CDC_DMA_TX_3" value="0" />
<ctl name="LSM4 Mixer TX_CDC_DMA_TX_3" value="0" />
<ctl name="LSM5 Mixer TX_CDC_DMA_TX_3" value="0" />
<ctl name="LSM6 Mixer TX_CDC_DMA_TX_3" value="0" />
<ctl name="LSM7 Mixer TX_CDC_DMA_TX_3" value="0" />
<ctl name="LSM8 Mixer TX_CDC_DMA_TX_3" value="0" />
<ctl name="LSM1 Port" value="None" />
<ctl name="LSM2 Port" value="None" />
<ctl name="LSM3 Port" value="None" />
<ctl name="LSM4 Port" value="None" />
<ctl name="LSM5 Port" value="None" />
<ctl name="LSM6 Port" value="None" />
<ctl name="LSM7 Port" value="None" />
<ctl name="LSM8 Port" value="None" />
<ctl name="TX_CDC_DMA_TX_3 LSM Function" value="None" />
<ctl name="TX_CDC_DMA_TX_3 Channels" value="One" />
<ctl name="TX_AIF1_CAP Mixer DEC0" value="0" />
<ctl name="TX_AIF1_CAP Mixer DEC1" value="0" />
<ctl name="TX_AIF1_CAP Mixer DEC2" value="0" />
<ctl name="TX_AIF1_CAP Mixer DEC3" value="0" />
<ctl name="TX DEC0 MUX" value="MSM_DMIC" />
<ctl name="TX DMIC MUX0" value="ZERO" />
<ctl name="TX DEC1 MUX" value="MSM_DMIC" />
<ctl name="TX DMIC MUX1" value="ZERO" />
<ctl name="TX DEC2 MUX" value="MSM_DMIC" />
<ctl name="TX DMIC MUX2" value="ZERO" />
<ctl name="TX DEC3 MUX" value="MSM_DMIC" />
<ctl name="TX DMIC MUX3" value="ZERO" />
<ctl name="AUDIO_REF_EC_UL1 MUX" value="None"/>
<ctl name="EC Reference Channels" value="One"/>
<ctl name="EC Reference Bit Format" value="0"/>
<ctl name="EC Reference SampleRate" value="0"/>
<ctl name="TX_DEC0 Volume" value="84" />
<ctl name="TX_DEC1 Volume" value="84" />
<ctl name="TX_DEC2 Volume" value="84" />
<ctl name="TX_DEC3 Volume" value="84" />
<path name="listen-voice-wakeup-1">
<ctl name="TX_CDC_DMA_TX_3 LSM Function" value="SWAUDIO" />
<ctl name="LSM1 Port" value="TX_CDC_DMA_TX_3" />
<ctl name="LSM1 Mixer TX_CDC_DMA_TX_3" value="1" />
</path>
<path name="listen-voice-wakeup-2">
<ctl name="TX_CDC_DMA_TX_3 LSM Function" value="SWAUDIO" />
<ctl name="LSM2 Port" value="TX_CDC_DMA_TX_3" />
<ctl name="LSM2 Mixer TX_CDC_DMA_TX_3" value="1" />
</path>
<path name="listen-voice-wakeup-3">
<ctl name="TX_CDC_DMA_TX_3 LSM Function" value="SWAUDIO" />
<ctl name="LSM3 Port" value="TX_CDC_DMA_TX_3" />
<ctl name="LSM3 Mixer TX_CDC_DMA_TX_3" value="1" />
</path>
<path name="listen-voice-wakeup-4">
<ctl name="TX_CDC_DMA_TX_3 LSM Function" value="SWAUDIO" />
<ctl name="LSM4 Port" value="TX_CDC_DMA_TX_3" />
<ctl name="LSM4 Mixer TX_CDC_DMA_TX_3" value="1" />
</path>
<path name="listen-voice-wakeup-5">
<ctl name="TX_CDC_DMA_TX_3 LSM Function" value="SWAUDIO" />
<ctl name="LSM5 Port" value="TX_CDC_DMA_TX_3" />
<ctl name="LSM5 Mixer TX_CDC_DMA_TX_3" value="1" />
</path>
<path name="listen-voice-wakeup-6">
<ctl name="TX_CDC_DMA_TX_3 LSM Function" value="SWAUDIO" />
<ctl name="LSM6 Port" value="TX_CDC_DMA_TX_3" />
<ctl name="LSM6 Mixer TX_CDC_DMA_TX_3" value="1" />
</path>
<path name="listen-voice-wakeup-7">
<ctl name="TX_CDC_DMA_TX_3 LSM Function" value="SWAUDIO" />
<ctl name="LSM7 Port" value="TX_CDC_DMA_TX_3" />
<ctl name="LSM7 Mixer TX_CDC_DMA_TX_3" value="1" />
</path>
<path name="listen-voice-wakeup-8">
<ctl name="TX_CDC_DMA_TX_3 LSM Function" value="SWAUDIO" />
<ctl name="LSM8 Port" value="TX_CDC_DMA_TX_3" />
<ctl name="LSM8 Mixer TX_CDC_DMA_TX_3" value="1" />
</path>
<path name="listen-voice-wakeup-1 preproc">
<ctl name="TX_CDC_DMA_TX_3 LSM Function" value="SWAUDIO" />
<ctl name="LSM1 Port" value="ADM_LSM_TX" />
<ctl name="LSM1 Mixer TX_CDC_DMA_TX_3" value="1" />
</path>
<path name="listen-voice-wakeup-2 preproc">
<ctl name="TX_CDC_DMA_TX_3 LSM Function" value="SWAUDIO" />
<ctl name="LSM2 Port" value="ADM_LSM_TX" />
<ctl name="LSM2 Mixer TX_CDC_DMA_TX_3" value="1" />
</path>
<path name="listen-voice-wakeup-3 preproc">
<ctl name="TX_CDC_DMA_TX_3 LSM Function" value="SWAUDIO" />
<ctl name="LSM3 Port" value="ADM_LSM_TX" />
<ctl name="LSM3 Mixer TX_CDC_DMA_TX_3" value="1" />
</path>
<path name="listen-voice-wakeup-4 preproc">
<ctl name="TX_CDC_DMA_TX_3 LSM Function" value="SWAUDIO" />
<ctl name="LSM4 Port" value="ADM_LSM_TX" />
<ctl name="LSM4 Mixer TX_CDC_DMA_TX_3" value="1" />
</path>
<path name="listen-voice-wakeup-5 preproc">
<ctl name="TX_CDC_DMA_TX_3 LSM Function" value="SWAUDIO" />
<ctl name="LSM5 Port" value="ADM_LSM_TX" />
<ctl name="LSM5 Mixer TX_CDC_DMA_TX_3" value="1" />
</path>
<path name="listen-voice-wakeup-6 preproc">
<ctl name="TX_CDC_DMA_TX_3 LSM Function" value="SWAUDIO" />
<ctl name="LSM6 Port" value="ADM_LSM_TX" />
<ctl name="LSM6 Mixer TX_CDC_DMA_TX_3" value="1" />
</path>
<path name="listen-voice-wakeup-7 preproc">
<ctl name="TX_CDC_DMA_TX_3 LSM Function" value="SWAUDIO" />
<ctl name="LSM7 Port" value="ADM_LSM_TX" />
<ctl name="LSM7 Mixer TX_CDC_DMA_TX_3" value="1" />
</path>
<path name="listen-voice-wakeup-8 preproc">
<ctl name="TX_CDC_DMA_TX_3 LSM Function" value="SWAUDIO" />
<ctl name="LSM8 Port" value="ADM_LSM_TX" />
<ctl name="LSM8 Mixer TX_CDC_DMA_TX_3" value="1" />
</path>
<path name="listen-ape-handset-mic">
<ctl name="TX_CDC_DMA_TX_3 Channels" value="One" />
<ctl name="TX_AIF1_CAP Mixer DEC0" value="1" />
<ctl name="TX_DEC0 Volume" value="102" />
<ctl name="TX DMIC MUX0" value="DMIC2" />
</path>
<path name="listen-ape-handset-mic-preproc">
<path name="listen-ape-handset-mic"/>
</path>
<path name="listen-ape-handset-dmic">
<ctl name="TX_CDC_DMA_TX_3 Channels" value="Two" />
<ctl name="TX_AIF1_CAP Mixer DEC0" value="1" />
<ctl name="TX_DEC0 Volume" value="102" />
<ctl name="TX_DEC1 Volume" value="102" />
<ctl name="TX DMIC MUX0" value="DMIC2" />
<ctl name="TX_AIF1_CAP Mixer DEC1" value="1" />
<ctl name="TX DMIC MUX1" value="DMIC3" />
</path>
<path name="listen-ape-handset-tmic">
<ctl name="TX_CDC_DMA_TX_3 Channels" value="Three" />
<ctl name="TX_AIF1_CAP Mixer DEC0" value="1" />
<ctl name="TX_DEC0 Volume" value="102" />
<ctl name="TX_DEC1 Volume" value="102" />
<ctl name="TX_DEC2 Volume" value="102" />
<ctl name="TX DMIC MUX0" value="DMIC2" />
<ctl name="TX_AIF1_CAP Mixer DEC1" value="1" />
<ctl name="TX DMIC MUX1" value="DMIC0" />
<ctl name="TX_AIF1_CAP Mixer DEC2" value="1" />
<ctl name="TX DMIC MUX2" value="DMIC3" />
</path>
<path name="listen-ape-handset-qmic">
<ctl name="TX_CDC_DMA_TX_3 Channels" value="Four" />
<ctl name="TX_AIF1_CAP Mixer DEC0" value="1" />
<ctl name="TX_DEC0 Volume" value="102" />
<ctl name="TX_DEC1 Volume" value="102" />
<ctl name="TX_DEC2 Volume" value="102" />
<ctl name="TX_DEC3 Volume" value="102" />
<ctl name="TX DMIC MUX0" value="DMIC2" />
<ctl name="TX_AIF1_CAP Mixer DEC1" value="1" />
<ctl name="TX DMIC MUX1" value="DMIC0" />
<ctl name="TX_AIF1_CAP Mixer DEC2" value="1" />
<ctl name="TX DMIC MUX2" value="DMIC3" />
<ctl name="TX_AIF1_CAP Mixer DEC3" value="1" />
<ctl name="TX DMIC MUX3" value="DMIC1" />
</path>
<path name="echo-reference">
<ctl name="AUDIO_REF_EC_UL1 MUX" value="WSA_CDC_DMA_RX_0"/>
<ctl name="EC Reference Channels" value="Two"/>
<ctl name="EC Reference Bit Format" value="S16_LE"/>
<ctl name="EC Reference SampleRate" value="48000"/>
</path>
<path name="echo-reference a2dp">
<ctl name="AUDIO_REF_EC_UL1 MUX" value="SLIM_7_RX"/>
<ctl name="EC Reference Channels" value="Two"/>
<ctl name="EC Reference Bit Format" value="S16_LE"/>
<ctl name="EC Reference SampleRate" value="48000"/>
</path>
</mixer>

View File

@ -1,12 +0,0 @@
<manifest version="1.0" type="device">
<hal format="hidl">
<name>android.hardware.nfc</name>
<transport>hwbinder</transport>
<version>1.2</version>
<interface>
<name>INfc</name>
<instance>default</instance>
</interface>
<fqname>@1.2::INfc/default</fqname>
</hal>
</manifest>

View File

@ -1,4 +1,4 @@
<manifest version="1.0" type="device" target-level="3">
<manifest version="1.0" type="device">
<hal format="hidl">
<name>android.hardware.audio</name>
<transport>hwbinder</transport>
@ -522,24 +522,4 @@
</interface>
<fqname>@1.0::IXiaomiFingerprint/default</fqname>
</hal>
<hal format="hidl">
<name>vendor.xiaomi.hardware.motor</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IMotor</name>
<instance>default</instance>
</interface>
<fqname>@1.0::IMotor/default</fqname>
</hal>
<hal format="hidl">
<name>vendor.xiaomi.hardware.touchfeature</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>ITouchFeature</name>
<instance>default</instance>
</interface>
<fqname>@1.0::ITouchFeature/default</fqname>
</hal>
</manifest>

View File

@ -1,126 +0,0 @@
########################## Start of libnfc-nci.conf ###########################
###############################################################################
# Application options
NFC_DEBUG_ENABLED=1
###############################################################################
# performance measurement
# Change this setting to control how often USERIAL log the performance (throughput)
# data on read/write/poll
# defailt is to log performance dara for every 100 read or write
#REPORT_PERFORMANCE_MEASURE=100
###############################################################################
# File used for NFA storage
NFA_STORAGE="/data/nfc"
###############################################################################
# Configure the default NfcA/IsoDep techology and protocol route. Can be
# either a secure element (e.g. 0xF4) or the host (0x00)
#DEFAULT_ISODEP_ROUTE=0x00
###############################################################################
## Default poll duration (in ms)
## The defualt is 500ms if not set
NFA_DM_DISC_DURATION_POLL=500
###############################################################################
# Force UICC to only listen to the following technology(s).
# The bits are defined as tNFA_TECHNOLOGY_MASK in nfa_api.h.
# Default is NFA_TECHNOLOGY_MASK_A | NFA_TECHNOLOGY_MASK_B | NFA_TECHNOLOGY_MASK_F
UICC_LISTEN_TECH_MASK=0x07
###############################################################################
# Force HOST listen feature enable or disable.
# 0: Disable
# 1: Enable
HOST_LISTEN_ENABLE=0x01
###############################################################################
# When screen is turned off, specify the desired power state of the controller.
# 0: power-off-sleep state; DEFAULT
# 1: full-power state
# 2: screen-off card-emulation (CE4/CE3/CE1 modes are used)
SCREEN_OFF_POWER_STATE=1
###############################################################################
# Force tag polling for the following technology(s).
# The bits are defined as tNFA_TECHNOLOGY_MASK in nfa_api.h.
# Default is NFA_TECHNOLOGY_MASK_A | NFA_TECHNOLOGY_MASK_B |
# NFA_TECHNOLOGY_MASK_F | NFA_TECHNOLOGY_MASK_ISO15693 |
# NFA_TECHNOLOGY_MASK_B_PRIME | NFA_TECHNOLOGY_MASK_KOVIO |
# NFA_TECHNOLOGY_MASK_A_ACTIVE | NFA_TECHNOLOGY_MASK_F_ACTIVE.
#
# Notable bits:
# NFA_TECHNOLOGY_MASK_A 0x01 /* NFC Technology A */
# NFA_TECHNOLOGY_MASK_B 0x02 /* NFC Technology B */
# NFA_TECHNOLOGY_MASK_F 0x04 /* NFC Technology F */
# NFA_TECHNOLOGY_MASK_ISO15693 0x08 /* Proprietary Technology */
# NFA_TECHNOLOGY_MASK_KOVIO 0x20 /* Proprietary Technology */
# NFA_TECHNOLOGY_MASK_ACTIVE 0x40 /* NFC Technology active mode */
POLLING_TECH_MASK=0x4F
###############################################################################
# Force P2P to only listen for the following technology(s).
# The bits are defined as tNFA_TECHNOLOGY_MASK in nfa_api.h.
# Default is NFA_TECHNOLOGY_MASK_A | NFA_TECHNOLOGY_MASK_F |
# NFA_TECHNOLOGY_MASK_A_ACTIVE | NFA_TECHNOLOGY_MASK_F_ACTIVE
#
# Notable bits:
# NFA_TECHNOLOGY_MASK_A 0x01 /* NFC Technology A */
# NFA_TECHNOLOGY_MASK_F 0x04 /* NFC Technology F */
# NFA_TECHNOLOGY_MASK_A_ACTIVE 0x40 /* NFC Technology A active mode */
# NFA_TECHNOLOGY_MASK_F_ACTIVE 0x80 /* NFC Technology F active mode */
P2P_LISTEN_TECH_MASK=0x45
###############################################################################
PRESERVE_STORAGE=0x01
###############################################################################
# Override the stack default for NFA_EE_MAX_EE_SUPPORTED set in nfc_target.h.
# The value is set to 3 by default as it assumes we will discover 0xF2,
# 0xF3, and 0xF4. If a platform will exclude and SE, this value can be reduced
# so that the stack will not wait any longer than necessary.
# Maximum EE supported number
# NXP PN547C2 0x02
# NXP PN65T 0x03
# NXP PN548C2 0x02
# NXP PN66T 0x03
NFA_MAX_EE_SUPPORTED=0x03
##############################################################################
# Deactivate notification wait time out in seconds used in ETSI Reader mode
# 0 - Infinite wait
NFA_DM_DISC_NTF_TIMEOUT=100
###############################################################################
# AID_MATCHING constants
# AID_MATCHING_EXACT_ONLY 0x00
# AID_MATCHING_EXACT_OR_PREFIX 0x01
# AID_MATCHING_PREFIX_ONLY 0x02
#AID_MATCHING_EXACT_OR_SUBSET_OR_PREFIX 0x03
AID_MATCHING_MODE=0x03
###############################################################################
# Preferred Secure Element for Technology based routing
# eSE 0x01
# UICC 0x02
NXP_PRFD_TECH_SE=0x01
################################################################################
#Set bit to 1 , black list is enabled
#Set bit to 0, to disable balcklist
NFA_AID_BLOCK_ROUTE=0x01
################################################################################
# Maximum WTX requests entertained by MW
NXP_WM_MAX_WTX_COUNT=50
################################################################################
#Set the default Felica T3T System Code :
#This settings will be used when application does not set this parameter
DEFAULT_SYS_CODE={FE:FF}
#########################################################################
#Set NCI credit notification timeout value
NXP_NCI_CREDIT_NTF_TIMEOUT=2

View File

@ -1,427 +0,0 @@
#################### This file is used by NXP NFC NCI HAL #####################
###############################################################################
# Application options
# Logging Levels
# NXPLOG_DEFAULT_LOGLEVEL 0x01
# ANDROID_LOG_DEBUG 0x03
# ANDROID_LOG_WARN 0x02
# ANDROID_LOG_ERROR 0x01
# ANDROID_LOG_SILENT 0x00
NXPLOG_EXTNS_LOGLEVEL=0x03
NXPLOG_NCIHAL_LOGLEVEL=0x03
NXPLOG_NCIX_LOGLEVEL=0x03
NXPLOG_NCIR_LOGLEVEL=0x03
NXPLOG_FWDNLD_LOGLEVEL=0x03
NXPLOG_TML_LOGLEVEL=0x03
###############################################################################
# Nfc Device Node name
NXP_NFC_DEV_NODE="/dev/nq-nci"
#################################################################################
#VEN Toggle Config
#Disable = 0x00
#Enable = 0x01
ENABLE_VEN_TOGGLE=0x00
###############################################################################
# Extension for Mifare reader enable
MIFARE_READER_ENABLE=0x01
###############################################################################
# File name for Firmware
NXP_FW_NAME="libsn100u_fw.so"
###############################################################################
# System clock source selection configuration
#define CLK_SRC_XTAL 1
#define CLK_SRC_PLL 2
NXP_SYS_CLK_SRC_SEL=0x02
###############################################################################
# System clock frequency selection configuration
#define CLK_FREQ_13MHZ 1
#define CLK_FREQ_19_2MHZ 2
#define CLK_FREQ_24MHZ 3
#define CLK_FREQ_26MHZ 4
#define CLK_FREQ_38_4MHZ 5
#define CLK_FREQ_52MHZ 6
NXP_SYS_CLK_FREQ_SEL=0x02
###############################################################################
# The timeout value to be used for clock request acknowledgment
# min value = 0x01 to max = 0x06
#NXP_SYS_CLOCK_TO_CFG=0x06
###############################################################################
# The delay to try to start PLL/XTAL when using sys clock 256/fc units = ~18.8 us
# min value = 0x01 to max = 0x1F
NXP_CLOCK_REQ_DELAY=0x1F
###############################################################################
# NXP proprietary settings
NXP_ACT_PROP_EXTN={2F, 02, 00}
###############################################################################
# NFC forum profile settings
NXP_NFC_PROFILE_EXTN={20, 02, 05, 01, A0, 44, 01, 00}
###############################################################################
# NXP TVDD configurations settings
# Allow NFCC to configure External TVDD, two configurations (1 and 2) supported,
# out of them only one can be configured at a time.
#NXP_EXT_TVDD_CFG=0x02
###############################################################################
#config1:SLALM, 3.3V for both RM and CM
#NXP_EXT_TVDD_CFG_1={20, 02, 0F, 01, A0, 0E, 0B, 31, 01, 01, 31, 00, 00, 00, 01, 00, D0, 0C}
###############################################################################
#config2: use DCDC in CE, use Tx_Pwr_Req, set CFG2 mode, SLALM,
#monitoring 5V from DCDC, 3.3V for both RM and CM, DCDCWaitTime=4.2ms
#NXP_EXT_TVDD_CFG_2={20, 02, 0F, 01, A0, 0E, 0B, 11, 01, C2, B2, 00, B2, 1E, 1F, 00, D0, 0C}
###############################################################################
# Core configuration rf field filter settings to enable set to 01 to disable set
# to 00 last bit
#NXP_CORE_RF_FIELD={ 20, 02, 05, 01, A0, 62, 01, 00 }
###############################################################################
# To enable i2c fragmentation set i2c fragmentation enable 0x01 to disable set
# to 0x00
#NXP_I2C_FRAGMENTATION_ENABLED=0x00
###############################################################################
#set autonomous mode
# disable autonomous 0x00
# enable autonomous 0x01
NXP_AUTONOMOUS_ENABLE=0x00
###############################################################################
#Enable SWP full power mode when phone is power off
#NXP_SWP_FULL_PWR_ON=0x00
################################################################################
#This is used to configure UICC2 at boot time.
# UICC2 0x03
NXP_DEFAULT_UICC2_SELECT=0x03
###############################################################################
# CE when Screen state is locked
# This setting is for DEFAULT_AID_ROUTE,
# DEFAULT_DESFIRE_ROUTE and DEFAULT_MIFARE_CLT_ROUTE
# Disable 0x00
# Enable 0x01
NXP_CE_ROUTE_STRICT_DISABLE=0x01
###############################################################################
#Timeout in secs
NXP_SWP_RD_TAG_OP_TIMEOUT=0x01
###############################################################################
#Set the default AID route Location :
#This settings will be used when application does not set this parameter
# host 0x00
# eSE 0x01
# UICC 0x02
# UICC2 0x03
DEFAULT_AID_ROUTE=0x01
###############################################################################
#Set the Mifare Desfire route Location :
#This settings will be used when application does not set this parameter
# host 0x00
# eSE 0x01
# UICC 0x02
# UICC2 0x03
DEFAULT_ISODEP_ROUTE=0x01
###############################################################################
#Set the Mifare CLT route Location :
#This settings will be used when application does not set this parameter
# host 0x00
# eSE 0x01
# UICC 0x02
# UICC2 0x03
DEFAULT_MIFARE_CLT_ROUTE=0x01
###############################################################################
#Set the Felica CLT route Location :
#This settings will be used when application does not set this parameter
# eSE 0x01
# UICC 0x02
# UICC2 0x03
DEFAULT_FELICA_CLT_ROUTE=0x01
###############################################################################
#Set the default AID Power state :
#This settings will be used when application does not set this parameter
# bit pos 0 = Switch On
# bit pos 1 = Switch Off
# bit pos 2 = Battery Off
# bit pos 3 = Screen off unlock
# bit pos 4 = Screen On lock
# bit pos 5 = Screen Off lock
DEFAULT_AID_PWR_STATE=0x3B
###############################################################################
#Set the Mifare Desfire Power state :
#This settings will be used when application does not set this parameter
# bit pos 0 = Switch On
# bit pos 1 = Switch Off
# bit pos 2 = Battery Off
# bit pos 3 = Screen off unlock
# bit pos 4 = Screen On lock
# bit pos 5 = Screen Off lock
DEFAULT_DESFIRE_PWR_STATE=0x3B
###############################################################################
#Set the Mifare CLT Power state :
#This settings will be used when application does not set this parameter
# bit pos 0 = Switch On
# bit pos 1 = Switch Off
# bit pos 2 = Battery Off
# bit pos 3 = Screen off unlock
# bit pos 4 = Screen On lock
# bit pos 5 = Screen Off lock
DEFAULT_MIFARE_CLT_PWR_STATE=0x3B
###############################################################################
#Set the Felica CLT Power state :
#This settings will be used when application does not set this parameter
# bit pos 0 = Switch On
# bit pos 1 = Switch Off
# bit pos 2 = Battery Off
# bit pos 3 = Screen off unlock
# bit pos 4 = Screen On lock
# bit pos 5 = Screen Off lock
DEFAULT_FELICA_CLT_PWR_STATE=0x3B
###############################################################################
#Set the default Felica T3T System Code OffHost route Location :
#This settings will be used when application does not set this parameter
# host 0x00
# eSE 0x01
# UICC 0x02
# UICC2 0x03
DEFAULT_SYS_CODE_ROUTE=0x00
###############################################################################
# AID Matching platform options
# AID_MATCHING_L 0x01
# AID_MATCHING_K 0x02
#AID_MATCHING_PLATFORM=0x01
###############################################################################
# eSE interface options
# NFC 0x01
# SPI 0x02
NXP_P61_LS_DEFAULT_INTERFACE=0x02
###############################################################################
#CHINA_TIANJIN_RF_SETTING
#Enable 0x01
#Disable 0x00
#NXP_CHINA_TIANJIN_RF_ENABLED=0x01
###############################################################################
#SWP_SWITCH_TIMEOUT_SETTING
# Allowed range of swp timeout setting is 0x00 to 0x3C [0 - 60].
# Timeout in milliseconds, for example
# No Timeout 0x00
# 10 millisecond timeout 0x0A
#NXP_SWP_SWITCH_TIMEOUT=0x0A
###############################################################################
# Flashing Options Configurations
# FLASH_UPPER_VERSION 0x01
# FLASH_DIFFERENT_VERSION 0x02
# FLASH_ALWAYS 0x03
NXP_FLASH_CONFIG=0x02
###############################################################################
# eSE interface options for JCOP Download
# NFC 0x01
# SPI 0x02
NXP_P61_JCOP_DEFAULT_INTERFACE=0x02
###############################################################################
# Option to perform LS update every boot
# Enable 0x01
# Disable 0x00
NXP_LS_FORCE_UPDATE_REQUIRED=0x00
###############################################################################
# Option to perform JCOP update every boot
# Enable 0x01
# Disable 0x00
NXP_JCOP_FORCE_UPDATE_REQUIRED=0x00
###############################################################################
# Bail out mode
# If set to 1, NFCC is using bail out mode for either Type A or Type B poll.
# Set this parameter value to 1 if Android Beam is enabled, else set to 0.
NFA_POLL_BAIL_OUT_MODE=0x00
###############################################################################
# White list of Hosts
# This values will be the Hosts(NFCEEs) in the HCI Network.
DEVICE_HOST_WHITE_LIST={C0, 80}
###############################################################################
# Choose the presence-check algorithm for type-4 tag. If not defined, the default value is 1.
# 0 NFA_RW_PRES_CHK_DEFAULT; Let stack selects an algorithm
# 1 NFA_RW_PRES_CHK_I_BLOCK; ISO-DEP protocol's empty I-block
# 2 NFA_RW_PRES_CHK_ISO_DEP_NAK; Type - 4 tag protocol iso-dep nak presence check
# command is sent waiting for rsp and ntf.
PRESENCE_CHECK_ALGORITHM=2
###############################################################################
# Vendor Specific Proprietary Protocol & Discovery Configuration
# Set to 0xFF if unsupported
# byte[0] NCI_PROTOCOL_18092_ACTIVE
# byte[1] NCI_PROTOCOL_B_PRIME
# byte[2] NCI_PROTOCOL_DUAL
# byte[3] NCI_PROTOCOL_15693
# byte[4] NCI_PROTOCOL_KOVIO
# byte[5] NCI_PROTOCOL_MIFARE
# byte[6] NCI_DISCOVERY_TYPE_POLL_KOVIO
# byte[7] NCI_DISCOVERY_TYPE_POLL_B_PRIME
# byte[8] NCI_DISCOVERY_TYPE_LISTEN_B_PRIME
NFA_PROPRIETARY_CFG={05, FF, FF, 06, 81, 80, 70, FF, FF}
###############################################################################
#NXP_CN_TRANSIT_BLK_NUM_CHECK_ENABLE
#Enable/Disable block number checks for china transit use case
#Enable 0x01
#Disable 0x00
#NXP_CN_TRANSIT_BLK_NUM_CHECK_ENABLE=0x01
###################################################################################################
#This flags will enable different modes of Lx Debug based on bits of the Byte0 & Byte1
#Byte 0:
# |_________Bit Mask_______| Debug Mode
# b7|b6|b5|b4|b3|b2|b1|b0|
# | | |X | | | | | Enable L1 Events (ISO14443-4, ISO18092)
# | | | |X | | | | Enable L2 Reader Events(ROW specific)
# | | | | |X | | | Enable Felica SystemCode
# | | | | | |X | | Enable Felica RF (all Felica CM events)
# | | | | | | |X | Enable L2 Events Card Emulation (ISO14443-3, Modulation detected, RF Field ON/OFF)
#Byte 1:
# Enable RSSI 0x01 Byte1 Byte0
# Disable RSSI 0x00 \__ __/
# e.g. NXP_CORE_PROP_SYSTEM_DEBUG=0x0110 ==> L1 with RSSI
#NXP_CORE_PROP_SYSTEM_DEBUG=0x11
###############################################################################
#Enable NXP NCI runtime parser library
#Enable 0x01
#Disable 0x00
NXP_NCI_PARSER_LIBRARY=0x00
###############################################################################
# Timeout value in milliseconds for JCOP OS download to complete
OS_DOWNLOAD_TIMEOUT_VALUE=60000
###############################################################################
# Forcing HOST to listen for a selected protocol
# 0x00 : Disable Host Listen
# 0x01 : Enable Host to Listen (A) for ISO-DEP tech A
# 0x02 : Enable Host to Listen (B) for ISO-DEP tech B
# 0x04 : Enable Host to Listen (F) for T3T Tag Type Protocol tech F
# 0x07 : Enable Host to Listen (ABF)for ISO-DEP tech AB & T3T Tag Type Protocol tech F
HOST_LISTEN_TECH_MASK=0x07
###############################################################################
# Enable forward functionality
# Disable 0x00
# Enable 0x01
FORWARD_FUNCTIONALITY_ENABLE=0x01
###############################################################################
# Configure the NFC Extras to open and use a static pipe. If the value is
# not set or set to 0, then the default is use a dynamic pipe based on a
# destination gate (see NFA_HCI_DEFAULT_DEST_GATE). Note there is a value
# for each EE (ESE/SIM)
OFF_HOST_ESE_PIPE_ID=0x16
OFF_HOST_SIM_PIPE_ID=0x0A
###############################################################################
#Set the Felica T3T System Code Power state :
#This settings will be used when application does not set this parameter
#Update Power state as per NCI2.0
DEFAULT_SYS_CODE_PWR_STATE=0x39
###############################################################################
#Default Secure Element route id
DEFAULT_OFFHOST_ROUTE=0x02
###############################################################################
#Maximum SMB transceive wait for response
NXP_SMB_TRANSCEIVE_TIMEOUT=2000
###############################################################################
# Firmware file type
#.so file 0x01
#.bin file 0x02
NXP_FW_TYPE=0x01
############################################################################
# Extended APDU length for ISO_DEP
ISO_DEP_MAX_TRANSCEIVE=0xFEFF
#########################################################################
# Support for Amendment I SEMS specification
# Support SEMS Amendment I 0x01
# Support NXP LS client 0x00
NXP_GP_AMD_I_SEMS_SUPPORTED=0x01
#########################################################################
# Enable/Disable default route to host in case default se is not active
# Disable feature 0x00
# Enable feature 0x01
NXP_CHECK_DEFAULT_PROTO_SE_ID=0x01
###############################################################################
# Assign terminal number to each interface based on system config
NXP_SPI_SE_TERMINAL_NUM="eSE1"
NXP_NFC_SE_TERMINAL_NUM="eSE2"
#NXP_VISO_SE_TERMINAL_NUM="eSE3"
###############################################################################
#For static or dynamic dual UICC feature support
#Enable static dual uicc feature by setting value 0x00
#Enable dynamic dual uicc feature by setting value 0x01
NXP_DUAL_UICC_ENABLE=0x01
###############################################################################
# Time to wait by DH when NFCC will report eSE Cold Temp Error.
# The value is as per the UM and in seconds
NXP_SE_COLD_TEMP_ERROR_DELAY=0x05
###############################################################################
# Set configuration optimization decision setting
# Enable = 0x01
# Disable = 0x00
NXP_SET_CONFIG_ALWAYS=0x01
###############################################################################
#OffHost ESE route location for MultiSE
#ESE = 01
OFFHOST_ROUTE_ESE={01}
###############################################################################
#OffHost UICC route location for MultiSE
#UICC1 = 02
#UICC2 = 03
OFFHOST_ROUTE_UICC={02:03}
################################################################################
# This will enable power state required for GSMA testing.
# When this is enabled , then default AID route power state is added with this power state
# If any aid with power state 0 is added, then this power state is used.
# bit pos 0 = Switch On
# bit pos 1 = Switch Off
# bit pos 2 = Battery Off
# bit pos 3 = Screen off unlock
# bit pos 4 = Screen On lock
# bit pos 5 = Screen Off lock
#DEFUALT_GSMA_PWR_STATE=0x3B
#################################################################################

View File

@ -8,9 +8,6 @@
set -e
DEVICE=davinci
VENDOR=xiaomi
# Load extract_utils and do some sanity checks
MY_DIR="${BASH_SOURCE%/*}"
if [[ ! -d "${MY_DIR}" ]]; then MY_DIR="${PWD}"; fi
@ -27,11 +24,19 @@ source "${HELPER}"
# Default to sanitizing the vendor folder before extraction
CLEAN_VENDOR=true
ONLY_COMMON=
ONLY_TARGET=
KANG=
SECTION=
while [ "${#}" -gt 0 ]; do
case "${1}" in
--only-common )
ONLY_COMMON=true
;;
--only-target )
ONLY_TARGET=true
;;
-n | --no-cleanup )
CLEAN_VENDOR=false
;;
@ -58,17 +63,22 @@ function blob_fixup() {
system_ext/lib64/libwfdnative.so)
"${PATCHELF}" --remove-needed "android.hidl.base@1.0.so" "${2}"
;;
vendor/lib64/hw/camera.qcom.so)
"${PATCHELF}" --remove-needed "libMegviiFacepp-0.5.2.so" "${2}"
"${PATCHELF}" --remove-needed "libmegface.so" "${2}"
"${PATCHELF}" --add-needed "libshim_megvii.so" "${2}"
;;
esac
}
# Initialize the helper
setup_vendor "${DEVICE}" "${VENDOR}" "${ANDROID_ROOT}" false "${CLEAN_VENDOR}"
if [ -z "${ONLY_TARGET}" ]; then
# Initialize the helper for common device
setup_vendor "${DEVICE_COMMON}" "${VENDOR}" "${ANDROID_ROOT}" true "${CLEAN_VENDOR}"
extract "${MY_DIR}/proprietary-files.txt" "${SRC}" "${KANG}" --section "${SECTION}"
fi
if [ -z "${ONLY_COMMON}" ] && [ -s "${MY_DIR}/../${DEVICE}/proprietary-files.txt" ]; then
# Reinitialize the helper for device
source "${MY_DIR}/../${DEVICE}/extract-files.sh"
setup_vendor "${DEVICE}" "${VENDOR}" "${ANDROID_ROOT}" false "${CLEAN_VENDOR}"
extract "${MY_DIR}/../${DEVICE}/proprietary-files.txt" "${SRC}" "${KANG}" --section "${SECTION}"
fi
"${MY_DIR}/setup-makefiles.sh"

View File

@ -1,49 +0,0 @@
//
// Copyright (C) 2019-2020 The LineageOS Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
cc_binary {
name: "vendor.lineage.biometrics.fingerprint.inscreen@1.0-service.davinci",
defaults: ["hidl_defaults"],
vintf_fragments: ["vendor.lineage.biometrics.fingerprint.inscreen@1.0-service.davinci.xml"],
init_rc: ["vendor.lineage.biometrics.fingerprint.inscreen@1.0-service.davinci.rc"],
relative_install_path: "hw",
srcs: [
"service.cpp",
"FingerprintInscreen.cpp",
],
vendor: true,
shared_libs: [
"libbase",
"libhardware",
"libhidlbase",
"liblog",
"libutils",
"vendor.goodix.hardware.biometrics.fingerprint@2.1",
"vendor.lineage.biometrics.fingerprint.inscreen@1.0",
"vendor.xiaomi.hardware.fingerprintextension@1.0",
"vendor.xiaomi.hardware.touchfeature@1.0",
],
}
cc_library_static {
name: "libfod_extension.davinci",
srcs: ["FodExtension.cpp"],
include_dirs: [
"frameworks/native/services/surfaceflinger/CompositionEngine/include",
],
header_libs: [
"generated_kernel_headers",
],
}

View File

@ -1,202 +0,0 @@
/*
* Copyright (C) 2019-2020 The LineageOS Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#define LOG_TAG "FingerprintInscreenService"
#include "FingerprintInscreen.h"
#include <android-base/logging.h>
#include <fstream>
#include <cmath>
#include <thread>
#include <fcntl.h>
#include <poll.h>
#include <sys/stat.h>
#define FINGERPRINT_ACQUIRED_VENDOR 6
#define COMMAND_NIT 10
#define PARAM_NIT_FOD 1
#define PARAM_NIT_NONE 0
#define TOUCH_FOD_ENABLE 10
#define FOD_UI_PATH "/sys/devices/platform/soc/soc:qcom,dsi-display/fod_ui"
#define FOD_SENSOR_X 445
#define FOD_SENSOR_Y 1931
#define FOD_SENSOR_SIZE 190
namespace {
static bool readBool(int fd) {
char c;
int rc;
rc = lseek(fd, 0, SEEK_SET);
if (rc) {
LOG(ERROR) << "failed to seek fd, err: " << rc;
return false;
}
rc = read(fd, &c, sizeof(char));
if (rc != 1) {
LOG(ERROR) << "failed to read bool from fd, err: " << rc;
return false;
}
return c != '0';
}
} // anonymous namespace
namespace vendor {
namespace lineage {
namespace biometrics {
namespace fingerprint {
namespace inscreen {
namespace V1_0 {
namespace implementation {
FingerprintInscreen::FingerprintInscreen() {
touchFeatureService = ITouchFeature::getService();
xiaomiFingerprintService = IXiaomiFingerprint::getService();
std::thread([this]() {
int fd = open(FOD_UI_PATH, O_RDONLY);
if (fd < 0) {
LOG(ERROR) << "failed to open fd, err: " << fd;
return;
}
struct pollfd fodUiPoll = {
.fd = fd,
.events = POLLERR | POLLPRI,
.revents = 0,
};
while (true) {
int rc = poll(&fodUiPoll, 1, -1);
if (rc < 0) {
LOG(ERROR) << "failed to poll fd, err: " << rc;
continue;
}
xiaomiFingerprintService->extCmd(COMMAND_NIT,
readBool(fd) ? PARAM_NIT_FOD : PARAM_NIT_NONE);
}
}).detach();
}
Return<int32_t> FingerprintInscreen::getPositionX() {
return FOD_SENSOR_X;
}
Return<int32_t> FingerprintInscreen::getPositionY() {
return FOD_SENSOR_Y;
}
Return<int32_t> FingerprintInscreen::getSize() {
return FOD_SENSOR_SIZE;
}
Return<void> FingerprintInscreen::onStartEnroll() {
return Void();
}
Return<void> FingerprintInscreen::onFinishEnroll() {
return Void();
}
Return<void> FingerprintInscreen::onPress() {
return Void();
}
Return<void> FingerprintInscreen::onRelease() {
return Void();
}
Return<void> FingerprintInscreen::onShowFODView() {
touchFeatureService->setTouchMode(TOUCH_FOD_ENABLE, 1);
return Void();
}
Return<void> FingerprintInscreen::onHideFODView() {
touchFeatureService->resetTouchMode(TOUCH_FOD_ENABLE);
return Void();
}
Return<bool> FingerprintInscreen::handleAcquired(int32_t acquiredInfo, int32_t vendorCode) {
std::lock_guard<std::mutex> _lock(mCallbackLock);
if (mCallback == nullptr) {
return false;
}
if (acquiredInfo == FINGERPRINT_ACQUIRED_VENDOR) {
if (vendorCode == 22) {
Return<void> ret = mCallback->onFingerDown();
if (!ret.isOk()) {
LOG(ERROR) << "FingerDown() error: " << ret.description();
}
return true;
}
if (vendorCode == 23) {
Return<void> ret = mCallback->onFingerUp();
if (!ret.isOk()) {
LOG(ERROR) << "FingerUp() error: " << ret.description();
}
return true;
}
}
return false;
}
Return<bool> FingerprintInscreen::handleError(int32_t error, int32_t vendorCode) {
LOG(ERROR) << "error: " << error << ", vendorCode: " << vendorCode;
return false;
}
Return<void> FingerprintInscreen::setLongPressEnabled(bool) {
return Void();
}
Return<int32_t> FingerprintInscreen::getDimAmount(int32_t /* brightness */) {
return 0;
}
Return<bool> FingerprintInscreen::shouldBoostBrightness() {
return false;
}
Return<void> FingerprintInscreen::setCallback(const sp<IFingerprintInscreenCallback>& callback) {
{
std::lock_guard<std::mutex> _lock(mCallbackLock);
mCallback = callback;
}
return Void();
}
} // namespace implementation
} // namespace V1_0
} // namespace inscreen
} // namespace fingerprint
} // namespace biometrics
} // namespace lineage
} // namespace vendor

View File

@ -1,73 +0,0 @@
/*
* Copyright (C) 2019-2020 The LineageOS Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef VENDOR_LINEAGE_BIOMETRICS_FINGERPRINT_INSCREEN_V1_0_FINGERPRINTINSCREEN_H
#define VENDOR_LINEAGE_BIOMETRICS_FINGERPRINT_INSCREEN_V1_0_FINGERPRINTINSCREEN_H
#include <vendor/lineage/biometrics/fingerprint/inscreen/1.0/IFingerprintInscreen.h>
#include <vendor/xiaomi/hardware/fingerprintextension/1.0/IXiaomiFingerprint.h>
#include <vendor/xiaomi/hardware/touchfeature/1.0/ITouchFeature.h>
namespace vendor {
namespace lineage {
namespace biometrics {
namespace fingerprint {
namespace inscreen {
namespace V1_0 {
namespace implementation {
using ::android::sp;
using ::android::hardware::Return;
using ::android::hardware::Void;
using ::vendor::xiaomi::hardware::fingerprintextension::V1_0::IXiaomiFingerprint;
using ::vendor::xiaomi::hardware::touchfeature::V1_0::ITouchFeature;
class FingerprintInscreen : public IFingerprintInscreen {
public:
FingerprintInscreen();
Return<int32_t> getPositionX() override;
Return<int32_t> getPositionY() override;
Return<int32_t> getSize() override;
Return<void> onStartEnroll() override;
Return<void> onFinishEnroll() override;
Return<void> onPress() override;
Return<void> onRelease() override;
Return<void> onShowFODView() override;
Return<void> onHideFODView() override;
Return<bool> handleAcquired(int32_t acquiredInfo, int32_t vendorCode) override;
Return<bool> handleError(int32_t error, int32_t vendorCode) override;
Return<void> setLongPressEnabled(bool enabled) override;
Return<int32_t> getDimAmount(int32_t brightness) override;
Return<bool> shouldBoostBrightness() override;
Return<void> setCallback(const sp<IFingerprintInscreenCallback>& callback) override;
private:
sp<ITouchFeature> touchFeatureService;
sp<IXiaomiFingerprint> xiaomiFingerprintService;
std::mutex mCallbackLock;
sp<IFingerprintInscreenCallback> mCallback;
};
} // namespace implementation
} // namespace V1_0
} // namespace inscreen
} // namespace fingerprint
} // namespace biometrics
} // namespace lineage
} // namespace vendor
#endif // VENDOR_LINEAGE_BIOMETRICS_FINGERPRINT_INSCREEN_V1_0_FINGERPRINTINSCREEN_H

View File

@ -1,32 +0,0 @@
/*
* Copyright (C) 2020 The LineageOS Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#include <stdint.h>
#include <drm/sde_drm.h>
#include <compositionengine/FodExtension.h>
uint32_t getFodZOrder(uint32_t z, bool touched) {
if (touched) {
z |= FOD_PRESSED_LAYER_ZORDER;
}
return z;
}
uint64_t getFodUsageBits(uint64_t usageBits, bool touched) {
(void) touched;
return usageBits;
}

View File

@ -1,50 +0,0 @@
/*
* Copyright (C) 2019 The LineageOS Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#define LOG_TAG "vendor.lineage.biometrics.fingerprint.inscreen@1.0-service.davinci"
#include <android-base/logging.h>
#include <hidl/HidlTransportSupport.h>
#include "FingerprintInscreen.h"
using android::hardware::configureRpcThreadpool;
using android::hardware::joinRpcThreadpool;
using vendor::lineage::biometrics::fingerprint::inscreen::V1_0::IFingerprintInscreen;
using vendor::lineage::biometrics::fingerprint::inscreen::V1_0::implementation::FingerprintInscreen;
using android::OK;
using android::status_t;
int main() {
android::sp<IFingerprintInscreen> service = new FingerprintInscreen();
configureRpcThreadpool(1, true);
status_t status = service->registerAsService();
if (status != OK) {
LOG(ERROR) << "Cannot register FOD HAL service.";
return 1;
}
LOG(INFO) << "FOD HAL service ready.";
joinRpcThreadpool();
LOG(ERROR) << "FOD HAL service failed to join thread pool.";
return 1;
}

View File

@ -1,10 +0,0 @@
on boot
chown system system /sys/devices/platform/soc/soc:qcom,dsi-display/fod_ui
chmod 0444 /sys/devices/platform/soc/soc:qcom,dsi-display/fod_ui
service vendor.fingerprint-inscreen-1-0 /vendor/bin/hw/vendor.lineage.biometrics.fingerprint.inscreen@1.0-service.davinci
interface vendor.lineage.biometrics.fingerprint.inscreen@1.0::IFingerprintInscreen default
class hal
user system
group system
shutdown critical

View File

@ -1,11 +0,0 @@
<manifest version="1.0" type="device">
<hal format="hidl">
<name>vendor.lineage.biometrics.fingerprint.inscreen</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IFingerprintInscreen</name>
<instance>default</instance>
</interface>
</hal>
</manifest>

View File

@ -1,25 +0,0 @@
//
// Copyright (C) 2020 The LineageOS Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
cc_library_static {
name: "libinit_davinci",
srcs: ["init_davinci.cpp"],
recovery_available: true,
include_dirs: [
"system/core/init",
],
shared_libs: ["libbase"],
}

View File

@ -1,115 +0,0 @@
/*
Copyright (C) 2020 The LineageOS Project.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following
disclaimer in the documentation and/or other materials provided
with the distribution.
* Neither the name of The Linux Foundation nor the names of its
contributors may be used to endorse or promote products derived
from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
#include <vector>
#include <android-base/properties.h>
#define _REALLY_INCLUDE_SYS__SYSTEM_PROPERTIES_H_
#include <sys/_system_properties.h>
using android::base::GetProperty;
std::vector<std::string> ro_props_default_source_order = {
"",
"bootimage.",
"odm.",
"product.",
"system.",
"vendor.",
};
void property_override(char const prop[], char const value[], bool add = true)
{
prop_info *pi;
pi = (prop_info *) __system_property_find(prop);
if (pi)
__system_property_update(pi, value, strlen(value));
else if (add)
__system_property_add(prop, strlen(prop), value, strlen(value));
}
void set_ro_build_prop(const std::string &prop, const std::string &value) {
for (const auto &source : ro_props_default_source_order) {
auto prop_name = "ro." + source + "build." + prop;
if (source == "")
property_override(prop_name.c_str(), value.c_str());
else
property_override(prop_name.c_str(), value.c_str(), false);
}
};
void set_ro_product_prop(const std::string &prop, const std::string &value) {
for (const auto &source : ro_props_default_source_order) {
auto prop_name = "ro.product." + source + prop;
property_override(prop_name.c_str(), value.c_str(), false);
}
};
void vendor_load_properties() {
std::string region;
std::string hardware_revision;
region = GetProperty("ro.boot.hwc", "GLOBAL");
hardware_revision = GetProperty("ro.boot.hwversion", "UNKNOWN");
std::string model;
std::string device;
std::string fingerprint;
std::string description;
std::string mod_device;
if (region == "GLOBAL") {
model = "Mi 9T";
device = "davinci";
fingerprint = "Xiaomi/davinci/davinci:10/QKQ1.190825.002/V12.0.3.0.QFJMIXM:user/release-keys";
description = "davinci-user 10 QKQ1.190825.002 V12.0.3.0.QFJMIXM release-keys";
mod_device = "davinci_global";
} else if (region == "CN") {
model = "Redmi K20";
device = "davinci";
fingerprint = "Xiaomi/davinci/davinci:10/QKQ1.190825.002/V12.0.3.0.QFJCNXM:user/release-keys";
description = "davinci-user 10 QKQ1.190825.002 V12.0.3.0.QFJCNXM release-keys";
} else if (region == "INDIA") {
model = "Redmi K20";
device = "davinciin";
fingerprint = "Xiaomi/davinciin/davinciin:10/QKQ1.190825.002/V12.0.3.0.QFJINXM:user/release-keys";
description = "davinciin-user 10 QKQ1.190825.002 V12.0.3.0.QFJINXM release-keys";
mod_device = "davinciin_in_global";
}
set_ro_build_prop("fingerprint", fingerprint);
set_ro_product_prop("device", device);
set_ro_product_prop("model", model);
property_override("ro.build.description", description.c_str());
if (mod_device != "") {
property_override("ro.product.mod_device", mod_device.c_str());
}
property_override("ro.boot.hardware.revision", hardware_revision.c_str());
}

View File

@ -14,10 +14,10 @@
// limitations under the License.
cc_binary {
name: "android.hardware.light@2.0-service.davinci",
name: "android.hardware.light@2.0-service.xiaomi_sm6150",
defaults: ["hidl_defaults"],
vintf_fragments: ["android.hardware.light@2.0-service.davinci.xml"],
init_rc: ["android.hardware.light@2.0-service.davinci.rc"],
vintf_fragments: ["android.hardware.light@2.0-service.xiaomi_sm6150.xml"],
init_rc: ["android.hardware.light@2.0-service.xiaomi_sm6150.rc"],
relative_install_path: "hw",
srcs: [
"service.cpp",

View File

@ -9,7 +9,7 @@ on boot
chmod 0644 /sys/class/leds/right/brightness
chmod 0644 /sys/class/leds/right/breath
service vendor.light-hal-2-0 /vendor/bin/hw/android.hardware.light@2.0-service.davinci
service vendor.light-hal-2-0 /vendor/bin/hw/android.hardware.light@2.0-service.xiaomi_sm6150
interface android.hardware.light@2.0::ILight default
class hal
user system

View File

@ -14,7 +14,7 @@
* limitations under the License.
*/
#define LOG_TAG "android.hardware.light@2.0-service.davinci"
#define LOG_TAG "android.hardware.light@2.0-service.xiaomi_sm6150"
#include <hidl/HidlTransportSupport.h>

View File

@ -1,33 +0,0 @@
#
# Copyright (C) 2020 The LineageOS Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# Inherit from those products. Most specific first.
$(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk)
$(call inherit-product, $(SRC_TARGET_DIR)/product/full_base_telephony.mk)
# Inherit from davinci device
$(call inherit-product, device/xiaomi/davinci/device.mk)
# Inherit some common Lineage stuff.
$(call inherit-product, vendor/lineage/config/common_full_phone.mk)
PRODUCT_NAME := lineage_davinci
PRODUCT_DEVICE := davinci
PRODUCT_BRAND := Xiaomi
PRODUCT_MODEL := Mi 9T
PRODUCT_MANUFACTURER := Xiaomi
PRODUCT_GMS_CLIENTID_BASE := android-xiaomi

View File

@ -14,10 +14,10 @@
// limitations under the License.
cc_binary {
name: "vendor.lineage.livedisplay@2.0-service.davinci",
name: "vendor.lineage.livedisplay@2.0-service.xiaomi_sm6150",
defaults: ["hidl_defaults"],
vintf_fragments: ["vendor.lineage.livedisplay@2.0-service.davinci.xml"],
init_rc: ["vendor.lineage.livedisplay@2.0-service.davinci.rc"],
vintf_fragments: ["vendor.lineage.livedisplay@2.0-service.xiaomi_sm6150.xml"],
init_rc: ["vendor.lineage.livedisplay@2.0-service.xiaomi_sm6150.rc"],
relative_install_path: "hw",
srcs: [
"SunlightEnhancement.cpp",

View File

@ -14,7 +14,7 @@
* limitations under the License.
*/
#define LOG_TAG "vendor.lineage.livedisplay@2.0-service.davinci"
#define LOG_TAG "vendor.lineage.livedisplay@2.0-service.xiaomi_sm6150"
#include <android-base/logging.h>
#include <binder/ProcessState.h>

View File

@ -2,7 +2,7 @@ on boot
chown system system /sys/devices/platform/soc/soc:qcom,dsi-display/hbm
chmod 0660 /sys/devices/platform/soc/soc:qcom,dsi-display/hbm
service vendor.livedisplay-hal-2-0 /vendor/bin/hw/vendor.lineage.livedisplay@2.0-service.davinci
service vendor.livedisplay-hal-2-0 /vendor/bin/hw/vendor.lineage.livedisplay@2.0-service.xiaomi_sm6150
class hal
user system
group system

View File

@ -1,20 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright (C) 2020 The LineageOS Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<resources>
<!-- The minimum bottom margin of the keyguard security container -->
<dimen name="kg_security_container_min_bottom_margin">505px</dimen>
</resources>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.8 KiB

View File

@ -17,7 +17,4 @@
<!-- Max visible notification icons -->
<integer name="config_maxVisibleNotificationIcons">6</integer>
<integer name="config_maxVisibleNotificationIconsOnLock">7</integer>
<!-- Color of the FOD view -->
<color name="config_fodColor">#00ffffff</color>
</resources>

View File

@ -1,24 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2007 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<resources>
<!-- Defines the location of the fingerprint sensor on the device
0 = back
1 = front
2 = left side
3 = right side
-->
<integer name="config_fingerprintSensorLocation">1</integer>
</resources>

View File

@ -1,16 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2009 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<resources>
<item name="fingerprint_sensor_location_fraction_y" type="fraction">78%</item>
</resources>

View File

@ -1,119 +0,0 @@
<!--
~ Copyright (C) 2019 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<com.android.systemui.biometrics.AuthBiometricFingerprintView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/contents"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:id="@+id/title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="@integer/biometric_dialog_text_gravity"
style="@style/TextAppearance.AuthCredential.Title"/>
<TextView
android:id="@+id/subtitle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="@integer/biometric_dialog_text_gravity"
style="@style/TextAppearance.AuthCredential.Subtitle"/>
<TextView
android:id="@+id/description"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="@integer/biometric_dialog_text_gravity"
style="@style/TextAppearance.AuthCredential.Description"/>
<TextView
android:id="@+id/indicator"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingHorizontal="24dp"
android:paddingVertical="12dp"
android:textSize="12sp"
android:gravity="center_horizontal"
android:accessibilityLiveRegion="polite"
android:textColor="@color/biometric_dialog_gray"/>
<ImageView
android:id="@+id/biometric_icon"
android:layout_width="@dimen/biometric_dialog_biometric_icon_size"
android:layout_height="@dimen/biometric_dialog_biometric_icon_size"
android:paddingTop="24dp"
android:layout_gravity="center_horizontal"
android:scaleType="fitXY"
android:visibility="invisible"/>
<LinearLayout
android:id="@+id/button_bar"
android:layout_width="match_parent"
android:layout_height="88dp"
style="?android:attr/buttonBarStyle"
android:orientation="horizontal"
android:paddingTop="16dp">
<Space android:id="@+id/leftSpacer"
android:layout_width="8dp"
android:layout_height="match_parent"
android:visibility="visible" />
<!-- Negative Button -->
<Button android:id="@+id/button_negative"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@*android:style/Widget.DeviceDefault.Button.Borderless.Colored"
android:layout_gravity="center_vertical"
android:ellipsize="end"
android:maxLines="2"
android:maxWidth="@dimen/biometric_dialog_button_negative_max_width"/>
<Space android:id="@+id/middleSpacer"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:visibility="visible"/>
<!-- Positive Button -->
<Button android:id="@+id/button_positive"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@*android:style/Widget.DeviceDefault.Button.Colored"
android:layout_gravity="center_vertical"
android:ellipsize="end"
android:maxLines="2"
android:maxWidth="@dimen/biometric_dialog_button_positive_max_width"
android:text="@string/biometric_dialog_confirm"
android:visibility="gone"/>
<!-- Try Again Button -->
<Button android:id="@+id/button_try_again"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@*android:style/Widget.DeviceDefault.Button.Colored"
android:layout_gravity="center_vertical"
android:ellipsize="end"
android:maxLines="2"
android:maxWidth="@dimen/biometric_dialog_button_positive_max_width"
android:text="@string/biometric_dialog_try_again"
android:visibility="gone"/>
<Space android:id="@+id/rightSpacer"
android:layout_width="8dp"
android:layout_height="match_parent"
android:visibility="visible" />
</LinearLayout>
</com.android.systemui.biometrics.AuthBiometricFingerprintView>

View File

@ -506,9 +506,6 @@
<item>3</item> <!-- COLOR_MODE_AUTOMATIC -->
</integer-array>
<!-- Height of the status bar in portrait -->
<dimen name="status_bar_height_portrait">35.0dip</dimen>
<!-- Vibrator pattern for feedback about a long screen/key press -->
<integer-array name="config_longPressVibePattern">
<item>0</item>

View File

@ -1,99 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<device name="Android">
<item name="none">0</item>
<item name="screen.on">75.47</item>
<item name="screen.full">387.93</item>
<item name="bluetooth.active">4.43</item>
<item name="bluetooth.on">0.9</item>
<item name="wifi.on">0.5</item>
<item name="wifi.active">135.59</item>
<item name="wifi.scan">19.46</item>
<item name="dsp.audio">20.71</item>
<item name="dsp.video">40.63</item>
<item name="camera.flashlight">288.29</item>
<item name="camera.avg">770.28</item>
<item name="gps.on">59.39</item>
<item name="radio.active">165.56</item>
<item name="radio.scanning">45</item>
<array name="radio.on">
<value>9.48</value>
<value>9.48</value>
</array>
<item name="modem.controller.idle">0</item>
<item name="modem.controller.rx">0</item>
<item name="modem.controller.tx">0</item>
<item name="modem.controller.voltage">0</item>
<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>768000</value>
<value>1017600</value>
<value>1248000</value>
<value>1324800</value>
<value>1497600</value>
<value>1621800</value>
<value>1708800</value>
<value>1804800</value>
</array>
<array name="cpu.core_power.cluster0">
<value>120.09</value>
<value>128.85</value>
<value>139.87</value>
<value>159.83</value>
<value>180.88</value>
<value>191.4</value>
<value>209.57</value>
<value>257.8</value>
<value>276.02</value>
<value>285.67</value>
</array>
<array name="cpu.core_speeds.cluster1">
<value>300000</value>
<value>652800</value>
<value>806400</value>
<value>979200</value>
<value>1094400</value>
<value>1209600</value>
<value>1324800</value>
<value>1555200</value>
<value>1708800</value>
<value>1843200</value>
<value>1939200</value>
<value>2169600</value>
<value>2208000</value>
</array>
<array name="cpu.core_power.cluster1">
<value>199.52</value>
<value>282.09</value>
<value>317.76</value>
<value>379.8</value>
<value>425.25</value>
<value>478.55</value>
<value>532.35</value>
<value>705.83</value>
<value>813.09</value>
<value>1140.65</value>
<value>1242.73</value>
<value>1514.4</value>
<value>1583.92</value>
</array>
<item name="cpu.awake">7.44</item>
<item name="cpu.idle">4.48</item>
<item name="battery.capacity">4000</item>
<item name="wifi.controller.idle">0</item>
<item name="wifi.controller.rx">0</item>
<item name="wifi.controller.tx">0</item>
<array name="wifi.controller.tx_levels" />
<item name="wifi.controller.voltage">0</item>
<array name="wifi.batchedscan">
<value>.0002</value>
<value>.002</value>
<value>.02</value>
<value>.2</value>
<value>2</value>
</array>
</device>

View File

@ -1,20 +0,0 @@
<!--
Copyright (C) 2020 The Android Open Source Project
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="8dp"
android:height="8dp"
android:viewportWidth="21"
android:viewportHeight="21">
<path
android:fillColor="#000000"
android:pathData="M0,0L25,0C22.74,0 21.99,0 21.31,0C19.94,0.01 18.83,0.04 17.73,0.11C16.91,0.17 16.09,0.25 15.3,0.36C14.5,0.48 13.72,0.62 12.95,0.81C11.42,1.19 9.97,1.72 8.65,2.43C7.32,3.14 6.12,4.02 5.08,5.07C4.04,6.11 3.15,7.31 2.44,8.64C1.73,9.97 1.19,11.42 0.82,12.94C0.63,13.7 0.48,14.49 0.37,15.29C0.25,16.09 0.17,16.9 0.12,17.72C0.05,18.82 0.02,19.93 0.01,21.55C0.01,22.36 0.01,23.3 0.01,25.56L0,0Z"/>
</vector>

View File

@ -18,12 +18,6 @@
-->
<resources>
<!-- Default rounded corner curve (a Bezier). Must match (the curved path in) rounded.xml.
Note that while rounded.xml includes the entire path (including the horizontal and vertical
corner edges), this pulls out just the curve.
-->
<string name="config_rounded_mask" translatable="false">M21,0C19.94,0.01 18.83,0.04 17.73,0.11C16.91,0.17 16.09,0.25 15.3,0.36C14.5,0.48 13.72,0.62 12.95,0.81C11.42,1.19 9.97,1.72 8.65,2.43C7.32,3.14 6.12,4.02 5.08,5.07C4.04,6.11 3.15,7.31 2.44,8.64C1.73,9.97 1.19,11.42 0.82,12.94C0.63,13.7 0.48,14.49 0.37,15.29C0.25,16.09 0.17,16.9 0.12,17.72C0.05,18.82 0.02,19.93 0.01,21.55</string>
<!-- Doze: does this device support STATE_DOZE? -->
<bool name="doze_display_state_supported">true</bool>

View File

@ -1,29 +0,0 @@
<!--
* Copyright (c) 2018, The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<resources>
<!-- the padding on the top of the statusbar (usually 0) -->
<dimen name="status_bar_padding_top">1dp</dimen>
<!-- Margin start of the system icons super container -->
<dimen name="system_icons_super_container_avatarless_margin_end">33px</dimen>
<!-- end margin for multi user switch in collapsed quick settings -->
<dimen name="multi_user_switch_keyguard_margin">22px</dimen>
<!-- Margin on the left side of the carrier text on Keyguard -->
<dimen name="keyguard_carrier_text_margin">44px</dimen>
</resources>

View File

@ -54,21 +54,6 @@ vendor/lib/libadm.so
vendor/lib/libaudcal.so
vendor/lib/libqtigef.so
# Audio ACDB
vendor/etc/acdbdata/adsp_avs_config.acdb
vendor/etc/acdbdata/Forte/Forte_Bluetooth_cal.acdb
vendor/etc/acdbdata/Forte/Forte_Codec_cal.acdb
vendor/etc/acdbdata/Forte/Forte_General_cal.acdb
vendor/etc/acdbdata/Forte/Forte_Global_cal.acdb
vendor/etc/acdbdata/Forte/Forte_Handset_cal.acdb
vendor/etc/acdbdata/Forte/Forte_Hdmi_cal.acdb
vendor/etc/acdbdata/Forte/Forte_Headset_cal.acdb
vendor/etc/acdbdata/Forte/Forte_Speaker_cal.acdb
vendor/etc/acdbdata/Forte/Forte_workspaceFile.qwsp
# Audio firmware
vendor/firmware/tfa98xx.cnt
# Bluetooth
vendor/bin/hw/android.hardware.bluetooth@1.0-service-qti
vendor/etc/init/android.hardware.bluetooth@1.0-service-qti.rc
@ -90,203 +75,6 @@ vendor/lib/vendor.qti.hardware.bluetooth_audio@2.0.so
system_ext/lib64/libaptXHD_encoder.so|e13fa70c97caaa24d061678bdee608eb8850a69e
system_ext/lib64/libaptX_encoder.so|df1c89d7af1bb35808d5fe3496b04ba066c10cbc
# Camera
vendor/bin/remosaic_daemon
vendor/lib64/hw/camera.qcom.so
vendor/lib64/hw/com.qti.chi.override.so
vendor/lib64/libalAILDC.so
vendor/lib64/libalCFR.so
vendor/lib64/libalhLDC.so
vendor/lib64/libalLDC.so
vendor/lib64/libarcsat.so
vendor/lib64/libarcsoft_beautyshot.so
vendor/lib64/libarcsoft_bodyslim.so
vendor/lib64/libarcsoft_distortion_correction.so
vendor/lib64/libarcsoft_dualcam_image_optical_zoom.so
vendor/lib64/libarcsoft_dualcam_refocus_front.so
vendor/lib64/libarcsoft_dualcam_refocus_rear_t.so
vendor/lib64/libarcsoft_dualcam_refocus_rear_w.so
vendor/lib64/libarcsoft_dualcam_refocus.so
vendor/lib64/libarcsoft_high_dynamic_range.so
vendor/lib64/libarcsoft_low_light_hdr.so
vendor/lib64/libarcsoft_portrait_lighting_c.so
vendor/lib64/libarcsoft_portrait_lighting.so
vendor/lib64/libarcsoft_preview_deflicker.so
vendor/lib64/libarcsoft_supernight.so
vendor/lib64/libcamera_nn_stub.so
vendor/lib64/libcamera_scene.so
vendor/lib64/libcamxfdalgov8.so
vendor/lib64/libcamxfdengine.so
vendor/lib64/libcamxstatscore.so
vendor/lib64/libcamxswprocessalgo.so
vendor/lib64/libcamxtintlessalgo.so
vendor/lib64/libcom.qti.chinodeutils.so
vendor/lib64/lib_denoiser3.so
vendor/lib64/libFaceGrade.so
vendor/lib64/libft2vendor.so
vendor/lib64/libHalSuperSensorServer.so
vendor/lib64/libmialgo_fs.so
vendor/lib64/libmialgo_rfs.so
vendor/lib64/libmialgo_sd.so
vendor/lib64/libmialgo_utils.so
vendor/lib64/libmibokeh_712.so
vendor/lib64/libmpbase.so
vendor/lib64/libremosaiclib.so
vendor/lib64/libremosaic_daemon.so
vendor/lib64/libSuperSensorCPU.so
vendor/lib64/libSuperSensor.so
vendor/lib64/libtriplecam_optical_zoom_control.so
vendor/lib64/libtriplecam_video_optical_zoom.so
vendor/lib64/libVDClearShot.so
vendor/lib64/libVDSuperPhotoAPI.so
vendor/lib64/libvidhance.so
vendor/lib64/libXMFD_AgeGender.so
vendor/lib64/libc++_shared.so
# Camera components
vendor/lib64/camera/components/com.almalence.node.sr.so
vendor/lib64/camera/components/com.altek.node.depurple.so
vendor/lib64/camera/components/com.altek.node.distortioncorrection.so
vendor/lib64/camera/components/com.arcsoft.node.bodyslim.so
vendor/lib64/camera/components/com.arcsoft.node.capturebokeh.so
vendor/lib64/camera/components/com.arcsoft.node.capturefusion.so
vendor/lib64/camera/components/com.arcsoft.node.deflicker.so
vendor/lib64/camera/components/com.arcsoft.node.distortioncorrection.so
vendor/lib64/camera/components/com.arcsoft.node.hdrchecker.so
vendor/lib64/camera/components/com.arcsoft.node.hdr.so
vendor/lib64/camera/components/com.arcsoft.node.realtimebokeh.so
vendor/lib64/camera/components/com.arcsoft.node.skinbeautifier.so
vendor/lib64/camera/components/com.arcsoft.node.smooth_transition.so
vendor/lib64/camera/components/com.arcsoft.node.superlowlight.so
vendor/lib64/camera/components/com.mi.node.aiasd.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
vendor/lib64/camera/components/com.qti.hvx.addconstant.so
vendor/lib64/camera/components/com.qti.hvx.binning.so
vendor/lib64/camera/components/com.qti.node.depth.so
vendor/lib64/camera/components/com.qti.node.dummyrtb.so
vendor/lib64/camera/components/com.qti.node.dummysat.so
vendor/lib64/camera/components/com.qti.node.eisv2.so
vendor/lib64/camera/components/com.qti.node.eisv3.so
vendor/lib64/camera/components/com.qti.node.fcv.so
vendor/lib64/camera/components/com.qti.node.gpu.so
vendor/lib64/camera/components/com.qti.node.memcpy.so
vendor/lib64/camera/components/com.qti.node.photosolid.so
vendor/lib64/camera/components/com.qti.node.remosaic.so
vendor/lib64/camera/components/com.qti.node.stich.so
vendor/lib64/camera/components/com.qti.node.swregistration.so
vendor/lib64/camera/components/com.qti.node.watermark.so
vendor/lib64/camera/components/com.qti.node.xiaomigenderage.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.qti.stats.aec.so
vendor/lib64/camera/components/com.qti.stats.afd.so
vendor/lib64/camera/components/com.qti.stats.af.so
vendor/lib64/camera/components/com.qti.stats.asd.so
vendor/lib64/camera/components/com.qti.stats.awb.so
vendor/lib64/camera/components/com.qti.stats.awbwrapper.so
vendor/lib64/camera/components/com.qti.stats.hafoverride.so
vendor/lib64/camera/components/com.qti.stats.haf.so
vendor/lib64/camera/components/com.qti.stats.localhistogram.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.vidhance.node.eis.so
vendor/lib64/camera/components/com.vidhance.stats.aec_dmbr.so
vendor/lib64/camera/components/com.visidon.node.clearshot.so
vendor/lib64/camera/components/com.visidon.node.sr.so
vendor/lib64/camera/components/com.xiaomi.node.mibokeh.so
vendor/lib64/camera/components/com.xiaomi.node.mifragment.so
vendor/lib64/camera/components/com.xiaomi.node.misegment.so
vendor/lib64/camera/components/etc/morpho_lowlight4.0_3hdr.xml
vendor/lib64/camera/components/etc/morpho_lowlight4.0_adrc_high_1.xml
vendor/lib64/camera/components/etc/morpho_lowlight4.0_adrc_high.xml
vendor/lib64/camera/components/etc/morpho_lowlight4.0.xml
vendor/lib64/camera/components/etc/visidon_clearshot_params.xml
vendor/lib64/camera/components/libdepthmapwrapper.so
vendor/lib64/camera/components/libmmcamera_cac3.so
# Camera configs
vendor/etc/camera/almalence_sr_params_tele.config
vendor/etc/camera/almalence_sr_params_wide.config
vendor/etc/camera/beauty_ui9_intelligent_params.config
vendor/etc/camera/body_slim_ui9_params.config
vendor/etc/camera/camxoverridesettings.txt
vendor/etc/camera/CFR_para_T.bin
vendor/etc/camera/CFR_para_UW.bin
vendor/etc/camera/CFR_para_W.bin
vendor/etc/camera/eisoverridesettings.txt
vendor/etc/camera/eyelineblush.cng
vendor/etc/camera/golden_rear_dc_cal_wu.bin
vendor/etc/camera/LDC_FPC_TUNING_DATA.bin
vendor/etc/camera/LDC_PACKDATA_VENDORID_0x01.bin
vendor/etc/camera/LDC_PACKDATA_VENDORID_0x07.bin
vendor/etc/camera/LDC_table_src1.dat
vendor/etc/camera/LDC_table_src2.dat
vendor/etc/camera/lf_facerank_model.bin
vendor/etc/camera/mibokeh_712_opencl.bin
vendor/etc/camera/mibokeh_712_parameter.bin
vendor/etc/camera/sdm_ys_32p_120_21_5_perturb50.bin
# Camera sensors
vendor/lib64/camera/com.qti.sensor.imx582_davinci.so
vendor/lib64/camera/com.qti.sensor.imx586_davinci.so
vendor/lib64/camera/com.qti.sensormodule.davinci_luxvisions_imx582.bin
vendor/lib64/camera/com.qti.sensormodule.davinci_luxvisions_imx586.bin
vendor/lib64/camera/com.qti.sensormodule.davinci_luxvisions_ov8856.bin
vendor/lib64/camera/com.qti.sensormodule.davinci_luxvisions_s5k3l6.bin
vendor/lib64/camera/com.qti.sensormodule.davinci_ofilm_imx582.bin
vendor/lib64/camera/com.qti.sensormodule.davinci_ofilm_imx586.bin
vendor/lib64/camera/com.qti.sensormodule.davinci_ofilm_ov8856.bin
vendor/lib64/camera/com.qti.sensormodule.davinci_ofilm_s5k3l6.bin
vendor/lib64/camera/com.qti.sensormodule.davinci_sunny_s5k3t2.bin
vendor/lib64/camera/com.qti.sensor.ov8856_davinci.so
vendor/lib64/camera/com.qti.sensor.s5k3l6_davinci.so
vendor/lib64/camera/com.qti.sensor.s5k3t2_davinci.so
vendor/lib64/camera/com.qti.tuned.davinci_luxvisions_imx582.bin
vendor/lib64/camera/com.qti.tuned.davinci_luxvisions_imx586.bin
vendor/lib64/camera/com.qti.tuned.davinci_luxvisions_ov8856.bin
vendor/lib64/camera/com.qti.tuned.davinci_luxvisions_s5k3l6.bin
vendor/lib64/camera/com.qti.tuned.davinci_ofilm_imx582.bin
vendor/lib64/camera/com.qti.tuned.davinci_ofilm_imx586.bin
vendor/lib64/camera/com.qti.tuned.davinci_ofilm_ov8856.bin
vendor/lib64/camera/com.qti.tuned.davinci_ofilm_s5k3l6.bin
vendor/lib64/camera/com.qti.tuned.davinci_sunny_s5k3t2.bin
vendor/lib64/camera/com.qti.tuned.default.bin
vendor/lib64/camera/fdconfigpreview.bin
vendor/lib64/camera/fdconfigpreviewlite.bin
vendor/lib64/camera/fdconfigvideo.bin
vendor/lib64/camera/fdconfigvideolite.bin
# Camera firmware
vendor/firmware/CAMERA_ICP.elf
# Camera motor
vendor/bin/hw/vendor.xiaomi.hardware.motor@1.0-service
vendor/etc/step_motor/mi_camera_config.xml
vendor/lib64/hw/vendor.xiaomi.hardware.motor@1.0-impl.so
vendor/lib64/libmivendor_module_calibration.so
vendor/lib64/libmivendor_module_hall.so
vendor/lib64/libmivendor_module_motor.so
vendor/lib64/mi.motor.daemon.so
# Camera (popup sound effects)
media/audio/ui/popup_cangmen_down.ogg
media/audio/ui/popup_cangmen_up.ogg
media/audio/ui/popup_chilun_down.ogg
media/audio/ui/popup_chilun_up.ogg
media/audio/ui/popup_jijia_down.ogg
media/audio/ui/popup_jijia_up.ogg
media/audio/ui/popup_mofa_down.ogg
media/audio/ui/popup_mofa_up.ogg
media/audio/ui/popup_muqin_down.ogg
media/audio/ui/popup_muqin_up.ogg
media/audio/ui/popup_yingyan_down.ogg
media/audio/ui/popup_yingyan_up.ogg
# Charger
vendor/bin/hvdcp_opti
@ -369,10 +157,6 @@ vendor/lib64/libtinyxml2_1.so
# Display - from NX627J 20201029.204053
vendor/lib64/libsdedrm.so|582910d21139781ad9e414c35207584f51e035e2
# Display calibration - from MIUI 12.0.3
vendor/etc/qdcm_calib_data_ss_ea_fhd_cmd_dsi_panel.xml|4c8c166bba6ef7de86d7ab3c722dc7afc8e18a8d
vendor/etc/qdcm_calib_data_ss_eb_fhd_cmd_dsi_panel.xml|9592ec2725e2be9b43a13d7ba87ef2a10ba5e249
# DPM
framework/tcmclient.jar
system_ext/bin/dpmd
@ -422,15 +206,6 @@ vendor/etc/init/vendor.qti.hardware.dsp@1.0-service.rc
vendor/etc/seccomp_policy/vendor.qti.hardware.dsp.policy
vendor/lib64/vendor.qti.hardware.dsp@1.0.so
# Fingerprint
vendor/bin/hw/android.hardware.biometrics.fingerprint@2.1-service
vendor/etc/init/android.hardware.biometrics.fingerprint@2.1-service.rc
-vendor/etc/vintf/manifest/android.hardware.biometrics.fingerprint@2.1-service.xml
vendor/lib64/hw/fingerprint.goodix_fod.so
vendor/lib64/libgf_hal.so
vendor/lib64/vendor.goodix.hardware.biometrics.fingerprint@2.1.so
vendor/lib64/vendor.xiaomi.hardware.fingerprintextension@1.0.so
# FM
system_ext/lib64/fm_helium.so
system_ext/lib64/libfm-hci.so
@ -470,15 +245,6 @@ vendor/lib/libllvm-glnext.so
vendor/lib/libllvm-qcom.so
vendor/lib/libOpenCL.so
# Graphics firmware
vendor/firmware/a615_zap.b00
vendor/firmware/a615_zap.b01
vendor/firmware/a615_zap.b02
vendor/firmware/a615_zap.elf
vendor/firmware/a615_zap.mdt
vendor/firmware/a618_gmu.bin
vendor/firmware/a630_sqe.fw
# Gatekeeper
vendor/bin/hw/android.hardware.gatekeeper@1.0-service-qti
vendor/etc/init/android.hardware.gatekeeper@1.0-service-qti.rc
@ -576,13 +342,6 @@ vendor/lib64/vendor.qti.imsrtpservice@3.0.so
# IPA
vendor/etc/init/ipa_fws.rc
vendor/firmware/ipa_fws.b00
vendor/firmware/ipa_fws.b01
vendor/firmware/ipa_fws.b02
vendor/firmware/ipa_fws.b03
vendor/firmware/ipa_fws.b04
vendor/firmware/ipa_fws.elf
vendor/firmware/ipa_fws.mdt
# Keymaster
vendor/bin/hw/android.hardware.keymaster@3.0-service-qti
@ -638,9 +397,6 @@ vendor/lib/vendor.qti.hardware.vpp@1.1.so
vendor/lib/vendor.qti.hardware.vpp@1.2.so
vendor/lib/vendor.qti.hardware.vpp@1.3.so
# NFC
vendor/lib/libsn100u_fw.so
# Perf
vendor/bin/hw/vendor.qti.hardware.perf@2.2-service
vendor/bin/msm_irqbalance
@ -778,59 +534,6 @@ vendor/radio/qcril_database/upgrade/5_version_update_ecc_table.sql
vendor/radio/qcril_database/upgrade/6_version_update_ecc_table.sql
vendor/radio/qcril_database/upgrade/7_version_update_ecc_table.sql
# Sensors
vendor/bin/sensors.qti
vendor/etc/init/init.vendor.sensors.rc
vendor/etc/init/vendor.sensors.qti.rc
vendor/etc/sensors/hals.conf
vendor/lib64/libsensorslog.so
vendor/lib64/libsnsapi.so
vendor/lib64/libsnsdiaglog.so
vendor/lib64/libsns_fastRPC_util.so
vendor/lib64/libsns_low_lat_stream_stub.so
vendor/lib64/libssc.so
vendor/lib64/sensors.ssc.so
# Sensors config
vendor/etc/sensors/config/adux1050_0.json
vendor/etc/sensors/config/ak991x_dri_0.json
vendor/etc/sensors/config/icm4x6xx_0.json
vendor/etc/sensors/config/lsm6ds3c_0.json
vendor/etc/sensors/config/sm6150_adux1050_0.json
vendor/etc/sensors/config/sm6150_ak991x_0.json
vendor/etc/sensors/config/sm6150_icm4x6xx_0.json
vendor/etc/sensors/config/sm6150_lsm6ds3c_0.json
vendor/etc/sensors/config/sm6150_power_0.json
vendor/etc/sensors/config/sm6150_tcs3701.json
vendor/etc/sensors/config/sns_amd.json
vendor/etc/sensors/config/sns_amd_sw_disabled.json
vendor/etc/sensors/config/sns_aod.json
vendor/etc/sensors/config/sns_basic_gestures.json
vendor/etc/sensors/config/sns_bring_to_ear.json
vendor/etc/sensors/config/sns_ccd.json
vendor/etc/sensors/config/sns_cm.json
vendor/etc/sensors/config/sns_dae.json
vendor/etc/sensors/config/sns_device_orient.json
vendor/etc/sensors/config/sns_diag_filter.json
vendor/etc/sensors/config/sns_distance_bound.json
vendor/etc/sensors/config/sns_dpc.json
vendor/etc/sensors/config/sns_facing.json
vendor/etc/sensors/config/sns_fmv.json
vendor/etc/sensors/config/sns_geomag_rv.json
vendor/etc/sensors/config/sns_gyro_cal.json
vendor/etc/sensors/config/sns_mag_cal.json
vendor/etc/sensors/config/sns_multishake.json
vendor/etc/sensors/config/sns_nonui.json
vendor/etc/sensors/config/sns_pedometer.json
vendor/etc/sensors/config/sns_rmd.json
vendor/etc/sensors/config/sns_rotv.json
vendor/etc/sensors/config/sns_smd.json
vendor/etc/sensors/config/sns_tilt.json
vendor/etc/sensors/config/sns_tilt_sw_enabled.json
vendor/etc/sensors/config/sns_tilt_to_wake.json
vendor/etc/sensors/config/tcs3701.json
vendor/etc/sensors/sns_reg_config
# Soter
-app/SoterService/SoterService.apk
vendor/bin/hw/vendor.qti.hardware.soter@1.0-service
@ -838,37 +541,12 @@ vendor/etc/init/vendor.qti.hardware.soter@1.0-service.rc
vendor/lib64/hw/vendor.qti.hardware.soter@1.0-impl.so
vendor/lib64/vendor.qti.hardware.soter@1.0.so
# Thermal
vendor/bin/mi_thermald
vendor/bin/thermal-engine
vendor/etc/init/init.mi_thermald.rc
vendor/etc/thermal-arvr.conf
vendor/etc/thermal-camera.conf
vendor/etc/thermal-chg-only.conf
vendor/etc/thermal-engine.conf
vendor/etc/thermal-map.conf
vendor/etc/thermal-nolimits.conf
vendor/etc/thermal-normal.conf
vendor/etc/thermal-phone.conf
vendor/etc/thermal-tgame.conf
vendor/etc/thermald-devices.conf
vendor/lib64/libthermalclient.so
# Time
-vendor/app/TimeService/TimeService.apk
vendor/bin/time_daemon
vendor/etc/init/init.time_daemon.rc
vendor/lib64/libtime_genoff.so
# Touchfeature
vendor/bin/hw/vendor.xiaomi.hardware.touchfeature@1.0-service
vendor/etc/init/vendor.xiaomi.hardware.touchfeature@1.0-service.rc
vendor/lib64/hw/vendor.xiaomi.hardware.touchfeature@1.0-impl.so
# Touchscreen firmware
vendor/firmware/goodix_gt9886_limit_f10_first.tporder
vendor/firmware/goodix_gt9886_limit_f10_second.tporder
# WiFi Display
-framework/WfdCommon.jar
system_ext/bin/wfdservice

View File

@ -1,51 +0,0 @@
# Copyright (c) 2018, The Linux Foundation. All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are
# met:
# * Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# * Redistributions in binary form must reproduce the above
# copyright notice, this list of conditions and the following
# disclaimer in the documentation and/or other materials provided
# with the distribution.
# * Neither the name of The Linux Foundation nor the names of its
# contributors may be used to endorse or promote products derived
# from this software without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
# BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
# OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
# Android fstab file.
# The filesystem that contains the filesystem checker binary (typically /system) cannot
# specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK
#TODO: Add 'check' as fs_mgr_flags with data partition.
# Currently we dont have e2fsck compiled. So fs check would failed.
#<src> <mnt_point> <type> <mnt_flags and options> <fs_mgr_flags>
/dev/block/bootdevice/by-name/boot /boot emmc defaults recoveryonly
/dev/block/bootdevice/by-name/recovery /recovery emmc defaults recoveryonly
/dev/block/bootdevice/by-name/system / ext4 ro,barrier=1,discard wait,avb
/dev/block/bootdevice/by-name/vendor /vendor ext4 ro,barrier=1 wait,recoveryonly
/dev/block/bootdevice/by-name/cache /cache ext4 nosuid,noatime,nodev,barrier=1 wait
/dev/block/bootdevice/by-name/userdata /data f2fs noatime,nosuid,nodev,nodiscard,fsync_mode=nobarrier,reserve_root=32768,resgid=1065,inlinecrypt wait,check,fileencryption=ice,wrappedkey,quota,reservedsize=128M,latemount
/dev/block/bootdevice/by-name/modem /vendor/firmware_mnt vfat ro,shortname=lower,uid=1000,gid=1000,dmask=227,fmask=337,context=u:object_r:firmware_file:s0 wait
/dev/block/bootdevice/by-name/dsp /vendor/dsp ext4 ro,nosuid,nodev,barrier=1 wait
/dev/block/bootdevice/by-name/persist /mnt/vendor/persist ext4 noatime,nosuid,nodev,barrier=1 wait,check
/dev/block/bootdevice/by-name/bluetooth /vendor/bt_firmware vfat ro,shortname=lower,uid=1002,gid=3002,dmask=227,fmask=337,context=u:object_r:bt_firmware_file:s0 wait
/devices/platform/soc/a600000.ssusb/a600000.dwc3/xhci-hcd.0.auto* auto auto defaults voldmanaged=usbotg:auto
# Need to have this entry in here even though the mount point itself is no longer needed.
# The update_engine code looks for this entry in order to determine the boot device address
# and fails if it does not find it.
/dev/block/bootdevice/by-name/misc /misc emmc defaults defaults
/dev/block/zram0 none swap defaults zramsize=2684350464,max_comp_streams=8

View File

@ -41,21 +41,6 @@ on init
chown cameraserver cameraserver /dev/cpuset/camera-daemon/tasks
chmod 0660 /dev/cpuset/camera-daemon/tasks
# Camera motor
chown system camera /dev/drv8846_dev
chown system camera /dev/akm09970
chmod 0660 /dev/drv8846_dev
chmod 0660 /dev/akm09970
on init && property:ro.boot.hwc=GLOBAL
setprop ro.boot.product.hardware.sku davinci
on init && property:ro.boot.hwc=CN
setprop ro.boot.product.hardware.sku davinci
on property:ro.boot.product.hardware.sku=davinci
enable vendor.nfc_hal_service
on fs
mount_all --early
@ -212,17 +197,3 @@ service vendor.nv_mac /vendor/bin/nv_mac
user system
group system inet net_admin wifi net_raw
oneshot
service vendor.motor /vendor/bin/hw/vendor.xiaomi.hardware.motor@1.0-service
class hal
user system
group system
writepid /dev/cpuset/system-background/tasks
service vendor.nfc_hal_service /vendor/bin/hw/android.hardware.nfc@1.2-service
override
class hal
user nfc
group nfc
writepid /dev/cpuset/system-background/tasks
disabled

View File

@ -15,7 +15,7 @@
-->
<!-- Pixel specific wifi overlays -->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.android.wifi.resources.davinci"
package="com.android.wifi.resources.xiaomi_sm6150"
android:versionCode="1"
android:versionName="1.0">
<application android:hasCode="false" />

View File

@ -57,7 +57,4 @@
<!-- Indicates that wifi link probing is supported on this device -->
<bool name="config_wifi_link_probing_supported">true</bool>
<!-- Do not translate. Default access point SSID used for tethering -->
<string name="wifi_tether_configure_ssid_default" translatable="false">Xiaomi Mi 9T</string>
</resources>

View File

@ -1,7 +0,0 @@
attribute hal_motor;
attribute hal_motor_client;
attribute hal_motor_server;
attribute hal_touchfeature;
attribute hal_touchfeature_client;
attribute hal_touchfeature_server;

View File

@ -1 +0,0 @@
hal_client_domain(cameraserver, hal_motor)

View File

@ -3,7 +3,6 @@
# Display
/sys/devices/platform/soc/[a-f0-9]+.qcom,mdss_mdp/drm/card([0-3])+/card([0-3])+-DSI-1/panel_info u:object_r:vendor_sysfs_graphics:s0
/sys/devices/platform/soc/soc:qcom,dsi-display/fod_ui u:object_r:sysfs_fod:s0
/sys/devices/platform/soc/soc:qcom,dsi-display/hbm u:object_r:sysfs_hbm:s0
# Fingerprint
@ -11,15 +10,8 @@
/data/vendor/goodix(/.*)? u:object_r:fingerprint_data_file:s0
# HALs
/vendor/bin/hw/android\.hardware\.light@2\.0-service\.davinci u:object_r:hal_light_default_exec:s0
/vendor/bin/hw/vendor\.lineage\.biometrics\.fingerprint\.inscreen@1\.0-service\.davinci u:object_r:hal_lineage_fod_default_exec:s0
/vendor/bin/hw/vendor\.lineage\.livedisplay@2\.0-service\.davinci u:object_r:hal_lineage_livedisplay_qti_exec:s0
/vendor/bin/hw/vendor\.xiaomi\.hardware\.motor@1\.0-service u:object_r:hal_motor_default_exec:s0
/vendor/bin/hw/vendor\.xiaomi\.hardware\.touchfeature@1\.0-service u:object_r:hal_touchfeature_default_exec:s0
# Motor
/dev/akm09970 u:object_r:hall_device:s0
/dev/drv8846_dev u:object_r:motor_device:s0
/vendor/bin/hw/android\.hardware\.light@2\.0-service\.xiaomi_sm6150 u:object_r:hal_light_default_exec:s0
/vendor/bin/hw/vendor\.lineage\.livedisplay@2\.0-service\.xiaomi_sm6150 u:object_r:hal_lineage_livedisplay_qti_exec:s0
# Remosaic
/vendor/bin/remosaic_daemon u:object_r:remosaic_daemon_exec:s0
@ -27,9 +19,6 @@
# WiFi
/vendor/bin/nv_mac u:object_r:vendor_wcnss_service_exec:s0
# Touchfeature
/dev/xiaomi-touch u:object_r:touchfeature_device:s0
# Xiaomi thermal daemon
/vendor/bin/mi_thermald u:object_r:mi_thermald_exec:s0
/data/vendor/thermal(/.*)? u:object_r:thermal_data_file:s0

View File

@ -1,10 +0,0 @@
type sysfs_fod, sysfs_type, fs_type;
allow hal_lineage_fod_default sysfs_fod:file rw_file_perms;
allow hal_lineage_fod_default vendor_sysfs_graphics:file rw_file_perms;
allow hal_lineage_fod_default hal_fingerprint_hwservice_xiaomi:hwservice_manager find;
allow hal_lineage_fod_default hal_touchfeature_hwservice_xiaomi:hwservice_manager find;
binder_call(hal_lineage_fod_default, hal_fingerprint_default)
binder_call(hal_lineage_fod_default, hal_touchfeature_default)

View File

@ -1,26 +0,0 @@
type hal_motor_hwservice_xiaomi, hwservice_manager_type;
type hall_device, dev_type;
type motor_device, dev_type;
type hal_motor_default, domain;
hal_server_domain(hal_motor_default, hal_motor)
binder_call(hal_motor_client, hal_motor_server)
binder_call(hal_motor_default, system_app)
type hal_motor_default_exec, exec_type, vendor_file_type, file_type;
init_daemon_domain(hal_motor_default)
add_hwservice(hal_motor_server, hal_motor_hwservice_xiaomi)
allow hal_motor_client hal_motor_hwservice_xiaomi:hwservice_manager find;
allow hal_motor_default hall_device:chr_file rw_file_perms;
allow hal_motor_default motor_device:chr_file rw_file_perms;
allow hal_motor_default vendor_persist_sensors_file:dir rw_dir_perms;
allow hal_motor_default vendor_persist_sensors_file:file rw_file_perms;
allow hal_motor_default mnt_vendor_file:dir { search };
vndbinder_use(hal_motor_default)

View File

@ -1,19 +0,0 @@
type hal_touchfeature_hwservice_xiaomi, hwservice_manager_type;
type touchfeature_device, dev_type;
type vendor_touchfeature_prop, property_type;
type hal_touchfeature_default, domain;
hal_server_domain(hal_touchfeature_default, hal_touchfeature)
binder_call(hal_touchfeature_client, hal_touchfeature_server)
type hal_touchfeature_default_exec, exec_type, vendor_file_type, file_type;
init_daemon_domain(hal_touchfeature_default)
add_hwservice(hal_touchfeature_server, hal_touchfeature_hwservice_xiaomi)
allow hal_touchfeature_client hal_touchfeature_hwservice_xiaomi:hwservice_manager find;
allow hal_touchfeature_default touchfeature_device:chr_file rw_file_perms;
set_prop(hal_touchfeature_default, vendor_touchfeature_prop)
vndbinder_use(hal_touchfeature_default)

View File

@ -1,4 +1,2 @@
vendor.goodix.hardware.biometrics.fingerprint::IGoodixFingerprintDaemon u:object_r:hal_fingerprint_hwservice_xiaomi:s0
vendor.xiaomi.hardware.fingerprintextension::IXiaomiFingerprint u:object_r:hal_fingerprint_hwservice_xiaomi:s0
vendor.xiaomi.hardware.motor::IMotor u:object_r:hal_motor_hwservice_xiaomi:s0
vendor.xiaomi.hardware.touchfeature::ITouchFeature u:object_r:hal_touchfeature_hwservice_xiaomi:s0

View File

@ -21,8 +21,5 @@ vendor.fps_hal. u:object_r:vendor_fp_prop:s0
# Sensors
persist.sensor. u:object_r:persist_sensors_prop:s0
# Touchfeature
ro.vendor.touchfeature.type u:object_r:vendor_touchfeature_prop:s0
# Xiaomi thermal daemon
vendor.sys.thermal. u:object_r:vendor_thermal_normal_prop:s0

View File

@ -1,7 +0,0 @@
allow system_app hal_motor_hwservice_xiaomi:hwservice_manager find;
binder_call(system_app, hal_motor)
allow system_app { motor_device vendor_sysfs_graphics sysfs_leds }:dir search;
allow system_app { cgroup vendor_sysfs_graphics }:file rw_file_perms;
allow system_app { motor_device vendor_sysfs_graphics hall_device }:chr_file rw_file_perms;

1
sepolicy/vendor/vendor_init.te vendored Normal file
View File

@ -0,0 +1 @@
set_prop(vendor_init, vendor_fp_prop)

View File

@ -8,9 +8,6 @@
set -e
DEVICE=davinci
VENDOR=xiaomi
# Load extract_utils and do some sanity checks
MY_DIR="${BASH_SOURCE%/*}"
if [[ ! -d "${MY_DIR}" ]]; then MY_DIR="${PWD}"; fi
@ -24,13 +21,28 @@ if [ ! -f "${HELPER}" ]; then
fi
source "${HELPER}"
# Initialize the helper
setup_vendor "${DEVICE}" "${VENDOR}" "${ANDROID_ROOT}"
# Initialize the helper for common
setup_vendor "${DEVICE_COMMON}" "${VENDOR}" "${ANDROID_ROOT}" true
# Warning headers and guards
write_headers
write_headers "davinci phoenix toco violet"
# The standard common blobs
write_makefiles "${MY_DIR}/proprietary-files.txt" true
# Finish
write_footers
if [ -s "${MY_DIR}/../${DEVICE}/proprietary-files.txt" ]; then
# Reinitialize the helper for device
setup_vendor "${DEVICE}" "${VENDOR}" "${ANDROID_ROOT}" false
# Warning headers and guards
write_headers
# The standard device blobs
write_makefiles "${MY_DIR}/../${DEVICE}/proprietary-files.txt" true
# Finish
write_footers
fi

View File

@ -14,14 +14,11 @@
# limitations under the License.
#
# Product launched with 9.0
$(call inherit-product, $(SRC_TARGET_DIR)/product/product_launched_with_p.mk)
# Setup dalvik vm configs
$(call inherit-product, frameworks/native/build/phone-xhdpi-6144-dalvik-heap.mk)
# Call the proprietary setup
$(call inherit-product, vendor/xiaomi/davinci/davinci-vendor.mk)
$(call inherit-product, vendor/xiaomi/sm6150-common/sm6150-common-vendor.mk)
# Additional native libraries
PRODUCT_COPY_FILES += \
@ -70,13 +67,10 @@ PRODUCT_PACKAGES += \
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/configs/audio/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml \
$(LOCAL_PATH)/configs/audio/audio_io_policy.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_io_policy.conf \
$(LOCAL_PATH)/configs/audio/audio_platform_info_intcodec.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info_intcodec.xml \
$(LOCAL_PATH)/configs/audio/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml \
$(LOCAL_PATH)/configs/audio/audio_tuning_mixer_tavil.txt:$(TARGET_COPY_OUT_VENDOR)/etc/audio_tuning_mixer_tavil.txt \
$(LOCAL_PATH)/configs/audio/mixer_paths_idp.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_idp.xml
$(LOCAL_PATH)/configs/audio/audio_tuning_mixer_tavil.txt:$(TARGET_COPY_OUT_VENDOR)/etc/audio_tuning_mixer_tavil.txt
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/configs/audio/sound_trigger_mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths.xml \
$(LOCAL_PATH)/configs/audio/sound_trigger_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_platform_info.xml
PRODUCT_COPY_FILES += \
@ -97,10 +91,6 @@ PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.bluetooth_le.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth_le.xml \
frameworks/native/data/etc/android.hardware.bluetooth.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth.xml
# Boot animation
TARGET_SCREEN_HEIGHT := 2340
TARGET_SCREEN_WIDTH := 1080
# Camera
PRODUCT_PACKAGES += \
android.hardware.camera.provider@2.4-impl \
@ -119,10 +109,6 @@ PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.camera.full.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.full.xml \
frameworks/native/data/etc/android.hardware.camera.raw.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.raw.xml
# Camera motor
PRODUCT_PACKAGES += \
vendor.xiaomi.hardware.motor@1.0.vendor
# Device-specific settings
PRODUCT_PACKAGES += \
XiaomiParts
@ -152,22 +138,14 @@ PRODUCT_PACKAGES += \
android.hardware.drm@1.3-service.clearkey
# Fingerprint
PRODUCT_PACKAGES += \
vendor.lineage.biometrics.fingerprint.inscreen@1.0-service.davinci
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.fingerprint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.fingerprint.xml \
vendor/lineage/config/permissions/vendor.lineage.biometrics.fingerprint.inscreen.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/vendor.lineage.biometrics.fingerprint.inscreen.xml
frameworks/native/data/etc/android.hardware.fingerprint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.fingerprint.xml
# FM
PRODUCT_PACKAGES += \
FM2 \
qcom.fmradio
# Fstab
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/rootdir/etc/fstab.qcom:$(TARGET_COPY_OUT_VENDOR)/etc/fstab.qcom
# GPS
PRODUCT_PACKAGES += \
android.hardware.gnss@2.1-impl-qti \
@ -222,12 +200,12 @@ PRODUCT_COPY_FILES += \
# Lights
PRODUCT_PACKAGES += \
android.hardware.light@2.0-service.davinci
android.hardware.light@2.0-service.xiaomi_sm6150
# LiveDisplay
PRODUCT_PACKAGES += \
vendor.lineage.livedisplay@2.0-service-sdm \
vendor.lineage.livedisplay@2.0-service.davinci
vendor.lineage.livedisplay@2.0-service.xiaomi_sm6150
# Media
PRODUCT_PACKAGES += \
@ -262,38 +240,12 @@ PRODUCT_COPY_FILES += \
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.software.ipsec_tunnels.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.ipsec_tunnels.xml
# NFC
PRODUCT_PACKAGES += \
com.android.nfc_extras \
NfcNci \
SecureElement \
Tag
PRODUCT_PACKAGES += \
android.hardware.nfc@1.2-service
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/configs/nfc/libnfc-nci.conf:$(TARGET_COPY_OUT_PRODUCT)/etc/libnfc-nci.conf \
$(LOCAL_PATH)/configs/nfc/libnfc-nxp.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-nxp.conf
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.nfc.xml:$(TARGET_COPY_OUT_ODM)/etc/permissions/sku_davinci/android.hardware.nfc.xml \
frameworks/native/data/etc/android.hardware.nfc.ese.xml:$(TARGET_COPY_OUT_ODM)/etc/permissions/sku_davinci/android.hardware.nfc.ese.xml \
frameworks/native/data/etc/android.hardware.nfc.hce.xml:$(TARGET_COPY_OUT_ODM)/etc/permissions/sku_davinci/android.hardware.nfc.hce.xml \
frameworks/native/data/etc/android.hardware.nfc.hcef.xml:$(TARGET_COPY_OUT_ODM)/etc/permissions/sku_davinci/android.hardware.nfc.hcef.xml \
frameworks/native/data/etc/android.hardware.nfc.uicc.xml:$(TARGET_COPY_OUT_ODM)/etc/permissions/sku_davinci/android.hardware.nfc.uicc.xml \
frameworks/native/data/etc/com.android.nfc_extras.xml:$(TARGET_COPY_OUT_ODM)/etc/permissions/sku_davinci/com.android.nfc_extras.xml \
frameworks/native/data/etc/com.nxp.mifare.xml:$(TARGET_COPY_OUT_ODM)/etc/permissions/sku_davinci/com.nxp.mifare.xml
# Overlay
DEVICE_PACKAGE_OVERLAYS += \
$(LOCAL_PATH)/overlay \
$(LOCAL_PATH)/overlay-lineage \
$(LOCAL_PATH)/overlay-system
$(LOCAL_PATH)/overlay-lineage
PRODUCT_ENFORCE_RRO_TARGETS += *
PRODUCT_ENFORCE_RRO_EXCLUDED_OVERLAYS += \
$(LOCAL_PATH)/overlay-system
# Power
PRODUCT_PACKAGES += \
@ -327,7 +279,6 @@ PRODUCT_PACKAGES += \
# Screen density
PRODUCT_AAPT_CONFIG := normal
PRODUCT_AAPT_PREF_CONFIG := xxhdpi
TARGET_SCREEN_DENSITY := 440
# Sensors
PRODUCT_PACKAGES += \

View File

@ -26,7 +26,6 @@ vendor.audio.feature.battery_listener.enable=false
vendor.audio.feature.compr_cap.enable=false
vendor.audio.feature.compress_in.enable=false
vendor.audio.feature.compress_meta_data.enable=true
vendor.audio.feature.compr_voip.enable=false
vendor.audio.feature.concurrent_capture.enable=false
vendor.audio.feature.custom_stereo.enable=true
vendor.audio.feature.deepbuffer_as_primary.enable=false
@ -80,7 +79,6 @@ vendor.audio.usb.disable.sidetone=true
vendor.audio.use.sw.alac.decoder=true
vendor.audio.use.sw.ape.decoder=true
vendor.audio.volume.headset.gain.depcal=true
vendor.voice.path.for.pcm.voip=false
# Bluetooth
persist.bluetooth.a2dp_offload.cap=sbc-aac-aptx-aptxhd-ldac
@ -151,12 +149,6 @@ vendor.gralloc.disable_ubwc=0
# FRP
ro.frp.pst=/dev/block/bootdevice/by-name/frp
# HVDCP
persist.vendor.cp.taper_term_mv=6500
persist.vendor.qg_cld_coff_gain=1.5
persist.vendor.qg_coff_gain=1
persist.vendor.qg_cold_temp=-150
# IMS
persist.dbg.volte_avail_ovr=1
persist.dbg.vt_avail_ovr=1