1 /* $Id: bootinfo.h,v 1.1 1999/08/18 23:37:50 ralf Exp $
2 *
3 * bootinfo.h -- Definition of the Linux/MIPS boot information structure
4 *
5 * Copyright (C) 1995 - 1999 by Ralf Baechle
6 * Copyright (C) 1995, 1996 by Stoned Elipot and Paul M. Antoine.
7 * Copyright (C) 1999 Ralf Baechle
8 *
9 * This file is subject to the terms and conditions of the GNU General Public
10 * License. See the file COPYING in the main directory of this archive
11 * for more details.
12 */
13 #ifndef _ASM_BOOTINFO_H
14 #define _ASM_BOOTINFO_H
15
16 /*
17 * Values for machgroup
18 */
19 #define MACH_GROUP_UNKNOWN 0 /* whatever... */
20 #define MACH_GROUP_JAZZ 1 /* Jazz */
21 #define MACH_GROUP_DEC 2 /* Digital Equipment */
22 #define MACH_GROUP_ARC 3 /* Wreckstation Tyne, rPC44, possibly other */
23 #define MACH_GROUP_SNI_RM 4 /* Siemens Nixdorf RM series */
24 #define MACH_GROUP_ACN 5
25 #define MACH_GROUP_SGI 6 /* Silicon Graphics workstations and servers */
26 #define MACH_GROUP_COBALT 7 /* Cobalt servers */
27
28 #define GROUP_NAMES { "unknown", "Jazz", "Digital", "ARC", \
29 "SNI", "ACN", "SGI", "Cobalt" }
30
31 /*
32 * Valid machtype values for group unknown (low order halfword of mips_machtype)
33 */
34 #define MACH_UNKNOWN 0 /* whatever... */
35
36 #define GROUP_UNKNOWN_NAMES { "unknown" }
37
38 /*
39 * Valid machtype values for group JAZZ
40 */
41 #define MACH_ACER_PICA_61 0 /* Acer PICA-61 (PICA1) */
42 #define MACH_MIPS_MAGNUM_4000 1 /* Mips Magnum 4000 "RC4030" */
43 #define MACH_OLIVETTI_M700 2 /* Olivetti M700-10 (-15 ??) */
44
45 #define GROUP_JAZZ_NAMES { "Acer PICA 61", "Mips Magnum 4000", "Olivetti M700" }
46
47 /*
48 * Valid machtype for group DEC
49 */
50 #define MACH_DSUNKNOWN 0
51 #define MACH_DS23100 1 /* DECstation 2100 or 3100 */
52 #define MACH_DS5100 2 /* DECstation 5100 */
53 #define MACH_DS5000_200 3 /* DECstation 5000/200 */
54 #define MACH_DS5000_1XX 4 /* DECstation 5000/120, 125, 133, 150 */
55 #define MACH_DS5000_XX 5 /* DECstation 5000/20, 25, 33, 50 */
56 #define MACH_DS5000_2X0 6 /* DECstation 5000/240, 260 */
57 #define MACH_DS5400 7 /* DECstation 5400 */
58 #define MACH_DS5500 8 /* DECstation 5500 */
59 #define MACH_DS5800 9 /* DECstation 5800 */
60
61 #define GROUP_DEC_NAMES { "unknown", "DECstation 2100/3100", "DECstation 5100", \
62 "DECstation 5000/200", "DECstation 5000/1xx", "Personal DECstation 5000/xx", \
63 "DECstation 5000/2x0", "DECstation 5400", "DECstation 5500", \
64 "DECstation 5800" }
65
66 /*
67 * Valid machtype for group ARC
68 */
69 #define MACH_DESKSTATION_RPC44 0 /* Deskstation rPC44 */
70 #define MACH_DESKSTATION_TYNE 1 /* Deskstation Tyne */
71
72 #define GROUP_ARC_NAMES { "Deskstation rPC44", "Deskstation Tyne" }
73
74 /*
75 * Valid machtype for group SNI_RM
76 */
77 #define MACH_SNI_RM200_PCI 0 /* RM200/RM300/RM400 PCI series */
78
79 #define GROUP_SNI_RM_NAMES { "RM200 PCI" }
80
81 /*
82 * Valid machtype for group ACN
83 */
84 #define MACH_ACN_MIPS_BOARD 0 /* ACN MIPS single board */
85
86 #define GROUP_ACN_NAMES { "ACN" }
87
88 /*
89 * Valid machtype for group SGI
90 */
91 #define MACH_SGI_INDY 0 /* R4?K and R5K Indy workstaions */
92 #define MACH_SGI_CHALLENGE_S 1 /* The Challenge S server */
93 #define MACH_SGI_INDIGO2 2 /* The Indigo2 system */
94 #define MACH_SGI_IP27 3 /* Origin 200, Origin 2000, Onyx 2 */
95
96 #define GROUP_SGI_NAMES { "Indy", "Challenge S", "Indigo2", "IP27" }
97
98
99 /*
100 * Valid machtype for group COBALT
101 */
102 #define MACH_COBALT_27 0 /* Proto "27" hardware */
103
104 #define GROUP_COBALT_NAMES { "Microserver 27" }
105
106 /*
107 * Valid cputype values
108 */
109 #define CPU_UNKNOWN 0
110 #define CPU_R2000 1
111 #define CPU_R3000 2
112 #define CPU_R3000A 3
113 #define CPU_R3041 4
114 #define CPU_R3051 5
115 #define CPU_R3052 6
116 #define CPU_R3081 7
117 #define CPU_R3081E 8
118 #define CPU_R4000PC 9
119 #define CPU_R4000SC 10
120 #define CPU_R4000MC 11
121 #define CPU_R4200 12
122 #define CPU_R4400PC 13
123 #define CPU_R4400SC 14
124 #define CPU_R4400MC 15
125 #define CPU_R4600 16
126 #define CPU_R6000 17
127 #define CPU_R6000A 18
128 #define CPU_R8000 19
129 #define CPU_R10000 20
130 #define CPU_R4300 21
131 #define CPU_R4650 22
132 #define CPU_R4700 23
133 #define CPU_R5000 24
134 #define CPU_R5000A 25
135 #define CPU_R4640 26
136 #define CPU_NEVADA 27 /* RM5230, RM5260 */
137 #define CPU_LAST 27
138
139 #define CPU_NAMES { "unknown", "R2000", "R3000", "R3000A", "R3041", "R3051", \
140 "R3052", "R3081", "R3081E", "R4000PC", "R4000SC", "R4000MC", \
141 "R4200", "R4400PC", "R4400SC", "R4400MC", "R4600", "R6000", \
142 "R6000A", "R8000", "R10000", "R4300", "R4650", "R4700", "R5000", \
143 "R5000A", "R4640", "Nevada" }
144
145 #define CL_SIZE (80)
146
147 #ifndef _LANGUAGE_ASSEMBLY
148
149 /*
150 * Some machine parameters passed by the bootloaders.
151 */
152
153 struct drive_info_struct {
154 char dummy[32];
155 };
156
157 extern unsigned long mips_memory_upper;
158 extern unsigned long mips_cputype;
159 extern unsigned long mips_machtype;
160 extern unsigned long mips_machgroup;
161 extern unsigned long mips_tlb_entries;
162
163 #endif /* _LANGUAGE_ASSEMBLY */
164
165 #endif /* _ASM_BOOTINFO_H */
166
This page was automatically generated by the
LXR engine.
Visit the LXR main site for more
information.