From f60a66ef5d7da1980f180cd1cbfd2ce01157e522 Mon Sep 17 00:00:00 2001 From: Joel Johnson Date: Fri, 17 Apr 2020 09:38:08 -0600 Subject: [PATCH] cmd: mvebu: bubt: show image boot device When a mismatch is found trying to write an image for one boot method to a different boot device, print an error message including the image header marked target boot device type. Signed-off-by: Joel Johnson Reviewed-by: Stefan Roese --- cmd/mvebu/bubt.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/cmd/mvebu/bubt.c b/cmd/mvebu/bubt.c index be6c5869a9..dc0ce01c35 100644 --- a/cmd/mvebu/bubt.c +++ b/cmd/mvebu/bubt.c @@ -728,7 +728,17 @@ static int bubt_check_boot_mode(const struct bubt_dev *dst) if (a38x_boot_modes[mode].id == hdr->blockid) return 0; - puts("Error: A38x image not built for destination device!\n"); + for (int i = 0; i < ARRAY_SIZE(a38x_boot_modes); i++) { + if (a38x_boot_modes[i].id == hdr->blockid) { + printf("Error: A38x image meant to be " + "booted from \"%s\", not \"%s\"!\n", + a38x_boot_modes[i].name, dst->name); + return -ENOEXEC; + } + } + + printf("Error: unknown boot device in A38x image header: " + "0x%x\n", hdr->blockid); return -ENOEXEC; } else { return 0; -- 2.39.5