Home | History | Annotate | Download | only in asm-mips
      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 (C) 1996, 97, 98, 99, 2000 by Ralf Baechle
      7  * Copyright (C) 1999, 2000 Silicon Graphics, Inc.
      8  */
      9 #ifndef _ASM_POSIX_TYPES_H
     10 #define _ASM_POSIX_TYPES_H
     11 
     12 #include <asm/sgidefs.h>
     13 
     14 /*
     15  * This file is generally used by user-level software, so you need to
     16  * be a little careful about namespace pollution etc.  Also, we cannot
     17  * assume GCC is being used.
     18  */
     19 
     20 typedef unsigned long	__kernel_ino_t;
     21 typedef unsigned int	__kernel_mode_t;
     22 #if (_MIPS_SZLONG == 32)
     23 typedef unsigned long	__kernel_nlink_t;
     24 #endif
     25 #if (_MIPS_SZLONG == 64)
     26 typedef unsigned int	__kernel_nlink_t;
     27 #endif
     28 typedef long		__kernel_off_t;
     29 typedef int		__kernel_pid_t;
     30 typedef int		__kernel_ipc_pid_t;
     31 typedef unsigned int	__kernel_uid_t;
     32 typedef unsigned int	__kernel_gid_t;
     33 #if (_MIPS_SZLONG == 32)
     34 typedef unsigned int	__kernel_size_t;
     35 typedef int		__kernel_ssize_t;
     36 typedef int		__kernel_ptrdiff_t;
     37 #endif
     38 #if (_MIPS_SZLONG == 64)
     39 typedef unsigned long	__kernel_size_t;
     40 typedef long		__kernel_ssize_t;
     41 typedef long		__kernel_ptrdiff_t;
     42 #endif
     43 typedef long		__kernel_time_t;
     44 typedef long		__kernel_suseconds_t;
     45 typedef long		__kernel_clock_t;
     46 typedef int		__kernel_timer_t;
     47 typedef int		__kernel_clockid_t;
     48 typedef long		__kernel_daddr_t;
     49 typedef char *		__kernel_caddr_t;
     50 
     51 typedef unsigned short	__kernel_uid16_t;
     52 typedef unsigned short	__kernel_gid16_t;
     53 typedef unsigned int	__kernel_uid32_t;
     54 typedef unsigned int	__kernel_gid32_t;
     55 typedef __kernel_uid_t	__kernel_old_uid_t;
     56 typedef __kernel_gid_t	__kernel_old_gid_t;
     57 typedef unsigned int	__kernel_old_dev_t;
     58 
     59 #ifdef __GNUC__
     60 typedef long long      __kernel_loff_t;
     61 #endif
     62 
     63 typedef struct {
     64 #if (_MIPS_SZLONG == 32)
     65 	long	val[2];
     66 #endif
     67 #if (_MIPS_SZLONG == 64)
     68 	int	val[2];
     69 #endif
     70 } __kernel_fsid_t;
     71 
     72 #if !defined(__GLIBC__) || __GLIBC__ < 2
     73 
     74 #undef __FD_SET
     75 #define __FD_SET(fd, fdsetp)   (((fd_set *)(fdsetp))->fds_bits[(fd) >> 5] |= (1<<((fd) & 31)))
     76 
     77 #undef __FD_CLR
     78 #define __FD_CLR(fd, fdsetp)   (((fd_set *)(fdsetp))->fds_bits[(fd) >> 5] &= ~(1<<((fd) & 31)))
     79 
     80 #undef __FD_ISSET
     81 #define __FD_ISSET(fd, fdsetp)   ((((fd_set *)(fdsetp))->fds_bits[(fd) >> 5] & (1<<((fd) & 31))) != 0)
     82 
     83 #undef __FD_ZERO
     84 #define __FD_ZERO(fdsetp)   (memset (fdsetp, 0, sizeof (*(fd_set *)(fdsetp))))
     85 
     86 #endif
     87 
     88 #endif
     89