init commit

This commit is contained in:
1ndev 2025-04-04 15:29:30 -07:00
commit 10b88b5bd8
428 changed files with 8713 additions and 0 deletions

12
Android.bp Normal file
View File

@ -0,0 +1,12 @@
//
// Copyright (C) 2023 The Android Open Source Project
// Copyright (C) 2023 SebaUbuntu's TWRP device tree generator
//
// SPDX-License-Identifier: Apache-2.0
//
soong_namespace {
imports: [
"hardware/qcom-caf/bootctrl",
],
}

12
Android.mk Normal file
View File

@ -0,0 +1,12 @@
#
# Copyright (C) 2023 The Android Open Source Project
# Copyright (C) 2023 SebaUbuntu's TWRP device tree generator
#
# SPDX-License-Identifier: Apache-2.0
#
LOCAL_PATH := $(call my-dir)
ifeq ($(TARGET_DEVICE),boston)
include $(call all-subdir-makefiles,$(LOCAL_PATH))
endif

14
AndroidProducts.mk Normal file
View File

@ -0,0 +1,14 @@
#
# Copyright (C) 2023 The Android Open Source Project
# Copyright (C) 2023 SebaUbuntu's TWRP device tree generator
#
# SPDX-License-Identifier: Apache-2.0
#
PRODUCT_MAKEFILES := \
$(LOCAL_DIR)/twrp_boston.mk
COMMON_LUNCH_CHOICES := \
twrp_boston-user \
twrp_boston-userdebug \
twrp_boston-eng

194
BoardConfig.mk Normal file
View File

@ -0,0 +1,194 @@
#
# Copyright (C) 2024 The Android Open Source Project
# Copyright (C) 2024 SebaUbuntu's TWRP device tree generator
#
# SPDX-License-Identifier: Apache-2.0
#
DEVICE_PATH := device/motorola/boston
DEVICE_PREBUILT_PATH := device/motorola/boston/prebuilt
# A-Team Maintainer Info
TW_MAINTAINER := PizzaG
TW_DEVICE_VERSION := 0.1
RECOVERY_VARIANT := TWRP_12.1
# A/B
AB_OTA_UPDATER := true
BOARD_BUILD_SYSTEM_ROOT_IMAGE := false
AB_OTA_PARTITIONS += \
boot \
dtbo \
product \
system \
system_ext \
recovery \
vbmeta \
vbmeta_system \
vendor \
vendor_dlkm \
vendor_boot
# Architecture
TARGET_ARCH := arm64
TARGET_ARCH_VARIANT := armv8-a
TARGET_CPU_ABI := arm64-v8a
TARGET_CPU_ABI2 :=
TARGET_CPU_VARIANT := generic
TARGET_CPU_VARIANT_RUNTIME := kryo300
TARGET_2ND_ARCH := arm
TARGET_2ND_ARCH_VARIANT := armv7-a-neon
TARGET_2ND_CPU_ABI := armeabi-v7a
TARGET_2ND_CPU_ABI2 := armeabi
TARGET_2ND_CPU_VARIANT := generic
TARGET_2ND_CPU_VARIANT_RUNTIME := cortex-a75
TARGET_SUPPORTS_64_BIT_APPS := true
# Bootloader
TARGET_BOOTLOADER_BOARD_NAME := parrot
TARGET_NO_BOOTLOADER := false
TARGET_USES_UEFI := true
TARGET_USES_REMOTEPROC := true
TARGET_NO_RECOVERY := false
# Build Flags
LC_ALL="C"
ALLOW_MISSING_DEPENDENCIES := true
BUILD_BROKEN_DUP_RULES := true
BUILD_BROKEN_ELF_PREBUILT_PRODUCT_COPY_FILES := true
BUILD_BROKEN_MISSING_REQUIRED_MODULES := true
RELAX_USES_LIBRARY_CHECK := true
TARGET_DEVICE_ALT += boston_g boston XT2419
# Display
TARGET_SCREEN_DENSITY := 403
DEVICE_RESOLUTION := 1080x2400
TARGET_SCREEN_HEIGHT := 2400
TARGET_SCREEN_WIDTH := 1080
# Kernel
BOARD_BOOT_HEADER_VERSION := 4
BOARD_KERNEL_BASE := 0x00000000
BOARD_KERNEL_CMDLINE += printk.devkmsg=on firmware_class.path=/data/vendor/param/firmware
BOARD_BOOTCONFIG += \
androidboot.hardware=qcom \
androidboot.memcg=1 \
androidboot.usbcontroller=a600000.dwc3
BOARD_KERNEL_IMAGE_NAME := Image
BOARD_KERNEL_PAGESIZE := 4096
BOARD_KERNEL_SEPARATED_DTBO := true
#BOARD_MKBOOTIMG_ARGS += --dtb $(DEVICE_PREBUILT_PATH)/dtb.img
BOARD_MKBOOTIMG_ARGS += --header_version $(BOARD_BOOT_HEADER_VERSION)
#BOARD_INCLUDE_DTB_IN_BOOTIMG := true
TARGET_KERNEL_ARCH := arm64
TARGET_KERNEL_HEADER_ARCH := arm64
BOARD_RAMDISK_USE_LZ4 := true
TARGET_PREBUILT_KERNEL := $(DEVICE_PREBUILT_PATH)/kernel
#TARGET_PREBUILT_DTB := $(DEVICE_PREBUILT_PATH)/dtb.img
# Copy DTB
#PRODUCT_COPY_FILES += \
# $(TARGET_PREBUILT_DTB):dtb.img
TARGET_FORCE_PREBUILT_KERNEL := true
BOARD_USES_FULL_RECOVERY_IMAGE := true
BOARD_EXCLUDE_KERNEL_FROM_RECOVERY_IMAGE := true
BOARD_USES_GENERIC_KERNEL_IMAGE := true
# Hack: prevent anti rollback
PLATFORM_SECURITY_PATCH := 2099-12-31
VENDOR_SECURITY_PATCH := $(PLATFORM_SECURITY_PATCH)
BOOT_SECURITY_PATCH := $(PLATFORM_SECURITY_PATCH)
PLATFORM_VERSION := 99.87.36
PLATFORM_VERSION_LAST_STABLE := $(PLATFORM_VERSION)
# Partitions
BOARD_FLASH_BLOCK_SIZE := 262144 # (BOARD_KERNEL_PAGESIZE * 64)
BOARD_SUPER_PARTITION_GROUPS := qti_dynamic_partitions
BOARD_QTI_DYNAMIC_PARTITIONS_PARTITION_LIST := system system_ext product vendor vendor_dlkm
BOARD_QTI_DYNAMIC_PARTITIONS_SIZE := 9122611200
BOARD_SUPER_PARTITION_SIZE := 9126805504
BOARD_BOOTIMAGE_PARTITION_SIZE := 134217728
BOARD_KERNEL_GKI_BOOTIMAGE_PARTITION_SIZE := $(BOARD_BOOTIMAGE_PARTITION_SIZE)
BOARD_VENDOR_BOOTIMAGE_PARTITION_SIZE := 100663296
BOARD_RECOVERYIMAGE_PARTITION_SIZE := 134217728
BOARD_SYSTEMIMAGE_PARTITION_TYPE := erofs
BOARD_USERDATAIMAGE_FILE_SYSTEM_TYPE := f2fs
BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE := erofs
BOARD_USES_METADATA_PARTITION := true
TARGET_COPY_OUT_VENDOR := vendor
TARGET_COPY_OUT_VENDOR_DLKM := vendor_dlkm
BOARD_VENDOR_DLKMIMAGE_FILE_SYSTEM_TYPE := erofs
BOARD_USES_VENDOR_DLKMIMAGE := true
TARGET_USERIMAGES_USE_EXT3 := true
TARGET_USERIMAGES_USE_EXT4 := true
TARGET_USERIMAGES_USE_F2FS := true
TARGET_USERIMAGES_USE_EROFS := true
TARGET_USERIMAGES_USE_E2FSCK := true
TARGET_USERIMAGES_USE_VFAT := true
TARGET_USES_MKE2FS := true
BOARD_HAS_LARGE_FILESYSTEM := true
BOARD_HAS_NO_SELECT_BUTTON := true
# Platform
TARGET_BOARD_PLATFORM := parrot
QCOM_BOARD_PLATFORMS += parrot
# Properties
TARGET_SYSTEM_PROP += $(DEVICE_PATH)/system.prop
# Recovery
TARGET_RECOVERY_QCOM_RTC_FIX := true
TARGET_RECOVERY_PIXEL_FORMAT := RGBX_8888
TARGET_RECOVERY_DEVICE_DIRS += $(DEVICE_PATH)
TARGET_RECOVERY_FSTAB := $(DEVICE_PATH)/recovery/root/system/etc/recovery.fstab
TARGET_USERIMAGES_USE_EXT4 := true
TARGET_USERIMAGES_USE_F2FS := true
RECOVERY_SDCARD_ON_DATA := true
# TWRP Crypto
TW_INCLUDE_CRYPTO := true
TW_INCLUDE_CRYPTO_FBE := true
TW_INCLUDE_FBE_METADATA_DECRYPT := true
BOARD_USES_QCOM_FBE_DECRYPTION := true
TW_USE_FSCRYPT_POLICY := 2
# TWRP Configuration
TW_THEME := portrait_hdpi
TW_EXTRA_LANGUAGES := true
TW_INPUT_BLACKLIST := "hbtp_vm"
TW_INCLUDE_REPACKTOOLS := true
TW_INCLUDE_RESETPROP := true
TW_INCLUDE_LIBRESETPROP := true
TW_INCLUDE_NTFS_3G := true
TW_BACKUP_EXCLUSIONS := /data/fonts
TW_NO_SCREEN_BLANK := true
TW_MAX_BRIGHTNESS := 3515
TW_DEFAULT_BRIGHTNESS := 1024
TW_FRAMERATE := 60
TW_HAS_EDL_MODE := true
TW_CUSTOM_CPU_TEMP_PATH := /sys/class/thermal/thermal_zone39/temp
TW_EXCLUDE_DEFAULT_USB_INIT := true
TARGET_USE_CUSTOM_LUN_FILE_PATH := /config/usb_gadget/g1/functions/mass_storage.0/lun.%d/file
TW_SUPPORT_INPUT_AIDL_HAPTICS := true
TW_SUPPORT_INPUT_AIDL_HAPTICS_FIX_OFF := true
TW_USE_SERIALNO_PROPERTY_FOR_DEVICE_ID := true
TW_NO_USB_STORAGE := false
TW_INCLUDE_FASTBOOTD := true
TW_INCLUDE_PYTHON := true
# 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 := 1
BOARD_AVB_RECOVERY_ROLLBACK_INDEX_LOCATION := 1
BOARD_AVB_VBMETA_SYSTEM := product system system_ext
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 := 2

12
README.md Normal file
View File

@ -0,0 +1,12 @@
Motorola Moto G Stylus 5G 2024
# Building
```bash
source build/envsetup.sh
lunch twrp_boston-eng
mka recoveryimage -j$(nproc --all)
```
**Copyright (C) 2024 A-Team Digital Solutions**<br />
**Tree template from TeamWin, some file from VanFirmwareDumps**

28
bootctrl/Android.bp Executable file
View File

@ -0,0 +1,28 @@
//
// Copyright (C) 2018 The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
cc_library {
name: "bootctrl.moto_sm8475",
defaults: ["bootctrl_hal_defaults"],
static_libs: ["libgptutils.moto_sm8475"],
}
cc_library_shared {
name: "android.hardware.boot@1.2-impl-qti",
stem: "android.hardware.boot@1.0-impl-1.2-qti",
defaults: ["android.hardware.boot@1.2-impl-qti_defaults"],
static_libs: ["libgptutils.moto_sm8475"],
}

130
device.mk Normal file
View File

@ -0,0 +1,130 @@
#
# Copyright (C) 2023 The Android Open Source Project
# Copyright (C) 2023 SebaUbuntu's TWRP device tree generator
#
# SPDX-License-Identifier: Apache-2.0
#
# Soong namespaces
PRODUCT_SOONG_NAMESPACES += \
$(LOCAL_PATH)
# API
BOARD_SHIPPING_API_LEVEL := 31
BOARD_API_LEVEL := 31
PRODUCT_SHIPPING_API_LEVEL := 31
SHIPPING_API_LEVEL := 31
# A/B
AB_OTA_POSTINSTALL_CONFIG += \
RUN_POSTINSTALL_system=true \
POSTINSTALL_PATH_system=system/bin/otapreopt_script \
FILESYSTEM_TYPE_system=erofs \
POSTINSTALL_OPTIONAL_system=true
AB_OTA_POSTINSTALL_CONFIG += \
RUN_POSTINSTALL_vendor=true \
POSTINSTALL_PATH_vendor=bin/checkpoint_gc \
FILESYSTEM_TYPE_vendor=erofs \
POSTINSTALL_OPTIONAL_vendor=true
# Boot control HAL
PRODUCT_PACKAGES += \
android.hardware.boot@1.2-impl-qti \
android.hardware.boot@1.2-impl-qti.recovery \
android.hardware.boot@1.2-service
PRODUCT_PACKAGES_DEBUG += \
bootctl
PRODUCT_PACKAGES += \
otapreopt_script \
checkpoint_gc \
update_engine \
update_engine_client \
update_verifier \
update_engine_sideload
# Crypto
PRODUCT_PACKAGES += \
qcom_decrypt \
qcom_decrypt_fbe
# Dynamic partitions
PRODUCT_USE_DYNAMIC_PARTITIONS := true
# F2FS utilities
PRODUCT_PACKAGES += \
sg_write_buffer \
f2fs_io \
check_f2fs
# FastbootD
PRODUCT_PACKAGES += \
fastbootd \
android.hardware.fastboot@1.1-impl-mock
# HACK: Set vendor patch level
PRODUCT_PROPERTY_OVERRIDES += \
ro.bootimage.build.date.utc=0 \
ro.build.date.utc=0
# OEM otacert
PRODUCT_EXTRA_RECOVERY_KEYS += \
$(LOCAL_PATH)/security/ota
# Take a few libraries from sources
TARGET_RECOVERY_DEVICE_MODULES += \
android.hardware.vibrator-V2-cpp \
android.hidl.allocator@1.0 \
android.hidl.memory@1.0 \
android.hidl.memory.token@1.0 \
libdmabufheap \
libhidlmemory \
libion \
libnetutils \
libxml2 \
vendor.display.config@1.0 \
vendor.display.config@1.1 \
vendor.display.config@1.2 \
vendor.display.config@1.3 \
vendor.display.config@1.4 \
vendor.display.config@1.5 \
vendor.display.config@1.6 \
vendor.display.config@1.7 \
vendor.display.config@1.8 \
vendor.display.config@1.9 \
vendor.display.config@1.10 \
vendor.display.config@1.11 \
vendor.display.config@2.0 \
libdisplayconfig.qti
RECOVERY_LIBRARY_SOURCE_FILES += \
$(TARGET_OUT_SHARED_LIBRARIES)/android.hardware.vibrator-V2-cpp.so \
$(TARGET_OUT_SHARED_LIBRARIES)/android.hidl.allocator@1.0.so \
$(TARGET_OUT_SHARED_LIBRARIES)/android.hidl.memory@1.0.so \
$(TARGET_OUT_SHARED_LIBRARIES)/android.hidl.memory.token@1.0.so \
$(TARGET_OUT_SHARED_LIBRARIES)/libdmabufheap.so \
$(TARGET_OUT_SHARED_LIBRARIES)/libhidlmemory.so \
$(TARGET_OUT_SHARED_LIBRARIES)/libion.so \
$(TARGET_OUT_SHARED_LIBRARIES)/libnetutils.so \
$(TARGET_OUT_SHARED_LIBRARIES)/libxml2.so \
$(TARGET_OUT_SYSTEM_EXT_SHARED_LIBRARIES)/vendor.display.config@1.0.so \
$(TARGET_OUT_SYSTEM_EXT_SHARED_LIBRARIES)/vendor.display.config@1.1.so \
$(TARGET_OUT_SYSTEM_EXT_SHARED_LIBRARIES)/vendor.display.config@1.2.so \
$(TARGET_OUT_SYSTEM_EXT_SHARED_LIBRARIES)/vendor.display.config@1.3.so \
$(TARGET_OUT_SYSTEM_EXT_SHARED_LIBRARIES)/vendor.display.config@1.4.so \
$(TARGET_OUT_SYSTEM_EXT_SHARED_LIBRARIES)/vendor.display.config@1.5.so \
$(TARGET_OUT_SYSTEM_EXT_SHARED_LIBRARIES)/vendor.display.config@1.6.so \
$(TARGET_OUT_SYSTEM_EXT_SHARED_LIBRARIES)/vendor.display.config@1.7.so \
$(TARGET_OUT_SYSTEM_EXT_SHARED_LIBRARIES)/vendor.display.config@1.8.so \
$(TARGET_OUT_SYSTEM_EXT_SHARED_LIBRARIES)/vendor.display.config@1.9.so \
$(TARGET_OUT_SYSTEM_EXT_SHARED_LIBRARIES)/vendor.display.config@1.1.so \
$(TARGET_OUT_SYSTEM_EXT_SHARED_LIBRARIES)/vendor.display.config@1.11.so \
$(TARGET_OUT_SYSTEM_EXT_SHARED_LIBRARIES)/vendor.display.config@2.0.so \
$(TARGET_OUT_SYSTEM_EXT_SHARED_LIBRARIES)/libdisplayconfig.qti.so
# Namespace definition for librecovery_updater
SOONG_CONFIG_NAMESPACES += ufsbsg
SOONG_CONFIG_ufsbsg += ufsframework
SOONG_CONFIG_ufsbsg_ufsframework := bsg

42
gpt-utils/Android.bp Executable file
View File

@ -0,0 +1,42 @@
//
// Copyright (C) 2018 The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
cc_library {
name: "libgptutils.moto_sm8475",
vendor: true,
recovery_available: true,
shared_libs: [
"libcutils",
"liblog",
"libz",
],
cflags: [
"-Wall",
"-Werror",
"-Wno-unused-parameter",
"-D_GENERIC_KERNEL_HEADERS",
"-D_BSG_FRAMEWORK_KERNEL_HEADERS",
],
srcs: [
"gpt-utils.cpp",
"recovery-ufs-bsg.cpp",
],
owner: "qti",
header_libs: [
"device_kernel_headers",
],
export_include_dirs: ["."],
}

1527
gpt-utils/gpt-utils.cpp Executable file

File diff suppressed because it is too large Load Diff

195
gpt-utils/gpt-utils.h Executable file
View File

