Pierre-Hugues Husson | f181109 | 2018-04-10 18:33:33 +0200 | [diff] [blame] | 1 | #!/system/bin/sh |
| 2 | |
| 3 | set -e |
| 4 | |
Pierre-Hugues Husson | bd42bde | 2018-08-14 20:02:34 +0200 | [diff] [blame^] | 5 | if getprop ro.vendor.build.fingerprint |grep -qi samsung;then |
| 6 | setprop sys.usb.ffs.aio_compat true |
| 7 | fi |
| 8 | |
Pierre-Hugues Husson | 11cbdea | 2018-05-14 13:34:52 +0200 | [diff] [blame] | 9 | fixSPL() { |
Pierre-Hugues Husson | b139f72 | 2018-05-19 16:54:30 +0200 | [diff] [blame] | 10 | if [ "$(getprop ro.product.cpu.abi)" == "armeabi-v7a" ];then |
| 11 | setprop ro.keymaster.mod 'AOSP on ARM32' |
| 12 | else |
| 13 | setprop ro.keymaster.mod 'AOSP on ARM64' |
| 14 | fi |
Pierre-Hugues Husson | c09149f | 2018-06-08 19:13:08 +0200 | [diff] [blame] | 15 | img="$(find /dev/block -type l -name kernel$(getprop ro.boot.slot_suffix) |grep by-name |head -n 1)" |
| 16 | [ -z "$img" ] && img="$(find /dev/block -type l -name boot$(getprop ro.boot.slot_suffix) |grep by-name |head -n 1)" |
Pierre-Hugues Husson | 11cbdea | 2018-05-14 13:34:52 +0200 | [diff] [blame] | 17 | if [ -n "$img" ];then |
| 18 | #Rewrite SPL/Android version if needed |
| 19 | Arelease="$(getSPL $img android)" |
Pierre-Hugues Husson | b139f72 | 2018-05-19 16:54:30 +0200 | [diff] [blame] | 20 | setprop ro.keymaster.xxx.release "$Arelease" |
Pierre-Hugues Husson | 11cbdea | 2018-05-14 13:34:52 +0200 | [diff] [blame] | 21 | setprop ro.keymaster.xxx.security_patch "$(getSPL $img spl)" |
| 22 | |
Pierre-Hugues Husson | ec16488 | 2018-05-31 23:06:15 +0200 | [diff] [blame] | 23 | for f in /vendor/lib64/hw/android.hardware.keymaster@3.0-impl-qti.so /vendor/lib/hw/android.hardware.keymaster@3.0-impl-qti.so /system/lib64/vndk-26/libsoftkeymasterdevice.so /vendor/bin/teed /system/lib64/vndk/libsoftkeymasterdevice.so /system/lib/vndk/libsoftkeymasterdevice.so /system/lib/vndk-26/libsoftkeymasterdevice.so;do |
Pierre-Hugues Husson | 11cbdea | 2018-05-14 13:34:52 +0200 | [diff] [blame] | 24 | [ ! -f $f ] && continue |
Pierre-Hugues Husson | b139f72 | 2018-05-19 16:54:30 +0200 | [diff] [blame] | 25 | ctxt="$(ls -lZ $f |grep -oE 'u:object_r:[^:]*:s0')" |
Pierre-Hugues Husson | 47ab64b | 2018-05-26 11:26:33 +0200 | [diff] [blame] | 26 | b="$(echo "$f"|tr / _)" |
Pierre-Hugues Husson | 11cbdea | 2018-05-14 13:34:52 +0200 | [diff] [blame] | 27 | |
Pierre-Hugues Husson | b139f72 | 2018-05-19 16:54:30 +0200 | [diff] [blame] | 28 | mkdir -p /mnt/phh/ |
| 29 | cp -a $f /mnt/phh/$b |
| 30 | sed -i \ |
| 31 | -e 's/ro.build.version.release/ro.keymaster.xxx.release/g' \ |
| 32 | -e 's/ro.build.version.security_patch/ro.keymaster.xxx.security_patch/g' \ |
| 33 | -e 's/ro.product.model/ro.keymaster.mod/g' \ |
| 34 | /mnt/phh/$b |
| 35 | chcon "$ctxt" /mnt/phh/$b |
| 36 | mount -o bind /mnt/phh/$b $f |
Pierre-Hugues Husson | 11cbdea | 2018-05-14 13:34:52 +0200 | [diff] [blame] | 37 | done |
Pierre-Hugues Husson | 1b5659b | 2018-05-19 18:43:25 +0200 | [diff] [blame] | 38 | if [ "$(getprop init.svc.keymaster-3-0)" == "running" ];then |
| 39 | setprop ctl.restart keymaster-3-0 |
| 40 | fi |
| 41 | if [ "$(getprop init.svc.teed)" == "running" ];then |
| 42 | setprop ctl.restart teed |
| 43 | fi |
Pierre-Hugues Husson | 11cbdea | 2018-05-14 13:34:52 +0200 | [diff] [blame] | 44 | fi |
| 45 | } |
| 46 | |
Pierre-Hugues Husson | 16ea168 | 2018-04-15 19:19:47 +0200 | [diff] [blame] | 47 | if mount -o remount,rw /system;then |
Pierre-Hugues Husson | a70b269 | 2018-05-19 22:07:12 +0200 | [diff] [blame] | 48 | resize2fs $(grep ' /system ' /proc/mounts |cut -d ' ' -f 1) || true |
Pierre-Hugues Husson | 16ea168 | 2018-04-15 19:19:47 +0200 | [diff] [blame] | 49 | elif mount -o remount,rw /;then |
Pierre-Hugues Husson | a70b269 | 2018-05-19 22:07:12 +0200 | [diff] [blame] | 50 | resize2fs /dev/root || true |
Pierre-Hugues Husson | 16ea168 | 2018-04-15 19:19:47 +0200 | [diff] [blame] | 51 | fi |
Pierre-Hugues Husson | a70b269 | 2018-05-19 22:07:12 +0200 | [diff] [blame] | 52 | mount -o remount,ro /system || true |
| 53 | mount -o remount,ro / || true |
Pierre-Hugues Husson | 520fea1 | 2018-04-24 22:36:59 +0200 | [diff] [blame] | 54 | |
Pierre-Hugues Husson | 11cbdea | 2018-05-14 13:34:52 +0200 | [diff] [blame] | 55 | fixSPL |
Pierre-Hugues Husson | 520fea1 | 2018-04-24 22:36:59 +0200 | [diff] [blame] | 56 | |
Pierre-Hugues Husson | 29622ec | 2018-04-30 13:56:06 +0200 | [diff] [blame] | 57 | if grep vendor.huawei.hardware.biometrics.fingerprint /vendor/manifest.xml;then |
| 58 | mount -o bind system/phh/huawei/fingerprint.kl /vendor/usr/keylayout/fingerprint.kl |
| 59 | fi |
Pierre-Hugues Husson | 11cbdea | 2018-05-14 13:34:52 +0200 | [diff] [blame] | 60 | |
Pierre-Hugues Husson | bf88632 | 2018-05-18 15:09:30 +0200 | [diff] [blame] | 61 | if ! grep android.hardware.biometrics.fingerprint /vendor/manifest.xml;then |
| 62 | mount -o bind system/phh/empty /system/etc/permissions/android.hardware.fingerprint.xml |
| 63 | fi |
| 64 | |
Pierre-Hugues Husson | 1936b62 | 2018-05-19 13:40:50 +0200 | [diff] [blame] | 65 | if ! grep android.hardware.ir /vendor/manifest.xml;then |
| 66 | mount -o bind system/phh/empty /system/etc/permissions/android.hardware.consumerir.xml |
| 67 | fi |
Pierre-Hugues Husson | 19ce226 | 2018-06-10 22:54:14 +0200 | [diff] [blame] | 68 | |
| 69 | if getprop ro.hardware |grep -qF qcom && [ -f /sys/class/backlight/panel0-backlight/max_brightness ] && \ |
| 70 | grep -qvE '^255$' /sys/class/backlight/panel0-backlight/max_brightness;then |
| 71 | setprop persist.sys.qcom-brightness $(cat /sys/class/backlight/panel0-backlight/max_brightness) |
| 72 | fi |
Pierre-Hugues Husson | c9b1391 | 2018-06-15 15:03:02 +0200 | [diff] [blame] | 73 | |
| 74 | if [ "$(getprop ro.vendor.product.device)" == "OnePlus6" ];then |
| 75 | resize2fs /dev/block/platform/soc/1d84000.ufshc/by-name/userdata |
| 76 | fi |
Pierre-Hugues Husson | 18fb7ed | 2018-07-01 23:00:28 +0200 | [diff] [blame] | 77 | |
Pierre-Hugues Husson | 361aedf | 2018-07-02 00:22:27 +0200 | [diff] [blame] | 78 | if getprop ro.vendor.build.fingerprint |grep -q full_k50v1_64 || getprop ro.hardware |grep -q mt6580 ;then |
Pierre-Hugues Husson | 18fb7ed | 2018-07-01 23:00:28 +0200 | [diff] [blame] | 79 | setprop persist.sys.overlay.nightmode false |
| 80 | fi |
Pierre-Hugues Husson | 3711fd5 | 2018-07-01 23:06:11 +0200 | [diff] [blame] | 81 | |
Pierre-Hugues Husson | 361aedf | 2018-07-02 00:22:27 +0200 | [diff] [blame] | 82 | if getprop ro.wlan.mtk.wifi.5g |grep -q 1;then |
Pierre-Hugues Husson | 3711fd5 | 2018-07-01 23:06:11 +0200 | [diff] [blame] | 83 | setprop persist.sys.overlay.wifi5g true |
| 84 | fi |
Pierre-Hugues Husson | bb82498 | 2018-07-17 18:02:41 +0200 | [diff] [blame] | 85 | |
| 86 | if grep -qF 'mkdir /data/.fps 0770 system fingerp' vendor/etc/init/hw/init.mmi.rc;then |
| 87 | mkdir -p /data/.fps |
| 88 | chmod 0770 /data/.fps |
| 89 | chown system:9015 /data/.fps |
| 90 | |
| 91 | chown system:9015 /sys/devices/soc/soc:fpc_fpc1020/irq |
| 92 | chown system:9015 /sys/devices/soc/soc:fpc_fpc1020/irq_cnt |
| 93 | fi |