1/* $Id: posix_types.h,v 1.1.1.1 2007/08/03 18:53:22 Exp $ */ 2 3/* We cheat a bit and use our C-coded bitops functions from asm/bitops.h */ 4/* I guess we should write these in assembler because they are used often. */ 5 6#ifndef __ARCH_CRIS_POSIX_TYPES_H 7#define __ARCH_CRIS_POSIX_TYPES_H 8 9/* 10 * This file is generally used by user-level software, so you need to 11 * be a little careful about namespace pollution etc. Also, we cannot 12 * assume GCC is being used. 13 */ 14 15typedef unsigned long __kernel_ino_t; 16typedef unsigned short __kernel_mode_t; 17typedef unsigned short __kernel_nlink_t; 18typedef long __kernel_off_t; 19typedef int __kernel_pid_t; 20typedef unsigned short __kernel_ipc_pid_t; 21typedef unsigned short __kernel_uid_t; 22typedef unsigned short __kernel_gid_t; 23typedef __SIZE_TYPE__ __kernel_size_t; 24typedef long __kernel_ssize_t; 25typedef int __kernel_ptrdiff_t; 26typedef long __kernel_time_t; 27typedef long __kernel_suseconds_t; 28typedef long __kernel_clock_t; 29typedef int __kernel_timer_t; 30typedef int __kernel_clockid_t; 31typedef int __kernel_daddr_t; 32typedef char * __kernel_caddr_t; 33typedef unsigned short __kernel_uid16_t; 34typedef unsigned short __kernel_gid16_t; 35typedef unsigned int __kernel_uid32_t; 36typedef unsigned int __kernel_gid32_t; 37 38typedef unsigned short __kernel_old_uid_t; 39typedef unsigned short __kernel_old_gid_t; 40typedef unsigned short __kernel_old_dev_t; 41 42#ifdef __GNUC__ 43typedef long long __kernel_loff_t; 44#endif 45 46typedef struct { 47#if defined(__KERNEL__) || defined(__USE_ALL) 48 int val[2]; 49#else /* !defined(__KERNEL__) && !defined(__USE_ALL) */ 50 int __val[2]; 51#endif /* !defined(__KERNEL__) && !defined(__USE_ALL) */ 52} __kernel_fsid_t; 53 54#ifdef __KERNEL__ 55#include <asm/bitops.h> 56 57#undef __FD_SET 58#define __FD_SET(fd,fdsetp) set_bit(fd, (void *)(fdsetp)) 59 60#undef __FD_CLR 61#define __FD_CLR(fd,fdsetp) clear_bit(fd, (void *)(fdsetp)) 62 63#undef __FD_ISSET 64#define __FD_ISSET(fd,fdsetp) test_bit(fd, (void *)(fdsetp)) 65 66#undef __FD_ZERO 67#define __FD_ZERO(fdsetp) memset((void *)(fdsetp), 0, __FDSET_LONGS << 2) 68 69#endif /* __KERNEL__ */ 70 71#endif /* __ARCH_CRIS_POSIX_TYPES_H */ 72