Parcourir la source

dm2q: Initial TWRP device tree

Signed-off-by: Edgars Cīrulis <edgarsscirulis@gmail.com>
Edgars Cīrulis il y a 2 ans
commit
b020d1a9fa
100 fichiers modifiés avec 414 ajouts et 0 suppressions
  1. 23 0
      Android.mk
  2. 20 0
      AndroidProducts.mk
  3. 163 0
      BoardConfig.mk
  4. 26 0
      README.md
  5. 18 0
      bootimg.mk
  6. 23 0
      device.mk
  7. BIN
      mkbootimg
  8. BIN
      prebuilt/Image.gz
  9. BIN
      prebuilt/dtb
  10. BIN
      prebuilt/dtbo
  11. 44 0
      recovery/root/init.recovery.qcom.rc
  12. 97 0
      recovery/root/init.recovery.usb.rc
  13. BIN
      recovery/root/lib/modules/abc.ko
  14. BIN
      recovery/root/lib/modules/abc_hub.ko
  15. BIN
      recovery/root/lib/modules/adsp_factory_module.ko
  16. BIN
      recovery/root/lib/modules/adsp_sleepmon.ko
  17. BIN
      recovery/root/lib/modules/altmode-glink.ko
  18. BIN
      recovery/root/lib/modules/arm_smmu.ko
  19. BIN
      recovery/root/lib/modules/bam_dma.ko
  20. BIN
      recovery/root/lib/modules/bcl_pmic5.ko
  21. BIN
      recovery/root/lib/modules/bcl_soc.ko
  22. BIN
      recovery/root/lib/modules/blk-sec-stats.ko
  23. BIN
      recovery/root/lib/modules/boot_stats.ko
  24. BIN
      recovery/root/lib/modules/bwmon.ko
  25. BIN
      recovery/root/lib/modules/c1dcvs_scmi.ko
  26. BIN
      recovery/root/lib/modules/c1dcvs_vendor.ko
  27. BIN
      recovery/root/lib/modules/camcc-kalama.ko
  28. BIN
      recovery/root/lib/modules/cdsp-loader.ko
  29. BIN
      recovery/root/lib/modules/cdsprm.ko
  30. BIN
      recovery/root/lib/modules/cfg80211.ko
  31. BIN
      recovery/root/lib/modules/charger-ulog-glink.ko
  32. BIN
      recovery/root/lib/modules/cl_dsp.ko
  33. BIN
      recovery/root/lib/modules/clk-dummy.ko
  34. BIN
      recovery/root/lib/modules/clk-qcom.ko
  35. BIN
      recovery/root/lib/modules/clk-rpmh.ko
  36. BIN
      recovery/root/lib/modules/cmd-db.ko
  37. BIN
      recovery/root/lib/modules/common_muic.ko
  38. BIN
      recovery/root/lib/modules/core_hang_detect.ko
  39. BIN
      recovery/root/lib/modules/coresight-csr.ko
  40. BIN
      recovery/root/lib/modules/coresight-cti.ko
  41. BIN
      recovery/root/lib/modules/coresight-dummy.ko
  42. BIN
      recovery/root/lib/modules/coresight-funnel.ko
  43. BIN
      recovery/root/lib/modules/coresight-hwevent.ko
  44. BIN
      recovery/root/lib/modules/coresight-remote-etm.ko
  45. BIN
      recovery/root/lib/modules/coresight-replicator.ko
  46. BIN
      recovery/root/lib/modules/coresight-stm.ko
  47. BIN
      recovery/root/lib/modules/coresight-tgu.ko
  48. BIN
      recovery/root/lib/modules/coresight-tmc.ko
  49. BIN
      recovery/root/lib/modules/coresight-tpda.ko
  50. BIN
      recovery/root/lib/modules/coresight-tpdm.ko
  51. BIN
      recovery/root/lib/modules/coresight.ko
  52. BIN
      recovery/root/lib/modules/cpu_hotplug.ko
  53. BIN
      recovery/root/lib/modules/cpu_voltage_cooling.ko
  54. BIN
      recovery/root/lib/modules/cpufreq_limit.ko
  55. BIN
      recovery/root/lib/modules/cpufreq_stats_scmi.ko
  56. BIN
      recovery/root/lib/modules/cpufreq_stats_vendor.ko
  57. BIN
      recovery/root/lib/modules/cqhci.ko
  58. BIN
      recovery/root/lib/modules/crypto-qti-common.ko
  59. BIN
      recovery/root/lib/modules/crypto-qti-hwkm.ko
  60. BIN
      recovery/root/lib/modules/dcc_v2.ko
  61. BIN
      recovery/root/lib/modules/dcvs_fp.ko
  62. BIN
      recovery/root/lib/modules/ddr_cdev.ko
  63. BIN
      recovery/root/lib/modules/debug-regulator.ko
  64. BIN
      recovery/root/lib/modules/debug_symbol.ko
  65. BIN
      recovery/root/lib/modules/debugcc-kalama.ko
  66. BIN
      recovery/root/lib/modules/dev_ril_bridge.ko
  67. BIN
      recovery/root/lib/modules/dispcc-kalama.ko
  68. BIN
      recovery/root/lib/modules/dmesg_dumper.ko
  69. BIN
      recovery/root/lib/modules/dropdump.ko
  70. BIN
      recovery/root/lib/modules/dwc3-msm.ko
  71. BIN
      recovery/root/lib/modules/ehset.ko
  72. BIN
      recovery/root/lib/modules/eud.ko
  73. BIN
      recovery/root/lib/modules/f_fs_ipc_log.ko
  74. BIN
      recovery/root/lib/modules/fingerprint.ko
  75. BIN
      recovery/root/lib/modules/fingerprint_sysfs.ko
  76. BIN
      recovery/root/lib/modules/flicker_sensor.ko
  77. BIN
      recovery/root/lib/modules/flicker_test.ko
  78. BIN
      recovery/root/lib/modules/frpc-adsprpc.ko
  79. BIN
      recovery/root/lib/modules/fsa4480-i2c.ko
  80. BIN
      recovery/root/lib/modules/gcc-kalama.ko
  81. BIN
      recovery/root/lib/modules/gdsc-regulator.ko
  82. BIN
      recovery/root/lib/modules/gh_arm_drv.ko
  83. BIN
      recovery/root/lib/modules/gh_ctrl.ko
  84. BIN
      recovery/root/lib/modules/gh_dbl.ko
  85. BIN
      recovery/root/lib/modules/gh_irq_lend.ko
  86. BIN
      recovery/root/lib/modules/gh_mem_notifier.ko
  87. BIN
      recovery/root/lib/modules/gh_msgq.ko
  88. BIN
      recovery/root/lib/modules/gh_rm_drv.ko
  89. BIN
      recovery/root/lib/modules/gh_tlmm_vm_mem_access.ko
  90. BIN
      recovery/root/lib/modules/gh_virt_wdt.ko
  91. BIN
      recovery/root/lib/modules/glink_pkt.ko
  92. BIN
      recovery/root/lib/modules/glink_probe.ko
  93. BIN
      recovery/root/lib/modules/gpucc-kalama.ko
  94. BIN
      recovery/root/lib/modules/gunyah.ko
  95. BIN
      recovery/root/lib/modules/hall_ic.ko
  96. BIN
      recovery/root/lib/modules/hall_ic_notifier.ko
  97. BIN
      recovery/root/lib/modules/hdcp_qseecom_dlkm.ko
  98. BIN
      recovery/root/lib/modules/hdm.ko
  99. BIN
      recovery/root/lib/modules/heap_mem_ext_v01.ko
  100. BIN
      recovery/root/lib/modules/hung_task_enh.ko

