diff --git a/Android.mk b/Android.mk index 877406e..ea616a5 100644 --- a/Android.mk +++ b/Android.mk @@ -17,4 +17,101 @@ LOCAL_PATH := $(call my-dir) ifeq ($(TARGET_DEVICE),miatoll) include $(call all-makefiles-under,$(LOCAL_PATH)) + +include $(CLEAR_VARS) + +FIRMWARE_MOUNT_POINT := $(TARGET_OUT_VENDOR)/firmware_mnt +$(FIRMWARE_MOUNT_POINT): $(LOCAL_INSTALLED_MODULE) + @echo "Creating $(FIRMWARE_MOUNT_POINT)" + @mkdir -p $(TARGET_OUT_VENDOR)/firmware_mnt + +BT_FIRMWARE_MOUNT_POINT := $(TARGET_OUT_VENDOR)/bt_firmware +$(BT_FIRMWARE_MOUNT_POINT): $(LOCAL_INSTALLED_MODULE) + @echo "Creating $(BT_FIRMWARE_MOUNT_POINT)" + @mkdir -p $(TARGET_OUT_VENDOR)/bt_firmware + +DSP_MOUNT_POINT := $(TARGET_OUT_VENDOR)/dsp +$(DSP_MOUNT_POINT): $(LOCAL_INSTALLED_MODULE) + @echo "Creating $(DSP_MOUNT_POINT)" + @mkdir -p $(TARGET_OUT_VENDOR)/dsp + +ALL_DEFAULT_INSTALLED_MODULES += $(FIRMWARE_MOUNT_POINT) $(BT_FIRMWARE_MOUNT_POINT) $(DSP_MOUNT_POINT) + +RFS_MSM_ADSP_SYMLINKS := $(TARGET_OUT_VENDOR)/rfs/msm/adsp/ +$(RFS_MSM_ADSP_SYMLINKS): $(LOCAL_INSTALLED_MODULE) + @echo "Creating RFS MSM ADSP folder structure: $@" + @rm -rf $@/* + @mkdir -p $(dir $@)/readonly/vendor + $(hide) ln -sf /data/vendor/tombstones/rfs/lpass $@/ramdumps + $(hide) ln -sf /mnt/vendor/persist/rfs/msm/adsp $@/readwrite + $(hide) ln -sf /mnt/vendor/persist/rfs/shared $@/shared + $(hide) ln -sf /mnt/vendor/persist/hlos_rfs/shared $@/hlos + $(hide) ln -sf /vendor/firmware_mnt $@/readonly/firmware + $(hide) ln -sf /vendor/firmware $@/readonly/vendor/firmware + +RFS_MSM_CDSP_SYMLINKS := $(TARGET_OUT_VENDOR)/rfs/msm/cdsp/ +$(RFS_MSM_CDSP_SYMLINKS): $(LOCAL_INSTALLED_MODULE) + @echo "Creating RFS MSM CDSP folder structure: $@" + @rm -rf $@/* + @mkdir -p $(dir $@)/readonly/vendor + $(hide) ln -sf /data/vendor/tombstones/rfs/cdsp $@/ramdumps + $(hide) ln -sf /mnt/vendor/persist/rfs/msm/cdsp $@/readwrite + $(hide) ln -sf /mnt/vendor/persist/rfs/shared $@/shared + $(hide) ln -sf /mnt/vendor/persist/hlos_rfs/shared $@/hlos + $(hide) ln -sf /vendor/firmware_mnt $@/readonly/firmware + $(hide) ln -sf /vendor/firmware $@/readonly/vendor/firmware + +RFS_MSM_MPSS_SYMLINKS := $(TARGET_OUT_VENDOR)/rfs/msm/mpss/ +$(RFS_MSM_MPSS_SYMLINKS): $(LOCAL_INSTALLED_MODULE) + @echo "Creating RFS MSM MPSS folder structure: $@" + @rm -rf $@/* + @mkdir -p $(dir $@)/readonly/vendor + $(hide) ln -sf /data/vendor/tombstones/rfs/modem $@/ramdumps + $(hide) ln -sf /mnt/vendor/persist/rfs/msm/mpss $@/readwrite + $(hide) ln -sf /mnt/vendor/persist/rfs/shared $@/shared + $(hide) ln -sf /mnt/vendor/persist/hlos_rfs/shared $@/hlos + $(hide) ln -sf /vendor/firmware_mnt $@/readonly/firmware + $(hide) ln -sf /vendor/firmware $@/readonly/vendor/firmware + +RFS_MSM_SLPI_SYMLINKS := $(TARGET_OUT_VENDOR)/rfs/msm/slpi/ +$(RFS_MSM_SLPI_SYMLINKS): $(LOCAL_INSTALLED_MODULE) + @echo "Creating RFS MSM SLPI folder structure: $@" + @rm -rf $@/* + @mkdir -p $(dir $@)/readonly/vendor + $(hide) ln -sf /data/vendor/tombstones/rfs/slpi $@/ramdumps + $(hide) ln -sf /mnt/vendor/persist/rfs/msm/slpi $@/readwrite + $(hide) ln -sf /mnt/vendor/persist/rfs/shared $@/shared + $(hide) ln -sf /mnt/vendor/persist/hlos_rfs/shared $@/hlos + $(hide) ln -sf /vendor/firmware_mnt $@/readonly/firmware + $(hide) ln -sf /vendor/firmware $@/readonly/vendor/firmware + +WIFI_FIRMWARE_SYMLINKS := $(TARGET_OUT_VENDOR)/firmware/wlan/qca_cld/ +$(WIFI_FIRMWARE_SYMLINKS): $(LOCAL_INSTALLED_MODULE) + @echo "Creating wifi firmware symlinks: $@" + mkdir -p $@ + $(hide) ln -sf /vendor/etc/wifi/WCNSS_qcom_cfg.ini $@/WCNSS_qcom_cfg.ini + +ALL_DEFAULT_INSTALLED_MODULES += $(RFS_MSM_ADSP_SYMLINKS) $(RFS_MSM_CDSP_SYMLINKS) $(RFS_MSM_MPSS_SYMLINKS) $(RFS_MSM_SLPI_SYMLINKS) +ALL_DEFAULT_INSTALLED_MODULES += $(WIFI_FIRMWARE_SYMLINKS) + +# Symlinks +EGL_LIBRARIES := \ + libEGL_adreno.so \ + libGLESv2_adreno.so \ + libq3dtools_adreno.so + +EGL_32_SYMLINKS := $(addprefix $(TARGET_OUT_VENDOR)/lib/,$(notdir $(EGL_LIBRARIES))) +$(EGL_32_SYMLINKS): $(LOCAL_INSTALLED_MODULE) + @echo "EGL 32 lib link: $@" + @mkdir -p $(dir $@) + @rm -rf $@ + $(hide) ln -sf egl/$(notdir $@) $@ + +EGL_64_SYMLINKS := $(addprefix $(TARGET_OUT_VENDOR)/lib64/,$(notdir $(EGL_LIBRARIES))) +$(EGL_64_SYMLINKS): $(LOCAL_INSTALLED_MODULE) + @echo "EGL lib link: $@" + @mkdir -p $(dir $@) + @rm -rf $@ + $(hide) ln -sf egl/$(notdir $@) $@ + endif diff --git a/BoardConfig.mk b/BoardConfig.mk index 8b719c2..0dc5527 100644 --- a/BoardConfig.mk +++ b/BoardConfig.mk @@ -4,15 +4,77 @@ # SPDX-License-Identifier: Apache-2.0 # -# Inherit from sm6250-common -include device/xiaomi/sm6250-common/BoardConfigCommon.mk - DEVICE_PATH := device/xiaomi/miatoll -# HIDL -ODM_MANIFEST_SKUS += \ - nfc +BUILD_BROKEN_DUP_RULES := true +BUILD_BROKEN_ELF_PREBUILT_PRODUCT_COPY_FILES := true +# Architecture +TARGET_ARCH := arm64 +TARGET_ARCH_VARIANT := armv8-2a +TARGET_CPU_ABI := arm64-v8a +TARGET_CPU_ABI2 := +TARGET_CPU_VARIANT := cortex-a76 + +TARGET_2ND_ARCH := arm +TARGET_2ND_ARCH_VARIANT := armv8-a +TARGET_2ND_CPU_ABI := armeabi-v7a +TARGET_2ND_CPU_ABI2 := armeabi +TARGET_2ND_CPU_VARIANT := cortex-a76 + +# Audio +AUDIO_FEATURE_ENABLED_AHAL_EXT := false +AUDIO_FEATURE_ENABLED_DLKM := true +AUDIO_FEATURE_ENABLED_DS2_DOLBY_DAP := false +AUDIO_FEATURE_ENABLED_DTS_EAGLE := false +AUDIO_FEATURE_ENABLED_DYNAMIC_LOG := false +AUDIO_FEATURE_ENABLED_EXTENDED_COMPRESS_FORMAT := true +AUDIO_FEATURE_ENABLED_GEF_SUPPORT := true +AUDIO_FEATURE_ENABLED_HW_ACCELERATED_EFFECTS := false +AUDIO_FEATURE_ENABLED_INSTANCE_ID := true +AUDIO_FEATURE_ENABLED_PROXY_DEVICE := true +AUDIO_FEATURE_ENABLED_SSR := true +AUDIO_FEATURE_ENABLED_SVA_MULTI_STAGE := true +BOARD_SUPPORTS_OPENSOURCE_STHAL := true +BOARD_SUPPORTS_SOUND_TRIGGER := true +BOARD_USES_ALSA_AUDIO := true +USE_CUSTOM_AUDIO_POLICY := 1 + +# Bluetooth +BOARD_BLUETOOTH_BDROID_BUILDCFG_INCLUDE_DIR := $(DEVICE_PATH)/bluetooth/include + +# Bootloader +TARGET_BOOTLOADER_BOARD_NAME := atoll +TARGET_NO_BOOTLOADER := true + +# Camera +TARGET_DISABLED_UBWC := true + +# Display +TARGET_SCREEN_DENSITY := 440 +TARGET_USES_COLOR_METADATA := true +TARGET_USES_DISPLAY_RENDER_INTENTS := true +TARGET_USES_DRM_PP := true +TARGET_USES_GRALLOC1 := true +TARGET_USES_GRALLOC4 := true +TARGET_USES_HWC2 := true +TARGET_USES_ION := true + +# Filesystem +TARGET_FS_CONFIG_GEN := $(DEVICE_PATH)/config.fs + +# FM +BOARD_HAVE_QCOM_FM := true + +# HIDL +DEVICE_FRAMEWORK_COMPATIBILITY_MATRIX_FILE := \ + hardware/qcom-caf/common/vendor_framework_compatibility_matrix.xml \ + $(DEVICE_PATH)/device_framework_matrix.xml \ + $(DEVICE_PATH)/lineage_device_framework_matrix.xml +DEVICE_MATRIX_FILE := $(DEVICE_PATH)/compatibility_matrix.xml +DEVICE_MANIFEST_FILE := $(DEVICE_PATH)/manifest.xml + +ODM_MANIFEST_SKUS += nfc ODM_MANIFEST_NFC_FILES := $(DEVICE_PATH)/manifest_nfc.xml # Init @@ -20,10 +82,134 @@ TARGET_INIT_VENDOR_LIB := //$(DEVICE_PATH):init_xiaomi_miatoll TARGET_RECOVERY_DEVICE_MODULES := init_xiaomi_miatoll # Kernel +BOARD_KERNEL_BASE := 0x00000000 +BOARD_KERNEL_IMAGE_NAME := Image +BOARD_KERNEL_PAGESIZE := 4096 +BOARD_KERNEL_SEPARATED_DTBO := true + +BOARD_BOOT_HEADER_VERSION := 2 +BOARD_MKBOOTIMG_ARGS += --header_version $(BOARD_BOOT_HEADER_VERSION) +BOARD_INCLUDE_DTB_IN_BOOTIMG := true + +TARGET_KERNEL_ADDITIONAL_FLAGS += LD=ld.lld AR=llvm-ar NM=llvm-nm STRIP=llvm-strip OBJCOPY=llvm-objcopy OBJDUMP=llvm-objdump TARGET_KERNEL_CONFIG := vendor/xiaomi/miatoll_defconfig +TARGET_KERNEL_SOURCE := kernel/xiaomi/sm6250 + +BOARD_KERNEL_CMDLINE := androidboot.console=ttyMSM0 +BOARD_KERNEL_CMDLINE += androidboot.hardware=qcom +BOARD_KERNEL_CMDLINE += androidboot.memcg=1 +BOARD_KERNEL_CMDLINE += androidboot.usbcontroller=a600000.dwc3 +BOARD_KERNEL_CMDLINE += cgroup.memory=nokmem,nosocket +BOARD_KERNEL_CMDLINE += console=ttyMSM0,115200n8 +BOARD_KERNEL_CMDLINE += earlycon=msm_geni_serial,0xa88000 +BOARD_KERNEL_CMDLINE += loop.max_part=7 +BOARD_KERNEL_CMDLINE += lpm_levels.sleep_disabled=1 +BOARD_KERNEL_CMDLINE += msm_rtb.enabled=1 +BOARD_KERNEL_CMDLINE += msm_rtb.filter=0x237 +BOARD_KERNEL_CMDLINE += service_locator.enable=1 +BOARD_KERNEL_CMDLINE += swiotlb=1 +BOARD_KERNEL_CMDLINE += video=vfb:640x400,bpp=32,memsize=3072000 # OTA assert TARGET_OTA_ASSERT_DEVICE := curtana,excalibur,gram,joyeuse,miatoll +# Partitions +BOARD_BOOTIMAGE_PARTITION_SIZE := 134217728 +BOARD_CACHEIMAGE_PARTITION_SIZE := 402653184 +BOARD_DTBOIMG_PARTITION_SIZE := 8388608 +BOARD_RECOVERYIMAGE_PARTITION_SIZE := 134217728 +BOARD_SUPER_PARTITION_SIZE := 8589934592 +BOARD_USERDATAIMAGE_PARTITION_SIZE := 112421842944 + +BOARD_SUPER_PARTITION_GROUPS := qti_dynamic_partitions +BOARD_QTI_DYNAMIC_PARTITIONS_PARTITION_LIST := system system_ext vendor product +BOARD_QTI_DYNAMIC_PARTITIONS_SIZE := 8585740288 + +BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE := ext4 +BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE := ext4 +BOARD_SYSTEM_EXTIMAGE_FILE_SYSTEM_TYPE := ext4 +BOARD_SYSTEMIMAGE_FILE_SYSTEM_TYPE := ext4 +BOARD_USERDATAIMAGE_FILE_SYSTEM_TYPE := f2fs +BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE := ext4 + +BOARD_PRODUCTIMAGE_EXTFS_INODE_COUNT := -1 +BOARD_PRODUCTIMAGE_PARTITION_RESERVED_SIZE := 1887436800 +BOARD_SYSTEMIMAGE_EXTFS_INODE_COUNT := -1 +BOARD_SYSTEMIMAGE_PARTITION_RESERVED_SIZE := 1887436800 +BOARD_SYSTEM_EXTIMAGE_EXTFS_INODE_COUNT := -1 +BOARD_SYSTEM_EXTIMAGE_PARTITION_RESERVED_SIZE := 104857600 +BOARD_VENDORIMAGE_PARTITION_RESERVED_SIZE := 104857600 + +TARGET_COPY_OUT_SYSTEM_EXT := system_ext +TARGET_COPY_OUT_VENDOR := vendor +TARGET_COPY_OUT_PRODUCT := product + +BOARD_USES_METADATA_PARTITION := true + +BOARD_FLASH_BLOCK_SIZE := 131072 + +# Platform +BOARD_USES_QCOM_HARDWARE := true +BOARD_VENDOR := xiaomi +TARGET_BOARD_PLATFORM := atoll + +# Power +TARGET_TAP_TO_WAKE_NODE := "/sys/touchpanel/double_tap" + +# Properties +TARGET_ODM_PROP += $(DEVICE_PATH)/odm.prop +TARGET_SYSTEM_PROP += $(DEVICE_PATH)/system.prop +TARGET_VENDOR_PROP += $(DEVICE_PATH)/vendor.prop + +# Recovery +BOARD_INCLUDE_RECOVERY_DTBO := true +TARGET_RECOVERY_FSTAB := $(DEVICE_PATH)/rootdir/etc/fstab.qcom +TARGET_RECOVERY_PIXEL_FORMAT := "RGBX_8888" +TARGET_USERIMAGES_USE_EXT4 := true +TARGET_USERIMAGES_USE_F2FS := true + +# Releasetools +TARGET_RELEASETOOLS_EXTENSIONS := $(DEVICE_PATH) + +# RIL +ENABLE_VENDOR_RIL_SERVICE := true + +# Security patch level +VENDOR_SECURITY_PATCH := 2022-06-05 + +# Sepolicy +include device/qcom/sepolicy_vndr/SEPolicy.mk +SYSTEM_EXT_PRIVATE_SEPOLICY_DIRS += $(DEVICE_PATH)/sepolicy/private +BOARD_SEPOLICY_DIRS += $(DEVICE_PATH)/sepolicy/vendor + +# Verified Boot +BOARD_AVB_ENABLE := true +BOARD_AVB_MAKE_VBMETA_IMAGE_ARGS += --flags 3 +BOARD_AVB_RECOVERY_KEY_PATH := external/avb/test/data/testkey_rsa4096.pem +BOARD_AVB_RECOVERY_ALGORITHM := SHA256_RSA4096 +BOARD_AVB_RECOVERY_ROLLBACK_INDEX := $(PLATFORM_SECURITY_PATCH_TIMESTAMP) +BOARD_AVB_RECOVERY_ROLLBACK_INDEX_LOCATION := 1 +BOARD_AVB_VBMETA_SYSTEM := system system_ext product +BOARD_AVB_VBMETA_SYSTEM_KEY_PATH := external/avb/test/data/testkey_rsa4096.pem +BOARD_AVB_VBMETA_SYSTEM_ALGORITHM := SHA256_RSA4096 +BOARD_AVB_VBMETA_SYSTEM_ROLLBACK_INDEX := $(PLATFORM_SECURITY_PATCH_TIMESTAMP) +BOARD_AVB_VBMETA_SYSTEM_ROLLBACK_INDEX_LOCATION := 1 + +# WiFi +BOARD_WLAN_DEVICE := qcwcn +BOARD_HOSTAPD_DRIVER := NL80211 +BOARD_HOSTAPD_PRIVATE_LIB := lib_driver_cmd_$(BOARD_WLAN_DEVICE) +BOARD_WPA_SUPPLICANT_DRIVER := NL80211 +BOARD_WPA_SUPPLICANT_PRIVATE_LIB := lib_driver_cmd_$(BOARD_WLAN_DEVICE) +QC_WIFI_HIDL_FEATURE_DUAL_AP := true +WIFI_DRIVER_DEFAULT := qca_cld3 +WIFI_DRIVER_STATE_CTRL_PARAM := "/dev/wlan" +WIFI_DRIVER_STATE_OFF := "OFF" +WIFI_DRIVER_STATE_ON := "ON" +WIFI_HIDL_FEATURE_AWARE := true +WIFI_HIDL_FEATURE_DUAL_INTERFACE := true +WIFI_HIDL_UNIFIED_SUPPLICANT_SERVICE_RC_ENTRY := true +WPA_SUPPLICANT_VERSION := VER_0_8_X + # Inherit proprietary blobs include vendor/xiaomi/miatoll/BoardConfigVendor.mk diff --git a/audio/audio_effects.xml b/audio/audio_effects.xml new file mode 100644 index 0000000..add0925 --- /dev/null +++ b/audio/audio_effects.xml @@ -0,0 +1,116 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/audio/audio_io_policy.conf b/audio/audio_io_policy.conf new file mode 100644 index 0000000..0f1f93e --- /dev/null +++ b/audio/audio_io_policy.conf @@ -0,0 +1,126 @@ +# List of profiles for the output device session where stream is routed. +# A stream opened with the inputs attributes which match the "flags" and +# "formats" as specified in the profile is routed to a device at +# sample rate specified under "sampling_rates" and bit width under +# "bit_width" and the topology extracted from the acdb data against +# the "app_type". +# +# the flags and formats are specified using the strings corresponding to +# enums in audio.h and audio_policy.h. They are concatenated with "|" +# without space or "\n". +# the flags and formats should match the ones in "audio_policy.conf" + +outputs { + default { + flags AUDIO_OUTPUT_FLAG_PRIMARY + formats AUDIO_FORMAT_PCM_16_BIT + sampling_rates 48000 + bit_width 16 + app_type 69937 + } + proaudio { + flags AUDIO_OUTPUT_FLAG_FAST|AUDIO_OUTPUT_FLAG_RAW + formats AUDIO_FORMAT_PCM_16_BIT + sampling_rates 48000 + bit_width 16 + app_type 69943 + } + voip_rx { + flags AUDIO_OUTPUT_FLAG_VOIP_RX|AUDIO_OUTPUT_FLAG_DIRECT + formats AUDIO_FORMAT_PCM_16_BIT + sampling_rates 8000|16000|32000|48000 + bit_width 16 + app_type 69946 + } + deep_buffer { + flags AUDIO_OUTPUT_FLAG_DEEP_BUFFER + formats AUDIO_FORMAT_PCM_16_BIT + sampling_rates 48000 + bit_width 16 + app_type 69936 + } + direct_pcm_16 { + flags AUDIO_OUTPUT_FLAG_DIRECT + formats AUDIO_FORMAT_PCM_16_BIT|AUDIO_FORMAT_PCM_24_BIT_PACKED|AUDIO_FORMAT_PCM_8_24_BIT|AUDIO_FORMAT_PCM_32_BIT + sampling_rates 44100|48000|88200|96000|176400|192000 + bit_width 16 + app_type 69936 + } + direct_pcm_24 { + flags AUDIO_OUTPUT_FLAG_DIRECT + formats AUDIO_FORMAT_PCM_24_BIT_PACKED|AUDIO_FORMAT_PCM_8_24_BIT|AUDIO_FORMAT_PCM_32_BIT + sampling_rates 44100|48000|88200|96000|176400|192000|352800|384000 + bit_width 24 + app_type 69940 + } + direct_pcm_32 { + flags AUDIO_OUTPUT_FLAG_DIRECT + formats AUDIO_FORMAT_PCM_32_BIT + sampling_rates 44100|48000|88200|96000|176400|192000|352800|384000 + bit_width 32 + app_type 69942 + } + compress_passthrough { + flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD|AUDIO_OUTPUT_FLAG_NON_BLOCKING|AUDIO_OUTPUT_FLAG_COMPRESS_PASSTHROUGH + formats AUDIO_FORMAT_DTS|AUDIO_FORMAT_DTS_HD|AUDIO_FORMAT_DSD + sampling_rates 32000|44100|48000|88200|96000|176400|192000|352800 + bit_width 16 + app_type 69941 + } + compress_offload_16 { + flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD|AUDIO_OUTPUT_FLAG_NON_BLOCKING + formats AUDIO_FORMAT_MP3|AUDIO_FORMAT_PCM_16_BIT_OFFLOAD|AUDIO_FORMAT_PCM_24_BIT_OFFLOAD|AUDIO_FORMAT_FLAC|AUDIO_FORMAT_ALAC|AUDIO_FORMAT_APE|AUDIO_FORMAT_AAC_LC|AUDIO_FORMAT_AAC_HE_V1|AUDIO_FORMAT_AAC_HE_V2|AUDIO_FORMAT_WMA|AUDIO_FORMAT_WMA_PRO|AUDIO_FORMAT_VORBIS|AUDIO_FORMAT_AAC_ADTS_LC|AUDIO_FORMAT_AAC_ADTS_HE_V1|AUDIO_FORMAT_AAC_ADTS_HE_V2 + sampling_rates 44100|48000|88200|96000|176400|192000 + bit_width 16 + app_type 69936 + } + compress_offload_24 { + flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD|AUDIO_OUTPUT_FLAG_NON_BLOCKING + formats AUDIO_FORMAT_PCM_24_BIT_OFFLOAD|AUDIO_FORMAT_FLAC|AUDIO_FORMAT_ALAC|AUDIO_FORMAT_APE|AUDIO_FORMAT_VORBIS|AUDIO_FORMAT_WMA|AUDIO_FORMAT_WMA_PRO + sampling_rates 44100|48000|88200|96000|176400|192000 + bit_width 24 + app_type 69940 + } +} + +inputs { + record_16bit { + formats AUDIO_FORMAT_PCM_16_BIT + sampling_rates 8000|16000|32000|44100|48000|88200|96000|176400|192000 + bit_width 16 + app_type 69938 + } + record_24bit { + formats AUDIO_FORMAT_PCM_24_BIT_PACKED|AUDIO_FORMAT_PCM_24_BIT + sampling_rates 44100|48000|88200|96000|176400|192000 + bit_width 24 + app_type 69948 + } + record_32bit { + formats AUDIO_FORMAT_PCM_32_BIT|AUDIO_FORMAT_PCM_FLOAT + sampling_rates 44100|48000|88200|96000|176400|192000 + bit_width 32 + app_type 69949 + } + record_compress_16 { + flags AUDIO_INPUT_FLAG_COMPRESS + formats AUDIO_FORMAT_PCM_16_BIT + sampling_rates 8000|16000|32000|44100|48000|88200|96000|176400|192000 + bit_width 16 + app_type 69938 + } + record_compress_24 { + flags AUDIO_INPUT_FLAG_COMPRESS + formats AUDIO_FORMAT_PCM_24_BIT_PACKED|AUDIO_FORMAT_PCM_24_BIT + sampling_rates 44100|48000|88200|96000|176400|192000 + bit_width 24 + app_type 69948 + } + record_compress_32 { + flags AUDIO_INPUT_FLAG_COMPRESS + formats AUDIO_FORMAT_PCM_32_BIT|AUDIO_FORMAT_PCM_FLOAT + sampling_rates 44100|48000|88200|96000|176400|192000 + bit_width 32 + app_type 69949 + } +} diff --git a/audio/audio_platform_info_intcodec.xml b/audio/audio_platform_info_intcodec.xml new file mode 100644 index 0000000..009f1ec --- /dev/null +++ b/audio/audio_platform_info_intcodec.xml @@ -0,0 +1,407 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/audio/audio_policy_configuration.xml b/audio/audio_policy_configuration.xml new file mode 100644 index 0000000..65f95ff --- /dev/null +++ b/audio/audio_policy_configuration.xml @@ -0,0 +1,466 @@ + + + + + + + + + + + + + + + + + + + Earpiece + Speaker + Telephony Tx + Built-In Mic + Built-In Back Mic + FM Tuner + Telephony Rx + + Speaker + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/audio/mixer_paths_wcd937x.xml b/audio/mixer_paths_wcd937x.xml new file mode 100644 index 0000000..dc4c5f8 --- /dev/null +++ b/audio/mixer_paths_wcd937x.xml @@ -0,0 +1,3939 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/audio/sound_trigger_mixer_paths.xml b/audio/sound_trigger_mixer_paths.xml new file mode 100644 index 0000000..7ae3fb1 --- /dev/null +++ b/audio/sound_trigger_mixer_paths.xml @@ -0,0 +1,336 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/audio/sound_trigger_platform_info.xml b/audio/sound_trigger_platform_info.xml new file mode 100644 index 0000000..317f22b --- /dev/null +++ b/audio/sound_trigger_platform_info.xml @@ -0,0 +1,374 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/bluetooth/include/bdroid_buildcfg.h b/bluetooth/include/bdroid_buildcfg.h new file mode 100644 index 0000000..5376040 --- /dev/null +++ b/bluetooth/include/bdroid_buildcfg.h @@ -0,0 +1,31 @@ +/* + * Copyright (c) 2013, The Linux Foundation. All rights reserved. + * Not a Contribution, Apache license notifications and license are retained + * for attribution purposes only. + * + * Copyright (C) 2012 The Android Open Source Project + * Copyright (C) 2018, 2022 The LineageOS Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef _BDROID_BUILDCFG_H +#define _BDROID_BUILDCFG_H + +// Disables read remote device feature +#define MAX_ACL_CONNECTIONS 16 +#define MAX_L2CAP_CHANNELS 16 +#define BLE_VND_INCLUDED TRUE +/* Increasing SEPs to 12 from 6 to support SHO/MCast i.e. two streams per codec */ +#define AVDT_NUM_SEPS 12 +#endif diff --git a/compatibility_matrix.xml b/compatibility_matrix.xml new file mode 100644 index 0000000..7c505a8 --- /dev/null +++ b/compatibility_matrix.xml @@ -0,0 +1,82 @@ + + + android.frameworks.schedulerservice + 1.0 + + ISchedulingPolicyService + default + + + + android.frameworks.sensorservice + 1.0 + + ISensorManager + default + + + + android.hidl.allocator + 1.0 + + IAllocator + ashmem + + + + android.hidl.manager + 1.0 + + IServiceManager + default + + + + android.hidl.memory + 1.0 + + IMapper + ashmem + + + + android.hidl.token + 1.0 + + ITokenManager + default + + + + android.system.wifi.keystore + 1.0 + + IKeystore + default + + + + vendor.qti.hardware.qccsyshal + 1.0 + + IQccsyshal + qccsyshal + + + + vendor.qti.hardware.sigma_miracast + 1.0 + + Isigma_miracast + sigmahal + + + + vendor.qti.hardware.wifi.keystore + 1.0 + + IKeystoreExt + default + + + diff --git a/config.fs b/config.fs new file mode 100644 index 0000000..04d83f6 --- /dev/null +++ b/config.fs @@ -0,0 +1,92 @@ +[AID_VENDOR_QTI_DIAG] +value:2901 + +[AID_VENDOR_QDSS] +value:2902 + +[AID_VENDOR_RFS] +value:2903 + +[AID_VENDOR_RFS_SHARED] +value:2904 + +[AID_VENDOR_ADPL_ODL] +value:2905 + +[AID_VENDOR_QRTR] +value:2906 + +[AID_VENDOR_THERMAL] +value:2907 + +[vendor/bin/hw/android.hardware.bluetooth@1.0-service-qti] +mode: 0755 +user: AID_BLUETOOTH +group: AID_BLUETOOTH +caps: BLOCK_SUSPEND NET_ADMIN + +[vendor/bin/pm-service] +mode: 0755 +user: AID_SYSTEM +group: AID_SYSTEM +caps: NET_BIND_SERVICE SYS_BOOT + +[vendor/bin/pd-mapper] +mode: 0755 +user: AID_SYSTEM +group: AID_SYSTEM +caps: NET_BIND_SERVICE + +[vendor/bin/imsdatadaemon] +mode: 0755 +user: AID_RADIO +group: AID_RADIO +caps: NET_BIND_SERVICE + +[vendor/bin/ims_rtp_daemon] +mode: 0755 +user: AID_RADIO +group: AID_RADIO +caps: NET_BIND_SERVICE + +[vendor/bin/imsrcsd] +mode: 0755 +user: AID_RADIO +group: AID_RADIO +caps: NET_BIND_SERVICE BLOCK_SUSPEND WAKE_ALARM + +[vendor/bin/cnd] +mode: 0755 +user: AID_SYSTEM +group: AID_SYSTEM +caps: NET_BIND_SERVICE BLOCK_SUSPEND NET_ADMIN + +[vendor/bin/slim_daemon] +mode: 0755 +user: AID_GPS +group: AID_GPS +caps: NET_BIND_SERVICE + +[vendor/bin/loc_launcher] +mode: 0755 +user: AID_GPS +group: AID_GPS +caps: SETUID SETGID + +[vendor/bin/xtwifi-client] +mode: 0755 +user: AID_GPS +group: AID_GPS +caps: NET_BIND_SERVICE BLOCK_SUSPEND WAKE_ALARM + +[vendor/bin/sensors.qti] +mode: 0755 +user: AID_SYSTEM +group: AID_SYSTEM +caps: NET_BIND_SERVICE + +[vendor/firmware_mnt/image/*] +mode: 0771 +user: AID_SYSTEM +group: AID_SYSTEM +caps: 0 diff --git a/configs/component-overrides.xml b/configs/component-overrides.xml new file mode 100644 index 0000000..f0d6b4e --- /dev/null +++ b/configs/component-overrides.xml @@ -0,0 +1,21 @@ + + + + + + + + diff --git a/configs/excluded-input-devices.xml b/configs/excluded-input-devices.xml new file mode 100644 index 0000000..6f110ae --- /dev/null +++ b/configs/excluded-input-devices.xml @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/configs/powerhint.json b/configs/powerhint.json new file mode 100644 index 0000000..9bddfb7 --- /dev/null +++ b/configs/powerhint.json @@ -0,0 +1,354 @@ +{ + "Nodes": [ + { + "Name": "CPULittleClusterMaxFreq", + "Path": "/sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq", + "Values": [ + "9999999", + "1324800" + ], + "DefaultIndex": 0, + "ResetOnInit": true + }, + { + "Name": "CPULittleClusterMinFreq", + "Path": "/sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq", + "Values": [ + "9999999", + "1708800", + "1324800", + "576000" + ], + "ResetOnInit": true + }, + { + "Name": "CPUBigClusterMaxFreq", + "Path": "/sys/devices/system/cpu/cpu6/cpufreq/scaling_max_freq", + "Values": [ + "9999999", + "1555200" + ], + "DefaultIndex": 0, + "ResetOnInit": true + }, + { + "Name": "CPUBigClusterMinFreq", + "Path": "/sys/devices/system/cpu/cpu6/cpufreq/scaling_min_freq", + "Values": [ + "9999999", + "1900800", + "825600", + "652800" + ], + "ResetOnInit": true + }, + { + "Name": "GPUMaxFreq", + "Path": "/sys/class/kgsl/kgsl-3d0/max_pwrlevel", + "Values": [ + "0", + "3" + ], + "DefaultIndex": 0, + "ResetOnInit": true + }, + { + "Name": "GPUMinFreq", + "Path": "/sys/class/kgsl/kgsl-3d0/min_pwrlevel", + "Values": [ + "0", + "5" + ], + "ResetOnInit": true + }, + { + "Name": "GPUForceRailOn", + "Path": "/sys/class/kgsl/kgsl-3d0/force_rail_on", + "Values": [ + "1", + "0" + ], + "ResetOnInit": true + }, + { + "Name": "GPUForceClkOn", + "Path": "/sys/class/kgsl/kgsl-3d0/force_clk_on", + "Values": [ + "1", + "0" + ], + "ResetOnInit": true + }, + { + "Name": "GPUIdleTimer", + "Path": "/sys/class/kgsl/kgsl-3d0/idle_timer", + "Values": [ + "10000", + "80" + ], + "ResetOnInit": true + }, + { + "Name": "CPUBWHystTriggerCount", + "Path": "/sys/class/devfreq/soc:qcom,cpu-cpu-llcc-bw/bw_hwmon/hyst_trigger_count", + "Values": [ + "0", + "3" + ], + "ResetOnInit": true + }, + { + "Name": "CPUBWHistMemory", + "Path": "/sys/class/devfreq/soc:qcom,cpu-cpu-llcc-bw/bw_hwmon/hist_memory", + "Values": [ + "0", + "20" + ], + "ResetOnInit": true + }, + { + "Name": "CPUBWHystLength", + "Path": "/sys/class/devfreq/soc:qcom,cpu-cpu-llcc-bw/bw_hwmon/hyst_length", + "Values": [ + "0", + "10" + ], + "ResetOnInit": true + }, + { + "Name": "CPUBWMinFreq", + "Path": "/sys/class/devfreq/soc:qcom,cpu-cpu-llcc-bw/min_freq", + "Values": [ + "14236", + "9155", + "4577" + ], + "ResetOnInit": true + }, + { + "Name": "LLCCBWMinFreq", + "Path": "/sys/class/devfreq/soc:qcom,cpu-llcc-ddr-bw/min_freq", + "Values": [ + "6881", + "2929", + "1144" + ], + "ResetOnInit": true + }, + { + "Name": "L3LittleClusterMinFreq", + "Path": "/sys/class/devfreq/soc:qcom,cpu0-cpu-l3-lat/min_freq", + "Values": [ + "1459200000", + "300000000" + ], + "ResetOnInit": true + }, + { + "Name": "L3BigClusterMinFreq", + "Path": "/sys/class/devfreq/soc:qcom,cpu6-cpu-l3-lat/min_freq", + "Values": [ + "1459200000", + "300000000" + ], + "ResetOnInit": true + }, + { + "Name": "PowerHALMainState", + "Path": "vendor.powerhal.state", + "Values": [ + "SUSTAINED_PERFORMANCE", + "" + ], + "Type": "Property" + }, + { + "Name": "PowerHALAudioState", + "Path": "vendor.powerhal.audio", + "Values": [ + "AUDIO_STREAMING_LOW_LATENCY", + "" + ], + "Type": "Property" + }, + { + "Name": "PowerHALRenderingState", + "Path": "vendor.powerhal.rendering", + "Values": [ + "EXPENSIVE_RENDERING", + "" + ], + "Type": "Property" + } + ], + "Actions": [ + { + "PowerHint": "SUSTAINED_PERFORMANCE", + "Node": "PowerHALMainState", + "Duration": 0, + "Value": "SUSTAINED_PERFORMANCE" + }, + { + "PowerHint": "SUSTAINED_PERFORMANCE", + "Node": "CPUBigClusterMaxFreq", + "Duration": 0, + "Value": "1555200" + }, + { + "PowerHint": "SUSTAINED_PERFORMANCE", + "Node": "CPULittleClusterMaxFreq", + "Duration": 0, + "Value": "1324800" + }, + { + "PowerHint": "SUSTAINED_PERFORMANCE", + "Node": "GPUMaxFreq", + "Duration": 0, + "Value": "3" + }, + { + "PowerHint": "INTERACTION", + "Node": "CPUBigClusterMinFreq", + "Duration": 0, + "Value": "825600" + }, + { + "PowerHint": "INTERACTION", + "Node": "CPULittleClusterMinFreq", + "Duration": 0, + "Value": "1324800" + }, + { + "PowerHint": "INTERACTION", + "Node": "CPUBWHystTriggerCount", + "Duration": 0, + "Value": "0" + }, + { + "PowerHint": "INTERACTION", + "Node": "CPUBWHystLength", + "Duration": 0, + "Value": "0" + }, + { + "PowerHint": "INTERACTION", + "Node": "CPUBWHistMemory", + "Duration": 0, + "Value": "0" + }, + { + "PowerHint": "INTERACTION", + "Node": "CPUBWMinFreq", + "Duration": 0, + "Value": "9155" + }, + { + "PowerHint": "INTERACTION", + "Node": "LLCCBWMinFreq", + "Duration": 0, + "Value": "2929" + }, + { + "PowerHint": "LAUNCH", + "Node": "CPUBigClusterMaxFreq", + "Duration": 5000, + "Value": "9999999" + }, + { + "PowerHint": "LAUNCH", + "Node": "CPUBigClusterMinFreq", + "Duration": 5000, + "Value": "1900800" + }, + { + "PowerHint": "LAUNCH", + "Node": "CPULittleClusterMinFreq", + "Duration": 5000, + "Value": "1708800" + }, + { + "PowerHint": "LAUNCH", + "Node": "CPUBWHystTriggerCount", + "Duration": 5000, + "Value": "0" + }, + { + "PowerHint": "LAUNCH", + "Node": "CPUBWHystLength", + "Duration": 5000, + "Value": "0" + }, + { + "PowerHint": "LAUNCH", + "Node": "CPUBWHistMemory", + "Duration": 5000, + "Value": "0" + }, + { + "PowerHint": "LAUNCH", + "Node": "CPUBWMinFreq", + "Duration": 5000, + "Value": "14236" + }, + { + "PowerHint": "LAUNCH", + "Node": "GPUForceClkOn", + "Duration": 5000, + "Value": "1" + }, + { + "PowerHint": "LAUNCH", + "Node": "GPUForceRailOn", + "Duration": 5000, + "Value": "1" + }, + { + "PowerHint": "LAUNCH", + "Node": "GPUIdleTimer", + "Duration": 5000, + "Value": "10000" + }, + { + "PowerHint": "LAUNCH", + "Node": "LLCCBWMinFreq", + "Duration": 5000, + "Value": "6881" + }, + { + "PowerHint": "LAUNCH", + "Node": "L3LittleClusterMinFreq", + "Duration": 5000, + "Value": "1459200000" + }, + { + "PowerHint": "LAUNCH", + "Node": "L3BigClusterMinFreq", + "Duration": 5000, + "Value": "1459200000" + }, + { + "PowerHint": "AUDIO_STREAMING_LOW_LATENCY", + "Node": "PowerHALAudioState", + "Duration": 0, + "Value": "AUDIO_STREAMING_LOW_LATENCY" + }, + { + "PowerHint": "EXPENSIVE_RENDERING", + "Node": "PowerHALRenderingState", + "Duration": 0, + "Value": "EXPENSIVE_RENDERING" + }, + { + "PowerHint": "EXPENSIVE_RENDERING", + "Node": "GPUMinFreq", + "Duration": 0, + "Value": "0" + }, + { + "PowerHint": "EXPENSIVE_RENDERING", + "Node": "GPUMaxFreq", + "Duration": 0, + "Value": "0" + } + ] +} diff --git a/configs/thermal_info_config.json b/configs/thermal_info_config.json new file mode 100644 index 0000000..4b176e8 --- /dev/null +++ b/configs/thermal_info_config.json @@ -0,0 +1,242 @@ +{ + "Sensors":[ + { + "Name":"cpu-0-0-usr", + "Type":"CPU", + "HotThreshold":[ + "NAN", + "NAN", + "NAN", + 95.0, + "NAN", + "NAN", + 125.0 + ], + "VrThreshold":"NAN", + "Multiplier":0.001 + }, + { + "Name":"cpu-0-1-usr", + "Type":"CPU", + "HotThreshold":[ + "NAN", + "NAN", + "NAN", + 95.0, + "NAN", + "NAN", + 125.0 + ], + "VrThreshold":"NAN", + "Multiplier":0.001 + }, + { + "Name":"cpu-0-2-usr", + "Type":"CPU", + "HotThreshold":[ + "NAN", + "NAN", + "NAN", + 95.0, + "NAN", + "NAN", + 125.0 + ], + "VrThreshold":"NAN", + "Multiplier":0.001 + }, + { + "Name":"cpu-0-3-usr", + "Type":"CPU", + "HotThreshold":[ + "NAN", + "NAN", + "NAN", + 95.0, + "NAN", + "NAN", + 125.0 + ], + "VrThreshold":"NAN", + "Multiplier":0.001 + }, + { + "Name":"cpu-0-4-usr", + "Type":"CPU", + "HotThreshold":[ + "NAN", + "NAN", + "NAN", + 95.0, + "NAN", + "NAN", + 125.0 + ], + "VrThreshold":"NAN", + "Multiplier":0.001 + }, + { + "Name":"cpu-0-5-usr", + "Type":"CPU", + "HotThreshold":[ + "NAN", + "NAN", + "NAN", + 95.0, + "NAN", + "NAN", + 125.0 + ], + "VrThreshold":"NAN", + "Multiplier":0.001 + }, + { + "Name":"cpu-1-0-usr", + "Type":"CPU", + "HotThreshold":[ + "NAN", + "NAN", + "NAN", + 95.0, + "NAN", + "NAN", + 125.0 + ], + "VrThreshold":"NAN", + "Multiplier":0.001 + }, + { + "Name":"cpu-1-1-usr", + "Type":"CPU", + "HotThreshold":[ + "NAN", + "NAN", + "NAN", + 95.0, + "NAN", + "NAN", + 125.0 + ], + "VrThreshold":"NAN", + "Multiplier":0.001 + }, + { + "Name":"cpu-1-2-usr", + "Type":"CPU", + "HotThreshold":[ + "NAN", + "NAN", + "NAN", + 95.0, + "NAN", + "NAN", + 125.0 + ], + "VrThreshold":"NAN", + "Multiplier":0.001 + }, + { + "Name":"cpu-1-3-usr", + "Type":"CPU", + "HotThreshold":[ + "NAN", + "NAN", + "NAN", + 95.0, + "NAN", + "NAN", + 125.0 + ], + "VrThreshold":"NAN", + "Multiplier":0.001 + }, + { + "Name":"gpuss-0-usr", + "Type":"GPU", + "HotThreshold":[ + "NAN", + "NAN", + "NAN", + 95.0, + "NAN", + "NAN", + 125.0 + ], + "VrThreshold":"NAN", + "Multiplier":0.001 + }, + { + "Name":"gpuss-1-usr", + "Type":"GPU", + "HotThreshold":[ + "NAN", + "NAN", + "NAN", + 95.0, + "NAN", + "NAN", + 125.0 + ], + "VrThreshold":"NAN", + "Multiplier":0.001 + }, + { + "Name":"battery", + "Type":"BATTERY", + "HotThreshold":[ + "NAN", + "NAN", + "NAN", + "NAN", + "NAN", + "NAN", + 60.0 + ], + "VrThreshold":"NAN", + "Multiplier":0.001 + }, + { + "Name":"quiet-therm-usr", + "Type":"SKIN", + "HotThreshold":[ + "NAN", + 43.0, + 45.0, + 48.0, + 50.0, + 54.0, + 58.0 + ], + "HotHysteresis":[ + 0.0, + 1.9, + 1.9, + 1.9, + 1.9, + 1.9, + 1.9 + ], + "VrThreshold":"NAN", + "Multiplier":0.001, + "Monitor":true + } + ], + "CoolingDevices":[ + { + "Name":"thermal-cpufreq-0", + "Type":"CPU" + }, + { + "Name":"thermal-cpufreq-7", + "Type":"CPU" + }, + { + "Name":"thermal-devfreq-0", + "Type":"GPU" + }, + { + "Name":"battery", + "Type":"BATTERY" + } + ] +} diff --git a/device.mk b/device.mk index 6a2fc06..787b2bb 100644 --- a/device.mk +++ b/device.mk @@ -4,8 +4,233 @@ # SPDX-License-Identifier: Apache-2.0 # -# Inherit from sm6250-common -$(call inherit-product, device/xiaomi/sm6250-common/atoll.mk) +# Enable project quotas and casefolding for emulated storage without sdcardfs +$(call inherit-product, $(SRC_TARGET_DIR)/product/emulated_storage.mk) + +# Enable updating of APEXes +$(call inherit-product, $(SRC_TARGET_DIR)/product/updatable_apex.mk) + +# Include GSI keys +$(call inherit-product, $(SRC_TARGET_DIR)/product/gsi_keys.mk) + +# Setup dalvik vm configs +$(call inherit-product, frameworks/native/build/phone-xhdpi-4096-dalvik-heap.mk) + +# AAPT +PRODUCT_AAPT_CONFIG := normal +PRODUCT_AAPT_PREF_CONFIG := xxhdpi + +# Audio +PRODUCT_PACKAGES += \ + android.hardware.audio@6.0-impl \ + android.hardware.audio.effect@6.0-impl \ + android.hardware.audio.service \ + android.hardware.bluetooth.audio@2.1-impl \ + android.hardware.soundtrigger@2.2-impl + +PRODUCT_PACKAGES += \ + audio.bluetooth.default \ + audio.primary.atoll \ + audio.r_submix.default \ + audio.usb.default \ + +PRODUCT_PACKAGES += \ + liba2dpoffload \ + libbatterylistener \ + libcomprcapture \ + libexthwplugin \ + libhdmiedid \ + libhfp \ + libqcompostprocbundle \ + libqcomvisualizer \ + libqcomvoiceprocessing \ + libsndmonitor \ + libspkrprot \ + libssrec \ + libvolumelistener \ + sound_trigger.primary.atoll:32 + +PRODUCT_COPY_FILES += \ + $(call find-copy-subdir-files,*,$(LOCAL_PATH)/audio/,$(TARGET_COPY_OUT_VENDOR)/etc) + +PRODUCT_COPY_FILES += \ + frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \ + frameworks/av/services/audiopolicy/config/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml \ + frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/r_submix_audio_policy_configuration.xml + +# Bluetooth +PRODUCT_PACKAGES += \ + android.hardware.bluetooth@1.1.vendor \ + vendor.qti.hardware.bluetooth_audio@2.1.vendor \ + vendor.qti.hardware.btconfigstore@1.0.vendor \ + vendor.qti.hardware.btconfigstore@2.0.vendor + +# Camera +PRODUCT_PACKAGES += \ + android.hardware.camera.provider@2.4-impl \ + android.hardware.camera.provider@2.4-service_64 \ + vendor.qti.hardware.camera.device@1.0.vendor + +PRODUCT_PACKAGES += \ + libMegviiFacepp-0.5.2 \ + libmegface + +PRODUCT_PACKAGES += \ + libcamera2ndk_vendor \ + libdng_sdk.vendor \ + libgui_vendor \ + libstdc++.vendor + +# Component overrides +PRODUCT_COPY_FILES += \ + $(LOCAL_PATH)/configs/component-overrides.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sysconfig/component-overrides.xml + +# DebugFS +PRODUCT_SET_DEBUGFS_RESTRICTIONS := true + +# Display +PRODUCT_PACKAGES += \ + android.hardware.graphics.composer@2.4-impl \ + android.hardware.graphics.composer@2.4-service + +PRODUCT_PACKAGES += \ + android.hardware.graphics.mapper@3.0-impl-qti-display \ + android.hardware.graphics.mapper@4.0-impl-qti-display + +PRODUCT_PACKAGES += \ + android.hardware.memtrack@1.0-impl \ + android.hardware.memtrack@1.0-service \ + memtrack.atoll + +PRODUCT_PACKAGES += \ + disable_configstore \ + gralloc.atoll \ + hwcomposer.atoll \ + libdisplayconfig.qti \ + libdisplayconfig.system.qti \ + libqdMetaData \ + libqdMetaData.system \ + libsdmcore \ + libsdmutils \ + libtinyxml \ + libvulkan \ + vendor.display.config@1.5 \ + vendor.display.config@1.11.vendor \ + vendor.display.config@2.0 \ + vendor.display.config@2.0.vendor \ + vendor.qti.hardware.display.allocator-service \ + vendor.qti.hardware.display.mapper@1.1.vendor \ + vendor.qti.hardware.display.mapper@2.0.vendor \ + vendor.qti.hardware.display.mapper@3.0.vendor \ + vendor.qti.hardware.display.mapper@4.0.vendor + +# DRM +PRODUCT_PACKAGES += \ + android.hardware.drm@1.4-service.clearkey + +PRODUCT_PACKAGES += \ + android.hardware.drm@1.4.vendor + +# Fastbootd +PRODUCT_PACKAGES += \ + fastbootd + +# Fingerprint +PRODUCT_PACKAGES += \ + android.hardware.biometrics.fingerprint@2.3-service.xiaomi + +# FM +PRODUCT_PACKAGES += \ + FM2 \ + libqcomfm_jni \ + qcom.fmradio + +# Gatekeeper +PRODUCT_PACKAGES += \ + android.hardware.gatekeeper@1.0.vendor + +# GPS +PRODUCT_PACKAGES += \ + android.hardware.gnss@1.1.vendor \ + android.hardware.gnss@2.1.vendor + +# Health +PRODUCT_PACKAGES += \ + android.hardware.health@2.1-impl \ + android.hardware.health@2.1-service + +# HIDL +PRODUCT_PACKAGES += \ + libhwbinder.vendor + +# HotwordEnrollement app permissions +PRODUCT_COPY_FILES += \ + $(LOCAL_PATH)/permissions/privapp-permissions-hotword.xml:$(TARGET_COPY_OUT_PRODUCT)/etc/permissions/privapp-permissions-hotword.xml + +# Input +PRODUCT_COPY_FILES += \ + $(LOCAL_PATH)/idc/uinput-fpc.idc:$(TARGET_COPY_OUT_VENDOR)/usr/idc/uinput-fpc.idc \ + $(LOCAL_PATH)/idc/uinput-goodix.idc:$(TARGET_COPY_OUT_VENDOR)/usr/idc/uinput-goodix.idc + +PRODUCT_COPY_FILES += \ + $(LOCAL_PATH)/keylayout/gpio-keys.kl:$(TARGET_COPY_OUT_VENDOR)/usr/keylayout/gpio-keys.kl \ + $(LOCAL_PATH)/keylayout/uinput-fpc.kl:$(TARGET_COPY_OUT_VENDOR)/usr/keylayout/uinput-fpc.kl \ + $(LOCAL_PATH)/keylayout/uinput-goodix.kl:$(TARGET_COPY_OUT_VENDOR)/usr/keylayout/uinput-goodix.kl + +# IPACM +PRODUCT_PACKAGES += \ + ipacm \ + IPACM_cfg.xml + +# IR +PRODUCT_PACKAGES += \ + android.hardware.ir@1.0-impl \ + android.hardware.ir@1.0-service + +# Keymaster +PRODUCT_PACKAGES += \ + android.hardware.keymaster@4.1.vendor + +# Lights +PRODUCT_PACKAGES += \ + android.hardware.light-service.xiaomi + +# LiveDisplay +PRODUCT_PACKAGES += \ + vendor.lineage.livedisplay@2.0-service-sdm + +# Media +PRODUCT_PACKAGES += \ + libavservices_minijail \ + libavservices_minijail.vendor \ + libcodec2_hidl@1.0.vendor \ + libcodec2_vndk.vendor + +PRODUCT_COPY_FILES += \ + $(LOCAL_PATH)/media/media_codecs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs.xml \ + $(LOCAL_PATH)/media/media_codecs_performance.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance.xml \ + $(LOCAL_PATH)/media/media_codecs_vendor.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_vendor.xml \ + $(LOCAL_PATH)/media/media_codecs_vendor_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_vendor_audio.xml \ + $(LOCAL_PATH)/media/media_profiles.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles.xml \ + $(LOCAL_PATH)/media/media_profiles_V1_0.xml:$(TARGET_COPY_OUT_ODM)/etc/media_profiles_V1_0.xml \ + $(LOCAL_PATH)/media/media_profiles_vendor.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_vendor.xml + +PRODUCT_COPY_FILES += \ + frameworks/av/media/libstagefright/data/media_codecs_google_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_audio.xml \ + frameworks/av/media/libstagefright/data/media_codecs_google_c2.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_c2.xml \ + frameworks/av/media/libstagefright/data/media_codecs_google_c2_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_c2_audio.xml \ + frameworks/av/media/libstagefright/data/media_codecs_google_c2_video.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_c2_video.xml \ + frameworks/av/media/libstagefright/data/media_codecs_google_telephony.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_telephony.xml \ + frameworks/av/media/libstagefright/data/media_codecs_google_video.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_video.xml \ + frameworks/av/media/libstagefright/data/media_codecs_google_video_le.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_video_le.xml + +# Net +PRODUCT_PACKAGES += \ + android.system.net.netd@1.1.vendor \ + +# Neural networks +PRODUCT_PACKAGES += \ + android.hardware.neuralnetworks@1.3.vendor # NFC PRODUCT_PACKAGES += \ @@ -26,20 +251,221 @@ PRODUCT_COPY_FILES += \ frameworks/native/data/etc/com.android.nfc_extras.xml:$(TARGET_COPY_OUT_ODM)/etc/permissions/sku_nfc/com.android.nfc_extras.xml \ frameworks/native/data/etc/com.nxp.mifare.xml:$(TARGET_COPY_OUT_ODM)/etc/permissions/sku_nfc/com.nxp.mifare.xml +# OMX +PRODUCT_PACKAGES += \ + libOmxAacEnc \ + libOmxAmrEnc \ + libOmxCore \ + libOmxEvrcEnc \ + libOmxG711Enc \ + libOmxQcelp13Enc \ + libOmxVdec \ + libOmxVenc \ + libstagefrighthw + +# Overlays +PRODUCT_ENFORCE_RRO_TARGETS := * + +PRODUCT_PACKAGES += \ + CarrierConfigResCommon \ + SM6250Frameworks \ + SM6250SystemUI \ + TelephonyResCommon \ + WifiOverlay + +PRODUCT_PACKAGES += \ + SM6250LineageDialer \ + SM6250LineageSDK + +# Partitions +PRODUCT_USE_DYNAMIC_PARTITIONS := true + +# Perf +PRODUCT_PACKAGES += \ + libqti-perfd-client + +# Permissions +PRODUCT_COPY_FILES += \ + frameworks/native/data/etc/android.hardware.audio.low_latency.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.audio.low_latency.xml \ + frameworks/native/data/etc/android.hardware.audio.pro.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.audio.pro.xml \ + frameworks/native/data/etc/android.hardware.bluetooth.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth.xml \ + 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.camera.flash-autofocus.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.flash-autofocus.xml \ + frameworks/native/data/etc/android.hardware.camera.front.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.front.xml \ + 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 \ + frameworks/native/data/etc/android.hardware.consumerir.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.consumerir.xml \ + frameworks/native/data/etc/android.hardware.fingerprint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.fingerprint.xml \ + frameworks/native/data/etc/android.hardware.location.gps.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.location.gps.xml \ + frameworks/native/data/etc/android.hardware.opengles.aep.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.opengles.aep.xml \ + frameworks/native/data/etc/android.hardware.se.omapi.ese.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.ese.xml \ + frameworks/native/data/etc/android.hardware.se.omapi.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.uicc.xml \ + frameworks/native/data/etc/android.hardware.sensor.accelerometer.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.accelerometer.xml \ + frameworks/native/data/etc/android.hardware.sensor.compass.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.compass.xml \ + frameworks/native/data/etc/android.hardware.sensor.gyroscope.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.gyroscope.xml \ + frameworks/native/data/etc/android.hardware.sensor.light.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.light.xml \ + frameworks/native/data/etc/android.hardware.sensor.proximity.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.proximity.xml \ + frameworks/native/data/etc/android.hardware.sensor.stepcounter.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.stepcounter.xml \ + frameworks/native/data/etc/android.hardware.sensor.stepdetector.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.stepdetector.xml \ + frameworks/native/data/etc/android.hardware.telephony.cdma.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.cdma.xml \ + frameworks/native/data/etc/android.hardware.telephony.gsm.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.gsm.xml \ + frameworks/native/data/etc/android.hardware.telephony.ims.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.ims.xml \ + frameworks/native/data/etc/android.hardware.touchscreen.multitouch.jazzhand.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.touchscreen.multitouch.jazzhand.xml \ + frameworks/native/data/etc/android.hardware.usb.accessory.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.accessory.xml \ + frameworks/native/data/etc/android.hardware.usb.host.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.host.xml \ + frameworks/native/data/etc/android.hardware.vulkan.compute-0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.compute-0.xml \ + frameworks/native/data/etc/android.hardware.vulkan.level-1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.level-1.xml \ + frameworks/native/data/etc/android.hardware.vulkan.version-1_1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.version-1_1.xml \ + frameworks/native/data/etc/android.hardware.wifi.aware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.aware.xml \ + frameworks/native/data/etc/android.hardware.wifi.direct.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.direct.xml \ + frameworks/native/data/etc/android.hardware.wifi.passpoint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.passpoint.xml \ + frameworks/native/data/etc/android.hardware.wifi.rtt.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.rtt.xml \ + frameworks/native/data/etc/android.hardware.wifi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.xml \ + frameworks/native/data/etc/android.software.device_id_attestation.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.device_id_attestation.xml \ + frameworks/native/data/etc/android.software.ipsec_tunnels.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.ipsec_tunnels.xml \ + frameworks/native/data/etc/android.software.midi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.midi.xml \ + frameworks/native/data/etc/android.software.opengles.deqp.level-2020-03-01.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.opengles.deqp.level.xml \ + frameworks/native/data/etc/android.software.sip.voip.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.sip.voip.xml \ + frameworks/native/data/etc/android.software.verified_boot.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.verified_boot.xml \ + frameworks/native/data/etc/android.software.vulkan.deqp.level-2020-03-01.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.vulkan.deqp.level.xml + +# Power +PRODUCT_PACKAGES += \ + android.hardware.power-service.xiaomi-libperfmgr + +PRODUCT_COPY_FILES += \ + $(LOCAL_PATH)/configs/powerhint.json:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.json + +# QMI +PRODUCT_PACKAGES += \ + libjson \ + libqti_vndfwk_detect.vendor \ + libvndfwk_detect_jni.qti.vendor + +# RIL +PRODUCT_PACKAGES += \ + libprotobuf-cpp-full \ + librmnetctl \ + libxml2 + +PRODUCT_PACKAGES += \ + android.hardware.radio@1.6.vendor \ + android.hardware.radio.config@1.3.vendor \ + android.hardware.radio.deprecated@1.0.vendor \ + android.hardware.secure_element@1.2.vendor + # Rootdir PRODUCT_PACKAGES += \ - init.device.rc + init.qcom.early_boot.sh \ + init.qcom.sh \ + init.qti.chg_policy.sh + +PRODUCT_PACKAGES += \ + init.device.rc \ + init.qcom.power.rc \ + init.qcom.rc \ + init.target.rc \ + fstab.qcom \ + ueventd.qcom.rc + +PRODUCT_COPY_FILES += \ + $(LOCAL_PATH)/rootdir/etc/fstab.qcom:$(TARGET_COPY_OUT_RAMDISK)/fstab.qcom \ + $(LOCAL_PATH)/rootdir/etc/init.recovery.qcom.rc:recovery/root/init.recovery.qcom.rc + +# Sensors +PRODUCT_PACKAGES += \ + android.hardware.sensors@2.1-service.multihal + +PRODUCT_PACKAGES += \ + libsensorndkbridge + +# Shipping API level +PRODUCT_SHIPPING_API_LEVEL := 29 # Soong namespaces PRODUCT_SOONG_NAMESPACES += \ - $(LOCAL_PATH) + $(LOCAL_PATH) \ + hardware/google/interfaces \ + hardware/google/pixel \ + hardware/xiaomi + +# Telephony +PRODUCT_PACKAGES += \ + ims-ext-common \ + ims_ext_common.xml \ + qti-telephony-hidl-wrapper \ + qti_telephony_hidl_wrapper.xml \ + qti-telephony-utils \ + qti_telephony_utils.xml \ + telephony-ext + +PRODUCT_BOOT_JARS += \ + telephony-ext # Thermal +PRODUCT_PACKAGES += \ + android.hardware.thermal@2.0-service.pixel \ + thermal_symlinks + +PRODUCT_COPY_FILES += \ + $(LOCAL_PATH)/configs/thermal_info_config.json:$(TARGET_COPY_OUT_VENDOR)/etc/thermal_info_config.json + PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/configs/thermal-engine-curtana.conf:$(TARGET_COPY_OUT_VENDOR)/etc/thermal-engine-curtana.conf \ $(LOCAL_PATH)/configs/thermal-engine-excalibur.conf:$(TARGET_COPY_OUT_VENDOR)/etc/thermal-engine-excalibur.conf \ $(LOCAL_PATH)/configs/thermal-engine-gram.conf:$(TARGET_COPY_OUT_VENDOR)/etc/thermal-engine-gram.conf \ $(LOCAL_PATH)/configs/thermal-engine-joyeuse.conf:$(TARGET_COPY_OUT_VENDOR)/etc/thermal-engine-joyeuse.conf +# Trust +PRODUCT_PACKAGES += \ + vendor.lineage.trust@1.0-service + +# USB +PRODUCT_PACKAGES += \ + android.hardware.usb@1.0-service + +PRODUCT_PACKAGES += \ + init.qcom.usb.rc \ + init.qcom.usb.sh + +PRODUCT_SOONG_NAMESPACES += \ + vendor/qcom/opensource/usb/etc + +# Vendor service manager +PRODUCT_PACKAGES += \ + vndservicemanager + +# Vibrator +PRODUCT_PACKAGES += \ + vendor.qti.hardware.vibrator.service + +PRODUCT_COPY_FILES += \ + $(LOCAL_PATH)/configs/excluded-input-devices.xml:$(TARGET_COPY_OUT_VENDOR)/etc/excluded-input-devices.xml + +# WiFi +PRODUCT_PACKAGES += \ + android.hardware.wifi@1.0-service \ + hostapd \ + libwpa_client \ + libwifi-hal-ctrl \ + libwifi-hal-qcom \ + vendor.qti.hardware.wifi.hostapd@1.2.vendor \ + vendor.qti.hardware.wifi.supplicant@2.2.vendor \ + wpa_supplicant \ + wpa_supplicant.conf + +PRODUCT_COPY_FILES += \ + $(LOCAL_PATH)/wifi/p2p_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/p2p_supplicant_overlay.conf \ + $(LOCAL_PATH)/wifi/wpa_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/wpa_supplicant_overlay.conf \ + $(LOCAL_PATH)/wifi/WCNSS_qcom_cfg.ini:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/WCNSS_qcom_cfg.ini + +# WiFi Display +PRODUCT_PACKAGES += \ + libnl \ + libwfdaac_vendor + +PRODUCT_BOOT_JARS += \ + WfdCommon + # Inherit proprietary targets $(call inherit-product, vendor/xiaomi/miatoll/miatoll-vendor.mk) diff --git a/device_framework_matrix.xml b/device_framework_matrix.xml new file mode 100644 index 0000000..3bbcc85 --- /dev/null +++ b/device_framework_matrix.xml @@ -0,0 +1,30 @@ + + + com.fingerprints.extension + 1.0 + + IFingerprintEngineering + default + + + IFingerprintNavigation + default + + + IFingerprintSensorTest + default + + + + vendor.goodix.hardware.biometrics.fingerprint + 2.0-1 + + IGoodixFingerprintDaemon + default + + + IGoodixFingerprintDaemonExt + default + + + diff --git a/extract-files.sh b/extract-files.sh index 77764a0..4392ceb 100755 --- a/extract-files.sh +++ b/extract-files.sh @@ -1,20 +1,76 @@ #!/bin/bash # -# Copyright (C) 2021 The LineageOS Project +# Copyright (C) 2016 The CyanogenMod Project +# Copyright (C) 2017-2020 The LineageOS Project # # SPDX-License-Identifier: Apache-2.0 # -# If we're being sourced by the common script that we called, -# stop right here. No need to go down the rabbit hole. -if [ "${BASH_SOURCE[0]}" != "${0}" ]; then - return -fi - set -e -export DEVICE=miatoll -export DEVICE_COMMON=sm6250-common -export VENDOR=xiaomi +DEVICE=miatoll +VENDOR=xiaomi -"./../../${VENDOR}/${DEVICE_COMMON}/extract-files.sh" "$@" +# Load extract_utils and do some sanity checks +MY_DIR="${BASH_SOURCE%/*}" +if [[ ! -d "${MY_DIR}" ]]; then MY_DIR="${PWD}"; fi + +ANDROID_ROOT="${MY_DIR}/../../.." + +HELPER="${ANDROID_ROOT}/tools/extract-utils/extract_utils.sh" +if [ ! -f "${HELPER}" ]; then + echo "Unable to find helper script at ${HELPER}" + exit 1 +fi +source "${HELPER}" + +# Default to sanitizing the vendor folder before extraction +CLEAN_VENDOR=true + +KANG= +SECTION= + +while [ "${#}" -gt 0 ]; do + case "${1}" in + -n | --no-cleanup ) + CLEAN_VENDOR=false + ;; + -k | --kang ) + KANG="--kang" + ;; + -s | --section ) + SECTION="${2}"; shift + CLEAN_VENDOR=false + ;; + * ) + SRC="${1}" + ;; + esac + shift +done + +if [ -z "${SRC}" ]; then + SRC="adb" +fi + +function blob_fixup() { + case "${1}" in + vendor/etc/init/android.hardware.keymaster@4.0-service-qti.rc) + sed -i "s/4\.0/4\.1/g" "${2}" + ;; + system_ext/etc/init/wfdservice.rc) + sed -i "/^service/! s/wfdservice$/wfdservice64/g" "${2}" + ;; + # Remove dependency on android.hidl.base@1.0 for WFD native library. + system_ext/lib64/libwfdnative.so) + "${PATCHELF}" --remove-needed "android.hidl.base@1.0.so" "${2}" + ;; + esac +} + +# Initialize the helper +setup_vendor "${DEVICE}" "${VENDOR}" "${ANDROID_ROOT}" false "${CLEAN_VENDOR}" + +extract "${MY_DIR}/proprietary-files.txt" "${SRC}" "${KANG}" --section "${SECTION}" + +"${MY_DIR}/setup-makefiles.sh" diff --git a/idc/uinput-fpc.idc b/idc/uinput-fpc.idc new file mode 100644 index 0000000..4cb1a4a --- /dev/null +++ b/idc/uinput-fpc.idc @@ -0,0 +1,15 @@ +# +# FPC1020 Touch sensor driver +# +# Copyright (c) 2013,2014 Fingerprint Cards AB +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License Version 2 +# as published by the Free Software Foundation. +# + +device.internal = 1 + +keyboard.layout = uinput-fpc +keyboard.builtIn = 1 +keyboard.orientationAware = 1 diff --git a/idc/uinput-goodix.idc b/idc/uinput-goodix.idc new file mode 100644 index 0000000..88fbe7a --- /dev/null +++ b/idc/uinput-goodix.idc @@ -0,0 +1,15 @@ +# +# FPC1020 Touch sensor driver +# +# Copyright (c) 2013,2014 Fingerprint Cards AB +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License Version 2 +# as published by the Free Software Foundation. +# + +device.internal = 1 + +keyboard.layout = uinput-gf +keyboard.builtIn = 1 +keyboard.orientationAware = 1 diff --git a/keylayout/gpio-keys.kl b/keylayout/gpio-keys.kl new file mode 100644 index 0000000..7d5afc3 --- /dev/null +++ b/keylayout/gpio-keys.kl @@ -0,0 +1,32 @@ +# Copyright (c) 2013, 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. + +key 115 VOLUME_UP +key 114 VOLUME_DOWN +key 102 HOME +key 528 FOCUS +key 766 CAMERA diff --git a/keylayout/uinput-fpc.kl b/keylayout/uinput-fpc.kl new file mode 100644 index 0000000..4fc2161 --- /dev/null +++ b/keylayout/uinput-fpc.kl @@ -0,0 +1,14 @@ +# +# FPC1020 Touch sensor driver +# +# Copyright (c) 2013,2014 Fingerprint Cards AB +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License Version 2 +# as published by the Free Software Foundation. +# + +#key 96 DPAD_CENTER +#key 102 HOME +#key 105 DPAD_LEFT +#key 106 DPAD_RIGHT diff --git a/keylayout/uinput-goodix.kl b/keylayout/uinput-goodix.kl new file mode 100644 index 0000000..edc1642 --- /dev/null +++ b/keylayout/uinput-goodix.kl @@ -0,0 +1,14 @@ +# +# Goodix fingerprint sensor driver +# +# Copyright (c) 2013,2014 Fingerprint Cards AB +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License Version 2 +# as published by the Free Software Foundation. +# + +#key 96 DPAD_CENTER +#key 102 HOME +#key 105 DPAD_LEFT +#key 106 DPAD_RIGHT diff --git a/libinit/Android.bp b/libinit/Android.bp index 02d1568..aac9458 100644 --- a/libinit/Android.bp +++ b/libinit/Android.bp @@ -4,10 +4,23 @@ // SPDX-License-Identifier: Apache-2.0 // + +cc_library_static { + name: "libinit_xiaomi_miatoll", + srcs: [ + "libinit_dalvik_heap.cpp", + "libinit_variant.cpp", + "libinit_utils.cpp", + ], + whole_static_libs: ["libbase"], + export_include_dirs: ["include"], + recovery_available: true, +} + cc_library_static { name: "init_xiaomi_miatoll", srcs: ["init_xiaomi_miatoll.cpp"], - whole_static_libs: ["//device/xiaomi/sm6250-common:libinit_xiaomi_atoll"], + whole_static_libs: ["libinit_xiaomi_miatoll"], include_dirs: ["system/core/init"], recovery_available: true, } diff --git a/libinit/include/libinit_dalvik_heap.h b/libinit/include/libinit_dalvik_heap.h new file mode 100644 index 0000000..75144b2 --- /dev/null +++ b/libinit/include/libinit_dalvik_heap.h @@ -0,0 +1,23 @@ +/* + * Copyright (C) 2021 The LineageOS Project + * + * SPDX-License-Identifier: Apache-2.0 + */ + +#ifndef LIBINIT_DALVIK_HEAP_H +#define LIBINIT_DALVIK_HEAP_H + +#include + +typedef struct dalvik_heap_info { + std::string heapstartsize; + std::string heapgrowthlimit; + std::string heapsize; + std::string heapminfree; + std::string heapmaxfree; + std::string heaptargetutilization; +} dalvik_heap_info_t; + +void set_dalvik_heap(void); + +#endif // LIBINIT_DALVIK_HEAP_H diff --git a/libinit/include/libinit_utils.h b/libinit/include/libinit_utils.h new file mode 100644 index 0000000..d5bca51 --- /dev/null +++ b/libinit/include/libinit_utils.h @@ -0,0 +1,18 @@ +/* + * Copyright (C) 2021-2022 The LineageOS Project + * + * SPDX-License-Identifier: Apache-2.0 + */ + +#ifndef LIBINIT_UTILS_H +#define LIBINIT_UTILS_H + +#include + +void property_override(std::string prop, std::string value, bool add = true); + +void set_ro_build_prop(const std::string &prop, const std::string &value, bool product = false); + +std::string fingerprint_to_description(std::string fingerprint); + +#endif // LIBINIT_UTILS_H diff --git a/libinit/include/libinit_variant.h b/libinit/include/libinit_variant.h new file mode 100644 index 0000000..fe07fca --- /dev/null +++ b/libinit/include/libinit_variant.h @@ -0,0 +1,28 @@ +/* + * Copyright (C) 2021-2022 The LineageOS Project + * + * SPDX-License-Identifier: Apache-2.0 + */ + +#ifndef LIBINIT_VARIANT_H +#define LIBINIT_VARIANT_H + +#include +#include + +typedef struct variant_info { + std::string hwc_value; + + std::string brand; + std::string device; + std::string model; + std::string build_fingerprint; + + bool nfc; +} variant_info_t; + +void search_variant(const std::vector variants); + +void set_variant_props(const variant_info_t variant); + +#endif // LIBINIT_VARIANT_H diff --git a/libinit/libinit_dalvik_heap.cpp b/libinit/libinit_dalvik_heap.cpp new file mode 100644 index 0000000..ba5992e --- /dev/null +++ b/libinit/libinit_dalvik_heap.cpp @@ -0,0 +1,67 @@ +/* + * Copyright (C) 2021 The LineageOS Project + * + * SPDX-License-Identifier: Apache-2.0 + */ + +#include +#include + +#include + +#define HEAPSTARTSIZE_PROP "dalvik.vm.heapstartsize" +#define HEAPGROWTHLIMIT_PROP "dalvik.vm.heapgrowthlimit" +#define HEAPSIZE_PROP "dalvik.vm.heapsize" +#define HEAPMINFREE_PROP "dalvik.vm.heapminfree" +#define HEAPMAXFREE_PROP "dalvik.vm.heapmaxfree" +#define HEAPTARGETUTILIZATION_PROP "dalvik.vm.heaptargetutilization" + +#define GB(b) (b * 1024ull * 1024 * 1024) + +static const dalvik_heap_info_t dalvik_heap_info_6144 = { + .heapstartsize = "16m", + .heapgrowthlimit = "256m", + .heapsize = "512m", + .heapminfree = "8m", + .heapmaxfree = "32m", + .heaptargetutilization = "0.5", +}; + +static const dalvik_heap_info_t dalvik_heap_info_4096 = { + .heapstartsize = "8m", + .heapgrowthlimit = "256m", + .heapsize = "512m", + .heapminfree = "8m", + .heapmaxfree = "16m", + .heaptargetutilization = "0.6", +}; + +static const dalvik_heap_info_t dalvik_heap_info_2048 = { + .heapstartsize = "8m", + .heapgrowthlimit = "192m", + .heapsize = "512m", + .heapminfree = "512k", + .heapmaxfree = "8m", + .heaptargetutilization = "0.75", +}; + +void set_dalvik_heap() { + struct sysinfo sys; + const dalvik_heap_info_t *dhi; + + sysinfo(&sys); + + if (sys.totalram > GB(5)) + dhi = &dalvik_heap_info_6144; + else if (sys.totalram > GB(3)) + dhi = &dalvik_heap_info_4096; + else + dhi = &dalvik_heap_info_2048; + + property_override(HEAPSTARTSIZE_PROP, dhi->heapstartsize); + property_override(HEAPGROWTHLIMIT_PROP, dhi->heapgrowthlimit); + property_override(HEAPSIZE_PROP, dhi->heapsize); + property_override(HEAPTARGETUTILIZATION_PROP, dhi->heaptargetutilization); + property_override(HEAPMINFREE_PROP, dhi->heapminfree); + property_override(HEAPMAXFREE_PROP, dhi->heapmaxfree); +} diff --git a/libinit/libinit_utils.cpp b/libinit/libinit_utils.cpp new file mode 100644 index 0000000..ae9dc04 --- /dev/null +++ b/libinit/libinit_utils.cpp @@ -0,0 +1,75 @@ +/* + * Copyright (C) 2021-2022 The LineageOS Project + * + * SPDX-License-Identifier: Apache-2.0 + */ + +#define _REALLY_INCLUDE_SYS__SYSTEM_PROPERTIES_H_ +#include +#include + +#include + +void property_override(std::string prop, std::string value, bool add) { + auto pi = (prop_info *) __system_property_find(prop.c_str()); + if (pi != nullptr) { + __system_property_update(pi, value.c_str(), value.length()); + } else if (add) { + __system_property_add(prop.c_str(), prop.length(), value.c_str(), value.length()); + } +} + +std::vector ro_props_default_source_order = { + "odm.", + "odm_dlkm.", + "product.", + "system.", + "system_ext.", + "vendor.", + "vendor_dlkm.", + "", +}; + +void set_ro_build_prop(const std::string &prop, const std::string &value, bool product) { + std::string prop_name; + + for (const auto &source : ro_props_default_source_order) { + if (product) + prop_name = "ro.product." + source + prop; + else + prop_name = "ro." + source + "build." + prop; + + property_override(prop_name, value, true); + } +} + +#define FIND_AND_REMOVE(s, delimiter, variable_name) \ + std::string variable_name = s.substr(0, s.find(delimiter)); \ + s.erase(0, s.find(delimiter) + delimiter.length()); + +#define APPEND_STRING(s, to_append) \ + s.append(" "); \ + s.append(to_append); + +std::string fingerprint_to_description(std::string fingerprint) { + std::string delimiter = "/"; + std::string delimiter2 = ":"; + std::string build_fingerprint_copy = fingerprint; + + FIND_AND_REMOVE(build_fingerprint_copy, delimiter, brand) + FIND_AND_REMOVE(build_fingerprint_copy, delimiter, product) + FIND_AND_REMOVE(build_fingerprint_copy, delimiter2, device) + FIND_AND_REMOVE(build_fingerprint_copy, delimiter, platform_version) + FIND_AND_REMOVE(build_fingerprint_copy, delimiter, build_id) + FIND_AND_REMOVE(build_fingerprint_copy, delimiter2, build_number) + FIND_AND_REMOVE(build_fingerprint_copy, delimiter, build_variant) + std::string build_version_tags = build_fingerprint_copy; + + std::string description = product + "-" + build_variant; + APPEND_STRING(description, platform_version) + APPEND_STRING(description, build_id) + APPEND_STRING(description, build_number) + APPEND_STRING(description, build_version_tags) + + return description; +} diff --git a/libinit/libinit_variant.cpp b/libinit/libinit_variant.cpp new file mode 100644 index 0000000..23bdfa3 --- /dev/null +++ b/libinit/libinit_variant.cpp @@ -0,0 +1,42 @@ +/* + * Copyright (C) 2021-2022 The LineageOS Project + * + * SPDX-License-Identifier: Apache-2.0 + */ + +#include +#include + +#include + +using android::base::GetProperty; + +#define HWC_PROP "ro.boot.hwc" +#define HWNAME_PROP "ro.boot.hwname" +#define SKU_PROP "ro.boot.product.hardware.sku" + +void search_variant(const std::vector variants) { + std::string hwc_value = GetProperty(HWC_PROP, ""); + std::string hwname_value = GetProperty(HWNAME_PROP, ""); + + for (const auto& variant : variants) { + if ((variant.hwc_value == "" || variant.hwc_value == hwc_value) && (variant.device == hwname_value)) { + set_variant_props(variant); + break; + } + } +} + +void set_variant_props(const variant_info_t variant) { + set_ro_build_prop("brand", variant.brand, true); + set_ro_build_prop("device", variant.device, true); + set_ro_build_prop("model", variant.model, true); + + set_ro_build_prop("fingerprint", variant.build_fingerprint); + property_override("ro.bootimage.build.fingerprint", variant.build_fingerprint); + + property_override("ro.build.description", fingerprint_to_description(variant.build_fingerprint)); + + if (variant.nfc) + property_override(SKU_PROP, "nfc"); +} diff --git a/libqti-perfd-client/Android.bp b/libqti-perfd-client/Android.bp new file mode 100644 index 0000000..010d072 --- /dev/null +++ b/libqti-perfd-client/Android.bp @@ -0,0 +1,17 @@ +cc_library_shared { + name: "libqti-perfd-client", + proprietary: true, + defaults: ["hidl_defaults"], + srcs: [ + "client.c", + ], + cflags: [ + "-Werror", + "-Wextra", + "-Wall", + ], + shared_libs: [ + "liblog", + "libutils", + ], +} diff --git a/libqti-perfd-client/client.c b/libqti-perfd-client/client.c new file mode 100644 index 0000000..42b3cdc --- /dev/null +++ b/libqti-perfd-client/client.c @@ -0,0 +1,24 @@ +#define LOG_TAG "libqti-perfd-client" + +#include +#include + +void perf_get_feedback() {} +void perf_hint() {} +int perf_lock_acq(int handle, int duration, int arg3[], int arg4) { + ALOGI("perf_lock_acq: handle: %d, duration: %d, arg3[0]: %d, arg4: %d", + handle, duration, arg3[0], arg4); + if (handle > 0) + return handle; + + return 233; +} +void perf_lock_cmd() {} +int perf_lock_rel(int handle) { + ALOGI("perf_lock_rel: handle: %d", handle); + if (handle > 0) + return handle; + + return 233; +} +void perf_lock_use_profile() {} diff --git a/lineage.dependencies b/lineage.dependencies index b58db2e..1ba15db 100644 --- a/lineage.dependencies +++ b/lineage.dependencies @@ -1,6 +1,10 @@ [ { - "repository": "android_device_xiaomi_sm6250-common", - "target_path": "device/xiaomi/sm6250-common" + "repository": "android_hardware_xiaomi", + "target_path": "hardware/xiaomi" + }, + { + "repository": "android_kernel_xiaomi_sm6250", + "target_path": "kernel/xiaomi/sm6250" } ] diff --git a/lineage_device_framework_matrix.xml b/lineage_device_framework_matrix.xml new file mode 100644 index 0000000..3b58cbf --- /dev/null +++ b/lineage_device_framework_matrix.xml @@ -0,0 +1,18 @@ + + + vendor.lineage.livedisplay + 2.0 + + IPictureAdjustment + default + + + + vendor.lineage.trust + 1.0 + + IUsbRestrict + default + + + diff --git a/manifest.xml b/manifest.xml new file mode 100644 index 0000000..04a485b --- /dev/null +++ b/manifest.xml @@ -0,0 +1,339 @@ + + + android.hardware.audio + hwbinder + @6.0::IDevicesFactory/default + + + android.hardware.audio.effect + hwbinder + @6.0::IEffectsFactory/default + + + android.hardware.bluetooth + hwbinder + @1.0::IBluetoothHci/default + + + android.hardware.bluetooth.audio + hwbinder + @2.1::IBluetoothAudioProvidersFactory/default + + + android.hardware.camera.provider + hwbinder + @2.4::ICameraProvider/legacy/0 + + + android.hardware.contexthub + hwbinder + @1.0::IContexthub/default + + + android.hardware.drm + hwbinder + @1.3::ICryptoFactory/wfdhdcp + @1.3::IDrmFactory/wfdhdcp + + + android.hardware.gatekeeper + hwbinder + @1.0::IGatekeeper/default + + + android.hardware.ir + hwbinder + @1.0::IConsumerIr/default + + + android.hardware.keymaster + hwbinder + @4.1::IKeymasterDevice/default + + + android.hardware.media.omx + hwbinder + @1.0::IOmx/default + @1.0::IOmxStore/default + + + android.hardware.memtrack + hwbinder + @1.0::IMemtrack/default + + + android.hardware.radio + hwbinder + @1.2::ISap/slot1 + @1.2::ISap/slot2 + @1.5::IRadio/slot1 + @1.5::IRadio/slot2 + + + android.hardware.radio.config + hwbinder + @1.1::IRadioConfig/default + + + android.hardware.renderscript + passthrough + @1.0::IDevice/default + + + android.hardware.soundtrigger + hwbinder + @2.2::ISoundTriggerHw/default + + + android.hardware.tetheroffload.config + hwbinder + @1.0::IOffloadConfig/default + + + android.hardware.tetheroffload.control + hwbinder + @1.0::IOffloadControl/default + + + com.fingerprints.extension + hwbinder + @1.0::IFingerprintEngineering/default + @1.0::IFingerprintNavigation/default + @1.0::IFingerprintSensorTest/default + + + com.qualcomm.qti.dpm.api + hwbinder + @1.0::IdpmQmi/dpmQmiService + + + com.qualcomm.qti.imscmservice + hwbinder + @2.2::IImsCmService/qti.ims.connectionmanagerservice + + + com.qualcomm.qti.uceservice + hwbinder + @2.3::IUceService/com.qualcomm.qti.uceservice + + + vendor.display.color + hwbinder + @1.3::IDisplayColor/default + + + vendor.display.postproc + hwbinder + @1.0::IDisplayPostproc/default + + + vendor.lineage.livedisplay + hwbinder + @2.0::IPictureAdjustment/default + + + vendor.qti.data.factory + hwbinder + @2.2::IFactory/default + + + vendor.qti.esepowermanager + hwbinder + @1.1::IEsePowerManager/default + + + vendor.qti.hardware.alarm + hwbinder + @1.0::IAlarm/default + + + vendor.qti.hardware.bluetooth_audio + hwbinder + @2.1::IBluetoothAudioProvidersFactory/default + + + vendor.qti.hardware.bluetooth_sar + hwbinder + @1.1::IBluetoothSar/default + + + vendor.qti.hardware.btconfigstore + hwbinder + @2.0::IBTConfigStore/default + + + vendor.qti.hardware.cacert + hwbinder + @1.0::IService/default + + + vendor.qti.hardware.capabilityconfigstore + hwbinder + @1.0::ICapabilityConfigStore/default + + + vendor.qti.hardware.cryptfshw + hwbinder + @1.0::ICryptfsHw/default + + + vendor.qti.hardware.data.connection + hwbinder + @1.1::IDataConnection/slot1 + @1.1::IDataConnection/slot2 + + + vendor.qti.hardware.data.latency + hwbinder + @1.0::ILinkLatency/default + + + vendor.qti.hardware.dsp + hwbinder + @1.0::IDspService/dspservice + + + vendor.qti.hardware.embmssl + hwbinder + @1.1::IEmbms/embmsslServer0 + + + vendor.qti.hardware.factory + hwbinder + @1.1::IFactory/default + + + vendor.qti.hardware.fm + hwbinder + @1.0::IFmHci/default + + + vendor.qti.hardware.fstman + hwbinder + @1.0::IFstManager/default + + + vendor.qti.hardware.qccvndhal + hwbinder + @1.0::IQccvndhal/qccvndhal + + + vendor.qti.hardware.qseecom + hwbinder + @1.0::IQSEECom/default + + + vendor.qti.hardware.qteeconnector + hwbinder + @1.0::IAppConnector/default + @1.0::IGPAppConnector/default + + + vendor.qti.hardware.radio.am + hwbinder + @1.0::IQcRilAudio/slot1 + @1.0::IQcRilAudio/slot2 + + + vendor.qti.hardware.radio.ims + hwbinder + @1.7::IImsRadio/imsradio0 + @1.7::IImsRadio/imsradio1 + + + vendor.qti.hardware.radio.internal.deviceinfo + hwbinder + @1.0::IDeviceInfo/deviceinfo + + + vendor.qti.hardware.radio.lpa + hwbinder + @1.0::IUimLpa/UimLpa0 + @1.0::IUimLpa/UimLpa1 + + + vendor.qti.hardware.radio.qcrilhook + hwbinder + @1.0::IQtiOemHook/oemhook0 + @1.0::IQtiOemHook/oemhook1 + + + vendor.qti.hardware.radio.qtiradio + hwbinder + @1.0::IQtiRadio/slot1 + @1.0::IQtiRadio/slot2 + + + vendor.qti.hardware.radio.qtiradio + hwbinder + @2.4::IQtiRadio/slot1 + @2.4::IQtiRadio/slot2 + + + vendor.qti.hardware.radio.uim + hwbinder + @1.2::IUim/Uim0 + @1.2::IUim/Uim1 + + + vendor.qti.hardware.radio.uim_remote_client + hwbinder + @1.0::IUimRemoteServiceClient/uimRemoteClient0 + @1.0::IUimRemoteServiceClient/uimRemoteClient1 + + + vendor.qti.hardware.radio.uim_remote_server + hwbinder + @1.0::IUimRemoteServiceServer/uimRemoteServer0 + @1.0::IUimRemoteServiceServer/uimRemoteServer1 + + + vendor.qti.hardware.sensorscalibrate + hwbinder + @1.0::ISensorsCalibrate/default + + + vendor.qti.hardware.soter + hwbinder + @1.0::ISoter/default + + + vendor.qti.hardware.trustedui + hwbinder + @1.0::ITrustedInput/default + @1.0::ITrustedUI/default + + + vendor.qti.hardware.tui_comm + hwbinder + @1.0::ITuiComm/default + + + vendor.qti.hardware.wifi.wifilearner + hwbinder + @1.0::IWifiStats/wifiStats + + + vendor.qti.hardware.wifidisplaysession + hwbinder + @1.0::IWifiDisplaySession/wifidisplaysession + @1.0::IWifiDisplaySessionAudioTrack/wifidisplaysessionaudiotrack + @1.0::IWifiDisplaySessionImageTrack/wifidisplaysessionimagetrack + @1.0::IWifiDisplaySessionVideoTrack/wifidisplaysessionvideotrack + + + vendor.qti.ims.callinfo + hwbinder + @1.0::IService/default + + + vendor.qti.ims.factory + hwbinder + @1.0::IImsFactory/default + + + vendor.qti.imsrtpservice + hwbinder + @3.0::IRTPService/imsrtpservice + + diff --git a/media/media_codecs.xml b/media/media_codecs.xml new file mode 100644 index 0000000..dd758c9 --- /dev/null +++ b/media/media_codecs.xml @@ -0,0 +1,390 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/media/media_codecs_performance.xml b/media/media_codecs_performance.xml new file mode 100644 index 0000000..3f0fd51 --- /dev/null +++ b/media/media_codecs_performance.xml @@ -0,0 +1,194 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/media/media_codecs_vendor.xml b/media/media_codecs_vendor.xml new file mode 100644 index 0000000..49234b0 --- /dev/null +++ b/media/media_codecs_vendor.xml @@ -0,0 +1,398 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/media/media_codecs_vendor_audio.xml b/media/media_codecs_vendor_audio.xml new file mode 100644 index 0000000..e102b80 --- /dev/null +++ b/media/media_codecs_vendor_audio.xml @@ -0,0 +1,27 @@ + + + + + + + + + + + + diff --git a/media/media_profiles.xml b/media/media_profiles.xml new file mode 100644 index 0000000..66128d6 --- /dev/null +++ b/media/media_profiles.xml @@ -0,0 +1,867 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/media/media_profiles_V1_0.xml b/media/media_profiles_V1_0.xml new file mode 100644 index 0000000..66128d6 --- /dev/null +++ b/media/media_profiles_V1_0.xml @@ -0,0 +1,867 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/media/media_profiles_vendor.xml b/media/media_profiles_vendor.xml new file mode 100644 index 0000000..c5859d6 --- /dev/null +++ b/media/media_profiles_vendor.xml @@ -0,0 +1,1329 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/odm.prop b/odm.prop new file mode 100644 index 0000000..3e7abe3 --- /dev/null +++ b/odm.prop @@ -0,0 +1,2 @@ +# Fwk detect +ro.vendor.qti.va_odm.support=1 diff --git a/overlay-lineage/SM6250LineageDialer/Android.bp b/overlay-lineage/SM6250LineageDialer/Android.bp new file mode 100644 index 0000000..16bfef0 --- /dev/null +++ b/overlay-lineage/SM6250LineageDialer/Android.bp @@ -0,0 +1,9 @@ +// +// Copyright (C) 2022 The LineageOS Project +// SPDX-License-Identifier: Apache-2.0 +// + +runtime_resource_overlay { + name: "SM6250LineageDialer", + product_specific: true, +} diff --git a/overlay-lineage/SM6250LineageDialer/AndroidManifest.xml b/overlay-lineage/SM6250LineageDialer/AndroidManifest.xml new file mode 100644 index 0000000..465ed31 --- /dev/null +++ b/overlay-lineage/SM6250LineageDialer/AndroidManifest.xml @@ -0,0 +1,13 @@ + + + + + + diff --git a/overlay-lineage/SM6250LineageDialer/res/values/config.xml b/overlay-lineage/SM6250LineageDialer/res/values/config.xml new file mode 100644 index 0000000..7a4e744 --- /dev/null +++ b/overlay-lineage/SM6250LineageDialer/res/values/config.xml @@ -0,0 +1,14 @@ + + + + + true + + 4 + + diff --git a/overlay-lineage/SM6250LineageSDK/Android.bp b/overlay-lineage/SM6250LineageSDK/Android.bp new file mode 100644 index 0000000..c3ffc30 --- /dev/null +++ b/overlay-lineage/SM6250LineageSDK/Android.bp @@ -0,0 +1,9 @@ +// +// Copyright (C) 2022 The LineageOS Project +// SPDX-License-Identifier: Apache-2.0 +// + +runtime_resource_overlay { + name: "SM6250LineageSDK", + product_specific: true, +} diff --git a/overlay-lineage/SM6250LineageSDK/AndroidManifest.xml b/overlay-lineage/SM6250LineageSDK/AndroidManifest.xml new file mode 100644 index 0000000..2c4f21b --- /dev/null +++ b/overlay-lineage/SM6250LineageSDK/AndroidManifest.xml @@ -0,0 +1,13 @@ + + + + + + diff --git a/overlay-lineage/SM6250LineageSDK/res/values/config.xml b/overlay-lineage/SM6250LineageSDK/res/values/config.xml new file mode 100644 index 0000000..4db8cf7 --- /dev/null +++ b/overlay-lineage/SM6250LineageSDK/res/values/config.xml @@ -0,0 +1,81 @@ + + + + + + 64 + + + 64 + + + 232 + + + true + + + + restart + restart_recovery + restart_bootloader + restart_fastboot + + + diff --git a/overlay/CarrierConfigResCommon/Android.bp b/overlay/CarrierConfigResCommon/Android.bp new file mode 100644 index 0000000..7963a53 --- /dev/null +++ b/overlay/CarrierConfigResCommon/Android.bp @@ -0,0 +1,10 @@ +// +// Copyright (C) 2022 The LineageOS Project +// SPDX-License-Identifier: Apache-2.0 +// + +runtime_resource_overlay { + name: "CarrierConfigResCommon", + aaptflags: ["--keep-raw-values"], + product_specific: true, +} diff --git a/overlay/CarrierConfigResCommon/AndroidManifest.xml b/overlay/CarrierConfigResCommon/AndroidManifest.xml new file mode 100644 index 0000000..4d2cd14 --- /dev/null +++ b/overlay/CarrierConfigResCommon/AndroidManifest.xml @@ -0,0 +1,13 @@ + + + + + + diff --git a/overlay/CarrierConfigResCommon/res/xml/vendor.xml b/overlay/CarrierConfigResCommon/res/xml/vendor.xml new file mode 100644 index 0000000..0ae4fb5 --- /dev/null +++ b/overlay/CarrierConfigResCommon/res/xml/vendor.xml @@ -0,0 +1,2379 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.example.android.locationattribution + + + + + + + + connected_mmwave:5GUWB,connected:5g,not_restricted:None,restricted:None + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + IPV4V6 + IPV4V6 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + IPV4V6 + IPV4V6 + + + + + + + + + + + + + + + + + + + IPV4V6 + IPV4V6 + + + + + + + + + + + + + + + + + + + + + + + + + + + + IPV4V6 + IPV4V6 + + + + + + + + + + + + + + + + + + + + + + + China Mobile + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + IPV4V6 + IPV4V6 + + + + + + China Unicom + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + IPV4V6 + IPV4V6 + + + + + + + + + + + + + + + + + + + + + + + China Mobile + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + IPV4V6 + IPV4V6 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + IPV4V6 + IPV4V6 + + + + + + + + + + + + IPV4V6 + IPV4V6 + + + + + + + + + + + + + + + + + + + + + + + + IPV4V6 + IPV4V6 + + + + + + China Unicom + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + IPV4V6 + IPV4V6 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + IPV4V6 + IPV4V6 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + IPV4V6 + IPV4V6 + + + + + + China Unicom + + + + + + + + + + + + + + + + + + + + + + IPV4V6 + IPV4V6 + + + + + + + + + + + + + + + + + IPV4V6 + IPV4V6 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + IPV4V6 + IPV4V6 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/overlay/SM6250Frameworks/Android.bp b/overlay/SM6250Frameworks/Android.bp new file mode 100644 index 0000000..82bd324 --- /dev/null +++ b/overlay/SM6250Frameworks/Android.bp @@ -0,0 +1,9 @@ +// +// Copyright (C) 2022 The LineageOS Project +// SPDX-License-Identifier: Apache-2.0 +// + +runtime_resource_overlay { + name: "SM6250Frameworks", + vendor: true, +} diff --git a/overlay/SM6250Frameworks/AndroidManifest.xml b/overlay/SM6250Frameworks/AndroidManifest.xml new file mode 100644 index 0000000..3ca8488 --- /dev/null +++ b/overlay/SM6250Frameworks/AndroidManifest.xml @@ -0,0 +1,13 @@ + + + + + + diff --git a/overlay/SM6250Frameworks/res/values/config.xml b/overlay/SM6250Frameworks/res/values/config.xml new file mode 100644 index 0000000..5ef6f23 --- /dev/null +++ b/overlay/SM6250Frameworks/res/values/config.xml @@ -0,0 +1,570 @@ + + + + + + + MEMORY + + + OFF + + + OFF + + + 2 + + + + 11373 + 5000 + 4333 + 3666 + 3000 + 2760 + 2520 + 2280 + 2040 + 1800 + 800 + 527 + 500 + 470 + 396 + 322 + 248 + 174 + 99 + 99 + + + + + 853 + 700 + 683 + 666 + 650 + 640 + 630 + 620 + 610 + 600 + 500 + 500 + 440 + 385 + 348 + 311 + 274 + 237 + 200 + 200 + + + + + 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10 + 20 + 30 + 40 + 50 + 60 + 70 + 80 + 90 + 100 + + + + 2000 + 4000 + + + + 5 + 10 + 18 + 22 + 24 + 31 + 35 + 41 + 48 + 56 + 66 + 80 + 98 + 125 + 162 + 208 + 265 + 328 + 450 + + + + + 1 + 2 + 3 + 4 + 8 + 12 + 20 + 33 + 55 + 90 + 148 + 245 + 403 + 665 + 1097 + 1808 + 2981 + 5000 + + + + true + + + + 0 + 1 + 3 + + + + + 0:2:15 + + + + true + + + true + + + 3300 + + + true + + + + "/system/framework/framework.jar" + "/system/framework/services.jar" + "/apex/com.android.art/javalib/core-oj.jar" + "/apex/com.android.art/javalib/core-libart.jar" + "/system_ext/priv-app/SystemUI/SystemUI.apk" + "/system/bin/surfaceflinger" + + + + true + + + true + + + true + + + + 0 + 1 + 3 + + + 0 + 0 + 9 + + + + true + + + true + + + com.android.systemui/com.android.systemui.doze.DozeService + + + true + + + true + + + true + + + true + + + true + + + + 40 + + + + + 0 + 1 + 20 + 21 + + + + 2 + + + 2 + + + + M 0,0 H -36 V 102 H 36 V 0 H 0 Z + + + + + 5gnr:2097152,6291456,16777216,512000,2097152,8388608 + lte:2097152,4194304,8388608,262144,524288,1048576 + lte_ca:4096,6291456,12582912,4096,1048576,2097152 + umts:4094,87380,1220608,4096,16384,1220608 + hspa:4094,87380,1220608,4096,16384,1220608 + hsupa:4094,87380,1220608,4096,16384,1220608 + hsdpa:4094,87380,1220608,4096,16384,1220608 + hspap:4094,87380,1220608,4096,16384,1220608 + edge:4093,26280,35040,4096,16384,35040 + gprs:4092,8760,11680,4096,8760,11680 + evdo:4094,87380,524288,4096,16384,262144 + + + + true + + + true + + + true + + + vendor.qti.iwlan + + + + 1 + 255 + + + + 12 + + + + 2 + 450 + + + + 0.26274509804 + + + 1.0 + + + 0.0 + + + true + + + + @array/config_sfps_sensor_props_0 + + + + + 1080 + 760 + 100 + + + + true + + + 600 + + + true + + + true + + + true + + + true + + + false + + + true + + + true + + + + 0 + 10 + 20 + 30 + + + + true + + + vendor.qti.iwlan + + + + + + + wifi,1,1,1,-1,true + mobile,0,0,0,-1,true + mobile_mms,2,0,4,60000,true + mobile_supl,3,0,2,60000,true + mobile_dun,4,0,2,60000,true + mobile_hipri,5,0,3,60000,true + mobile_fota,10,0,2,60000,true + mobile_ims,11,0,2,60000,true + mobile_cbs,12,0,2,60000,true + bluetooth,7,7,2,-1,true + mobile_emergency,15,0,5,-1,true + ethernet,9,9,9,-1,true + + + + + + "1,1" + "0,1" + "7,1" + + + + + true + + diff --git a/overlay/SM6250Frameworks/res/values/dimens.xml b/overlay/SM6250Frameworks/res/values/dimens.xml new file mode 100644 index 0000000..0a83861 --- /dev/null +++ b/overlay/SM6250Frameworks/res/values/dimens.xml @@ -0,0 +1,22 @@ + + + + + + 93px + + + 93px + + + 24dp + + + 102px + + diff --git a/overlay/SM6250Frameworks/res/xml/power_profile.xml b/overlay/SM6250Frameworks/res/xml/power_profile.xml new file mode 100644 index 0000000..b4f8466 --- /dev/null +++ b/overlay/SM6250Frameworks/res/xml/power_profile.xml @@ -0,0 +1,101 @@ + + + 5020 + + 6 + 2 + + 4.65 + 0.52 + 1 + 12.10 + 16.43 + + 300000 + 576000 + 768000 + 1017600 + 1248000 + 1324800 + 1516800 + 1612800 + 1708800 + 1804800 + + + 652800 + 825600 + 979200 + 1113600 + 1267200 + 1555200 + 1708800 + 1843200 + 1900800 + 1996800 + 2112000 + 2208000 + + + 4.2 + 8.28 + 11.99 + 15.06 + 23.81 + 27.99 + 38.22 + 51.99 + 62.37 + 71.82 + + + 11.06 + 23.81 + 35.09 + 44.08 + 73.08 + 87.18 + 134.31 + 192.47 + 216.45 + 257.83 + 289.78 + 337.24 + + 82.45 + 242.93 + 245.859 + 500 + 83.29 + 37.41 + 2 + 220 + 150 + 3700 + 1 + 1 + 100 + + 90 + 100 + 110 + 120 + 130 + + 3700 + + 100 + 110 + + 3700 + 1 + 50 + 50 + 3300 + 100 + 50 + + 7 + 5 + + diff --git a/overlay/SM6250SystemUI/Android.bp b/overlay/SM6250SystemUI/Android.bp new file mode 100644 index 0000000..a46efd6 --- /dev/null +++ b/overlay/SM6250SystemUI/Android.bp @@ -0,0 +1,9 @@ +// +// Copyright (C) 2022 The LineageOS Project +// SPDX-License-Identifier: Apache-2.0 +// + +runtime_resource_overlay { + name: "SM6250SystemUI", + vendor: true, +} diff --git a/overlay/SM6250SystemUI/AndroidManifest.xml b/overlay/SM6250SystemUI/AndroidManifest.xml new file mode 100644 index 0000000..0e7f3e7 --- /dev/null +++ b/overlay/SM6250SystemUI/AndroidManifest.xml @@ -0,0 +1,13 @@ + + + + + + diff --git a/overlay/SM6250SystemUI/res/values/dimens.xml b/overlay/SM6250SystemUI/res/values/dimens.xml new file mode 100644 index 0000000..5b3a67e --- /dev/null +++ b/overlay/SM6250SystemUI/res/values/dimens.xml @@ -0,0 +1,18 @@ + + + + + + 1080px + 760px + + + 760px + + + 16dp + + diff --git a/overlay/TelephonyResCommon/Android.bp b/overlay/TelephonyResCommon/Android.bp new file mode 100644 index 0000000..5e08956 --- /dev/null +++ b/overlay/TelephonyResCommon/Android.bp @@ -0,0 +1,9 @@ +// +// Copyright (C) 2022 The LineageOS Project +// SPDX-License-Identifier: Apache-2.0 +// + +runtime_resource_overlay { + name: "TelephonyResCommon", + product_specific: true, +} diff --git a/overlay/TelephonyResCommon/AndroidManifest.xml b/overlay/TelephonyResCommon/AndroidManifest.xml new file mode 100644 index 0000000..7630be6 --- /dev/null +++ b/overlay/TelephonyResCommon/AndroidManifest.xml @@ -0,0 +1,13 @@ + + + + + + diff --git a/overlay/TelephonyResCommon/res/values/config.xml b/overlay/TelephonyResCommon/res/values/config.xml new file mode 100644 index 0000000..0750239 --- /dev/null +++ b/overlay/TelephonyResCommon/res/values/config.xml @@ -0,0 +1,35 @@ + + + + + + 1 + + + true + + + true + + + true + + + com.qualcomm.qti.uimGbaApp + + + org.codeaurora.ims + + + org.codeaurora.ims + + + com.google.android.gms + + diff --git a/overlay/WifiOverlay/Android.bp b/overlay/WifiOverlay/Android.bp new file mode 100644 index 0000000..b2d9b43 --- /dev/null +++ b/overlay/WifiOverlay/Android.bp @@ -0,0 +1,9 @@ +// +// Copyright (C) 2022 The LineageOS Project +// SPDX-License-Identifier: Apache-2.0 +// + +runtime_resource_overlay { + name: "WifiOverlay", + vendor: true +} diff --git a/overlay/WifiOverlay/AndroidManifest.xml b/overlay/WifiOverlay/AndroidManifest.xml new file mode 100644 index 0000000..b18ced3 --- /dev/null +++ b/overlay/WifiOverlay/AndroidManifest.xml @@ -0,0 +1,14 @@ + + + + + + diff --git a/overlay/WifiOverlay/res/values/config.xml b/overlay/WifiOverlay/res/values/config.xml new file mode 100644 index 0000000..8e9d3c9 --- /dev/null +++ b/overlay/WifiOverlay/res/values/config.xml @@ -0,0 +1,67 @@ + + + + + + + true + + + true + + + true + + + true + + + 524288,1048576,5505024,262144,524288,5505024 + + + + + + + + true + + + true + + + true + + + true + + + true + + + true + + + 3000 + + + false + + + true + + + true + + + 32 + + + false + + diff --git a/permissions/privapp-permissions-hotword.xml b/permissions/privapp-permissions-hotword.xml new file mode 100644 index 0000000..7ab2bab --- /dev/null +++ b/permissions/privapp-permissions-hotword.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/proprietary-files.txt b/proprietary-files.txt index 0d1959a..884f052 100644 --- a/proprietary-files.txt +++ b/proprietary-files.txt @@ -1,7 +1,347 @@ -# Unpinned blobs from V12.5.7.0.RJZMIXM (JOYEUSEGlobal) +# Unpinned blobs from V13.0.1.0.SJZMIXM (JOYEUSEGlobal) # curtana: V12.5.5.0.RJWMIXM (CURTANAGlobal) # excalibur: V12.5.6.0.RJXINXM (EXCALIBURINGlobal) +# ACDB +vendor/etc/acdbdata/IDP/atoll-wcd937x-snd-card/IDP_WCD937X_Bluetooth_cal.acdb +vendor/etc/acdbdata/IDP/atoll-wcd937x-snd-card/IDP_WCD937X_General_cal.acdb +vendor/etc/acdbdata/IDP/atoll-wcd937x-snd-card/IDP_WCD937X_Global_cal.acdb +vendor/etc/acdbdata/IDP/atoll-wcd937x-snd-card/IDP_WCD937X_Handset_cal.acdb +vendor/etc/acdbdata/IDP/atoll-wcd937x-snd-card/IDP_WCD937X_Hdmi_cal.acdb +vendor/etc/acdbdata/IDP/atoll-wcd937x-snd-card/IDP_WCD937X_Headset_cal.acdb +vendor/etc/acdbdata/IDP/atoll-wcd937x-snd-card/IDP_WCD937X_Speaker_cal.acdb +vendor/etc/acdbdata/IDP/atoll-wcd937x-snd-card/IDP_WCD937X_workspaceFile.qwsp +vendor/etc/acdbdata/IDP/IDP_Bluetooth_cal.acdb +vendor/etc/acdbdata/IDP/IDP_General_cal.acdb +vendor/etc/acdbdata/IDP/IDP_Global_cal.acdb +vendor/etc/acdbdata/IDP/IDP_Handset_cal.acdb +vendor/etc/acdbdata/IDP/IDP_Hdmi_cal.acdb +vendor/etc/acdbdata/IDP/IDP_Headset_cal.acdb +vendor/etc/acdbdata/IDP/IDP_Speaker_cal.acdb +vendor/etc/acdbdata/IDP/IDP_workspaceFile.qwsp +vendor/etc/acdbdata/adsp_avs_config.acdb + +# ACDB loader +vendor/lib/libacdb-fts.so +vendor/lib/libacdbloader.so +vendor/lib/libacdbrtac.so +vendor/lib/libadiertac.so +vendor/lib/libaudcal.so + +# ADSP +vendor/bin/adsprpcd +vendor/etc/init/vendor.qti.adsprpc-service.rc +vendor/lib64/libadsp_default_listener.so +vendor/lib64/libadsprpc.so + +# ADSP Modules +vendor/lib/rfsa/adsp/capi_v2_aptX_CLHDADV_Encoder.so +vendor/lib/rfsa/adsp/capi_v2_aptX_CLHDAD_Speech_Decoder.so +vendor/lib/rfsa/adsp/capi_v2_aptX_Classic.so +vendor/lib/rfsa/adsp/capi_v2_aptX_HD.so +vendor/lib/rfsa/adsp/libSuperSensor_skel.so +vendor/lib/rfsa/adsp/libVC1Dec.so +vendor/lib/rfsa/adsp/libVC1DecDsp_skel.so +vendor/lib/rfsa/adsp/libVDHexagonSuperPhoto_skel.so +vendor/lib/rfsa/adsp/libapps_mem_heap.so +vendor/lib/rfsa/adsp/libarcsoft_dualcam_refocus_skel.so +vendor/lib/rfsa/adsp/libcamera_nn_skel.so +vendor/lib/rfsa/adsp/libcvpdsp_skel.so +vendor/lib/rfsa/adsp/libdspCV_skel.so +vendor/lib/rfsa/adsp/libdsp_streamer_add_constant.so +vendor/lib/rfsa/adsp/libdsp_streamer_binning.so +vendor/lib/rfsa/adsp/libdsp_streamer_skel.so +vendor/lib/rfsa/adsp/libfastcvadsp.so +vendor/lib/rfsa/adsp/libfastcvdsp_skel.so +vendor/lib/rfsa/adsp/libhexagon_nn_skel.so +vendor/lib/rfsa/adsp/libmialgo_rfs_cdsp_skel.so +vendor/lib/rfsa/adsp/libscveObjectSegmentation_skel.so +vendor/lib/rfsa/adsp/libscveT2T_skel.so +vendor/lib/rfsa/adsp/libsns_device_mode_skel.so +vendor/lib/rfsa/adsp/libsns_low_lat_stream_skel.so +vendor/lib/rfsa/adsp/misound_res.bin +vendor/lib/rfsa/adsp/tas25xx_TI_0.bin + +# Alarm +product/app/PowerOffAlarm/PowerOffAlarm.apk +vendor/bin/hw/vendor.qti.hardware.alarm@1.0-service +vendor/bin/power_off_alarm +vendor/etc/init/vendor.qti.hardware.alarm@1.0-service.rc +vendor/lib64/hw/vendor.qti.hardware.alarm@1.0-impl.so +vendor/lib64/vendor.qti.hardware.alarm@1.0.so + +# Audio +vendor/lib/btaudio_offload_if.so +vendor/lib/libadm.so +vendor/lib/libaudioconfigstore.so +vendor/lib/libaudioparsers.so +vendor/lib/libdrc.so +vendor/lib/libhdmipassthru.so +vendor/lib/libqtigef.so +vendor/lib/libsurround_3mic_proc.so + +# Audio FX modules +vendor/lib/soundfx/libasphere.so +vendor/lib/soundfx/libshoebox.so + +# Battery +vendor/bin/batterysecret +vendor/etc/init/init.batterysecret.rc + +# Bluetooth +vendor/bin/hw/android.hardware.bluetooth@1.0-service-qti +vendor/etc/init/android.hardware.bluetooth@1.0-service-qti.rc +vendor/lib64/hw/android.hardware.bluetooth@1.0-impl-qti.so +vendor/lib64/hw/vendor.qti.hardware.bluetooth_sar@1.1-impl.so +vendor/lib64/hw/vendor.qti.hardware.btconfigstore@1.0-impl.so +vendor/lib64/hw/vendor.qti.hardware.btconfigstore@2.0-impl.so +vendor/lib64/libbtnv.so +vendor/lib64/vendor.qti.hardware.bluetooth_sar@1.0.so +vendor/lib64/vendor.qti.hardware.bluetooth_sar@1.1.so + +# Bluetooth (Audio) +vendor/lib/hw/audio.bluetooth_qti.default.so +vendor/lib/hw/vendor.qti.hardware.bluetooth_audio@2.0-impl.so +vendor/lib/hw/vendor.qti.hardware.bluetooth_audio@2.1-impl.so +vendor/lib/libbluetooth_audio_session_qti.so +vendor/lib/libbluetooth_audio_session_qti_2_1.so + +# Bluetooth (aptX) - from sunfish - RQ3A.210805.001.A1/7474174 +system_ext/lib64/libaptXHD_encoder.so|e13fa70c97caaa24d061678bdee608eb8850a69e +system_ext/lib64/libaptX_encoder.so|df1c89d7af1bb35808d5fe3496b04ba066c10cbc + +# Camera - from V12.5.7.0.RJZMIXM +vendor/lib64/hw/camera.qcom.so|1a077e9266303403fe79e44878472346a734a653 +vendor/lib64/hw/com.qti.chi.override.so|0fbcd935c2632f0e3a0c98e670f82dc5c2e6828a +vendor/lib64/libFaceGrade.so|b3f316c56ab78ec550e8248c8d3ae7ca720d009e +vendor/lib64/libHalSuperSensorServer.so|faa4d602f226da8d92b197f49ffe29f0ad506426 +vendor/lib64/libSNPE.so|1655b7995d0fb2efe6e1c1b55b08d720a9cada6c +vendor/lib64/libSuperSensor.so|dd1a4fd609abbb514c11270722da21bdcf272fdf +vendor/lib64/libSuperSensorCPU.so|3c1857492209bf8034da0a1e098c2c14ce0cf4dc +vendor/lib64/libVDClearShot.so|d171672e54e8efab69016e6f3ee8469518ddcb01 +vendor/lib64/libVDSuperPhotoAPI.so|787ecee12dc0c9e95f2012f4097091ab7fd34ace +vendor/lib64/libXMFD_AgeGender.so|1fcc9780c5873fa60f92070dbd7cecbf88e2bd6a +vendor/lib64/lib_denoiser3.so|6b3a394b464d0bc4b0e73558f2e16359bb0260ff +vendor/lib64/libalAILDC.so|cd3436990cf35dfa6592074a413b3b9fd0660ca6 +vendor/lib64/libalCFR.so|5dd62743ea6ad86409b1837cd17b565c41992630 +vendor/lib64/libalLDC.so|18745c35fb78af2ae38f5536384f14178e433221 +vendor/lib64/libalhLDC.so|1cb3ac25d39a535ef8acb1fc30797219559019e1 +vendor/lib64/libarcsat.so|78e3f651edff6907453515670e513b1dbbcf7f52 +vendor/lib64/libarcsoft_beautyshot.so|1faae34b96337876f94503a1048f4ce408219dec +vendor/lib64/libarcsoft_bodyslim.so|d69e70800b1a809425efcde6ee1d3ea3f825ac5c +vendor/lib64/libarcsoft_distortion_correction.so|86a6cf76276688aa5b658fd4c9721db84376e355 +vendor/lib64/libarcsoft_dualcam_image_optical_zoom.so|e8611505506c3190f0981fd2ffed406b323ec755 +vendor/lib64/libarcsoft_dualcam_optical_zoom_control.so|58e8deac3c7dca09f6bc06eeca95091daa425049 +vendor/lib64/libarcsoft_dualcam_refocus.so|cd52db63782faea7f8200d6b39d71c68e1818ced +vendor/lib64/libarcsoft_dualcam_refocus_front.so|fc8c1413fde708a33ab6bda67f3e40f8a4e1abd6 +vendor/lib64/libarcsoft_dualcam_refocus_rear_t.so|dcc29a2f40f8174875a4247df08be1068ffc2697 +vendor/lib64/libarcsoft_dualcam_refocus_rear_w.so|5cbeb9bef2f37a731d8daee473b784bfeb19cd84 +vendor/lib64/libarcsoft_portrait_lighting.so|1bc7b14fe69e617529e4dda74e4ef1081ea2ada0 +vendor/lib64/libarcsoft_portrait_lighting_c.so|ca42fa6fc25e231ca70e1caf80a08b18ccfd3d99 +vendor/lib64/libarcsoft_preview_deflicker.so|6f1da5473c0b79e99da1d2ea27db736f06931774 +vendor/lib64/libarcsoft_supernight.so|1195ad355594e43fde906d6f8befaeb4ca930fc2 +vendor/lib64/libbeauty_face_interface.so|91c986da79ad675e58bd57cb317ff6e409a4a297 +vendor/lib64/libc++_shared.so|8bd494c3b1da5d250e0dc81231ea094fd0bccf88 +vendor/lib64/libcamera_dirty.so|6a45221e62b983f6b6100effd4729099fa4823a3 +vendor/lib64/libcamera_nn_stub.so|976251a2a32e75d0c2e397dcce7e5f7e18e4372e +vendor/lib64/libcamera_scene.so|99af7a5a3f6930cb2c14ce8f3b877124beac04ce +vendor/lib64/libcom.qti.chinodeutils.so|d20446e03fd33028aa94afa22e6f5ddacc17ec48 +vendor/lib64/libdng_sdk2vendor.so|df7487d013c78b7c6a77ccd9be10fa8e115ed7c8 +vendor/lib64/libfastcvdsp_stub.so|4eaf9f6db96648f1b1a423fb86c0fcce8a220499 +vendor/lib64/libfastcvopt.so|b4a28cc952eed09b9c71717782019cbc3c1befd3 +vendor/lib64/libft2vendor.so|fd87e8dbbb193d263d60bd352813b686633cba65 +vendor/lib64/libmdsprpc.so|523f6501e39101a9d61baffccd20a0d2848e3524 +vendor/lib64/libmiStereoFactoryRemapLib.so|e9e37ea94b4add65b96e223016dcaff8e71af364 +vendor/lib64/libmiai_portraitsupernight.so|1a841cc3479fea9270716f3eb9a7385348823251 +vendor/lib64/libmiai_supernight.so|c21196ce22948c3d28a4c17e0d0a711008c158de +vendor/lib64/libmialgo_basic.so|f9dec35cf368faad12d32a99efcb20c8e12da3d7 +vendor/lib64/libmialgo_fs.so|d6ca2dcb85e9a7cd9c5ca6b5d11d86c415c4625f +vendor/lib64/libmialgo_rfs.so|07bf5268fcc57563753cbab003a95e0e5a3fd3f9 +vendor/lib64/libmialgo_sd.so|5f257c9efedfb221567270e9c005ae10809b1dd3 +vendor/lib64/libmialgo_utils.so|a464d98ab3113cfb6278d8680dd402139df656b3 +vendor/lib64/libmialgoengine.so|23cfdd594e01335dc9fbde650b95c2c8215d0928 +vendor/lib64/libmibokeh_712.so|c9bc357bb02400577470e8bfed005ae9885b5f93 +vendor/lib64/libmpbase.so|e6b51e2d501f434eea15ecdc275011d1498301ae +vendor/lib64/libremosaic_wrapper.so|199af672a7a747a2f59fb54d5e2cfcb6456ed593 +vendor/lib64/libremosaiclib.so|993df71ae96b5f18ebdf3aeec4f0731cc2fd6218 +vendor/lib64/libsdk_sr.so|fbf9defdb45dd4e0e6d79855c9436db75fbdaf72 +vendor/lib64/libsdsprpc.so|96ed968d5d79c3fe8c37f331082c16cf5212dc52 +vendor/lib64/libsnpe_dsp_domains_v2.so|d7aa954f097f7664cd0822a72a8baaf666bf8539 +vendor/lib64/libsns_fastRPC_util.so|4b65d8aa6f0cf869a2621c423728e7328660b725 +vendor/lib64/libst_sr_models.so|4cd3dfd2a9d37e3a07ee1fa785d807ac559b00da +vendor/lib64/libswregistrationalgo.so|d47dc0456142d3a0d6d8d4739ac1881ec7887364 +vendor/lib64/libsymphony-cpu.so|27c2c692f34b647d9739dcbd19ab68ad3b43636a +vendor/lib64/libtriplecam_optical_zoom_control.so|4ed124cf96e346cc11d232bdfec06988cf84e8e3 +vendor/lib64/libtriplecam_video_optical_zoom.so|d06d62a3f9ad5c9330b52d55247f8d68369a6f43 +vendor/lib64/libvideofilter_only.so|395a5b7f119f632e55f3115c736e21e2002c1ab8 +vendor/lib64/libvidhance.so|470394c5db179c6bf185a3306a4c3d14ac302819 +vendor/lib64/libxmi_high_dynamic_range.so|be46a4176dd71ce62decb7452d947094f5ab40cb +vendor/lib64/libxml2_vendor.so|336de129dd9072f31d8aaee3286e5f10c1bf32fe + +# Camera (CamX) - from V12.5.7.0.RJZMIXM +vendor/lib/libcamxfdalgov7.so|aa05df1b8faa0edf6f0cbf25a735f9e4988c96df +vendor/lib/libcamxfdalgov8.so|5f3914991c53cd403bb89a67aeae2c4ea63a9b3a +vendor/lib/libcamxfdengine.so|4c910588cba64efe02b95b84c49e29462417bee8 +vendor/lib/libcamxstatscore.so|7c811efa4a42ce0dd9312cc0ddf1550fb4ac3099 +vendor/lib/libcamxswprocessalgo.so|6abf0158016b513365bfcabc2a156ef5d10b1d40 +vendor/lib/libcamxtintlessalgo.so|642309787c0c26c1919fe57cd9522496795e3520 +vendor/lib64/libcamxfdalgov7.so|2c494f89ba9117f60b211ed83e09de21df976977 +vendor/lib64/libcamxfdalgov8.so|f5c42e019942199820fe28b5e53c4e7af5b214c5 +vendor/lib64/libcamxfdengine.so|903650059a97a7ae4239438d9c6ba5943dbd8ede +vendor/lib64/libcamxstatscore.so|7aa8bf21d202f95849d32792c63e2a361f72d32b +vendor/lib64/libcamxswprocessalgo.so|17f311711df93814c858b29d516791f87c2588f0 +vendor/lib64/libcamxtintlessalgo.so|f6a9a9238bf199fb5d3defa652e506fc24b89762 + +# Camera (components) - from V12.5.7.0.RJZMIXM +vendor/lib64/camera/components/etc/visidon_clearshot_params.xml|ee064b324f3e4369a2d081b774076d2b71f6246a +vendor/lib64/camera/components/com.almalence.node.sr.so|5c100b81d501af5659041c33b250b09b94f7a952 +vendor/lib64/camera/components/com.altek.node.depurple.so|9c4658c840246452e4f44ca286ed25e1cc37dfb9 +vendor/lib64/camera/components/com.altek.node.distortioncorrection.so|0d86b2e6d63acaa61ffae17f054262d47dba24c9 +vendor/lib64/camera/components/com.arcsoft.node.bodyslim.so|2c1217d5f569e09008df921abd17cebe79fee21a +vendor/lib64/camera/components/com.arcsoft.node.capturebokeh.so|185146ccf8b5b2a20793307a45e9b29971b2ec13 +vendor/lib64/camera/components/com.arcsoft.node.capturefusion.so|20b27370fcc48bc1b39470dbf3bfbb93d11249d1 +vendor/lib64/camera/components/com.arcsoft.node.deflicker.so|21d3aacbd4f5f59f0c799e433b405426c5415254 +vendor/lib64/camera/components/com.arcsoft.node.distortioncorrection.so|42b4a1100009081e89af16ebf5990e26d54dd3ce +vendor/lib64/camera/components/com.arcsoft.node.hdr.so|396a88f4af0152ae4938ba9cf03b18ee3b85cecc +vendor/lib64/camera/components/com.arcsoft.node.hdrchecker.so|1fc7c4513c35f89173eb022117e4f21232dc143f +vendor/lib64/camera/components/com.arcsoft.node.realtimebokeh.so|11830ee0d3f5c03ac201aec10cc62c1a8589e9af +vendor/lib64/camera/components/com.arcsoft.node.skinbeautifier.so|27324324daac7712a213b7924bb4caf591018b66 +vendor/lib64/camera/components/com.arcsoft.node.smooth_transition.so|910354850c2d6f7c87ba80ed3b36cb66b5b1d581 +vendor/lib64/camera/components/com.arcsoft.node.superlowlight.so|a7b0493b3f4d4dde2e089404a1f217f871c34bfc +vendor/lib64/camera/components/com.mi.node.aiasd.so|5881d36a19f0493462e11585a6b87aae13f79b86 +vendor/lib64/camera/components/com.miai.node.portraitsupernight.so|1e33c25ac467b90426b333d5de8fe45f90294be1 +vendor/lib64/camera/components/com.miai.node.supernight.so|34a3d8288903b338b72878069d35ca5f2c760c41 +vendor/lib64/camera/components/com.qti.camx.chiiqutils.so|e04f8056b7652e7a32d6248258f71aa659974c15 +vendor/lib64/camera/components/com.qti.eisv2.so|82757ee665cf360f6e8c3ffeee50e82f6d5cfdc0 +vendor/lib64/camera/components/com.qti.eisv3.so|0b83a9245574fd4a38ab3827fab2ee56f32ac9b9 +vendor/lib64/camera/components/com.qti.hvx.addconstant.so|8ad6990b9d9733bf445509e93d0d96795acd8cd6 +vendor/lib64/camera/components/com.qti.hvx.binning.so|953eeafb72f3e38f68b399c66fe18f31eea498de +vendor/lib64/camera/components/com.qti.node.depth.so|d53c2de89f1d85bc21254bec1d73f8b5cf1179a6 +vendor/lib64/camera/components/com.qti.node.dewarp.so|0d33c190928cb3a2a739e0f4b5d9a965cffaa886 +vendor/lib64/camera/components/com.qti.node.dummyrtb.so|de524cf98501cf137c9af092d70ba02f4ff6266f +vendor/lib64/camera/components/com.qti.node.dummysat.so|ea52a89393c0a9c7cd1c5e57f5bcea0b17c3d668 +vendor/lib64/camera/components/com.qti.node.eisv2.so|aaeb06779da8ea2d1d781b96c1e0c57343d4ff30 +vendor/lib64/camera/components/com.qti.node.eisv3.so|645836874675e574ade9aea05ca138ffb3c61cb7 +vendor/lib64/camera/components/com.qti.node.fcv.so|1118b58ca32cf6f70fab3199301667710bbe63de +vendor/lib64/camera/components/com.qti.node.gpu.so|b560b792ecbc34c3ec94fc85ba34d86d0cdda35e +vendor/lib64/camera/components/com.qti.node.memcpy.so|3ee91754c8b48f4a5bb5049ecbb12dff61d17909 +vendor/lib64/camera/components/com.qti.node.photosolid.so|90b08ea76a4f1205d25b7514889d475ebec3cb43 +vendor/lib64/camera/components/com.qti.node.remosaic.so|72d71374d0b0f2c681a30b50647c1a27b781427d +vendor/lib64/camera/components/com.qti.node.stich.so|032f88ed241860127eb72ec4f5e3597d97530346 +vendor/lib64/camera/components/com.qti.node.swregistration.so|ed136c977f74acd3679350fe1edd3084ed9acdb5 +vendor/lib64/camera/components/com.qti.node.watermark.so|8dd11f82d6609d7f0f154922ac4fbb45d4e988ef +vendor/lib64/camera/components/com.qti.node.xiaomigenderage.so|b4b2516c70fe422a48524aaad70b42c87a166086 +vendor/lib64/camera/components/com.qti.stats.aec.so|04ee7a6553786fbfc6a7e77e1f8ae1848d4e323f +vendor/lib64/camera/components/com.qti.stats.aecwrapper.so|ca3ec515bb9b4110543f7c9a164c1793db22dbff +vendor/lib64/camera/components/com.qti.stats.af.so|dbdcb1af53e0d65043505d5501e0c96851d361d4 +vendor/lib64/camera/components/com.qti.stats.afd.so|66169c91d73d5ee4a73caf3abbd14ddea4ae4d55 +vendor/lib64/camera/components/com.qti.stats.afwrapper.so|cc885a07368aa7ef04783454d59963ed7c6a24f4 +vendor/lib64/camera/components/com.qti.stats.asd.so|971b7bd6d518e714bc401d613c9fa335f53496fe +vendor/lib64/camera/components/com.qti.stats.awb.so|99fd72086b94fe2ef687b7e8ad4a7b87c524c00e +vendor/lib64/camera/components/com.qti.stats.awbwrapper.so|6631e9aa9b2d3f787a95a9678d99c1db40c7e897 +vendor/lib64/camera/components/com.qti.stats.haf.so|83a08694493d0a140b1ffde11e2a4ccf47717eab +vendor/lib64/camera/components/com.qti.stats.hafoverride.so|dda771c5b33e6df8f7eea28c74c73ba168617e32 +vendor/lib64/camera/components/com.qti.stats.localhistogram.so|5dc38a0be5760f98865df7eb7b228dff61584a3b +vendor/lib64/camera/components/com.qti.stats.pdlib.so|1016490cda4a304548a1576d4396d7bd657cc285 +vendor/lib64/camera/components/com.qti.stats.pdlibsony.so|a3b098f1286195359cbf9e614d6ca2beef0d5ac0 +vendor/lib64/camera/components/com.qti.stats.pdlibwrapper.so|83b74a88e43c132edc110345dc40d2b5897f42d7 +vendor/lib64/camera/components/com.qtistatic.stats.aec.so|a3f81c81c5d4b61e579eefbc1996a34eafc6df76 +vendor/lib64/camera/components/com.qtistatic.stats.af.so|6a7daf793a5325a71283ce81d3ad2969dbb3cb58 +vendor/lib64/camera/components/com.qtistatic.stats.awb.so|c716abb77541e496461ec6f196c32de7f9d7d94b +vendor/lib64/camera/components/com.qtistatic.stats.pdlib.so|77bcc45327aeeb9adb0f7a35bd8126f068aae4d4 +vendor/lib64/camera/components/com.st.node.sr.so|be775e6b6daee0b3d85f6f9827eec1d7d1cf5335 +vendor/lib64/camera/components/com.vidhance.node.eis.so|c2ca34a16e5d54055b5f42356b58b46afeead5ff +vendor/lib64/camera/components/com.vidhance.stats.aec_dmbr.so|e10e5fe036cd67a081a8c0092c6158c38da3acf4 +vendor/lib64/camera/components/com.visidon.node.clearshot.so|4e48ee5f937aa466ee7d58ab045d7fa72cf24454 +vendor/lib64/camera/components/com.visidon.node.sr.so|2ff6db8d6969138f6d1356ea0b286e28ad876d37 +vendor/lib64/camera/components/com.xiaomi.node.mibokeh.so|52c270f779d2b55dfb37a10fe95de285e85b167e +vendor/lib64/camera/components/com.xiaomi.node.mifilter.so|1d590365c15c9a73c5f840a318eef7571d69b8fe +vendor/lib64/camera/components/com.xiaomi.node.mifragment.so|b7506eeff578e61215f2ecb97ecde12f133b89e6 +vendor/lib64/camera/components/com.xiaomi.node.mimovie.so|cb5c4e8fdf97f424b200204a54d37801824a509a +vendor/lib64/camera/components/com.xiaomi.node.misegment.so|2c33df2b89d6de8b08f2765b31363b2f806f2d68 +vendor/lib64/camera/components/libdepthmapwrapper.so|b4364143e430bd222742f8585b65e533bc1077b2 + +# Camera (configs) - from V12.5.7.0.RJZMIXM +vendor/etc/camera/CFR_para_M_src1.bin|8eeadb3512344730b3f106644352e84bd9015b9a +vendor/etc/camera/CFR_para_M_src2.bin|8eeadb3512344730b3f106644352e84bd9015b9a +vendor/etc/camera/CFR_para_M_src3.bin|e44cd55af5471410074a550da53574f198028dcc +vendor/etc/camera/CFR_para_UW_src1.bin|ac50c289baacb415f86505089c3d0e1c9134dbbb +vendor/etc/camera/CFR_para_UW_src2.bin|a8c647a7e02235829f6a912106f9a242249394ea +vendor/etc/camera/CFR_para_UW_src3.bin|ac50c289baacb415f86505089c3d0e1c9134dbbb +vendor/etc/camera/LDC_FPC_TUNING_DATA.bin|d562d957c22a9fb915f014d9d1fcbff8a1b51ec9 +vendor/etc/camera/LDC_PACKDATA_VENDORID_0x01.bin|646173e2a2ebc6d50dd2d3d1b3e164f5bd8e1c4a +vendor/etc/camera/LDC_PACKDATA_VENDORID_0x07.bin|150d6a584014f8d9f2dfe40efa0cf1d989c33659 +vendor/etc/camera/almalence_sr_params_tele.config|a5216343ebac981b47670522cf0a56960181f5cd +vendor/etc/camera/almalence_sr_params_wide.config|9567cf89e5347348ea5e10035c3f2635b9fd8162 +vendor/etc/camera/beauty_ui9_intelligent_params.config|61b3c3b6cd4ac946ddbc41a807b5906bb2c1e113 +vendor/etc/camera/body_slim_ui9_params.config|6a341b766aa06b6f8496fd96c440ea27a023eb0b +vendor/etc/camera/camxoverridesettings.txt|3ba4f5274d653e4590e0fa55ed147a51cb6ad7eb +vendor/etc/camera/eisoverridesettings.txt|4ea9ba43f55eaf0ac3106a0b63c49654af741270 +vendor/etc/camera/eyelineblush.cng|f85c3388ab3112ad8963e004c47b131e5d567cca +vendor/etc/camera/golden_rear_dc_cal_wt.bin|a619dc6b336a187fcb7b2f50e8ce49abf6e33906 +vendor/etc/camera/hdr_ui9_params.config|ae257e7c20f64651b083e06bc75e4ae0658cfd54 +vendor/etc/camera/libsnpe_dsp_v66_domains_v2_skel.so|e3896008cce53c03adf1edace20a993f272eeb0e +vendor/etc/camera/mibokeh_712_opencl.bin|bfb53cec3eb6feb0388db052ee1d4e97cd9582a2 +vendor/etc/camera/mibokeh_712_parameter.bin|1360bea7d63b1eb28047822176759559e7f4c30e +vendor/etc/camera/model_back.dlc|93072fd8b363b6aad637e063734b3c601f927869 +vendor/etc/camera/model_front.dlc|0605ed7ef2d45fd73bfc286a2e435cc4c3b7fbc8 +vendor/etc/camera/sceneDetection.xml|0e233ccba0e757b64c42e724f5f6150676b009ba +vendor/etc/camera/vidhance_calibration|b4c1775771a1a5d03e8401e7a6091798701dc8aa +vendor/etc/camera/vidhance_calibration_gc8034|836a329142bbfa77525567963e88379686e29b2f +vendor/etc/camera/vidhance_calibration_imx582|377d5cc5e7dce32bb5c4bccd581f6945744be614 +vendor/etc/camera/vidhance_calibration_ov8856|32b776da7e6189c3045a1f4f01a4601d0f2a60b0 +vendor/etc/camera/vidhance_calibration_s5kgm2|49e036cda525cc1a73dc2a87400fd11c1d7e879e +vendor/etc/camera/vidhance_calibration_s5kgw1|b4c1775771a1a5d03e8401e7a6091798701dc8aa +vendor/etc/camera/watermark_font_2300_3199.dat|470c10429888b89966af5eb610b13b843a1a0248 + +# Camera (firmware) - from V12.5.7.0.RJZMIXM +vendor/firmware/CAMERA_ICP.elf|4eccbb6081b3171414e838f62f7d7936b8181594 +vendor/firmware/osc_rtp_24K_5s.bin|9f32c9bf0776a566d3254129a028dae9bed76b81 + +# Camera (sensors) - from V12.5.7.0.RJZMIXM +vendor/lib64/camera/com.qti.eeprom.sunny_gc8034.so|b5436b76188efc69a6e86f5b549549ea9b4a3180 +vendor/lib64/camera/com.qti.sensor.curtana_gc02m1.so|e35ea281e6ca94d0846c7eb687cf49e5880146d9 +vendor/lib64/camera/com.qti.sensor.curtana_gc8034.so|7f58d106c5146ff6ca9588d4ca8f69baf61ef4fc +vendor/lib64/camera/com.qti.sensor.curtana_hi556.so|c8fc67969c722e78d9f81fbe2b0036e177fb6fbd +vendor/lib64/camera/com.qti.sensor.curtana_imx582.so|3d51f313e3c98f16f4cb4f5eab82a54628fe8aae +vendor/lib64/camera/com.qti.sensor.curtana_ov16a1q.so|5a8c07a5b33b4f64b70b59727b7748128682e4af +vendor/lib64/camera/com.qti.sensor.curtana_ov2180.so|74b12156aff963b07d0629c418285cb4874a187a +vendor/lib64/camera/com.qti.sensor.curtana_ov8856.so|dafad7fdb29c8b332e8a8621c1900c26bc1ad48a +vendor/lib64/camera/com.qti.sensor.curtana_s5k5e9.so|1889282f81138e3223d6bdfebaabfe1d894d81dd +vendor/lib64/camera/com.qti.sensor.curtana_s5kgm2.so|ebeff8e36f966c309e578639d678122842158df6 +vendor/lib64/camera/com.qti.sensor.excalibur_gc02m1.so|8efe01ca07b02dd74a225176d83efd64d728219c +vendor/lib64/camera/com.qti.sensor.excalibur_gc8034.so|455a36b8c0502145065c8f5d0f5b3f6d02fdd06e +vendor/lib64/camera/com.qti.sensor.excalibur_hi556.so|7b71a336e712b92cbf5ba2c36d3967c0fab01cf0 +vendor/lib64/camera/com.qti.sensor.excalibur_ov2180.so|b4e427f7b200ee3781f8321e7f11fd86e9d4457c +vendor/lib64/camera/com.qti.sensor.excalibur_ov32a1q.so|9e565702a779d0ca46546f12b43a903d0ea3d9b8 +vendor/lib64/camera/com.qti.sensor.excalibur_ov8856.so|14bb8ea2d23fd66c83d21366d2c0635450f3f7f9 +vendor/lib64/camera/com.qti.sensor.excalibur_s5k5e9.so|8afac1f1841750eef35cc36c8e6a96a2c838ee15 +vendor/lib64/camera/com.qti.sensor.excalibur_s5kgw1.so|b45697a5370c9a4d81e50b04a1ec07656972c0e1 +vendor/lib64/camera/com.qti.sensormodule.ofilm_gc02m1.bin|423b7266fa8f0164215b9f7dd0c1fe490a1e75c1 +vendor/lib64/camera/com.qti.sensormodule.ofilm_ov16a1q.bin|15b857613b7e34006370f0d82bec18c03aad47a3 +vendor/lib64/camera/com.qti.sensormodule.ofilm_ov2180.bin|2461ce873bcdd0f0d185b52d95d1751d77260bb0 +vendor/lib64/camera/com.qti.sensormodule.ofilm_ov8856.bin|412faf45092f205f08e72d8376f0d399dff0d5e7 +vendor/lib64/camera/com.qti.sensormodule.ofilm_s5k5e9.bin|9b216ca0c0803d3a988c45589c93c6eb4404f1de +vendor/lib64/camera/com.qti.sensormodule.sunny_gc02m1.bin|888e29e49b068647223bfe92034f24ae085b6075 +vendor/lib64/camera/com.qti.sensormodule.sunny_gc8034.bin|94c715a27a1d93024e2cc946a4bc1545b2596a83 +vendor/lib64/camera/com.qti.sensormodule.sunny_ov16a1q.bin|a2f57bf6b7aa3c2b295eee794971eaac8206f72a +vendor/lib64/camera/com.qti.sensormodule.sunny_ov2180.bin|1584033c43aa6499978fc875e7b07ba4509d20f2 +vendor/lib64/camera/com.qti.sensormodule.sunny_ov8856.bin|7b9c098ebebe5db9ca7d2c0357946e66c0cfc3f5 +vendor/lib64/camera/com.qti.sensormodule.sunny_s5k5e9.bin|3ebd6af6201d9d0b11353a889c44d80e42822b4c +vendor/lib64/camera/com.qti.tuned.default.bin|87838231dff84847b0d7495badecf6a9806254c2 +vendor/lib64/camera/com.qti.tuned.ofilm_ov16a1q.bin|66cbcbc32196b8f8c633127a5e110be1799073c6 +vendor/lib64/camera/com.qti.tuned.ofilm_ov2180.bin|4e10cc1774ca56eb61ca4df866c251bfd218a25e +vendor/lib64/camera/com.qti.tuned.ofilm_ov8856.bin|50fbb05a9563111ddf1ba7ade2239bc0439027fe +vendor/lib64/camera/com.qti.tuned.ofilm_s5k5e9.bin|73f37d722640ecd831d2e76a8cc68c635bc4141b +vendor/lib64/camera/com.qti.tuned.sunny_gc8034.bin|f914875042960f55ea3ee1f3645fe647c5962a98 +vendor/lib64/camera/com.qti.tuned.sunny_ov16a1q.bin|66cbcbc32196b8f8c633127a5e110be1799073c6 +vendor/lib64/camera/com.qti.tuned.sunny_ov2180.bin|4e10cc1774ca56eb61ca4df866c251bfd218a25e +vendor/lib64/camera/com.qti.tuned.sunny_s5k5e9.bin|c0b60451ae74ca2e5447049b51306f3ae9ebffea +vendor/lib64/camera/fdconfigpreview.bin|e81c3e77382551ab8f7a3a44a594009976de10b4 +vendor/lib64/camera/fdconfigpreviewlite.bin|e81c3e77382551ab8f7a3a44a594009976de10b4 +vendor/lib64/camera/fdconfigvideo.bin|e81c3e77382551ab8f7a3a44a594009976de10b4 +vendor/lib64/camera/fdconfigvideolite.bin|e81c3e77382551ab8f7a3a44a594009976de10b4 + # Camera sensors (curtana & gram) - from curtana vendor/lib64/camera/com.qti.sensormodule.ofilm_gc02m1_filter.bin|4687d1d2eb8d36b5bed2ceafb197ef21d22bd97e vendor/lib64/camera/com.qti.sensormodule.ofilm_s5kgm2.bin|5ebb58c43e95d598f35a0808a0497f51affdcbd6 @@ -12,24 +352,852 @@ vendor/lib64/camera/com.qti.tuned.ofilm_gc02m1_filter.bin|fdcb7bcb026f889b002d0b vendor/lib64/camera/com.qti.tuned.ofilm_s5kgm2.bin|8b15943a79f9d82d7ceb6055da2700b89bb29b7d vendor/lib64/camera/com.qti.tuned.sunny_imx582.bin|a43b96a3d4b361a388c89fba46cdf0409d33da17 -# Camera sensors (curtana & joyeuse) -vendor/lib64/camera/com.qti.sensormodule.sunny_hi556.bin -vendor/lib64/camera/com.qti.tuned.sunny_hi556.bin +# Camera sensors (curtana & joyeuse) - from V12.5.7.0.RJZMIXM +vendor/lib64/camera/com.qti.sensormodule.sunny_hi556.bin|699854c027d805565ca93fc5f0f9161e83bd7c63 +vendor/lib64/camera/com.qti.tuned.sunny_hi556.bin|f8cabd9bb7167bd47120b2a97beb24f663ee8ab2 -# Camera sensors (excalibur & joyeuse) -vendor/lib64/camera/com.qti.sensormodule.ofilm_s5kgw1.bin -vendor/lib64/camera/com.qti.sensormodule.ofilm_s5kgw1_mirrorflip.bin -vendor/lib64/camera/com.qti.sensormodule.sunny_s5kgw1.bin -vendor/lib64/camera/com.qti.sensormodule.sunny_s5kgw1_mirrorflip.bin -vendor/lib64/camera/com.qti.tuned.sunny_gc02m1.bin -vendor/lib64/camera/com.qti.tuned.sunny_s5kgw1.bin +# Camera sensors (excalibur & joyeuse) - from V12.5.7.0.RJZMIXM +vendor/lib64/camera/com.qti.sensormodule.ofilm_s5kgw1.bin|d7d7d51d436d46da23bb985982151cc3595e0634 +vendor/lib64/camera/com.qti.sensormodule.ofilm_s5kgw1_mirrorflip.bin|5f980c2f9520998ac0b53c938d4ce2c952c4c80b +vendor/lib64/camera/com.qti.sensormodule.sunny_s5kgw1.bin|98a20d97d7babb7aab1406d5a6b0a3d7cfeeae41 +vendor/lib64/camera/com.qti.sensormodule.sunny_s5kgw1_mirrorflip.bin|8e170a3952e7032f8354e9f148893b2a24fc2e7d +vendor/lib64/camera/com.qti.tuned.sunny_gc02m1.bin|f4764fb7a99b7a61b4569362959f444db910031b +vendor/lib64/camera/com.qti.tuned.sunny_s5kgw1.bin|042dab61027b054bc176c779e4b079678a9102bf # Camera sensors (excalibur) - from excalibur vendor/lib64/camera/com.qti.sensormodule.sunny_ov32a1q.bin|a6f8e2da547f15d315412f81c58d4ba6888641d5 vendor/lib64/camera/com.qti.tuned.sunny_ov32a1q.bin|ea825eadeacdc02debdf1b6406706bf695e11bc0 -# Camera sensors (joyeuse) -vendor/lib64/camera/com.qti.tuned.ofilm_s5kgw1.bin +# Camera sensors (joyeuse) - from V12.5.7.0.RJZMIXM +vendor/lib64/camera/com.qti.tuned.ofilm_s5kgw1.bin|c2cf28a6473bc3927f418623886abf39bd069341 + +# CDSP +vendor/bin/cdsprpcd +vendor/etc/init/vendor.qti.cdsprpc-service.rc +vendor/lib64/libcdsp_default_listener.so +vendor/lib64/libcdsprpc.so + +# Charger +vendor/bin/hvdcp_opti +vendor/etc/init/vendor.qti.hardware.charger_monitor@1.0-service.rc +vendor/etc/charger_fstab.qti + +# CNE +vendor/app/CneApp/CneApp.apk +vendor/app/IWlanService/IWlanService.apk +vendor/bin/cnd +vendor/etc/cne/wqeclient/ATT/ATT_profile1.xml +vendor/etc/cne/wqeclient/ATT/ATT_profile2.xml +vendor/etc/cne/wqeclient/ATT/ATT_profile3.xml +vendor/etc/cne/wqeclient/ATT/ATT_profile4.xml +vendor/etc/cne/wqeclient/ATT/ATT_profile5.xml +vendor/etc/cne/wqeclient/ATT/ATT_profile6.xml +vendor/etc/cne/wqeclient/ROW/ROW_profile1.xml +vendor/etc/cne/wqeclient/ROW/ROW_profile15.xml +vendor/etc/cne/wqeclient/ROW/ROW_profile16.xml +vendor/etc/cne/wqeclient/ROW/ROW_profile17.xml +vendor/etc/cne/wqeclient/ROW/ROW_profile18.xml +vendor/etc/cne/wqeclient/ROW/ROW_profile19.xml +vendor/etc/cne/wqeclient/ROW/ROW_profile2.xml +vendor/etc/cne/wqeclient/ROW/ROW_profile20.xml +vendor/etc/cne/wqeclient/ROW/ROW_profile21.xml +vendor/etc/cne/wqeclient/ROW/ROW_profile3.xml +vendor/etc/cne/wqeclient/ROW/ROW_profile32.xml +vendor/etc/cne/wqeclient/ROW/ROW_profile4.xml +vendor/etc/cne/wqeclient/ROW/ROW_profile5.xml +vendor/etc/cne/wqeclient/ROW/ROW_profile6.xml +vendor/etc/cne/wqeclient/ROW/ROW_profile7.xml +vendor/etc/cne/wqeclient/VZW/VZW_profile1.xml +vendor/etc/cne/wqeclient/VZW/VZW_profile2.xml +vendor/etc/cne/wqeclient/VZW/VZW_profile3.xml +vendor/etc/cne/wqeclient/VZW/VZW_profile4.xml +vendor/etc/cne/wqeclient/VZW/VZW_profile5.xml +vendor/etc/cne/wqeclient/VZW/VZW_profile6.xml +vendor/etc/cne/mwqem.conf +vendor/etc/cne/profileMwqem.xml +vendor/etc/default-permissions/com.qualcomm.qti.cne.xml +vendor/etc/init/cnd.rc +vendor/lib64/libcne.so +vendor/lib64/libcneapiclient.so +vendor/lib64/libcneoplookup.so +vendor/lib64/libwms.so +vendor/lib64/libwqe.so +vendor/lib64/libxml.so +vendor/lib64/vendor.qti.data.factory@2.0.so +vendor/lib64/vendor.qti.data.factory@2.1.so +vendor/lib64/vendor.qti.data.factory@2.2.so +vendor/lib64/vendor.qti.data.factory@2.3.so +vendor/lib64/vendor.qti.data.mwqem@1.0.so +vendor/lib64/vendor.qti.data.slm@1.0.so +vendor/lib64/vendor.qti.hardware.data.cne.internal.api@1.0.so +vendor/lib64/vendor.qti.hardware.data.cne.internal.constants@1.0.so +vendor/lib64/vendor.qti.hardware.data.cne.internal.server@1.0.so +vendor/lib64/vendor.qti.hardware.data.connection@1.0.so +vendor/lib64/vendor.qti.hardware.data.connection@1.1.so +vendor/lib64/vendor.qti.hardware.data.dynamicdds@1.0.so +vendor/lib64/vendor.qti.hardware.data.iwlan@1.0.so +vendor/lib64/vendor.qti.hardware.data.latency@1.0.so +vendor/lib64/vendor.qti.hardware.data.lce@1.0.so +vendor/lib64/vendor.qti.hardware.data.qmi@1.0.so +vendor/lib64/vendor.qti.hardware.mwqemadapter@1.0.so +vendor/lib64/vendor.qti.hardware.slmadapter@1.0.so +vendor/lib64/vendor.qti.latency@2.0.so +vendor/lib64/vendor.qti.latency@2.1.so + +# Configstore +vendor/bin/hw/vendor.qti.hardware.capabilityconfigstore@1.0-service +vendor/etc/init/vendor.qti.hardware.capabilityconfigstore@1.0-service.rc +vendor/lib64/hw/vendor.qti.hardware.capabilityconfigstore@1.0-impl.so + +# Consumerir +vendor/lib64/hw/consumerir.default.so:vendor/lib64/hw/consumerir.atoll.so + +# CVP +vendor/lib64/libcvp.so +vendor/lib64/libcvp_common.so +vendor/lib64/libcvp_stub.so +vendor/lib64/vendor.qti.hardware.cvp@1.0.so + +# DPM +system_ext/bin/dpmd +system_ext/etc/dpm/dpm.conf +system_ext/etc/init/dpmd.rc +system_ext/etc/permissions/com.qti.dpmframework.xml +system_ext/etc/permissions/dpmapi.xml +system_ext/framework/com.qti.dpmframework.jar +system_ext/framework/dpmapi.jar +system_ext/lib64/com.qualcomm.qti.dpm.api@1.0.so +system_ext/lib64/libdpmctmgr.so +system_ext/lib64/libdpmfdmgr.so +system_ext/lib64/libdpmframework.so +system_ext/lib64/libdpmtcm.so +system_ext/priv-app/dpmserviceapp/dpmserviceapp.apk +vendor/bin/dpmQmiMgr +vendor/etc/init/dpmQmiMgr.rc +vendor/lib64/com.qualcomm.qti.dpm.api@1.0.so +vendor/lib64/libdpmqmihal.so + +# DRM +vendor/bin/qseecomd +vendor/etc/init/qseecomd.rc +vendor/etc/gpfspath_oem_config.xml +vendor/lib64/libGPreqcancel.so +vendor/lib64/libGPreqcancel_svc.so +vendor/lib64/libQSEEComAPI.so +vendor/lib64/libcpion.so +vendor/lib64/libdrmfs.so +vendor/lib64/libdrmtime.so +vendor/lib64/libminkdescriptor.so +vendor/lib64/libminksocket.so +vendor/lib64/liboemcrypto.so +vendor/lib64/libops.so +vendor/lib64/libqisl.so +vendor/lib64/librpmb.so +vendor/lib64/libssd.so +vendor/lib64/libtrustedapploader.so + +# DRM (Widevine) +vendor/bin/hw/android.hardware.drm@1.3-service.widevine +vendor/etc/init/android.hardware.drm@1.3-service.widevine.rc +vendor/etc/vintf/manifest/manifest_android.hardware.drm@1.3-service.widevine.xml +vendor/lib64/libwvhidl.so + +# DSP +vendor/bin/dspservice +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/lib64/hw/fingerprint.goodix.default.so +vendor/lib64/com.fingerprints.extension@1.0.so +vendor/lib64/libgf_ca.so +vendor/lib64/libgf_hal.so +vendor/lib64/libgoodixhwfingerprint.so +vendor/lib64/libvendor.goodix.hardware.biometrics.fingerprint@2.1.so + +# Fingerprint - from Kuba Wojciechowski +vendor/lib64/hw/fingerprint.fpc.default.so|645bf256da2db3ce60dddab9b3282ab7241bbcb0 + +# FM +system_ext/lib64/fm_helium.so +system_ext/lib64/libfm-hci.so +system_ext/lib64/vendor.qti.hardware.fm@1.0.so +vendor/lib64/hw/vendor.qti.hardware.fm@1.0-impl.so +vendor/lib64/ftm_fm_lib.so +vendor/lib64/vendor.qti.hardware.fm@1.0.so + +# Gatekeeper +vendor/bin/hw/android.hardware.gatekeeper@1.0-service-qti +vendor/etc/init/android.hardware.gatekeeper@1.0-service-qti.rc +vendor/lib64/hw/android.hardware.gatekeeper@1.0-impl-qti.so + +# Graphics (Adreno) +vendor/lib/egl/eglSubDriverAndroid.so +vendor/lib/egl/libEGL_adreno.so +vendor/lib/egl/libGLESv1_CM_adreno.so +vendor/lib/egl/libGLESv2_adreno.so +vendor/lib/egl/libq3dtools_adreno.so +vendor/lib/egl/libq3dtools_esx.so +vendor/lib/hw/vulkan.adreno.so +vendor/lib/libC2D2.so +vendor/lib/libCB.so +vendor/lib/libOpenCL.so +vendor/lib/libVkLayer_q3dtools.so +vendor/lib/libadreno_app_profiles.so +vendor/lib/libadreno_utils.so +vendor/lib/libc2d30_bltlib.so +vendor/lib/libgpudataproducer.so +vendor/lib/libgsl.so +vendor/lib/libllvm-glnext.so +vendor/lib/libllvm-qcom.so +vendor/lib64/egl/eglSubDriverAndroid.so +vendor/lib64/egl/libEGL_adreno.so +vendor/lib64/egl/libGLESv1_CM_adreno.so +vendor/lib64/egl/libGLESv2_adreno.so +vendor/lib64/egl/libq3dtools_adreno.so +vendor/lib64/egl/libq3dtools_esx.so +vendor/lib64/hw/vulkan.adreno.so +vendor/lib64/libC2D2.so +vendor/lib64/libCB.so +vendor/lib64/libOpenCL.so +vendor/lib64/libVkLayer_q3dtools.so +vendor/lib64/libadreno_app_profiles.so +vendor/lib64/libadreno_utils.so +vendor/lib64/libc2d30_bltlib.so +vendor/lib64/libgpudataproducer.so +vendor/lib64/libgsl.so +vendor/lib64/libllvm-glnext.so +vendor/lib64/libllvm-qcom.so + +# Graphics (SDM) +vendor/etc/SVIConfig.xml +vendor/lib64/libdisp-aba.so +vendor/lib64/libdisplayqos.so +vendor/lib64/libhdr_tm.so +vendor/lib64/libqseed3.so +vendor/lib64/libsdedrm.so +vendor/lib64/libsdm-color.so +vendor/lib64/libsdm-colormgr-algo.so +vendor/lib64/libsdm-diag.so +vendor/lib64/libsdm-disp-vndapis.so +vendor/lib64/libsdmextension.so +vendor/lib64/libtinyxml2_1.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 + +# GPS +vendor/app/CACertService/CACertService.apk +vendor/bin/hw/android.hardware.gnss@2.1-service-qti +vendor/bin/garden_app +vendor/bin/loc_launcher +vendor/bin/lowi-server +vendor/bin/mlid +vendor/bin/slim_daemon +vendor/bin/tloc_daemon +vendor/bin/xtra-daemon +vendor/bin/xtwifi-client +vendor/bin/xtwifi-inet-agent +vendor/etc/init/android.hardware.gnss@2.1-service-qti.rc +vendor/etc/vintf/manifest/android.hardware.gnss@2.1-service-qti.xml +vendor/etc/vintf/manifest/vendor.qti.gnss@4.0-service.xml +vendor/etc/apdr.conf +vendor/etc/cacert_location.pem +vendor/etc/flp.conf +vendor/etc/gps.conf +vendor/etc/izat.conf +vendor/etc/lowi.conf +vendor/etc/sap.conf +vendor/etc/xtra_root_cert.pem +vendor/etc/xtwifi.conf +vendor/lib64/hw/android.hardware.gnss@2.1-impl-qti.so +vendor/lib64/hw/vendor.qti.gnss@4.0-impl.so +vendor/lib64/libaoa.so +vendor/lib64/libbatching.so +vendor/lib64/libcacertclient.so +vendor/lib64/libcdfw.so +vendor/lib64/libcdfw_remote_api.so +vendor/lib64/libdataitems.so +vendor/lib64/libgarden.so +vendor/lib64/libgarden_haltests_e2e.so +vendor/lib64/libgdtap.so +vendor/lib64/libgeofencing.so +vendor/lib64/libgnss.so +vendor/lib64/libgps.utils.so +vendor/lib64/libizat_client_api.so +vendor/lib64/libizat_core.so +vendor/lib64/libjnihelper.so +vendor/lib64/liblbs_core.so +vendor/lib64/libloc_api_v02.so +vendor/lib64/libloc_core.so +vendor/lib64/libloc_socket.so +vendor/lib64/liblocation_api.so +vendor/lib64/liblocationservice.so +vendor/lib64/liblocationservice_glue.so +vendor/lib64/liblowi_client.so +vendor/lib64/liblowi_wifihal.so +vendor/lib64/libmmosal.so +vendor/lib64/libqcc_file_agent.so +vendor/lib64/libqdma_file_agent.so +vendor/lib64/libsynergy_loc_api.so +vendor/lib64/libxtadapter.so +vendor/lib64/vendor.qti.gnss@1.0.so +vendor/lib64/vendor.qti.gnss@1.1.so +vendor/lib64/vendor.qti.gnss@1.2.so +vendor/lib64/vendor.qti.gnss@2.0.so +vendor/lib64/vendor.qti.gnss@2.1.so +vendor/lib64/vendor.qti.gnss@3.0.so +vendor/lib64/vendor.qti.gnss@4.0-service.so +vendor/lib64/vendor.qti.gnss@4.0.so +vendor/lib64/vendor.qti.hardware.cacert@1.0.so +vendor/lib64/vendor.qti.hardware.qccsyshal@1.0.so + +# HotwordEnrollment +product/priv-app/HotwordEnrollmentOKGoogleHEXAGON/HotwordEnrollmentOKGoogleHEXAGON.apk +product/priv-app/HotwordEnrollmentXGoogleHEXAGON/HotwordEnrollmentXGoogleHEXAGON.apk +system_ext/etc/permissions/com.android.hotwordenrollment.common.util.xml +system_ext/framework/com.android.hotwordenrollment.common.util.jar + +# IMS +system_ext/app/uceShimService/uceShimService.apk +system_ext/etc/permissions/com.qualcomm.qti.imscmservice-V2.0-java.xml +system_ext/etc/permissions/com.qualcomm.qti.imscmservice-V2.1-java.xml +system_ext/etc/permissions/com.qualcomm.qti.imscmservice-V2.2-java.xml +system_ext/framework/com.qualcomm.qti.imscmservice-V2.0-java.jar +system_ext/framework/com.qualcomm.qti.imscmservice-V2.1-java.jar +system_ext/framework/com.qualcomm.qti.imscmservice-V2.2-java.jar +system_ext/lib64/com.qualcomm.qti.imscmservice@2.0.so +system_ext/lib64/com.qualcomm.qti.imscmservice@2.1.so +system_ext/lib64/com.qualcomm.qti.imscmservice@2.2.so +system_ext/lib64/com.qualcomm.qti.uceservice@2.0.so +system_ext/lib64/com.qualcomm.qti.uceservice@2.1.so +system_ext/lib64/com.qualcomm.qti.uceservice@2.2.so +system_ext/lib64/com.qualcomm.qti.uceservice@2.3.so +system_ext/lib64/lib-imsvideocodec.so +system_ext/lib64/lib-imsvt.so +system_ext/lib64/lib-imsvtextutils.so +system_ext/lib64/lib-imsvtutils.so +system_ext/lib64/libdiag_system.so +system_ext/lib64/libimscamera_jni.so +system_ext/lib64/libimsmedia_jni.so +system_ext/lib64/vendor.qti.diaghal@1.0.so +system_ext/lib64/vendor.qti.hardware.radio.ims@1.0.so +system_ext/lib64/vendor.qti.hardware.radio.ims@1.1.so +system_ext/lib64/vendor.qti.hardware.radio.ims@1.2.so +system_ext/lib64/vendor.qti.hardware.radio.ims@1.3.so +system_ext/lib64/vendor.qti.hardware.radio.ims@1.4.so +system_ext/lib64/vendor.qti.ims.callcapability@1.0.so +system_ext/lib64/vendor.qti.ims.callinfo@1.0.so +system_ext/lib64/vendor.qti.ims.factory@1.0.so +system_ext/lib64/vendor.qti.ims.rcsconfig@1.0.so +system_ext/lib64/vendor.qti.imsrtpservice@3.0.so +system_ext/priv-app/ims/ims.apk +vendor/bin/ims_rtp_daemon +vendor/bin/imsdatadaemon +vendor/bin/imsqmidaemon +vendor/bin/imsrcsd +vendor/etc/init/ims_rtp_daemon.rc +vendor/etc/init/imsdatadaemon.rc +vendor/etc/init/imsqmidaemon.rc +vendor/etc/init/imsrcsd.rc +vendor/etc/seccomp_policy/imsrtp.policy +vendor/lib64/com.qualcomm.qti.imscmservice@2.0.so +vendor/lib64/com.qualcomm.qti.imscmservice@2.1.so +vendor/lib64/com.qualcomm.qti.imscmservice@2.2.so +vendor/lib64/com.qualcomm.qti.uceservice@2.0.so +vendor/lib64/com.qualcomm.qti.uceservice@2.1.so +vendor/lib64/com.qualcomm.qti.uceservice@2.2.so +vendor/lib64/com.qualcomm.qti.uceservice@2.3.so +vendor/lib64/lib-imscmservice.so +vendor/lib64/lib-imsdpl.so +vendor/lib64/lib-imsqimf.so +vendor/lib64/lib-imsrcs-v2.so +vendor/lib64/lib-imsrcsbaseimpl.so +vendor/lib64/lib-imsvtcore.so +vendor/lib64/lib-imsxml.so +vendor/lib64/lib-rcsconfig.so +vendor/lib64/lib-rtpcommon.so +vendor/lib64/lib-rtpcore.so +vendor/lib64/lib-rtpsl.so +vendor/lib64/lib-siputility.so +vendor/lib64/lib-uceservice.so +vendor/lib64/librcc.so +vendor/lib64/vendor.qti.hardware.radio.ims@1.0.so +vendor/lib64/vendor.qti.hardware.radio.ims@1.1.so +vendor/lib64/vendor.qti.hardware.radio.ims@1.2.so +vendor/lib64/vendor.qti.hardware.radio.ims@1.3.so +vendor/lib64/vendor.qti.hardware.radio.ims@1.4.so +vendor/lib64/vendor.qti.hardware.radio.ims@1.5.so +vendor/lib64/vendor.qti.hardware.radio.ims@1.6.so +vendor/lib64/vendor.qti.hardware.radio.ims@1.7.so +vendor/lib64/vendor.qti.ims.callcapability@1.0.so +vendor/lib64/vendor.qti.ims.callinfo@1.0.so +vendor/lib64/vendor.qti.ims.factory@1.0.so +vendor/lib64/vendor.qti.ims.factory@1.1.so +vendor/lib64/vendor.qti.ims.rcsconfig@1.0.so +vendor/lib64/vendor.qti.ims.rcsconfig@1.1.so +vendor/lib64/vendor.qti.ims.rcsconfig@2.0.so +vendor/lib64/vendor.qti.ims.rcsconfig@2.1.so +vendor/lib64/vendor.qti.imsrtpservice@3.0-service-Impl.so +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 + +# IRQ balance +vendor/bin/msm_irqbalance +vendor/etc/msm_irqbalance.conf + +# Keymaster +vendor/bin/hw/android.hardware.keymaster@4.1-service-qti +vendor/etc/init/android.hardware.keymaster@4.0-service-qti.rc +vendor/lib64/libkeymasterdeviceutils.so +vendor/lib64/libkeymasterutils.so +vendor/lib64/libqcbor.so +vendor/lib64/libqtikeymaster4.so + +# Listen +vendor/lib/libcapiv2svacnn.so +vendor/lib/libcapiv2svarnn.so +vendor/lib/libcapiv2vop.so +vendor/lib/libgcs-calwrapper.so +vendor/lib/libgcs-ipc.so +vendor/lib/libgcs-osal.so +vendor/lib/libgcs.so +vendor/lib/liblistensoundmodel2.so +vendor/lib/libmulawdec.so + +# Media +vendor/etc/seccomp_policy/mediacodec.policy +vendor/etc/system_properties.xml +vendor/lib/libAlacSwDec.so +vendor/lib/libApeSwDec.so +vendor/lib/libFlacSwDec.so +vendor/lib/libMpeg4SwEncoder.so +vendor/lib/libOmxAacDec.so +vendor/lib/libOmxAlacDec.so +vendor/lib/libOmxAlacDecSw.so +vendor/lib/libOmxAmrwbplusDec.so +vendor/lib/libOmxApeDec.so +vendor/lib/libOmxApeDecSw.so +vendor/lib/libOmxDsdDec.so +vendor/lib/libOmxEvrcDec.so +vendor/lib/libOmxQcelp13Dec.so +vendor/lib/libOmxSwVencMpeg4.so +vendor/lib/libOmxWmaDec.so +vendor/lib/libdsd2pcm.so +vendor/lib/libstagefright_soft_qtiflacdec.so +vendor/lib/libswvdec.so +vendor/lib64/libAlacSwDec.so +vendor/lib64/libApeSwDec.so +vendor/lib64/libFlacSwDec.so +vendor/lib64/libMpeg4SwEncoder.so +vendor/lib64/libOmxAlacDec.so +vendor/lib64/libOmxAlacDecSw.so +vendor/lib64/libOmxAmrwbplusDec.so +vendor/lib64/libOmxApeDec.so +vendor/lib64/libOmxApeDecSw.so +vendor/lib64/libOmxEvrcDec.so +vendor/lib64/libOmxQcelp13Dec.so +vendor/lib64/libOmxSwVencMpeg4.so +vendor/lib64/libOmxWmaDec.so +vendor/lib64/libstagefright_soft_qtiflacdec.so +vendor/lib64/libswvdec.so +vendor/lib64/vendor.qti.hardware.vpp@1.1.so +vendor/lib64/vendor.qti.hardware.vpp@1.2.so +vendor/lib64/vendor.qti.hardware.vpp@1.3.so + +# Neural Networks +vendor/bin/hw/android.hardware.neuralnetworks@1.3-service-qti +vendor/bin/npu_launcher +vendor/etc/init/android.hardware.neuralnetworks@1.3-service-qti.rc +vendor/etc/vintf/manifest/android.hardware.neuralnetworks@1.3-service-qti-hta.xml +vendor/etc/vintf/manifest/android.hardware.neuralnetworks@1.3-service-qti.xml +vendor/lib64/libhexagon_nn_stub.so +vendor/lib64/libhta_hexagon_runtime.so +vendor/lib64/libhvx_interface.so +vendor/lib64/libnpu.so +vendor/lib64/unnhal-acc-adreno.so +vendor/lib64/unnhal-acc-common.so +vendor/lib64/unnhal-acc-hta.so +vendor/lib64/unnhal-acc-hvx.so # NFC vendor/lib/libpn553_fw.so + +# Permissions +product/etc/permissions/telephony_product_privapp-permissions-qti.xml +system/etc/permissions/privapp-permissions-qti.xml +system_ext/etc/permissions/telephony_system-ext_privapp-permissions-qti.xml + +# Peripheral +vendor/bin/pm-proxy +vendor/bin/pm-service +vendor/lib64/libperipheral_client.so + +# Postprocessing +vendor/bin/hw/vendor.display.color@1.0-service +vendor/etc/init/vendor.display.color@1.0-service.rc +vendor/lib64/libdpps.so +vendor/lib64/vendor.display.color@1.0.so +vendor/lib64/vendor.display.color@1.1.so +vendor/lib64/vendor.display.color@1.2.so +vendor/lib64/vendor.display.color@1.3.so +vendor/lib64/vendor.display.postproc@1.0.so + +# Public libraries +vendor/etc/public.libraries.txt + +# QCV +vendor/bin/init.qti.qcv.sh +vendor/etc/init/init.qti.qcv.rc +vendor/lib64/libsoc_helper.so +vendor/lib64/libsoc_helper_jni.so + +# QMI +system/etc/sysconfig/qti_whitelist.xml +system_ext/etc/permissions/qti_libpermissions.xml +system_ext/etc/permissions/qti_permissions.xml +system_ext/etc/sysconfig/qti_whitelist_system_ext.xml +vendor/bin/irsc_util +vendor/bin/pd-mapper +vendor/bin/qrtr-ns +vendor/etc/sec_config +vendor/lib/libdiag.so +vendor/lib/libdsutils.so +vendor/lib/libidl.so +vendor/lib/libmdmdetect.so +vendor/lib/libpdmapper.so +vendor/lib/libpdnotifier.so +vendor/lib/libqcci_legacy.so +vendor/lib/libqdi.so +vendor/lib/libqdp.so +vendor/lib/libqmi.so +vendor/lib/libqmi_cci.so +vendor/lib/libqmi_client_helper.so +vendor/lib/libqmi_client_qmux.so +vendor/lib/libqmi_common_so.so +vendor/lib/libqmi_csi.so +vendor/lib/libqmi_csvt_srvc.so +vendor/lib/libqmi_encdec.so +vendor/lib/libqmi_legacy.so +vendor/lib/libqmiservices.so +vendor/lib/libqsocket.so +vendor/lib64/libdiag.so +vendor/lib64/libdsutils.so +vendor/lib64/libidl.so +vendor/lib64/libmdmdetect.so +vendor/lib64/libpdmapper.so +vendor/lib64/libpdnotifier.so +vendor/lib64/libqcci_legacy.so +vendor/lib64/libqdi.so +vendor/lib64/libqdp.so +vendor/lib64/libqmi.so +vendor/lib64/libqmi_cci.so +vendor/lib64/libqmi_client_helper.so +vendor/lib64/libqmi_client_qmux.so +vendor/lib64/libqmi_common_so.so +vendor/lib64/libqmi_csi.so +vendor/lib64/libqmi_csvt_srvc.so +vendor/lib64/libqmi_encdec.so +vendor/lib64/libqmi_legacy.so +vendor/lib64/libqmiservices.so +vendor/lib64/libqsocket.so + +# QDCM +vendor/bin/qdcmss +vendor/etc/init/qdcmss.rc +vendor/etc/qdcm_calib_data_ft8756_video_mode_dsi_huaxing_panel.xml +vendor/etc/qdcm_calib_data_nt36675_video_mode_dsi_tianma_panel.xml + +# RIL +system_ext/app/DeviceInfo/DeviceInfo.apk +system_ext/app/QtiTelephonyService/QtiTelephonyService.apk +system_ext/etc/permissions/qcrilhook.xml +system_ext/framework/qcrilhook.jar +system_ext/priv-app/qcrilmsgtunnel/qcrilmsgtunnel.apk +vendor/bin/hw/qcrild +vendor/bin/ATFWD-daemon +vendor/bin/adpl +vendor/bin/ipacm-diag +vendor/bin/netmgrd +vendor/bin/port-bridge +vendor/bin/qti +vendor/bin/rmt_storage +vendor/bin/tftp_server +vendor/etc/data/dsi_config.xml +vendor/etc/data/netmgr_config.xml +vendor/etc/init/dataadpl.rc +vendor/etc/init/dataqti.rc +vendor/etc/init/init-qcril-data.rc +vendor/etc/init/ipacm-diag.rc +vendor/etc/init/netmgrd.rc +vendor/etc/init/port-bridge.rc +vendor/etc/init/qcrild.rc +vendor/etc/init/vendor.qti.rmt_storage.rc +vendor/etc/init/vendor.qti.tftp.rc +vendor/etc/seccomp_policy/atfwd@2.0.policy +vendor/etc/Diag.cfg +vendor/lib64/deviceInfoServiceModule.so +vendor/lib64/libconfigdb.so +vendor/lib64/libdsi_netctrl.so +vendor/lib64/liblqe.so +vendor/lib64/libnetmgr.so +vendor/lib64/libnetmgr_common.so +vendor/lib64/libnetmgr_nr_fusion.so +vendor/lib64/libnetmgr_rmnet_ext.so +vendor/lib64/libnlnetmgr.so +vendor/lib64/libqcmaputils.so +vendor/lib64/libqcrilFramework.so +vendor/lib64/libqcrildatactl.so +vendor/lib64/libqrtr.so +vendor/lib64/libril-qc-hal-qmi.so +vendor/lib64/libril-qc-logger.so +vendor/lib64/libril-qc-ltedirectdisc.so +vendor/lib64/libril-qc-radioconfig.so +vendor/lib64/libril-qcril-hook-oem.so +vendor/lib64/librilqmiservices.so +vendor/lib64/libsettings.so +vendor/lib64/libsystem_health_mon.so +vendor/lib64/qcrild_librilutils.so +vendor/lib64/qtibus.so +vendor/lib64/qtimutex.so +vendor/lib64/vendor.qti.hardware.radio.am@1.0.so +vendor/lib64/vendor.qti.hardware.radio.atcmdfwd@1.0.so +vendor/lib64/vendor.qti.hardware.radio.internal.deviceinfo@1.0.so +vendor/lib64/vendor.qti.hardware.radio.lpa@1.0.so +vendor/lib64/vendor.qti.hardware.radio.lpa@1.1.so +vendor/lib64/vendor.qti.hardware.radio.lpa@1.2.so +vendor/lib64/vendor.qti.hardware.radio.qcrilhook@1.0.so +vendor/lib64/vendor.qti.hardware.radio.qtiradio@1.0.so +vendor/lib64/vendor.qti.hardware.radio.qtiradio@2.0.so +vendor/lib64/vendor.qti.hardware.radio.qtiradio@2.1.so +vendor/lib64/vendor.qti.hardware.radio.qtiradio@2.2.so +vendor/lib64/vendor.qti.hardware.radio.qtiradio@2.3.so +vendor/lib64/vendor.qti.hardware.radio.qtiradio@2.4.so +vendor/lib64/vendor.qti.hardware.radio.uim@1.0.so +vendor/lib64/vendor.qti.hardware.radio.uim@1.1.so +vendor/lib64/vendor.qti.hardware.radio.uim@1.2.so +vendor/lib64/vendor.qti.hardware.radio.uim_remote_client@1.0.so +vendor/lib64/vendor.qti.hardware.radio.uim_remote_client@1.1.so +vendor/lib64/vendor.qti.hardware.radio.uim_remote_client@1.2.so +vendor/lib64/vendor.qti.hardware.radio.uim_remote_server@1.0.so +vendor/radio/qcril_database/upgrade/0_initial.sql +vendor/radio/qcril_database/upgrade/10_version_update_ecc_table.sql +vendor/radio/qcril_database/upgrade/11_version_update_ecc_table.sql +vendor/radio/qcril_database/upgrade/12_version_update_ecc_table.sql +vendor/radio/qcril_database/upgrade/13_version_update_ecc_table.sql +vendor/radio/qcril_database/upgrade/14_version_update_ecc_table.sql +vendor/radio/qcril_database/upgrade/15_version_update_ecc_table.sql +vendor/radio/qcril_database/upgrade/16_version_update_ecc_table.sql +vendor/radio/qcril_database/upgrade/17_version_update_ecc_table.sql +vendor/radio/qcril_database/upgrade/18_version_update_ecc_table.sql +vendor/radio/qcril_database/upgrade/19_version_update_ecc_table.sql +vendor/radio/qcril_database/upgrade/1_version_intro.sql +vendor/radio/qcril_database/upgrade/20_version_update_ecc_table.sql +vendor/radio/qcril_database/upgrade/21_version_update_ecc_table.sql +vendor/radio/qcril_database/upgrade/22_version_update_ecc_table.sql +vendor/radio/qcril_database/upgrade/23_version_update_ecc_table.sql +vendor/radio/qcril_database/upgrade/24_version_update_ecc_table.sql +vendor/radio/qcril_database/upgrade/25_version_update_ecc_table.sql +vendor/radio/qcril_database/upgrade/26_version_update_ecc_table.sql +vendor/radio/qcril_database/upgrade/27_version_update_ecc_table.sql +vendor/radio/qcril_database/upgrade/28_version_update_ecc_table.sql +vendor/radio/qcril_database/upgrade/29_version_update_ecc_table.sql +vendor/radio/qcril_database/upgrade/2_version_add_wps_config.sql +vendor/radio/qcril_database/upgrade/30_version_update_ecc_table.sql +vendor/radio/qcril_database/upgrade/31_version_update_ecc_table.sql +vendor/radio/qcril_database/upgrade/32_version_update_ecc_table.sql +vendor/radio/qcril_database/upgrade/33_version_update_ecc_table.sql +vendor/radio/qcril_database/upgrade/34_version_update_ecc_table.sql +vendor/radio/qcril_database/upgrade/35_version_update_ecc_table.sql +vendor/radio/qcril_database/upgrade/36_version_update_ecc_table.sql +vendor/radio/qcril_database/upgrade/37_version_update_ecc_table.sql +vendor/radio/qcril_database/upgrade/3_version_update_wps_config.sql +vendor/radio/qcril_database/upgrade/4_version_update_ecc_table.sql +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 +vendor/radio/qcril_database/upgrade/8_version_update_ecc_table.sql +vendor/radio/qcril_database/upgrade/9_version_update_ecc_table.sql +vendor/radio/qcril_database/upgrade/9_version_update_ecc_table_127531.sql +vendor/radio/qcril_database/qcril.db + +# Sensors +vendor/bin/init.qcom.sensors.sh +vendor/bin/sensors.qti +vendor/bin/sscrpcd +vendor/etc/init/init.vendor.sensors.rc +vendor/etc/init/vendor.sensors.qti.rc +vendor/etc/init/vendor.sensors.sscrpcd.rc +vendor/etc/sensors/config/adux1050_0.json +vendor/etc/sensors/config/atoll_adux1050_0.json +vendor/etc/sensors/config/atoll_ak991x_0.json +vendor/etc/sensors/config/atoll_bmi160_0.json +vendor/etc/sensors/config/atoll_default_sensors.json +vendor/etc/sensors/config/atoll_dynamic_sensors.json +vendor/etc/sensors/config/atoll_icp101xx_0.json +vendor/etc/sensors/config/atoll_lsm6ds3c_0.json +vendor/etc/sensors/config/atoll_lsm6dst_0.json +vendor/etc/sensors/config/atoll_lsm6dst_1.json +vendor/etc/sensors/config/atoll_qrd_tmd2725.json +vendor/etc/sensors/config/atoll_stk3x3x_0.json +vendor/etc/sensors/config/atoll_tmd2725.json +vendor/etc/sensors/config/bmi160_0.json +vendor/etc/sensors/config/lsm6ds3c_0.json +vendor/etc/sensors/config/sns_amd.json +vendor/etc/sensors/config/sns_amd_sw_disabled.json +vendor/etc/sensors/config/sns_amd_sw_enabled.json +vendor/etc/sensors/config/sns_aont.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_ccd_v2_walk.json +vendor/etc/sensors/config/sns_ccd_v3_1_walk.json +vendor/etc/sensors/config/sns_ccd_v3_walk.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_direct_channel.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_fmv_legacy.json +vendor/etc/sensors/config/sns_geomag_rv.json +vendor/etc/sensors/config/sns_gyro_cal.json +vendor/etc/sensors/config/sns_heart_rate.json +vendor/etc/sensors/config/sns_mag_cal.json +vendor/etc/sensors/config/sns_mag_cal_legacy.json +vendor/etc/sensors/config/sns_multishake.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_disabled.json +vendor/etc/sensors/config/sns_tilt_sw_enabled.json +vendor/etc/sensors/config/sns_tilt_to_wake.json +vendor/etc/sensors/config/sns_wrist_pedo.json +vendor/etc/sensors/hals.conf +vendor/etc/sensors/sns_reg_config +vendor/lib64/libsensorslog.so +vendor/lib64/libsns_low_lat_stream_stub.so +vendor/lib64/libsnsapi.so +vendor/lib64/libsnsdiaglog.so +vendor/lib64/libssc.so +vendor/lib64/sensors.ssc.so + +# Thermal engine - from sunfish - RQ3A.210805.001.A1/7474174 +vendor/bin/thermal-engine|549f8284d4aca92e2b8187ab2a283a90c40e6dca + +# ThermalClient +vendor/lib64/libthermalclient.so + +# Time services +vendor/app/TimeService/TimeService.apk +vendor/bin/time_daemon +vendor/etc/init/init.time_daemon.rc +vendor/lib64/libtime_genoff.so + +# Touchscreen firmware +vendor/firmware/focaltech_ts_fw_huaxing.bin +vendor/firmware/novatek_ts_tianma_fw.bin +vendor/firmware/novatek_ts_tianma_mp.bin + +# Vibrator +vendor/firmware/Drv2624Date.ini +vendor/firmware/aw8624_haptic.bin +vendor/firmware/aw8624_rtp_1.bin +vendor/firmware/drv2624.bin +vendor/firmware/drv2624.rtp + +# WiFi +vendor/bin/cnss-daemon + +# WiFi Display +system/framework/WfdCommon.jar +system_ext/bin/wfdservice64 +system_ext/etc/init/wfdservice.rc +system_ext/etc/permissions/wfd-system-ext-privapp-permissions-qti.xml +system_ext/etc/seccomp_policy/wfdservice64.policy +system_ext/etc/wfdconfigsink.xml +system_ext/lib64/libmmosal.so +system_ext/lib64/libmmparser_lite.so +system_ext/lib64/libmmrtpdecoder.so +system_ext/lib64/libmmrtpencoder.so +system_ext/lib64/libwfdavenhancements.so +system_ext/lib64/libwfdclient.so +system_ext/lib64/libwfdcommonutils.so +system_ext/lib64/libwfdconfigutils.so +system_ext/lib64/libwfddisplayconfig.so +system_ext/lib64/libwfdmminterface.so +system_ext/lib64/libwfdmmsink.so +system_ext/lib64/libwfdmmsrc_system.so +system_ext/lib64/libwfdnative.so +system_ext/lib64/libwfdrtsp.so +system_ext/lib64/libwfdservice.so +system_ext/lib64/libwfdsinksm.so +system_ext/lib64/libwfduibcinterface.so +system_ext/lib64/libwfduibcsink.so +system_ext/lib64/libwfduibcsinkinterface.so +system_ext/lib64/libwfduibcsrc.so +system_ext/lib64/libwfduibcsrcinterface.so +system_ext/lib64/vendor.qti.hardware.wifidisplaysession@1.0.so +system_ext/priv-app/WfdService/WfdService.apk +vendor/bin/wfdhdcphalservice +vendor/bin/wfdvndservice +vendor/bin/wifidisplayhalservice +vendor/etc/init/android.hardware.drm@1.1-service.wfdhdcp.rc +vendor/etc/init/com.qualcomm.qti.wifidisplayhal@1.0-service.rc +vendor/etc/init/wfdvndservice.rc +vendor/etc/seccomp_policy/wfdhdcphalservice.policy +vendor/etc/seccomp_policy/wfdvndservice.policy +vendor/etc/seccomp_policy/wifidisplayhalservice.policy +vendor/etc/wfdconfig.xml +vendor/lib/libFileMux_proprietary.so +vendor/lib/libOmxVideoDSMode.so +vendor/lib/libmm-hdcpmgr.so +vendor/lib/libmmosal.so +vendor/lib/libmmrtpdecoder_proprietary.so +vendor/lib/libmmrtpencoder_proprietary.so +vendor/lib/libwfdcodecv4l2_proprietary.so +vendor/lib/libwfdcommonutils_proprietary.so +vendor/lib/libwfdconfigutils_proprietary.so +vendor/lib/libwfddisplayconfig_proprietary.so +vendor/lib/libwfdhdcpcp.so +vendor/lib/libwfdhdcpservice_proprietary.so +vendor/lib/libwfdmminterface_proprietary.so +vendor/lib/libwfdmmservice_proprietary.so +vendor/lib/libwfdmmsrc_proprietary.so +vendor/lib/libwfdmodulehdcpsession.so +vendor/lib/libwfdrtsp_proprietary.so +vendor/lib/libwfdsessionmodule.so +vendor/lib/libwfdsourcesession_proprietary.so +vendor/lib/libwfdsourcesm_proprietary.so +vendor/lib/libwfduibcinterface_proprietary.so +vendor/lib/libwfduibcsink_proprietary.so +vendor/lib/libwfduibcsinkinterface_proprietary.so +vendor/lib/libwfduibcsrc_proprietary.so +vendor/lib/libwfduibcsrcinterface_proprietary.so +vendor/lib/libwfdutils_proprietary.so +vendor/lib/vendor.qti.hardware.wifidisplaysession@1.0.so +vendor/lib/vendor.qti.hardware.wifidisplaysessionl@1.0-halimpl.so +vendor/lib64/libwfddisplayconfig_proprietary.so +vendor/lib64/libwfdhdcpcp.so +vendor/lib64/vendor.qti.hardware.wifidisplaysession@1.0.so diff --git a/releasetools.py b/releasetools.py new file mode 100644 index 0000000..85538b0 --- /dev/null +++ b/releasetools.py @@ -0,0 +1,37 @@ +# Copyright (C) 2021 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. + +import common + +def FullOTA_InstallEnd(info): + OTA_InstallEnd(info) + return + +def IncrementalOTA_InstallEnd(info): + OTA_InstallEnd(info) + return + +def AddImage(info, basename, dest): + path = "IMAGES/" + basename + if path not in info.input_zip.namelist(): + return + + data = info.input_zip.read(path) + common.ZipWriteStr(info.output_zip, basename, data) + info.script.AppendExtra('package_extract_file("%s", "%s");' % (basename, dest)) + +def OTA_InstallEnd(info): + info.script.Print("Patching firmware images...") + AddImage(info, "dtbo.img", "/dev/block/bootdevice/by-name/dtbo") + AddImage(info, "vbmeta.img", "/dev/block/bootdevice/by-name/vbmeta") + AddImage(info, "vbmeta_system.img", "/dev/block/bootdevice/by-name/vbmeta_system") + return diff --git a/rootdir/Android.bp b/rootdir/Android.bp index 35de9dc..b4890a8 100644 --- a/rootdir/Android.bp +++ b/rootdir/Android.bp @@ -4,9 +4,64 @@ // SPDX-License-Identifier: Apache-2.0 // +// Init scripts +sh_binary { + name: "init.qcom.early_boot.sh", + src: "bin/init.qcom.early_boot.sh", + vendor: true, +} + +sh_binary { + name: "init.qcom.sh", + src: "bin/init.qcom.sh", + vendor: true, +} + +sh_binary { + name: "init.qti.chg_policy.sh", + src: "bin/init.qti.chg_policy.sh", + vendor: true, +} + +// fstab +prebuilt_etc { + name: "fstab.qcom", + src: "etc/fstab.qcom", + vendor: true, +} + +// Init configuration files prebuilt_etc { name: "init.device.rc", src: "etc/init.device.rc", sub_dir: "init/hw", vendor: true, } + +prebuilt_etc { + name: "init.qcom.power.rc", + src: "etc/init.qcom.power.rc", + sub_dir: "init/hw", + vendor: true, +} + +prebuilt_etc { + name: "init.qcom.rc", + src: "etc/init.qcom.rc", + sub_dir: "init/hw", + vendor: true, +} + +prebuilt_etc { + name: "init.target.rc", + src: "etc/init.target.rc", + sub_dir: "init/hw", + vendor: true, +} + +prebuilt_etc { + name: "ueventd.qcom.rc", + filename: "ueventd.rc", + src: "etc/ueventd.qcom.rc", + vendor: true, +} diff --git a/rootdir/bin/init.qcom.early_boot.sh b/rootdir/bin/init.qcom.early_boot.sh new file mode 100644 index 0000000..ff7de5e --- /dev/null +++ b/rootdir/bin/init.qcom.early_boot.sh @@ -0,0 +1,64 @@ +#! /vendor/bin/sh + +# Copyright (c) 2012-2013,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 BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "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. +# + +export PATH=/vendor/bin + +echo "detect" > /sys/class/drm/card0-DSI-1/status +#For drm based display driver +vbfile=/sys/module/drm/parameters/vblankoffdelay +if [ -w $vbfile ]; then + echo -1 > $vbfile +else + log -t DRM_BOOT -p w "file: '$vbfile' or perms doesn't exist" +fi + +function set_perms() { + #Usage set_perms + chown -h $2 $1 + chmod $3 $1 +} + +set_perms /sys/devices/virtual/hdcp/msm_hdcp/min_level_change system.graphics 0660 +# allow system_graphics group to access pmic secure_mode node +set_perms /sys/class/lcd_bias/secure_mode system.graphics 0660 +set_perms /sys/class/leds/wled/secure_mode system.graphics 0660 + +boot_reason=`cat /proc/sys/kernel/boot_reason` +reboot_reason=`getprop ro.boot.alarmboot` +if [ "$boot_reason" = "3" ] || [ "$reboot_reason" = "true" ]; then + setprop ro.vendor.alarm_boot true +else + setprop ro.vendor.alarm_boot false +fi + +# copy GPU frequencies to vendor property +if [ -f /sys/class/kgsl/kgsl-3d0/gpu_available_frequencies ]; then + gpu_freq=`cat /sys/class/kgsl/kgsl-3d0/gpu_available_frequencies` 2> /dev/null + setprop vendor.gpu.available_frequencies "$gpu_freq" +fi diff --git a/rootdir/bin/init.qcom.sh b/rootdir/bin/init.qcom.sh new file mode 100644 index 0000000..b48f971 --- /dev/null +++ b/rootdir/bin/init.qcom.sh @@ -0,0 +1,52 @@ +#! /vendor/bin/sh + +# Copyright (c) 2009-2016, 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 BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "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. +# + +# +# Make modem config folder and copy firmware config to that folder for RIL +# +if [ -f /data/vendor/modem_config/ver_info.txt ]; then + prev_version_info=`cat /data/vendor/modem_config/ver_info.txt` +else + prev_version_info="" +fi + +cur_version_info=`cat /vendor/firmware_mnt/verinfo/ver_info.txt` +if [ ! -f /vendor/firmware_mnt/verinfo/ver_info.txt -o "$prev_version_info" != "$cur_version_info" ]; then + # add W for group recursively before delete + chmod g+w -R /data/vendor/modem_config/* + rm -rf /data/vendor/modem_config/* + # preserve the read only mode for all subdir and files + cp --preserve=m -dr /vendor/firmware_mnt/image/modem_pr/mcfg/configs/* /data/vendor/modem_config + cp --preserve=m -d /vendor/firmware_mnt/verinfo/ver_info.txt /data/vendor/modem_config/ + cp --preserve=m -d /vendor/firmware_mnt/image/modem_pr/mbn_ota.txt /data/vendor/modem_config/ + # the group must be root, otherwise this script could not add "W" for group recursively + chown -hR radio.root /data/vendor/modem_config/* +fi +chmod g-w /data/vendor/modem_config +setprop ro.vendor.ril.mbn_copy_completed 1 diff --git a/rootdir/bin/init.qti.chg_policy.sh b/rootdir/bin/init.qti.chg_policy.sh new file mode 100644 index 0000000..fe679b3 --- /dev/null +++ b/rootdir/bin/init.qti.chg_policy.sh @@ -0,0 +1,48 @@ +#! /vendor/bin/sh + +# +# Copyright (c) 2019-2021 Qualcomm Technologies, Inc. +# All Rights Reserved. +# Confidential and Proprietary - Qualcomm Technologies, Inc. +# +# Copyright (c) 2019 The Linux Foundation. All rights reserved. +# + +export PATH=/vendor/bin + +soc_id=`getprop ro.vendor.qti.soc_id` +if [ "$soc_id" -eq 415 ] || [ "$soc_id" -eq 439 ] || [ "$soc_id" -eq 450 ] || [ "$soc_id" -eq 475 ] || [ "$soc_id" -eq 497 ] || [ "$soc_id" -eq 498 ] || [ "$soc_id" -eq 499 ] || [ "$soc_id" -eq 515 ]; then + setprop persist.vendor.hvdcp_opti.start 2 + exit 0 +fi + +if [ "$soc_id" -eq 441 ] || [ "$soc_id" -eq 471 ]; then + #Scuba does not support usb-pd or charge pumps + find /sys/class/power_supply/battery/ -type f -maxdepth 1 | xargs chown system.system + find /sys/class/power_supply/bms/ -type f -maxdepth 1 | xargs chown system.system + find /sys/class/power_supply/main/ -type f -maxdepth 1 | xargs chown system.system + find /sys/class/power_supply/usb/ -type f -maxdepth 1 | xargs chown system.system +else + find /sys/class/power_supply/battery/ -type f -maxdepth 1 | xargs chown system.system + find /sys/class/power_supply/bms/ -type f -maxdepth 1 | xargs chown system.system + find /sys/class/power_supply/main/ -type f -maxdepth 1 | xargs chown system.system + find /sys/class/power_supply/usb/ -type f -maxdepth 1 | xargs chown system.system + find /sys/class/power_supply/charge_pump_master/ -type f -maxdepth 1 | xargs chown system.system + find /sys/class/power_supply/pc_port/ -type f -maxdepth 1 | xargs chown system.system + find /sys/class/power_supply/dc/ -type f -maxdepth 1 | xargs chown system.system + find /sys/class/power_supply/parallel/ -type f -maxdepth 1 | xargs chown system.system + find /sys/class/usbpd/usbpd0/ -type f -maxdepth 1 | xargs chown system.system + find /sys/class/qc-vdm/ -type f -maxdepth 1 | xargs chown system.system + find /sys/class/charge_pump/ -type f -maxdepth 1 | xargs chown system.system + find /sys/class/qcom-battery/ -type f -maxdepth 1 | xargs chown system.system + + for i in 0 1 2 3 4 5 6 7 8 9 + do + devname=`cat /sys/bus/iio/devices/iio:device$i/name` + if [[ "$devname" == *smb* ]] || [[ "$devname" == *qg* ]] || [[ "$devname" == *div2_cp* ]] || [[ "$devname" == *div2-cp* ]]; then + find /sys/bus/iio/devices/iio:device$i/ -type f -maxdepth 1 | xargs chown system.system + fi + done +fi + +setprop persist.vendor.hvdcp_opti.start 1 diff --git a/rootdir/etc/fstab.qcom b/rootdir/etc/fstab.qcom new file mode 100644 index 0000000..3986765 --- /dev/null +++ b/rootdir/etc/fstab.qcom @@ -0,0 +1,53 @@ +# Copyright (c) 2018-2019, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above +# copyright notice, this list of conditions and the following +# disclaimer in the documentation and/or other materials provided +# with the distribution. +# * Neither the name of The Linux Foundation nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT +# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS +# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR +# BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# 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 + +# +system /system ext4 ro,barrier=1,discard wait,logical,first_stage_mount,avb=vbmeta_system,avb_keys=/avb/q-gsi.avbpubkey:/avb/r-gsi.avbpubkey:/avb/s-gsi.avbpubkey +system_ext /system_ext ext4 ro,barrier=1,discard wait,logical,first_stage_mount,avb +product /product ext4 ro,barrier=1,discard wait,logical,first_stage_mount,avb +vendor /vendor ext4 ro,barrier=1,discard wait,logical,first_stage_mount,avb=vbmeta +/dev/block/bootdevice/by-name/cache /cache ext4 nosuid,noatime,nodev,barrier=1 wait +/dev/block/bootdevice/by-name/boot /boot emmc defaults defaults +/dev/block/bootdevice/by-name/recovery /recovery emmc defaults defaults +/dev/block/by-name/metadata /metadata ext4 noatime,nosuid,nodev,discard wait,check,formattable,first_stage_mount +/dev/block/bootdevice/by-name/userdata /data f2fs noatime,nosuid,nodev,discard,reserve_root=32768,resgid=1065,fsync_mode=nobarrier,inlinecrypt latemount,wait,check,formattable,fileencryption=aes-256-xts:aes-256-cts:v2+inlinecrypt_optimized+wrappedkey_v0,metadata_encryption=aes-256-xts:wrappedkey_v0,keydirectory=/metadata/vold/metadata_encryption,quota,reservedsize=128M,sysfs_path=/sys/devices/platform/soc/1d84000.ufshc,checkpoint=fs +/devices/platform/soc/8804000.sdhci/mmc_host* /storage/sdcard1 vfat nosuid,nodev wait,voldmanaged=sdcard1:auto,encryptable=footer +/devices/platform/soc/1da4000.ufshc_card/host* /storage/sdcard1 vfat nosuid,nodev wait,voldmanaged=sdcard1:auto,encryptable=footer +/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* /storage/usbotg vfat nosuid,nodev wait,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=50% diff --git a/rootdir/etc/init.qcom.power.rc b/rootdir/etc/init.qcom.power.rc new file mode 100644 index 0000000..d884649 --- /dev/null +++ b/rootdir/etc/init.qcom.power.rc @@ -0,0 +1,128 @@ +# Copyright (c) 2012-2013, 2016-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 BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "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. +# + +on enable-low-power + # Apply settings for atoll + + # Enable bus-dcvs + write /sys/devices/platform/soc/soc:qcom,cpu-cpu-llcc-bw/devfreq/soc:qcom,cpu-cpu-llcc-bw/governor bw_hwmon + write /sys/devices/platform/soc/soc:qcom,cpu-cpu-llcc-bw/devfreq/soc:qcom,cpu-cpu-llcc-bw/bw_hwmon/mbps_zones "2288 4577 7110 9155 12298 14236" + write /sys/devices/platform/soc/soc:qcom,cpu-cpu-llcc-bw/devfreq/soc:qcom,cpu-cpu-llcc-bw/bw_hwmon/sample_ms 4 + write /sys/devices/platform/soc/soc:qcom,cpu-cpu-llcc-bw/devfreq/soc:qcom,cpu-cpu-llcc-bw/bw_hwmon/io_percent 68 + write /sys/devices/platform/soc/soc:qcom,cpu-cpu-llcc-bw/devfreq/soc:qcom,cpu-cpu-llcc-bw/bw_hwmon/hist_memory 20 + write /sys/devices/platform/soc/soc:qcom,cpu-cpu-llcc-bw/devfreq/soc:qcom,cpu-cpu-llcc-bw/bw_hwmon/hyst_length 0 + write /sys/devices/platform/soc/soc:qcom,cpu-cpu-llcc-bw/devfreq/soc:qcom,cpu-cpu-llcc-bw/bw_hwmon/down_thres 80 + write /sys/devices/platform/soc/soc:qcom,cpu-cpu-llcc-bw/devfreq/soc:qcom,cpu-cpu-llcc-bw/bw_hwmon/guard_band_mbps 0 + write /sys/devices/platform/soc/soc:qcom,cpu-cpu-llcc-bw/devfreq/soc:qcom,cpu-cpu-llcc-bw/bw_hwmon/up_scale 250 + write /sys/devices/platform/soc/soc:qcom,cpu-cpu-llcc-bw/devfreq/soc:qcom,cpu-cpu-llcc-bw/bw_hwmon/idle_mbps 1600 + write /sys/devices/platform/soc/soc:qcom,cpu-cpu-llcc-bw/devfreq/soc:qcom,cpu-cpu-llcc-bw/polling_interval 50 + + write /sys/devices/platform/soc/soc:qcom,cpu-llcc-ddr-bw/devfreq/soc:qcom,cpu-llcc-ddr-bw/governor bw_hwmon + write /sys/devices/platform/soc/soc:qcom,cpu-llcc-ddr-bw/devfreq/soc:qcom,cpu-llcc-ddr-bw/bw_hwmon/mbps_zones "1144 1720 2086 2929 3879 5931 6881 8137" + write /sys/devices/platform/soc/soc:qcom,cpu-llcc-ddr-bw/devfreq/soc:qcom,cpu-llcc-ddr-bw/bw_hwmon/sample_ms 4 + write /sys/devices/platform/soc/soc:qcom,cpu-llcc-ddr-bw/devfreq/soc:qcom,cpu-llcc-ddr-bw/bw_hwmon/io_percent 68 + write /sys/devices/platform/soc/soc:qcom,cpu-llcc-ddr-bw/devfreq/soc:qcom,cpu-llcc-ddr-bw/bw_hwmon/hist_memory 20 + write /sys/devices/platform/soc/soc:qcom,cpu-llcc-ddr-bw/devfreq/soc:qcom,cpu-llcc-ddr-bw/bw_hwmon/hyst_length 0 + write /sys/devices/platform/soc/soc:qcom,cpu-llcc-ddr-bw/devfreq/soc:qcom,cpu-llcc-ddr-bw/bw_hwmon/down_thres 80 + write /sys/devices/platform/soc/soc:qcom,cpu-llcc-ddr-bw/devfreq/soc:qcom,cpu-llcc-ddr-bw/bw_hwmon/guard_band_mbps 0 + write /sys/devices/platform/soc/soc:qcom,cpu-llcc-ddr-bw/devfreq/soc:qcom,cpu-llcc-ddr-bw/bw_hwmon/up_scale 250 + write /sys/devices/platform/soc/soc:qcom,cpu-llcc-ddr-bw/devfreq/soc:qcom,cpu-llcc-ddr-bw/bw_hwmon/idle_mbps 1600 + write /sys/devices/platform/soc/soc:qcom,cpu-llcc-ddr-bw/devfreq/soc:qcom,cpu-llcc-ddr-bw/polling_interval 40 + + write /sys/devices/virtual/npu/msm_npu/pwr 1 + write /sys/devices/platform/soc/soc:qcom,npu-npu-ddr-bw/devfreq/soc:qcom,npu-npu-ddr-bw/governor bw_hwmon + write /sys/devices/platform/soc/soc:qcom,npu-npu-ddr-bw/devfreq/soc:qcom,npu-npu-ddr-bw/bw_hwmon/mbps_zones "1144 1720 2086 2929 3879 5931 6881 8137" + write /sys/devices/platform/soc/soc:qcom,npu-npu-ddr-bw/devfreq/soc:qcom,npu-npu-ddr-bw/bw_hwmon/sample_ms 4 + write /sys/devices/platform/soc/soc:qcom,npu-npu-ddr-bw/devfreq/soc:qcom,npu-npu-ddr-bw/bw_hwmon/io_percent 80 + write /sys/devices/platform/soc/soc:qcom,npu-npu-ddr-bw/devfreq/soc:qcom,npu-npu-ddr-bw/bw_hwmon/hist_memory 20 + write /sys/devices/platform/soc/soc:qcom,npu-npu-ddr-bw/devfreq/soc:qcom,npu-npu-ddr-bw/bw_hwmon/hyst_length 10 + write /sys/devices/platform/soc/soc:qcom,npu-npu-ddr-bw/devfreq/soc:qcom,npu-npu-ddr-bw/bw_hwmon/down_thres 30 + write /sys/devices/platform/soc/soc:qcom,npu-npu-ddr-bw/devfreq/soc:qcom,npu-npu-ddr-bw/bw_hwmon/guard_band_mbps 0 + write /sys/devices/platform/soc/soc:qcom,npu-npu-ddr-bw/devfreq/soc:qcom,npu-npu-ddr-bw/bw_hwmon/up_scale 250 + write /sys/devices/platform/soc/soc:qcom,npu-npu-ddr-bw/devfreq/soc:qcom,npu-npu-ddr-bw/bw_hwmon/idle_mbps 0 + write /sys/devices/platform/soc/soc:qcom,npu-npu-ddr-bw/devfreq/soc:qcom,npu-npu-ddr-bw/polling_interval 40 + write /sys/devices/platform/soc/soc:qcom,npudsp-npu-ddr-bw/devfreq/soc:qcom,npudsp-npu-ddr-bw/governor bw_hwmon + write /sys/devices/platform/soc/soc:qcom,npudsp-npu-ddr-bw/devfreq/soc:qcom,npudsp-npu-ddr-bw/bw_hwmon/mbps_zones "1144 1720 2086 2929 3879 5931 6881 8137" + write /sys/devices/platform/soc/soc:qcom,npudsp-npu-ddr-bw/devfreq/soc:qcom,npudsp-npu-ddr-bw/bw_hwmon/sample_ms 4 + write /sys/devices/platform/soc/soc:qcom,npudsp-npu-ddr-bw/devfreq/soc:qcom,npudsp-npu-ddr-bw/bw_hwmon/io_percent 80 + write /sys/devices/platform/soc/soc:qcom,npudsp-npu-ddr-bw/devfreq/soc:qcom,npudsp-npu-ddr-bw/bw_hwmon/hist_memory 20 + write /sys/devices/platform/soc/soc:qcom,npudsp-npu-ddr-bw/devfreq/soc:qcom,npudsp-npu-ddr-bw/bw_hwmon/hyst_length 10 + write /sys/devices/platform/soc/soc:qcom,npudsp-npu-ddr-bw/devfreq/soc:qcom,npudsp-npu-ddr-bw/bw_hwmon/down_thres 30 + write /sys/devices/platform/soc/soc:qcom,npudsp-npu-ddr-bw/devfreq/soc:qcom,npudsp-npu-ddr-bw/bw_hwmon/guard_band_mbps 0 + write /sys/devices/platform/soc/soc:qcom,npudsp-npu-ddr-bw/devfreq/soc:qcom,npudsp-npu-ddr-bw/bw_hwmon/up_scale 250 + write /sys/devices/platform/soc/soc:qcom,npudsp-npu-ddr-bw/devfreq/soc:qcom,npudsp-npu-ddr-bw/bw_hwmon/idle_mbps 0 + write /sys/devices/platform/soc/soc:qcom,npudsp-npu-ddr-bw/devfreq/soc:qcom,npudsp-npu-ddr-bw/polling_interval 40 + write /sys/devices/virtual/npu/msm_npu/pwr 0 + + # Enable mem_latency governor for L3, LLCC, and DDR scaling + write /sys/devices/platform/soc/soc:qcom,cpu0-cpu-llcc-lat/devfreq/soc:qcom,cpu0-cpu-llcc-lat/governor mem_latency + write /sys/devices/platform/soc/soc:qcom,cpu0-cpu-llcc-lat/devfreq/soc:qcom,cpu0-cpu-llcc-lat/polling_interval 10 + write /sys/devices/platform/soc/soc:qcom,cpu0-cpu-llcc-lat/devfreq/soc:qcom,cpu0-cpu-llcc-lat/mem_latency/ratio_ceil 400 + + write /sys/devices/platform/soc/soc:qcom,cpu0-cpu-l3-lat/devfreq/soc:qcom,cpu0-cpu-l3-lat/governor mem_latency + write /sys/devices/platform/soc/soc:qcom,cpu0-cpu-l3-lat/devfreq/soc:qcom,cpu0-cpu-l3-lat/polling_interval 10 + write /sys/devices/platform/soc/soc:qcom,cpu0-cpu-l3-lat/devfreq/soc:qcom,cpu0-cpu-l3-lat/mem_latency/ratio_ceil 400 + + write /sys/devices/platform/soc/soc:qcom,cpu0-llcc-ddr-lat/devfreq/soc:qcom,cpu0-llcc-ddr-lat/governor mem_latency + write /sys/devices/platform/soc/soc:qcom,cpu0-llcc-ddr-lat/devfreq/soc:qcom,cpu0-llcc-ddr-lat/polling_interval 10 + write /sys/devices/platform/soc/soc:qcom,cpu0-llcc-ddr-lat/devfreq/soc:qcom,cpu0-llcc-ddr-lat/mem_latency/ratio_ceil 400 + + write /sys/devices/platform/soc/soc:qcom,cpu6-cpu-llcc-lat/devfreq/soc:qcom,cpu6-cpu-llcc-lat/governor mem_latency + write /sys/devices/platform/soc/soc:qcom,cpu6-cpu-llcc-lat/devfreq/soc:qcom,cpu6-cpu-llcc-lat/polling_interval 10 + write /sys/devices/platform/soc/soc:qcom,cpu6-cpu-llcc-lat/devfreq/soc:qcom,cpu6-cpu-llcc-lat/mem_latency/ratio_ceil 400 + + write /sys/devices/platform/soc/soc:qcom,cpu6-cpu-l3-lat/devfreq/soc:qcom,cpu6-cpu-l3-lat/governor mem_latency + write /sys/devices/platform/soc/soc:qcom,cpu6-cpu-l3-lat/devfreq/soc:qcom,cpu6-cpu-l3-lat/polling_interval 10 + # Gold L3 ratio ceil is 4000 + write /sys/devices/platform/soc/soc:qcom,cpu6-cpu-l3-lat/devfreq/soc:qcom,cpu6-cpu-l3-lat/mem_latency/ratio_ceil 4000 + + write /sys/devices/platform/soc/soc:qcom,cpu6-llcc-ddr-lat/devfreq/soc:qcom,cpu6-llcc-ddr-lat/governor mem_latency + write /sys/devices/platform/soc/soc:qcom,cpu6-llcc-ddr-lat/devfreq/soc:qcom,cpu6-llcc-ddr-lat/polling_interval 10 + write /sys/devices/platform/soc/soc:qcom,cpu6-llcc-ddr-lat/devfreq/soc:qcom,cpu6-llcc-ddr-lat/mem_latency/ratio_ceil 400 + + # Enable cdspl3 governor for L3 cdsp nodes + write /sys/devices/platform/soc/soc:qcom,cdsp-cdsp-l3-lat/devfreq/soc:qcom,cdsp-cdsp-l3-lat/governor cdspl3 + + # Enable compute governor for gold latfloor + write /sys/devices/platform/soc/soc:qcom,cpu6-cpu-ddr-latfloor/devfreq/soc:qcom,cpu6-cpu-ddr-latfloor/governor compute + write /sys/devices/platform/soc/soc:qcom,cpu6-cpu-ddr-latfloor/devfreq/soc:qcom,cpu6-cpu-ddr-latfloor/polling_interval 10 + + # Turn on sleep modes + write /sys/module/lpm_levels/parameters/sleep_disabled 0 + + # Enable idle state listener + write /sys/class/drm/card0/device/idle_encoder_mask 1 + write /sys/class/drm/card0/device/idle_timeout_ms 100 + + # Enable PowerHAL hint processing + setprop vendor.powerhal.init 1 + +on property:sys.boot_completed=1 + trigger enable-low-power + +on property:init.svc.recovery=running + trigger enable-low-power diff --git a/rootdir/etc/init.qcom.rc b/rootdir/etc/init.qcom.rc new file mode 100644 index 0000000..ab4032c --- /dev/null +++ b/rootdir/etc/init.qcom.rc @@ -0,0 +1,879 @@ +# Copyright (c) 2009-2012, 2014-2020, The Linux Foundation. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of The Linux Foundation nor +# the names of its contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "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. +# + +import /vendor/etc/init/hw/init.qcom.usb.rc +import /vendor/etc/init/hw/init.qcom.power.rc +import /vendor/etc/init/hw/init.device.rc +import /vendor/etc/init/hw/init.target.rc + +on early-init + mount debugfs debugfs /sys/kernel/debug + chmod 0755 /sys/kernel/debug + + # create symlink for vendor mount points + symlink /vendor/firmware_mnt /firmware + symlink /vendor/bt_firmware /bt_firmware + symlink /vendor/dsp /dsp + + # Change ownership of hw_recovery related nodes + chown system graphics /sys/kernel/debug/dri/0/debug/dump + chown system graphics /sys/kernel/debug/dri/0/debug/recovery_reg + chown system graphics /sys/kernel/debug/dri/0/debug/recovery_dbgbus + chown system graphics /sys/kernel/debug/dri/0/debug/recovery_vbif_dbgbus + chown system graphics /sys/kernel/debug/dri/0/debug/recovery_dsi_dbgbus + + # Change ownership of sysfs power control node + chown system graphics /sys/class/drm/card0/device/power/control + + # Change ownership of sw_sync node + chown system graphics /sys/kernel/debug/sync/sw_sync + chmod 0666 /sys/kernel/debug/sync/sw_sync + + #Disable UFS clock scaling + write /sys/bus/platform/devices/1d84000.ufshc/clkscale_enable 0 + + chown root system /dev/kmsg + chmod 0620 /dev/kmsg + # Load WIGIG platform driver + exec u:r:vendor_modprobe:s0 -- /vendor/bin/modprobe -a -d /vendor/lib/modules msm_11ad_proxy + +on init + # Create cgroup mount point for memory + mkdir /sys/fs/cgroup/memory/bg 0750 root system + write /sys/fs/cgroup/memory/bg/memory.swappiness 140 + write /sys/fs/cgroup/memory/bg/memory.move_charge_at_immigrate 1 + chown root system /sys/fs/cgroup/memory/bg/tasks + chmod 0660 /sys/fs/cgroup/memory/bg/tasks + +on post-fs + chmod 0755 /sys/kernel/debug/tracing + chmod 0660 /sys/class/leds/red/brightness + chown system system /sys/class/leds/red/brightness + + mkdir /mnt/vendor/dsp 0770 root root + copy /vendor/dsp/cdsp/fastrpc_shell_3 /mnt/vendor/dsp/fastrpc_shell_3 + chmod 0644 /mnt/vendor/dsp/fastrpc_shell_3 + mount none /mnt/vendor/dsp/fastrpc_shell_3 /vendor/dsp/cdsp/fastrpc_shell_3 bind + +on early-boot + # set RLIMIT_MEMLOCK to 64MB + setrlimit 8 67108864 67108864 + # Allow subsystem (modem etc) debugging + write /sys/kernel/boot_adsp/boot 1 + write /sys/kernel/boot_cdsp/boot 1 + write /sys/devices/virtual/npu/msm_npu/boot 1 + write /sys/devices/virtual/cvp/cvp/boot 1 + exec u:r:vendor_qti_init_shell:s0 -- /vendor/bin/init.qcom.early_boot.sh + + chown system system /mnt/vendor/persist/data/pfm/licenses + chmod 0775 /mnt/vendor/persist/data/pfm/licenses + chown system system /mnt/vendor/persist/data/pfm/licenses/store_0 + chmod 0664 /mnt/vendor/persist/data/pfm/licenses/store_0 + chown system system /mnt/vendor/persist/data/pfm/licenses/store_1 + chmod 0664 /mnt/vendor/persist/data/pfm/licenses/store_1 + chown system system /mnt/vendor/persist/data/pfm/licenses/store_2 + chmod 0664 /mnt/vendor/persist/data/pfm/licenses/store_2 + chown system system /mnt/vendor/persist/data/pfm/licenses/store_3 + chmod 0664 /mnt/vendor/persist/data/pfm/licenses/store_3 + chown system system /mnt/vendor/persist/data/pfm/licenses/store_4 + chmod 0664 /mnt/vendor/persist/data/pfm/licenses/store_4 + + # SSR + write /sys/bus/msm_subsys/devices/subsys0/restart_level RELATED + write /sys/bus/msm_subsys/devices/subsys1/restart_level RELATED + write /sys/bus/msm_subsys/devices/subsys2/restart_level RELATED + write /sys/bus/msm_subsys/devices/subsys3/restart_level RELATED + write /sys/bus/msm_subsys/devices/subsys4/restart_level RELATED + write /sys/bus/msm_subsys/devices/subsys5/restart_level RELATED + write /sys/bus/msm_subsys/devices/subsys6/restart_level RELATED + +on boot + chown bluetooth bluetooth /sys/module/bluetooth_power/parameters/power + chown bluetooth net_bt /sys/class/rfkill/rfkill0/type + chown bluetooth net_bt /sys/class/rfkill/rfkill0/state + chown bluetooth bluetooth /proc/bluetooth/sleep/proto + chown bluetooth bluetooth /sys/module/hci_uart/parameters/ath_lpm + chown bluetooth bluetooth /sys/module/hci_uart/parameters/ath_btwrite + chown system system /sys/module/sco/parameters/disable_esco + chown bluetooth bluetooth /sys/module/hci_smd/parameters/hcismd_set + chown system system /sys/module/msm_core/parameters/polling_interval + chown system system /sys/module/msm_core/parameters/disabled + chown system system /sys/kernel/debug/msm_core/enable + chown system system /sys/kernel/debug/msm_core/ptable + chown system system /sys/kernel/boot_slpi/ssr + chown system system /sys/module/radio_iris_transport/parameters/fmsmd_set + chmod 0660 /sys/module/bluetooth_power/parameters/power + chmod 0660 /sys/module/hci_smd/parameters/hcismd_set + chmod 0660 /sys/module/radio_iris_transport/parameters/fmsmd_set + chmod 0660 /sys/class/rfkill/rfkill0/state + chmod 0660 /proc/bluetooth/sleep/proto + chown bluetooth net_bt /dev/ttyHS0 + chmod 0660 /sys/module/hci_uart/parameters/ath_lpm + chmod 0660 /sys/module/hci_uart/parameters/ath_btwrite + chmod 0660 /dev/ttyHS0 + chown bluetooth bluetooth /sys/devices/platform/msm_serial_hs.0/clock + chmod 0660 /sys/devices/platform/msm_serial_hs.0/clock + + chmod 0660 /dev/ttyHS2 + chown bluetooth bluetooth /dev/ttyHS2 + + chown bluetooth net_bt /sys/class/rfkill/rfkill0/device/extldo + chmod 0660 /sys/class/rfkill/rfkill0/device/extldo + + #add flashlight + chmod 0660 /sys/class/leds/flashlight/brightness + chown system system /sys/class/leds/flashlight/brightness + + #define back flash and front flash + chmod 0660 /sys/class/leds/led:flash_0/brightness + chmod 0660 /sys/class/leds/led:flash_1/brightness + chmod 0660 /sys/class/leds/led:flash_2/brightness + chmod 0660 /sys/class/leds/led:torch_0/brightness + chmod 0660 /sys/class/leds/led:torch_1/brightness + chmod 0660 /sys/class/leds/led:torch_2/brightness + chmod 0660 /sys/class/leds/led:switch_0/brightness + chmod 0660 /sys/class/leds/led:switch_1/brightness + chmod 0660 /sys/class/leds/flashlight/brightness + chmod 0777 /sys/class/ant_class/ant_state + chmod 0777 /sys/class/ant_div_class/ant_div_state + chown system system /sys/class/leds/led:flash_0/brightness + chown system system /sys/class/leds/led:flash_1/brightness + chown system system /sys/class/leds/led:flash_2/brightness + chown system system /sys/class/leds/led:torch_0/brightness + chown system system /sys/class/leds/led:torch_1/brightness + chown system system /sys/class/leds/led:torch_2/brightness + chown system system /sys/class/leds/led:switch_0/brightness + chown system system /sys/class/leds/led:switch_1/brightness + chown system system /sys/class/leds/flashlight/brightness + chown system system /sys/class/ant_class/ant_state + chown system system /sys/class/ant_div_class/ant_div_state + # This location is used by QCRIL to host UNIX domain + # socket files used for internal IPC within QCRIL + # modules + mkdir /dev/socket/qmux_radio 0770 radio radio + chmod 2770 /dev/socket/qmux_radio + + mkdir /persist/drm 0770 system system + mkdir /persist/bluetooth 0770 bluetooth bluetooth + mkdir /persist/misc 0770 system system + mkdir /persist/alarm 0770 system system + mkdir /mnt/vendor/persist/time 0770 system system + mkdir /mnt/vendor/persist/secnvm 0770 system system + mkdir /mnt/vendor/persist/iar_db 0770 system system + mkdir /mnt/vendor/spunvm 0770 system system + + #Create WIGIG socket area + mkdir /dev/socket/wigig 0770 wifi wifi + + setprop wifi.interface wlan0 + + setprop ro.telephony.call_ring.multiple false + + #Remove SUID bit for iproute2 ip tool + chmod 0755 /system/bin/ip + + + chmod 0444 /sys/devices/platform/msm_hsusb/gadget/usb_state + + setprop net.tcp.2g_init_rwnd 10 + + # To prevent out of order acknowledgements from making + # connection tracking to treat them as not belonging to + # the connection they belong to. + # Otherwise, a weird issue happens in which some long + # connections on high-throughput links get dropped when + # an ack packet comes out of order + write /proc/sys/net/netfilter/nf_conntrack_tcp_be_liberal 1 + + # Set the console loglevel to < KERN_WARN + # Set the default message loglevel to KERN_INFO + write /proc/sys/kernel/printk "4 6 1 7" + + # Allow access for CCID command/response timeout configuration + chown system system /sys/module/ccid_bridge/parameters/bulk_msg_timeout + + # bond0 used by FST Manager + chown wifi wifi /sys/class/net/bond0/bonding/queue_id + + # Allow access to emmc rawdump block partition and dload sysfs node + chown root system /dev/block/bootdevice/by-name/rawdump + chmod 0660 /dev/block/bootdevice/by-name/rawdump + chown root system /sys/kernel/dload/emmc_dload + chmod 0660 /sys/kernel/dload/emmc_dload + chown root system /dev/block/bootdevice/by-name/ramdump + chmod 0660 /dev/block/bootdevice/by-name/ramdump + chown root system /sys/kernel/dload/dload_mode + chmod 0660 /sys/kernel/dload/dload_mode + + chown system system /sys/class/backlight/panel0-backlight/brightness + chown system system /sys/class/backlight/panel0-backlight/max_brightness + chown system system /sys/class/backlight/panel1-backlight/brightness + chown system system /sys/class/backlight/panel1-backlight/max_brightness + + # Allow access to sensors device attributes + chown system system /sys/class/sensors/MPU6050-accel/enable + chown system system /sys/class/sensors/MPU6050-accel/poll_delay + chown system system /sys/class/sensors/MPU6050-gyro/enable + chown system system /sys/class/sensors/MPU6050-gyro/poll_delay + chown system system /sys/class/sensors/apds9930-light/enable + chown system system /sys/class/sensors/apds9930-light/poll_delay + chown system system /sys/class/sensors/apds9930-proximity/enable + chown system system /sys/class/sensors/apds9930-proximity/poll_delay + + # Create directory used for display + # for backward compatibility + mkdir /persist/display 0770 system graphics + mkdir /mnt/vendor/persist/display 0770 system graphics + + # Enable qcrild and data services on boot so process starts in main + enable vendor.qcrild + enable vendor.qcrild2 + enable vendor.dataqti + enable vendor.dataadpl + + # Create vpp directory + mkdir /mnt/vendor/persist/vpp 0770 media media + + + # Create hvdcp_opti directory + mkdir /mnt/vendor/persist/hvdcp_opti 0770 root system + + #Create camera directory + mkdir /mnt/vendor/persist/camera 0755 system cameraserver + + # Create pa-cal driver directory lct-20181009 + mkdir /mnt/vendor/persist/audio 0770 audio audio + + + # limit discard size to 128MB in order to avoid long IO latency + write /sys/block/sda/queue/discard_max_bytes 134217728 + +# msm specific files that need to be created on /data +on post-fs-data + mkdir /data/vendor/misc 01771 system system + + # Create directory used by display clients + mkdir /data/vendor/display 0770 system graphics + + # Change lm related dirs + mkdir /data/vendor/lm 0700 root root + + # Create directory used by powermodule + mkdir /data/vendor/pwr 0700 root root + + # Create directory used by media clients + mkdir /data/vendor/media 0770 mediacodec media + + # Create /data/vendor/tzstorage directory for SFS listener + mkdir /data/vendor/tzstorage 0770 system system + + # Create directory for apps access via QTEEConnector + mkdir /data/vendor/qtee 0770 system system + + #Create folder of camera + mkdir /data/vendor/camera 0770 system camera + + + #Create directory for tftp + mkdir /data/vendor/tombstones 0771 system system + mkdir /data/vendor/tombstones/rfs 0771 system system + + mkdir /data/vendor/ramdump 0771 root system + mkdir /data/vendor/bluetooth 0770 bluetooth bluetooth + mkdir /data/vendor/ramdump/bluetooth 0770 bluetooth bluetooth + + # Create the directories used by the Wireless subsystem + mkdir /data/vendor/wifi 0770 wifi wifi + mkdir /data/vendor/wifi/sockets 0770 wifi wifi + mkdir /data/vendor/wifi/hostapd 0770 wifi wifi + mkdir /data/vendor/wifi/hostapd/ctrl 0770 wifi wifi + mkdir /data/vendor/wifi/wpa_supplicant 0770 wifi wifi + mkdir /data/vendor/wifi/wigig_hostapd 0770 wifi wifi + mkdir /data/vendor/wifi/wpa 0770 wifi wifi + mkdir /data/vendor/wifi/wpa/sockets 0770 wifi wifi + + # Create the directories used by WiGig Sensing + mkdir /data/vendor/sensing 0770 system wifi + + # Create the directories used by CnE subsystem + mkdir /data/vendor/connectivity 0771 radio radio + chown radio radio /data/vendor/connectivity + + # Create directory used by audio subsystem + mkdir /data/vendor/audio 0770 audio audio + + # Create directory for audio delta files + mkdir /data/vendor/audio/acdbdata 0770 media audio + mkdir /data/vendor/audio/acdbdata/delta 0770 media audio + + # Create directory for radio + mkdir /data/vendor/radio 0770 system radio + rm /data/vendor/radio/shmbus + + # Create directory for modem_config + mkdir /data/vendor/modem_config 0570 radio root + + # Mounting of persist is moved to 'on emmc-fs' and 'on fs' sections + # We chown/chmod /persist again so because mount is run as root + defaults + chown root system /persist + chmod 0771 /persist + chown system system /persist/WCNSS_qcom_wlan_nv.bin + chmod 0664 /sys/devices/platform/msm_sdcc.1/polling + chmod 0664 /sys/devices/platform/msm_sdcc.2/polling + chmod 0664 /sys/devices/platform/msm_sdcc.3/polling + chmod 0664 /sys/devices/platform/msm_sdcc.4/polling + + # Chown polling nodes as needed from UI running on system server + chown system system /sys/devices/platform/msm_sdcc.1/polling + chown system system /sys/devices/platform/msm_sdcc.2/polling + chown system system /sys/devices/platform/msm_sdcc.3/polling + chown system system /sys/devices/platform/msm_sdcc.4/polling + + #Create the symlink to qcn wpa_supplicant folder for ar6000 wpa_supplicant + #symlink /data/misc/wifi/wpa_supplicant /data/system/wpa_supplicant + + #Create directories for Location services + mkdir /data/vendor/location 0770 gps gps + mkdir /data/vendor/location/mq 0770 gps gps + mkdir /data/vendor/location/xtwifi 0770 gps gps + mkdir /dev/socket/location 0770 gps gps + mkdir /dev/socket/location/mq 0770 gps gps + mkdir /dev/socket/location/xtra 0770 gps gps + mkdir /dev/socket/location/dgnss 0770 gps gps + + #Create directories for wifihal services + mkdir /dev/socket/wifihal 0770 wifi wifi + chmod 2770 /dev/socket/wifihal + + # Create /data/time folder for time-services + mkdir /data/vendor/time/ 0700 system system + + setprop vold.post_fs_data_done 1 + + #Create a folder for SRS to be able to create a usercfg file + #mkdir /data/data/media 0770 media media + + #Create FM dir for patchdownloader + mkdir /data/vendor/fm 0770 system system + chmod 0770 /data/vendor/fm + + mkdir /data/vendor/secure_element 0777 system system + + # Mark the copy complete flag to not completed + write /data/vendor/radio/copy_complete 0 + chown radio radio /data/vendor/radio/copy_complete + chmod 0660 /data/vendor/radio/copy_complete + + # copy prebuilt qcril.db files always + copy /vendor/radio/qcril_database/qcril.db /data/vendor/radio/qcril_prebuilt.db + chown radio radio /data/vendor/radio/qcril_prebuilt.db + chmod 0660 /data/vendor/radio/qcril_prebuilt.db + copy /vendor/radio/qcril_database/qcrilNr.db /data/vendor/radio/qcrilNr_prebuilt.db + copy /vendor/etc/qcril_database/qcrilNr.db /data/vendor/radio/qcrilNr_prebuilt.db + chown radio radio /data/vendor/radio/qcrilNr_prebuilt.db + chmod 0660 /data/vendor/radio/qcrilNr_prebuilt.db + + # File flags for prebuilt ril db file + write /data/vendor/radio/prebuilt_db_support 1 + chown radio radio /data/vendor/radio/prebuilt_db_support + chmod 0400 /data/vendor/radio/prebuilt_db_support + write /data/vendor/radio/db_check_done 0 + chown radio radio /data/vendor/radio/db_check_done + chmod 0660 /data/vendor/radio/db_check_done + + # qti-logkit data + mkdir /data/vendor/qti-logkit/ 0771 system system + mkdir /data/vendor/qti-logkit/shared-privileged/ 2770 system system + mkdir /data/vendor/qti-logkit/shared-public/ 2770 system diag + mkdir /data/vendor/qti-logkit/socket-privileged/ 2770 system system + mkdir /data/vendor/qti-logkit/socket-public/ 2750 system diag + mkdir /data/vendor/qti-logkit/logdata/ 2750 system shell + + #Create SWAP related dirs + mkdir /data/vendor/swap 0770 root system + chmod 2770 /data/vendor/swap + + # Create vpp directory + mkdir /data/vendor/vpp 0770 media media + + #Create dir for TUI + mkdir /data/vendor/tui 0700 system drmrpc + +service nqnfcinfo /system/vendor/bin/nqnfcinfo + class late_start + group nfc + user system + oneshot + +service iop /system/vendor/bin/iop + class main + user root + group root + disabled + socket iop seqpacket 0666 root system + +service qcomsysd /system/vendor/bin/qcom-system-daemon + class main + user root + group root diag oem_2901 + disabled + +on property:persist.vendor.qcomsysd.enabled=1 + enable qcomsysd + +on property:persist.vendor.qcomsysd.enabled=0 + stop qcomsysd + +on property:ro.vendor.iocgrp.config=1 + mkdir /dev/blkio + mount cgroup none /dev/blkio blkio + chown system system /dev/blkio + chown system system /dev/blkio/tasks + chmod 0664 /dev/blkio/tasks + mkdir /dev/blkio/bg 0755 system system + chown system system /dev/blkio/bg/tasks + chmod 0664 /dev/blkio/bg/tasks + write /dev/blkio/blkio.weight 1000 + write /dev/blkio/bg/blkio.weight 100 + +on property:persist.sys.mba_boot_timeout=* + write /sys/module/pil_msa/parameters/pbl_mba_boot_timeout_ms ${persist.sys.mba_boot_timeout} + +on property:persist.sys.modem_auth_timeout=* + write /sys/module/pil_msa/parameters/modem_auth_timeout_ms ${persist.sys.modem_auth_timeout} + +on property:persist.sys.pil_proxy_timeout=* + write /sys/module/peripheral_loader/parameters/proxy_timeout_ms ${persist.sys.pil_proxy_timeout} + +on property:persist.vendor.sys.rawdump_copy=1 + write /sys/kernel/dload/emmc_dload 1 + +on property:persist.vendor.sys.rawdump_copy=0 + write /sys/kernel/dload/emmc_dload 0 + +on property:sys.boot_completed=1 + write /dev/kmsg "Boot completed " + #Enable UFS clock scaling back + write /sys/bus/platform/devices/1d84000.ufshc/clkscale_enable 1 + #WDSP FW boot sysfs node used by STHAL + chown media audio /sys/kernel/wdsp0/boot + chown media audio /sys/kernel/wcd_cpe0/fw_name + #Reinit lmkd to reconfigure lmkd properties + setprop lmkd.reinit 1 + +# corefile limit +on property:persist.debug.trace=1 + mkdir /data/core 0777 root root + write /proc/sys/kernel/core_pattern "/data/core/%E.%p.%e" + +on property:vendor.media.target.version=* + setprop vendor.sys.media.target.version ${vendor.media.target.version} + +on property:vendor.netflix.bsp_rev=* + setprop ro.netflix.bsp_rev ${vendor.netflix.bsp_rev} + +on property:vendor.media.target_variant=* + setprop ro.media.xml_variant.codecs ${vendor.media.target_variant} + setprop ro.media.xml_variant.codecs_performance ${vendor.media.target_variant} + +on property:vold.decrypt=trigger_restart_framework + start wcnss-service + +service vendor.qrtr-ns /vendor/bin/qrtr-ns -f + class core + user vendor_qrtr + group vendor_qrtr + capabilities NET_BIND_SERVICE + +service irsc_util /vendor/bin/irsc_util "/vendor/etc/sec_config" + class core + user root + oneshot + +service qmiproxy /system/bin/qmiproxy + class main + user radio + group radio diag + disabled + +# Data Migration +service vendor.move_wifi_data /system/bin/move_wifi_data.sh + class main + user wifi + group wifi + disabled + oneshot + +service vendor.sensingdaemon /vendor/bin/sensingdaemon + class hal + socket wigig/sensingdaemon stream 660 system wifi + user system + group wifi + disabled + +service dhcpcd_wlan0 /system/bin/dhcpcd -ABKLG + class late_start + disabled + oneshot + +service dhcpcd_bond0 /system/bin/dhcpcd -ABKLG + class late_start + disabled + oneshot + +service dhcpcd_p2p /system/bin/dhcpcd -ABKLG + class late_start + disabled + oneshot + +service dhcpcd_wigig0 /system/bin/dhcpcd -ABKLG + class late_start + disabled + oneshot + +service iprenew_wlan0 /system/bin/dhcpcd -n + class late_start + disabled + oneshot + +service iprenew_bond0 /system/bin/dhcpcd -n + class late_start + disabled + oneshot + +service iprenew_p2p /system/bin/dhcpcd -n + class late_start + disabled + oneshot + +service iprenew_wigig0 /system/bin/dhcpcd -n + class late_start + disabled + oneshot + +service ptt_socket_app /system/vendor/bin/ptt_socket_app -d + class main + user wifi + group wifi system inet net_admin + capabilities NET_ADMIN + oneshot + +service ptt_ffbm /system/vendor/bin/ptt_socket_app -f -d + user root + group root + disabled + oneshot + +service wifi_ftmd /system/vendor/bin/wifi_ftmd + user system + group system inet net_admin + socket wififtmd_server dgram 0660 system system + disabled + oneshot + +on property:vendor.wifi.ftmd.load=true + insmod /system/lib/modules/pronto/pronto_wlan.ko con_mode=5 + +service cnss-daemon /system/vendor/bin/cnss-daemon -n -l + class late_start + user system + group system inet net_admin wifi + capabilities NET_ADMIN + +on property:sys.shutdown.requested=* + write /sys/kernel/shutdown_wlan/shutdown 1 + stop cnss-daemon + +service dhcpcd_bt-pan /system/bin/dhcpcd -BKLG + class late_start + disabled + oneshot + +service iprenew_bt-pan /system/bin/dhcpcd -n + class late_start + disabled + oneshot + +service ssgqmigd /vendor/bin/ssgqmigd + class late_start + user radio + group radio gps system + socket ssgqmig seqpacket 0660 radio inet + +service mlid /vendor/bin/mlid + class late_start + user gps + group gps + socket mlid stream 0666 gps gps + +service loc_launcher /system/vendor/bin/loc_launcher + class late_start + user gps + group gps + +service qcom-sh /vendor/bin/init.qcom.sh + class late_start + user root + group root system radio + oneshot + +on property:ro.vendor.ril.mbn_copy_completed=1 + write /data/vendor/radio/copy_complete 1 + +service qvop-daemon /vendor/bin/qvop-daemon + class late_start + user system + group system drmrpc + +service vendor.atfwd /vendor/bin/ATFWD-daemon + class late_start + user system + group system radio + +service hostapd_fst /vendor/bin/hw/hostapd -dd -g /data/vendor/wifi/hostapd/global + class main + capabilities NET_ADMIN NET_RAW + user wifi + group wifi + disabled + oneshot + +service battery_monitor /system/bin/battery_monitor + user system + group system + disabled + +service vendor.ril-daemon2 /vendor/bin/hw/rild -c 2 + class main + user radio + disabled + group radio cache inet misc audio sdcard_r sdcard_rw diag oem_2901 log + capabilities BLOCK_SUSPEND NET_ADMIN NET_RAW + +service vendor.ril-daemon3 /vendor/bin/hw/rild -c 3 + class main + user radio + disabled + group radio cache inet misc audio sdcard_r sdcard_rw diag oem_2901 log + capabilities BLOCK_SUSPEND NET_ADMIN NET_RAW + +service profiler_daemon /system/bin/profiler_daemon + class late_start + user root + group root + disabled + +service charger /system/bin/charger + class charger + user system + group system graphics input + capabilities SYS_BOOT + seclabel u:r:charger:s0 + +service vendor.ssr_diag /system/vendor/bin/ssr_diag + class late_start + user system + group system + disabled + +service hvdcp /system/bin/hvdcp + class core + user root + disabled + +on property:persist.usb.hvdcp.detect=true + start hvdcp + +on property:persist.usb.hvdcp.detect=false + stop hvdcp + +service charger_monitor /system/bin/charger_monitor + user root + group root + disabled + +service qbcharger /charger -m 1 + disabled + oneshot + +on property:sys.qbcharger.enable=true + start qbcharger + +on property:sys.qbcharger.enable=false + stop qbcharger + +# service diag_mdlog_start /system/vendor/bin/diag_mdlog +service diag_mdlog_start /system/bin/diag_mdlog_system -n 40 -s 500 + class late_start + user shell +# group system oem_2901 sdcard_rw sdcard_r media_rw + group system diag oem_2901 sdcard_rw sdcard_r media_rw + disabled + oneshot + +#service diag_mdlog_stop /system/vendor/bin/diag_mdlog -k +service diag_mdlog_stop /system/bin/diag_mdlog_system -k + class late_start + user shell +# group system oem_2901 sdcard_rw sdcard_r media_rw + group system diag oem_2901 sdcard_rw sdcard_r media_rw + disabled + oneshot + +on property:persist.vendor.mdlog.enable=true + start diag_mdlog_start +on property:persist.vendor.mdlog.enable=false + start diag_mdlog_stop + +service qlogd /system/xbin/qlogd + socket qlogd stream 0662 system system + class main + disabled +on property:persist.vendor.qlogd=1 + start qlogd +on property:persist.vendor.qlogd=0 + stop qlogd + +service vm_bms /vendor/bin/vm_bms + user root + group root + disabled + +service vendor.msm_irqbalance /vendor/bin/msm_irqbalance -f /system/vendor/etc/msm_irqbalance.conf + class core + user root + group root + +# service for USERDEBUG +service vendor.LKCore-dbg /vendor/bin/LKCore + class late_start + oneshot + disabled + user root + group root system log diag net_raw + + +# service for USER +service vendor.LKCore-rel /vendor/bin/LKCore + class late_start + oneshot + disabled + user system + group system log diag + +service qseeproxydaemon /system/vendor/bin/qseeproxydaemon + class late_start + user system + group system + +service esepmdaemon /system/vendor/bin/esepmdaemon + class core + user system + group nfc + +on charger + setprop persist.sys.usb.config mass_storage + +#add poweroffhandler +service poweroffhandler /system/vendor/bin/poweroffhandler + class core + user media + group graphics audio + disabled + oneshot + +service time_daemon /vendor/bin/time_daemon + class main + user system + group system + capabilities SYS_TIME + +# Set vendor-ril lib path based on Meta version +on property:vendor.rild.libpath=* + setprop rild.libpath ${vendor.rild.libpath} + +on property:ro.vendor.radio.noril=* + setprop ro.radio.noril ${ro.vendor.radio.noril} + +service vendor.power_off_alarm /vendor/bin/power_off_alarm + class core + group system + disabled + oneshot + +service vendor.hbtp /vendor/bin/hbtp_daemon + class main + user system + group system + capabilities SYS_NICE + disabled + +service chre /vendor/bin/chre + class late_start + user system + group system + socket chre seqpacket 0660 root system + shutdown critical + +on property:vendor.chre.enabled=0 + stop chre + +service bugreport /system/bin/dumpstate -d -p -B -z -o /data/user_de/0/com.android.shell/files/bugreports/bugreport + class main + disabled + oneshot + keycodes 114 115 116 + +#Set GPU Opengles version +on property:vendor.opengles.version=* + setprop ro.opengles.version ${vendor.opengles.version} + +#Set gpu available frequencies property +on property:vendor.gpu.available_frequencies=* + setprop ro.vendor.gpu.available_frequencies ${vendor.gpu.available_frequencies} + +service vendor.audio-hal /vendor/bin/hw/android.hardware.audio.service + override + class hal + user audioserver + # media gid needed for /dev/fm (radio) and for /data/misc/media (tee) + group audio camera drmrpc inet media mediadrm net_bt net_bt_admin net_bw_acct oem_2901 wakelock + capabilities BLOCK_SUSPEND + ioprio rt 4 + writepid /dev/cpuset/foreground/tasks /dev/stune/foreground/tasks + socket audio_hw_socket seqpacket 0666 system system + onrestart restart audioserver + +service vendor.hwcomposer-2-4 /vendor/bin/hw/android.hardware.graphics.composer@2.4-service + override + class hal animation + user system + group graphics drmrpc + capabilities SYS_NICE + onrestart restart surfaceflinger + writepid /dev/cpuset/system-background/tasks + socket pps stream 0660 system system diff --git a/rootdir/etc/init.recovery.qcom.rc b/rootdir/etc/init.recovery.qcom.rc new file mode 100644 index 0000000..c0fa50d --- /dev/null +++ b/rootdir/etc/init.recovery.qcom.rc @@ -0,0 +1,38 @@ +# Copyright (c) 2017-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 BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "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. +# + +on init + write /sys/class/backlight/panel0-backlight/brightness 200 + setprop sys.usb.configfs 1 + +on property:ro.boot.usbcontroller=* + setprop sys.usb.controller ${ro.boot.usbcontroller} + write /sys/class/udc/${ro.boot.usbcontroller}/device/../mode peripheral + +on fs + wait /dev/block/platform/soc/${ro.boot.bootdevice} + symlink /dev/block/platform/soc/${ro.boot.bootdevice} /dev/block/bootdevice diff --git a/rootdir/etc/init.target.rc b/rootdir/etc/init.target.rc new file mode 100644 index 0000000..67b24b5 --- /dev/null +++ b/rootdir/etc/init.target.rc @@ -0,0 +1,219 @@ +# Copyright (c) 2013-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, +# 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. +# +# + +on early-init + # configure governor settings + write /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor schedutil + write /sys/devices/system/cpu/cpu0/cpufreq/schedutil/up_rate_limit_us 500 + write /sys/devices/system/cpu/cpu0/cpufreq/schedutil/down_rate_limit_us 20000 + write /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq 576000 + + # configure governor settings for big cluster + write /sys/devices/system/cpu/cpu6/cpufreq/scaling_governor schedutil + write /sys/devices/system/cpu/cpu6/cpufreq/schedutil/up_rate_limit_us 500 + write /sys/devices/system/cpu/cpu6/cpufreq/schedutil/down_rate_limit_us 20000 + write /sys/devices/system/cpu/cpu6/cpufreq/scaling_min_freq 652800 + +on init + write /sys/module/qpnp_rtc/parameters/poweron_alarm 1 + wait /dev/block/platform/soc/${ro.boot.bootdevice} + symlink /dev/block/platform/soc/${ro.boot.bootdevice} /dev/block/bootdevice + + # Boot time cpuset and stune + write /dev/cpuset/top-app/cpus 0-7 + write /dev/cpuset/foreground/cpus 0-7 + write /dev/cpuset/background/cpus 0-5 + write /dev/cpuset/system-background/cpus 0-5 + write /dev/cpuset/restricted/cpus 2-5 + write /dev/stune/foreground/schedtune.prefer_idle 1 + write /dev/stune/foreground/schedtune.prefer_high_cap 1 + write /dev/stune/foreground/schedtune.boost 100 + write /dev/stune/schedtune.prefer_idle 1 + write /dev/stune/schedtune.prefer_high_cap 1 + write /dev/stune/schedtune.boost 100 + write /dev/stune/top-app/schedtune.prefer_idle 1 + write /dev/stune/top-app/schedtune.prefer_high_cap 1 + write /dev/stune/top-app/schedtune.boost 100 + + mkdir /dev/cpuset/camera-daemon + write /dev/cpuset/camera-daemon/cpus 0-7 + write /dev/cpuset/camera-daemon/mems 0 + chown cameraserver cameraserver /dev/cpuset/camera-daemon + chown cameraserver cameraserver /dev/cpuset/camera-daemon/tasks + chmod 0660 /dev/cpuset/camera-daemon/tasks + +on early-fs + start vold + +on fs + start hwservicemanager + mount_all --early + chown root system /mnt/vendor/persist + chmod 0771 /mnt/vendor/persist + restorecon_recursive /mnt/vendor/persist + mkdir /mnt/vendor/persist/data 0700 system system + mkdir /mnt/vendor/persist/subsys 0770 root system + mkdir /mnt/vendor/persist/audio 0755 system system + mkdir /mnt/vendor/persist/haptics 0755 system system + +on post-fs + write /dev/ipa 1 + +on late-fs + wait_for_prop hwservicemanager.ready true + exec_start wait_for_keymaster + mount_all --late + +on post-fs-data + mkdir /data/vendor/fpc 0770 system system + mkdir /data/vendor/goodix 0770 system system + mkdir /data/vendor/touchpad 0775 system system + mkdir /data/vendor/hbtp 0750 system system + mkdir /persist/qti_fp 0700 system system + mkdir /data/vendor/nnhal 0700 system system + mkdir /data/vendor/mac_addr 0771 system system + +on boot + chown system system /sys/class/drm/card0-DSI-1/disp_param + chmod 0664 /sys/class/drm/card0-DSI-1/disp_param + chown system system /sys/class/drm/card0-DSI-1/mipi_reg + chmod 0664 /sys/class/drm/card0-DSI-1/mipi_reg + chown system system /sys/class/drm/card0-DSI-1/panel_info + chmod 0444 /sys/class/drm/card0-DSI-1/panel_info + chown system system /sys/kernel/hbtp/display_pwr + start rmt_storage + start rfs_access + + chmod 0666 sys/devices/platform/soc/890000.i2c/i2c-1/1-005a/cali + chmod 0666 sys/devices/platform/soc/890000.i2c/i2c-1/1-005a/cali_save + chmod 0666 sys/devices/platform/soc/890000.i2c/i2c-1/1-005a/f0_save + chmod 0666 sys/devices/platform/soc/890000.i2c/i2c-1/1-005a/osc_save + chmod 0666 sys/devices/platform/soc/890000.i2c/i2c-1/1-005a/osc_cali + +# access permissions for fingerprint + chown system system /sys/bus/platform/devices/soc/soc:fpc1020/irq + chown system system /sys/bus/platform/devices/soc/soc:fpc1020/wakeup_enable + chown system system /sys/bus/platform/devices/soc/soc:fpc1020/modalias + chmod 0666 /dev/qseecom + chmod 0644 /dev/goodix_fp + chown system system /dev/goodix_fp + +#USB controller configuration + setprop vendor.usb.rndis.func.name "gsi" + setprop vendor.usb.rmnet.func.name "gsi" + setprop vendor.usb.rmnet.inst.name "rmnet" + setprop vendor.usb.dpl.inst.name "dpl" + setprop vendor.usb.qdss.inst.name "qdss" + setprop vendor.usb.controller a600000.dwc3 + +#pd-mapper +service vendor.pd_mapper /vendor/bin/pd-mapper + class core + user system + group system + +#Peripheral manager +service vendor.per_mgr /vendor/bin/pm-service + class core + user system + group system + ioprio rt 4 + +service vendor.per_proxy /vendor/bin/pm-proxy + class core + user system + group system + disabled + +service vendor.thermal-engine /vendor/bin/thermal-engine -c /vendor/etc/thermal-engine-${ro.boot.hwname}.conf + class main + user root + group root + +on property:init.svc.vendor.per_mgr=running + start vendor.per_proxy + +on property:sys.shutdown.requested=* + stop vendor.per_proxy + +on charger + mkdir /mnt/vendor/persist + chown root system /mnt/vendor/persist + chmod 0771 /mnt/vendor/persist + mkdir /mnt/vendor/persist/subsys 0770 root system + setprop sys.usb.controller a600000.dwc3 + setprop sys.usb.configfs 1 + chown system system /sys/class/leds/red/brightness + chmod 0666 /sys/class/leds/red/brightness + chmod 0666 /sys/class/backlight/panel0-backlight/brightness + start vendor.power_off_alarm + +on property:sys.boot_completed=1 + # Read only one page at a time + write /proc/sys/vm/page-cluster 0 + # Swap more aggressively + write /proc/sys/vm/swappiness 100 + # Set zRAM compression algorithm to LZ4 + write /sys/block/zram0/comp_algorithm lz4 + # Enable zRAM data deduplication feature + write /sys/block/zram0/use_dedup 1 + # Mount swap partitions specified in fstab + swapon_all /vendor/etc/fstab.qcom + + # Back to default VM settings + write /proc/sys/vm/dirty_expire_centisecs 3000 + write /proc/sys/vm/dirty_background_ratio 10 + + # Setup runtime cpusets + write /dev/cpuset/top-app/cpus 0-7 + write /dev/cpuset/foreground/cpus 0-5,7 + write /dev/cpuset/background/cpus 4-5 + write /dev/cpuset/system-background/cpus 2-5 + write /dev/cpuset/restricted/cpus 2-5 + + # Setup runtime schedTune + write /dev/stune/foreground/schedtune.prefer_idle 1 + write /dev/stune/foreground/schedtune.prefer_high_cap 0 + write /dev/stune/foreground/schedtune.boost 0 + write /dev/stune/schedtune.prefer_idle 0 + write /dev/stune/schedtune.prefer_high_cap 0 + write /dev/stune/schedtune.boost 0 + write /dev/stune/top-app/schedtune.prefer_idle 1 + write /dev/stune/top-app/schedtune.prefer_high_cap 0 + write /dev/stune/top-app/schedtune.boost 10 + + # Setup runtime blkio + # value for group_idle is us + write /dev/blkio/blkio.weight 1000 + write /dev/blkio/background/blkio.weight 200 + write /dev/blkio/blkio.group_idle 2000 + write /dev/blkio/background/blkio.group_idle 0 + +on property:ro.boot.multisim_config=* + setprop persist.radio.multisim.config ${ro.boot.multisim_config} diff --git a/rootdir/etc/ueventd.qcom.rc b/rootdir/etc/ueventd.qcom.rc new file mode 100644 index 0000000..5b18473 --- /dev/null +++ b/rootdir/etc/ueventd.qcom.rc @@ -0,0 +1,481 @@ +# Copyright (c) 2012-2015, 2017-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 BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "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. +# + +# Firmware directory Path +# Below macro will be read by uevent and path will +# be added to search path for firmware loading +firmware_directories /vendor/firmware_mnt/image/ + +# the DIAG device node is not world writable/readable. +/dev/diag 0660 system oem_2901 +/dev/mhi_*_pipe_4 0660 system system + +/dev/genlock 0666 system system +/dev/wlan 0660 wifi wifi +/dev/kgsl 0666 system system +/dev/kgsl-3d0 0666 system system +/dev/kgsl-2d0 0666 root root +/dev/kgsl-2d1 0666 root root +/dev/ion 0664 system system +/dev/membuf 0664 system system +/dev/rtc0 0660 system system +/dev/smd0 0660 system system +/dev/smd4 0660 system system +/dev/smd_cxm_qmi 0640 radio radio +/dev/smd5 0660 system system +/dev/smd6 0660 system system +/dev/smd7 0660 bluetooth bluetooth +/dev/ccid_bridge 0660 system system +/dev/ipa 0660 radio radio +/dev/wwan_ioctl 0660 radio radio +/dev/ipaNatTable 0660 radio radio +/dev/rmnet_ctrl 0660 usb usb +/dev/dpl_ctrl 0660 usb usb +/dev/ipa_odl_ctl 0660 radio radio +/dev/ipa_adpl 0660 system oem_2905 +/dev/synx_device 0660 root camera +/dev/hab 0666 system system +/dev/hgsl 0666 system system +/dev/iio:device* 0664 system system + +#permissions for UFS RPMB BSG device node +/dev/0:0:0:49476 0600 system system + +#permissions for CSVT +/dev/smd11 0660 radio radio + +#permsissions for BT/FM +/dev/smd2 0660 bluetooth bluetooth +/dev/smd3 0660 bluetooth bluetooth +/dev/btpower 0660 bluetooth system + +#permissions for pta +/dev/pta 0660 system system + +/dev/radio0 0640 system system +/dev/rfcomm0 0660 bluetooth bluetooth +/dev/ttyUSB0 0660 bluetooth bluetooth +/dev/smdcntl0 0640 radio radio +/dev/smdcntl1 0640 radio radio +/dev/smdcntl2 0640 radio radio +/dev/smdcntl3 0640 radio radio +/dev/smdcntl4 0640 radio radio +/dev/smdcntl5 0640 radio radio +/dev/smdcntl6 0640 radio radio +/dev/smdcntl7 0640 radio radio +/dev/smdcntl8 0640 radio radio +/dev/smdcnt_rev0 0640 radio radio +/dev/smdcnt_rev1 0640 radio radio +/dev/smdcnt_rev2 0640 radio radio +/dev/smdcnt_rev3 0640 radio radio +/dev/smdcnt_rev4 0640 radio radio +/dev/smdcnt_rev5 0640 radio radio +/dev/smdcnt_rev6 0640 radio radio +/dev/smdcnt_rev7 0640 radio radio +/dev/smdcnt_rev8 0640 radio radio +/dev/smuxctl32 0640 radio radio +/dev/sdioctl0 0640 radio radio +/dev/sdioctl1 0640 radio radio +/dev/sdioctl2 0640 radio radio +/dev/sdioctl3 0640 radio radio +/dev/sdioctl4 0640 radio radio +/dev/sdioctl5 0640 radio radio +/dev/sdioctl6 0640 radio radio +/dev/sdioctl7 0640 radio radio +/dev/sdioctl8 0640 radio radio +/dev/rmnet_mux_ctrl 0640 radio radio +/dev/hsicctl0 0640 radio radio +/dev/hsicctl1 0640 radio radio +/dev/hsicctl2 0640 radio radio +/dev/hsicctl3 0640 radio radio +/dev/hsicctl4 0640 radio radio +/dev/hsicctl5 0640 radio radio +/dev/hsicctl6 0640 radio radio +/dev/hsicctl7 0640 radio radio +/dev/hsicctl8 0640 radio radio +/dev/hsicctl9 0640 radio radio +/dev/hsicctl10 0640 radio radio +/dev/hsicctl11 0640 radio radio +/dev/hsicctl12 0640 radio radio +/dev/hsicctl13 0640 radio radio +/dev/hsicctl14 0640 radio radio +/dev/hsicctl15 0640 radio radio +/dev/hsicctl16 0640 radio radio +/dev/mhi_*_pipe_14 0640 radio radio +/dev/mhi_*_pipe_16 0640 radio radio +/dev/mhi_*_pipe_32 0640 radio radio +/dev/at_usb0 0640 radio radio +/dev/at_mdm0 0640 radio radio +/dev/video* 0660 system camera +/dev/cvp* 0660 system camera +/dev/media* 0660 system camera +/dev/v4l-subdev* 0660 system camera +/dev/qseecom 0660 system drmrpc +/dev/qce 0660 system drmrpc +/dev/smcinvoke 0660 system drmrpc +/dev/qsee_ipc_irq_spss 0660 system drmrpc +/dev/seemplog 0660 system system +/dev/pft 0660 system drmrpc +/dev/spcom 0660 system system +/dev/spss_utils 0660 system system +/dev/sp_kernel 0660 system system +/dev/sp_nvm 0660 system system +/dev/sp_ssr 0660 system system +/dev/sp_keymaster 0660 system system +/dev/sp_keymaster_ssr 0660 system system +/dev/sec_nvm_* 0660 system system +/dev/cryptoapp 0660 system system +/dev/spdaemon_ssr 0660 system system +/dev/spu_hal_ssr 0660 system system +/dev/iuicc* 0660 system system +/dev/gemini0 0660 system camera +/dev/jpeg0 0660 system camera +/dev/jpeg1 0660 system camera +/dev/jpeg2 0660 system camera +/dev/jpeg3 0660 system camera +/dev/adsprpc-smd 0664 system system +/dev/adsprpc-smd-secure 0644 system system +/dev/system_health_monitor 0644 radio system +/dev/mdss_rotator 0664 system system + +#QDSS +/dev/byte-cntr 0660 system oem_2902 +/dev/mhi_qdss 0660 system oem_2902 +/sys/class/qdss_bridge/mhi_qdss mode 0660 system oem_2902 + +#qg +/dev/qg 0660 system system +/dev/qg_battery 0660 system system + +#qvr +/dev/qvr_external_sensor_ioctl 0660 system system +/sys/kernel/qvr_external_sensor fd 0660 system system +/dev/bus/usb/* 0660 root usb +/dev/hidraw* 0660 root usb + +# wlan +/dev/wcnss_wlan 0660 system system +/dev/wcnss_ctrl 0660 system system +/sys/devices/soc/a000000.qcom,wcnss-wlan/net/wlan0/queues/rx-* rps_cpus 0660 system system +/sys/devices/soc/a000000.qcom,wcnss-wlan/net/p2p0/queues/rx-* rps_cpus 0660 system system +/sys/devices/platform/soc/*.qcom,icnss/net/wlan*/queues/rx-* rps_cpus 0660 system system +/sys/devices/platform/soc/1c00000.qcom,pcie/pci0000:00/0000:00:00.0/0000:01:00.0/net/wlan*/queues/rx-* rps_cpus 0660 system system +/sys/devices/platform/soc/17a10040.qcom,wcn6750/net/wlan*/queues/rx-* rps_cpus 0660 system system +/dev/spidev0.0 0660 system audio +/dev/spidev0.1 0660 system system +/dev/i2c-7 0660 system audio +/dev/msm_camera/* 0660 system camera +/dev/gemini/ 0660 system camera +/dev/mercury0 0660 system camera +/dev/msm_vidc_reg 0660 system audio +/dev/msm_vidc_dec 0660 system audio +/dev/msm_vidc_dec_sec 0660 system audio +/dev/msm_vidc_enc 0660 system audio +/dev/msm_rotator 0660 system system +/dev/hw_random 0600 root root +/dev/sdsprpc-smd 0660 system system + +#permissions for audio +/dev/wcd_dsp0_control 0660 system audio +/dev/wcd-dsp-glink 0660 system audio +/dev/audio_slimslave 0660 system audio +/dev/msm_qcelp 0660 system audio +/dev/msm_evrc 0660 system audio +/dev/msm_wma 0660 system audio +/dev/msm_wmapro 0660 system audio +/dev/msm_alac 0660 system audio +/dev/msm_ape 0660 system audio +/dev/msm_amrnb 0660 system audio +/dev/msm_amrwb 0660 system audio +/dev/msm_amrwbplus 0660 system audio +/dev/msm_aac 0660 system audio +/dev/msm_multi_aac 0660 system audio +/dev/msm_aac_in 0660 system audio +/dev/msm_qcelp_in 0660 system audio +/dev/msm_evrc_in 0660 system audio +/dev/msm_amrnb_in 0660 system audio +/dev/msm_amrwb_in 0660 system audio +/dev/msm_a2dp_in 0660 system audio +/dev/msm_ac3 0660 system audio +/dev/msm_audio_cal 0660 system audio +/dev/msm_hweffects 0660 system audio +/dev/msm_cad 0660 system audio +/dev/msm_fm 0660 system audio +/dev/msm_mvs 0660 system audio +/dev/msm_pcm_lp_dec 0660 system audio +/dev/msm_preproc_ctl 0660 system audio +/dev/msm_rtac 0660 system audio +/dev/msm_voicememo 0660 system audio +/dev/ttyHSL1 0660 system system +/dev/ttyHS1 0660 system system +/dev/mdm 0660 system radio +/sys/devices/virtual/smdpkt/smdcntl* open_timeout 0664 radio radio +/dev/sdio_tty_ciq_00 0660 system system +/dev/tty_sdio_00 0660 system system +/dev/ttyGS0 0660 system system +/dev/i2c-5 0660 media media +/dev/avtimer 0660 system audio +/dev/spidev2.0 0660 system audio +/dev/spidev22.0 0660 system audio +/dev/spidev10.0 0660 system audio + +# DVB devices +/dev/dvb/adapter0/demux* 0440 media media +/dev/dvb/adapter0/dvr* 0660 media media +/dev/dvb/adapter0/video* 0660 media media + +# Broadcast devices +/dev/tsc_mux0 0660 media media +/dev/tsc_ci0 0660 media media + +# sensors +/dev/sensors 0660 system system +/sys/devices/i2c-12/12-* pollrate_ms 0664 system system +/sys/devices/f9925000.i2c/i2c-0/0-* enable 0660 input system +/sys/devices/f9925000.i2c/i2c-0/0-* poll_delay 0660 input system +/sys/devices/soc.0/78b6000.i2c/i2c-0/0-* enable 0660 input system +/sys/devices/soc.0/78b6000.i2c/i2c-0/0-* poll_delay 0660 input system +/sys/devices/soc.0/78b6000.i2c/i2c-0/0-* enable_wakeup 0660 input system +/sys/devices/soc.0/78b6000.i2c/i2c-0/0-* max_latency 0660 input system +/sys/devices/soc.0/78b6000.i2c/i2c-0/0-* flush 0660 input system +/sys/devices/soc.0/78b6000.i2c/i2c-0/0-* calibrate 0660 input system +/sys/devices/soc.0/78b5000.i2c/i2c-1/1-* enable 0660 input system +/sys/devices/soc.0/78b5000.i2c/i2c-1/1-* poll_delay 0660 input system +/sys/devices/soc.0/78b5000.i2c/i2c-1/1-* enable_wakeup 0660 input system +/sys/devices/soc.0/78b5000.i2c/i2c-1/1-* max_latency 0660 input system +/sys/devices/soc.0/78b5000.i2c/i2c-1/1-* flush 0660 input system +/sys/devices/soc.0/78b5000.i2c/i2c-1/1-* calibrate 0660 input system +/sys/devices/virtual/optical_sensors/proximity ps_adc 0660 input system +/sys/devices/virtual/optical_sensors/proximity ps_poll_delay 0660 input system +/sys/devices/virtual/optical_sensors/lightsensor ls_auto 0660 input system +/sys/devices/virtual/optical_sensors/lightsensor ls_poll_delay 0660 input system +/sys/devices/virtual/input/input* poll 0660 input system +/sys/devices/virtual/input/input* pollrate_ms 0660 input system +/sys/devices/soc/78b7000.i2c/i2c-3/3-0020/input/input* secure_touch 0440 system drmrpc +/sys/devices/soc/78b7000.i2c/i2c-3/3-0020/input/input* secure_touch_enable 0660 system drmrpc +/sys/devices/soc/78b7000.i2c/i2c-3/3-0038/input/input* secure_touch 0440 system drmrpc +/sys/devices/soc/78b7000.i2c/i2c-3/3-0038/input/input* secure_touch_enable 0660 system drmrpc +/sys/devices/soc/78b7000.i2c/i2c-3/3-004b/input/input* secure_touch 0440 system drmrpc +/sys/devices/soc/78b7000.i2c/i2c-3/3-004b/input/input* secure_touch_enable 0660 system drmrpc +/sys/devices/soc/c179000.i2c/i2c-5/5-0020/input/input* secure_touch 0440 system drmrpc +/sys/devices/soc/c179000.i2c/i2c-5/5-0020/input/input* secure_touch_enable 0660 system drmrpc +/sys/devices/platform/soc/a98000.i2c/i2c-2/2-0020/input/input* secure_touch 0440 system drmrpc +/sys/devices/platform/soc/a98000.i2c/i2c-2/2-0020/input/input* secure_touch_enable 0660 system drmrpc +/sys/devices/platform/soc/a84000.i2c/i2c-2/2-0020/input/input* secure_touch 0440 system drmrpc +/sys/devices/platform/soc/a84000.i2c/i2c-2/2-0020/input/input* secure_touch_enable 0660 system drmrpc +/sys/devices/platform/soc/soc:fpc1020* fingerdown_wait 0220 system system + +# GNSS Device premissions +/dev/gnss_sirf 0660 gps gps + +# laser sensor access +/sys/devices/virtual/input/input* enable_ps_sensor 0660 system input +/sys/devices/virtual/input/input* set_delay_ms 0660 system input +/sys/devices/virtual/input/input* do_flush 0660 system input + +# vm_bms +/dev/vm_bms 0660 system system +/dev/battery_data 0660 system system + +# wlan +/dev/wcnss_wlan 0660 system system +/dev/wcnss_ctrl 0660 system system +/sys/devices/soc/600000.qcom,pcie/pci0000:00/0000:00:00.0/0000:01:00.0/net/wlan0/queues/rx-* rps_cpus 0660 system system +/sys/devices/soc/600000.qcom,pcie/pci0000:00/0000:00:00.0/0000:01:00.0/net/p2p0/queues/rx-* rps_cpus 0660 system system + +# wigig +/sys/bus/pci/drivers/wil6210* 0000:01:00.0/wil6210/fst_link_loss 0660 wifi wifi +/sys/bus/pci/drivers/wil6210* 0000:01:00.0/wil6210/thermal_throttling 0660 system system +/sys/bus/pci/drivers/wil6210* 0000:01:00.0/wil6210/snr_thresh 0660 wifi wifi +/sys/bus/pci/drivers/wil6210* 0000:01:00.0/net/wigig0/queues/rx-0/rps_cpus 0660 system system +/sys/bus/pci/drivers/wil6210* 0000:01:00.0/net/wigig0/gro_flush_timeout 0660 system system +/sys/devices/virtual/net/bond0 queues/rx-0/rps_cpus 0660 system system + +#nfc permissions +/dev/nfc-nci 0660 nfc nfc +/dev/nq-nci 0660 nfc nfc +/dev/assd 0660 nfc nfc + +# UIO devices +/dev/uio0 0660 system system +/dev/uio1 0660 system system +/dev/uio2 0660 system system + +# SSR devices +/dev/subsys_* 0640 system system + +# Ultrasound device +/dev/usf1 0660 system system + +# Ramdump devices +/dev/ramdump* 0640 system system + +# Fingerprint device +/dev/qbt* 0660 system system +/sys/class/fts/touch_aoi aoi_set 0660 root system +/sys/class/fts/touch_aoi power_set 0660 root system + +#ImproveTouch device +/dev/hbtp_input 0660 system system +/dev/hbtp_vm 0660 system system + +# Add device block for FRP +/dev/block/platform/soc/7824900.sdhci/by-name/config 0600 system system +/dev/block/platform/soc/7464900.sdhci/by-name/frp 0600 system system +/dev/block/platform/soc/624000.ufshc/by-name/frp 0600 system system +/dev/block/platform/soc/1da4000.ufshc/by-name/frp 0600 system system +/dev/block/platform/soc/c0c4000.sdhci/by-name/frp 0600 system system +/dev/block/platform/soc/1d84000.ufshc/by-name/frp 0600 system system +/dev/block/platform/soc/7c4000.sdhci/by-name/frp 0600 system system +/dev/block/platform/soc/4744000.sdhci/by-name/frp 0600 system system +/dev/block/platform/soc/4804000.ufshc/by-name/frp 0600 system system + +# This is temporary while using SD card for initial bring-up +/dev/block/platform/soc/8804000.sdhci/by-name/frp 0600 system system + +# Kmsg device +/dev/kmsg 0620 root system + +# LED class devices +/sys/class/leds/red delay_on 0640 system system +/sys/class/leds/red delay_off 0640 system system +/sys/class/leds/red breath 0640 system system +/sys/class/leds/red trigger 0640 system system +/sys/class/leds/green delay_on 0640 system system +/sys/class/leds/green delay_off 0640 system system +/sys/class/leds/green breath 0640 system system +/sys/class/leds/green trigger 0640 system system +/sys/class/leds/blue delay_on 0640 system system +/sys/class/leds/blue delay_off 0640 system system +/sys/class/leds/blue breath 0640 system system +/sys/class/leds/blue trigger 0640 system system + +# NPU device +/dev/msm_npu 0644 system system + +# USB role switch +/sys/class/dual_role_usb/* data_role 0660 system system +/sys/class/dual_role_usb/* power_role 0660 system system +/sys/class/dual_role_usb/* mode 0660 system system + +#Memory Offline +/sys/devices/system/memory/memory* state 0660 system system + +/sys/devices/virtual/hdcp/msm_hdcp min_level_change 0664 system graphics + +# sys-fs display +/sys/class/graphics/fb* hpd 0664 system graphics +/sys/class/graphics/fb* res_info 0664 system graphics +/sys/class/graphics/fb* vendor_name 0664 system graphics +/sys/class/graphics/fb* product_description 0664 system graphics +/sys/class/graphics/fb* video_mode 0664 system graphics +/sys/class/graphics/fb* format_3d 0664 system graphics +/sys/class/graphics/fb* s3d_mode 0664 system graphics +/sys/class/graphics/fb* dynamic_fps 0664 system graphics +/sys/class/graphics/fb* msm_fb_dfps_mode 0664 system graphics +/sys/class/graphics/fb* hdr_stream 0664 system graphics +/sys/class/graphics/fb* cec/enable 0664 system graphics +/sys/class/graphics/fb* cec/logical_addr 0664 system graphics +/sys/class/graphics/fb* cec/rd_msg 0664 system graphics +/sys/class/graphics/fb* pa 0664 system graphics +/sys/class/graphics/fb* cec/wr_msg 0600 system graphics +/sys/class/graphics/fb* hdcp/tp 0664 system graphics +/sys/class/graphics/fb* hdcp2p2/min_level_change 0660 system graphics +/sys/class/graphics/fb* hdmi_audio_cb 0600 audioserver audio + +/sys/class/graphics/fb* lineptr_value 0664 system graphics +/sys/class/graphics/fb* msm_fb_persist_mode 0664 system graphics + +/sys/class/graphics/fb0 idle_time 0664 system graphics +/sys/class/graphics/fb0 dynamic_fps 0664 system graphics +/sys/class/graphics/fb0 dyn_pu 0664 system graphics +/sys/class/graphics/fb0 modes 0664 system graphics +/sys/class/graphics/fb0 mode 0664 system graphics +/sys/class/graphics/fb0 msm_cmd_autorefresh_en 0664 system graphics + +/sys/devices/platform/soc/ae00000.qcom,mdss_mdp power/control 0664 system graphics + +#asm330 sensor +#common sensors files +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* buffer/enable 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* buffer/length 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* buffer/watermark 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* discharded_samples 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* current_timestamp_clock 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* hwfifo_flush 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* hwfifo_watermark 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* hwfifo_watermark_max 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* mount_matrix 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* name 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* sampling_frequency 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* sampling_frequency_available 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_timestamp_en 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_timestamp_index 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_timestamp_type 0664 system system + +# standard iio accel attributes +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_accel_scale_available 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_accel_x_raw 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_accel_x_scale 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_accel_y_raw 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_accel_y_scale 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_accel_z_raw 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_accel_z_scale 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_accel_x_en 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_accel_x_index 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_accel_x_type 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_accel_y_en 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_accel_y_index 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_accel_y_type 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_accel_z_en 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_accel_z_index 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_accel_z_type 0664 system system + +# standard iio gyro attributes +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_anglvel_scale_available 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_anglvel_x_raw 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_anglvel_x_scale 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_anglvel_y_raw 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_anglvel_y_scale 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_anglvel_z_raw 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_anglvel_z_scale 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_anglvel_x_en 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_anglvel_x_index 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_anglvel_x_type 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_anglvel_y_en 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_anglvel_y_index 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_anglvel_y_type 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_anglvel_z_en 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_anglvel_z_index 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* scan_elements/in_anglvel_z_type 0664 system system + + +# standard iio temp attributes +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_temp_offset 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_temp_raw 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_temp_scale 0664 system system +/sys/devices/platform/soc/*.i2c/i2c-*/*-*/iio:device* in_temp_scale_available 0664 system system diff --git a/sepolicy/private/property_contexts b/sepolicy/private/property_contexts new file mode 100644 index 0000000..c847b7e --- /dev/null +++ b/sepolicy/private/property_contexts @@ -0,0 +1,2 @@ +# WiFi Display +persist.vendor.setWFDInfo. u:object_r:vendor_wfd_sys_debug_prop:s0 diff --git a/sepolicy/private/system_server.te b/sepolicy/private/system_server.te new file mode 100644 index 0000000..0071ee2 --- /dev/null +++ b/sepolicy/private/system_server.te @@ -0,0 +1 @@ +get_prop(system_server, vendor_wfd_sys_debug_prop) diff --git a/sepolicy/private/vendor_wfd_app.te b/sepolicy/private/vendor_wfd_app.te new file mode 100644 index 0000000..4e78cfb --- /dev/null +++ b/sepolicy/private/vendor_wfd_app.te @@ -0,0 +1 @@ +get_prop(vendor_wfd_app, vendor_wfd_sys_debug_prop) diff --git a/sepolicy/vendor/adsprpcd.te b/sepolicy/vendor/adsprpcd.te new file mode 100644 index 0000000..5227744 --- /dev/null +++ b/sepolicy/vendor/adsprpcd.te @@ -0,0 +1,2 @@ +r_dir_file(vendor_adsprpcd, public_adsprpcd_file) +r_dir_file(vendor_adsprpcd, vendor_sysfs_graphics) diff --git a/sepolicy/vendor/app.te b/sepolicy/vendor/app.te new file mode 100644 index 0000000..7cf5cde --- /dev/null +++ b/sepolicy/vendor/app.te @@ -0,0 +1,6 @@ +allow { appdomain -isolated_app } adsprpcd_file:dir r_dir_perms; +allow { appdomain -isolated_app } public_adsprpcd_file:file r_file_perms; +allow { appdomain -isolated_app } vendor_xdsp_device:chr_file r_file_perms; + +get_prop({ appdomain -isolated_app }, vendor_fingerprint_prop) +get_prop({ appdomain -isolated_app }, vendor_tee_listener_prop) diff --git a/sepolicy/vendor/batterysecret.te b/sepolicy/vendor/batterysecret.te new file mode 100644 index 0000000..c6a6425 --- /dev/null +++ b/sepolicy/vendor/batterysecret.te @@ -0,0 +1,49 @@ +type batterysecret, domain; +type batterysecret_exec, exec_type, vendor_file_type, file_type; + +init_daemon_domain(batterysecret) + +r_dir_file(batterysecret, cgroup) +r_dir_file(batterysecret, mnt_vendor_file) +r_dir_file(batterysecret, vendor_sysfs_battery_supply) +r_dir_file(batterysecret, sysfs_batteryinfo) +r_dir_file(batterysecret, sysfs_type) +r_dir_file(batterysecret, vendor_sysfs_usb_supply) +r_dir_file(batterysecret, vendor_sysfs_usbpd_device) + +allow batterysecret { + mnt_vendor_file + persist_subsys_file + rootfs +}:dir rw_dir_perms; + +allow batterysecret { + persist_subsys_file + vendor_sysfs_battery_supply + sysfs_usb + vendor_sysfs_usb_supply + vendor_sysfs_usbpd_device +}:file w_file_perms; + +allow batterysecret kmsg_device:chr_file rw_file_perms; + +allow batterysecret self:netlink_kobject_uevent_socket create_socket_perms_no_ioctl; + +allow batterysecret self:global_capability_class_set { + sys_tty_config + sys_boot +}; + +allow batterysecret self:capability { + chown + fsetid +}; + +allow batterysecret { + system_suspend_hwservice + hidl_manager_hwservice +}:hwservice_manager find; + +binder_call(batterysecret, system_suspend_server) + +wakelock_use(batterysecret) diff --git a/sepolicy/vendor/cdsprpcd.te b/sepolicy/vendor/cdsprpcd.te new file mode 100644 index 0000000..cead8a9 --- /dev/null +++ b/sepolicy/vendor/cdsprpcd.te @@ -0,0 +1 @@ +r_dir_file(vendor_cdsprpcd, public_adsprpcd_file) diff --git a/sepolicy/vendor/device.te b/sepolicy/vendor/device.te new file mode 100644 index 0000000..98f6bdd --- /dev/null +++ b/sepolicy/vendor/device.te @@ -0,0 +1,3 @@ +type fingerprint_device, dev_type; + +type lirc_device, dev_type; diff --git a/sepolicy/vendor/file.te b/sepolicy/vendor/file.te new file mode 100644 index 0000000..2dc5e24 --- /dev/null +++ b/sepolicy/vendor/file.te @@ -0,0 +1,19 @@ +type audio_socket, file_type; + +type camera_persist_file, file_type, vendor_persist_type; + +type fingerprint_data_file, data_file_type, core_data_file_type, file_type; + +type persist_subsys_file, vendor_persist_type, file_type; + +type public_adsprpcd_file, file_type; + +type sysfs_msm_boot, fs_type, sysfs_type; + +type sysfs_msm_subsys, sysfs_type, fs_type; + +type thermal_link_device, dev_type; + +type sysfs_touchpanel, fs_type, sysfs_type; + +type vendor_sysfs_iio, fs_type, sysfs_type; diff --git a/sepolicy/vendor/file_contexts b/sepolicy/vendor/file_contexts new file mode 100644 index 0000000..e382555 --- /dev/null +++ b/sepolicy/vendor/file_contexts @@ -0,0 +1,45 @@ +# Audio +/dev/socket/audio_hw_socket u:object_r:audio_socket:s0 + +# Camera +/mnt/vendor/persist/camera(/.*)? u:object_r:camera_persist_file:s0 + +# Charger +/vendor/bin/batterysecret u:object_r:batterysecret_exec:s0 + +# Fingerprint +/vendor/bin/hw/android\.hardware\.biometrics\.fingerprint@2.3-service\.xiaomi u:object_r:hal_fingerprint_default_exec:s0 + +# Fingerprint - devices +/dev/goodix_fp u:object_r:fingerprint_device:s0 + +# Fingerprint - data +/data/vendor/goodix(/.*)? u:object_r:fingerprint_vendor_data_file:s0 +/data/vendor/fpc(/.*)? u:object_r:fingerprint_vendor_data_file:s0 + +# Hexagon DSP-side executable needed for Halide operation +# This is labeled as public_adsprpcd_file as it needs to be read by apps +# (e.g. Google Camera App) +/mnt/vendor/dsp/fastrpc_shell_3 u:object_r:public_adsprpcd_file:s0 + +# IR +/dev/spidev0.1 u:object_r:lirc_device:s0 + +# Lights +/vendor/bin/hw/android\.hardware\.light-service\.xiaomi u:object_r:hal_light_default_exec:s0 + +# Persist subsystem +/mnt/vendor/persist/subsys(/.*)? u:object_r:persist_subsys_file:s0 + +# Power +/vendor/bin/hw/android\.hardware\.power-service\.xiaomi-libperfmgr u:object_r:hal_power_default_exec:s0 + +# Sys +/sys/bus/iio/devices u:object_r:vendor_sysfs_iio:s0 +/sys/devices/platform/soc/c440000.qcom,spmi/spmi-0/spmi0-00/c440000.qcom,spmi:qcom,pm6150@0:vadc@3100/iio:device0(/.*)? u:object_r:vendor_sysfs_iio:s0 +/sys/devices/platform/soc/c440000.qcom,spmi/spmi-0/spmi0-04/c440000.qcom,spmi:qcom,pm6150l@4:vadc@3100/iio:device1(/.*)? u:object_r:vendor_sysfs_iio:s0 + +# Thermal +/vendor/bin/hw/android\.hardware\.thermal@2\.0-service\.pixel u:object_r:hal_thermal_default_exec:s0 +/vendor/bin/thermal_symlinks u:object_r:init-thermal-symlinks-sh_exec:s0 +/dev/thermal(/.*)? u:object_r:thermal_link_device:s0 diff --git a/sepolicy/vendor/genfs_contexts b/sepolicy/vendor/genfs_contexts new file mode 100644 index 0000000..d197842 --- /dev/null +++ b/sepolicy/vendor/genfs_contexts @@ -0,0 +1,59 @@ +# DSP +genfscon sysfs /kernel/boot_cdsp/boot u:object_r:sysfs_msm_boot:s0 + +# Display +genfscon sysfs /devices/platform/soc/5000000.qcom,kgsl-3d0 u:object_r:sysfs_msm_subsys:s0 +genfscon sysfs /devices/platform/soc/ae00000.qcom,mdss_mdp/idle_state u:object_r:vendor_sysfs_graphics:s0 +genfscon sysfs /devices/platform/soc/soc:qcom,cpu-cpu-llcc-bw u:object_r:sysfs_msm_subsys:s0 +genfscon sysfs /devices/platform/soc/soc:qcom,cpu-llcc-ddr-bw u:object_r:sysfs_msm_subsys:s0 +genfscon sysfs /devices/platform/soc/soc:qcom,cpu0-cpu-l3-lat u:object_r:sysfs_msm_subsys:s0 +genfscon sysfs /devices/platform/soc/soc:qcom,cpu6-cpu-l3-lat u:object_r:sysfs_msm_subsys:s0 +genfscon sysfs /devices/platform/soc/soc:qcom,dsi-display u:object_r:vendor_sysfs_graphics:s0 +genfscon sysfs /devices/platform/soc/soc:qcom,gpubw u:object_r:sysfs_msm_subsys:s0 +genfscon sysfs /devices/platform/soc/soc:qcom,gpubw/devfreq u:object_r:sysfs_msm_subsys:s0 + +# Health +genfscon sysfs /class/power_supply/battery/capacity u:object_r:vendor_sysfs_battery_supply:s0 +genfscon sysfs /devices/platform/soc/soc:maxim_ds28e16/power_supply/batt_verify u:object_r:vendor_sysfs_battery_supply:s0 + +# LED +genfscon sysfs /devices/platform/soc/c440000.qcom,spmi/spmi-0/spmi0-05/c440000.qcom,spmi:qcom,pm6150l@5:qcom,leds@d000/leds/white u:object_r:sysfs_leds:s0 + +# Touchpanel +genfscon sysfs /touchpanel u:object_r:sysfs_touchpanel:s0 + +# Wakeup source stats +genfscon sysfs /devices/platform/soc/18800000.qcom,icnss/power/wakeup u:object_r:sysfs_wakeup:s0 +genfscon sysfs /devices/platform/soc/88c000.qcom,qup_uart/tty/ttyHS0/power/wakeup u:object_r:sysfs_wakeup:s0 +genfscon sysfs /devices/platform/soc/88e0000.qcom,msm-eud/power/wakeup u:object_r:sysfs_wakeup:s0 +genfscon sysfs /devices/platform/soc/890000.i2c/i2c-1/1-005a/power/wakeup u:object_r:sysfs_wakeup:s0 +genfscon sysfs /devices/platform/soc/a600000.ssusb/power/wakeup u:object_r:sysfs_wakeup:s0 +genfscon sysfs /devices/platform/soc/c440000.qcom,spmi/spmi-0/spmi0-00/c440000.qcom,spmi:qcom,pm6150@0:qcom,power-on@800/power/wakeup u:object_r:sysfs_wakeup:s0 +genfscon sysfs /devices/platform/soc/c440000.qcom,spmi/spmi-0/spmi0-00/c440000.qcom,spmi:qcom,pm6150@0:qcom,qpnp-smb5/power_supply/battery/power/wakeup u:object_r:sysfs_wakeup:s0 +genfscon sysfs /devices/platform/soc/c440000.qcom,spmi/spmi-0/spmi0-00/c440000.qcom,spmi:qcom,pm6150@0:qcom,qpnp-smb5/power_supply/dc/power/wakeup u:object_r:sysfs_wakeup:s0 +genfscon sysfs /devices/platform/soc/c440000.qcom,spmi/spmi-0/spmi0-00/c440000.qcom,spmi:qcom,pm6150@0:qcom,qpnp-smb5/power_supply/main/power/wakeup u:object_r:sysfs_wakeup:s0 +genfscon sysfs /devices/platform/soc/c440000.qcom,spmi/spmi-0/spmi0-00/c440000.qcom,spmi:qcom,pm6150@0:qcom,qpnp-smb5/power_supply/pc_port/power/wakeup u:object_r:sysfs_wakeup:s0 +genfscon sysfs /devices/platform/soc/c440000.qcom,spmi/spmi-0/spmi0-00/c440000.qcom,spmi:qcom,pm6150@0:qcom,qpnp-smb5/power_supply/usb/power/wakeup u:object_r:sysfs_wakeup:s0 +genfscon sysfs /devices/platform/soc/c440000.qcom,spmi/spmi-0/spmi0-00/c440000.qcom,spmi:qcom,pm6150@0:qcom,qpnp-smb5/power/wakeup u:object_r:sysfs_wakeup:s0 +genfscon sysfs /devices/platform/soc/c440000.qcom,spmi/spmi-0/spmi0-00/c440000.qcom,spmi:qcom,pm6150@0:qcom,usb-pdphy@1700/usbpd/usbpd0/otg_default/power/wakeup u:object_r:sysfs_wakeup:s0 +genfscon sysfs /devices/platform/soc/c440000.qcom,spmi/spmi-0/spmi0-00/c440000.qcom,spmi:qcom,pm6150@0:qcom,usb-pdphy@1700/usbpd/usbpd0/power/wakeup u:object_r:sysfs_wakeup:s0 +genfscon sysfs /devices/platform/soc/c440000.qcom,spmi/spmi-0/spmi0-00/c440000.qcom,spmi:qcom,pm6150@0:qpnp,qg/power_supply/bms/power/wakeup u:object_r:sysfs_wakeup:s0 +genfscon sysfs /devices/platform/soc/c440000.qcom,spmi/spmi-0/spmi0-04/c440000.qcom,spmi:qcom,pm6150l@4:qcom,power-on@800/power/wakeup u:object_r:sysfs_wakeup:s0 +genfscon sysfs /devices/platform/soc/soc:gpio_keys/power/wakeup u:object_r:sysfs_wakeup:s0 +genfscon sysfs /devices/platform/soc/soc:qcom,msm-audio-apr/soc:qcom,msm-audio-apr:qcom,q6core-audio/soc:qcom,msm-audio-apr:qcom,q6core-audio:bolero-cdc/rx-macro/rx_swr_ctrl/power/wakeup u:object_r:sysfs_wakeup:s0 +genfscon sysfs /devices/platform/soc/soc:qcom,msm-audio-apr/soc:qcom,msm-audio-apr:qcom,q6core-audio/soc:qcom,msm-audio-apr:qcom,q6core-audio:bolero-cdc/tx-macro/tx_swr_ctrl/power/wakeup u:object_r:sysfs_wakeup:s0 +genfscon sysfs /devices/virtual/input/input1/power/wakeup u:object_r:sysfs_wakeup:s0 +genfscon sysfs /devices/virtual/misc/msm_aac/power/wakeup u:object_r:sysfs_wakeup:s0 +genfscon sysfs /devices/virtual/misc/msm_alac/power/wakeup u:object_r:sysfs_wakeup:s0 +genfscon sysfs /devices/virtual/misc/msm_amrnb/power/wakeup u:object_r:sysfs_wakeup:s0 +genfscon sysfs /devices/virtual/misc/msm_amrwbplus/power/wakeup u:object_r:sysfs_wakeup:s0 +genfscon sysfs /devices/virtual/misc/msm_amrwb/power/wakeup u:object_r:sysfs_wakeup:s0 +genfscon sysfs /devices/virtual/misc/msm_ape/power/wakeup u:object_r:sysfs_wakeup:s0 +genfscon sysfs /devices/virtual/misc/msm_evrc/power/wakeup u:object_r:sysfs_wakeup:s0 +genfscon sysfs /devices/virtual/misc/msm_g711alaw/power/wakeup u:object_r:sysfs_wakeup:s0 +genfscon sysfs /devices/virtual/misc/msm_g711mlaw/power/wakeup u:object_r:sysfs_wakeup:s0 +genfscon sysfs /devices/virtual/misc/msm_mp3/power/wakeup u:object_r:sysfs_wakeup:s0 +genfscon sysfs /devices/virtual/misc/msm_multi_aac/power/wakeup u:object_r:sysfs_wakeup:s0 +genfscon sysfs /devices/virtual/misc/msm_qcelp/power/wakeup u:object_r:sysfs_wakeup:s0 +genfscon sysfs /devices/virtual/misc/msm_wma/power/wakeup u:object_r:sysfs_wakeup:s0 +genfscon sysfs /devices/virtual/misc/msm_wmapro/power/wakeup u:object_r:sysfs_wakeup:s0 diff --git a/sepolicy/vendor/hal_audio_default.te b/sepolicy/vendor/hal_audio_default.te new file mode 100644 index 0000000..a981cff --- /dev/null +++ b/sepolicy/vendor/hal_audio_default.te @@ -0,0 +1,14 @@ +# For interfacing with PowerHAL +hal_client_domain(hal_audio_default, hal_power) + +# Allow hal_audio_default to read vendor_persist_audio_file +r_dir_file(hal_audio_default, vendor_persist_audio_file) + +r_dir_file(hal_audio_default, sysfs) + +binder_call(hal_audio_default, system_suspend_server) + +set_prop(hal_audio_default, vendor_audio_prop) + +allow hal_audio_default audio_socket:sock_file rw_file_perms; +allow hal_audio_default system_suspend_hwservice:hwservice_manager find; diff --git a/sepolicy/vendor/hal_bluetooth_default.te b/sepolicy/vendor/hal_bluetooth_default.te new file mode 100644 index 0000000..d63e66c --- /dev/null +++ b/sepolicy/vendor/hal_bluetooth_default.te @@ -0,0 +1,2 @@ +# Allow hal_bluetooth_default to read files in vendor_wifi_vendor_data_file +r_dir_file(hal_bluetooth_default, vendor_wifi_vendor_data_file) diff --git a/sepolicy/vendor/hal_camera_default.te b/sepolicy/vendor/hal_camera_default.te new file mode 100644 index 0000000..892d7ec --- /dev/null +++ b/sepolicy/vendor/hal_camera_default.te @@ -0,0 +1,20 @@ +# For interfacing with PowerHAL +hal_client_domain(hal_camera_default, hal_power) + +# Allow hal_camera_default to read to vendor_sysfs_kgsl +r_dir_file(hal_camera_default, vendor_sysfs_kgsl) + +# Allow hal_camera_default to read to mnt/vendor/persist/camera +r_dir_file(hal_camera_default, camera_persist_file) +r_dir_file(hal_camera_default, mnt_vendor_file) +r_dir_file(hal_camera_default, vendor_persist_sensors_file) + +allow hal_camera_default proc_stat:file read; + +set_prop(hal_camera_default, vendor_camera_prop) + +allow hal_camera_default socket_device:sock_file write; +allow hal_camera_default proc_stat:file { open }; + +allow hal_camera_default public_adsprpcd_file:file r_file_perms; +allow hal_camera_default vendor_xdsp_device:chr_file r_file_perms; diff --git a/sepolicy/vendor/hal_fingerprint_default.te b/sepolicy/vendor/hal_fingerprint_default.te new file mode 100644 index 0000000..c08e947 --- /dev/null +++ b/sepolicy/vendor/hal_fingerprint_default.te @@ -0,0 +1,33 @@ +typeattribute hal_fingerprint_default data_between_core_and_vendor_violators; + +allow hal_fingerprint_default fingerprint_data_file:dir rw_dir_perms; +allow hal_fingerprint_default fingerprint_data_file:file create_file_perms; + +allow hal_fingerprint_default { + fingerprint_device + input_device + tee_device + uhid_device +}: chr_file rw_file_perms; + +allow hal_fingerprint_default self:netlink_socket create_socket_perms_no_ioctl; + +allow hal_fingerprint_default { + input_device + vendor_sysfs_graphics + sysfs_msm_subsys +}: dir r_dir_perms; + +allow hal_fingerprint_default { + vendor_sysfs_fingerprint + vendor_sysfs_fps_attr + vendor_sysfs_graphics + sysfs_msm_subsys +}: file rw_file_perms; + +r_dir_file(hal_fingerprint_default, firmware_file) + +set_prop(hal_fingerprint_default, vendor_fingerprint_prop) + +allow hal_fingerprint_default vendor_sysfs_spss:dir { search }; +allow hal_fingerprint_default vendor_sysfs_spss:file { open read }; diff --git a/sepolicy/vendor/hal_health_default.te b/sepolicy/vendor/hal_health_default.te new file mode 100644 index 0000000..6cecf70 --- /dev/null +++ b/sepolicy/vendor/hal_health_default.te @@ -0,0 +1,2 @@ +allow hal_health_default sysfs_wakeup:dir r_dir_perms; +allow hal_health_default sysfs_wakeup:file r_file_perms; diff --git a/sepolicy/vendor/hal_ir_default.te b/sepolicy/vendor/hal_ir_default.te new file mode 100644 index 0000000..b945493 --- /dev/null +++ b/sepolicy/vendor/hal_ir_default.te @@ -0,0 +1,4 @@ +allow hal_ir_default lirc_device:{ + chr_file + file +} rw_file_perms; diff --git a/sepolicy/vendor/hal_light_default.te b/sepolicy/vendor/hal_light_default.te new file mode 100644 index 0000000..50ede18 --- /dev/null +++ b/sepolicy/vendor/hal_light_default.te @@ -0,0 +1,5 @@ +allow hal_light_default { + sysfs_leds +}:file rw_file_perms; + +r_dir_file(hal_light_default, sysfs_leds) diff --git a/sepolicy/vendor/hal_neuralnetworks_default.te b/sepolicy/vendor/hal_neuralnetworks_default.te new file mode 100644 index 0000000..7dfa669 --- /dev/null +++ b/sepolicy/vendor/hal_neuralnetworks_default.te @@ -0,0 +1,3 @@ +r_dir_file(vendor_hal_neuralnetworks_default, public_adsprpcd_file) + +get_prop(vendor_hal_neuralnetworks_default, vendor_adsprpc_prop) diff --git a/sepolicy/vendor/hal_nfc_default.te b/sepolicy/vendor/hal_nfc_default.te new file mode 100644 index 0000000..59872eb --- /dev/null +++ b/sepolicy/vendor/hal_nfc_default.te @@ -0,0 +1,3 @@ +# Data file accesses. +allow hal_nfc_default vendor_nfc_vendor_data_file:dir create_dir_perms; +allow hal_nfc_default vendor_nfc_vendor_data_file:file create_file_perms; diff --git a/sepolicy/vendor/hal_power_default.te b/sepolicy/vendor/hal_power_default.te new file mode 100644 index 0000000..8b29578 --- /dev/null +++ b/sepolicy/vendor/hal_power_default.te @@ -0,0 +1,34 @@ +# Allow hal_power_default to write to dt2w nodes +allow hal_power_default input_device:dir r_dir_perms; +allow hal_power_default input_device:chr_file rw_file_perms; + +r_dir_file(hal_power_default, input_device) + +allow hal_power_default { + vendor_sysfs_devfreq + sysfs_msm_subsys + sysfs_touchpanel +}:dir search; + +allow hal_power_default { + cgroup + proc + vendor_sysfs_devfreq + sysfs_devices_system_cpu + vendor_sysfs_graphics + vendor_sysfs_kgsl + sysfs_msm_subsys + sysfs_touchpanel + vendor_sysfs_scsi_host +}:{ + file + lnk_file +} rw_file_perms; + +allow hal_power_default vendor_latency_device:chr_file rw_file_perms; + +# Rule for hal_power_default to access graphics composer process +unix_socket_connect(hal_power_default, vendor_pps, hal_graphics_composer_default); + +# To get/set powerhal state property +set_prop(hal_power_default, vendor_power_prop) diff --git a/sepolicy/vendor/hal_power_stats_default.te b/sepolicy/vendor/hal_power_stats_default.te new file mode 100644 index 0000000..3ccdf89 --- /dev/null +++ b/sepolicy/vendor/hal_power_stats_default.te @@ -0,0 +1,2 @@ +allow hal_power_stats_default vendor_sysfs_iio:dir r_dir_perms; +allow hal_power_stats_default vendor_sysfs_iio:file r_file_perms; diff --git a/sepolicy/vendor/hal_sensors_default.te b/sepolicy/vendor/hal_sensors_default.te new file mode 100644 index 0000000..028f3c6 --- /dev/null +++ b/sepolicy/vendor/hal_sensors_default.te @@ -0,0 +1,9 @@ +unix_socket_connect(hal_sensors_default, audio, hal_audio_default) + +allow hal_sensors_default audio_socket:sock_file rw_file_perms; +allow hal_sensors_default socket_device:sock_file rw_file_perms; +allow hal_sensors_default iio_device:chr_file rw_file_perms; +allow hal_sensors_default vendor_sysfs_iio:dir r_dir_perms; +allow hal_sensors_default vendor_sysfs_iio:file rw_file_perms; + +get_prop(hal_sensors_default, vendor_adsprpc_prop) diff --git a/sepolicy/vendor/hal_thermal_default.te b/sepolicy/vendor/hal_thermal_default.te new file mode 100644 index 0000000..42ce07e --- /dev/null +++ b/sepolicy/vendor/hal_thermal_default.te @@ -0,0 +1,11 @@ +allow hal_thermal_default sysfs_thermal:dir r_dir_perms; +allow hal_thermal_default sysfs_thermal:file rw_file_perms; +allow hal_thermal_default sysfs_thermal:lnk_file r_file_perms; +allow hal_thermal_default thermal_link_device:dir r_dir_perms; +allow hal_thermal_default proc_stat:file r_file_perms; + +allow hal_thermal_default self:netlink_kobject_uevent_socket create_socket_perms_no_ioctl; + +hal_client_domain(hal_thermal_default, hal_power); + +get_prop(hal_thermal_default, vendor_thermal_prop) diff --git a/sepolicy/vendor/hwservice_contexts b/sepolicy/vendor/hwservice_contexts new file mode 100644 index 0000000..d37b6d6 --- /dev/null +++ b/sepolicy/vendor/hwservice_contexts @@ -0,0 +1,2 @@ +vendor.goodix.hardware.biometrics.fingerprint::IGoodixFingerprintDaemon u:object_r:hal_fingerprint_hwservice:s0 +vendor.goodix.hardware.biometrics.fingerprint::IGoodixFingerprintDaemonExt u:object_r:hal_fingerprint_hwservice:s0 diff --git a/sepolicy/vendor/init-thermal-symlinks.sh.te b/sepolicy/vendor/init-thermal-symlinks.sh.te new file mode 100644 index 0000000..093512c --- /dev/null +++ b/sepolicy/vendor/init-thermal-symlinks.sh.te @@ -0,0 +1,12 @@ +type init-thermal-symlinks-sh, domain; +type init-thermal-symlinks-sh_exec, exec_type, vendor_file_type, file_type; + +init_daemon_domain(init-thermal-symlinks-sh) + +allow init-thermal-symlinks-sh vendor_toolbox_exec:file rx_file_perms; +allow init-thermal-symlinks-sh thermal_link_device:dir rw_dir_perms; +allow init-thermal-symlinks-sh thermal_link_device:lnk_file create_file_perms; +allow init-thermal-symlinks-sh sysfs_thermal:dir r_dir_perms; +allow init-thermal-symlinks-sh sysfs_thermal:file r_file_perms; +allow init-thermal-symlinks-sh sysfs_thermal:lnk_file r_file_perms; +set_prop(init-thermal-symlinks-sh, vendor_thermal_prop) diff --git a/sepolicy/vendor/init.te b/sepolicy/vendor/init.te new file mode 100644 index 0000000..8b97871 --- /dev/null +++ b/sepolicy/vendor/init.te @@ -0,0 +1,3 @@ +allow init same_process_hal_file:file execute; + +allow init adsprpcd_file:file mounton; diff --git a/sepolicy/vendor/property.te b/sepolicy/vendor/property.te new file mode 100644 index 0000000..d16a64a --- /dev/null +++ b/sepolicy/vendor/property.te @@ -0,0 +1,5 @@ +vendor_internal_prop(vendor_power_prop) + +vendor_internal_prop(vendor_thermal_prop) + +vendor_restricted_prop(vendor_fingerprint_prop); diff --git a/sepolicy/vendor/property_contexts b/sepolicy/vendor/property_contexts new file mode 100644 index 0000000..0ec0083 --- /dev/null +++ b/sepolicy/vendor/property_contexts @@ -0,0 +1,20 @@ +# Camera +persist.vendor.camera.mi.module. u:object_r:vendor_camera_prop:s0 +vendor.camera. u:object_r:vendor_camera_prop:s0 +persist.camera. u:object_r:vendor_camera_prop:s0 + +# Fingerprint +persist.vendor.sys.fp. u:object_r:vendor_fingerprint_prop:s0 +ro.hardware.fp u:object_r:vendor_fingerprint_prop:s0 +vendor.fps_hal. u:object_r:vendor_fingerprint_prop:s0 +vendor.sys.fp u:object_r:vendor_fingerprint_prop:s0 + +# Power +vendor.powerhal.state u:object_r:vendor_power_prop:s0 +vendor.powerhal.audio u:object_r:vendor_power_prop:s0 +vendor.powerhal.lpm u:object_r:vendor_power_prop:s0 +vendor.powerhal.init u:object_r:vendor_power_prop:s0 +vendor.powerhal.rendering u:object_r:vendor_power_prop:s0 + +# Thermal +vendor.thermal. u:object_r:vendor_thermal_prop:s0 diff --git a/sepolicy/vendor/radio.te b/sepolicy/vendor/radio.te new file mode 100644 index 0000000..4670c6a --- /dev/null +++ b/sepolicy/vendor/radio.te @@ -0,0 +1 @@ +get_prop(radio, vendor_audio_prop) diff --git a/sepolicy/vendor/sensors.te b/sepolicy/vendor/sensors.te new file mode 100644 index 0000000..2dc5c72 --- /dev/null +++ b/sepolicy/vendor/sensors.te @@ -0,0 +1,2 @@ +# Allow sensors to access backlight sysfs state +r_dir_file(vendor_sensors, vendor_sysfs_graphics) diff --git a/sepolicy/vendor/system_app.te b/sepolicy/vendor/system_app.te new file mode 100644 index 0000000..2c1079d --- /dev/null +++ b/sepolicy/vendor/system_app.te @@ -0,0 +1,6 @@ +allow system_app vendor_sysfs_battery_supply:dir { search }; +allow system_app vendor_sysfs_battery_supply:file { read }; +allow system_app vendor_sysfs_battery_supply:file { open }; +allow system_app vendor_sysfs_battery_supply:file { getattr }; + +r_dir_file(system_app, vendor_sysfs_battery_supply) diff --git a/sepolicy/vendor/tee.te b/sepolicy/vendor/tee.te new file mode 100644 index 0000000..fcb5b52 --- /dev/null +++ b/sepolicy/vendor/tee.te @@ -0,0 +1,9 @@ +typeattribute tee data_between_core_and_vendor_violators; + +allow tee fingerprint_data_file:dir create_dir_perms; +allow tee { + fingerprint_data_file + mnt_vendor_file +}:file create_file_perms; + +allow tee mnt_vendor_file:dir rw_dir_perms; diff --git a/sepolicy/vendor/thermal-engine.te b/sepolicy/vendor/thermal-engine.te new file mode 100644 index 0000000..3f87c39 --- /dev/null +++ b/sepolicy/vendor/thermal-engine.te @@ -0,0 +1,11 @@ +allow vendor_thermal-engine { + vendor_sysfs_devfreq + sysfs_msm_subsys +}:dir r_dir_perms; + +allow vendor_thermal-engine vendor_sysfs_devfreq:file rw_file_perms; + +# Rule for vendor_thermal-engine to access init process +unix_socket_connect(vendor_thermal-engine, property, init); + +set_prop(vendor_thermal-engine, vendor_thermal_prop) diff --git a/sepolicy/vendor/uevent.te b/sepolicy/vendor/uevent.te new file mode 100644 index 0000000..ae98f62 --- /dev/null +++ b/sepolicy/vendor/uevent.te @@ -0,0 +1 @@ +allow ueventd self:capability sys_nice; diff --git a/sepolicy/vendor/vendor_hal_perf_default.te b/sepolicy/vendor/vendor_hal_perf_default.te new file mode 100644 index 0000000..aa21090 --- /dev/null +++ b/sepolicy/vendor/vendor_hal_perf_default.te @@ -0,0 +1 @@ +allow vendor_hal_perf_default sysfs_msm_subsys:dir search; diff --git a/sepolicy/vendor/vendor_init.te b/sepolicy/vendor/vendor_init.te new file mode 100644 index 0000000..2553fc4 --- /dev/null +++ b/sepolicy/vendor/vendor_init.te @@ -0,0 +1,16 @@ +set_prop(vendor_init, vendor_power_prop) +set_prop(vendor_init, vendor_alarm_boot_prop) +set_prop(vendor_init, vendor_video_prop) + +allow vendor_init { + proc_dirty + proc +}:file w_file_perms; + +allow vendor_init block_device:lnk_file setattr; +allow vendor_init vendor_camera_prop:property_service set; + +allow vendor_init input_device:chr_file { create setattr unlink rw_file_perms }; + +allow vendor_init thermal_link_device:dir r_dir_perms; +allow vendor_init thermal_link_device:lnk_file r_file_perms; diff --git a/sepolicy/vendor/vendor_qti_init_shell.te b/sepolicy/vendor/vendor_qti_init_shell.te new file mode 100644 index 0000000..d5bb7ed --- /dev/null +++ b/sepolicy/vendor/vendor_qti_init_shell.te @@ -0,0 +1,4 @@ +allow vendor_qti_init_shell configfs:dir rw_dir_perms; +allow vendor_qti_init_shell configfs:file create_file_perms; +allow vendor_qti_init_shell ctl_stop_prop:property_service set; +allow vendor_qti_init_shell sysfs_wakeup:file setattr; diff --git a/setup-makefiles.sh b/setup-makefiles.sh index 46e4cac..1b5d4bb 100755 --- a/setup-makefiles.sh +++ b/setup-makefiles.sh @@ -1,14 +1,36 @@ #!/bin/bash # -# Copyright (C) 2021 The LineageOS Project +# Copyright (C) 2016 The CyanogenMod Project +# Copyright (C) 2017-2020 The LineageOS Project # # SPDX-License-Identifier: Apache-2.0 # set -e -export DEVICE=miatoll -export DEVICE_COMMON=sm6250-common -export VENDOR=xiaomi +DEVICE=miatoll +VENDOR=xiaomi -"./../../${VENDOR}/${DEVICE_COMMON}/setup-makefiles.sh" "$@" +# Load extract_utils and do some sanity checks +MY_DIR="${BASH_SOURCE%/*}" +if [[ ! -d "${MY_DIR}" ]]; then MY_DIR="${PWD}"; fi + +ANDROID_ROOT="${MY_DIR}/../../.." + +HELPER="${ANDROID_ROOT}/tools/extract-utils/extract_utils.sh" +if [ ! -f "${HELPER}" ]; then + echo "Unable to find helper script at ${HELPER}" + exit 1 +fi +source "${HELPER}" + +# Initialize the helper +setup_vendor "${DEVICE}" "${VENDOR}" "${ANDROID_ROOT}" + +# Warning headers and guards +write_headers + +write_makefiles "${MY_DIR}/proprietary-files.txt" true + +# Finish +write_footers diff --git a/system.prop b/system.prop new file mode 100644 index 0000000..04a17a4 --- /dev/null +++ b/system.prop @@ -0,0 +1,33 @@ +# Audio +audio.offload.min.duration.secs=30 + +# Charger +ro.charger.enable_suspend=true + +# CNE +persist.vendor.cne.feature=1 + +# Display +debug.sf.enable_hwc_vds=1 + +# DPM +persist.vendor.dpm.feature=11 + +# FUSE +persist.sys.fuse.passthrough.enable=true + +# Fwk detect +ro.vendor.qti.va_aosp.support=1 + +# IMS +persist.dbg.volte_avail_ovr=1 +persist.dbg.vt_avail_ovr=1 +persist.dbg.wfc_avail_ovr=1 + +# Media +media.settings.xml=/vendor/etc/media_profiles_vendor.xml +vendor.mm.enable.qcom_parser=16777215 + +# WFD +persist.debug.wfd.enable=1 +vendor.sys.video.disable.ubwc=1 diff --git a/vendor.prop b/vendor.prop new file mode 100644 index 0000000..5706010 --- /dev/null +++ b/vendor.prop @@ -0,0 +1,193 @@ +# Audio +aaudio.hw_burst_min_usec=2000 +aaudio.mmap_exclusive_policy=2 +aaudio.mmap_policy=2 +persist.vendor.audio.avs.afe_api_version=2 +persist.vendor.audio.fluence.speaker=true +persist.vendor.audio.fluence.tmic.enabled=false +persist.vendor.audio.fluence.voicecall=true +persist.vendor.audio.fluence.voicecomm=false +persist.vendor.audio.fluence.voicerec=false +persist.vendor.audio.ras.enabled=false +persist.vendor.audio.spv3.enable=true +persist.vendor.audio.voicecall.speaker.stereo=false +ro.vendor.audio.sdk.fluencetype=fluence +ro.vendor.audio.sdk.ssr=false +vendor.audio.adm.buffering.ms=2 +vendor.audio.dolby.ds2.enabled=false +vendor.audio.dolby.ds2.hardbypass=false +vendor.audio.enable.mirrorlink=false +vendor.audio.feature.a2dp_offload.enable=true +vendor.audio.feature.afe_proxy.enable=true +vendor.audio.feature.anc_headset.enable=true +vendor.audio.feature.audiozoom.enable=false +vendor.audio.feature.battery_listener.enable=true +vendor.audio.feature.compr_cap.enable=false +vendor.audio.feature.compr_voip.enable=false +vendor.audio.feature.compress_in.enable=true +vendor.audio.feature.compress_meta_data.enable=true +vendor.audio.feature.concurrent_capture.enable=true +vendor.audio.feature.custom_stereo.enable=true +vendor.audio.feature.deepbuffer_as_primary.enable=false +vendor.audio.feature.display_port.enable=true +vendor.audio.feature.dsm_feedback.enable=false +vendor.audio.feature.dynamic_ecns.enable=true +vendor.audio.feature.ext_hw_plugin.enable=false +vendor.audio.feature.external_dsp.enable=false +vendor.audio.feature.external_speaker.enable=false +vendor.audio.feature.external_speaker_tfa.enable=false +vendor.audio.feature.fluence.enable=true +vendor.audio.feature.fm.enable=true +vendor.audio.feature.hdmi_edid.enable=true +vendor.audio.feature.hdmi_passthrough.enable=true +vendor.audio.feature.hfp.enable=true +vendor.audio.feature.hifi_audio.enable=false +vendor.audio.feature.hwdep_cal.enable=false +vendor.audio.feature.incall_music.enable=true +vendor.audio.feature.keep_alive.enable=true +vendor.audio.feature.kpi_optimize.enable=false +vendor.audio.feature.maxx_audio.enable=false +vendor.audio.feature.multi_voice_session.enable=true +vendor.audio.feature.ras.enable=true +vendor.audio.feature.record_play_concurency.enable=false +vendor.audio.feature.snd_mon.enable=true +vendor.audio.feature.spkr_prot.enable=true +vendor.audio.feature.src_trkn.enable=true +vendor.audio.feature.ssrec.enable=true +vendor.audio.feature.usb_offload.enable=true +vendor.audio.feature.usb_offload_burst_mode.enable=true +vendor.audio.feature.usb_offload_sidetone_volume.enable=false +vendor.audio.feature.vbat.enable=true +vendor.audio.feature.wsa.enable=false +vendor.audio.flac.sw.decoder.24bit=true +vendor.audio.hal.output.suspend.supported=true +vendor.audio.hw.aac.encoder=true +vendor.audio.offload.buffer.size.kb=256 +vendor.audio.offload.gapless.enabled=true +vendor.audio.offload.multiaac.enable=true +vendor.audio.offload.multiple.enabled=false +vendor.audio.offload.passthrough=false +vendor.audio.offload.track.enable=true +vendor.audio.parser.ip.buffer.size=262144 +vendor.audio.safx.pbe.enabled=false +vendor.audio.tunnel.encode=false +vendor.audio.use.sw.alac.decoder=true +vendor.audio.use.sw.ape.decoder=true +vendor.audio.use.sw.mpegh.decoder=true +vendor.audio.volume.headset.gain.depcal=true +vendor.audio.hal.boot.timeout.ms=20000 +vendor.audio_hal.in_period_size=144 +vendor.audio_hal.period_multiplier=3 +vendor.audio_hal.period_size=192 +vendor.voice.path.for.pcm.voip=true + +# Bluetooth +persist.bluetooth.a2dp_offload.cap=sbc-aac-aptx-aptxhd-ldac-lc3 +persist.bluetooth.a2dp_offload.disabled=false +persist.vendor.bt.aac_frm_ctl.enabled=true +persist.vendor.qcom.bluetooth.a2dp_offload_cap=sbc-aptx-aptxtws-aptxhd-aac-ldac-aptxadaptiver2 +persist.vendor.qcom.bluetooth.aac_frm_ctl.enabled=true +persist.vendor.qcom.bluetooth.aac_vbr_ctl.enabled=false +persist.vendor.qcom.bluetooth.enable.splita2dp=true +persist.vendor.qcom.bluetooth.soc=cherokee +ro.bluetooth.a2dp_offload.supported=true +ro.vendor.bluetooth.wipower=false +vendor.qcom.bluetooth.soc=cherokee + +# Camera +camera.disable_zsl_mode=true +vendor.camera.aux.packagelist=org.codeaurora.snapcam,com.android.camera + +# Chipset +ro.soc.manufacturer=QTI +ro.soc.model=SM7125 + +# Crypto +ro.crypto.dm_default_key.options_format.version=2 +ro.crypto.volume.metadata.method=dm-default-key +ro.crypto.volume.filenames_mode=aes-256-cts +ro.crypto.volume.options=::v2 + +# Dalvik +dalvik.vm.dex2oat64.enabled=true + +# Display +ro.surface_flinger.force_hwc_copy_for_virtual_displays=true +ro.surface_flinger.has_wide_color_display=true +ro.surface_flinger.has_HDR_display=true +ro.surface_flinger.max_frame_buffer_acquired_buffers=3 +ro.surface_flinger.max_virtual_display_dimension=4096 +ro.surface_flinger.protected_contents=true +ro.surface_flinger.use_color_management=true +ro.surface_flinger.wcg_composition_dataspace=143261696 +ro.vendor.display.sensortype=2 +ro.vendor.display.svi=1 +vendor.display.dataspace_saturation_matrix=1.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,1.0 +vendor.display.disable_decimation=1 +vendor.display.disable_excl_rect=0 +vendor.display.disable_excl_rect_partial_fb=1 +vendor.display.disable_hw_recovery=1 +vendor.display.disable_hw_recovery_dump=1 +vendor.display.disable_inline_rotator=1 +vendor.display.disable_ui_3d_tonemap=1 +vendor.display.enable_default_color_mode=0 +vendor.display.enable_null_display=0 +vendor.display.enable_optimize_refresh=1 +vendor.display.qdcm.disable_factory_mode=1 +vendor.display.qdcm.mode_combine=1 +vendor.display.svi.config=1 +vendor.display.svi.config_path=/vendor/etc/SVIConfig.xml + +# DRM +drm.service.enabled=true + +# FRP +ro.frp.pst=/dev/block/bootdevice/by-name/frp + +# Graphics +persist.sys.sf.color_mode=9 +persist.sys.sf.color_saturation=1.0 +persist.sys.sf.native_mode=2 +ro.hardware.egl=adreno +ro.hardware.vulkan=adreno +ro.opengles.version=196610 + +# Keystore +ro.hardware.keystore_desede=true + +# Netflix +ro.netflix.bsp_rev=Q6250-19132-1 + +# Media +debug.stagefright.ccodec=1 +debug.stagefright.omx_default_rank=0 +vendor.video.disable.ubwc=1 + +# Perf +ro.vendor.extension_library=libqti-perfd-client.so + +# Radio +persist.radio.multisim.config=dsds +persist.vendor.radio.custom_ecc=1 +persist.vendor.radio.data_con_rprt=1 +persist.vendor.radio.procedure_bytes=SKIP +persist.vendor.radio.rat_on=combine +persist.vendor.radio.snapshot_enabled=1 +persist.vendor.radio.snapshot_timer=5 +ro.telephony.default_network=22,20 +ro.telephony.iwlan_operation_mode=legacy + +# Sensors +persist.vendor.sensors.allow_non_default_discovery=true +persist.vendor.sensors.enable.mag_filter=true +persist.vendor.sensors.support_direct_channel=false + +# USB +vendor.usb.diag.func.name=diag +vendor.usb.use_ffs_mtp=0 + +# Volume steps +ro.config.vc_call_vol_steps=10 + +# WiFi +wifi.aware.interface=wifi-aware0 diff --git a/wifi/WCNSS_qcom_cfg.ini b/wifi/WCNSS_qcom_cfg.ini new file mode 100644 index 0000000..6d78201 --- /dev/null +++ b/wifi/WCNSS_qcom_cfg.ini @@ -0,0 +1,439 @@ +# This file allows user to override the factory +# defaults for the WLAN Driver + +# Enable IMPS or not +gEnableImps=1 + +# Enable BMPS or not +gEnableBmps=1 + +# Phy Mode (auto, b, g, n, etc) +# Valid values are 0-9, with 0 = Auto, 4 = 11n, 9 = 11ac +# 1 = 11abg, 2 = 11b, 3 = 11g, 5 = 11g only, 6 = 11n only +# 7 = 11b only 8 = 11ac only. +gDot11Mode=0 + +# Assigned MAC Addresses - This will be used until NV items are in place +# Each byte of MAC address is represented in Hex format as XX +Intf0MacAddress=000AF58989FF +Intf1MacAddress=000AF58989FE + +# UAPSD service interval for VO,VI, BE, BK traffic +InfraUapsdVoSrvIntv=0 +InfraUapsdViSrvIntv=0 +InfraUapsdBeSrvIntv=0 +InfraUapsdBkSrvIntv=0 + +# Flag to allow STA send AddTspec even when ACM is Off +gAddTSWhenACMIsOff=1 + +#Flag to enable HostARPOffload feature or not +hostArpOffload=1 + +#Flag to enable HostNSOffload feature or not +hostNSOffload=1 + +# 802.11n Protection flag +gEnableApProt=1 + +#Enable OBSS protection +gEnableApOBSSProt=1 + +#Enable/Disable UAPSD for SoftAP +gEnableApUapsd=1 + +# Fragmentation Threshold +# gFragmentationThreshold=2346 + +# RTS threshold +RTSThreshold=2346 + +# Intra-BSS forward +gDisableIntraBssFwd=0 + +# WMM Enable/Disable +WmmIsEnabled=0 + +# 802.11d support +g11dSupportEnabled=0 + +# 802.11h support +g11hSupportEnabled=1 + +# DFS Master Capability +gEnableDFSMasterCap=1 + +# ESE Support and fast transition +EseEnabled=0 + +ImplicitQosIsEnabled=0 + +gNeighborScanTimerPeriod=200 +gNeighborLookupThreshold=76 +gNeighborScanChannelMinTime=20 +gNeighborScanChannelMaxTime=30 + +# Legacy (non-ESE, non-802.11r) Fast Roaming Support +# To enable, set FastRoamEnabled=1 +# To disable, set FastRoamEnabled=0 +FastRoamEnabled=1 + +# Check if the AP to which we are roaming is better than current AP in +# terms of RSSI. Checking is disabled if set to Zero.Otherwise it will +# use this value as to how better the RSSI of the new/roamable AP should +# be for roaming +RoamRssiDiff=5 + +# To enable, set gRoamIntraBand=1 (Roaming within band) +# To disable, set gRoamIntraBand=0 (Roaming across band) +gRoamIntraBand=0 + +#Short Guard Interval Enable/disable +gShortGI20Mhz=1 +gShortGI40Mhz=1 + +#Auto Shutdown wlan : Value in Seconds. 0 means disabled. Max 1 day = 86400 sec +gWlanAutoShutdown = 0 + +#Preferred band (both or 2.4 only or 5 only) +BandCapability=0 + +#Channel Bonding +gChannelBondingMode5GHz=1 + +#Say gGoKeepAlivePeriod(5 seconds) and gGoLinkMonitorPeriod(10 seconds). +#For every 10 seconds DUT send Qos Null frame(i.e., Keep Alive frame if link +#is idle for last 10 seconds.) For both active and power save clients. + +#Power save clients: DUT set TIM bit from 10th second onwards and till client +#honors TIM bit. If doesn't honor for 5 seconds then DUT remove client. + +#Active clients: DUT send Qos Null frame for 10th seconds onwards if it is not +#success still we try on 11th second if not tries on 12th and so on till 15th +#second. Hence before disconnection DUT will send 5 NULL frames. Hence in any +#case DUT will detect client got removed in (10+5) seconds. +#i.e., (gGoKeepAlivePeriod + gGoLinkMonitorPeriod).. + +#gGoLinkMonitorPeriod/ gApLinkMonitorPeriod is period where link is idle and +#it is period where we send NULL frame. +#gApLinkMonitorPeriod = 10 +#gGoLinkMonitorPeriod = 10 + +#gGoKeepAlivePeriod/gApKeepAlivePeriod is time to spend to check whether frame +#are succeed to send or not. Hence total effective detection time is +# (gGoLinkMonitorPeriod + gGoKeepAlivePeriod) / +# (gApLinkMonitorPeriod + gApKeepAlivePeriod) +gGoKeepAlivePeriod = 20 +gApKeepAlivePeriod = 20 + +#If set to 0, will not scan DFS channels +gEnableDFSChnlScan=1 + +# Enable DFS channel roam +# 0: DISABLE, 1: ENABLED_NORMAL, 2: ENABLED_ACTIVE +gAllowDFSChannelRoam=1 + +gVhtChannelWidth=2 + +#Data Inactivity Timeout when in powersave (in ms) +gDataInactivityTimeout=200 + +# Set txchainmask and rxchainmask +# These parameters are used only if gEnable2x2 is 0 +# Valid values are 1,2 +# Set gSetTxChainmask1x1=1 or gSetRxChainmask1x1=1 to select chain0. +# Set gSetTxChainmask1x1=2 or gSetRxChainmask1x1=2 to select chain1. +gSetTxChainmask1x1=1 +gSetRxChainmask1x1=1 + +# Scan Timing Parameters +# gPassiveMaxChannelTime=110 +gActiveMaxChannelTime=40 + +#If set to 0, MCC is not allowed. +gEnableMCCMode=1 + +# MCC to SCC Switch mode: +# 0-Disable +# 1-Enable +# 2-Force SCC if same band, with SAP restart +# 3-Force SCC if same band, without SAP restart by sending (E)CSA +# 4-Force SCC if same band (or) use SAP mandatory channel for DBS, +# without SAP restart by sending (E)CSA +gWlanMccToSccSwitchMode = 3 + +# 1=enable STBC; 0=disable STBC +gEnableRXSTBC=1 + +# 1=enable tx STBC; 0=disable +gEnableTXSTBC=1 + +# 1=enable rx LDPC; 0=disable +gEnableRXLDPC=1 + +#Enable/Disable Tx beamforming +gTxBFEnable=1 + +#Enable/Disable Tx beamformee in SAP mode +gEnableTxBFeeSAP=1 + +# Enable Tx beamforming in VHT20MHz +# Valid values are 0,1. If commented out, the default value is 0. +# 0=disable, 1=enable +gEnableTxBFin20MHz=1 + +#Enable/Disable SU Tx beamformer support. +gEnableTxSUBeamformer=1 + +gEnableFastRoamInConcurrency=1 + +# 802.11K support +gRrmEnable=1 + +#Enable firmware uart print +gEnablefwprint=0 + +# Firmware log mode +# Valid values are 0,1,2 +# 0=Disable, 1=WMI, 2=DIAG +gEnablefwlog=0 + +# Maximum Receive AMPDU size (VHT only. Valid values: +# 0->8k 1->16k 2->32k 3->64k 4->128k) +gVhtAmpduLenExponent=7 + +# Maximum MPDU length (VHT only. Valid values: +# 0->3895 octets, 1->7991 octets, 2->11454 octets) +gVhtMpduLen=2 + +# WOW Enable/Disable. +# 0 - Disable both magic pattern match and pattern byte match. +# 1 - Enable magic pattern match on all interfaces. +# 2 - Enable pattern byte match on all interfaces. +# 3 - Enable both magic pattern and pattern byte match on all interfaces. +# Default value of gEnableWoW is 3. +# gEnableWoW=0 + +# Enable or Disable MCC Adaptive Scheduler at the FW +# 1=Enable (default), 0=Disable +gEnableMCCAdaptiveScheduler=1 + +#Enable or Disable p2p device address administered +isP2pDeviceAddrAdministrated=0 + +# Remove Overlap channel restriction +gEnableOverLapCh=0 + +#Enable VHT on 2.4Ghz +gEnableVhtFor24GHzBand=1 +# Configure channel Bonding in 2.4GHz +gChannelBondingMode24GHz=1 + +#Maximum number of offload peers supported +# gMaxOffloadPeers=2 + +# controlling the following offload patterns +# through ini parameter. Default value is 1 +# to disable set it to zero. ssdp = 0 +# Setup multicast pattern for mDNS 224.0.0.251, +# SSDP 239.255.255.250 and LLMNR 224.0.0.252 +ssdp=0 + +#Enable Memory Deep Sleep +gEnableMemDeepSleep=1 + +# RA filtering rate limit param, the current value would not +# help if the lifetime in RA is less than 3*60=3min. Then +# we need to change it, though it is uncommon. +# gRAFilterEnable=0 +gRArateLimitInterval=600 + +# Maximum number of concurrent connections +gMaxConcurrentActiveSessions=3 + +# Disable/Enable GreenAP +# 0 to disable, 1 to enable, default: 1 +gEnableGreenAp=0 + +# Radar PRI multiplier +gDFSradarMappingPriMultiplier=4 + +gPNOScanSupport=1 + +#Enable/Disable LPASS support +# 0 to disable, 1 to enable +gEnableLpassSupport=1 + +# Whether userspace country code setting shld have priority +gCountryCodePriority=1 + +# Enable or Disable Multi-user MIMO +# 1=Enable (default), 0=Disable +gEnableMuBformee=1 + +# Inactivity time (in ms) to end TX Service Period while in IBSS power save mode +gIbssTxSpEndInactivityTime=10 + +# Enable TDLS External Control. That is, user space application has to +# first configure a peer MAC in wlan driver towards which TDLS is desired. +# Device will establish TDLS only towards those configured peers whenever +# TDLS criteria (throughput and RSSI threshold) is met and teardown TDLS +# when teardown criteria (idle packet count and RSSI) is met. However, +# device will accept TDLS connection if it is initiated from any other peer, +# even if that peer is not configured. +# 0 - disable +# 1 - enable +# For TDLS External Control, Implicit Trigger must also be enabled. +gTDLSExternalControl=1 + +# Enable support for TDLS off-channel operation +# 0 - disable +# 1 - enable +# TDLS off-channel operation will be invoked when there is only one +# TDLS connection. +gEnableTDLSOffChannel=0 + +# Enable or Disable Random MAC (Spoofing) +# 1=Enable (default), 0=Disable +gEnableMacAddrSpoof=1 + +################ Datapath feature set Begin ################ +# Bus bandwidth threshold values in terms of number of packets +gBusBandwidthHighThreshold=2000 +gBusBandwidthMediumThreshold=500 +gBusBandwidthLowThreshold=150 + +# Bus bandwidth compute timeout value in ms +gBusBandwidthComputeInterval=100 + +# VHT Tx/Rx MCS values +# Valid values are 0,1,2. If commented out, the default value is 0. +# 0=MCS0-7, 1=MCS0-8, 2=MCS0-9 +gVhtRxMCS=2 +gVhtTxMCS=2 + +# VHT Tx/Rx MCS values for 2x2 +# Valid values are 0,1,2. If commented out, the default value is 0. +# 0=MCS0-7, 1=MCS0-8, 2=MCS0-9 +gEnable2x2=1 +gVhtRxMCS2x2=2 +gVhtTxMCS2x2=2 + +#IPA config is a bit mask and following are the configurations. +#bit0 IPA Enable +#bit1 IPA PRE Filter enable +#bit2 IPv6 enable +#bit3 IPA Resource Manager (RM) enable +#bit4 IPA Clock scaling enable +#bit5 IPA uC ENABLE +#bit6 IPA uC STA ENABLE +#bit8 IPA Real Time Debugging +gIPAConfig=0x7d +gIPADescSize=800 + +# Enable/Disable RX full reorder offload +gReorderOffloadSupported=1 + +# Enable CE classification +# 1 - enable(default) 0 - disable +gCEClassifyEnable=1 + +# Enable Rx handling options +# Rx_thread=1 RPS=2(default for ROME) NAPI=4(default for ihelium) +rx_mode=5 + +# Enable(Tx) fastpath for data traffic. +# 1 - enable(default) 0 - disable +gEnableFastPath=1 + +# This flag enables IP, TCP and UDP checksum offload +# 1 - enable(default) 0 - disable +gEnableIpTcpUdpChecksumOffload=1 + +# Enable TCP Segmentation Offload +# 1 - enable 0 - disable +TSOEnable=1 + +# Enable Generic Receive Offload +# 1 - enable(default) 0 - disable +GROEnable=1 + +# Enable HT MPDU Density +# 4 for 2 micro sec +ght_mpdu_density=4 + +# Enable flow steering to enable multiple CEs for Rx flows. +# Multiple Rx CEs<==>Multiple Rx IRQs<==>probably different CPUs. +# Parallel Rx paths. +# 1 - enable 0 - disable(default) +gEnableFlowSteering=1 + +# Time in microseconds after which a NAPI poll must yield +ce_service_max_yield_time=500 + +#Maximum number of HTT messages to be processed per NAPI poll +ce_service_max_rx_ind_flush=1 + +# Maximum number of MSDUs the firmware will pack in one HTT_T2H_MSG_TYPE_RX_IN_ORD_PADDR_IND +maxMSDUsPerRxInd=8 + +# Enable NUD tracking feature +# 1 - enable 0 - disable(default) +gEnableNUDTracking=1 + +# Enable PEER UNMAP CONF SUPPORT +# 1 - enable 0 - disable(default) +gEnablePeerUnmapConfSupport=1 + +################ Datapath feature set End ################ + +################ NAN feature set start ################### + +# Enable NAN discovery (NAN 1.0) +# 1 - enable 0 - disable(default) +gEnableNanSupport=1 +# Enable NAN Datapath +genable_nan_datapath=1 + +################ NAN feature set end ##################### + +adaptive_dwell_mode_enabled=1 + +hostscan_adaptive_dwell_mode=1 + +adapt_dwell_lpf_weight=80 + +adapt_dwell_wifi_act_threshold=10 + +MAWCEnabled=0 + +# Enable/Disable rtt sta mac randomization +enable_rtt_mac_randomization=1 + +#Enable/Disable SNR monitoring +gEnableSNRMonitoring=1 + +# Skip DFS Channel in case of P2P Search +# 0 - disable (Scan DFS Channel in P2P Search) +# 1 - enable (Skip DFS Channel) +gSkipDfsChannelInP2pSearch=0 + +################ Xiaomi changes ##################### + +# Sets RSSI preference for 5GHz over 2.4GHz AP +gSelect5GHzMargin=5 +# Sets dense roam RSSI Threshold diff +groam_dense_rssi_thresh_offset=5 +# Self Recovery +gEnableSelfRecovery=1 +# Enable/Disable FT open feature +enable_ftopen=0 +# Enable/disable ETSI SRD channels in master mode PCL and ACS functionality +etsi13_srd_chan_in_master_mode=1 + +##################################################### + +END + +# Note: Configuration parser would not read anything past the END marker + diff --git a/wifi/p2p_supplicant_overlay.conf b/wifi/p2p_supplicant_overlay.conf new file mode 100644 index 0000000..4de5bc6 --- /dev/null +++ b/wifi/p2p_supplicant_overlay.conf @@ -0,0 +1,5 @@ +disable_scan_offload=1 +p2p_no_group_iface=1 +persistent_reconnect=1 +bss_max_count=400 +p2p_go_intent=14 diff --git a/wifi/wpa_supplicant_overlay.conf b/wifi/wpa_supplicant_overlay.conf new file mode 100644 index 0000000..2b924ac --- /dev/null +++ b/wifi/wpa_supplicant_overlay.conf @@ -0,0 +1,8 @@ +disable_scan_offload=1 +p2p_disabled=1 +tdls_external_control=1 +wowlan_triggers=magic_pkt +bss_max_count=400 +interworking=1 +config_methods=virtual_display virtual_push_button keypad +driver_param="use_p2p_group_interface=1 no_rrm=1"