sandbox: Disintangle declarations in do_host_bind()

This function has a strange mix of declarations and argument parsing
which is a bit hard to follow and harder to modify. Separate out the
declarations at the start of the function and adjust the ordering of
the code slightly.

Signed-off-by: Simon Glass <sjg@chromium.org>
diff --git a/cmd/host.c b/cmd/host.c
index 1d21f79..927c23d 100644
--- a/cmd/host.c
+++ b/cmd/host.c
@@ -41,16 +41,21 @@
 static int do_host_bind(struct cmd_tbl *cmdtp, int flag, int argc,
 			char *const argv[])
 {
+	const char *dev_str;
+	char *file;
+	char *ep;
+	int dev;
+
 	if (argc < 2 || argc > 3)
 		return CMD_RET_USAGE;
-	char *ep;
-	char *dev_str = argv[1];
-	char *file = argc >= 3 ? argv[2] : NULL;
-	int dev = simple_strtoul(dev_str, &ep, 16);
+	dev_str = argv[1];
+	dev = simple_strtoul(dev_str, &ep, 16);
 	if (*ep) {
 		printf("** Bad device specification %s **\n", dev_str);
 		return CMD_RET_USAGE;
 	}
+	file = argc >= 3 ? argv[2] : NULL;
+
 	return !!host_dev_bind(dev, file);
 }