bootm: Add subcommands

Add the ability to break the steps of the bootm command into several
subcommands: start, loados, ramdisk, fdt, bdt, cmdline, prep, go.

This allows us to do things like manipulate device trees before
they are passed to a booting kernel or setup memory for a secondary
core in multicore situations.

Not all OS types support all subcommands (currently only start, loados,
ramdisk, fdt, and go are supported).

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
diff --git a/lib_microblaze/bootm.c b/lib_microblaze/bootm.c
index 52fe068..e97aae6 100644
--- a/lib_microblaze/bootm.c
+++ b/lib_microblaze/bootm.c
@@ -38,6 +38,9 @@
 	void	(*theKernel) (char *);
 	char	*commandline = getenv ("bootargs");
 
+	if ((flag != 0) && (flag != BOOTM_STATE_OS_GO))
+		return 1;
+
 	theKernel = (void (*)(char *))images->ep;
 
 	show_boot_progress (15);