@ -0,0 +1,195 @@
/*
* Copyright (c) 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 "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.
*/
#ifndef __GPT_UTILS_H__
#define __GPT_UTILS_H__
#include <vector>
#include <string>
#include <map>
#ifdef __cplusplus
extern "C" {
#endif
#include <unistd.h>
#include <stdlib.h>
/******************************************************************************
* GPT HEADER DEFINES
******************************************************************************/
#define GPT_SIGNATURE "EFI PART"
#define HEADER_SIZE_OFFSET 12
#define HEADER_CRC_OFFSET 16
#define PRIMARY_HEADER_OFFSET 24
#define BACKUP_HEADER_OFFSET 32
#define FIRST_USABLE_LBA_OFFSET 40
#define LAST_USABLE_LBA_OFFSET 48
#define PENTRIES_OFFSET 72
#define PARTITION_COUNT_OFFSET 80
#define PENTRY_SIZE_OFFSET 84
#define PARTITION_CRC_OFFSET 88
#define TYPE_GUID_OFFSET 0
#define TYPE_GUID_SIZE 16
#define PTN_ENTRY_SIZE 128
#define UNIQUE_GUID_OFFSET 16
#define FIRST_LBA_OFFSET 32
#define LAST_LBA_OFFSET 40
#define ATTRIBUTE_FLAG_OFFSET 48
#define PARTITION_NAME_OFFSET 56
#define MAX_GPT_NAME_SIZE 72
/******************************************************************************
* AB RELATED DEFINES
******************************************************************************/
//Bit 48 onwords in the attribute field are the ones where we are allowed to
//store our AB attributes.
#define AB_FLAG_OFFSET (ATTRIBUTE_FLAG_OFFSET + 6)
#define GPT_DISK_INIT_MAGIC 0xABCD
#define AB_PARTITION_ATTR_SLOT_ACTIVE (0x1<<2)
#define AB_PARTITION_ATTR_BOOT_SUCCESSFUL (0x1<<6)
#define AB_PARTITION_ATTR_UNBOOTABLE (0x1<<7)
#define AB_SLOT_ACTIVE_VAL 0x3F
#define AB_SLOT_INACTIVE_VAL 0x0
#define AB_SLOT_ACTIVE 1
#define AB_SLOT_INACTIVE 0
#define AB_SLOT_A_SUFFIX "_a"
#define AB_SLOT_B_SUFFIX "_b"
#define PTN_XBL "xbl"
#define PTN_XBL_CFG "xbl_config"
#define PTN_MULTIIMGOEM "multiimgoem"
#define PTN_MULTIIMGQTI "multiimgqti"
#define PTN_SWAP_LIST PTN_XBL, PTN_XBL_CFG, PTN_MULTIIMGOEM, PTN_MULTIIMGQTI, "sbl1", "rpm", "tz", "aboot", "abl", "hyp", "lksecapp", "keymaster", "cmnlib", "cmnlib32", "cmnlib64", "pmic", "apdp", "devcfg", "hosd", "keystore", "msadp", "mdtp", "mdtpsecapp", "dsp", "aop", "qupfw", "vbmeta", "dtbo", "imagefv", "ImageFv", "uefisecapp", "vm-bootsys", "shrm", "cpucp", "featenabler", "vbmeta_system"
#define AB_PTN_LIST PTN_SWAP_LIST, "boot", "vendor_boot", "vendor_dlkm", "system", "system_ext", "product", "vendor", "modem", "bluetooth"
#define BOOT_DEV_DIR "/dev/block/bootdevice/by-name"
/******************************************************************************
* HELPER MACROS
******************************************************************************/
#define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0]))
/******************************************************************************
* TYPES
******************************************************************************/
enum boot_update_stage {
UPDATE_MAIN = 1,
UPDATE_BACKUP,
UPDATE_FINALIZE
};
enum gpt_instance {
PRIMARY_GPT = 0,
SECONDARY_GPT
};
enum boot_chain {
NORMAL_BOOT = 0,
BACKUP_BOOT
};
struct gpt_disk {
//GPT primary header
uint8_t *hdr;
//primary header crc
uint32_t hdr_crc;
//GPT backup header
uint8_t *hdr_bak;
//backup header crc
uint32_t hdr_bak_crc;
//Partition entries array
uint8_t *pentry_arr;
//Partition entries array for backup table
uint8_t *pentry_arr_bak;
//Size of the pentry array
uint32_t pentry_arr_size;
//Size of each element in the pentry array
uint32_t pentry_size;
//CRC of the partition entry array
uint32_t pentry_arr_crc;
//CRC of the backup partition entry array
uint32_t pentry_arr_bak_crc;
//Path to block dev representing the disk
char devpath[PATH_MAX];
//Block size of disk
uint32_t block_size;
uint32_t is_initialized;
};
/******************************************************************************
* FUNCTION PROTOTYPES
******************************************************************************/
int prepare_boot_update(enum boot_update_stage stage);
//GPT disk methods
struct gpt_disk* gpt_disk_alloc();
//Free previously allocated gpt_disk struct
void gpt_disk_free(struct gpt_disk *disk);
//Get the details of the disk holding the partition whose name
//is passed in via dev
int gpt_disk_get_disk_info(const char *dev, struct gpt_disk *disk);
//Get pointer to partition entry from a allocated gpt_disk structure
uint8_t* gpt_disk_get_pentry(struct gpt_disk *disk,
const char *partname,
enum gpt_instance instance);
//Update the crc fields of the modified disk structure
int gpt_disk_update_crc(struct gpt_disk *disk);
//Write the contents of struct gpt_disk back to the actual disk
int gpt_disk_commit(struct gpt_disk *disk);
//Return if the current device is UFS based or not
int gpt_utils_is_ufs_device();
//Swtich betwieen using either the primary or the backup
//boot LUN for boot. This is required since UFS boot partitions
//cannot have a backup GPT which is what we use for failsafe
//updates of the other 'critical' partitions. This function will
//not be invoked for emmc targets and on UFS targets is only required
//to be invoked for XBL.
//
//The algorithm to do this is as follows:
//- Find the real block device(eg: /dev/block/sdb) that corresponds
// to the /dev/block/bootdevice/by-name/xbl(bak) symlink
//
//- Once we have the block device 'node' name(sdb in the above example)
// use this node to to locate the scsi generic device that represents
// it by checking the file /sys/block/sdb/device/scsi_generic/sgY
//
//- Once we locate sgY we call the query ioctl on /dev/sgy to switch
//the boot lun to either LUNA or LUNB
int gpt_utils_set_xbl_boot_partition(enum boot_chain chain);
//Given a vector of partition names as a input and a reference to a map,
//populate the map to indicate which physical disk each of the partitions
//sits on. The key in the map is the path to the block device where the
//partiton lies and the value is a vector of strings indicating which of
//the passed in partiton names sits on that device.
int gpt_utils_get_partition_map(std::vector<std::string>& partition_list,
std::map<std::string,std::vector<std::string>>& partition_map);
#ifdef __cplusplus
}
#endif
#endif /* __GPT_UTILS_H__ */

255
gpt-utils/recovery-ufs-bsg.cpp Executable file
View File

@ -0,0 +1,255 @@
/*
* Copyright (c) 2020 The Linux Foundation. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above
* copyright notice, this list of conditions and the following
* disclaimer in the documentation and/or other materials provided
* with the distribution.
* * Neither the name of The Linux Foundation nor the names of its
* contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
* BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
* BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
* 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.
*/
#define LOG_TAG "recovery_ufs"
#include "recovery-ufs-bsg.h"
#ifndef _BSG_FRAMEWORK_KERNEL_HEADERS
#ifndef _GENERIC_KERNEL_HEADERS
#include <scsi/ufs/ioctl.h>
#include <scsi/ufs/ufs.h>
#endif
#endif
//Size of the buffer that needs to be passed to the UFS ioctl
#define UFS_ATTR_DATA_SIZE 32
#ifdef _BSG_FRAMEWORK_KERNEL_HEADERS
static int get_ufs_bsg_dev(void)
{
DIR *dir;
struct dirent *ent;
int ret = -ENODEV;
if ((dir = opendir ("/dev")) != NULL) {
/* read all the files and directories within directory */
while ((ent = readdir(dir)) != NULL) {
if (!strcmp(ent->d_name, "ufs-bsg") ||
!strcmp(ent->d_name, "ufs-bsg0")) {
snprintf(ufs_bsg_dev, FNAME_SZ, "/dev/%s", ent->d_name);
ret = 0;
break;
}
}
if (ret)
ALOGE("could not find the ufs-bsg dev\n");
closedir (dir);
} else {
/* could not open directory */
ALOGE("could not open /dev (error no: %d)\n", errno);
ret = -EINVAL;
}
return ret;
}
int ufs_bsg_dev_open(void)
{
int ret;
if (!fd_ufs_bsg) {
fd_ufs_bsg = open(ufs_bsg_dev, O_RDWR);
ret = errno;
if (fd_ufs_bsg < 0) {
ALOGE("Unable to open %s (error no: %d)",
ufs_bsg_dev, errno);
fd_ufs_bsg = 0;
return ret;
}
}
return 0;
}
void ufs_bsg_dev_close(void)
{
if (fd_ufs_bsg) {
close(fd_ufs_bsg);
fd_ufs_bsg = 0;
}
}
static int ufs_bsg_ioctl(int fd, struct ufs_bsg_request *req,
struct ufs_bsg_reply *rsp, __u8 *buf, __u32 buf_len,
enum bsg_ioctl_dir dir)
{
int ret;
struct sg_io_v4 sg_io{};
sg_io.guard = 'Q';
sg_io.protocol = BSG_PROTOCOL_SCSI;
sg_io.subprotocol = BSG_SUB_PROTOCOL_SCSI_TRANSPORT;
sg_io.request_len = sizeof(*req);
sg_io.request = (__u64)req;
sg_io.response = (__u64)rsp;
sg_io.max_response_len = sizeof(*rsp);
if (dir == BSG_IOCTL_DIR_FROM_DEV) {
sg_io.din_xfer_len = buf_len;
sg_io.din_xferp = (__u64)(buf);
} else {
sg_io.dout_xfer_len = buf_len;
sg_io.dout_xferp = (__u64)(buf);
}
ret = ioctl(fd, SG_IO, &sg_io);
if (ret)
ALOGE("%s: Error from sg_io ioctl (return value: %d, error no: %d, reply result from LLD: %d\n)",
__func__, ret, errno, rsp->result);
if (sg_io.info || rsp->result) {
ALOGE("%s: Error from sg_io info (check sg info: device_status: 0x%x, transport_status: 0x%x, driver_status: 0x%x, reply result from LLD: %d\n)",
__func__, sg_io.device_status, sg_io.transport_status,
sg_io.driver_status, rsp->result);
ret = -EAGAIN;
}
return ret;
}
static void compose_ufs_bsg_query_req(struct ufs_bsg_request *req, __u8 func,
__u8 opcode, __u8 idn, __u8 index, __u8 sel,
__u16 length)
{
struct utp_upiu_header *hdr = &req->upiu_req.header;
struct utp_upiu_query *qr = &req->upiu_req.qr;
req->msgcode = UTP_UPIU_QUERY_REQ;
hdr->dword_0 = DWORD(UTP_UPIU_QUERY_REQ, 0, 0, 0);
hdr->dword_1 = DWORD(0, func, 0, 0);
hdr->dword_2 = DWORD(0, 0, length >> 8, (__u8)length);
qr->opcode = opcode;
qr->idn = idn;
qr->index = index;
qr->selector = sel;
qr->length = htobe16(length);
}
static int ufs_query_attr(int fd, __u32 value,
__u8 func, __u8 opcode, __u8 idn,
__u8 index, __u8 sel)
{
struct ufs_bsg_request req{};
struct ufs_bsg_reply rsp{};
enum bsg_ioctl_dir dir = BSG_IOCTL_DIR_FROM_DEV;
int ret = 0;
if (opcode == QUERY_REQ_OP_WRITE_DESC || opcode == QUERY_REQ_OP_WRITE_ATTR)
dir = BSG_IOCTL_DIR_TO_DEV;
req.upiu_req.qr.value = htobe32(value);
compose_ufs_bsg_query_req(&req, func, opcode, idn, index, sel, 0);
ret = ufs_bsg_ioctl(fd, &req, &rsp, 0, 0, dir);
if (ret)
ALOGE("%s: Error from ufs_bsg_ioctl (return value: %d, error no: %d\n)",
__func__, ret, errno);
return ret;
}
int32_t set_boot_lun(char *sg_dev __unused,uint8_t lun_id)
{
int32_t ret;
__u32 boot_lun_id = lun_id;
ret = get_ufs_bsg_dev();
if (ret)
return ret;
ALOGV("Found the ufs bsg dev: %s\n", ufs_bsg_dev);
ret = ufs_bsg_dev_open();
if (ret)
return ret;
ALOGV("Opened ufs bsg dev: %s\n", ufs_bsg_dev);
ret = ufs_query_attr(fd_ufs_bsg, boot_lun_id, QUERY_REQ_FUNC_STD_WRITE,
QUERY_REQ_OP_WRITE_ATTR, QUERY_ATTR_IDN_BOOT_LU_EN, 0, 0);
if (ret) {
ALOGE("Error requesting ufs attr idn %d via query ioctl (return value: %d, error no: %d)",
QUERY_ATTR_IDN_BOOT_LU_EN, ret, errno);
goto out;
}
out:
ufs_bsg_dev_close();
return ret;
}
#endif
#ifndef _BSG_FRAMEWORK_KERNEL_HEADERS
int32_t set_boot_lun(char *sg_dev, uint8_t boot_lun_id)
{
#ifndef _GENERIC_KERNEL_HEADERS
int fd = -1;
int rc;
struct ufs_ioctl_query_data *data = NULL;
size_t ioctl_data_size = sizeof(struct ufs_ioctl_query_data) + UFS_ATTR_DATA_SIZE;
data = (struct ufs_ioctl_query_data*)malloc(ioctl_data_size);
if (!data) {
fprintf(stderr, "%s: Failed to alloc query data struct\n",
__func__);
goto error;
}
memset(data, 0, ioctl_data_size);
data->opcode = UPIU_QUERY_OPCODE_WRITE_ATTR;
data->idn = QUERY_ATTR_IDN_BOOT_LU_EN;
data->buf_size = UFS_ATTR_DATA_SIZE;
data->buffer[0] = boot_lun_id;
fd = open(sg_dev, O_RDWR);
if (fd < 0) {
fprintf(stderr, "%s: Failed to open %s(%s)\n",
__func__,
sg_dev,
strerror(errno));
goto error;
}
rc = ioctl(fd, UFS_IOCTL_QUERY, data);
if (rc) {
fprintf(stderr, "%s: UFS query ioctl failed(%s)\n",
__func__,
strerror(errno));
goto error;
}
close(fd);
free(data);
return 0;
error:
if (fd >= 0)
close(fd);
if (data)
free(data);
return -1;
#else
return 0;
#endif
}
#endif

131
gpt-utils/recovery-ufs-bsg.h Executable file
View File

@ -0,0 +1,131 @@
#ifndef __RECOVERY_UFS_BSG_H__
#define __RECOVERY_UFS_BSG_H__
/*
* Copyright (c) 2020 The Linux Foundation. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above
* copyright notice, this list of conditions and the following
* disclaimer in the documentation and/or other materials provided
* with the distribution.
* * Neither the name of The Linux Foundation nor the names of its
* contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
* BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
* BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
* OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
* IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
#include <linux/bsg.h>
#include <scsi/scsi_bsg_ufs.h>
#include <endian.h>
#include <dirent.h>
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#include <sys/ioctl.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
#include <fcntl.h>
#include <errno.h>
#ifdef ANDROID
#include "cutils/log.h"
#endif
#ifdef OE
#include <syslog.h>
#define LOGI(...) syslog(LOG_NOTICE, "INFO:" __VA_ARGS__)
#define LOGV(...) syslog(LOG_NOTICE,"VERB:" __VA_ARGS__)
#define LOGD(...) syslog(LOG_DEBUG,"DBG:" __VA_ARGS__)
#define LOGE(...) syslog(LOG_ERR,"ERR:" __VA_ARGS__)
#define LOGW(...) syslog(LOG_WARNING,"WRN:" __VA_ARGS__)
#define strlcat(d,s,l) snprintf(d+strlen(d),l,"%s",s)
#endif
#define FNAME_SZ 64
#define SG_IO 0x2285
#define DWORD(b3, b2, b1, b0) htobe32((b3 << 24) | (b2 << 16) |\
(b1 << 8) | b0)
/* UFS BSG device nodes */
char ufs_bsg_dev[FNAME_SZ] = "/dev/ufs-bsg";
int fd_ufs_bsg;
int32_t set_ufs_lun(uint8_t lun_id);
#ifdef _BSG_FRAMEWORK_KERNEL_HEADERS
/* UPIU Transaction Codes */
enum {
UTP_UPIU_NOP_OUT = 0x00,
UTP_UPIU_COMMAND = 0x01,
UTP_UPIU_DATA_OUT = 0x02,
UTP_UPIU_TASK_REQ = 0x04,
UTP_UPIU_QUERY_REQ = 0x16,
};
/* UPIU Query Function field */
enum {
QUERY_REQ_FUNC_STD_READ = 0x01,
QUERY_REQ_FUNC_STD_WRITE = 0x81,
};
enum query_req_opcode {
QUERY_REQ_OP_READ_DESC = 0x1,
QUERY_REQ_OP_WRITE_DESC = 0x2,
QUERY_REQ_OP_READ_ATTR = 0x3,
QUERY_REQ_OP_WRITE_ATTR = 0x4,
QUERY_REQ_OP_READ_FLAG = 0x5,
QUERY_REQ_OP_SET_FLAG = 0x6,
QUERY_REQ_OP_CLEAR_FLAG = 0x7,
QUERY_REQ_OP_TOGGLE_FLAG = 0x8,
};
enum query_desc_idn {
QUERY_DESC_IDN_DEVICE = 0x0,
QUERY_DESC_IDN_UNIT = 0x2,
QUERY_DESC_IDN_GEOMETRY = 0x7,
};
enum query_desc_size {
QUERY_DESC_SIZE_DEVICE = 0x40,
QUERY_DESC_SIZE_GEOMETRY = 0x48,
QUERY_DESC_SIZE_UNIT = 0x23,
};
enum bsg_ioctl_dir {
BSG_IOCTL_DIR_TO_DEV,
BSG_IOCTL_DIR_FROM_DEV,
};
enum query_attr_idn {
QUERY_ATTR_IDN_BOOT_LU_EN = 0x00,
QUERY_ATTR_IDN_RESERVED = 0x01,
QUERY_ATTR_IDN_POWER_MODE = 0x02,
QUERY_ATTR_IDN_ACTIVE_ICC_LVL = 0x03,
};
#endif /* _BSG_FRAMEWORK_KERNEL_HEADERS */
#endif /* __RECOVERY_UFS_BSG_H__ */

0
prebuilt/kernel Executable file
View File

BIN
prebuilt/kernel-FULL Executable file

Binary file not shown.

View File

