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
6 * Copyright (C) 2000-2003 Silicon Graphics, Inc. All rights reserved.
10 #ifndef _ASM_IA64_SN_SGI_H
11 #define _ASM_IA64_SN_SGI_H
13 #include <linux/config.h>
15 #include <asm/sn/types.h>
16 #include <asm/sn/hwgfs.h>
18 typedef hwgfs_handle_t vertex_hdl_t;
20 /* Nice general name length that lots of people like to use */
22 #define MAXDEVNAME 256
27 * Possible return values from graph routines.
29 typedef enum graph_error_e {
30 GRAPH_SUCCESS, /* 0 */
32 GRAPH_NOT_FOUND, /* 2 */
33 GRAPH_BAD_PARAM, /* 3 */
34 GRAPH_HIT_LIMIT, /* 4 */
35 GRAPH_CANNOT_ALLOC, /* 5 */
36 GRAPH_ILLEGAL_REQUEST, /* 6 */
40 #define CNODEID_NONE ((cnodeid_t)-1)
42 #define GRAPH_VERTEX_NONE ((vertex_hdl_t)-1)
45 * Defines for individual WARs. Each is a bitmask of applicable
46 * part revision numbers. (1 << 1) == rev A, (1 << 2) == rev B,
47 * (3 << 1) == (rev A or rev B), etc
49 #define PV854697 (~0) /* PIC: write 64bit regs as 64bits. permanent */
50 #define PV854827 (~0UL) /* PIC: fake widget 0xf presence bit. permanent */
51 #define PV855271 (1 << 1) /* PIC: use virt chan iff 64-bit device. */
52 #define PV878674 (~0) /* PIC: Dont allow 64bit PIOs. permanent */
53 #define PV855272 (1 << 1) /* PIC: runaway interrupt WAR */
54 #define PV856155 (1 << 1) /* PIC: arbitration WAR */
55 #define PV856864 (1 << 1) /* PIC: lower timeout to free TNUMs quicker */
56 #define PV856866 (1 << 1) /* PIC: avoid rrb's 0/1/8/9. */
57 #define PV862253 (1 << 1) /* PIC: don't enable write req RAM parity checking */
58 #define PV867308 (3 << 1) /* PIC: make LLP error interrupts FATAL for PIC */
61 * No code is complete without an Assertion macro
64 #if defined(DISABLE_ASSERT)
66 #define ASSERT_ALWAYS(expr)
68 #define ASSERT(expr) do { \
70 printk( "Assertion [%s] failed! %s:%s(line=%d)\n",\
71 #expr,__FILE__,__FUNCTION__,__LINE__); \
72 panic("Assertion panic\n"); \
75 #define ASSERT_ALWAYS(expr) do {\
77 printk( "Assertion [%s] failed! %s:%s(line=%d)\n",\
78 #expr,__FILE__,__FUNCTION__,__LINE__); \
79 panic("Assertion always panic\n"); \
81 #endif /* DISABLE_ASSERT */
83 #endif /* _ASM_IA64_SN_SGI_H */