x86: Allow cmdline setup in setup_zimage() to be optional

If we are passing this using the device tree then we may not want to
set this up here.

Signed-off-by: Simon Glass <sjg@chromium.org>
diff --git a/arch/x86/lib/zimage.c b/arch/x86/lib/zimage.c
index 1f59bf2..2f0e92f 100644
--- a/arch/x86/lib/zimage.c
+++ b/arch/x86/lib/zimage.c
@@ -243,18 +243,21 @@
 		hdr->loadflags |= HEAP_FLAG;
 	}
 
-	if (bootproto >= 0x0202) {
-		hdr->cmd_line_ptr = (uintptr_t)cmd_line;
-	} else if (bootproto >= 0x0200) {
-		setup_base->screen_info.cl_magic = COMMAND_LINE_MAGIC;
-		setup_base->screen_info.cl_offset =
-			(uintptr_t)cmd_line - (uintptr_t)setup_base;
+	if (cmd_line) {
+		if (bootproto >= 0x0202) {
+			hdr->cmd_line_ptr = (uintptr_t)cmd_line;
+		} else if (bootproto >= 0x0200) {
+			setup_base->screen_info.cl_magic = COMMAND_LINE_MAGIC;
+			setup_base->screen_info.cl_offset =
+				(uintptr_t)cmd_line - (uintptr_t)setup_base;
 
-		hdr->setup_move_size = 0x9100;
+			hdr->setup_move_size = 0x9100;
+		}
+
+		/* build command line at COMMAND_LINE_OFFSET */
+		build_command_line(cmd_line, auto_boot);
 	}
 
-	/* build command line at COMMAND_LINE_OFFSET */
-	build_command_line(cmd_line, auto_boot);
 	return 0;
 }