@ -0,0 +1,62 @@
import /init.recovery.qcom_decrypt.rc
on early-init
start set_permissive
on fs
wait /dev/block/platform/soc/${ro.boot.bootdevice}
symlink /dev/block/platform/soc/${ro.boot.bootdevice} /dev/block/bootdevice
on property:init.svc.fastbootd=running
# Load prebuild kernel modules in fastboot mode
mount /vendor_dlkm
insmod /vendor/lib/modules/adsp_loader_dlkm.ko
insmod /vendor/lib/modules/bm_adsp_ulog.ko
insmod /vendor/lib/modules/goodix_brl_mmi.ko
insmod /vendor/lib/modules/gpr_dlkm.ko
insmod /vendor/lib/modules/mmi_annotate.ko
insmod /vendor/lib/modules/mmi_info.ko
insmod /vendor/lib/modules/mmi_relay.ko
insmod /vendor/lib/modules/mmi_charger.ko
insmod /vendor/lib/modules/mmi_sys_temp.ko
insmod /vendor/lib/modules/moto_f_mass_storage.ko
insmod /vendor/lib/modules/moto_f_usbnet.ko
insmod /vendor/lib/modules/msm_drm.ko
insmod /vendor/lib/modules/phy-msm-ssusb-qmp.ko
insmod /vendor/lib/modules/qti_glink_charger.ko
insmod /vendor/lib/modules/qpnp_adaptive_charge.ko
insmod /vendor/lib/modules/q6_pdr_dlkm.ko
insmod /vendor/lib/modules/q6_notifier_dlkm.ko
insmod /vendor/lib/modules/qdss_bridge.ko
insmod /vendor/lib/modules/sensors_class.ko
insmod /vendor/lib/modules/snd_event_dlkm.ko
insmod /vendor/lib/modules/spf_core_dlkm.ko
insmod /vendor/lib/modules/ssusb-redriver-ps5169.ko
insmod /vendor/lib/modules/stmicro_mmi.ko
insmod /vendor/lib/modules/sx937x_sar.ko
insmod /vendor/lib/modules/touchscreen_mmi.ko
insmod /vendor/lib/modules/usb_f_qdss.ko
setprop twrp.modules.loaded true
on post-fs && property:init.svc.fastbootd=stopped
# Trigger loading kernel modules in normal mode
setprop twrp.modules.loaded true
on property:twrp.modules.loaded=true
# Load kernel modules and ADSP firmware for PMIC
wait /sys/kernel/boot_adsp/boot
start runatboot
wait /sys/class/power_supply/battery
on post-fs
start boot-hal-1-2
on boot
start health-hal-2-1
service runatboot /system/bin/runatboot.sh
user root
group root
oneshot
seclabel u:r:recovery:s0

View File

@ -0,0 +1,193 @@
on charger
mount configfs none /config
mkdir /config/usb_gadget/g1 0770
mkdir /config/usb_gadget/g1/strings/0x409 0770
write /config/usb_gadget/g1/bcdUSB 0x0200
write /config/usb_gadget/g1/strings/0x409/serialnumber ${ro.serialno}
write /config/usb_gadget/g1/strings/0x409/manufacturer ${ro.product.manufacturer}
mkdir /config/usb_gadget/g1/functions/mass_storage.0
mkdir /config/usb_gadget/g1/configs/b.1 0770
mkdir /config/usb_gadget/g1/configs/b.1/strings/0x409 0770
write /config/usb_gadget/g1/configs/b.1/MaxPower 900
write /config/usb_gadget/g1/strings/0x409/product ${vendor.usb.product_string}
wait /sys/class/udc/${sys.usb.controller}
setprop sys.usb.configfs 1
setprop vendor.usb.use_ffs_mtp 1
on init
setprop sys.usb.configfs 1
on property:ro.boot.usbcontroller=*
setprop sys.usb.controller ${ro.boot.usbcontroller}
wait /sys/bus/platform/devices/${ro.boot.usb.dwc3_msm:-a600000.ssusb}/mode
write /sys/bus/platform/devices/${ro.boot.usb.dwc3_msm:-a600000.ssusb}/mode peripheral
wait /sys/class/udc/${ro.boot.usbcontroller} 1
on post-fs
mount configfs none /config
mkdir /config/usb_gadget/g1 0770
mkdir /config/usb_gadget/g2 0770
mkdir /config/usb_gadget/g1/strings/0x409 0770
mkdir /config/usb_gadget/g2/strings/0x409 0770
write /config/usb_gadget/g1/bcdUSB 0x0200
write /config/usb_gadget/g2/bcdUSB 0x0200
write /config/usb_gadget/g1/os_desc/use 1
write /config/usb_gadget/g1/strings/0x409/serialnumber ${ro.serialno}
write /config/usb_gadget/g2/strings/0x409/serialnumber ${ro.serialno}
write /config/usb_gadget/g1/strings/0x409/manufacturer ${ro.product.manufacturer}
write /config/usb_gadget/g2/strings/0x409/manufacturer ${ro.product.manufacturer}
write /config/usb_gadget/g1/strings/0x409/product ${ro.product.model}
write /config/usb_gadget/g2/strings/0x409/product ${ro.product.model}
mkdir /config/usb_gadget/g1/functions/mass_storage.0
mkdir /config/usb_gadget/g1/functions/mtp.gs0
mkdir /config/usb_gadget/g1/functions/ffs.adb
mkdir /config/usb_gadget/g1/configs/b.1 0770
mkdir /config/usb_gadget/g2/configs/b.1 0770
mkdir /config/usb_gadget/g1/configs/b.1/strings/0x409 0770
mkdir /config/usb_gadget/g2/configs/b.1/strings/0x409 0770
write /config/usb_gadget/g1/configs/b.1/MaxPower 900
write /config/usb_gadget/g1/os_desc/b_vendor_code 0x1
write /config/usb_gadget/g1/os_desc/qw_sign "MSFT100"
write /config/usb_gadget/g1/functions/diag.diag/serial ${ro.serialno}
mkdir /dev/usb-ffs 0775 shell system
mkdir /dev/usb-ffs/adb 0770 shell system
mount functionfs adb /dev/usb-ffs/adb uid=2000,gid=1000,rmode=0770,fmode=0660
setprop sys.usb.mtp.device_type 3
on post-fs && property:vendor.usb.use_ffs_mtp=1
mkdir /config/usb_gadget/g1/functions/ffs.mtp
mkdir /dev/usb-ffs/mtp 0770 mtp mtp
mount functionfs mtp /dev/usb-ffs/mtp rmode=0770,fmode=0660,uid=1024,gid=1024,no_disconnect=1
on boot && property:vendor.usb.use_gadget_hal=1
setprop sys.usb.configfs 2
on property:sys.usb.config=* && property:sys.usb.configfs=2
setprop vendor.usb.config ${sys.usb.config}
on property:vendor.usb.config=* && property:sys.usb.configfs=2
start usbd
on property:sys.usb.config=none && property:sys.usb.configfs=1
write /config/usb_gadget/g1/UDC "none"
stop adbd
setprop sys.usb.ffs.ready 0
write /config/usb_gadget/g1/bDeviceClass 0
write /config/usb_gadget/g1/bDeviceSubClass 0
write /config/usb_gadget/g1/bDeviceProtocol 0
rm /config/usb_gadget/g1/configs/b.1/f1
rm /config/usb_gadget/g1/configs/b.1/f2
rm /config/usb_gadget/g1/configs/b.1/f3
rmdir /config/usb_gadget/g1/functions/rndis.gs4
setprop sys.usb.state ${sys.usb.config}
on property:init.svc.adbd=stopped
setprop sys.usb.ffs.ready 0
#
# USB compositions
#
# Following are the triggers to configure various combinations of functions into a USB
# composition. Each correspond to a unique VID/PID.
#
on property:sys.usb.config=* && property:sys.usb.configfs=1
rm /config/usb_gadget/g1/os_desc/b.1
on property:sys.usb.config=none && property:sys.usb.configfs=1
rm /config/usb_gadget/g1/configs/b.1/f1
rm /config/usb_gadget/g1/configs/b.1/f2
rm /config/usb_gadget/g1/configs/b.1/f3
rm /config/usb_gadget/g1/configs/b.1/f4
rm /config/usb_gadget/g1/configs/b.1/f5
rm /config/usb_gadget/g1/configs/b.1/f6
rm /config/usb_gadget/g1/configs/b.1/f7
rm /config/usb_gadget/g1/configs/b.1/f8
rm /config/usb_gadget/g1/configs/b.1/f9
on property:sys.usb.config=mass_storage && property:sys.usb.configfs=1
write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "msc"
rm /config/usb_gadget/g1/configs/b.1/f1
rm /config/usb_gadget/g1/configs/b.1/f2
rm /config/usb_gadget/g1/configs/b.1/f3
rm /config/usb_gadget/g1/configs/b.1/f4
rm /config/usb_gadget/g1/configs/b.1/f5
rm /config/usb_gadget/g1/configs/b.1/f6
rm /config/usb_gadget/g1/configs/b.1/f7
rm /config/usb_gadget/g1/configs/b.1/f8
rm /config/usb_gadget/g1/configs/b.1/f9
write /config/usb_gadget/g1/idVendor 0x05C6
write /config/usb_gadget/g1/idProduct 0xF000
symlink /config/usb_gadget/g1/functions/mass_storage.0 /config/usb_gadget/g1/configs/b.1/f1
write /config/usb_gadget/g1/UDC ${sys.usb.controller}
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=mass_storage,adb && property:sys.usb.configfs=1
start adbd
on property:sys.usb.ffs.ready=1 && property:sys.usb.config=mass_storage,adb && property:sys.usb.configfs=1
write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "adb_msc"
rm /config/usb_gadget/g1/configs/b.1/f1
rm /config/usb_gadget/g1/configs/b.1/f2
rm /config/usb_gadget/g1/configs/b.1/f3
rm /config/usb_gadget/g1/configs/b.1/f4
rm /config/usb_gadget/g1/configs/b.1/f5
rm /config/usb_gadget/g1/configs/b.1/f6
rm /config/usb_gadget/g1/configs/b.1/f7
rm /config/usb_gadget/g1/configs/b.1/f8
rm /config/usb_gadget/g1/configs/b.1/f9
symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1
write /config/usb_gadget/g1/idVendor 0x05C6
write /config/usb_gadget/g1/idProduct 0x9015
symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f1
symlink /config/usb_gadget/g1/functions/mass_storage.0 /config/usb_gadget/g1/configs/b.1/f2
write /config/usb_gadget/g1/UDC ${sys.usb.controller}
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=adb && property:sys.usb.configfs=1
start adbd
on property:sys.usb.ffs.ready=1 && property:sys.usb.config=adb && property:sys.usb.configfs=1
write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "adb"
symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f1
write /config/usb_gadget/g1/UDC ${sys.usb.controller}
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=mtp && property:sys.usb.configfs=1
write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "mtp"
symlink /config/usb_gadget/g1/functions/mtp.gs0 /config/usb_gadget/g1/configs/b.1/f1
write /config/usb_gadget/g1/UDC ${sys.usb.controller}
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=mtp,adb && property:sys.usb.configfs=1
start adbd
on property:sys.usb.ffs.ready=1 && property:sys.usb.config=mtp,adb && property:sys.usb.configfs=1
write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "mtp_adb"
symlink /config/usb_gadget/g1/functions/mtp.gs0 /config/usb_gadget/g1/configs/b.1/f1
symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f2
write /config/usb_gadget/g1/UDC ${sys.usb.controller}
setprop sys.usb.state ${sys.usb.config}
on property:sys.usb.config=adb && property:sys.usb.configfs=1
write /config/usb_gadget/g1/idVendor 0x18d1
write /config/usb_gadget/g1/idProduct 0x4ee7
symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1
on property:sys.usb.config=mtp && property:sys.usb.configfs=1
write /config/usb_gadget/g1/idVendor 0x18d1
write /config/usb_gadget/g1/idProduct 0x4ee1
symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1
on property:sys.usb.config=mtp && property:vendor.usb.use_ffs_mtp=1 && property:sys.usb.configfs=1
symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1
symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1
on property:sys.usb.config=mtp,adb && property:sys.usb.configfs=1
write /config/usb_gadget/g1/idVendor 0x18d1
write /config/usb_gadget/g1/idProduct 0x4ee2
on property:sys.usb.config=mtp,adb && property:vendor.usb.use_ffs_mtp=1 && property:sys.usb.configfs=1
symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/f1
symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f2
symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1

BIN
recovery/root/system/bin/qseecomd Executable file

Binary file not shown.

View File

@ -0,0 +1,55 @@
#!/system/bin/sh
# Set SeLinux Permissions
setenforce 0
mount /vendor_dlkm
mount /vendor
modprobe -d /vendor_dlkm/lib/modules /vendor_dlkm/lib/modules/goodix_brl_mmi.ko
modprobe -d /vendor_dlkm/lib/modules /vendor_dlkm/lib/modules/touchscreen_mmi.ko
sleep 1
if [ $(cat /sys/class/touchscreen/primary/productinfo) == "gt9916S" ]
then
echo 1 > /sys/class/touchscreen/primary/forcereflash
echo goodix-boe-gt9916S-24010501-6597AA91-avatrn.bin > /sys/class/touchscreen/primary/doreflash
echo "Reflashing Firmware..."
echo 0 > /sys/class/touchscreen/primary/forcereflash
fi
is_fastboot=$(getprop init.svc.fastbootd)
if [ "$is_fastboot" != "running" ]; then
mount /vendor_dlkm
insmod /vendor_dlkm/lib/modules/msm_drm.ko
insmod /vendor_dlkm/lib/modules/mmi_annotate.ko
insmod /vendor_dlkm/lib/modules/mmi_info.ko
insmod /vendor_dlkm/lib/modules/mmi_relay.ko
insmod /vendor_dlkm/lib/modules/mmi_charger.ko
insmod /vendor_dlkm/lib/modules/mmi_sys_temp.ko
insmod /vendor_dlkm/lib/modules/sensors_class.ko
insmod /vendor_dlkm/lib/modules/touchscreen_mmi.ko
insmod /vendor_dlkm/lib/modules/stmicro_mmi.ko
insmod /vendor_dlkm/lib/modules/goodix_brl_mmi.ko
insmod /vendor_dlkm/lib/modules/sx937x_sar.ko
insmod /vendor_dlkm/lib/modules/bm_adsp_ulog.ko
insmod /vendor_dlkm/lib/modules/qti_glink_charger.ko
insmod /vendor_dlkm/lib/modules/qpnp_adaptive_charge.ko
insmod /vendor_dlkm/lib/modules/q6_pdr_dlkm.ko
insmod /vendor_dlkm/lib/modules/q6_notifier_dlkm.ko
insmod /vendor_dlkm/lib/modules/snd_event_dlkm.ko
insmod /vendor_dlkm/lib/modules/gpr_dlkm.ko
insmod /vendor_dlkm/lib/modules/spf_core_dlkm.ko
insmod /vendor_dlkm/lib/modules/adsp_loader_dlkm.ko
insmod /vendor_dlkm/lib/modules/moto_f_mass_storage.ko
insmod /vendor_dlkm/lib/modules/phy-msm-ssusb-qmp.ko
insmod /vendor_dlkm/lib/modules/qdss_bridge.ko
insmod /vendor_dlkm/lib/modules/ssusb-redriver-ps5169.ko
insmod /vendor_dlkm/lib/modules/usb_f_qdss.ko
insmod /vendor_dlkm/lib/modules/moto_f_usbnet.ko
fi
mkdir /firmware
SLOT=$(getprop ro.boot.slot_suffix)
mount /dev/block/bootdevice/by-name/modem$SLOT /firmware -O ro
echo "1" > /proc/sys/kernel/firmware_config/force_sysfs_fallback
echo "1" > /sys/kernel/boot_adsp/boot
exit 0

BIN
recovery/root/system/bin/sec_nvm Executable file

Binary file not shown.

