aboutsummaryrefslogtreecommitdiffstats
path: root/arch/mips/txx9/jmr3927/prom.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/mips/txx9/jmr3927/prom.c')
-rw-r--r--arch/mips/txx9/jmr3927/prom.c46
1 files changed, 12 insertions, 34 deletions
diff --git a/arch/mips/txx9/jmr3927/prom.c b/arch/mips/txx9/jmr3927/prom.c
index 8bc1049b622e..2cadb423face 100644
--- a/arch/mips/txx9/jmr3927/prom.c
+++ b/arch/mips/txx9/jmr3927/prom.c
@@ -35,42 +35,10 @@
35 * with this program; if not, write to the Free Software Foundation, Inc., 35 * with this program; if not, write to the Free Software Foundation, Inc.,
36 * 675 Mass Ave, Cambridge, MA 02139, USA. 36 * 675 Mass Ave, Cambridge, MA 02139, USA.
37 */ 37 */
38#include <linux/kernel.h>
39#include <linux/init.h> 38#include <linux/init.h>
40#include <linux/string.h>
41
42#include <asm/bootinfo.h> 39#include <asm/bootinfo.h>
43#include <asm/txx9/tx3927.h> 40#include <asm/txx9/generic.h>
44 41#include <asm/txx9/jmr3927.h>
45char * __init prom_getcmdline(void)
46{
47 return &(arcs_cmdline[0]);
48}
49
50void __init prom_init_cmdline(void)
51{
52 char *cp;
53 int actr;
54 int prom_argc = fw_arg0;
55 char **prom_argv = (char **) fw_arg1;
56
57 actr = 1; /* Always ignore argv[0] */
58
59 cp = &(arcs_cmdline[0]);
60 while(actr < prom_argc) {
61 strcpy(cp, prom_argv[actr]);
62 cp += strlen(prom_argv[actr]);
63 *cp++ = ' ';
64 actr++;
65 }
66 if (cp != &(arcs_cmdline[0])) /* get rid of trailing space */
67 --cp;
68 *cp = '\0';
69}
70
71void __init prom_free_prom_memory(void)
72{
73}
74 42
75#define TIMEOUT 0xffffff 43#define TIMEOUT 0xffffff
76 44
@@ -96,3 +64,13 @@ puts(const char *cp)
96 prom_putchar('\r'); 64 prom_putchar('\r');
97 prom_putchar('\n'); 65 prom_putchar('\n');
98} 66}
67
68void __init jmr3927_prom_init(void)
69{
70 /* CCFG */
71 if ((tx3927_ccfgptr->ccfg & TX3927_CCFG_TLBOFF) == 0)
72 puts("Warning: TX3927 TLB off\n");
73
74 prom_init_cmdline();
75 add_memory_region(0, JMR3927_SDRAM_SIZE, BOOT_MEM_RAM);
76}