diff --git a/tools/fip_create/fip_create.c b/tools/fip_create/fip_create.c
index d1802b7fd3dfa143d08d1ed656290d3b9ccf0f36..c940c5b0dd63a65a37d8dd3b694ff13e1a4fa1a6 100644
--- a/tools/fip_create/fip_create.c
+++ b/tools/fip_create/fip_create.c
@@ -543,7 +543,7 @@ static int parse_cmdline(int argc, char **argv, struct option *options,
 					if (status != 0) {
 						printf("Failed to process %s\n",
 						       options[option_index].name);
-						break;
+						return status;
 					} else {
 						/* Update package */
 						*do_pack = 1;