BIN
recovery/root/system/bin/spdaemon Executable file

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,507 @@
42 answer (to life the universe etc|3)
314 pi
1003 auditd (avc|3)
1004 chatty (dropped|3)
1005 tag_def (tag|1),(name|3),(format|3)
1006 liblog (dropped|1)
2718 e
2719 configuration_changed (config mask|1|5)
2720 sync (id|3),(event|1|5),(source|1|5),(account|1|5)
2721 cpu (total|1|6),(user|1|6),(system|1|6),(iowait|1|6),(irq|1|6),(softirq|1|6)
2722 battery_level (level|1|6),(voltage|1|1),(temperature|1|1)
2723 battery_status (status|1|5),(health|1|5),(present|1|5),(plugged|1|5),(technology|3)
2724 power_sleep_requested (wakeLocksCleared|1|1)
2725 power_screen_broadcast_send (wakelockCount|1|1)
2726 power_screen_broadcast_done (on|1|5),(broadcastDuration|2|3),(wakelockCount|1|1)
2727 power_screen_broadcast_stop (which|1|5),(wakelockCount|1|1)
2728 power_screen_state (offOrOn|1|5),(becauseOfUser|1|5),(totalTouchDownTime|2|3),(touchCycles|1|1),(latency|1|3)
2729 power_partial_wake_state (releasedorAcquired|1|5),(tag|3)
2730 battery_discharge (duration|2|3),(minLevel|1|6),(maxLevel|1|6)
2731 power_soft_sleep_requested (savedwaketimems|2)
2732 storaged_disk_stats (type|3),(start_time|2|3),(end_time|2|3),(read_ios|2|1),(read_merges|2|1),(read_sectors|2|1),(read_ticks|2|3),(write_ios|2|1),(write_merges|2|1),(write_sectors|2|1),(write_ticks|2|3),(o_in_flight|2|1),(io_ticks|2|3),(io_in_queue|2|1)
2733 storaged_emmc_info (mmc_ver|3),(eol|1),(lifetime_a|1),(lifetime_b|1)
2737 thermal_changed (name|3),(type|1|5),(temperature|5),(sensor_status|1|5),(previous_system_status|1|5)
2739 battery_saver_mode (fullPrevOffOrOn|1|5),(adaptivePrevOffOrOn|1|5),(fullNowOffOrOn|1|5),(adaptiveNowOffOrOn|1|5),(interactive|1|5),(features|3|5),(reason|1|5)
2740 location_controller
2741 force_gc (reason|3)
2742 tickle (authority|3)
2747 contacts_aggregation (aggregation time|2|3), (count|1|1)
2748 cache_file_deleted (path|3)
2749 storage_state (uuid|3),(old_state|1),(new_state|1),(usable|2),(total|2)
2750 notification_enqueue (uid|1|5),(pid|1|5),(pkg|3),(id|1|5),(tag|3),(userid|1|5),(notification|3),(status|1)
2751 notification_cancel (uid|1|5),(pid|1|5),(pkg|3),(id|1|5),(tag|3),(userid|1|5),(required_flags|1),(forbidden_flags|1),(reason|1|5),(listener|3)
2752 notification_cancel_all (uid|1|5),(pid|1|5),(pkg|3),(userid|1|5),(required_flags|1),(forbidden_flags|1),(reason|1|5),(listener|3)
2755 fstrim_start (time|2|3)
2756 fstrim_finish (time|2|3)
2802 watchdog (Service|3)
2803 watchdog_proc_pss (Process|3),(Pid|1|5),(Pss|1|2)
2804 watchdog_soft_reset (Process|3),(Pid|1|5),(MaxPss|1|2),(Pss|1|2),(Skip|3)
2805 watchdog_hard_reset (Process|3),(Pid|1|5),(MaxPss|1|2),(Pss|1|2)
2806 watchdog_pss_stats (EmptyPss|1|2),(EmptyCount|1|1),(BackgroundPss|1|2),(BackgroundCount|1|1),(ServicePss|1|2),(ServiceCount|1|1),(VisiblePss|1|2),(VisibleCount|1|1),(ForegroundPss|1|2),(ForegroundCount|1|1),(NoPssCount|1|1)
2807 watchdog_proc_stats (DeathsInOne|1|1),(DeathsInTwo|1|1),(DeathsInThree|1|1),(DeathsInFour|1|1),(DeathsInFive|1|1)
2808 watchdog_scheduled_reboot (Now|2|1),(Interval|1|3),(StartTime|1|3),(Window|1|3),(Skip|3)
2809 watchdog_meminfo (MemFree|1|2),(Buffers|1|2),(Cached|1|2),(Active|1|2),(Inactive|1|2),(AnonPages|1|2),(Mapped|1|2),(Slab|1|2),(SReclaimable|1|2),(SUnreclaim|1|2),(PageTables|1|2)
2810 watchdog_vmstat (runtime|2|3),(pgfree|1|1),(pgactivate|1|1),(pgdeactivate|1|1),(pgfault|1|1),(pgmajfault|1|1)
2811 watchdog_requested_reboot (NoWait|1|1),(ScheduleInterval|1|3),(RecheckInterval|1|3),(StartTime|1|3),(Window|1|3),(MinScreenOff|1|3),(MinNextAlarm|1|3)
2820 backup_data_changed (Package|3)
2821 backup_start (Transport|3)
2822 backup_transport_failure (Package|3)
2823 backup_agent_failure (Package|3),(Message|3)
2824 backup_package (Package|3),(Size|1|2)
2825 backup_success (Packages|1|1),(Time|1|3)
2826 backup_reset (Transport|3)
2827 backup_initialize
2828 backup_requested (Total|1|1),(Key-Value|1|1),(Full|1|1)
2829 backup_quota_exceeded (Package|3)
2830 restore_start (Transport|3),(Source|2|5)
2831 restore_transport_failure
2832 restore_agent_failure (Package|3),(Message|3)
2833 restore_package (Package|3),(Size|1|2)
2834 restore_success (Packages|1|1),(Time|1|3)
2840 full_backup_package (Package|3)
2841 full_backup_agent_failure (Package|3),(Message|3)
2842 full_backup_transport_failure
2843 full_backup_success (Package|3)
2844 full_restore_package (Package|3)
2845 full_backup_quota_exceeded (Package|3)
2846 full_backup_cancelled (Package|3),(Message|3)
2850 backup_transport_lifecycle (Transport|3),(Bound|1|1)
2851 backup_transport_connection (Transport|3),(Connected|1|1)
2900 rescue_note (uid|1),(count|1),(window|2)
2901 rescue_level (level|1),(trigger_uid|1)
2902 rescue_success (level|1)
2903 rescue_failure (level|1),(msg|3)
3000 boot_progress_start (time|2|3)
3010 boot_progress_system_run (time|2|3)
3011 system_server_start (start_count|1),(uptime|2|3),(elapse_time|2|3)
3020 boot_progress_preload_start (time|2|3)
3030 boot_progress_preload_end (time|2|3)
3040 boot_progress_ams_ready (time|2|3)
3050 boot_progress_enable_screen (time|2|3)
3060 boot_progress_pms_start (time|2|3)
3070 boot_progress_pms_system_scan_start (time|2|3)
3080 boot_progress_pms_data_scan_start (time|2|3)
3090 boot_progress_pms_scan_end (time|2|3)
3100 boot_progress_pms_ready (time|2|3)
3110 unknown_sources_enabled (value|1)
3120 pm_critical_info (msg|3)
3121 pm_package_stats (manual_time|2|3),(quota_time|2|3),(manual_data|2|2),(quota_data|2|2),(manual_cache|2|2),(quota_cache|2|2)
3130 pm_snapshot_stats (build_count|1|1),(reuse_count|1|1),(big_builds|1|1),(short_lived|1|1),(max_build_time|1|3),(cumm_build_time|2|3)
3131 pm_snapshot_rebuild (build_time|1|3),(lifetime|1|3)
8000 job_deferred_execution (time|2|3)
20003 dvm_lock_sample (process|3),(main|1|5),(thread|3),(time|1|3),(file|3),(line|1|5),(ownerfile|3),(ownerline|1|5),(sample_percent|1|6)
20004 art_hidden_api_access (access_method|1),(flags|1),(class|3),(member|3),(type_signature|3)
27390 battery_saving_stats (batterySaver|1|5),(interactive|1|5),(doze|1|5),(delta_duration|2|3),(delta_battery_drain|1|1),(delta_battery_drain_percent|1|6),(total_duration|2|3),(total_battery_drain|1|1),(total_battery_drain_percent|1|6)
27391 user_activity_timeout_override (override|2|3)
27392 battery_saver_setting (threshold|1)
27500 notification_panel_revealed (items|1)
27501 notification_panel_hidden
27510 notification_visibility_changed (newlyVisibleKeys|3),(noLongerVisibleKeys|3)
27511 notification_expansion (key|3),(user_action|1),(expanded|1),(lifespan|1),(freshness|1),(exposure|1)
27520 notification_clicked (key|3),(lifespan|1),(freshness|1),(exposure|1),(rank|1),(count|1)
27521 notification_action_clicked (key|3),(action_index|1),(lifespan|1),(freshness|1),(exposure|1),(rank|1),(count|1)
27530 notification_canceled (key|3),(reason|1),(lifespan|1),(freshness|1),(exposure|1),(rank|1),(count|1),(listener|3)
27531 notification_visibility (key|3),(visibile|1),(lifespan|1),(freshness|1),(exposure|1),(rank|1)
27532 notification_alert (key|3),(buzz|1),(beep|1),(blink|1)
27533 notification_autogrouped (key|3)
27535 notification_adjusted (key|3),(adjustment_type|3),(new_value|3)
30001 wm_finish_activity (User|1|5),(Token|1|5),(Task ID|1|5),(Component Name|3),(Reason|3),(DisplayId|1|5)
30002 wm_task_to_front (User|1|5),(Task|1|5)
30003 wm_new_intent (User|1|5),(Token|1|5),(Task ID|1|5),(Component Name|3),(Action|3),(MIME Type|3),(URI|3),(Flags|1|5),(DisplayId|1|5)
30004 wm_create_task (User|1|5),(Task ID|1|5),(DisplayId|1|5)
30005 wm_create_activity (User|1|5),(Token|1|5),(Task ID|1|5),(Component Name|3),(Action|3),(MIME Type|3),(URI|3),(Flags|1|5),(DisplayId|1|5)
30006 wm_restart_activity (User|1|5),(Token|1|5),(Task ID|1|5),(Component Name|3),(DisplayId|1|5)
30007 wm_resume_activity (User|1|5),(Token|1|5),(Task ID|1|5),(Component Name|3),(DisplayId|1|5)
30008 am_anr (User|1|5),(pid|1|5),(Package Name|3),(Flags|1|5),(reason|3)
30009 wm_activity_launch_time (User|1|5),(Token|1|5),(Component Name|3),(time|2|3)
30010 am_proc_bound (User|1|5),(PID|1|5),(Process Name|3)
30011 am_proc_died (User|1|5),(PID|1|5),(Process Name|3),(OomAdj|1|5),(ProcState|1|5)
30012 wm_failed_to_pause (User|1|5),(Token|1|5),(Wanting to pause|3),(Currently pausing|3),(DisplayId|1|5)
30013 wm_pause_activity (User|1|5),(Token|1|5),(Component Name|3),(User Leaving|3),(Reason|3),(DisplayId|1|5)
30014 am_proc_start (User|1|5),(PID|1|5),(UID|1|5),(Process Name|3),(Type|3),(Component|3)
30015 am_proc_bad (User|1|5),(UID|1|5),(Process Name|3)
30016 am_proc_good (User|1|5),(UID|1|5),(Process Name|3)
30017 am_low_memory (Num Processes|1|1)
30018 wm_destroy_activity (User|1|5),(Token|1|5),(Task ID|1|5),(Component Name|3),(Reason|3),(DisplayId|1|5)
30019 wm_relaunch_resume_activity (User|1|5),(Token|1|5),(Task ID|1|5),(Component Name|3),(DisplayId|1|5)
30020 wm_relaunch_activity (User|1|5),(Token|1|5),(Task ID|1|5),(Component Name|3),(DisplayId|1|5)
30021 wm_on_paused_called (Token|1|5),(Component Name|3),(Reason|3),(DisplayId|1|5)
30022 wm_on_resume_called (Token|1|5),(Component Name|3),(Reason|3),(DisplayId|1|5)
30023 am_kill (User|1|5),(PID|1|5),(Process Name|3),(OomAdj|1|5),(Reason|3)
30024 am_broadcast_discard_filter (User|1|5),(Broadcast|1|5),(Action|3),(Receiver Number|1|1),(BroadcastFilter|1|5)
30025 am_broadcast_discard_app (User|1|5),(Broadcast|1|5),(Action|3),(Receiver Number|1|1),(App|3)
30030 am_create_service (User|1|5),(Service Record|1|5),(Name|3),(UID|1|5),(PID|1|5)
30031 am_destroy_service (User|1|5),(Service Record|1|5),(PID|1|5)
30032 am_process_crashed_too_much (User|1|5),(Name|3),(PID|1|5)
30033 am_drop_process (PID|1|5)
30034 am_service_crashed_too_much (User|1|5),(Crash Count|1|1),(Component Name|3),(PID|1|5)
30035 am_schedule_service_restart (User|1|5),(Component Name|3),(Time|2|3)
30036 am_provider_lost_process (User|1|5),(Package Name|3),(UID|1|5),(Name|3)
30037 am_process_start_timeout (User|1|5),(PID|1|5),(UID|1|5),(Process Name|3)
30039 am_crash (User|1|5),(PID|1|5),(Process Name|3),(Flags|1|5),(Exception|3),(Message|3),(File|3),(Line|1|5)
30040 am_wtf (User|1|5),(PID|1|5),(Process Name|3),(Flags|1|5),(Tag|3),(Message|3)
30041 am_switch_user (id|1|5)
30043 wm_set_resumed_activity (User|1|5),(Component Name|3),(Reason|3),(DisplayId|1|5)
30044 wm_focused_root_task (User|1|5),(Display Id|1|5),(Focused Root Task Id|1|5),(Last Focused Root Task Id|1|5),(Reason|3)
30045 am_pre_boot (User|1|5),(Package|3)
30046 am_meminfo (Cached|2|2),(Free|2|2),(Zram|2|2),(Kernel|2|2),(Native|2|2)
30047 am_pss (Pid|1|5),(UID|1|5),(Process Name|3),(Pss|2|2),(Uss|2|2),(SwapPss|2|2),(Rss|2|2),(StatType|1|5),(ProcState|1|5),(TimeToCollect|2|2)
30048 wm_stop_activity (User|1|5),(Token|1|5),(Component Name|3),(DisplayId|1|5)
30049 wm_on_stop_called (Token|1|5),(Component Name|3),(Reason|3)
30050 am_mem_factor (Current|1|5),(Previous|1|5)
30051 am_user_state_changed (id|1|5),(state|1|5)
30052 am_uid_running (UID|1|5)
30053 am_uid_stopped (UID|1|5)
30054 am_uid_active (UID|1|5)
30055 am_uid_idle (UID|1|5)
30056 am_stop_idle_service (UID|1|5),(Component Name|3)
30057 wm_on_create_called (Token|1|5),(Component Name|3),(Reason|3),(DisplayId|1|5)
30058 wm_on_restart_called (Token|1|5),(Component Name|3),(Reason|3)
30059 wm_on_start_called (Token|1|5),(Component Name|3),(Reason|3)
30060 wm_on_destroy_called (Token|1|5),(Component Name|3),(Reason|3)
30061 wm_remove_task (Task ID|1|5), (Root Task ID|1|5)
30062 wm_on_activity_result_called (Token|1|5),(Component Name|3),(Reason|3)
30063 am_compact (Pid|1|5),(Process Name|3),(Action|3),(BeforeRssTotal|2|2),(BeforeRssFile|2|2),(BeforeRssAnon|2|2),(BeforeRssSwap|2|2),(DeltaRssTotal|2|2),(DeltaRssFile|2|2),(DeltaRssAnon|2|2),(DeltaRssSwap|2|2),(Time|2|3),(LastAction|1|2),(LastActionTimestamp|2|3),(setAdj|1|2),(procState|1|2),(BeforeZRAMFree|2|2),(DeltaZRAMFree|2|2)
30064 wm_on_top_resumed_gained_called (Token|1|5),(Component Name|3),(Reason|3),(DisplayId|1|5)
30065 wm_on_top_resumed_lost_called (Token|1|5),(Component Name|3),(Reason|3),(DisplayId|1|5)
30066 wm_add_to_stopping (User|1|5),(Token|1|5),(Component Name|3),(Reason|3),(DisplayId|1|5)
30067 wm_set_keyguard_shown (keyguardShowing|1),(aodShowing|1),(keyguardGoingAway|1),(Reason|3)
30068 am_freeze (Pid|1|5),(Process Name|3)
30069 am_unfreeze (Pid|1|5),(Process Name|3)
30070 uc_finish_user_unlocking (userId|1|5)
30071 uc_finish_user_unlocked (userId|1|5)
30072 uc_finish_user_unlocked_completed (userId|1|5)
30073 uc_finish_user_stopping (userId|1|5)
30074 uc_finish_user_stopped (userId|1|5)
30075 uc_switch_user (userId|1|5)
30076 uc_start_user_internal (userId|1|5)
30077 uc_unlock_user (userId|1|5)
30078 uc_finish_user_boot (userId|1|5)
30079 uc_dispatch_user_switch (oldUserId|1|5),(newUserId|1|5)
30080 uc_continue_user_switch (oldUserId|1|5),(newUserId|1|5)
30081 uc_send_user_broadcast (userId|1|5),(IntentAction|3)
30082 ssm_user_starting (userId|1|5)
30083 ssm_user_switching (oldUserId|1|5),(newUserId|1|5)
30084 ssm_user_unlocking (userId|1|5)
30085 ssm_user_unlocked (userId|1|5)
30086 ssm_user_stopping (userId|1|5)
30087 ssm_user_stopped (userId|1|5)
31000 wm_no_surface_memory (Window|3),(PID|1|5),(Operation|3)
31001 wm_task_created (TaskId|1|5),(RootTaskId|1|5)
31002 wm_task_moved (TaskId|1|5),(ToTop|1),(Index|1),(DisplayId|1|5)
31003 wm_task_removed (TaskId|1|5),(Reason|3),(DisplayId|1|5)
31007 wm_boot_animation_done (time|2|3)
32000 imf_force_reconnect_ime (IME|4),(Time Since Connect|2|3),(Showing|1|1)
33000 wp_wallpaper_crashed (component|3)
34000 device_idle (state|1|5), (reason|3)
34001 device_idle_step
34002 device_idle_wake_from_idle (is_idle|1|5), (reason|3)
34003 device_idle_on_start
34004 device_idle_on_phase (what|3)
34005 device_idle_on_complete
34006 device_idle_off_start (reason|3)
34007 device_idle_off_phase (what|3)
34008 device_idle_off_complete
34009 device_idle_light (state|1|5), (reason|3)
34010 device_idle_light_step
35000 auto_brightness_adj (old_lux|5),(old_brightness|5),(new_lux|5),(new_brightness|5)
36000 sysui_statusbar_touch (type|1),(x|1),(y|1),(disable1|1),(disable2|1)
36001 sysui_heads_up_status (key|3),(visible|1)
36002 sysui_fullscreen_notification (key|3)
36003 sysui_heads_up_escalation (key|3)
36004 sysui_status_bar_state (state|1),(keyguardShowing|1),(keyguardOccluded|1),(bouncerShowing|1),(secure|1),(currentlyInsecure|1)
36010 sysui_panelbar_touch (type|1),(x|1),(y|1),(enabled|1)
36020 sysui_notificationpanel_touch (type|1),(x|1),(y|1)
36021 sysui_lockscreen_gesture (type|1),(lengthDp|1),(velocityDp|1)
36030 sysui_quickpanel_touch (type|1),(x|1),(y|1)
36040 sysui_panelholder_touch (type|1),(x|1),(y|1)
36050 sysui_searchpanel_touch (type|1),(x|1),(y|1)
36060 sysui_recents_connection (type|1),(user|1)
36070 sysui_latency (action|1|6),(latency|1|3)
40000 volume_changed (stream|1), (prev_level|1), (level|1), (max_level|1), (caller|3)
40001 stream_devices_changed (stream|1), (prev_devices|1), (devices|1)
40100 camera_gesture_triggered (gesture_on_time|2|3), (sensor1_on_time|2|3), (sensor2_on_time|2|3), (event_extra|1|1)
50000 menu_item_selected (Menu type where 0 is options and 1 is context|1|5),(Menu item title|3)
50001 menu_opened (Menu type where 0 is options and 1 is context|1|5)
50020 connectivity_state_changed (type|1),(subtype|1),(state|1)
50021 wifi_state_changed (wifi_state|3)
50022 wifi_event_handled (wifi_event|1|5)
50023 wifi_supplicant_state_changed (supplicant_state|1|5)
50080 ntp_success (server|3),(rtt|2),(offset|2)
50081 ntp_failure (server|3),(msg|3)
50100 pdp_bad_dns_address (dns_address|3)
50101 pdp_radio_reset_countdown_triggered (out_packet_count|1|1)
50102 pdp_radio_reset (out_packet_count|1|1)
50103 pdp_context_reset (out_packet_count|1|1)
50104 pdp_reregister_network (out_packet_count|1|1)
50105 pdp_setup_fail (cause|1|5), (cid|1|5), (network_type|1|5)
50106 call_drop (cause|1|5), (cid|1|5), (network_type|1|5)
50107 data_network_registration_fail (op_numeric|1|5), (cid|1|5)
50108 data_network_status_on_radio_off (dc_state|3), (enable|1|5)
50109 pdp_network_drop (cid|1|5), (network_type|1|5)
50110 cdma_data_setup_failed (cause|1|5), (cid|1|5), (network_type|1|5)
50111 cdma_data_drop (cid|1|5), (network_type|1|5)
50112 gsm_rat_switched (cid|1|5), (network_from|1|5), (network_to|1|5)
50113 gsm_data_state_change (oldState|3), (newState|3)
50114 gsm_service_state_change (oldState|1|5), (oldGprsState|1|5), (newState|1|5), (newGprsState|1|5)
50115 cdma_data_state_change (oldState|3), (newState|3)
50116 cdma_service_state_change (oldState|1|5), (oldDataState|1|5), (newState|1|5), (newDataState|1|5)
50117 bad_ip_address (ip_address|3)
50118 data_stall_recovery_get_data_call_list (out_packet_count|1|1)
50119 data_stall_recovery_cleanup (out_packet_count|1|1)
50120 data_stall_recovery_reregister (out_packet_count|1|1)
50121 data_stall_recovery_radio_restart (out_packet_count|1|1)
50122 data_stall_recovery_radio_restart_with_prop (out_packet_count|1|1)
50123 gsm_rat_switched_new (cid|1|5), (network_from|1|5), (network_to|1|5)
50125 exp_det_sms_denied_by_user (app_signature|3)
50128 exp_det_sms_sent_by_user (app_signature|3)
51100 netstats_mobile_sample (dev_rx_bytes|2|2),(dev_tx_bytes|2|2),(dev_rx_pkts|2|1),(dev_tx_pkts|2|1),(xt_rx_bytes|2|2),(xt_tx_bytes|2|2),(xt_rx_pkts|2|1),(xt_tx_pkts|2|1),(uid_rx_bytes|2|2),(uid_tx_bytes|2|2),(uid_rx_pkts|2|1),(uid_tx_pkts|2|1),(trusted_time|2|3)
51101 netstats_wifi_sample (dev_rx_bytes|2|2),(dev_tx_bytes|2|2),(dev_rx_pkts|2|1),(dev_tx_pkts|2|1),(xt_rx_bytes|2|2),(xt_tx_bytes|2|2),(xt_rx_pkts|2|1),(xt_tx_pkts|2|1),(uid_rx_bytes|2|2),(uid_tx_bytes|2|2),(uid_rx_pkts|2|1),(uid_tx_pkts|2|1),(trusted_time|2|3)
51200 lockdown_vpn_connecting (egress_net|1)
51201 lockdown_vpn_connected (egress_net|1)
51202 lockdown_vpn_error (egress_net|1)
51300 config_install_failed (dir|3)
51400 ifw_intent_matched (Intent Type|1|5),(Component Name|3),(Caller Uid|1|5),(Caller Pkg Count|1|1),(Caller Pkgs|3),(Action|3),(MIME Type|3),(URI|3),(Flags|1|5)
51500 idle_maintenance_window_start (time|2|3), (lastUserActivity|2|3), (batteryLevel|1|6), (batteryCharging|1|5)
51501 idle_maintenance_window_finish (time|2|3), (lastUserActivity|2|3), (batteryLevel|1|6), (batteryCharging|1|5)
51600 timezone_trigger_check (token|3)
51610 timezone_request_install (token|3)
51611 timezone_install_started (token|3)
51612 timezone_install_complete (token|3), (result|1)
51620 timezone_request_uninstall (token|3)
51621 timezone_uninstall_started (token|3)
51622 timezone_uninstall_complete (token|3), (result|1)
51630 timezone_request_nothing (token|3)
51631 timezone_nothing_complete (token|3)
51690 timezone_check_trigger_received (token_bytes|3)
51691 timezone_check_read_from_data_app (token_bytes|3)
51692 timezone_check_request_uninstall (token_bytes|3)
51693 timezone_check_request_install (token_bytes|3)
51694 timezone_check_request_nothing (token_bytes|3), (success|1)
52000 db_sample (db|3),(sql|3),(time|1|3),(blocking_package|3),(sample_percent|1|6)
52001 http_stats (useragent|3),(response|2|3),(processing|2|3),(tx|1|2),(rx|1|2)
52002 content_query_sample (uri|3),(projection|3),(selection|3),(sortorder|3),(time|1|3),(blocking_package|3),(sample_percent|1|6)
52003 content_update_sample (uri|3),(operation|3),(selection|3),(time|1|3),(blocking_package|3),(sample_percent|1|6)
52004 binder_sample (descriptor|3),(method_num|1|5),(time|1|3),(blocking_package|3),(sample_percent|1|6)
52103 unsupported_motorola_settings_query (uri|3),(selection|3),(whereArgs|3)
52104 persist_motorola_setting_error (message|3)
53000 harmful_app_warning_uninstall (package_name|3)
53001 harmful_app_warning_launch_anyway (package_name|3)
60000 viewroot_draw (Draw time|1|3)
60001 viewroot_layout (Layout time|1|3)
60002 view_build_drawing_cache (View created drawing cache|1|5)
60003 view_use_drawing_cache (View drawn using bitmap cache|1|5)
60100 sf_frame_dur (window|3),(dur0|1),(dur1|1),(dur2|1),(dur3|1),(dur4|1),(dur5|1),(dur6|1)
60110 sf_stop_bootanim (time|2|3)
61000 audioserver_binder_timeout (command|3)
62000 input_interaction (windows|4)
62001 input_focus (window|3),(reason|3)
62002 view_enqueue_input_event (eventType|3),(action|3)
65537 exp_det_netlink_failure (uid|1)
70000 screen_toggled (screen_state|1|5)
70001 intercept_power (action|3),(mPowerKeyHandled|1),(mPowerKeyPressCounter|1)
70101 browser_zoom_level_change (start level|1|5),(end level|1|5),(time|2|3)
70102 browser_double_tap_duration (duration|1|3),(time|2|3)
70150 browser_snap_center
70151 exp_det_attempt_to_call_object_getclass (app_signature|3)
70200 aggregation (aggregation time|2|3)
70201 aggregation_test (field1|1|2),(field2|1|2),(field3|1|2),(field4|1|2),(field5|1|2)
70220 gms_unknown
75000 sqlite_mem_alarm_current (current|1|2)
75001 sqlite_mem_alarm_max (max|1|2)
75002 sqlite_mem_alarm_alloc_attempt (attempts|1|4)
75003 sqlite_mem_released (Memory released|1|2)
75004 sqlite_db_corrupt (Database file corrupt|3)
76001 tts_speak_success (engine|3),(caller_uid|1),(caller_pid|1),(length|1),(locale|3),(rate|1),(pitch|1),(engine_latency|2|3),(engine_total|2|3),(audio_latency|2|3)
76002 tts_speak_failure (engine|3),(caller_uid|1),(caller_pid|1),(length|1),(locale|3),(rate|1),(pitch|1)
76003 tts_v2_speak_success (engine|3),(caller_uid|1),(caller_pid|1),(length|1),(request_config|3),(engine_latency|2|3),(engine_total|2|3),(audio_latency|2|3)
76004 tts_v2_speak_failure (engine|3),(caller_uid|1),(caller_pid|1),(length|1),(request_config|3), (statusCode|1)
78001 exp_det_dispatchCommand_overflow
80100 bionic_event_memcpy_buffer_overflow (uid|1)
80105 bionic_event_strcat_buffer_overflow (uid|1)
80110 bionic_event_memmov_buffer_overflow (uid|1)
80115 bionic_event_strncat_buffer_overflow (uid|1)
80120 bionic_event_strncpy_buffer_overflow (uid|1)
80125 bionic_event_memset_buffer_overflow (uid|1)
80130 bionic_event_strcpy_buffer_overflow (uid|1)
80200 bionic_event_strcat_integer_overflow (uid|1)
80205 bionic_event_strncat_integer_overflow (uid|1)
80300 bionic_event_resolver_old_response (uid|1)
80305 bionic_event_resolver_wrong_server (uid|1)
80310 bionic_event_resolver_wrong_query (uid|1)
81002 dropbox_file_copy (FileName|3),(Size|1),(Tag|3)
90100 exp_det_cert_pin_failure (certs|4)
90200 lock_screen_type (type|3)
90201 exp_det_device_admin_activated_by_user (app_signature|3)
90202 exp_det_device_admin_declined_by_user (app_signature|3)
90203 exp_det_device_admin_uninstalled_by_user (app_signature|3)
90204 settings_latency (action|1|6),(latency|1|3)
150000 car_helper_start
150001 car_helper_boot_phase (phase|1)
150002 car_helper_user_starting (user_id|1)
150003 car_helper_user_switching (from_user_id|1),(to_user_id|1)
150004 car_helper_user_unlocking (user_id|1)
150005 car_helper_user_unlocked (user_id|1)
150006 car_helper_user_stopping (user_id|1)
150007 car_helper_user_stopped (user_id|1)
150008 car_helper_svc_connected (pending_operations|1)
150009 car_helper_hal_request (request_type|1)
150010 car_helper_hal_response (result_code|1)
150011 car_helper_hal_default_behavior (fallback|1),(user_locales|3)
150012 car_helper_hal_start_user (user_id|1),(user_locales|3)
150013 car_helper_hal_create_user (flags|1),(safe_name|3),(user_locales|3)
150050 car_service_init (number_services|1)
150051 car_service_vhal_reconnected (number_services|1)
150052 car_service_set_car_service_helper (pid|1)
150053 car_service_on_user_lifecycle (type|1),(from_user_id|1),(to_user_id|1)
150055 car_service_create (has_vhal|1)
150056 car_service_connected (interface|3)
150057 car_service_destroy (has_vhal|1)
150058 car_service_vhal_died (cookie|2)
150059 car_service_init_boot_user
150060 car_service_on_user_removed (user_id|1)
150100 car_user_svc_initial_user_info_req (request_type|1),(timeout|1)
150101 car_user_svc_initial_user_info_resp (status|1),(action|1),(user_id|1),(flags|1),(safe_name|3),(user_locales|3)
150103 car_user_svc_set_initial_user (user_id|1)
150104 car_user_svc_set_lifecycle_listener (uid|1)
150105 car_user_svc_reset_lifecycle_listener (uid|1)
150106 car_user_svc_switch_user_req (user_id|1),(timeout|1)
150107 car_user_svc_switch_user_resp (hal_callback_status|1),(user_switch_status|1),(error_message|3)
150108 car_user_svc_post_switch_user_req (target_user_id|1),(current_user_id|1)
150109 car_user_svc_get_user_auth_req (uid|1),(user_id|1),(number_types|1)
150110 car_user_svc_get_user_auth_resp (number_values|1)
150111 car_user_svc_switch_user_ui_req (user_id|1)
150112 car_user_svc_switch_user_from_hal_req (request_id|1),(uid|1)
150113 car_user_svc_set_user_auth_req (uid|1),(user_id|1),(number_associations|1)
150114 car_user_svc_set_user_auth_resp (number_values|1),(error_message|3)
150115 car_user_svc_create_user_req (safe_name|3),(user_type|3),(flags|1),(timeout|1)
150116 car_user_svc_create_user_resp (status|1),(result|1),(error_message|3)
150117 car_user_svc_create_user_user_created (user_id|1),(safe_name|3),(user_type|3),(flags|1)
150118 car_user_svc_create_user_user_removed (user_id|1),(reason|3)
150119 car_user_svc_remove_user_req (user_id|1),(hasCallerRestrictions|1)
150120 car_user_svc_remove_user_resp (user_id|1),(result|1)
150121 car_user_svc_notify_app_lifecycle_listener (uid|1),(event_type|1),(from_user_id|1),(to_user_id|1)
150122 car_user_svc_notify_internal_lifecycle_listener (listener_name|3),(event_type|1),(from_user_id|1),(to_user_id|1)
150123 car_user_svc_pre_creation_requested (number_users|1),(number_guests|1)
150124 car_user_svc_pre_creation_status (number_existing_users|1),(number_users_to_add|1),(number_users_to_remove|1),(number_existing_guests|1),(number_guests_to_add|1),(number_guests_to_remove|1),(number_invalid_users_to_remove|1)
150125 car_user_svc_start_user_in_background_req (user_id|1)
150126 car_user_svc_start_user_in_background_resp (user_id|1),(result|1)
150127 car_user_svc_stop_user_req (user_id|1)
150128 car_user_svc_stop_user_resp (user_id|1),(result|1)
150129 car_user_svc_initial_user_info_req_complete (request_type|1)
150140 car_user_hal_initial_user_info_req (request_id|1),(request_type|1),(timeout|1)
150141 car_user_hal_initial_user_info_resp (request_id|1),(status|1),(action|1),(user_id|1),(flags|1),(safe_name|3),(user_locales|3)
150142 car_user_hal_switch_user_req (request_id|1),(user_id|1),(user_flags|1),(timeout|1)
150143 car_user_hal_switch_user_resp (request_id|1),(status|1),(result|1),(error_message|3)
150144 car_user_hal_post_switch_user_req (request_id|1),(target_user_id|1),(current_user_id|1)
150145 car_user_hal_get_user_auth_req (int32values|4)
150146 car_user_hal_get_user_auth_resp (int32values|4),(error_message|3)
150147 car_user_hal_legacy_switch_user_req (request_id|1),(target_user_id|1),(current_user_id|1)
150148 car_user_hal_set_user_auth_req (int32values|4)
150149 car_user_hal_set_user_auth_resp (int32values|4),(error_message|3)
150150 car_user_hal_oem_switch_user_req (request_id|1),(target_user_id|1)
150151 car_user_hal_create_user_req (request_id|1),(safe_name|3),(flags|1),(timeout|1)
150152 car_user_hal_create_user_resp (request_id|1),(status|1),(result|1),(error_message|3)
150153 car_user_hal_remove_user_req (target_user_id|1),(current_user_id|1)
150171 car_user_mgr_add_listener (uid|1)
150172 car_user_mgr_remove_listener (uid|1)
150173 car_user_mgr_disconnected (uid|1)
150174 car_user_mgr_switch_user_req (uid|1),(user_id|1)
150175 car_user_mgr_switch_user_resp (uid|1),(status|1),(error_message|3)
150176 car_user_mgr_get_user_auth_req (types|4)
150177 car_user_mgr_get_user_auth_resp (values|4)
150178 car_user_mgr_set_user_auth_req (types_and_values_pairs|4)
150179 car_user_mgr_set_user_auth_resp (values|4)
150180 car_user_mgr_create_user_req (uid|1),(safe_name|3),(user_type|3),(flags|1)
150181 car_user_mgr_create_user_resp (uid|1),(status|1),(error_message|3)
150182 car_user_mgr_remove_user_req (uid|1),(user_id|1)
150183 car_user_mgr_remove_user_resp (uid|1),(status|1)
150184 car_user_mgr_notify_lifecycle_listener (number_listeners|1),(event_type|1),(from_user_id|1),(to_user_id|1)
150185 car_user_mgr_pre_create_user_req (uid|1)
150200 car_dp_mgr_remove_user_req (uid|1),(user_id|1)
150201 car_dp_mgr_remove_user_resp (uid|1),(status|1)
150202 car_dp_mgr_create_user_req (uid|1),(safe_name|3),(flags|1)
150203 car_dp_mgr_create_user_resp (uid|1),(status|1)
150204 car_dp_mgr_start_user_in_background_req (uid|1),(user_id|1)
150205 car_dp_mgr_start_user_in_background_resp (uid|1),(status|1)
150206 car_dp_mgr_stop_user_req (uid|1),(user_id|1)
150207 car_dp_mgr_stop_user_resp (uid|1),(status|1)
201001 system_update (status|1|5),(download_result|1|5),(bytes|2|2),(url|3)
201002 system_update_user (action|3)
202001 vending_reconstruct (changes|1)
202901 transaction_event (data|3)
203001 sync_details (authority|3),(send|1|2),(recv|1|2),(details|3)
203002 google_http_request (elapsed|2|3),(status|1),(appname|3),(reused|1)
204001 gtalkservice (eventType|1)
204002 gtalk_connection (status|1)
204003 gtalk_conn_close (status|1),(duration|1)
204004 gtalk_heartbeat_reset (interval_and_nt|1),(ip|3)
204005 c2dm (packet_type|1),(persistent_id|3),(stream_id|1),(last_stream_id|1)
205001 setup_server_timeout
205002 setup_required_captcha (action|3)
205003 setup_io_error (status|3)
205004 setup_server_error
205005 setup_retries_exhausted
205006 setup_no_data_network
205007 setup_completed
205008 gls_account_tried (status|1)
205009 gls_account_saved (status|1)
205010 gls_authenticate (status|1),(service|3)
205011 google_mail_switch (direction|1)
206001 snet (payload|3)
206003 exp_det_snet (payload|3)
208000 metrics_heartbeat
210001 security_adb_shell_interactive
210002 security_adb_shell_command (command|3)
210003 security_adb_sync_recv (path|3)
210004 security_adb_sync_send (path|3)
210005 security_app_process_start (process|3),(start_time|2|3),(uid|1),(pid|1),(seinfo|3),(sha256|3)
210006 security_keyguard_dismissed
210007 security_keyguard_dismiss_auth_attempt (success|1),(method_strength|1)
210008 security_keyguard_secured
210009 security_os_startup (boot_state|3),(verity_mode|3)
210010 security_os_shutdown
210011 security_logging_started
210012 security_logging_stopped
210013 security_media_mounted (path|3),(label|3)
210014 security_media_unmounted (path|3),(label|3)
210015 security_log_buffer_size_critical
210016 security_password_expiration_set (package|3),(admin_user|1),(target_user|1),(timeout|2|3)
210017 security_password_complexity_set (package|3),(admin_user|1),(target_user|1),(length|1),(quality|1),(num_letters|1),(num_non_letters|1),(num_numeric|1),(num_uppercase|1),(num_lowercase|1),(num_symbols|1)
210018 security_password_history_length_set (package|3),(admin_user|1),(target_user|1),(length|1)
210019 security_max_screen_lock_timeout_set (package|3),(admin_user|1),(target_user|1),(timeout|2|3)
210020 security_max_password_attempts_set (package|3),(admin_user|1),(target_user|1),(num_failures|1)
210021 security_keyguard_disabled_features_set (package|3),(admin_user|1),(target_user|1),(features|1)
210022 security_remote_lock (package|3),(admin_user|1),(target_user|1)
210023 security_wipe_failed (package|3),(admin_user|1)
210024 security_key_generated (success|1),(key_id|3),(uid|1)
210025 security_key_imported (success|1),(key_id|3),(uid|1)
210026 security_key_destroyed (success|1),(key_id|3),(uid|1)
210027 security_user_restriction_added (package|3),(admin_user|1),(restriction|3)
210028 security_user_restriction_removed (package|3),(admin_user|1),(restriction|3)
210029 security_cert_authority_installed (success|1),(subject|3),(target_user|1)
210030 security_cert_authority_removed (success|1),(subject|3),(target_user|1)
210031 security_crypto_self_test_completed (success|1)
210032 security_key_integrity_violation (key_id|3),(uid|1)
210033 security_cert_validation_failure (reason|3)
210034 security_camera_policy_set (package|3),(admin_user|1),(target_user|1),(disabled|1)
210035 security_password_complexity_required (package|3),(admin_user|1),(target_user|1),(complexity|1)
230000 service_manager_stats (call_count|1),(total_time|1|3),(duration|1|3)
230001 service_manager_slow (time|1|3),(service|3)
275534 notification_unautogrouped (key|3)
300000 arc_system_event (event|3)
524287 sysui_view_visibility (category|1|5),(visible|1|6)
524288 sysui_action (category|1|5),(pkg|3)
524290 sysui_count (name|3),(increment|1)
524291 sysui_histogram (name|3),(bucket|1)
524292 sysui_multi_action (content|4)
525000 commit_sys_config_file (name|3),(time|2|3)
1000301 dc_mm (media_info|3)
1000302 dc_mmlog (log|3)
1010000 bt_hci_timeout (opcode|1)
1010001 bt_config_source (opcode|1)
1010002 bt_hci_unknown_type (hci_type|1)
1030000 wm_rm_from_stopping (User|1|5),(Token|1|5),(Component Name|3),(Reason|3),(Locked|3)
10195355 killinfo (Pid|1|5),(Uid|1|5),(OomAdj|1),(MinOomAdj|1),(TaskSize|1),(enum kill_reasons|1|5),(MemFree|1),(Cached|1),(SwapCached|1),(Buffers|1),(Shmem|1),(Unevictable|1),(SwapTotal|1),(SwapFree|1),(ActiveAnon|1),(InactiveAnon|1),(ActiveFile|1),(InactiveFile|1),(SReclaimable|1),(SUnreclaim|1),(KernelStack|1),(PageTables|1),(IonHeap|1),(IonHeapPool|1),(CmaFree|1),(MsSinceEvent|1),(MsSincePrevWakeup|1),(WakeupsSinceEvent|1),(SkippedWakeups|1),(TaskSwapSize|1),(GPU|1)
1397638484 snet_event_log (subtag|3) (uid|1) (message|3)
1937006964 stats_log (atom_id|1|5),(data|4)

