|
|
|
|
|
|
|
|
|
|
xen-ppc-devel
[XenPPC] [PATCH] add support for builtin command line (take two)
Support expressing Xen command line arguments at make invocation. Use
same section name as Linux's zImage and reserve a certain amount of
space so that arguments can be manipulated by external tools.
Signed-off-by: Amos Waterland <apw@xxxxxxxxxx>
---
Makefile | 3 +++
boot_of.c | 8 ++++++--
2 files changed, 9 insertions(+), 2 deletions(-)
diff -r 12da2c3245bb -r 7541546f8253 xen/arch/powerpc/Makefile
--- a/xen/arch/powerpc/Makefile Thu Jul 27 20:07:02 2006 -0400
+++ b/xen/arch/powerpc/Makefile Wed Aug 02 16:55:52 2006 -0400
@@ -83,6 +83,9 @@ physdev.o: ../x86/physdev.c
HDRS += $(wildcard *.h)
+CMDLINE = "xen"
+boot_of.o: CFLAGS += -DCMDLINE="\"$(CMDLINE)\""
+
start.o: boot/start.S
$(CC) $(CFLAGS) -D__ASSEMBLY__ -c $< -o $@
diff -r 12da2c3245bb -r 7541546f8253 xen/arch/powerpc/boot_of.c
--- a/xen/arch/powerpc/boot_of.c Thu Jul 27 20:07:02 2006 -0400
+++ b/xen/arch/powerpc/boot_of.c Wed Aug 02 16:55:52 2006 -0400
@@ -36,6 +36,10 @@ static int of_out;
static int of_out;
static ofdn_t boot_cpu;
static char bootargs[256];
+
+#define COMMAND_LINE_SIZE 512
+static char builtin_cmdline[COMMAND_LINE_SIZE]
+ __attribute__((section("__builtin_cmdline"))) = CMDLINE;
extern struct ns16550_defaults ns16550;
@@ -449,8 +453,8 @@ static void boot_of_bootargs(multiboot_i
int rc;
rc = of_getprop(bof_chosen, "bootargs", &bootargs, sizeof (bootargs));
- if (rc == OF_FAILURE) {
- strcpy(bootargs, "xen");
+ if (rc == OF_FAILURE || bootargs[0] == '\0') {
+ strlcpy(bootargs, builtin_cmdline, sizeof(bootargs));
}
mbi->flags |= MBI_CMDLINE;
_______________________________________________
Xen-ppc-devel mailing list
Xen-ppc-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ppc-devel
|
|
|
|
|