+ 23 - 0
Android.mk

@@ -0,0 +1,23 @@
+#
+# Copyright (C) 2023 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.
+#
+
+ifneq ($(filter dm2q, $(TARGET_DEVICE)),)
+
+LOCAL_PATH := $(call my-dir)
+
+include $(call all-makefiles-under,$(LOCAL_PATH))
+
+endif

+ 20 - 0
AndroidProducts.mk

@@ -0,0 +1,20 @@
+#
+# Copyright (C) 2023 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.
+#
+
+PRODUCT_MAKEFILES := \
+	$(LOCAL_DIR)/twrp_dm2q.mk
+
+COMMON_LUNCH_CHOICES := twrp_dm2q-eng

+ 163 - 0
BoardConfig.mk

@@ -0,0 +1,163 @@
+#
+# Copyright (C) 2023 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.
+#
+
+# PRODUCT_COPY_FILES directives.
+BUILD_BROKEN_ELF_PREBUILT_PRODUCT_COPY_FILES := true
+DISABLE_ARTIFACT_PATH_REQUIREMENTS := true
+
+# Manifest
+PRODUCT_ENFORCE_VINTF_MANIFEST_OVERRIDE := true
+
+# Architecture
+TARGET_ARCH := arm64
+TARGET_ARCH_VARIANT := armv8-2a
+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 := armv8-2a
+TARGET_2ND_CPU_ABI := armeabi-v7a
+TARGET_2ND_CPU_ABI2 := armeabi
+TARGET_2ND_CPU_VARIANT := generic
+TARGET_2ND_CPU_VARIANT_RUNTIME := cortex-a75
+
+# Bootloader
+TARGET_BOOTLOADER_BOARD_NAME := kalama
+TARGET_NO_BOOTLOADER := true
+
+# Platform
+BOARD_USES_QCOM_HARDWARE := true
+TARGET_BOARD_PLATFORM := kalama
+QCOM_BOARD_PLATFORMS += kalama
+
+# File systems
+TARGET_USES_MKE2FS := true
+TARGET_USERIMAGES_USE_EXT4 := true
+TARGET_USERIMAGES_USE_F2FS := true
+BOARD_HAS_LARGE_FILESYSTEM := true
+
+# Kernel
+BOARD_CUSTOM_BOOTIMG_MK := device/samsung/dm2q/bootimg.mk
+
+TARGET_PREBUILT_KERNEL := device/samsung/dm2q/prebuilt/Image.gz
+TARGET_PREBUILT_DTB := device/samsung/dm2q/prebuilt/dtb
+BOARD_PREBUILT_DTBOIMAGE := device/samsung/dm2q/prebuilt/dtbo
+BOARD_INCLUDE_DTB_IN_BOOTIMG := true
+BOARD_INCLUDE_RECOVERY_DTBO := true
+TARGET_KERNEL_ARCH := arm64
+
+BOARD_BOOT_HEADER_VERSION := 2
+BOARD_KERNEL_BASE := 0x00000000
+BOARD_KERNEL_CMDLINE := \
+	video=vfb:640x400,bpp=32,memsize=3072000 \
+	printk.devkmsg=on \
+	firmware_class.path=/vendor/firmware_mnt/image \
+	bootconfig \
+	androidboot.hardware=qcom \
+	androidboot.memcg=1 \
+	androidboot.usbcontroller=a600000.dwc3 \
+	loop.max_part=7 \
+	androidboot.selinux=permissive
+BOARD_KERNEL_IMAGE_NAME := Image
+BOARD_KERNEL_PAGESIZE := 4096
+BOARD_KERNEL_OFFSET := 0x00008000
+BOARD_RAMDISK_OFFSET := 0x02000000
+BOARD_KERNEL_SECOND_OFFSET := 0x00000000
+BOARD_KERNEL_TAGS_OFFSET := 0x01e00000
+BOARD_DTB_OFFSET := 0x01f00000
+BOARD_MKBOOTIMG_ARGS := \
+	--board "SRPVH05B003" \
+	--dtb $(TARGET_PREBUILT_DTB) \
+	--dtb_offset $(BOARD_DTB_OFFSET) \
+	--header_version $(BOARD_BOOT_HEADER_VERSION) \
+	--kernel_offset $(BOARD_KERNEL_OFFSET) \
+	--pagesize $(BOARD_KERNEL_PAGESIZE) \
+	--ramdisk_offset $(BOARD_RAMDISK_OFFSET) \
+	--second_offset $(BOARD_KERNEL_SECOND_OFFSET) \
+	--tags_offset $(BOARD_KERNEL_TAGS_OFFSET)
+
+# System as root
+BOARD_ROOT_EXTRA_FOLDERS := \
+	cache \
+	carrier \
+	data_mirror \
+	efs \
+	linkerconfig \
+	odm_dlkm \
+	oem \
+	optics \
+	postinstall \
+	prism \
+	second_stage_resources \
+	spu \
+	system_ext \
+	vendor_dlkm
+
+# Partitions
+BOARD_FLASH_BLOCK_SIZE := 262144
+BOARD_BOOTIMAGE_PARTITION_SIZE := 100663296
+BOARD_RECOVERYIMAGE_PARTITION_SIZE := 104857600
+
+# Dynamic Partitions
+BOARD_SUPER_PARTITION_SIZE := 12664700928
+BOARD_SUPER_PARTITION_GROUPS := samsung_dynamic_partitions
+BOARD_SAMSUNG_DYNAMIC_PARTITIONS_SIZE := 12660506624
+BOARD_SAMSUNG_DYNAMIC_PARTITIONS_PARTITION_LIST := system odm product system_ext vendor vendor_dlkm
+
+# Workaround for error copying vendor files to recovery ramdisk
+BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE := erofs
+TARGET_COPY_OUT_VENDOR := vendor
+
+# Properties
+TARGET_VENDOR_PROP += device/samsung/dm2q/vendor.prop
+
+# Android Verified Boot
+BOARD_AVB_ENABLE := true
+BOARD_AVB_ROLLBACK_INDEX := $(PLATFORM_SECURITY_PATCH_TIMESTAMP)
+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_MAKE_VBMETA_IMAGE_ARGS += --flag 2
+
+# Crypto
+BOARD_USES_METADATA_PARTITION := true
+
+# Recovery
+RECOVERY_SDCARD_ON_DATA := true
+TARGET_RECOVERY_QCOM_RTC_FIX := true
+TARGET_RECOVERY_PIXEL_FORMAT := "RGBX_8888"
+
+# TWRP specific build flags
+TW_THEME := portrait_hdpi
+TW_BRIGHTNESS_PATH := "/sys/class/backlight/panel0-backlight/brightness"
+TW_CUSTOM_CPU_TEMP_PATH := /sys/class/thermal/thermal_zone50/temp
+TW_BACKUP_EXCLUSIONS := /data/fonts
+TW_MAX_BRIGHTNESS := 612
+TW_DEFAULT_BRIGHTNESS := 355
+TW_EXCLUDE_DEFAULT_USB_INIT := true
+TW_HAS_DOWNLOAD_MODE := true
+TW_H_OFFSET := -100
+TW_Y_OFFSET := 100
+TW_INCLUDE_NTFS_3G := true
+TW_NO_REBOOT_BOOTLOADER := true
+TW_FRAMERATE := 120
+
+# TWRP Debug Flags
+TARGET_USES_LOGD := true
+TWRP_INCLUDE_LOGCAT := true

