1384740dcSRalf Baechle /* 2384740dcSRalf Baechle * This file is subject to the terms and conditions of the GNU General Public 3384740dcSRalf Baechle * License. See the file "COPYING" in the main directory of this archive 4384740dcSRalf Baechle * for more details. 5384740dcSRalf Baechle * 6384740dcSRalf Baechle * Copyright 1999 Ralf Baechle (ralf@gnu.org) 7384740dcSRalf Baechle * Copyright 1999 Silicon Graphics, Inc. 8384740dcSRalf Baechle */ 9384740dcSRalf Baechle #ifndef _ASM_ARC_TYPES_H 10384740dcSRalf Baechle #define _ASM_ARC_TYPES_H 11384740dcSRalf Baechle 12384740dcSRalf Baechle 130e2794b0SRalf Baechle #ifdef CONFIG_FW_ARC32 14384740dcSRalf Baechle 15384740dcSRalf Baechle typedef char CHAR; 16384740dcSRalf Baechle typedef short SHORT; 17384740dcSRalf Baechle typedef long LARGE_INTEGER __attribute__ ((__mode__ (__DI__))); 18384740dcSRalf Baechle typedef long LONG __attribute__ ((__mode__ (__SI__))); 19384740dcSRalf Baechle typedef unsigned char UCHAR; 20384740dcSRalf Baechle typedef unsigned short USHORT; 21384740dcSRalf Baechle typedef unsigned long ULONG __attribute__ ((__mode__ (__SI__))); 22384740dcSRalf Baechle typedef void VOID; 23384740dcSRalf Baechle 24384740dcSRalf Baechle /* The pointer types. Note that we're using a 64-bit compiler but all 25384740dcSRalf Baechle pointer in the ARC structures are only 32-bit, so we need some disgusting 26384740dcSRalf Baechle workarounds. Keep your vomit bag handy. */ 27384740dcSRalf Baechle typedef LONG _PCHAR; 28384740dcSRalf Baechle typedef LONG _PSHORT; 29384740dcSRalf Baechle typedef LONG _PLARGE_INTEGER; 30384740dcSRalf Baechle typedef LONG _PLONG; 31384740dcSRalf Baechle typedef LONG _PUCHAR; 32384740dcSRalf Baechle typedef LONG _PUSHORT; 33384740dcSRalf Baechle typedef LONG _PULONG; 34384740dcSRalf Baechle typedef LONG _PVOID; 35384740dcSRalf Baechle 360e2794b0SRalf Baechle #endif /* CONFIG_FW_ARC32 */ 37384740dcSRalf Baechle 380e2794b0SRalf Baechle #ifdef CONFIG_FW_ARC64 39384740dcSRalf Baechle 40384740dcSRalf Baechle typedef char CHAR; 41384740dcSRalf Baechle typedef short SHORT; 42384740dcSRalf Baechle typedef long LARGE_INTEGER __attribute__ ((__mode__ (__DI__))); 43384740dcSRalf Baechle typedef long LONG __attribute__ ((__mode__ (__DI__))); 44384740dcSRalf Baechle typedef unsigned char UCHAR; 45384740dcSRalf Baechle typedef unsigned short USHORT; 46384740dcSRalf Baechle typedef unsigned long ULONG __attribute__ ((__mode__ (__DI__))); 47384740dcSRalf Baechle typedef void VOID; 48384740dcSRalf Baechle 49384740dcSRalf Baechle /* The pointer types. We're 64-bit and the firmware is also 64-bit, so 50384740dcSRalf Baechle live is sane ... */ 51384740dcSRalf Baechle typedef CHAR *_PCHAR; 52384740dcSRalf Baechle typedef SHORT *_PSHORT; 53384740dcSRalf Baechle typedef LARGE_INTEGER *_PLARGE_INTEGER; 54384740dcSRalf Baechle typedef LONG *_PLONG; 55384740dcSRalf Baechle typedef UCHAR *_PUCHAR; 56384740dcSRalf Baechle typedef USHORT *_PUSHORT; 57384740dcSRalf Baechle typedef ULONG *_PULONG; 58384740dcSRalf Baechle typedef VOID *_PVOID; 59384740dcSRalf Baechle 600e2794b0SRalf Baechle #endif /* CONFIG_FW_ARC64 */ 61384740dcSRalf Baechle 62384740dcSRalf Baechle typedef CHAR *PCHAR; 63384740dcSRalf Baechle typedef SHORT *PSHORT; 64384740dcSRalf Baechle typedef LARGE_INTEGER *PLARGE_INTEGER; 65384740dcSRalf Baechle typedef LONG *PLONG; 66384740dcSRalf Baechle typedef UCHAR *PUCHAR; 67384740dcSRalf Baechle typedef USHORT *PUSHORT; 68384740dcSRalf Baechle typedef ULONG *PULONG; 69384740dcSRalf Baechle typedef VOID *PVOID; 70384740dcSRalf Baechle 71384740dcSRalf Baechle /* 72384740dcSRalf Baechle * Return type of ArcGetDisplayStatus() 73384740dcSRalf Baechle */ 74384740dcSRalf Baechle typedef struct { 75384740dcSRalf Baechle USHORT CursorXPosition; 76384740dcSRalf Baechle USHORT CursorYPosition; 77384740dcSRalf Baechle USHORT CursorMaxXPosition; 78384740dcSRalf Baechle USHORT CursorMaxYPosition; 79384740dcSRalf Baechle USHORT ForegroundColor; 80384740dcSRalf Baechle USHORT BackgroundColor; 81384740dcSRalf Baechle UCHAR HighIntensity; 82384740dcSRalf Baechle UCHAR Underscored; 83384740dcSRalf Baechle UCHAR ReverseVideo; 84384740dcSRalf Baechle } DISPLAY_STATUS; 85384740dcSRalf Baechle 86384740dcSRalf Baechle #endif /* _ASM_ARC_TYPES_H */ 87