OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [trunk/] [linux/] [linux-2.4/] [include/] [asm-ia64/] [sn/] [sgi.h] - Blame information for rev 1774

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 1275 phoenix
/*
2
 *
3
 * This file is subject to the terms and conditions of the GNU General Public
4
 * License.  See the file "COPYING" in the main directory of this archive
5
 * for more details.
6
 *
7
 * Copyright (C) 2000-2003 Silicon Graphics, Inc. All rights reserved.
8
 */
9
 
10
/*
11
 * This file is a bit of a dumping ground. A lot of things that don't really
12
 * have a home, but which make life easier, end up here.
13
 */
14
 
15
#ifndef _ASM_IA64_SN_SGI_H
16
#define _ASM_IA64_SN_SGI_H
17
 
18
#include <linux/config.h>
19
#include <asm/sn/types.h>
20
#include <linux/mm.h>
21
#include <linux/devfs_fs_kernel.h>
22
#ifdef CONFIG_HWGFS_FS
23
#include <linux/fs.h>
24
#include <asm/sn/hwgfs.h>
25
typedef hwgfs_handle_t vertex_hdl_t;
26
#else
27
typedef devfs_handle_t vertex_hdl_t;
28
#endif
29
 
30
/* Nice general name length that lots of people like to use */
31
#ifndef MAXDEVNAME
32
#define MAXDEVNAME 256
33
#endif
34
 
35
 
36
/*
37
 * Possible return values from graph routines.
38
 */
39
typedef enum graph_error_e {
40
        GRAPH_SUCCESS,          /* 0 */
41
        GRAPH_DUP,              /* 1 */
42
        GRAPH_NOT_FOUND,        /* 2 */
43
        GRAPH_BAD_PARAM,        /* 3 */
44
        GRAPH_HIT_LIMIT,        /* 4 */
45
        GRAPH_CANNOT_ALLOC,     /* 5 */
46
        GRAPH_ILLEGAL_REQUEST,  /* 6 */
47
        GRAPH_IN_USE            /* 7 */
48
} graph_error_t;
49
 
50
#define CNODEID_NONE ((cnodeid_t)-1)
51
#define CPU_NONE                (-1)
52
 
53
 
54
/* print_register() defs */
55
 
56
/*
57
 * register values
58
 * map between numeric values and symbolic values
59
 */
60
struct reg_values {
61
        unsigned long long rv_value;
62
        char *rv_name;
63
};
64
 
65
/*
66
 * register descriptors are used for formatted prints of register values
67
 * rd_mask and rd_shift must be defined, other entries may be null
68
 */
69
struct reg_desc {
70
        unsigned long long rd_mask;     /* mask to extract field */
71
        int rd_shift;           /* shift for extracted value, - >>, + << */
72
        char *rd_name;          /* field name */
73
        char *rd_format;        /* format to print field */
74
        struct reg_values *rd_values;   /* symbolic names of values */
75
};
76
 
77
extern void print_register(unsigned long long, struct reg_desc *);
78
 
79
 
80
/*
81
 * No code is complete without an Assertion macro
82
 */
83
 
84
#if defined(DISABLE_ASSERT)
85
#define ASSERT(expr)
86
#define ASSERT_ALWAYS(expr)
87
#else
88
#define ASSERT(expr)  do {      \
89
        if(!(expr)) { \
90
                printk( "Assertion [%s] failed! %s:%s(line=%d)\n",\
91
                        #expr,__FILE__,__FUNCTION__,__LINE__); \
92
                panic("Assertion panic\n");     \
93
        } } while(0)
94
 
95
#define ASSERT_ALWAYS(expr)     do {\
96
        if(!(expr)) { \
97
                printk( "Assertion [%s] failed! %s:%s(line=%d)\n",\
98
                        #expr,__FILE__,__FUNCTION__,__LINE__); \
99
                panic("Assertion always panic\n");      \
100
        } } while(0)
101
#endif  /* DISABLE_ASSERT */
102
 
103
#endif /* _ASM_IA64_SN_SGI_H */

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.