Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
sgi.h
Go to the documentation of this file.
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  * sgi.h: Definitions specific to SGI machines.
7  *
8  * Copyright (C) 1996 David S. Miller ([email protected])
9  */
10 #ifndef _ASM_SGI_SGI_H
11 #define _ASM_SGI_SGI_H
12 
13 /* UP=UniProcessor MP=MultiProcessor(capable) */
14 enum sgi_mach {
15  ip4, /* R2k UP */
16  ip5, /* R2k MP */
17  ip6, /* R3k UP */
18  ip7, /* R3k MP */
19  ip9, /* R3k UP */
20  ip12, /* R3kA UP, Indigo */
21  ip15, /* R3kA MP */
22  ip17, /* R4K UP */
23  ip19, /* R4K MP */
24  ip20, /* R4K UP, Indigo */
25  ip21, /* TFP MP */
26  ip22, /* R4x00 UP, Indigo2 */
27  ip25, /* R10k MP */
28  ip26, /* TFP UP, Indigo2 */
29  ip27, /* R10k MP, R12k MP, Origin */
30  ip28, /* R10k UP, Indigo2 */
31  ip30, /* Octane */
32  ip32, /* O2 */
33 };
34 
35 extern enum sgi_mach sgimach;
36 extern void sgi_sysinit(void);
37 
38 /* Many I/O space registers are byte sized and are contained within
39  * one byte per word, specifically the MSB, this macro helps out.
40  */
41 #ifdef __MIPSEL__
42 #define SGI_MSB(regaddr) (regaddr)
43 #else
44 #define SGI_MSB(regaddr) ((regaddr) | 0x3)
45 #endif
46 
47 #endif /* _ASM_SGI_SGI_H */