Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
types.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  * Copyright 1999 Ralf Baechle ([email protected])
7  * Copyright 1999 Silicon Graphics, Inc.
8  */
9 #ifndef _ASM_ARC_TYPES_H
10 #define _ASM_ARC_TYPES_H
11 
12 
13 #ifdef CONFIG_ARC32
14 
15 typedef char CHAR;
16 typedef short SHORT;
17 typedef long LARGE_INTEGER __attribute__ ((__mode__ (__DI__)));
18 typedef long LONG __attribute__ ((__mode__ (__SI__)));
19 typedef unsigned char UCHAR;
20 typedef unsigned short USHORT;
21 typedef unsigned long ULONG __attribute__ ((__mode__ (__SI__)));
22 typedef void VOID;
23 
24 /* The pointer types. Note that we're using a 64-bit compiler but all
25  pointer in the ARC structures are only 32-bit, so we need some disgusting
26  workarounds. Keep your vomit bag handy. */
27 typedef LONG _PCHAR;
28 typedef LONG _PSHORT;
29 typedef LONG _PLARGE_INTEGER;
30 typedef LONG _PLONG;
31 typedef LONG _PUCHAR;
32 typedef LONG _PUSHORT;
33 typedef LONG _PULONG;
34 typedef LONG _PVOID;
35 
36 #endif /* CONFIG_ARC32 */
37 
38 #ifdef CONFIG_ARC64
39 
40 typedef char CHAR;
41 typedef short SHORT;
42 typedef long LARGE_INTEGER __attribute__ ((__mode__ (__DI__)));
43 typedef long LONG __attribute__ ((__mode__ (__DI__)));
44 typedef unsigned char UCHAR;
45 typedef unsigned short USHORT;
46 typedef unsigned long ULONG __attribute__ ((__mode__ (__DI__)));
47 typedef void VOID;
48 
49 /* The pointer types. We're 64-bit and the firmware is also 64-bit, so
50  live is sane ... */
51 typedef CHAR *_PCHAR;
52 typedef SHORT *_PSHORT;
53 typedef LARGE_INTEGER *_PLARGE_INTEGER;
54 typedef LONG *_PLONG;
55 typedef UCHAR *_PUCHAR;
56 typedef USHORT *_PUSHORT;
57 typedef ULONG *_PULONG;
58 typedef VOID *_PVOID;
59 
60 #endif /* CONFIG_ARC64 */
61 
62 typedef CHAR *PCHAR;
63 typedef SHORT *PSHORT;
65 typedef LONG *PLONG;
66 typedef UCHAR *PUCHAR;
67 typedef USHORT *PUSHORT;
68 typedef ULONG *PULONG;
69 typedef VOID *PVOID;
70 
71 /*
72  * Return type of ArcGetDisplayStatus()
73  */
74 typedef struct {
82  UCHAR Underscored;
83  UCHAR ReverseVideo;
85 
86 #endif /* _ASM_ARC_TYPES_H */