diff options
author | Michal Simek <monstr@monstr.eu> | 2009-05-21 02:20:30 -0400 |
---|---|---|
committer | Michal Simek <monstr@monstr.eu> | 2009-05-21 10:39:05 -0400 |
commit | 1dff89a9c7fab71b43ba79cc1aa6c6dbad582a35 (patch) | |
tree | c994f51ff18146375fddac4afae233915b6c5ab3 /arch/microblaze/kernel | |
parent | 6e3d4e1d16a19f8462beb5bfe5f2c464770e795e (diff) |
microblaze: Fix early cmdline for CMDLINE_FORCE
This patch fixed parsing early parameters because
current implementation does that early parse DTS
command line and then parse CMDLINE line which is compiled-in.
For case that DTS doesn't contain command line is
copied command line from kernel with is done in prom.c
that's why I can remove it from machine_early_init.
Signed-off-by: Michal Simek <monstr@monstr.eu>
Diffstat (limited to 'arch/microblaze/kernel')
-rw-r--r-- | arch/microblaze/kernel/prom.c | 2 | ||||
-rw-r--r-- | arch/microblaze/kernel/setup.c | 9 |
2 files changed, 3 insertions, 8 deletions
diff --git a/arch/microblaze/kernel/prom.c b/arch/microblaze/kernel/prom.c index 34c48718061a..003d37360623 100644 --- a/arch/microblaze/kernel/prom.c +++ b/arch/microblaze/kernel/prom.c | |||
@@ -563,7 +563,9 @@ static int __init early_init_dt_scan_chosen(unsigned long node, | |||
563 | strlcpy(cmd_line, p, min((int)l, COMMAND_LINE_SIZE)); | 563 | strlcpy(cmd_line, p, min((int)l, COMMAND_LINE_SIZE)); |
564 | 564 | ||
565 | #ifdef CONFIG_CMDLINE | 565 | #ifdef CONFIG_CMDLINE |
566 | #ifndef CONFIG_CMDLINE_FORCE | ||
566 | if (p == NULL || l == 0 || (l == 1 && (*p) == 0)) | 567 | if (p == NULL || l == 0 || (l == 1 && (*p) == 0)) |
568 | #endif | ||
567 | strlcpy(cmd_line, CONFIG_CMDLINE, COMMAND_LINE_SIZE); | 569 | strlcpy(cmd_line, CONFIG_CMDLINE, COMMAND_LINE_SIZE); |
568 | #endif /* CONFIG_CMDLINE */ | 570 | #endif /* CONFIG_CMDLINE */ |
569 | 571 | ||
diff --git a/arch/microblaze/kernel/setup.c b/arch/microblaze/kernel/setup.c index eb6b41758e23..c156b16f9ee9 100644 --- a/arch/microblaze/kernel/setup.c +++ b/arch/microblaze/kernel/setup.c | |||
@@ -42,10 +42,6 @@ char cmd_line[COMMAND_LINE_SIZE]; | |||
42 | 42 | ||
43 | void __init setup_arch(char **cmdline_p) | 43 | void __init setup_arch(char **cmdline_p) |
44 | { | 44 | { |
45 | #ifdef CONFIG_CMDLINE_FORCE | ||
46 | strlcpy(cmd_line, CONFIG_CMDLINE, COMMAND_LINE_SIZE); | ||
47 | strlcpy(boot_command_line, CONFIG_CMDLINE, COMMAND_LINE_SIZE); | ||
48 | #endif | ||
49 | *cmdline_p = cmd_line; | 45 | *cmdline_p = cmd_line; |
50 | 46 | ||
51 | console_verbose(); | 47 | console_verbose(); |
@@ -106,10 +102,7 @@ void __init machine_early_init(const char *cmdline, unsigned int ram, | |||
106 | memset(__bss_start, 0, __bss_stop-__bss_start); | 102 | memset(__bss_start, 0, __bss_stop-__bss_start); |
107 | memset(_ssbss, 0, _esbss-_ssbss); | 103 | memset(_ssbss, 0, _esbss-_ssbss); |
108 | 104 | ||
109 | /* | 105 | /* Copy command line passed from bootloader */ |
110 | * Copy command line passed from bootloader, or use default | ||
111 | * if none provided, or forced | ||
112 | */ | ||
113 | #ifndef CONFIG_CMDLINE_BOOL | 106 | #ifndef CONFIG_CMDLINE_BOOL |
114 | if (cmdline && cmdline[0] != '\0') | 107 | if (cmdline && cmdline[0] != '\0') |
115 | strlcpy(cmd_line, cmdline, COMMAND_LINE_SIZE); | 108 | strlcpy(cmd_line, cmdline, COMMAND_LINE_SIZE); |