diff options
| author | Paul Mundt <lethal@linux-sh.org> | 2006-09-27 01:26:53 -0400 |
|---|---|---|
| committer | Paul Mundt <lethal@linux-sh.org> | 2006-09-27 01:26:53 -0400 |
| commit | a80fd21e52cc09ff1e4d36de5781173a5b87b2dc (patch) | |
| tree | 9e4ee0efc4809209f5bb9c9a288a6a1cf43c060e /arch/sh/kernel/setup.c | |
| parent | e86d6b66f5b38680746b2cb71186d90af17f150f (diff) | |
sh: earlyprintk= support and cleanups.
Allow multiple early printk consoles via earlyprintk=.
With this change earlyprintk is no longer enabled by default,
it must be specified on the kernel command line. Optionally
with ,keep to prevent unreg by tty_io.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch/sh/kernel/setup.c')
| -rw-r--r-- | arch/sh/kernel/setup.c | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/arch/sh/kernel/setup.c b/arch/sh/kernel/setup.c index e75189cb1db7..cff8d36f91b0 100644 --- a/arch/sh/kernel/setup.c +++ b/arch/sh/kernel/setup.c | |||
| @@ -145,6 +145,24 @@ static inline void parse_cmdline (char ** cmdline_p, char mv_name[MV_NAME_SIZE], | |||
| 145 | memory_end = memory_start + mem_size; | 145 | memory_end = memory_start + mem_size; |
| 146 | } | 146 | } |
| 147 | } | 147 | } |
| 148 | |||
| 149 | #ifdef CONFIG_EARLY_PRINTK | ||
| 150 | if (c == ' ' && !memcmp(from, "earlyprintk=", 12)) { | ||
| 151 | char *ep_end; | ||
| 152 | |||
| 153 | if (to != command_line) | ||
| 154 | to--; | ||
| 155 | |||
| 156 | from += 12; | ||
| 157 | ep_end = strchr(from, ' '); | ||
| 158 | |||
| 159 | setup_early_printk(from); | ||
| 160 | printk("early console enabled\n"); | ||
| 161 | |||
| 162 | from = ep_end; | ||
| 163 | } | ||
| 164 | #endif | ||
| 165 | |||
| 148 | if (c == ' ' && !memcmp(from, "sh_mv=", 6)) { | 166 | if (c == ' ' && !memcmp(from, "sh_mv=", 6)) { |
| 149 | char* mv_end; | 167 | char* mv_end; |
| 150 | char* mv_comma; | 168 | char* mv_comma; |
| @@ -245,11 +263,7 @@ void __init setup_arch(char **cmdline_p) | |||
| 245 | unsigned long bootmap_size; | 263 | unsigned long bootmap_size; |
| 246 | unsigned long start_pfn, max_pfn, max_low_pfn; | 264 | unsigned long start_pfn, max_pfn, max_low_pfn; |
| 247 | 265 | ||
| 248 | #ifdef CONFIG_EARLY_PRINTK | ||
| 249 | extern void enable_early_printk(void); | ||
| 250 | 266 | ||
| 251 | enable_early_printk(); | ||
| 252 | #endif | ||
| 253 | #ifdef CONFIG_CMDLINE_BOOL | 267 | #ifdef CONFIG_CMDLINE_BOOL |
| 254 | strcpy(COMMAND_LINE, CONFIG_CMDLINE); | 268 | strcpy(COMMAND_LINE, CONFIG_CMDLINE); |
| 255 | #endif | 269 | #endif |
