Untitled diff

Created Diff never expires
18 removals
81 lines
10 additions
73 lines
#! /bin/bash
#! /bin/bash
echo BY INSTALLING THE SOFTWARE, YOU ARE AGREEING TO BE BOUND BY THE BlackBerry
echo BY INSTALLING THE SOFTWARE, YOU ARE AGREEING TO BE BOUND BY THE BlackBerry
echo Solution License Agreement which can be reviewed at www.blackberry.com/leg-
echo Solution License Agreement which can be reviewed at www.blackberry.com/leg-
echo al/bbsla. IF YOU HAVE ANY QUESTIONS OR CONCERNS ABOUT THE TERMS OF THIS AG-
echo al/bbsla. IF YOU HAVE ANY QUESTIONS OR CONCERNS ABOUT THE TERMS OF THIS AG-
echo REEMENT, PLEASE CONTACT blackberry AT LEGALinfo@BLACKBERRY.COM. PLEASE READ
echo REEMENT, PLEASE CONTACT blackberry AT LEGALinfo@BLACKBERRY.COM. PLEASE READ
echo THIS DOCUMENT CAREFULLY BEFORE INSTALLING OR USING THE SOFTWARE.
echo THIS DOCUMENT CAREFULLY BEFORE INSTALLING OR USING THE SOFTWARE.
echo "***************************************************************************"
echo "***************************************************************************"
echo ""
echo ""
if [[ `uname` = "Linux" ]] ; then
if [[ `uname` = "Linux" ]] ; then
HOST=host/linux-x86
HOST=host/linux-x86
elif [[ `uname` = "Darwin" ]] ; then
elif [[ `uname` = "Darwin" ]] ; then
HOST=host/darwin-x86
HOST=host/darwin-x86
else
else
echo "Unsupported host"
echo "Unsupported host"
exit 1
exit 1
fi
fi


BIN=./$HOST/bin
BIN=./$HOST/bin
IMG=./img
IMG=./img
FASTBOOT=fastboot
FASTBOOT=fastboot


echo Note:If device is not in fastboot mode
echo Note:If device is not in fastboot mode
echo Please switch to fastboot mode by holding the power and volume down key for 30s
echo Please switch to fastboot mode by holding the power and volume down key for 30s
VAR1=$($BIN/fastboot getvar device 2>&1 | grep "device")
VAR1=$($BIN/fastboot getvar device 2>&1 | grep "device")
read_dev="${VAR1#*:}"
read_dev="${VAR1#*:}"
read_dev=$(echo ${read_dev} | sed 's/[[:space:]]//g');
read_dev=$(echo ${read_dev} | sed 's/[[:space:]]//g');
if [ "bbb100" != "${read_dev}" ]; then
if [ "bbb100" != "${read_dev}" ]; then
echo ""
echo ""
echo "Loader is not valid for this device variant, the device product detected is ${read_dev}."
echo "Loader is not valid for this device variant, the device product detected is ${read_dev}."
echo "Please obtain a loader which supports the device variant above and try again."
echo "Please obtain a loader which supports the device variant above and try again."
exit
exit
fi
fi
VAR1=$($BIN/fastboot getvar hlos-sig-tag 2>&1 | grep "hlos-sig-tag")
VAR1=$($BIN/fastboot getvar hlos-sig-tag 2>&1 | grep "hlos-sig-tag")
read_dev="${VAR1#*:}"
read_dev="${VAR1#*:}"
read_dev=$(echo ${read_dev} | sed 's/[[:space:]]//g');
read_dev=$(echo ${read_dev} | sed 's/[[:space:]]//g');
if [ "" != "${read_dev}" ]; then
if [ "" == "${read_dev}" ]; then read_dev=common; fi
if [ "" == "${read_dev}" ]; then read_dev=common; fi
echo ""
VAR2=$($BIN/fastboot getvar variant 2>&1 | grep "variant")
echo "Loader is not valid for this device variant, the device variant detected is ${read_dev}."
read_dev_variant="${VAR2#*:}"
echo "Please obtain a loader which supports the device variant above and try again."
read_dev_variant=$(echo ${read_dev_variant} | sed 's/[[:space:]]//g');
exit
if [ "dscn" == "${read_dev_variant}" ]; then read_dev_variant=china; fi
fi
if [ "cn" == "${read_dev_variant}" ]; then read_dev_variant=china; fi
DCFG="devcfg"
if [ "china" == "${read_dev_variant}" ]; then DCFG="devcfg_cn"; fi