View File

@ -0,0 +1,21 @@
#<src> <mnt_point> <type> <mnt_flags and options> <fs_mgr_flags>
system /system ext4 ro,barrier=1,discard wait,slotselect,avb=vbmeta_system,logical,first_stage_mount,avb_keys=/avb/q-gsi.avbpubkey:/avb/r-gsi.avbpubkey:/avb/s-gsi.avbpubkey
system /system erofs ro wait,slotselect,avb=vbmeta_system,logical,first_stage_mount,avb_keys=/avb/q-gsi.avbpubkey:/avb/r-gsi.avbpubkey:/avb/s-gsi.a>
system_ext /system_ext ext4 ro,barrier=1,discard wait,slotselect,avb=vbmeta_system,logical,first_stage_mount
system_ext /system_ext erofs ro wait,slotselect,avb=vbmeta_system,logical,first_stage_mount
product /product ext4 ro,barrier=1,discard wait,slotselect,avb=vbmeta_system,logical,first_stage_mount
product /product erofs ro wait,slotselect,avb=vbmeta_system,logical,first_stage_mount
vendor /vendor ext4 ro,barrier=1,discard wait,slotselect,avb,logical,first_stage_mount
vendor /vendor erofs ro wait,slotselect,avb,logical,first_stage_mount
vendor_dlkm /vendor_dlkm ext4 ro,barrier=1,discard wait,slotselect,avb,logical,first_stage_mount
vendor_dlkm /vendor_dlkm erofs ro wait,slotselect,avb,logical,first_stage_mount
#odm /odm ext4 ro,barrier=1,discard wait,slotselect,avb,logical,first_stage_mount
/dev/block/by-name/metadata /metadata ext4 noatime,nosuid,nodev,discard wait,check,formattable,first_stage_mount
/dev/block/bootdevice/by-name/persist /mnt/vendor/persist ext4 noatime,nosuid,nodev,barrier=1 wait
/dev/block/bootdevice/by-name/prodpersist /mnt/product/persist ext4 noatime,nosuid,nodev,barrier=1 wait,formattable,nofail
/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,keydirectory=/metadata/vold/metadata_encryption,metadata_encryption=aes-256-xts:wrappedkey_v0,quota,reservedsize=128M,sysfs_path=/sys/devices/platform/soc/1d84000.ufshc,checkpoint=fs
/dev/block/bootdevice/by-name/misc /misc emmc defaults defaults
/dev/block/bootdevice/by-name/modem /vendor/firmware_mnt ext4 ro,nosuid,nodev,context=u:object_r:firmware_file:s0 wait,slotselect
/dev/block/bootdevice/by-name/dsp /vendor/dsp ext4 ro,nosuid,nodev,barrier=1 wait,slotselect
/dev/block/bootdevice/by-name/bluetooth /vendor/bt_firmware ext4 ro,nosuid,nodev,context=u:object_r:bt_firmware_file:s0 wait,slotselect
/dev/block/bootdevice/by-name/fsg /vendor/fsg ext4 ro,nosuid,nodev,context=u:object_r:fsg_file:s0 wait,slotselect

