Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 58644
b: refs/heads/master
c: 36de48d
h: refs/heads/master
v: v3
  • Loading branch information
Maciej W. Rozycki authored and Ralf Baechle committed Jul 10, 2007
1 parent ac1c750 commit 89d8274
Show file tree
Hide file tree
Showing 4 changed files with 30 additions and 8 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: d388d6853f1b584b8606cb3f2f9f9e4fa2e52258
refs/heads/master: 36de48de85bdb9bc8c35c1eb513737c187d70a46
1 change: 0 additions & 1 deletion trunk/arch/mips/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,6 @@ config MACH_DECSTATION
select BOOT_ELF32
select DMA_NONCOHERENT
select NO_IOPORT
select SYS_HAS_EARLY_PRINTK
select IRQ_CPU
select SYS_HAS_CPU_R3000
select SYS_HAS_CPU_R4X00
Expand Down
32 changes: 26 additions & 6 deletions trunk/arch/mips/dec/prom/console.c
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
*
* DECstation PROM-based early console support.
*
* Copyright (C) 2004 Maciej W. Rozycki
* Copyright (C) 2004, 2007 Maciej W. Rozycki
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
Expand All @@ -13,15 +13,35 @@
#include <linux/console.h>
#include <linux/init.h>
#include <linux/kernel.h>
#include <linux/string.h>

#include <asm/dec/prom.h>

void prom_putchar(char c)
static void __init prom_console_write(struct console *con, const char *s,
unsigned int c)
{
char s[2];
char buf[81];
unsigned int chunk = sizeof(buf) - 1;

s[0] = c;
s[1] = '\0';
while (c > 0) {
if (chunk > c)
chunk = c;
memcpy(buf, s, chunk);
buf[chunk] = '\0';
prom_printf("%s", buf);
s += chunk;
c -= chunk;
}
}

static struct console promcons __initdata = {
.name = "prom",
.write = prom_console_write,
.flags = CON_BOOT | CON_PRINTBUFFER,
.index = -1,
};

prom_printf( s);
void __init register_prom_console(void)
{
register_console(&promcons);
}
3 changes: 3 additions & 0 deletions trunk/arch/mips/dec/prom/init.c
Original file line number Diff line number Diff line change
Expand Up @@ -103,6 +103,9 @@ void __init prom_init(void)
if (prom_is_rex(magic))
rex_clear_cache();

/* Register the early console. */
register_prom_console();

/* Were we compiled with the right CPU option? */
#if defined(CONFIG_CPU_R3000)
if ((current_cpu_data.cputype == CPU_R4000SC) ||
Expand Down

0 comments on commit 89d8274

Please sign in to comment.