Import 2.3.49pre2
[davej-history.git] / arch / mips64 / arc / init.c
blobb961fc8999767ab846a0f40c3dda5cd05fd0b9c4
1 /* $Id: init.c,v 1.3 1999/11/19 23:29:05 ralf Exp $
3 * This file is subject to the terms and conditions of the GNU General Public
4 * License. See the file "COPYING" in the main directory of this archive
5 * for more details.
7 * PROM library initialisation code.
9 * Copyright (C) 1996 David S. Miller (dm@engr.sgi.com)
11 #include <linux/init.h>
12 #include <linux/kernel.h>
14 #include <asm/sgialib.h>
16 #undef DEBUG_PROM_INIT
18 /* Master romvec interface. */
19 struct linux_romvec *romvec;
20 PSYSTEM_PARAMETER_BLOCK sgi_pblock;
21 int prom_argc;
22 LONG *_prom_argv, *_prom_envp;
23 unsigned short prom_vers, prom_rev;
25 extern void prom_testtree(void);
27 int __init
28 prom_init(int argc, char **argv, char **envp)
30 PSYSTEM_PARAMETER_BLOCK pb;
32 romvec = ROMVECTOR;
33 pb = sgi_pblock = PROMBLOCK;
34 prom_argc = argc;
35 _prom_argv = (LONG *) argv;
36 _prom_envp = (LONG *) envp;
38 if(pb->magic != 0x53435241) {
39 prom_printf("Aieee, bad prom vector magic %08lx\n", pb->magic);
40 while(1)
44 prom_init_cmdline();
46 prom_vers = pb->ver;
47 prom_rev = pb->rev;
48 prom_identify_arch();
49 printk("PROMLIB: ARC firmware Version %d Revision %d\n",
50 prom_vers, prom_rev);
51 prom_meminit();
53 #ifdef DEBUG_PROM_INIT
55 prom_printf("Press a key to reboot\n");
56 (void) prom_getchar();
57 ArcEnterInteractiveMode();
59 #endif
60 return 0;