227 lines
No EOL
8.8 KiB
Text
227 lines
No EOL
8.8 KiB
Text
# SPDX-FileCopyrightText: 2016-2023 Unisoc (Shanghai) Technologies Co., Ltd
|
|
# SPDX-License-Identifier: LicenseRef-Unisoc-General-1.0
|
|
|
|
#
|
|
## Please include it in /init.recovery.${ro.hardware}.rc
|
|
#
|
|
|
|
service healthd /system/bin/healthd -r
|
|
critical
|
|
seclabel u:r:healthd:s0
|
|
|
|
service create_splloader_dual_slot_byname_path /system/bin/create_splloader_dual_slot_byname_path.sh
|
|
user root
|
|
group root system
|
|
disabled
|
|
oneshot
|
|
seclabel u:r:create_spl_link_recovery:s0
|
|
|
|
|
|
on init
|
|
# Touch drivers
|
|
chmod 0644 /firmware/novatek_ts_truly_fw.bin
|
|
chmod 0644 /firmware/novatek_ts_truly_mp.bin
|
|
chmod 0644 /firmware/focaltech-FT5x46.bin
|
|
|
|
# Apply strict SELinux checking of PROT_EXEC on mmap/mprotect calls.
|
|
write /sys/fs/selinux/checkreqprot 0
|
|
start healthd
|
|
start create_splloader_dual_slot_byname_path
|
|
|
|
export PATH /sbin:/system/bin:/vendor/bin
|
|
export SECONDARY_STORAGE /storage/sdcard0
|
|
|
|
mkdir /storage
|
|
mkdir /storage/sdcard1
|
|
mkdir /storage/sdcard0
|
|
symlink /storage/sdcard0 /mnt/sdcard
|
|
symlink /system/etc/bluetooth /etc/bluetooth
|
|
|
|
mkdir /systeminfo 0777 system system
|
|
|
|
loglevel 7
|
|
|
|
chown system root /proc/mdbg/assert
|
|
chown system root /proc/mdbg/wdtirq
|
|
chown system root /proc/mdbg/at_cmd
|
|
chown system root /proc/mdbg/loopcheck
|
|
|
|
chmod 760 /proc/mdbg/assert
|
|
chmod 760 /proc/mdbg/wdtirq
|
|
chmod 760 /proc/mdbg/at_cmd
|
|
chmod 760 /proc/mdbg/loopcheck
|
|
|
|
chown system root /proc/cpwcn/wdtirq
|
|
chmod 766 /proc/cpwcn/wdtirq
|
|
|
|
# Create mount-point for ConfigFS USB gadgets
|
|
# Add standard gadget entries
|
|
mount configfs none /config
|
|
mkdir /config/usb_gadget/g1 0770 shell shell
|
|
write /config/usb_gadget/g1/idVendor 0x1782
|
|
write /config/usb_gadget/g1/idProduct 0x4d00
|
|
mkdir /config/usb_gadget/g1/strings/0x409 0770 shell shell
|
|
write /config/usb_gadget/g1/strings/0x409/serialnumber ${ro.serialno}
|
|
write /config/usb_gadget/g1/strings/0x409/manufacturer Unisoc
|
|
write /config/usb_gadget/g1/strings/0x409/product "Unisoc Phone"
|
|
mkdir /config/usb_gadget/g1/configs/b.1 0770 shell shell
|
|
mkdir /config/usb_gadget/g1/configs/b.1/strings/0x409 0770 shell shell
|
|
write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "Conf 1"
|
|
write /config/usb_gadget/g1/configs/b.1/MaxPower 120
|
|
|
|
# Create adb+ffs gadget function
|
|
mkdir /config/usb_gadget/g1/functions/ffs.adb 0770 shell shell
|
|
mkdir /config/usb_gadget/g1/functions/ffs.fastboot 0770 shell shell
|
|
mkdir /dev/usb-ffs 0770 shell shell
|
|
mkdir /dev/usb-ffs/adb 0770 shell shell
|
|
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
|
|
|
|
# Create MTP and PTP functions
|
|
mkdir /config/usb_gadget/g1/functions/mtp.gs0 0770 shell shell
|
|
mkdir /config/usb_gadget/g1/functions/ptp.gs1 0770 shell shell
|
|
mkdir /config/usb_gadget/g1/functions/rndis.gs4 0770 shell shell
|
|
mkdir /config/usb_gadget/g1/functions/vser.gs7 0770 shell shell
|
|
mkdir /config/usb_gadget/g1/functions/accessory.gs2 0770 shell shell
|
|
mkdir /config/usb_gadget/g1/functions/audio_source.gs3 0770 shell shell
|
|
mkdir /config/usb_gadget/g1/functions/midi.gs5 0770 shell shell
|
|
mkdir /config/usb_gadget/g1/functions/sprdgser.gs0 0770 shell shell
|
|
mkdir /config/usb_gadget/g1/functions/sprdgser.gs1 0770 shell shell
|
|
mkdir /config/usb_gadget/g1/functions/sprdgser.gs2 0770 shell shell
|
|
mkdir /config/usb_gadget/g1/functions/sprdgser.gs3 0770 shell shell
|
|
mkdir /config/usb_gadget/g1/functions/sprdgser.gs4 0770 shell shell
|
|
mkdir /config/usb_gadget/g1/functions/sprdgser.gs5 0770 shell shell
|
|
mkdir /config/usb_gadget/g1/functions/sprdgser.gs6 0770 shell shell
|
|
mkdir /config/usb_gadget/g1/functions/sprdgser.gs7 0770 shell shell
|
|
|
|
on boot
|
|
chown root root /lib/firmware
|
|
chmod 0755 /lib/firmware
|
|
|
|
chmod 0644 /lib/firmware/focaltech-FT5x46.bin
|
|
|
|
chmod 0644 /lib/firmware/novatek_ts_truly_mp.bin
|
|
chmod 0644 /lib/firmware/novatek_ts_truly_fw.bin
|
|
|
|
|
|
setprop sys.usb.configfs 1
|
|
write /sys/block/mmcblk0boot0/force_ro 0
|
|
write /sys/block/mmcblk0boot1/force_ro 0
|
|
|
|
chmod 660 /sys/class/power_supply/battery/charger.0/stop_charge
|
|
chmod 660 /sys/class/power_supply/battery/charger.0/jeita_control
|
|
chmod 660 /sys/class/power_supply/battery/input_current_limit
|
|
chmod 660 /sys/class/power_supply/battery/constant_charge_current
|
|
chmod 660 /sys/class/power_supply/battery/charger.0/keep_awake
|
|
|
|
on fs
|
|
#mkdir /data/misc/bluedroid 0770 bluetooth net_bt_stack
|
|
mkdir /data/misc/bluetooth 0770 system system
|
|
|
|
on post-fs-data
|
|
# We chown/chmod /data again so because mount is run as root + defaults
|
|
chown system system /data
|
|
chmod 0771 /data
|
|
# We restorecon /data in case the userdata partition has been reset.
|
|
restorecon /data
|
|
mkdir /data/misc 01771 system misc
|
|
#mkdir /data/misc/bluedroid 0770 bluetooth net_bt_stack
|
|
mkdir /data/misc/bluetooth 0770 system system
|
|
copy /system/etc/bluetooth/bt_stack.conf /data/misc/bluedroid/bt_stack.conf
|
|
chown bluetooth system /data/misc/bluedroid/bt_stack.conf
|
|
chmod 0640 /data/misc/bluedroid/bt_stack.conf
|
|
|
|
#add wifi
|
|
mkdir /data/vendor/wifi 0770 wifi wifi
|
|
mkdir /data/vendor/wifi/wpa 0770 wifi wifi
|
|
mkdir /data/vendor/wifi/wpa/sockets 0770 wifi wifi
|
|
mkdir /data/system 0770 system system
|
|
mkdir /etc/wifi 0770 wifi wifi
|
|
write /data/vendor/wifi/fwpath sta_mode
|
|
chmod 660 /data/vendor/wifi/fwpath
|
|
chown wifi wifi /data/vendor/wifi/fwpath
|
|
rmdir /data/system/wpa_supplicant
|
|
mkdir /data/misc/dhcp 0770 dhcp dhcp
|
|
|
|
#to observe dnsmasq.leases file for dhcp information
|
|
chown dhcp system /data/misc/dhcp
|
|
setprop wifi.interface wlan0
|
|
mkdir /data/misc/dhcp6c 0770 dhcp dhcp
|
|
chown dhcp system /data/misc/dhcp6c
|
|
|
|
# Ylog dir on /data partition
|
|
mkdir /data/vendor 0751 root root
|
|
mkdir /data/vendor/local 0751 root root
|
|
|
|
# slogmodem config dir
|
|
mkdir /data/vendor/ylog 0770 shell system
|
|
mkdir /data/vendor/local/slogmodem 0770 shell system
|
|
mkdir /data/vendor/local/mlogservice 0770 shell system
|
|
mkdir /mnt/vendor/productinfo 0771 system root
|
|
mkdir /data/vendor/local/otpdata 0777 system root
|
|
|
|
on property:ro.debuggable=1
|
|
write /sys/module/smsg/parameters/debug_enable 1
|
|
|
|
on property:ro.bootmode=recovery
|
|
class_start recovery
|
|
|
|
on property:sys.usb.configfs=1 && property:sys.usb.ffs.ready=1 && property:sys.usb.config=adb,vser,gser
|
|
write /config/usb_gadget/g1/idVendor 0x1782
|
|
write /config/usb_gadget/g1/idProduct 0x5d06
|
|
write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "adb_vser_gser"
|
|
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
|
|
rm /config/usb_gadget/g1/configs/b.1/f10
|
|
rm /config/usb_gadget/g1/configs/b.1/f11
|
|
|
|
symlink /config/usb_gadget/g1/functions/ffs.adb /config/usb_gadget/g1/configs/b.1/f1
|
|
symlink /config/usb_gadget/g1/functions/vser.gs7 /config/usb_gadget/g1/configs/b.1/f2
|
|
symlink /config/usb_gadget/g1/functions/sprdgser.gs0 /config/usb_gadget/g1/configs/b.1/f3
|
|
|
|
write /config/usb_gadget/g1/UDC ${sys.usb.controller}
|
|
setprop sys.usb.state ${sys.usb.config}
|
|
|
|
on property:sys.usb.configfs=1 && property:sys.usb.config=vser
|
|
write /config/usb_gadget/g1/idVendor 0x1782
|
|
write /config/usb_gadget/g1/idProduct 0x4d00
|
|
write /config/usb_gadget/g1/configs/b.1/strings/0x409/configuration "vser"
|
|
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
|
|
rm /config/usb_gadget/g1/configs/b.1/f10
|
|
rm /config/usb_gadget/g1/configs/b.1/f11
|
|
|
|
symlink /config/usb_gadget/g1/functions/vser.gs7 /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:ro.bootmode=factorytest && property:ro.debuggable=0
|
|
setprop sys.usb.config vser
|
|
|
|
# for grf
|
|
|
|
on property:ro.odm.build.fingerprint=*
|
|
setprop ro.vendor.build.fingerprint ${ro.odm.build.fingerprint}
|
|
|
|
on property:ro.product.device=*
|
|
setprop ro.product.vendor.device ${ro.product.device}
|
|
on property:ro.product.model=*
|
|
setprop ro.product.vendor.model ${ro.product.model}
|
|
on property:ro.product.name=*
|
|
setprop ro.product.vendor.name ${ro.product.name} |