From 375ecebcb74efcba906b12219ac73e37d3952799 Mon Sep 17 00:00:00 2001 From: Jett Rink Date: Thu, 29 Mar 2018 12:39:16 -0600 Subject: [PATCH] util: update flash_ec to handle unibuild emerge paths If a baseboard exists in the build.mk for a board, use that as the unibuild path. BRANCH=none BUG=b:77128456 TEST=tested the following command with correct results: flash_ec --board=yorp (baseboard) flash_ec --board=bip (baseboard) flash_ec --board=grunt (non-baseboard) Change-Id: Ic4573cb01849275d1333ff9e715f69a4c95444b0 Signed-off-by: Jett Rink Reviewed-on: https://chromium-review.googlesource.com/986753 Reviewed-by: Vincent Palatin --- Makefile.rules | 4 ++++ util/flash_ec | 11 +++++++++-- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/Makefile.rules b/Makefile.rules index ad8db5dfd8..7cf6438b3c 100644 --- a/Makefile.rules +++ b/Makefile.rules @@ -463,6 +463,10 @@ flash_ec: $(out)/ec.bin flash_dfu: $(out)/ec.bin sudo ./$(BDIR)/dfu $(out)/ec.bin +.PHONY: print-baseboard +print-baseboard: + @echo "${BASEBOARD}" + .PHONY: clean clean: -rm -rf $(out) diff --git a/util/flash_ec b/util/flash_ec index 1ef325b530..b8915b1a25 100755 --- a/util/flash_ec +++ b/util/flash_ec @@ -222,7 +222,6 @@ function get_servo_type() { } BOARD=${FLAGS_board} -BOARD_ROOT=/build/${BOARD} in_array() { local n=$# @@ -412,13 +411,21 @@ else EC_FILE=ec.bin fi -EMERGE_BUILD=${BOARD_ROOT}/firmware/${EC_FILE} LOCAL_BUILD= if [[ -n "${EC_DIR}" ]]; then LOCAL_BUILD="${EC_DIR}/build/${BOARD}/${EC_FILE}" fi +# Get baseboard from build system if present +BASEBOARD=$(make --quiet -C ${EC_DIR} BOARD=${BOARD} print-baseboard) + +if [[ -n "${BASEBOARD}" ]]; then + EMERGE_BUILD=/build/${BASEBOARD}/firmware/${BOARD}/${EC_FILE} +else + EMERGE_BUILD=/build/${BOARD}/firmware/${EC_FILE} +fi + # Find the EC image to use function ec_image() { # No image specified on the command line, try default ones