View File

@ -0,0 +1,703 @@
{
"Attributes": [
{
"Name": "LowCapacityCPUs",
"Controller": "cpuset",
"File": "background/cpus"
},
{
"Name": "HighCapacityCPUs",
"Controller": "cpuset",
"File": "foreground/cpus"
},
{
"Name": "MaxCapacityCPUs",
"Controller": "cpuset",
"File": "top-app/cpus"
},
{
"Name": "AudioAppCapacityCPUs",
"Controller": "cpuset",
"File": "audio-app/cpus"
},
{
"Name": "MemLimit",
"Controller": "memory",
"File": "memory.limit_in_bytes"
},
{
"Name": "MemSoftLimit",
"Controller": "memory",
"File": "memory.soft_limit_in_bytes"
},
{
"Name": "MemSwappiness",
"Controller": "memory",
"File": "memory.swappiness"
},
{
"Name": "UClampMin",
"Controller": "cpu",
"File": "cpu.uclamp.min"
},
{
"Name": "UClampMax",
"Controller": "cpu",
"File": "cpu.uclamp.max"
},
{
"Name": "UClampLatencySensitive",
"Controller": "cpu",
"File": "cpu.uclamp.latency_sensitive"
},
{
"Name": "FreezerState",
"Controller": "freezer",
"File": "cgroup.freeze"
}
],
"Profiles": [
{
"Name": "HighEnergySaving",
"Actions": [
{
"Name": "JoinCgroup",
"Params":
{
"Controller": "cpu",
"Path": "background"
}
}
]
},
{
"Name": "Frozen",
"Actions": [
{
"Name": "SetAttribute",
"Params":
{
"Name": "FreezerState",
"Value": "1"
}
}
]
},
{
"Name": "Unfrozen",
"Actions": [
{
"Name": "SetAttribute",
"Params":
{
"Name": "FreezerState",
"Value": "0"
}
}
]
},
{
"Name": "NormalPerformance",
"Actions": [
{
"Name": "JoinCgroup",
"Params":
{
"Controller": "cpu",
"Path": "system"
}
}
]
},
{
"Name": "ServicePerformance",
"Actions": [
{
"Name": "JoinCgroup",
"Params":
{
"Controller": "cpu",
"Path": "system-background"
}
}
]
},
{
"Name": "HighPerformance",
"Actions": [
{
"Name": "JoinCgroup",
"Params":
{
"Controller": "cpu",
"Path": "foreground"
}
}
]
},
{
"Name": "MaxPerformance",
"Actions": [
{
"Name": "JoinCgroup",
"Params":
{
"Controller": "cpu",
"Path": "top-app"
}
}
]
},
{
"Name": "RealtimePerformance",
"Actions": [
{
"Name": "JoinCgroup",
"Params":
{
"Controller": "cpu",
"Path": "rt"
}
}
]
},
{
"Name": "CameraServicePerformance",
"Actions": [
{
"Name": "JoinCgroup",
"Params":
{
"Controller": "cpu",
"Path": "camera-daemon"
}
}
]
},
{
"Name": "AudioAppPerformance",
"Actions" : [
{
"Name" : "JoinCgroup",
"Params" :
{
"Controller": "schedtune",
"Path": "audio-app"
}
}
]
},
{
"Name": "NNApiHALPerformance",
"Actions": [
{
"Name": "JoinCgroup",
"Params":
{
"Controller": "cpu",
"Path": "nnapi-hal"
}
}
]
},
{
"Name": "CpuPolicySpread",
"Actions": [
{
"Name": "SetAttribute",
"Params":
{
"Name": "UClampLatencySensitive",
"Value": "1"
}
}
]
},
{
"Name": "CpuPolicyPack",
"Actions": [
{
"Name": "SetAttribute",
"Params":
{
"Name": "UClampLatencySensitive",
"Value": "0"
}
}
]
},
{
"Name": "VrKernelCapacity",
"Actions": [
{
"Name": "JoinCgroup",
"Params":
{
"Controller": "cpuset",
"Path": ""
}
}
]
},
{
"Name": "VrServiceCapacityLow",
"Actions": [
{
"Name": "JoinCgroup",
"Params":
{
"Controller": "cpuset",
"Path": "system/background"
}
}
]
},
{
"Name": "VrServiceCapacityNormal",
"Actions": [
{
"Name": "JoinCgroup",
"Params":
{
"Controller": "cpuset",
"Path": "system"
}
}
]
},
{
"Name": "VrServiceCapacityHigh",
"Actions": [
{
"Name": "JoinCgroup",
"Params":
{
"Controller": "cpuset",
"Path": "system/performance"
}
}
]
},
{
"Name": "VrProcessCapacityLow",
"Actions": [
{
"Name": "JoinCgroup",
"Params":
{
"Controller": "cpuset",
"Path": "application/background"
}
}
]
},
{
"Name": "VrProcessCapacityNormal",
"Actions": [
{
"Name": "JoinCgroup",
"Params":
{
"Controller": "cpuset",
"Path": "application"
}
}
]
},
{
"Name": "VrProcessCapacityHigh",
"Actions": [
{
"Name": "JoinCgroup",
"Params":
{
"Controller": "cpuset",
"Path": "application/performance"
}
}
]
},
{
"Name": "ProcessCapacityLow",
"Actions": [
{
"Name": "JoinCgroup",
"Params":
{
"Controller": "cpuset",
"Path": "background"
}
}
]
},
{
"Name": "ProcessCapacityNormal",
"Actions": [
{
"Name": "JoinCgroup",
"Params":
{
"Controller": "cpuset",
"Path": ""
}
}
]
},
{
"Name": "ProcessCapacityHigh",
"Actions": [
{
"Name": "JoinCgroup",
"Params":
{
"Controller": "cpuset",
"Path": "foreground"
}
}
]
},
{
"Name": "ProcessCapacityMax",
"Actions": [
{
"Name": "JoinCgroup",
"Params":
{
"Controller": "cpuset",
"Path": "top-app"
}
}
]
},
{
"Name": "ServiceCapacityLow",
"Actions": [
{
"Name": "JoinCgroup",
"Params":
{
"Controller": "cpuset",
"Path": "system-background"
}
}
]
},
{
"Name": "ServiceCapacityRestricted",
"Actions": [
{
"Name": "JoinCgroup",
"Params":
{
"Controller": "cpuset",
"Path": "restricted"
}
}
]
},
{
"Name": "CameraServiceCapacity",
"Actions": [
{
"Name": "JoinCgroup",
"Params":
{
"Controller": "cpuset",
"Path": "camera-daemon"
}
}
]
},
{
"Name": "AudioAppCapacity",
"Actions" : [
{
"Name" : "JoinCgroup",
"Params" :
{
"Controller": "cpuset",
"Path": "audio-app"
}
}
]
},
{
"Name": "BlkIOForeground",
"Actions" : [
{
"Name" : "JoinCgroup",
"Params" :
{
"Controller": "blkio",
"Path": ""
}
}
]
},
{
"Name": "BlkIOBackground",
"Actions" : [
{
"Name" : "JoinCgroup",
"Params" :
{
"Controller": "blkio",
"Path": "bg"
}
}
]
},
{
"Name": "LowIoPriority",
"Actions": [
{
"Name": "JoinCgroup",
"Params":
{
"Controller": "blkio",
"Path": "background"
}
}
]
},
{
"Name": "NormalIoPriority",
"Actions": [
{
"Name": "JoinCgroup",
"Params":
{
"Controller": "blkio",
"Path": ""
}
}
]
},
{
"Name": "HighIoPriority",
"Actions": [
{
"Name": "JoinCgroup",
"Params":
{
"Controller": "blkio",
"Path": ""
}
}
]
},
{
"Name": "MaxIoPriority",
"Actions": [
{
"Name": "JoinCgroup",
"Params":
{
"Controller": "blkio",
"Path": ""
}
}
]
},
{
"Name": "TimerSlackHigh",
"Actions": [
{
"Name": "SetTimerSlack",
"Params":
{
"Slack": "10000000"
}
}
]
},
{
"Name": "TimerSlackNormal",
"Actions": [
{
"Name": "SetTimerSlack",
"Params":
{
"Slack": "50000"
}
}
]
},
{
"Name": "SFMainPolicy",
"Actions": [
{
"Name": "JoinCgroup",
"Params":
{
"Controller": "cpuset",
"Path": "system-background"
}
}
]
},
{
"Name": "SFRenderEnginePolicy",
"Actions": [
{
"Name": "JoinCgroup",
"Params":
{
"Controller": "cpuset",
"Path": "system-background"
}
}
]
},
{
"Name": "PerfBoost",
"Actions": [
{
"Name": "SetClamps",
"Params":
{
"Boost": "50%",
"Clamp": "0"
}
}
]
},
{
"Name": "PerfClamp",
"Actions": [
{
"Name": "SetClamps",
"Params":
{
"Boost": "0",
"Clamp": "30%"
}
}
]
},
{
"Name": "LowMemoryUsage",
"Actions": [
{
"Name": "SetAttribute",
"Params":
{
"Name": "MemSoftLimit",
"Value": "16MB"
}
},
{
"Name": "SetAttribute",
"Params":
{
"Name": "MemSwappiness",
"Value": "150"
}
}
]
},
{
"Name": "HighMemoryUsage",
"Actions": [
{
"Name": "SetAttribute",
"Params":
{
"Name": "MemSoftLimit",
"Value": "512MB"
}
},
{
"Name": "SetAttribute",
"Params":
{
"Name": "MemSwappiness",
"Value": "100"
}
}
]
},
{
"Name": "SystemMemoryProcess",
"Actions": [
{
"Name": "JoinCgroup",
"Params":
{
"Controller": "memory",
"Path": "system"
}
}
]
}
],
"AggregateProfiles": [
{
"Name": "SCHED_SP_DEFAULT",
"Profiles": [ "TimerSlackNormal" ]
},
{
"Name": "SCHED_SP_BACKGROUND",
"Profiles": [ "HighEnergySaving", "LowIoPriority", "TimerSlackHigh" ]
},
{
"Name": "SCHED_SP_FOREGROUND",
"Profiles": [ "HighPerformance", "HighIoPriority", "TimerSlackNormal" ]
},
{
"Name": "SCHED_SP_TOP_APP",
"Profiles": [ "MaxPerformance", "MaxIoPriority", "TimerSlackNormal" ]
},
{
"Name": "SCHED_SP_SYSTEM",
"Profiles": [ "ServicePerformance", "LowIoPriority", "TimerSlackNormal" ]
},
{
"Name": "SCHED_SP_RT_APP",
"Profiles": [ "RealtimePerformance", "MaxIoPriority", "TimerSlackNormal" ]
},
{
"Name": "CPUSET_SP_DEFAULT",
"Profiles": [ "TimerSlackNormal" ]
},
{
"Name": "CPUSET_SP_BACKGROUND",
"Profiles": [ "HighEnergySaving", "ProcessCapacityLow", "LowIoPriority", "TimerSlackHigh" ]
},
{
"Name": "CPUSET_SP_FOREGROUND",
"Profiles": [ "HighPerformance", "ProcessCapacityHigh", "HighIoPriority", "TimerSlackNormal" ]
},
{
"Name": "CPUSET_SP_TOP_APP",
"Profiles": [ "MaxPerformance", "ProcessCapacityMax", "MaxIoPriority", "TimerSlackNormal" ]
},
{
"Name": "CPUSET_SP_SYSTEM",
"Profiles": [ "ServiceCapacityLow", "TimerSlackNormal" ]
},
{
"Name": "CPUSET_SP_RESTRICTED",
"Profiles": [ "ServiceCapacityRestricted", "TimerSlackNormal" ]
},
{
"Name": "Dex2OatBootComplete",
"Profiles": [ "SCHED_SP_BACKGROUND" ]
}
]
}

View File

