diff --git a/util/flash_ec b/util/flash_ec index be172c616c..5b05604d76 100755 --- a/util/flash_ec +++ b/util/flash_ec @@ -232,6 +232,11 @@ ec_enable_boot0() { eval ${SERVO_TYPE}_${MCU}_boot0 } +# Returns 0 on success (if on beaglebone) +on_servov3() { + grep -qs '^CHROMEOS_RELEASE_BOARD=beaglebone_servo' /etc/lsb-release +} + # Put back the servo and the system in a clean state at exit FROZEN_PIDS="" cleanup() { @@ -375,15 +380,21 @@ function flash_openocd() { function flash_flashrom() { TOOL_PATH="${EC_DIR}/build/${BOARD}/util:/usr/sbin/:$PATH" FLASHROM=$(PATH="${TOOL_PATH}" which flashrom) - FLASHROM_PARAM="-p ft2232_spi:type=servo-v2,port=B" + if on_servov3; then + FLASHROM_PARAM="-p linux_spi" + else + FLASHROM_PARAM="-p ft2232_spi:type=servo-v2,port=B" + fi if [ ! -x "$FLASHROM" ]; then die "no flashrom util found." fi - SERIALNAME=$(${DUT_CONTROL_CMD} serialname | cut -d: -f2) - if [[ "$SERIALNAME" != "" ]] ; then - FLASHROM_PARAM="${FLASHROM_PARAM},serial=${SERIALNAME}" + if ! on_servov3; then + SERIALNAME=$(${DUT_CONTROL_CMD} serialname | cut -d: -f2) + if [[ "$SERIALNAME" != "" ]] ; then + FLASHROM_PARAM="${FLASHROM_PARAM},serial=${SERIALNAME}" + fi fi dut_control cold_reset:on