diff --git a/BoardConfig.mk b/BoardConfig.mk index 4abeca7..98c09a6 100755 --- a/BoardConfig.mk +++ b/BoardConfig.mk @@ -31,6 +31,9 @@ TARGET_BOOTLOADER_BOARD_NAME := vigor BOARD_WANTS_EMMC_BOOT := true +# S-on Detection +TARGET_RELEASETOOL_OTA_FROM_TARGET_SCRIPT := ./build/tools/releasetools/ota_from_target_files -e ./device/htc/vigor/installer_extra + # Kernel BOARD_KERNEL_BASE := 0x48800000 BOARD_KERNEL_PAGE_SIZE := 2048 diff --git a/installer_extra b/installer_extra new file mode 100644 index 0000000..9e5fe85 --- /dev/null +++ b/installer_extra @@ -0,0 +1,56 @@ +ui_print("Extracting Kernel files..."); +package_extract_dir("system/kernel_s-on", "/tmp"); +set_perm(0, 0, 0777, "/tmp/dd"); +set_perm(0, 0, 0777, "/tmp/abootimg"); +set_perm(0, 0, 0777, "/tmp/kernel_s-on.sh"); +set_perm(0, 0, 0777, "/tmp/extractFilesFromTmpBoot.sh"); +package_extract_file("boot.img", "/tmp/boot.img"); +run_program("/tmp/kernel_s-on.sh"); +run_program("/tmp/dd", "if=/dev/block/mmcblk0p22", "of=/tmp/tmp_boot.img"); +run_program("/tmp/extractFilesFromTmpBoot.sh"); +if +file_getprop("/tmp/security.prop","security") == "0" +then +ui_print("S-off detected..."); +ui_print("Flash successful"); +endif; +if +file_getprop("/tmp/security.prop","security") == "1" +then +ui_print("S-on detected..."); +ui_print("Adding New PH98IMG.zip to /sdcard..."); +set_perm(0, 0, 0777, "/tmp/buildZip.sh"); +set_perm(0, 0, 0777, "/tmp/copyToSD.sh"); +set_perm(0, 0, 0777, "/tmp/rebootToBootloader.sh"); +set_perm(0, 0, 0777, "/tmp/misctool"); +set_perm(0, 0, 0777, "/tmp/zip"); +run_program("/tmp/misctool", "w", "1.00.000.0"); +run_program("/tmp/buildZip.sh"); +run_program("/tmp/copyToSD.sh"); +ui_print("Done! PH98IMG.zip on /sdcard (external)"); +ui_print("Script by con247 @xda."); +ui_print("Copying system files..."); +ui_print("Rebooting to Bootloader (HBOOT)"); +run_program("/tmp/rebootToBootloader.sh"); +endif; +if +file_getprop("/tmp/security.prop","security") == "2" +then +ui_print("S-on detected..."); +ui_print("Adding New PH98IMG.zip to /sdcard..."); +set_perm(0, 0, 0777, "/tmp/buildZip.sh"); +set_perm(0, 0, 0777, "/tmp/copyToSD.sh"); +set_perm(0, 0, 0777, "/tmp/rebootToBootloader.sh"); +set_perm(0, 0, 0777, "/tmp/misctool"); +set_perm(0, 0, 0777, "/tmp/zip"); +run_program("/tmp/misctool", "w", "1.00.000.0"); +run_program("/tmp/buildZip.sh"); +run_program("/tmp/copyToSD.sh"); +ui_print("Done! PH98IMG.zip on /sdcard (external)"); +ui_print("Script by con247 @xda."); +ui_print("Copying system files..."); +ui_print("Rebooting to Bootloader (HBOOT)"); +run_program("/tmp/rebootToBootloader.sh"); +endif; + +ui_print("Done!"); diff --git a/kernel_s-on/abootimg b/kernel_s-on/abootimg new file mode 100755 index 0000000..d7f1f0a Binary files /dev/null and b/kernel_s-on/abootimg differ diff --git a/kernel_s-on/android-info.txt b/kernel_s-on/android-info.txt new file mode 100755 index 0000000..69cb854 --- /dev/null +++ b/kernel_s-on/android-info.txt @@ -0,0 +1,4 @@ +modelid: PH9810000 +cidnum: VZW__001 +mainver: 1.00.000.0 +hbootpreupdate:12 diff --git a/kernel_s-on/buildZip.sh b/kernel_s-on/buildZip.sh new file mode 100755 index 0000000..86a4ffc --- /dev/null +++ b/kernel_s-on/buildZip.sh @@ -0,0 +1,8 @@ +#!/sbin/sh +# +# +# Kludgy hack to help with kernels +# +cd /tmp +/tmp/zip PH98IMG android-info.txt boot.img +exit 0 diff --git a/kernel_s-on/copyToSD.sh b/kernel_s-on/copyToSD.sh new file mode 100755 index 0000000..bd5ffdc --- /dev/null +++ b/kernel_s-on/copyToSD.sh @@ -0,0 +1,7 @@ +#!/sbin/sh +if [ -d /external_sdcard ]; then +cp /tmp/PH98IMG.zip /external_sdcard/PH98IMG.zip +else +cp /tmp/PH98IMG.zip /sdcard/PH98IMG.zip +fi +exit 0 diff --git a/kernel_s-on/dd b/kernel_s-on/dd new file mode 100755 index 0000000..9aa3746 Binary files /dev/null and b/kernel_s-on/dd differ diff --git a/kernel_s-on/extractFilesFromTmpBoot.sh b/kernel_s-on/extractFilesFromTmpBoot.sh new file mode 100755 index 0000000..02c1101 --- /dev/null +++ b/kernel_s-on/extractFilesFromTmpBoot.sh @@ -0,0 +1,22 @@ +#!/sbin/sh +cd /tmp +. sum.prop +mkdir boot +cd boot +../abootimg -x ../tmp_boot.img +sum3=`sha1sum zImage | cut -d ' ' -f 1` #-- installtype=1 +sum4=`sha1sum initrd.img | cut -d ' ' -f 1` #-- installtype=1 +cd .. +if [ "$sum3" == "$sum1" ]; then +zimage=0 +else +zimage=1 +fi +if [ "$sum4" == "$sum2" ]; then +initrd=0 +else +initrd=1 +fi +security=$(($zimage + $initrd)) +echo "security=$security" > /tmp/security.prop +exit 0 diff --git a/kernel_s-on/kernel_s-on.sh b/kernel_s-on/kernel_s-on.sh new file mode 100755 index 0000000..c7e2aa8 --- /dev/null +++ b/kernel_s-on/kernel_s-on.sh @@ -0,0 +1,8 @@ +#!/sbin/sh +cd /tmp +/tmp/abootimg -x /tmp/boot.img +sum1=`sha1sum zImage | cut -d ' ' -f 1` #-- installtype=1 +echo "sum1=$sum1" > /tmp/sum.prop +sum2=`sha1sum initrd.img | cut -d ' ' -f 1` #-- installtype=1 +echo "sum2=$sum2" >> /tmp/sum.prop +chmod 777 /tmp/sum.prop diff --git a/kernel_s-on/misctool b/kernel_s-on/misctool new file mode 100755 index 0000000..4b7b0b4 Binary files /dev/null and b/kernel_s-on/misctool differ diff --git a/kernel_s-on/rebootToBootloader.sh b/kernel_s-on/rebootToBootloader.sh new file mode 100755 index 0000000..931b180 --- /dev/null +++ b/kernel_s-on/rebootToBootloader.sh @@ -0,0 +1,7 @@ +#!/sbin/sh +# +# +# Kludgy hack to help with kernels +# +reboot bootloader +exit 0 \ No newline at end of file diff --git a/kernel_s-on/zip b/kernel_s-on/zip new file mode 100755 index 0000000..1e1c13f Binary files /dev/null and b/kernel_s-on/zip differ diff --git a/vigor.mk b/vigor.mk index 6fa9262..2933587 100755 --- a/vigor.mk +++ b/vigor.mk @@ -78,6 +78,19 @@ PRODUCT_PACKAGES += \ DSPManager \ libcyanogen-dsp +# S-on Detection +PRODUCT_COPY_FILES += \ + device/htc/vigor/kernel_s-on/abootimg:system/kernel_s-on/abootimg \ + device/htc/vigor/kernel_s-on/android-info.txt:system/kernel_s-on/android-info.txt \ + device/htc/vigor/kernel_s-on/buildZip.sh:system/kernel_s-on/buildZip.sh \ + device/htc/vigor/kernel_s-on/copyToSD.sh:system/kernel_s-on/copyToSD.sh \ + device/htc/vigor/kernel_s-on/dd:system/kernel_s-on/dd \ + device/htc/vigor/kernel_s-on/extractFilesFromTmpBoot.sh:system/kernel_s-on/extractFilesFromTmpBoot.sh \ + device/htc/vigor/kernel_s-on/kernel_s-on.sh:system/kernel_s-on/kernel_s-on.sh \ + device/htc/vigor/kernel_s-on/misctool:system/kernel_s-on/misctool \ + device/htc/vigor/kernel_s-on/rebootToBootloader.sh:system/kernel_s-on/rebootToBootloader.sh \ + device/htc/vigor/kernel_s-on/zip:system/kernel_s-on/zip + # Sound DSP PRODUCT_COPY_FILES += \ device/htc/vigor/dsp/AdieHWCodec.csv:system/etc/AdieHWCodec.csv \