@ -0,0 +1,67 @@
# 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
# Currently we dont have e2fsck compiled. So fs check would failed.
#<mount_point> <fstype> <device> <device2> <flags>
# Boot partitions
/boot emmc /dev/block/bootdevice/by-name/boot flags=display="Boot";slotselect;backup=1;flashimg=1
/dtbo emmc /dev/block/bootdevice/by-name/dtbo flags=display="DTBO";slotselect;backup=1;flashimg=1
/vendor_boot emmc /dev/block/bootdevice/by-name/vendor_boot flags=display="Vendor Boot";slotselect;backup=1;flashimg=1
/vbmeta emmc /dev/block/bootdevice/by-name/vbmeta flags=display="VBMeta";slotselect;backup=1;flashimg=1
/vbmeta_system emmc /dev/block/bootdevice/by-name/vbmeta_system flags=display="System VBMeta";slotselect;backup=1;flashimg=1
/recovery emmc /dev/block/bootdevice/by-name/recovery flags=display="Recovery";slotselect;backup=1;flashimg=1
/logo emmc /dev/block/bootdevice/by-name/logo flags=display="Logo";slotselect;backup=1
/misc emmc /dev/block/bootdevice/by-name/misc flags=display="Misc"
# Logical partitions
/system ext4 system flags=display="System"
/system erofs system flags=display="System"
/system_ext ext4 system_ext flags=display="System EXT"
/system_ext erofs system_ext flags=display="System EXT"
/product ext4 product flags=display="Product"
/product erofs product flags=display="Product"
/vendor ext4 vendor flags=display="Vendor"
/vendor erofs vendor flags=display="Vendor"
/vendor_dlkm ext4 vendor_dlkm flags=display="Vendor DLKM"
/vendor_dlkm erofs vendor_dlkm flags=display="Vendor DLKM"
# Flashable logical partitions
/system_image emmc /dev/block/bootdevice/by-name/system flags=display="System Image";backup=1;flashimg=1
/system_ext_image emmc /dev/block/bootdevice/by-name/system_ext flags=display="System EXT Image";backup=1;flashimg=1
/product_image emmc /dev/block/bootdevice/by-name/product flags=display="Product Image";backup=1;flashimg=1
/vendor_image emmc /dev/block/bootdevice/by-name/vendor flags=display="Vendor Image";backup=1;flashimg=1
/vendor_dlkm_image emmc /dev/block/bootdevice/by-name/vendor_dlkm flags=display="Vendor DLKM Image";backup=1;flashimg=1
# Data partitions
/metadata ext4 /dev/block/by-name/metadata flags=display="Metadata"
# Firmware partitions
/persist ext4 /dev/block/bootdevice/by-name/persist flags=display="Persist"
/persist_image emmc /dev/block/bootdevice/by-name/persist flags=display="Persist";backup=1;flashimg=1
/prodpersist ext4 /dev/block/bootdevice/by-name/prodpersist flags=display="Product Persist"
/prodpersist_image emmc /dev/block/bootdevice/by-name/prodpersist flags=display="Product Persist";backup=1;flashimg=1
/firmware ext4 /dev/block/bootdevice/by-name/modem flags=display="Firmware";slotselect;fsflags="context=u:object_r:firmware_file:s0"
/bt_firmware ext4 /dev/block/bootdevice/by-name/bluetooth flags=display="Bluetooth";slotselect;fsflags="context=u:object_r:bt_firmware_file:s0"
/fsg ext4 /dev/block/bootdevice/by-name/fsg flags=display="FSG";slotselect;fsflags="context=u:object_r:fsg_file:s0"
/dsp ext4 /dev/block/bootdevice/by-name/dsp flags=display="DSP";slotselect
/modem_image emmc /dev/block/bootdevice/by-name/modem flags=display="Modem";slotselect;backup=1;flashimg=1
/bluetooth_image emmc /dev/block/bootdevice/by-name/bluetooth flags=display="Bluetooth";slotselect;backup=1;flashimg=1
/dsp_image emmc /dev/block/bootdevice/by-name/dsp flags=display="DSP";slotselect;backup=1;flashimg=1
/efs1 emmc /dev/block/bootdevice/by-name/modemst1 flags=display="EFS";backup=1
/efs2 emmc /dev/block/bootdevice/by-name/modemst2 flags=backup=1;subpartitionof=/efs1
/efsc emmc /dev/block/bootdevice/by-name/fsc flags=backup=1;subpartitionof=/efs1
/efsg emmc /dev/block/bootdevice/by-name/fsg flags=backup=1;subpartitionof=/efs1
# Removable storage
/usb_otg auto /dev/block/sdg1 /dev/block/sdg flags=display="USB-Storage";storage;wipeingui;removable
/storage ext4 /data/media/0 flags=display="Internal Storage";usermrf;backup=1;fsflags="bind";removable

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,154 @@
<!--
Input:
manifest.xml
framework_manifest.xml
-->
<manifest version="4.0" type="framework">
<hal format="hidl">
<name>android.frameworks.displayservice</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IDisplayService</name>
<instance>default</instance>
</interface>
<fqname>@1.0::IDisplayService/default</fqname>
</hal>
<hal format="hidl" max-level="5">
<name>android.frameworks.schedulerservice</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>ISchedulingPolicyService</name>
<instance>default</instance>
</interface>
<fqname>@1.0::ISchedulingPolicyService/default</fqname>
</hal>
<hal format="hidl">
<name>android.frameworks.sensorservice</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>ISensorManager</name>
<instance>default</instance>
</interface>
<fqname>@1.0::ISensorManager/default</fqname>
</hal>
<hal format="hidl">
<name>android.hidl.manager</name>
<transport>hwbinder</transport>
<version>1.2</version>
<interface>
<name>IServiceManager</name>
<instance>default</instance>
</interface>
<fqname>@1.2::IServiceManager/default</fqname>
</hal>
<hal format="hidl">
<name>android.hidl.memory</name>
<transport arch="32+64">passthrough</transport>
<version>1.0</version>
<interface>
<name>IMapper</name>
<instance>ashmem</instance>
</interface>
<fqname>@1.0::IMapper/ashmem</fqname>
</hal>
<hal format="hidl">
<name>android.hidl.token</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>ITokenManager</name>
<instance>default</instance>
</interface>
<fqname>@1.0::ITokenManager/default</fqname>
</hal>
<hal format="hidl">
<name>android.system.net.netd</name>
<transport>hwbinder</transport>
<version>1.1</version>
<interface>
<name>INetd</name>
<instance>default</instance>
</interface>
<fqname>@1.1::INetd/default</fqname>
</hal>
<hal format="hidl">
<name>android.system.wifi.keystore</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IKeystore</name>
<instance>default</instance>
</interface>
<fqname>@1.0::IKeystore/default</fqname>
</hal>
<hal format="native">
<name>netutils-wrapper</name>
<version>1.0</version>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.qccsyshal</name>
<transport>hwbinder</transport>
<version>1.1</version>
<interface>
<name>IQccsyshal</name>
<instance>qccsyshal</instance>
</interface>
<fqname>@1.1::IQccsyshal/qccsyshal</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.radio.atcmdfwd</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IAtCmdFwd</name>
<instance>AtCmdFwdService</instance>
</interface>
<fqname>@1.0::IAtCmdFwd/AtCmdFwdService</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.sigma_miracast</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>Isigma_miracast</name>
<instance>sigmahal</instance>
<instance>sigmahal64</instance>
</interface>
<fqname>@1.0::Isigma_miracast/sigmahal</fqname>
<fqname>@1.0::Isigma_miracast/sigmahal64</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.systemhelper</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>ISystemEvent</name>
<instance>default</instance>
</interface>
<interface>
<name>ISystemResource</name>
<instance>default</instance>
</interface>
<fqname>@1.0::ISystemEvent/default</fqname>
<fqname>@1.0::ISystemResource/default</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.wifi.keystore</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IKeystoreExt</name>
<instance>default</instance>
</interface>
<fqname>@1.0::IKeystoreExt/default</fqname>
</hal>
<system-sdk>
<version>28</version>
<version>29</version>
<version>30</version>
<version>31</version>
</system-sdk>
</manifest>

View File

@ -0,0 +1,61 @@
<!--
Copyright (c) 2017 Qualcomm Technologies, Inc.
All Rights Reserved.
Confidential and Proprietary - Qualcomm Technologies, Inc.
-->
<!--
This file is configured by OEM to customize the path used by GP FS listener
service to save files, and will be located in /vendor/etc on device
"gp_data_path" and "gp_persist_path" are the /data and /persist partition
path to save files, respectively.
By default, "gp_data_path" is "/data/vendor/tzstorage/", and
"gp_persist_path" is "/mnt/vendor/persist/data/".
To replace with different paths, please also create folder in init.qcom.rc
file and update SEAndroid policy.
Take "/data/vendor/tzstorage/" as an example below,
A) rootdir/etc/init.qcom.rc:
# Create /data/vendor/tzstorage directory for SFS listener
mkdir /data/vendor/tzstorage 0770 system system
B) common/file.te:
# SFS listener data file
type data_tzstorage_file, file_type, data_file_type;
C) common/file_contexts:
/data/vendor/tzstorage(/.*)? u:object_r:data_tzstorage_file:s0
D) common/qseecomd.te:
# Allow SFS to write to data partition
allow tee data_tzstorage_file:dir create_dir_perms;
allow tee data_tzstorage_file:file create_file_perms;
"gp_whitelist_count" and "gp_whitelist_path"
Some paths needs "/data/vendor/tzstorage" appended to it at the beginning
as they do not have access/permissions on their own.
Use gp_whitelist_count and gp_whitelist_paths entries to add more such paths.
By default, we add "/data/system/users" and "/data/misc/qsee" for current use
cases.
To add an extra path, increment the count in gp_whitelist_count and add a new
gp_whitelist_path entry. It is very critical that the count matches with the
number of path entries.
-->
<sfs_path>
<gp_data_path> /data/vendor/tzstorage/ </gp_data_path>
<gp_persist_path> /mnt/vendor/persist/data/ </gp_persist_path>
<gp_whitelist_count> 4 </gp_whitelist_count>
<gp_whitelist_path> /data/system/users/ </gp_whitelist_path>
<gp_whitelist_path> /data/misc/qsee/ </gp_whitelist_path>
<gp_whitelist_path> /qwes </gp_whitelist_path>
<gp_whitelist_path> /qwes/licenses </gp_whitelist_path>
</sfs_path>

View File

@ -0,0 +1,10 @@
on property:hwservicemanager.ready=true && property:vendor.sys.listeners.registered=true
start keymaster-4-1-qti
start keymaster-sb-4-0
service keymaster-sb-4-0 /system/bin/android.hardware.keymaster@4.0-strongbox-service-qti
user root
group root
setenv LD_LIBRARY_PATH /vendor/lib64:/vendor/lib:/system/lib64:/system/lib:/sbin
disabled
seclabel u:r:recovery:s0

View File

@ -0,0 +1,13 @@
# Copyright (c) 2021 Qualcomm Technologies, Inc.
# All Rights Reserved.
# Confidential and Proprietary - Qualcomm Technologies, Inc.
on property:hwservicemanager.ready=true && property:vendor.sys.listeners.registered=true
start keymint-qti
service keymint-qti /system/bin/android.hardware.security.keymint-service-qti
user root
group root
setenv LD_LIBRARY_PATH /vendor/lib64:/vendor/lib:/system/lib64:/system/lib:/sbin
disabled
seclabel u:r:recovery:s0

View File

@ -0,0 +1,19 @@
on post-fs
start vendor.spdaemon
start vendor.sec_nvm
service vendor.spdaemon /system/bin/spdaemon
user root
group root
setenv LD_LIBRARY_PATH /vendor/lib64:/vendor/lib:/system/lib64:/system/lib:/sbin
disabled
seclabel u:r:recovery:s0
shutdown critical
service vendor.sec_nvm /system/bin/sec_nvm
user root
group root
setenv LD_LIBRARY_PATH /vendor/lib64:/vendor/lib:/system/lib64:/system/lib:/sbin
disabled
seclabel u:r:recovery:s0

View File

@ -0,0 +1,15 @@
#####################################################################
# Copyright (c) 2021-2022 Qualcomm Technologies, Inc.
# All Rights Reserved.
# Confidential and Proprietary - Qualcomm Technologies, Inc.
#####################################################################
on boot
start spuservice
service spuservice /system/bin/vendor.qti.spu@2.0-service
user root
group root
setenv LD_LIBRARY_PATH /vendor/lib64:/vendor/lib:/system/lib64:/system/lib:/sbin
disabled
seclabel u:r:recovery:s0

View File

@ -0,0 +1,15 @@
#####################################################################
# Copyright (c) 2019-2022 Qualcomm Technologies, Inc.
# All Rights Reserved.
# Confidential and Proprietary - Qualcomm Technologies, Inc.
#####################################################################
on boot
start spu_service
service spu_service /system/bin/vendor.qti.spu@1.1-service
user root
group root
setenv LD_LIBRARY_PATH /vendor/lib64:/vendor/lib:/system/lib64:/system/lib:/sbin
disabled
seclabel u:r:recovery:s0

View File

@ -0,0 +1,9 @@
on property:ro.crypto.state=encrypted && property:hwservicemanager.ready=true
start qteeconnector-hal-1-0
service qteeconnector-hal-1-0 /system/bin/vendor.qti.hardware.qteeconnector@1.0-service
user root
group root
setenv LD_LIBRARY_PATH /vendor/lib64:/vendor/lib:/system/lib64:/system/lib:/sbin
disabled
seclabel u:r:recovery:s0

View File

@ -0,0 +1,22 @@
on late-init
write /sys/class/leds/vibrator/trigger "transient"
on late-fs
chmod 0666 /dev/qcom_haptic
chown system system /dev/qcom_haptic
on boot
start qti.vibrator
on property:sys.boot_completed=1
setprop vendor.haptic.calibrate.done 1
service qti.vibrator /system/bin/vendor.qti.hardware.vibrator.service
class hal
user root
group root
disabled
setenv LD_LIBRARY_PATH /vendor/lib64:/vendor/lib:/system/lib64:/system/lib:/sbin
setenv RICHTAP_DEVICE_PATH /dev/qcom_haptic
setenv ENV_RICHTAP_CONFIG_PATH /odm/etc/aac_richtap.config
seclabel u:r:recovery:s0

View File

@ -0,0 +1,85 @@
<!--
Input:
compatibility_matrix.xml
-->
<compatibility-matrix version="4.0" type="device">
<hal format="hidl" optional="false">
<name>android.frameworks.sensorservice</name>
<version>1.0</version>
<interface>
<name>ISensorManager</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl" optional="false">
<name>android.hidl.allocator</name>
<version>1.0</version>
<interface>
<name>IAllocator</name>
<instance>ashmem</instance>
</interface>
</hal>
<hal format="hidl" optional="false">
<name>android.hidl.manager</name>
<version>1.0</version>
<interface>
<name>IServiceManager</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl" optional="false">
<name>android.hidl.memory</name>
<version>1.0</version>
<interface>
<name>IMapper</name>
<instance>ashmem</instance>
</interface>
</hal>
<hal format="hidl" optional="false">
<name>android.hidl.token</name>
<version>1.0</version>
<interface>
<name>ITokenManager</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl" optional="false">
<name>android.system.wifi.keystore</name>
<version>1.0</version>
<interface>
<name>IKeystore</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl" optional="true">
<name>vendor.qti.hardware.qccsyshal</name>
<version>1.0-1</version>
<interface>
<name>IQccsyshal</name>
<instance>qccsyshal</instance>
</interface>
</hal>
<hal format="hidl" optional="true">
<name>vendor.qti.hardware.sigma_miracast</name>
<version>1.0</version>
<interface>
<name>Isigma_miracast</name>
<instance>sigmahal</instance>
<instance>sigmahal64</instance>
</interface>
</hal>
<hal format="hidl" optional="true">
<name>vendor.qti.hardware.wifi.keystore</name>
<version>1.0</version>
<interface>
<name>IKeystoreExt</name>
<instance>default</instance>
</interface>
</hal>
<vendor-ndk>
<version>31</version>
</vendor-ndk>
<system-sdk>
<version>31</version>
</system-sdk>
</compatibility-matrix>

View File

