]> pilppa.org Git - linux-2.6-omap-h63xx.git/blob - include/asm-mips/bootinfo.h
[MIPS] remove machtype for group Toshiba
[linux-2.6-omap-h63xx.git] / include / asm-mips / bootinfo.h
1 /*
2  * This file is subject to the terms and conditions of the GNU General Public
3  * License.  See the file COPYING in the main directory of this archive
4  * for more details.
5  *
6  * Copyright (C) 1995, 1996, 2003 by Ralf Baechle
7  * Copyright (C) 1995, 1996 Andreas Busse
8  * Copyright (C) 1995, 1996 Stoned Elipot
9  * Copyright (C) 1995, 1996 Paul M. Antoine.
10  */
11 #ifndef _ASM_BOOTINFO_H
12 #define _ASM_BOOTINFO_H
13
14 #include <linux/types.h>
15 #include <asm/setup.h>
16
17 /*
18  * The MACH_ IDs are sort of equivalent to PCI product IDs.  As such the
19  * numbers do not necessarily reflect technical relations or similarities
20  * between systems.
21  */
22
23 /*
24  * Valid machtype values for group unknown
25  */
26 #define  MACH_UNKNOWN           0       /* whatever...                  */
27
28 /*
29  * Valid machtype values for group JAZZ
30  */
31 #define  MACH_ACER_PICA_61      0       /* Acer PICA-61 (PICA1)         */
32 #define  MACH_MIPS_MAGNUM_4000  1       /* Mips Magnum 4000 "RC4030"    */
33 #define  MACH_OLIVETTI_M700     2       /* Olivetti M700-10 (-15 ??)    */
34
35 /*
36  * Valid machtype for group DEC
37  */
38 #define  MACH_DSUNKNOWN         0
39 #define  MACH_DS23100           1       /* DECstation 2100 or 3100      */
40 #define  MACH_DS5100            2       /* DECsystem 5100               */
41 #define  MACH_DS5000_200        3       /* DECstation 5000/200          */
42 #define  MACH_DS5000_1XX        4       /* DECstation 5000/120, 125, 133, 150 */
43 #define  MACH_DS5000_XX         5       /* DECstation 5000/20, 25, 33, 50 */
44 #define  MACH_DS5000_2X0        6       /* DECstation 5000/240, 260     */
45 #define  MACH_DS5400            7       /* DECsystem 5400               */
46 #define  MACH_DS5500            8       /* DECsystem 5500               */
47 #define  MACH_DS5800            9       /* DECsystem 5800               */
48 #define  MACH_DS5900            10      /* DECsystem 5900               */
49
50 /*
51  * Valid machtype for group SNI_RM
52  */
53 #define  MACH_SNI_RM200_PCI     0       /* RM200/RM300/RM400 PCI series */
54
55 /*
56  * Valid machtype for group SGI
57  */
58 #define  MACH_SGI_IP22          0       /* Indy, Indigo2, Challenge S   */
59 #define  MACH_SGI_IP27          1       /* Origin 200, Origin 2000, Onyx 2 */
60 #define  MACH_SGI_IP28          2       /* Indigo2 Impact               */
61 #define  MACH_SGI_IP32          3       /* O2                           */
62 #define  MACH_SGI_IP30          4       /* Octane, Octane2              */
63
64 /*
65  * Valid machtype for group LASAT
66  */
67 #define  MACH_LASAT_100         0       /* Masquerade II/SP100/SP50/SP25 */
68 #define  MACH_LASAT_200         1       /* Masquerade PRO/SP200 */
69
70 /*
71  * Valid machtype for group NEC EMMA2RH
72  */
73 #define  MACH_NEC_MARKEINS      0       /* NEC EMMA2RH Mark-eins        */
74
75 /*
76  * Valid machtype for group PMC-MSP
77  */
78 #define MACH_MSP4200_EVAL       0       /* PMC-Sierra MSP4200 Evaluation */
79 #define MACH_MSP4200_GW         1       /* PMC-Sierra MSP4200 Gateway demo */
80 #define MACH_MSP4200_FPGA       2       /* PMC-Sierra MSP4200 Emulation */
81 #define MACH_MSP7120_EVAL       3       /* PMC-Sierra MSP7120 Evaluation */
82 #define MACH_MSP7120_GW         4       /* PMC-Sierra MSP7120 Residential GW */
83 #define MACH_MSP7120_FPGA       5       /* PMC-Sierra MSP7120 Emulation */
84 #define MACH_MSP_OTHER        255       /* PMC-Sierra unknown board type */
85
86 #define CL_SIZE                 COMMAND_LINE_SIZE
87
88 extern char *system_type;
89 const char *get_system_type(void);
90
91 extern unsigned long mips_machtype;
92
93 #define BOOT_MEM_MAP_MAX        32
94 #define BOOT_MEM_RAM            1
95 #define BOOT_MEM_ROM_DATA       2
96 #define BOOT_MEM_RESERVED       3
97
98 /*
99  * A memory map that's built upon what was determined
100  * or specified on the command line.
101  */
102 struct boot_mem_map {
103         int nr_map;
104         struct boot_mem_map_entry {
105                 phys_t addr;    /* start of memory segment */
106                 phys_t size;    /* size of memory segment */
107                 long type;              /* type of memory segment */
108         } map[BOOT_MEM_MAP_MAX];
109 };
110
111 extern struct boot_mem_map boot_mem_map;
112
113 extern void add_memory_region(phys_t start, phys_t size, long type);
114
115 extern void prom_init(void);
116 extern void prom_free_prom_memory(void);
117
118 extern void free_init_pages(const char *what,
119                             unsigned long begin, unsigned long end);
120
121 /*
122  * Initial kernel command line, usually setup by prom_init()
123  */
124 extern char arcs_cmdline[CL_SIZE];
125
126 /*
127  * Registers a0, a1, a3 and a4 as passed to the kernel entry by firmware
128  */
129 extern unsigned long fw_arg0, fw_arg1, fw_arg2, fw_arg3;
130
131 /*
132  * Platform memory detection hook called by setup_arch
133  */
134 extern void plat_mem_setup(void);
135
136 #endif /* _ASM_BOOTINFO_H */