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 (dm@sgi.com) 9 */ 10#ifndef _ASM_SGI_SGI_H 11#define _ASM_SGI_SGI_H 12 13/* UP=UniProcessor MP=MultiProcessor(capable) */ 14enum 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 35extern enum sgi_mach sgimach; 36extern 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 */ 48