1 /* SPDX-License-Identifier: GPL-2.0+ */ 2 /* 3 * Copyright (C) 2013-2014 Synopsys, Inc. All rights reserved. 4 */ 5 6 #ifndef __ASM_ARC_TYPES_H 7 #define __ASM_ARC_TYPES_H 8 9 typedef unsigned short umode_t; 10 11 /* 12 * __xx is ok: it doesn't pollute the POSIX namespace. Use these in the 13 * header files exported to user space 14 */ 15 16 typedef __signed__ char __s8; 17 typedef unsigned char __u8; 18 19 typedef __signed__ short __s16; 20 typedef unsigned short __u16; 21 22 typedef __signed__ int __s32; 23 typedef unsigned int __u32; 24 25 #if defined(__GNUC__) && !defined(__STRICT_ANSI__) 26 typedef __signed__ long long __s64; 27 typedef unsigned long long __u64; 28 #endif 29 30 /* 31 * These aren't exported outside the kernel to avoid name space clashes 32 */ 33 typedef signed char s8; 34 typedef unsigned char u8; 35 36 typedef signed short s16; 37 typedef unsigned short u16; 38 39 typedef signed int s32; 40 typedef unsigned int u32; 41 42 typedef signed long long s64; 43 typedef unsigned long long u64; 44 45 #define BITS_PER_LONG 32 46 47 /* Dma addresses are 32-bits wide. */ 48 49 typedef u32 dma_addr_t; 50 51 typedef unsigned long phys_addr_t; 52 typedef unsigned long phys_size_t; 53 54 #endif /* __ASM_ARC_TYPES_H */ 55