+ 26 - 0
README.md

@@ -0,0 +1,26 @@
+## Recovery Device Tree for the Samsung Galaxy S23+
+
+## Kernel source 
+
+Available at [https://github.com/samsung-sm8550/kernel_samsung_sm8550/tree/twrp-12.1](https://github.com/samsung-sm8550/kernel_samsung_sm8550/tree/twrp-12.1)
+
+## How to build
+
+This device tree was tested and is fully compatible with [minimal-manifest-twrp](https://github.com/minimal-manifest-twrp/platform_manifest_twrp_aosp).
+
+1. Set up the build environment following the instructions [here](https://github.com/minimal-manifest-twrp/platform_manifest_twrp_aosp/blob/twrp-12.1/README.md#getting-started)
+
+2. In the root folder of the fetched repo, clone the device tree:
+
+```bash
+git clone https://github.com/samsung-sm8550/device_samsung_dm2q -b android-12.1 device/samsung/dm2q
+```
+
+3. To build:
+
+```bash
+export ALLOW_MISSING_DEPENDENCIES=true
+. build/envsetup.sh
+lunch twrp_dm2q-eng
+mka recoveryimage
+```

+ 18 - 0
bootimg.mk

@@ -0,0 +1,18 @@
+MKBOOTIMG := device/samsung/dm2q/mkbootimg
+
+FLASH_IMAGE_TARGET ?= $(PRODUCT_OUT)/recovery.tar
+
+$(INSTALLED_BOOTIMAGE_TARGET): $(MKBOOTIMG) $(INTERNAL_BOOTIMAGE_FILES) $(BOOTIMAGE_EXTRA_DEPS)
+	$(call pretty,"Target boot image: $@")
+	$(hide) $(MKBOOTIMG) $(INTERNAL_BOOTIMAGE_ARGS) $(INTERNAL_MKBOOTIMG_VERSION_ARGS) $(BOARD_MKBOOTIMG_ARGS) --output $@
+	$(hide) echo -n "SEANDROIDENFORCE" >> $@
+	@echo "Made boot image: $@"
+
+$(INSTALLED_RECOVERYIMAGE_TARGET): $(MKBOOTIMG) $(recovery_ramdisk) $(recovery_kernel) $(RECOVERYIMAGE_EXTRA_DEPS)
+	@echo "----- Making recovery image ------"
+	$(hide) $(MKBOOTIMG) $(INTERNAL_RECOVERYIMAGE_ARGS) $(INTERNAL_MKBOOTIMG_VERSION_ARGS) $(BOARD_MKBOOTIMG_ARGS) --output $@
+	@echo "----- Lying about SEAndroid state to Samsung bootloader ------"
+	$(hide) echo -n "SEANDROIDENFORCE" >> $@
+	@echo "Made recovery image: $@"
+	$(hide) tar -C $(PRODUCT_OUT) -c recovery.img > $(FLASH_IMAGE_TARGET)
+	@echo "Made flashable $(FLASH_IMAGE_TARGET): $@"

+ 23 - 0
device.mk

@@ -0,0 +1,23 @@
+#
+# Copyright (C) 2023 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.
+#
+
+# Dynamic partitions
+PRODUCT_USE_DYNAMIC_PARTITIONS := true
+
+# fastbootd
+PRODUCT_PACKAGES += \
+    android.hardware.fastboot@1.0-impl-mock \
+    fastbootd

BIN
mkbootimg


BIN
prebuilt/Image.gz


BIN
prebuilt/dtb


BIN
prebuilt/dtbo


+ 44 - 0
recovery/root/init.recovery.qcom.rc

@@ -0,0 +1,44 @@
+# Copyright (c) 2017-2018,2020 The Linux Foundation. All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are met:
+#     * Redistributions of source code must retain the above copyright
+#       notice, this list of conditions and the following disclaimer.
+#     * Redistributions in binary form must reproduce the above copyright
+#       notice, this list of conditions and the following disclaimer in the
+#       documentation and/or other materials provided with the distribution.
+#     * Neither the name of The Linux Foundation nor
+#       the names of its contributors may be used to endorse or promote
+#       products derived from this software without specific prior written
+#       permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+# NON-INFRINGEMENT ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+#
+
+on init
+    # to cut charging battery path
+    write /sys/class/power_supply/battery/siop_level 0
+    setprop prepdecrypt.setpatch true
+
+on fs
+    wait /dev/block/platform/soc/${ro.boot.bootdevice}
+    symlink /dev/block/platform/soc/${ro.boot.bootdevice} /dev/block/bootdevice
+
+    # Mount firmware
+    mkdir /vendor/firmware_mnt
+    mount vfat /dev/block/bootdevice/by-name/apnhlos /vendor/firmware_mnt
+
+    export ANDROID_ROOT /system_root
+
+on boot
+    start health-hal-2-1

+ 97 - 0
recovery/root/init.recovery.usb.rc

@@ -0,0 +1,97 @@
+# Copyright (c) 2017-2018, The Linux Foundation. All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are met:
+#     * Redistributions of source code must retain the above copyright
+#       notice, this list of conditions and the following disclaimer.
+#     * Redistributions in binary form must reproduce the above copyright
+#       notice, this list of conditions and the following disclaimer in the
+#       documentation and/or other materials provided with the distribution.
+#     * Neither the name of The Linux Foundation nor
+#       the names of its contributors may be used to endorse or promote
+#       products derived from this software without specific prior written
+#       permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+# IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+# NON-INFRINGEMENT ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+#
+
+on property:ro.boot.usbcontroller=*
+    setprop sys.usb.controller ${ro.boot.usbcontroller}
+
+on fs
+    mount configfs none /config
+    mkdir /config/usb_gadget/g1 0770 shell shell
+    write /config/usb_gadget/g1/idVendor 0x18D1
+    mkdir /config/usb_gadget/g1/strings/0x409 0770
+    write /config/usb_gadget/g1/strings/0x409/serialnumber ${ro.serialno}
+    write /config/usb_gadget/g1/strings/0x409/manufacturer ${ro.product.manufacturer}
+    write /config/usb_gadget/g1/strings/0x409/product ${ro.product.model}
+    mkdir /config/usb_gadget/g1/functions/ffs.adb
+    mkdir /config/usb_gadget/g1/functions/ffs.fastboot
+    mkdir /config/usb_gadget/g1/functions/ffs.mtp
+    mkdir /config/usb_gadget/g1/configs/b.1 0777 shell shell
+    mkdir /config/usb_gadget/g1/configs/b.1/strings/0x409 0770 shell shell
+    mkdir /dev/usb-ffs 0775 shell shell
+    mkdir /dev/usb-ffs/adb 0770 shell shell
+    mkdir /dev/usb-ffs/mtp 0770 mtp mtp    
+    mount functionfs adb /dev/usb-ffs/adb uid=2000,gid=2000
+    mkdir /dev/usb-ffs/fastboot 0770 system system
+    mount functionfs fastboot /dev/usb-ffs/fastboot rmode=0770,fmode=0660,uid=1000,gid=1000
+    mount functionfs mtp /dev/usb-ffs/mtp uid=2000,gid=2000
+
+on property:sys.usb.config=adb
+    start adbd
+
+on property:sys.usb.config=mtp,adb
+    start adbd
+
+on property:sys.usb.config=fastboot
+    start fastbootd
+
+on property:sys.usb.config=none
+    write /config/usb_gadget/g1/UDC "none"
+    stop adbd
+    stop fastbootd
+    setprop sys.usb.ffs.ready 0
+    rm /config/usb_gadget/g1/configs/b.1/f1
+    rm /config/usb_gadget/g1/configs/b.1/ffs.mtp
+    setprop sys.usb.state ${sys.usb.config}
+
+on property:sys.usb.config=sideload && property:sys.usb.ffs.ready=1
+    write /config/usb_gadget/g1/idProduct 0xD001
+    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=adb && property:sys.usb.ffs.ready=1
+    write /config/usb_gadget/g1/idProduct 0xD001
+    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,adb && property:sys.usb.ffs.ready=1
+    write /config/usb_gadget/g1/idProduct 0x6860
+    write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "mtp,adb"
+    symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f1
+    symlink /config/usb_gadget/g1/functions/ffs.mtp /config/usb_gadget/g1/configs/b.1/ffs.mtp
+    write /config/usb_gadget/g1/UDC ${sys.usb.controller}
+    setprop sys.usb.state ${sys.usb.config}
+
+on property:sys.usb.config=fastboot && property:sys.usb.ffs.ready=1
+    write /config/usb_gadget/g1/idProduct 0xD001
+    write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "fastboot"
+    symlink /config/usb_gadget/g1/functions/ffs.fastboot /config/usb_gadget/g1/configs/b.1/f1
+    write /config/usb_gadget/g1/UDC ${sys.usb.controller}
+    setprop sys.usb.state ${sys.usb.config}

BIN
recovery/root/lib/modules/abc.ko


BIN
recovery/root/lib/modules/abc_hub.ko


BIN
recovery/root/lib/modules/adsp_factory_module.ko


BIN
recovery/root/lib/modules/adsp_sleepmon.ko


BIN
recovery/root/lib/modules/altmode-glink.ko


BIN
recovery/root/lib/modules/arm_smmu.ko


BIN
recovery/root/lib/modules/bam_dma.ko


BIN
recovery/root/lib/modules/bcl_pmic5.ko


BIN
recovery/root/lib/modules/bcl_soc.ko


BIN
recovery/root/lib/modules/blk-sec-stats.ko


BIN
recovery/root/lib/modules/boot_stats.ko


BIN
recovery/root/lib/modules/bwmon.ko


BIN
recovery/root/lib/modules/c1dcvs_scmi.ko


BIN
recovery/root/lib/modules/c1dcvs_vendor.ko


BIN
recovery/root/lib/modules/camcc-kalama.ko


BIN
recovery/root/lib/modules/cdsp-loader.ko


BIN
recovery/root/lib/modules/cdsprm.ko


BIN
recovery/root/lib/modules/cfg80211.ko


BIN
recovery/root/lib/modules/charger-ulog-glink.ko


BIN
recovery/root/lib/modules/cl_dsp.ko


BIN
recovery/root/lib/modules/clk-dummy.ko


BIN
recovery/root/lib/modules/clk-qcom.ko


BIN
recovery/root/lib/modules/clk-rpmh.ko


BIN
recovery/root/lib/modules/cmd-db.ko


BIN
recovery/root/lib/modules/common_muic.ko


BIN
recovery/root/lib/modules/core_hang_detect.ko


BIN
recovery/root/lib/modules/coresight-csr.ko


BIN
recovery/root/lib/modules/coresight-cti.ko


BIN
recovery/root/lib/modules/coresight-dummy.ko


BIN
recovery/root/lib/modules/coresight-funnel.ko


BIN
recovery/root/lib/modules/coresight-hwevent.ko


BIN
recovery/root/lib/modules/coresight-remote-etm.ko


BIN
recovery/root/lib/modules/coresight-replicator.ko


BIN
recovery/root/lib/modules/coresight-stm.ko


BIN
recovery/root/lib/modules/coresight-tgu.ko


BIN
recovery/root/lib/modules/coresight-tmc.ko


BIN
recovery/root/lib/modules/coresight-tpda.ko


BIN
recovery/root/lib/modules/coresight-tpdm.ko


BIN
recovery/root/lib/modules/coresight.ko


BIN
recovery/root/lib/modules/cpu_hotplug.ko


BIN
recovery/root/lib/modules/cpu_voltage_cooling.ko


BIN
recovery/root/lib/modules/cpufreq_limit.ko


BIN
recovery/root/lib/modules/cpufreq_stats_scmi.ko


BIN
recovery/root/lib/modules/cpufreq_stats_vendor.ko


BIN
recovery/root/lib/modules/cqhci.ko


BIN
recovery/root/lib/modules/crypto-qti-common.ko


BIN
recovery/root/lib/modules/crypto-qti-hwkm.ko


BIN
recovery/root/lib/modules/dcc_v2.ko


BIN
recovery/root/lib/modules/dcvs_fp.ko


BIN
recovery/root/lib/modules/ddr_cdev.ko


BIN
recovery/root/lib/modules/debug-regulator.ko


BIN
recovery/root/lib/modules/debug_symbol.ko


BIN
recovery/root/lib/modules/debugcc-kalama.ko


BIN
recovery/root/lib/modules/dev_ril_bridge.ko


BIN
recovery/root/lib/modules/dispcc-kalama.ko


BIN
recovery/root/lib/modules/dmesg_dumper.ko


BIN
recovery/root/lib/modules/dropdump.ko


BIN
recovery/root/lib/modules/dwc3-msm.ko


BIN
recovery/root/lib/modules/ehset.ko


BIN
recovery/root/lib/modules/eud.ko


BIN
recovery/root/lib/modules/f_fs_ipc_log.ko


BIN
recovery/root/lib/modules/fingerprint.ko


BIN
recovery/root/lib/modules/fingerprint_sysfs.ko


BIN
recovery/root/lib/modules/flicker_sensor.ko


BIN
recovery/root/lib/modules/flicker_test.ko


BIN
recovery/root/lib/modules/frpc-adsprpc.ko


BIN
recovery/root/lib/modules/fsa4480-i2c.ko


BIN
recovery/root/lib/modules/gcc-kalama.ko


BIN
recovery/root/lib/modules/gdsc-regulator.ko


BIN
recovery/root/lib/modules/gh_arm_drv.ko


BIN
recovery/root/lib/modules/gh_ctrl.ko


BIN
recovery/root/lib/modules/gh_dbl.ko


BIN
recovery/root/lib/modules/gh_irq_lend.ko


BIN
recovery/root/lib/modules/gh_mem_notifier.ko


BIN
recovery/root/lib/modules/gh_msgq.ko


BIN
recovery/root/lib/modules/gh_rm_drv.ko


BIN
recovery/root/lib/modules/gh_tlmm_vm_mem_access.ko


BIN
recovery/root/lib/modules/gh_virt_wdt.ko


BIN
recovery/root/lib/modules/glink_pkt.ko


BIN
recovery/root/lib/modules/glink_probe.ko


BIN
recovery/root/lib/modules/gpucc-kalama.ko


BIN
recovery/root/lib/modules/gunyah.ko


BIN
recovery/root/lib/modules/hall_ic.ko


BIN
recovery/root/lib/modules/hall_ic_notifier.ko


BIN
recovery/root/lib/modules/hdcp_qseecom_dlkm.ko


BIN
recovery/root/lib/modules/hdm.ko


BIN
recovery/root/lib/modules/heap_mem_ext_v01.ko


BIN
recovery/root/lib/modules/hung_task_enh.ko


Certains fichiers n'ont pas été affichés car il y a eu trop de fichiers modifiés dans ce diff