69 lines
1.8 KiB
Bash
69 lines
1.8 KiB
Bash
#!/bin/bash
|
|
|
|
#
|
|
# /usr/bin/ppp-uboot-mkscr
|
|
# Utility that generates the U-Boot boot script.
|
|
#
|
|
|
|
# Source and destination file paths
|
|
BOOT_TXT="/boot/boot.txt"
|
|
BOOT_SCR="/boot/boot.scr"
|
|
|
|
# Boot script description
|
|
IMAGE_DESC="U-Boot boot script"
|
|
|
|
# Determine the performed action
|
|
if [[ ! -r ${BOOT_SCR} ]]; then
|
|
ACTION="Generating"
|
|
else
|
|
ACTION="Re-generating"
|
|
fi
|
|
|
|
# Check that we're running as root
|
|
if [[ ${EUID} != 0 ]]; then
|
|
echo "${ACTION} ${IMAGE_DESC} not possible, please execute this utility as root."
|
|
exit 1
|
|
fi
|
|
|
|
# Make sure that the required utility is available
|
|
if [[ ! -x /usr/bin/mkimage ]]; then
|
|
echo "${ACTION} ${IMAGE_DESC} not possible, mkimage utility not found."
|
|
echo "Please install the uboot-tools package, by running the following command:"
|
|
echo " emerge dev-embedded/uboot-pinephone-pro"
|
|
exit 1
|
|
fi
|
|
|
|
# Check that the source file exists
|
|
if [[ ! -r ${BOOT_TXT} ]]; then
|
|
echo "${ACTION} ${IMAGE_DESC} not possible, file ${BOOT_TXT} not found."
|
|
echo "Please reinstall the uboot-pinephone package, by running the following command:"
|
|
echo " emerge dev-embedded/uboot-pinephone-pro"
|
|
exit 1
|
|
fi
|
|
|
|
# Is this a quiet execution?
|
|
VERBOSE=true
|
|
while getopts "q" SWITCH; do
|
|
if [[ ${SWITCH} = "q" ]]; then
|
|
VERBOSE=false
|
|
fi
|
|
done
|
|
|
|
# Generate the U-Boot boot script
|
|
echo -n "${ACTION} ${IMAGE_DESC} ${BOOT_SCR}..."
|
|
if [[ ${VERBOSE} = true ]]; then
|
|
echo
|
|
mkimage -A arm -O linux -T script -C none -n "${IMAGE_DESC}" -d ${BOOT_TXT} ${BOOT_SCR}
|
|
else
|
|
mkimage -A arm -O linux -T script -C none -n "${IMAGE_DESC}" -d ${BOOT_TXT} ${BOOT_SCR} > /dev/null 2>&1
|
|
if [[ $? = 0 ]]; then
|
|
echo " done."
|
|
else
|
|
echo " failed."
|
|
echo "${ACTION} ${IMAGE_DESC} from ${BOOT_TXT} failed due to unknown reason."
|
|
echo "Please try generating the boot script again, or your phone may no longer boot properly."
|
|
fi
|
|
fi
|
|
|
|
# EOF
|