Linux-2.6.12-rc2
[GitHub/mt8127/android_kernel_alcatel_ttab.git] / include / asm-mips / arc / types.h
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 (ralf@gnu.org)
7 * Copyright 1999 Silicon Graphics, Inc.
8 */
9 #ifndef _ASM_ARC_TYPES_H
10 #define _ASM_ARC_TYPES_H
11
12 #include <linux/config.h>
13
14 #ifdef CONFIG_ARC32
15
16 typedef char CHAR;
17 typedef short SHORT;
18 typedef long LARGE_INTEGER __attribute__ ((__mode__ (__DI__)));
19 typedef long LONG __attribute__ ((__mode__ (__SI__)));
20 typedef unsigned char UCHAR;
21 typedef unsigned short USHORT;
22 typedef unsigned long ULONG __attribute__ ((__mode__ (__SI__)));
23 typedef void VOID;
24
25 /* The pointer types. Note that we're using a 64-bit compiler but all
26 pointer in the ARC structures are only 32-bit, so we need some disgusting
27 workarounds. Keep your vomit bag handy. */
28 typedef LONG _PCHAR;
29 typedef LONG _PSHORT;
30 typedef LONG _PLARGE_INTEGER;
31 typedef LONG _PLONG;
32 typedef LONG _PUCHAR;
33 typedef LONG _PUSHORT;
34 typedef LONG _PULONG;
35 typedef LONG _PVOID;
36
37 #endif /* CONFIG_ARC32 */
38
39 #ifdef CONFIG_ARC64
40
41 typedef char CHAR;
42 typedef short SHORT;
43 typedef long LARGE_INTEGER __attribute__ ((__mode__ (__DI__)));
44 typedef long LONG __attribute__ ((__mode__ (__DI__)));
45 typedef unsigned char UCHAR;
46 typedef unsigned short USHORT;
47 typedef unsigned long ULONG __attribute__ ((__mode__ (__DI__)));
48 typedef void VOID;
49
50 /* The pointer types. We're 64-bit and the firmware is also 64-bit, so
51 live is sane ... */
52 typedef CHAR *_PCHAR;
53 typedef SHORT *_PSHORT;
54 typedef LARGE_INTEGER *_PLARGE_INTEGER;
55 typedef LONG *_PLONG;
56 typedef UCHAR *_PUCHAR;
57 typedef USHORT *_PUSHORT;
58 typedef ULONG *_PULONG;
59 typedef VOID *_PVOID;
60
61 #endif /* CONFIG_ARC64 */
62
63 typedef CHAR *PCHAR;
64 typedef SHORT *PSHORT;
65 typedef LARGE_INTEGER *PLARGE_INTEGER;
66 typedef LONG *PLONG;
67 typedef UCHAR *PUCHAR;
68 typedef USHORT *PUSHORT;
69 typedef ULONG *PULONG;
70 typedef VOID *PVOID;
71
72 /*
73 * Return type of ArcGetDisplayStatus()
74 */
75 typedef struct {
76 USHORT CursorXPosition;
77 USHORT CursorYPosition;
78 USHORT CursorMaxXPosition;
79 USHORT CursorMaxYPosition;
80 USHORT ForegroundColor;
81 USHORT BackgroundColor;
82 UCHAR HighIntensity;
83 UCHAR Underscored;
84 UCHAR ReverseVideo;
85 } DISPLAY_STATUS;
86
87 #endif /* _ASM_ARC_TYPES_H */