1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2 /*
3  * This file is generally used by user-level software, so you need to
4  * be a little careful about namespace pollution etc.  Also, we cannot
5  * assume GCC is being used.
6  */
7 
8 #ifndef __SPARC_POSIX_TYPES_H
9 #define __SPARC_POSIX_TYPES_H
10 
11 #if defined(__sparc__) && defined(__arch64__)
12 /* sparc 64 bit */
13 
14 typedef unsigned short 	       __kernel_old_uid_t;
15 typedef unsigned short         __kernel_old_gid_t;
16 #define __kernel_old_uid_t __kernel_old_uid_t
17 
18 /* Note this piece of asymmetry from the v9 ABI.  */
19 typedef int		       __kernel_suseconds_t;
20 #define __kernel_suseconds_t __kernel_suseconds_t
21 
22 #else
23 /* sparc 32 bit */
24 
25 typedef unsigned int           __kernel_size_t;
26 typedef int                    __kernel_ssize_t;
27 typedef long int               __kernel_ptrdiff_t;
28 #define __kernel_size_t __kernel_size_t
29 
30 typedef unsigned short         __kernel_ipc_pid_t;
31 #define __kernel_ipc_pid_t __kernel_ipc_pid_t
32 
33 typedef unsigned short         __kernel_uid_t;
34 typedef unsigned short         __kernel_gid_t;
35 #define __kernel_uid_t __kernel_uid_t
36 
37 typedef unsigned short         __kernel_mode_t;
38 #define __kernel_mode_t __kernel_mode_t
39 
40 typedef long                   __kernel_daddr_t;
41 #define __kernel_daddr_t __kernel_daddr_t
42 
43 typedef unsigned short	       __kernel_old_dev_t;
44 #define __kernel_old_dev_t __kernel_old_dev_t
45 
46 #endif /* defined(__sparc__) && defined(__arch64__) */
47 
48 #include <asm-generic/posix_types.h>
49 
50 #endif /* __SPARC_POSIX_TYPES_H */
51