while true; do
while true; do
read -p "This script will wipe off all user data, do you want to continue? [y/n]:" answer
read -p "This script will wipe off all user data, do you want to continue? [y/n]:" answer
case $answer in
case $answer in
[Yy] ) break;;
[Yy] ) break;;
[Nn] ) exit;;
[Nn] ) exit;;
* ) echo "Please enter y or n.";;
* ) echo "Please enter y or n.";;
esac
esac
done
done
$BIN/fastboot oem securewipe
$BIN/fastboot oem securewipe
echo "It may take 5 to 15 minutes to securely wipe the device"
echo "It may take 5 to 15 minutes to securely wipe the device"
sleep 5
sleep 5
$BIN/$FASTBOOT flash tz $IMG/tz.mbn
$BIN/$FASTBOOT flash tz $IMG/tz.mbn
$BIN/$FASTBOOT flash devcfg $IMG/devcfg.mbn
$BIN/$FASTBOOT flash devcfg $IMG/${DCFG}.mbn
$BIN/$FASTBOOT flash rpm $IMG/rpm.mbn
$BIN/$FASTBOOT flash rpm $IMG/rpm.mbn
$BIN/$FASTBOOT flash sbl1 $IMG/sbl1_signed.mbn
$BIN/$FASTBOOT flash sbl1 $IMG/sbl1_signed.mbn
$BIN/$FASTBOOT flash aboot $IMG/emmc_appsboot.mbn
$BIN/$FASTBOOT flash aboot $IMG/emmc_appsboot.mbn
$BIN/$FASTBOOT flash bootsig $IMG/boot.img.sig
$BIN/$FASTBOOT flash bootsig $IMG/boot.img.sig
$BIN/$FASTBOOT flash recoverysig $IMG/recovery.img.sig
$BIN/$FASTBOOT flash recoverysig $IMG/recovery.img.sig
$BIN/$FASTBOOT flash boot $IMG/boot.img
$BIN/$FASTBOOT flash boot $IMG/boot.img
$BIN/$FASTBOOT flash recovery $IMG/recovery.img
$BIN/$FASTBOOT flash recovery $IMG/recovery.img
$BIN/$FASTBOOT flash cache $IMG/cache.img
$BIN/$FASTBOOT flash cache $IMG/cache.img
$BIN/$FASTBOOT flash userdata $IMG/userdata.img
$BIN/$FASTBOOT flash userdata $IMG/userdata.img
VAR2=$($BIN/fastboot getvar variant 2>&1 | grep "variant")
$BIN/$FASTBOOT flash modem $IMG/NON-HLOS-${read_dev_variant}.bin
read_dev_variant="${VAR2#*:}"
read_dev_variant=$(echo ${read_dev_variant} | sed 's/[[:space:]]//g');
if [ "${read_dev_variant}" != "" ]; then
$BIN/$FASTBOOT flash modem $IMG/NON-HLOS-${read_dev_variant}.bin
if [ $? != 0 ]; then echo Modem image does not match the device variant ${read_dev_variant}; exit; fi
else
echo Please contact BlackBerry, Failed to detect your device variant
exit
fi
$BIN/$FASTBOOT flash dsp $IMG/adspso.bin
$BIN/$FASTBOOT flash dsp $IMG/adspso.bin
$BIN/$FASTBOOT flash system $IMG/system.img
$BIN/$FASTBOOT flash system $IMG/system.img
$BIN/$FASTBOOT flash oem $IMG/oem.img
$BIN/$FASTBOOT flash oem $IMG/oem_${read_dev}.img
$BIN/$FASTBOOT reboot
$BIN/$FASTBOOT reboot