diff options
author | Oliver O'Halloran <oohall@gmail.com> | 2016-08-17 15:32:52 +1000 |
---|---|---|
committer | Stewart Smith <stewart@linux.vnet.ibm.com> | 2016-08-30 16:59:47 +1000 |
commit | f0ef4e2d26a89deff97d50942f40a77edcc40867 (patch) | |
tree | 3e7792e66ef6e1a8ad4820c9dc0cfdfdfffc9305 /core/init.c | |
parent | 9070ae9817ccca570a1c80132c92374f57aa62ac (diff) | |
download | blackbird-skiboot-f0ef4e2d26a89deff97d50942f40a77edcc40867.tar.gz blackbird-skiboot-f0ef4e2d26a89deff97d50942f40a77edcc40867.zip |
core/init: take bootargs from nvram
Adds support for supplying the kernel boot arguments from the "bootargs"
configuration string in the ibm,skiboot partition.
Signed-off-by: Oliver O'Halloran <oohall@gmail.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
Diffstat (limited to 'core/init.c')
-rw-r--r-- | core/init.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/core/init.c b/core/init.c index d5894abc..821094fe 100644 --- a/core/init.c +++ b/core/init.c @@ -412,6 +412,7 @@ int64_t mem_dump_free(void); void __noreturn load_and_boot_kernel(bool is_reboot) { const struct dt_property *memprop; + const char *cmdline; uint64_t mem_top; void *fdt; @@ -457,9 +458,14 @@ void __noreturn load_and_boot_kernel(bool is_reboot) occ_pstates_init(); /* Set kernel command line argument if specified */ + cmdline = nvram_query("bootargs"); #ifdef KERNEL_COMMAND_LINE - dt_add_property_string(dt_chosen, "bootargs", KERNEL_COMMAND_LINE); + if (!cmdline) + cmdline = KERNEL_COMMAND_LINE; #endif + /* some platforms always pass bootargs through the fdt */ + if (cmdline && !dt_find_property(dt_chosen, "bootargs")) + dt_add_property_string(dt_chosen, "bootargs", cmdline); op_display(OP_LOG, OP_MOD_INIT, 0x000B); |