#!/bin/bash # Only execute this script on a Brillo provisioned Edison. # See your Brillo-Edison online information for initial provisioning and recovery. set -e function dir_with_file() { local file=${1}; shift local dir; for dir; do if [ -z "${dir}" ]; then continue; fi if [ -r "${dir}/${file}" ]; then echo ${dir} return fi done echo "Could not find ${file}, looked in $@" >&2 return 1 } LOCAL_DIR=$(dirname "${0}") # Location of where the Brillo OS image is built. OS=$(dir_with_file boot.img \ "${ANDROID_PROVISION_OS_PARTITIONS}" \ "${LOCAL_DIR}" \ "${BRILLO_OUT_DIR}" \ "${ANDROID_PRODUCT_OUT}") # Location of binary blobs supplied by the vendor. VENDOR=$(dir_with_file u-boot-edison.bin \ "${ANDROID_PROVISION_VENDOR_PARTITIONS}" \ "${LOCAL_DIR}" \ "${ANDROID_BUILD_TOP}/vendor/bsp/intel/edison/uboot_firmware") fastboot flash gpt "${VENDOR}"/gpt.bin \ flash u-boot "${VENDOR}"/u-boot-edison.bin \ flash boot_a "${OS}"/boot.img \ flash system_a "${OS}"/system.img \ flash boot_b "${OS}"/boot.img \ flash system_b "${OS}"/system.img \ flash userdata "${OS}"/userdata.img \ oem set_active 0 "$@"