Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 375196
b: refs/heads/master
c: 0be2abb
h: refs/heads/master
v: v3
  • Loading branch information
Steven J. Hill authored and Ralf Baechle committed May 8, 2013
1 parent 8d0d8f5 commit 00bf4e9
Show file tree
Hide file tree
Showing 5 changed files with 52 additions and 87 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 14aecdd419217e041fb5dd2749d11f58503bdf62
refs/heads/master: 0be2abbceeb837bf938c85db03142b5b0e4675f4
8 changes: 4 additions & 4 deletions trunk/arch/mips/mti-sead3/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,10 @@
# Copyright (C) 2012 MIPS Technoligies, Inc. All rights reserved.
# Steven J. Hill <sjhill@mips.com>
#
obj-y := sead3-lcd.o sead3-cmdline.o \
sead3-display.o sead3-init.o sead3-int.o \
sead3-mtd.o sead3-net.o sead3-platform.o \
sead3-reset.o sead3-setup.o sead3-time.o
obj-y := sead3-lcd.o sead3-display.o sead3-init.o \
sead3-int.o sead3-mtd.o sead3-net.o \
sead3-platform.o sead3-reset.o \
sead3-setup.o sead3-time.o

obj-y += sead3-i2c-dev.o sead3-i2c.o \
sead3-pic32-i2c-drv.o sead3-pic32-bus.o \
Expand Down
46 changes: 0 additions & 46 deletions trunk/arch/mips/mti-sead3/sead3-cmdline.c

This file was deleted.

2 changes: 1 addition & 1 deletion trunk/arch/mips/mti-sead3/sead3-console.c
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ static inline void serial_out(int offset, int value, unsigned int base_addr)
__raw_writel(value, PORT(base_addr, offset));
}

void __init prom_init_early_console(char port)
void __init fw_init_early_console(char port)
{
console_port = port;
}
Expand Down
81 changes: 46 additions & 35 deletions trunk/arch/mips/mti-sead3/sead3-init.c
Original file line number Diff line number Diff line change
Expand Up @@ -13,37 +13,51 @@
#include <asm/traps.h>
#include <asm/mips-boards/generic.h>
#include <asm/mips-boards/prom.h>

extern void prom_init_early_console(char port);
#include <asm/fw/fw.h>

extern char except_vec_nmi;
extern char except_vec_ejtag_debug;

int prom_argc;
int *_prom_argv, *_prom_envp;

#define prom_envp(index) ((char *)(long)_prom_envp[(index)])

char *prom_getenv(char *envname)
#ifdef CONFIG_SERIAL_8250_CONSOLE
static void __init console_config(void)
{
/*
* Return a pointer to the given environment variable.
* In 64-bit mode: we're using 64-bit pointers, but all pointers
* in the PROM structures are only 32-bit, so we need some
* workarounds, if we are running in 64-bit mode.
*/
int i, index = 0;

i = strlen(envname);

while (prom_envp(index)) {
if (strncmp(envname, prom_envp(index), i) == 0)
return prom_envp(index+1);
index += 2;
char console_string[40];
int baud = 0;
char parity = '\0', bits = '\0', flow = '\0';
char *s;

if ((strstr(fw_getcmdline(), "console=")) == NULL) {
s = fw_getenv("modetty0");
if (s) {
while (*s >= '0' && *s <= '9')
baud = baud*10 + *s++ - '0';
if (*s == ',')
s++;
if (*s)
parity = *s++;
if (*s == ',')
s++;
if (*s)
bits = *s++;
if (*s == ',')
s++;
if (*s == 'h')
flow = 'r';
}
if (baud == 0)
baud = 38400;
if (parity != 'n' && parity != 'o' && parity != 'e')
parity = 'n';
if (bits != '7' && bits != '8')
bits = '8';
if (flow == '\0')
flow = 'r';
sprintf(console_string, " console=ttyS0,%d%c%c%c", baud,
parity, bits, flow);
strcat(fw_getcmdline(), console_string);
}

return NULL;
}
#endif

static void __init mips_nmi_setup(void)
{
Expand All @@ -69,23 +83,20 @@ static void __init mips_ejtag_setup(void)

void __init prom_init(void)
{
prom_argc = fw_arg0;
_prom_argv = (int *) fw_arg1;
_prom_envp = (int *) fw_arg2;

board_nmi_handler_setup = mips_nmi_setup;
board_ejtag_handler_setup = mips_ejtag_setup;

prom_init_cmdline();
fw_init_cmdline();
#ifdef CONFIG_EARLY_PRINTK
if ((strstr(prom_getcmdline(), "console=ttyS0")) != NULL)
prom_init_early_console(0);
else if ((strstr(prom_getcmdline(), "console=ttyS1")) != NULL)
prom_init_early_console(1);
if ((strstr(fw_getcmdline(), "console=ttyS0")) != NULL)
fw_init_early_console(0);
else if ((strstr(fw_getcmdline(), "console=ttyS1")) != NULL)
fw_init_early_console(1);
#endif
#ifdef CONFIG_SERIAL_8250_CONSOLE
if ((strstr(prom_getcmdline(), "console=")) == NULL)
strcat(prom_getcmdline(), " console=ttyS0,38400n8r");
if ((strstr(fw_getcmdline(), "console=")) == NULL)
strcat(fw_getcmdline(), " console=ttyS0,38400n8r");
console_config();
#endif
}

Expand Down

0 comments on commit 00bf4e9

Please sign in to comment.