summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--futility/updater_archive.c22
-rwxr-xr-xtests/futility/test_update.sh2
2 files changed, 21 insertions, 3 deletions
diff --git a/futility/updater_archive.c b/futility/updater_archive.c
index 9a1bb059..0a3ed502 100644
--- a/futility/updater_archive.c
+++ b/futility/updater_archive.c
@@ -813,8 +813,26 @@ const struct model_config *manifest_find_model(const struct manifest *manifest,
if (strcmp(model_name, manifest->models[i].name) == 0)
model = &manifest->models[i];
}
- if (!model)
- ERROR("Model '%s' is not defined in manifest.", model_name);
+ if (!model) {
+ if (!*model_name)
+ ERROR("Cannot get model name.");
+ else
+ ERROR("Unsupported model: '%s'.", model_name);
+
+ fprintf(stderr,
+ "You are probably running an image for wrong board, or "
+ "a device in early stage that 'mosys' command is not "
+ "ready, or image from old (or factory) branches that "
+ "Unified Build config is not updated yet for 'mosys'.\n"
+ "Please check command 'mosys platform model', "
+ "which should output one of the supported models below:"
+ "\n");
+
+ for (i = 0; i < manifest->num; i++)
+ fprintf(stderr, " %s", manifest->models[i].name);
+ fprintf(stderr, "\n");
+ }
+
free(sys_model_name);
return model;
diff --git a/tests/futility/test_update.sh b/tests/futility/test_update.sh
index 294517d7..03743f97 100755
--- a/tests/futility/test_update.sh
+++ b/tests/futility/test_update.sh
@@ -378,7 +378,7 @@ test_update "Full update (--archive, model=peppy)" \
"${FROM_IMAGE}.ap" "${PEPPY_BIOS}" \
-a "${A}" --wp=0 --sys_props 0,0x10001,1,3 --model=peppy
test_update "Full update (--archive, model=unknown)" \
- "${FROM_IMAGE}.ap" "!Model 'unknown' is not defined" \
+ "${FROM_IMAGE}.ap" "!Unsupported model: 'unknown'" \
-a "${A}" --wp=0 --sys_props 0,0x10001,1,3 --model=unknown
test_update "Full update (--archive, model=whitetip, signature_id=WL)" \
"${FROM_IMAGE}.al" "${LINK_BIOS}" \