@ -0,0 +1,857 @@
<!--
Input:
manifest_cape.xml
manifest_mot8450.xml
manifest_bronco.xml
paramupdater_manifest.xml
manifest.xml
-->
<manifest version="4.0" type="device" target-level="6">
<hal format="hidl">
<name>android.hardware.audio</name>
<transport>hwbinder</transport>
<version>7.0</version>
<interface>
<name>IDevicesFactory</name>
<instance>default</instance>
</interface>
<fqname>@7.0::IDevicesFactory/default</fqname>
</hal>
<hal format="hidl">
<name>android.hardware.audio.effect</name>
<transport>hwbinder</transport>
<version>7.0</version>
<interface>
<name>IEffectsFactory</name>
<instance>default</instance>
</interface>
<fqname>@7.0::IEffectsFactory/default</fqname>
</hal>
<hal format="hidl">
<name>android.hardware.biometrics.fingerprint</name>
<transport>hwbinder</transport>
<version>2.1</version>
<interface>
<name>IBiometricsFingerprint</name>
<instance>default</instance>
</interface>
<fqname>@2.1::IBiometricsFingerprint/default</fqname>
</hal>
<hal format="hidl">
<name>android.hardware.bluetooth</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IBluetoothHci</name>
<instance>default</instance>
</interface>
<fqname>@1.0::IBluetoothHci/default</fqname>
</hal>
<hal format="hidl">
<name>android.hardware.bluetooth.audio</name>
<transport>hwbinder</transport>
<version>2.0</version>
<interface>
<name>IBluetoothAudioProvidersFactory</name>
<instance>default</instance>
</interface>
<fqname>@2.0::IBluetoothAudioProvidersFactory/default</fqname>
</hal>
<hal format="hidl">
<name>android.hardware.boot</name>
<transport>hwbinder</transport>
<version>1.2</version>
<interface>
<name>IBootControl</name>
<instance>default</instance>
</interface>
<fqname>@1.2::IBootControl/default</fqname>
</hal>
<hal format="hidl">
<name>android.hardware.camera.provider</name>
<transport>hwbinder</transport>
<version>2.7</version>
<interface>
<name>ICameraProvider</name>
<instance>legacy/1</instance>
</interface>
<fqname>@2.7::ICameraProvider/legacy/1</fqname>
</hal>
<hal format="hidl">
<name>android.hardware.camera.provider</name>
<transport>hwbinder</transport>
<fqname>@2.4::ICameraProvider/external/0</fqname>
</hal>
<hal format="hidl">
<name>android.hardware.drm</name>
<transport>hwbinder</transport>
<fqname>@1.3::ICryptoFactory/wfdhdcp</fqname>
<fqname>@1.3::IDrmFactory/wfdhdcp</fqname>
</hal>
<hal format="hidl">
<name>android.hardware.gatekeeper</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IGatekeeper</name>
<instance>default</instance>
</interface>
<fqname>@1.0::IGatekeeper/default</fqname>
</hal>
<hal format="hidl">
<name>android.hardware.keymaster</name>
<transport>hwbinder</transport>
<fqname>@4.1::IKeymasterDevice/default</fqname>
</hal>
<hal format="hidl">
<name>android.hardware.keymaster</name>
<transport>hwbinder</transport>
<fqname>@4.0::IKeymasterDevice/strongbox</fqname>
</hal>
<hal format="hidl">
<name>android.hardware.media.omx</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IOmx</name>
<instance>default</instance>
</interface>
<interface>
<name>IOmxStore</name>
<instance>default</instance>
</interface>
<fqname>@1.0::IOmx/default</fqname>
<fqname>@1.0::IOmxStore/default</fqname>
</hal>
<hal format="hidl">
<name>android.hardware.nfc</name>
<transport>hwbinder</transport>
<version>1.2</version>
<interface>
<name>INfc</name>
<instance>default</instance>
</interface>
<fqname>@1.2::INfc/default</fqname>
</hal>
<hal format="hidl">
<name>android.hardware.radio</name>
<transport>hwbinder</transport>
<fqname>@1.2::ISap/slot1</fqname>
<fqname>@1.2::ISap/slot2</fqname>
<fqname>@1.6::IRadio/slot1</fqname>
<fqname>@1.6::IRadio/slot2</fqname>
</hal>
<hal format="hidl">
<name>android.hardware.radio.config</name>
<transport>hwbinder</transport>
<version>1.3</version>
<interface>
<name>IRadioConfig</name>
<instance>default</instance>
</interface>
<fqname>@1.3::IRadioConfig/default</fqname>
</hal>
<hal format="hidl">
<name>android.hardware.secure_element</name>
<transport>hwbinder</transport>
<version>1.2</version>
<interface>
<name>ISecureElement</name>
<instance>SIM1</instance>
<instance>SIM2</instance>
<instance>eSE1</instance>
</interface>
<fqname>@1.2::ISecureElement/SIM1</fqname>
<fqname>@1.2::ISecureElement/SIM2</fqname>
<fqname>@1.2::ISecureElement/eSE1</fqname>
</hal>
<hal format="hidl">
<name>android.hardware.tetheroffload.config</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IOffloadConfig</name>
<instance>default</instance>
</interface>
<fqname>@1.0::IOffloadConfig/default</fqname>
</hal>
<hal format="hidl">
<name>android.hardware.tetheroffload.control</name>
<transport>hwbinder</transport>
<version>1.1</version>
<interface>
<name>IOffloadControl</name>
<instance>default</instance>
</interface>
<fqname>@1.1::IOffloadControl/default</fqname>
</hal>
<hal format="hidl">
<name>com.motorola.hardware.biometric.fingerprint</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IMotoFingerPrint</name>
<instance>default</instance>
</interface>
<interface>
<name>IMotoFingerPrintSensorTest</name>
<instance>default</instance>
</interface>
<fqname>@1.0::IMotoFingerPrint/default</fqname>
<fqname>@1.0::IMotoFingerPrintSensorTest/default</fqname>
</hal>
<hal format="hidl" override="true">
<name>com.motorola.hardware.display.panel</name>
<transport>hwbinder</transport>
<version>1.1</version>
<interface>
<name>IDisplayPanel</name>
<instance>default</instance>
</interface>
<fqname>@1.1::IDisplayPanel/default</fqname>
</hal>
<hal format="hidl" override="true">
<name>com.motorola.hardware.display.touch</name>
<transport>hwbinder</transport>
<version>1.2</version>
<interface>
<name>IMotTouch</name>
<instance>default</instance>
</interface>
<fqname>@1.2::IMotTouch/default</fqname>
</hal>
<hal format="hidl">
<name>com.qualcomm.qti.dpm.api</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IdpmQmi</name>
<instance>dpmQmiService</instance>
</interface>
<fqname>@1.0::IdpmQmi/dpmQmiService</fqname>
</hal>
<hal format="hidl">
<name>com.qualcomm.qti.imscmservice</name>
<transport>hwbinder</transport>
<version>2.2</version>
<interface>
<name>IImsCmService</name>
<instance>qti.ims.connectionmanagerservice</instance>
</interface>
<fqname>@2.2::IImsCmService/qti.ims.connectionmanagerservice</fqname>
</hal>
<hal format="hidl">
<name>com.qualcomm.qti.uceservice</name>
<transport>hwbinder</transport>
<version>2.3</version>
<interface>
<name>IUceService</name>
<instance>com.qualcomm.qti.uceservice</instance>
</interface>
<fqname>@2.3::IUceService/com.qualcomm.qti.uceservice</fqname>
</hal>
<hal format="hidl">
<name>motorola.hardware.camera.desktop</name>
<transport>hwbinder</transport>
<version>1.0</version>
<version>2.0</version>
<interface>
<name>ICameraDesktop</name>
<instance>default</instance>
</interface>
<fqname>@1.0::ICameraDesktop/default</fqname>
<fqname>@2.0::ICameraDesktop/default</fqname>
</hal>
<hal format="hidl">
<name>motorola.hardware.camera.imgtuner</name>
<transport>hwbinder</transport>
<version>1.0</version>
<version>2.0</version>
<interface>
<name>IImageTuning</name>
<instance>default</instance>
</interface>
<fqname>@1.0::IImageTuning/default</fqname>
<fqname>@2.0::IImageTuning/default</fqname>
</hal>
<hal format="hidl">
<name>motorola.hardware.health</name>
<transport>hwbinder</transport>
<version>2.0</version>
<interface>
<name>IMotHealth</name>
<instance>default</instance>
</interface>
<fqname>@2.0::IMotHealth/default</fqname>
</hal>
<hal format="hidl">
<name>motorola.hardware.health.storage</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IMotStorage</name>
<instance>default</instance>
</interface>
<fqname>@1.0::IMotStorage/default</fqname>
</hal>
<hal format="hidl">
<name>motorola.hardware.paramupdater</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IParamUpdater</name>
<instance>default</instance>
</interface>
<fqname>@1.0::IParamUpdater/default</fqname>
</hal>
<hal format="hidl">
<name>motorola.hardware.wifi.supplicant</name>
<transport>hwbinder</transport>
<version>1.1</version>
<interface>
<name>ISupplicantMot</name>
<instance>default</instance>
</interface>
<fqname>@1.1::ISupplicantMot/default</fqname>
</hal>
<hal format="hidl">
<name>motorola.hardware.wireless.powershare</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IMotPowerShare</name>
<instance>default</instance>
</interface>
<fqname>@1.0::IMotPowerShare/default</fqname>
</hal>
<hal format="hidl">
<name>motorola.hardware.wireless.wlc</name>
<transport>hwbinder</transport>
<version>2.0</version>
<interface>
<name>IMotWlc</name>
<instance>default</instance>
</interface>
<fqname>@2.0::IMotWlc/default</fqname>
</hal>
<hal format="hidl">
<name>vendor.egistec.hardware.fingerprint</name>
<transport>hwbinder</transport>
<version>4.0</version>
<interface>
<name>IBiometricsFingerprintRbs</name>
<instance>default</instance>
</interface>
<fqname>@4.0::IBiometricsFingerprintRbs/default</fqname>
</hal>
<hal format="hidl">
<name>vendor.nxp.hardware.nfc</name>
<transport>hwbinder</transport>
<version>2.0</version>
<interface>
<name>INqNfc</name>
<instance>default</instance>
</interface>
<fqname>@2.0::INqNfc/default</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.data.factory</name>
<transport>hwbinder</transport>
<version>2.5</version>
<interface>
<name>IFactory</name>
<instance>default</instance>
</interface>
<fqname>@2.5::IFactory/default</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.esepowermanager</name>
<transport>hwbinder</transport>
<version>1.1</version>
<interface>
<name>IEsePowerManager</name>
<instance>default</instance>
</interface>
<fqname>@1.1::IEsePowerManager/default</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.AGMIPC</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IAGM</name>
<instance>default</instance>
</interface>
<fqname>@1.0::IAGM/default</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.alarm</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IAlarm</name>
<instance>default</instance>
</interface>
<fqname>@1.0::IAlarm/default</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.bluetooth_audio</name>
<transport>hwbinder</transport>
<version>2.1</version>
<interface>
<name>IBluetoothAudioProvidersFactory</name>
<instance>default</instance>
</interface>
<fqname>@2.1::IBluetoothAudioProvidersFactory/default</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.bluetooth_sar</name>
<transport>hwbinder</transport>
<version>1.1</version>
<interface>
<name>IBluetoothSar</name>
<instance>default</instance>
</interface>
<fqname>@1.1::IBluetoothSar/default</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.btconfigstore</name>
<transport>hwbinder</transport>
<version>2.0</version>
<interface>
<name>IBTConfigStore</name>
<instance>default</instance>
</interface>
<fqname>@2.0::IBTConfigStore/default</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.cacert</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IService</name>
<instance>default</instance>
</interface>
<fqname>@1.0::IService/default</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.camera.aon</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IAONService</name>
<instance>aoncameraservice</instance>
</interface>
<fqname>@1.0::IAONService/aoncameraservice</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.camera.postproc</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IPostProcService</name>
<instance>camerapostprocservice</instance>
</interface>
<fqname>@1.0::IPostProcService/camerapostprocservice</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.capabilityconfigstore</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>ICapabilityConfigStore</name>
<instance>default</instance>
</interface>
<fqname>@1.0::ICapabilityConfigStore/default</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.data.connection</name>
<transport>hwbinder</transport>
<version>1.1</version>
<interface>
<name>IDataConnection</name>
<instance>slot1</instance>
<instance>slot2</instance>
</interface>
<fqname>@1.1::IDataConnection/slot1</fqname>
<fqname>@1.1::IDataConnection/slot2</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.data.iwlan</name>
<transport>hwbinder</transport>
<version>1.1</version>
<interface>
<name>IIWlan</name>
<instance>slot1</instance>
<instance>slot2</instance>
</interface>
<fqname>@1.1::IIWlan/slot1</fqname>
<fqname>@1.1::IIWlan/slot2</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.data.latency</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>ILinkLatency</name>
<instance>default</instance>
</interface>
<fqname>@1.0::ILinkLatency/default</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.dpmservice</name>
<transport>hwbinder</transport>
<version>1.1</version>
<interface>
<name>IDpmService</name>
<instance>DpmService</instance>
</interface>
<fqname>@1.1::IDpmService/DpmService</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.dsp</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IDspService</name>
<instance>dspservice</instance>
</interface>
<fqname>@1.0::IDspService/dspservice</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.eid</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IEid</name>
<instance>default</instance>
</interface>
<fqname>@1.0::IEid/default</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.embmssl</name>
<transport>hwbinder</transport>
<version>1.1</version>
<interface>
<name>IEmbms</name>
<instance>embmsslServer0</instance>
</interface>
<fqname>@1.1::IEmbms/embmsslServer0</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.iop</name>
<transport>hwbinder</transport>
<version>2.0</version>
<interface>
<name>IIop</name>
<instance>default</instance>
</interface>
<fqname>@2.0::IIop/default</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.mwqemadapter</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IMwqemAdapter</name>
<instance>MwqemAdapter</instance>
</interface>
<fqname>@1.0::IMwqemAdapter/MwqemAdapter</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.pal</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IPAL</name>
<instance>default</instance>
</interface>
<fqname>@1.0::IPAL/default</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.qccvndhal</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IQccvndhal</name>
<instance>qccvndhal</instance>
</interface>
<fqname>@1.0::IQccvndhal/qccvndhal</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.qseecom</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IQSEECom</name>
<instance>default</instance>
</interface>
<fqname>@1.0::IQSEECom/default</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.qteeconnector</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IAppConnector</name>
<instance>default</instance>
</interface>
<interface>
<name>IGPAppConnector</name>
<instance>default</instance>
</interface>
<fqname>@1.0::IAppConnector/default</fqname>
<fqname>@1.0::IGPAppConnector/default</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.radio.am</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IQcRilAudio</name>
<instance>slot1</instance>
<instance>slot2</instance>
</interface>
<fqname>@1.0::IQcRilAudio/slot1</fqname>
<fqname>@1.0::IQcRilAudio/slot2</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.radio.internal.deviceinfo</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IDeviceInfo</name>
<instance>deviceinfo</instance>
</interface>
<fqname>@1.0::IDeviceInfo/deviceinfo</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.radio.lpa</name>
<transport>hwbinder</transport>
<version>1.2</version>
<interface>
<name>IUimLpa</name>
<instance>UimLpa0</instance>
<instance>UimLpa1</instance>
</interface>
<fqname>@1.2::IUimLpa/UimLpa0</fqname>
<fqname>@1.2::IUimLpa/UimLpa1</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.radio.qcrilhook</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IQtiOemHook</name>
<instance>oemhook0</instance>
<instance>oemhook1</instance>
</interface>
<fqname>@1.0::IQtiOemHook/oemhook0</fqname>
<fqname>@1.0::IQtiOemHook/oemhook1</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.radio.qtiradio</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IQtiRadio</name>
<instance>slot1</instance>
<instance>slot2</instance>
</interface>
<fqname>@1.0::IQtiRadio/slot1</fqname>
<fqname>@1.0::IQtiRadio/slot2</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.radio.qtiradio</name>
<transport>hwbinder</transport>
<version>2.6</version>
<interface>
<name>IQtiRadio</name>
<instance>slot1</instance>
<instance>slot2</instance>
</interface>
<fqname>@2.6::IQtiRadio/slot1</fqname>
<fqname>@2.6::IQtiRadio/slot2</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.radio.uim</name>
<transport>hwbinder</transport>
<version>1.2</version>
<interface>
<name>IUim</name>
<instance>Uim0</instance>
<instance>Uim1</instance>
</interface>
<fqname>@1.2::IUim/Uim0</fqname>
<fqname>@1.2::IUim/Uim1</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.radio.uim_remote_client</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IUimRemoteServiceClient</name>
<instance>uimRemoteClient0</instance>
<instance>uimRemoteClient1</instance>
</interface>
<fqname>@1.0::IUimRemoteServiceClient/uimRemoteClient0</fqname>
<fqname>@1.0::IUimRemoteServiceClient/uimRemoteClient1</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.radio.uim_remote_server</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IUimRemoteServiceServer</name>
<instance>uimRemoteServer0</instance>
<instance>uimRemoteServer1</instance>
</interface>
<fqname>@1.0::IUimRemoteServiceServer/uimRemoteServer0</fqname>
<fqname>@1.0::IUimRemoteServiceServer/uimRemoteServer1</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.sensorscalibrate</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>ISensorsCalibrate</name>
<instance>default</instance>
</interface>
<fqname>@1.0::ISensorsCalibrate/default</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.soter</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>ISoter</name>
<instance>default</instance>
</interface>
<fqname>@1.0::ISoter/default</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.wifi.wifilearner</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IWifiStats</name>
<instance>wifiStats</instance>
</interface>
<fqname>@1.0::IWifiStats/wifiStats</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.hardware.wifidisplaysession</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IWifiDisplaySession</name>
<instance>wifidisplaysession</instance>
</interface>
<interface>
<name>IWifiDisplaySessionAudioTrack</name>
<instance>wifidisplaysessionaudiotrack</instance>
</interface>
<interface>
<name>IWifiDisplaySessionImageTrack</name>
<instance>wifidisplaysessionimagetrack</instance>
</interface>
<interface>
<name>IWifiDisplaySessionVideoTrack</name>
<instance>wifidisplaysessionvideotrack</instance>
</interface>
<fqname>@1.0::IWifiDisplaySession/wifidisplaysession</fqname>
<fqname>@1.0::IWifiDisplaySessionAudioTrack/wifidisplaysessionaudiotrack</fqname>
<fqname>@1.0::IWifiDisplaySessionImageTrack/wifidisplaysessionimagetrack</fqname>
<fqname>@1.0::IWifiDisplaySessionVideoTrack/wifidisplaysessionvideotrack</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.ims.callinfo</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IService</name>
<instance>default</instance>
</interface>
<fqname>@1.0::IService/default</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.ims.factory</name>
<transport>hwbinder</transport>
<version>1.1</version>
<version>2.2</version>
<interface>
<name>IImsFactory</name>
<instance>default</instance>
</interface>
<fqname>@1.1::IImsFactory/default</fqname>
<fqname>@2.2::IImsFactory/default</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.imsrtpservice</name>
<transport>hwbinder</transport>
<version>3.0</version>
<interface>
<name>IRTPService</name>
<instance>imsrtpservice</instance>
</interface>
<fqname>@3.0::IRTPService/imsrtpservice</fqname>
</hal>
<hal format="hidl" override="true">
<name>vendor.qti.memory.pasrmanager</name>
<transport>hwbinder</transport>
</hal>
<hal format="hidl">
<name>vendor.qti.qesdhal</name>
<transport>hwbinder</transport>
<version>1.1</version>
<interface>
<name>IQesdhal</name>
<instance>default</instance>
</interface>
<fqname>@1.1::IQesdhal/default</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.qspmhal</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IQspmhal</name>
<instance>default</instance>
</interface>
<fqname>@1.0::IQspmhal/default</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.spu</name>
<transport>hwbinder</transport>
<version>1.1</version>
<interface>
<name>ISPUManager</name>
<instance>default</instance>
</interface>
<fqname>@1.1::ISPUManager/default</fqname>
</hal>
<hal format="hidl">
<name>vendor.qti.spu</name>
<transport>hwbinder</transport>
<version>2.0</version>
<interface>
<name>ISPUManager</name>
<instance>default</instance>
</interface>
<fqname>@2.0::ISPUManager/default</fqname>
</hal>
<hal format="hidl">
<name>vendor.zui.hardware.ifaa</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IIFAADevice</name>
<instance>default</instance>
</interface>
<fqname>@1.0::IIFAADevice/default</fqname>
</hal>
<sepolicy>
<version>31.0</version>
</sepolicy>
<kernel target-level="6"/>
</manifest>

View File

@ -0,0 +1,42 @@
<!-- Copyright (c) 2021 Qualcomm Technologies, Inc.
All Rights Reserved.
Confidential and Proprietary - Qualcomm Technologies, Inc.
Not a Contribution.
This file is copied from
1) https://source.codeaurora.org/quic/la/platform/hardware/interfaces/tree/security/keymint/aidl/default/android.hardware.security.keymint-service.xml?h=aosp-new/simpleperf-release
2) https://source.codeaurora.org/quic/la/platform/hardware/interfaces/tree/security/keymint/aidl/default/android.hardware.security.secureclock-service.xml?h=aosp-new/simpleperf-release
3) https://source.codeaurora.org/quic/la/platform/hardware/interfaces/tree/security/keymint/aidl/default/android.hardware.security.sharedsecret-service.xml?h=aosp-new/simpleperf-release
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.
-->
<manifest version="1.0" type="device">
<hal format="aidl">
<name>android.hardware.security.keymint</name>
<fqname>IKeyMintDevice/default</fqname>
</hal>
<hal format="aidl">
<name>android.hardware.security.sharedsecret</name>
<fqname>ISharedSecret/default</fqname>
</hal>
<hal format="aidl">
<name>android.hardware.security.secureclock</name>
<fqname>ISecureClock/default</fqname>
</hal>
<hal format="aidl">
<name>android.hardware.security.keymint</name>
<fqname>IRemotelyProvisionedComponent/default</fqname>
</hal>
</manifest>

View File

@ -0,0 +1,34 @@
<!-- Copyright (c) 2020-2021 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.
-->
<manifest version="1.0" type="device">
<hal format="aidl">
<name>android.hardware.vibrator</name>
<version>2</version>
<fqname>IVibrator/default</fqname>
</hal>
</manifest>

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
recovery/root/vendor/lib64/libdiag.so vendored Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
recovery/root/vendor/lib64/libdrm.so vendored Normal file

Binary file not shown.

BIN
recovery/root/vendor/lib64/libdrmfs.so vendored Normal file

Binary file not shown.

BIN
recovery/root/vendor/lib64/libdrmtime.so vendored Normal file

Binary file not shown.

Binary file not shown.

BIN
recovery/root/vendor/lib64/libdsutils.so vendored Normal file

Binary file not shown.

BIN
recovery/root/vendor/lib64/libidl.so vendored Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
recovery/root/vendor/lib64/libops.so vendored Normal file

Binary file not shown.

BIN
recovery/root/vendor/lib64/libqcbor.so vendored Normal file

Binary file not shown.

BIN
recovery/root/vendor/lib64/libqdutils.so vendored Normal file

Binary file not shown.

BIN
recovery/root/vendor/lib64/libqisl.so vendored Normal file

Binary file not shown.

BIN
recovery/root/vendor/lib64/libqmi_cci.so vendored Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
recovery/root/vendor/lib64/libqmi_csi.so vendored Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
recovery/root/vendor/lib64/libqrtr.so vendored Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

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