Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit eea26b89 authored by Sahil Sonar's avatar Sahil Sonar 💬
Browse files

Merge branch '1641-a16-fastboot_script' into 'a16'

flash: Refactor find_device() func

See merge request !239
parents 60321eb4 e0796092
Loading
Loading
Loading
Loading
+28 −5
Original line number Diff line number Diff line
#!/usr/bin/env bash

set -e
set -euo pipefail

# Paths/files
ROOT_DIR="$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )"
@@ -70,6 +70,9 @@ fi
# Check for connected phone
find_device() {
  echo "INFO: Looking for connected device(s)..."
  PRODUCT="${PRODUCT:-unknown}"
  PRODUCT_ID="${PRODUCT_ID:-unknown}"
  PRODUCT_ID_OLD="${PRODUCT_ID_OLD:-unknown}"
  DEVICE_FOUND="false"
  while [ ${DEVICE_FOUND} = "false" ]
  do
@@ -80,8 +83,18 @@ find_device() {
      # Checking the product ID
      PRODUCT_STRING=$("${FASTBOOT_BIN}" -s "${sn}" getvar product 2>&1)
      # Add serial, if product matches
      if [[ ${PRODUCT_STRING} == *"${PRODUCT_ID}"* ]] || [[ ${PRODUCT_STRING} == *"${PRODUCT_ID_OLD}"* ]]
      then
      matched=false
      if [[ "${PRODUCT_ID}" != "unknown" ]]; then
        if [[ ${PRODUCT_STRING} == *"${PRODUCT_ID}"* ]]; then
          matched=true
        fi
      fi
      if [[ "${PRODUCT_ID_OLD}" != "unknown" ]]; then
        if [[ ${PRODUCT_STRING} == *"${PRODUCT_ID_OLD}"* ]]; then
          matched=true
        fi
      fi
      if [[ "${matched}" == "true" ]]; then
        serial_numbers="${serial_numbers} $sn"
      fi
    done
@@ -161,6 +174,16 @@ fi
# Common flash function to be called from device flash script
flash_factory() {
  # Begin with some OS checks and variable definition
  USE_FASTBOOTD="${USE_FASTBOOTD:-false}"
  FW_BL_RESTART="${FW_BL_RESTART:-false}"
  CLEAN_FLASH="${CLEAN_FLASH:-false}"
  VIRTUAL_AB="${VIRTUAL_AB:-false}"
  FLASH_AB_FW_IMGS="${FLASH_AB_FW_IMGS:-}"
  FLASH_A_FW_IMGS="${FLASH_A_FW_IMGS:-}"
  FLASH_AB_IMGS="${FLASH_AB_IMGS:-}"
  FLASH_A_IMGS="${FLASH_A_IMGS:-}"
  ERASE_IMGS="${ERASE_IMGS:-}"
  FORMAT_IMGS="${FORMAT_IMGS:-}"
  os_checks

  # Call function to look for device(s)
@@ -215,7 +238,7 @@ then
    for BLOB in $2;
    do
      PARTITION="${BLOB%%:*}"
      IMAGE=$(echo $BLOB | cut -s -d : -f 2)
      IMAGE=$(echo "$BLOB" | cut -s -d : -f 2)

      if [[ "$PARTITION" = "userdata" && "${CLEAN_FLASH}" != "true" ]]
      then
@@ -234,7 +257,7 @@ then
    for BLOB in $2;
    do
      PARTITION="${BLOB%%:*}"
      IMAGE=$(echo $BLOB | cut -s -d : -f 2)
      IMAGE=$(echo "$BLOB" | cut -s -d : -f 2)

      flash_image_ab_or_abort "${1}" "${PARTITION}" "${IMAGES_DIR}/${IMAGE:-$PARTITION.img}"
    done