From ad147b744091c34efe6b871bafad1546cbb328de Mon Sep 17 00:00:00 2001 From: Jesper <1jesper1@gmail.com> Date: Tue, 9 Feb 2021 21:51:34 +0100 Subject: [PATCH 1/2] Only use usb ffs when usb-ffs directory exist -Prevents kernel panic for Android 4.2.2 --- etc/ffs-check.sh | 7 +++++++ etc/init.rc | 6 ++---- etc/init.recovery.usb.rc | 1 - 3 files changed, 9 insertions(+), 5 deletions(-) create mode 100644 etc/ffs-check.sh diff --git a/etc/ffs-check.sh b/etc/ffs-check.sh new file mode 100644 index 0000000000..574593721d --- /dev/null +++ b/etc/ffs-check.sh @@ -0,0 +1,7 @@ +if [ -d "/dev/usb-ffs" ]; then + echo "/dev/usb-fss directory found" + 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 + write /sys/class/android_usb/android0/f_ffs/aliases adb +fi diff --git a/etc/init.rc b/etc/init.rc index e0889c44d5..684a58cd2e 100644 --- a/etc/init.rc +++ b/etc/init.rc @@ -48,10 +48,8 @@ on init on fs mount pstore pstore /sys/fs/pstore - 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 - + exec ffs-check.sh + on boot ifup lo hostname localhost diff --git a/etc/init.recovery.usb.rc b/etc/init.recovery.usb.rc index 8ef20e0ec9..fa7c4effc2 100644 --- a/etc/init.recovery.usb.rc +++ b/etc/init.recovery.usb.rc @@ -2,7 +2,6 @@ on fs write /sys/class/android_usb/android0/enable 0 write /sys/class/android_usb/android0/idVendor 18D1 write /sys/class/android_usb/android0/idProduct D001 - write /sys/class/android_usb/android0/f_ffs/aliases adb write /sys/class/android_usb/android0/functions adb write /sys/class/android_usb/android0/iManufacturer ${ro.product.manufacturer} write /sys/class/android_usb/android0/iProduct ${ro.product.model} From 246053032b96bb234ad3108aed720f9802ad5895 Mon Sep 17 00:00:00 2001 From: 1Jesper1 <1jesper1@gmail.com> Date: Thu, 20 Jan 2022 23:51:08 +0100 Subject: [PATCH 2/2] Update ffs-check.sh Fix echo label --- etc/ffs-check.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/etc/ffs-check.sh b/etc/ffs-check.sh index 574593721d..09fa6b511b 100644 --- a/etc/ffs-check.sh +++ b/etc/ffs-check.sh @@ -1,5 +1,5 @@ if [ -d "/dev/usb-ffs" ]; then - echo "/dev/usb-fss directory found" + echo "/dev/usb-ffs directory found" 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