forked from Minki/linux
powerpc/powernv: Get kernel command line accross OPAL takeover
We stash it in boot_command_line which isn't in BSS and so won't be overwritten. We then use that as a default cmd_line before we walk the device-tree. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
This commit is contained in:
parent
27f4488872
commit
817c21ad9a
@ -712,6 +712,13 @@ void __init early_init_devtree(void *params)
|
|||||||
of_scan_flat_dt(early_init_dt_scan_phyp_dump, NULL);
|
of_scan_flat_dt(early_init_dt_scan_phyp_dump, NULL);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/* Pre-initialize the cmd_line with the content of boot_commmand_line,
|
||||||
|
* which will be empty except when the content of the variable has
|
||||||
|
* been overriden by a bootloading mechanism. This happens typically
|
||||||
|
* with HAL takeover
|
||||||
|
*/
|
||||||
|
strlcpy(cmd_line, boot_command_line, COMMAND_LINE_SIZE);
|
||||||
|
|
||||||
/* Retrieve various informations from the /chosen node of the
|
/* Retrieve various informations from the /chosen node of the
|
||||||
* device-tree, including the platform type, initrd location and
|
* device-tree, including the platform type, initrd location and
|
||||||
* size, TCE reserve, and more ...
|
* size, TCE reserve, and more ...
|
||||||
|
@ -1449,6 +1449,10 @@ static void prom_opal_takeover(void)
|
|||||||
opal_addr = top_addr;
|
opal_addr = top_addr;
|
||||||
args->hal_addr = opal_addr;
|
args->hal_addr = opal_addr;
|
||||||
|
|
||||||
|
/* Copy the command line to the kernel image */
|
||||||
|
strlcpy(RELOC(boot_command_line), RELOC(prom_cmd_line),
|
||||||
|
COMMAND_LINE_SIZE);
|
||||||
|
|
||||||
prom_debug(" k_image = 0x%lx\n", args->k_image);
|
prom_debug(" k_image = 0x%lx\n", args->k_image);
|
||||||
prom_debug(" k_size = 0x%lx\n", args->k_size);
|
prom_debug(" k_size = 0x%lx\n", args->k_size);
|
||||||
prom_debug(" k_entry = 0x%lx\n", args->k_entry);
|
prom_debug(" k_entry = 0x%lx\n", args->k_entry);
|
||||||
|
@ -21,7 +21,8 @@ _end enter_prom memcpy memset reloc_offset __secondary_hold
|
|||||||
__secondary_hold_acknowledge __secondary_hold_spinloop __start
|
__secondary_hold_acknowledge __secondary_hold_spinloop __start
|
||||||
strcmp strcpy strlcpy strlen strncmp strstr logo_linux_clut224
|
strcmp strcpy strlcpy strlen strncmp strstr logo_linux_clut224
|
||||||
reloc_got2 kernstart_addr memstart_addr linux_banner _stext
|
reloc_got2 kernstart_addr memstart_addr linux_banner _stext
|
||||||
opal_query_takeover opal_do_takeover opal_enter_rtas opal_secondary_entry"
|
opal_query_takeover opal_do_takeover opal_enter_rtas opal_secondary_entry
|
||||||
|
boot_command_line"
|
||||||
|
|
||||||
NM="$1"
|
NM="$1"
|
||||||
OBJ="$2"
|
OBJ="$2"
|
||||||
|
Loading…
Reference in New Issue
Block a user