forked from mirrors/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
					
				
					 3 changed files with 13 additions and 1 deletions
				
			
		| 
						 | 
				
			
			@ -712,6 +712,13 @@ void __init early_init_devtree(void *params)
 | 
			
		|||
	of_scan_flat_dt(early_init_dt_scan_phyp_dump, NULL);
 | 
			
		||||
#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
 | 
			
		||||
	 * device-tree, including the platform type, initrd location and
 | 
			
		||||
	 * size, TCE reserve, and more ...
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1449,6 +1449,10 @@ static void prom_opal_takeover(void)
 | 
			
		|||
		opal_addr = top_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_size     = 0x%lx\n", args->k_size);
 | 
			
		||||
	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
 | 
			
		||||
strcmp strcpy strlcpy strlen strncmp strstr logo_linux_clut224
 | 
			
		||||
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"
 | 
			
		||||
OBJ="$2"
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in a new issue