diff options
Diffstat (limited to 'arch/sh/include/uapi')
23 files changed, 1483 insertions, 0 deletions
diff --git a/arch/sh/include/uapi/asm/Kbuild b/arch/sh/include/uapi/asm/Kbuild new file mode 100644 index 00000000000..60613ae7851 --- /dev/null +++ b/arch/sh/include/uapi/asm/Kbuild @@ -0,0 +1,25 @@ +# UAPI Header export list +include include/uapi/asm-generic/Kbuild.asm + +header-y += auxvec.h +header-y += byteorder.h +header-y += cachectl.h +header-y += cpu-features.h +header-y += hw_breakpoint.h +header-y += ioctls.h +header-y += posix_types.h +header-y += posix_types_32.h +header-y += posix_types_64.h +header-y += ptrace.h +header-y += ptrace_32.h +header-y += ptrace_64.h +header-y += setup.h +header-y += sigcontext.h +header-y += signal.h +header-y += sockios.h +header-y += stat.h +header-y += swab.h +header-y += types.h +header-y += unistd.h +header-y += unistd_32.h +header-y += unistd_64.h diff --git a/arch/sh/include/uapi/asm/auxvec.h b/arch/sh/include/uapi/asm/auxvec.h new file mode 100644 index 00000000000..8bcc51af936 --- /dev/null +++ b/arch/sh/include/uapi/asm/auxvec.h @@ -0,0 +1,38 @@ +#ifndef __ASM_SH_AUXVEC_H +#define __ASM_SH_AUXVEC_H + +/* + * Architecture-neutral AT_ values in 0-17, leave some room + * for more of them. + */ + +/* + * This entry gives some information about the FPU initialization + * performed by the kernel. + */ +#define AT_FPUCW		18	/* Used FPU control word.  */ + +#if defined(CONFIG_VSYSCALL) || !defined(__KERNEL__) +/* + * Only define this in the vsyscall case, the entry point to + * the vsyscall page gets placed here. The kernel will attempt + * to build a gate VMA we don't care about otherwise.. + */ +#define AT_SYSINFO_EHDR		33 +#endif + +/* + * More complete cache descriptions than AT_[DIU]CACHEBSIZE.  If the + * value is -1, then the cache doesn't exist.  Otherwise: + * + *    bit 0-3:	  Cache set-associativity; 0 means fully associative. + *    bit 4-7:	  Log2 of cacheline size. + *    bit 8-31:	  Size of the entire cache >> 8. + */ +#define AT_L1I_CACHESHAPE	34 +#define AT_L1D_CACHESHAPE	35 +#define AT_L2_CACHESHAPE	36 + +#define AT_VECTOR_SIZE_ARCH 5 /* entries in ARCH_DLINFO */ + +#endif /* __ASM_SH_AUXVEC_H */ diff --git a/arch/sh/include/uapi/asm/byteorder.h b/arch/sh/include/uapi/asm/byteorder.h new file mode 100644 index 00000000000..db2f5d7cb17 --- /dev/null +++ b/arch/sh/include/uapi/asm/byteorder.h @@ -0,0 +1,10 @@ +#ifndef __ASM_SH_BYTEORDER_H +#define __ASM_SH_BYTEORDER_H + +#ifdef __LITTLE_ENDIAN__ +#include <linux/byteorder/little_endian.h> +#else +#include <linux/byteorder/big_endian.h> +#endif + +#endif /* __ASM_SH_BYTEORDER_H */ diff --git a/arch/sh/include/uapi/asm/cachectl.h b/arch/sh/include/uapi/asm/cachectl.h new file mode 100644 index 00000000000..6ffb4b7a212 --- /dev/null +++ b/arch/sh/include/uapi/asm/cachectl.h @@ -0,0 +1,19 @@ +#ifndef _SH_CACHECTL_H +#define _SH_CACHECTL_H + +/* Definitions for the cacheflush system call.  */ + +#define CACHEFLUSH_D_INVAL	0x1	/* invalidate (without write back) */ +#define CACHEFLUSH_D_WB		0x2	/* write back (without invalidate) */ +#define CACHEFLUSH_D_PURGE	0x3	/* writeback and invalidate */ + +#define CACHEFLUSH_I		0x4 + +/* + * Options for cacheflush system call + */ +#define ICACHE	CACHEFLUSH_I		/* flush instruction cache */ +#define DCACHE	CACHEFLUSH_D_PURGE	/* writeback and flush data cache */ +#define BCACHE	(ICACHE|DCACHE)		/* flush both caches */ + +#endif /* _SH_CACHECTL_H */ diff --git a/arch/sh/include/uapi/asm/cpu-features.h b/arch/sh/include/uapi/asm/cpu-features.h new file mode 100644 index 00000000000..694abe490ed --- /dev/null +++ b/arch/sh/include/uapi/asm/cpu-features.h @@ -0,0 +1,26 @@ +#ifndef __ASM_SH_CPU_FEATURES_H +#define __ASM_SH_CPU_FEATURES_H + +/* + * Processor flags + * + * Note: When adding a new flag, keep cpu_flags[] in + * arch/sh/kernel/setup.c in sync so symbolic name + * mapping of the processor flags has a chance of being + * reasonably accurate. + * + * These flags are also available through the ELF + * auxiliary vector as AT_HWCAP. + */ +#define CPU_HAS_FPU		0x0001	/* Hardware FPU support */ +#define CPU_HAS_P2_FLUSH_BUG	0x0002	/* Need to flush the cache in P2 area */ +#define CPU_HAS_MMU_PAGE_ASSOC	0x0004	/* SH3: TLB way selection bit support */ +#define CPU_HAS_DSP		0x0008	/* SH-DSP: DSP support */ +#define CPU_HAS_PERF_COUNTER	0x0010	/* Hardware performance counters */ +#define CPU_HAS_PTEA		0x0020	/* PTEA register */ +#define CPU_HAS_LLSC		0x0040	/* movli.l/movco.l */ +#define CPU_HAS_L2_CACHE	0x0080	/* Secondary cache / URAM */ +#define CPU_HAS_OP32		0x0100	/* 32-bit instruction support */ +#define CPU_HAS_PTEAEX		0x0200	/* PTE ASID Extension support */ + +#endif /* __ASM_SH_CPU_FEATURES_H */ diff --git a/arch/sh/include/uapi/asm/hw_breakpoint.h b/arch/sh/include/uapi/asm/hw_breakpoint.h new file mode 100644 index 00000000000..ae5704fa77a --- /dev/null +++ b/arch/sh/include/uapi/asm/hw_breakpoint.h @@ -0,0 +1,4 @@ +/* + * There isn't anything here anymore, but the file must not be empty or patch + * will delete it. + */ diff --git a/arch/sh/include/uapi/asm/ioctls.h b/arch/sh/include/uapi/asm/ioctls.h new file mode 100644 index 00000000000..34224107976 --- /dev/null +++ b/arch/sh/include/uapi/asm/ioctls.h @@ -0,0 +1,110 @@ +#ifndef __ASM_SH_IOCTLS_H +#define __ASM_SH_IOCTLS_H + +#include <asm/ioctl.h> + +#define FIOCLEX		_IO('f', 1) +#define FIONCLEX	_IO('f', 2) +#define FIOASYNC	_IOW('f', 125, int) +#define FIONBIO		_IOW('f', 126, int) +#define FIONREAD	_IOR('f', 127, int) +#define TIOCINQ		FIONREAD +#define FIOQSIZE	_IOR('f', 128, loff_t) + +#define TCGETS		0x5401 +#define TCSETS		0x5402 +#define TCSETSW		0x5403 +#define TCSETSF		0x5404 + +#define TCGETA		0x80127417	/* _IOR('t', 23, struct termio) */ +#define TCSETA		0x40127418	/* _IOW('t', 24, struct termio) */ +#define TCSETAW		0x40127419	/* _IOW('t', 25, struct termio) */ +#define TCSETAF		0x4012741C	/* _IOW('t', 28, struct termio) */ + +#define TCSBRK		_IO('t', 29) +#define TCXONC		_IO('t', 30) +#define TCFLSH		_IO('t', 31) + +#define TIOCSWINSZ	0x40087467	/* _IOW('t', 103, struct winsize) */ +#define TIOCGWINSZ	0x80087468	/* _IOR('t', 104, struct winsize) */ +#define	TIOCSTART	_IO('t', 110)		/* start output, like ^Q */ +#define	TIOCSTOP	_IO('t', 111)		/* stop output, like ^S */ +#define TIOCOUTQ        _IOR('t', 115, int)     /* output queue size */ + +#define TIOCSPGRP	_IOW('t', 118, int) +#define TIOCGPGRP	_IOR('t', 119, int) + +#define TIOCEXCL	_IO('T', 12) /* 0x540C */ +#define TIOCNXCL	_IO('T', 13) /* 0x540D */ +#define TIOCSCTTY	_IO('T', 14) /* 0x540E */ + +#define TIOCSTI		_IOW('T', 18, char) /* 0x5412 */ +#define TIOCMGET	_IOR('T', 21, unsigned int) /* 0x5415 */ +#define TIOCMBIS	_IOW('T', 22, unsigned int) /* 0x5416 */ +#define TIOCMBIC	_IOW('T', 23, unsigned int) /* 0x5417 */ +#define TIOCMSET	_IOW('T', 24, unsigned int) /* 0x5418 */ +# define TIOCM_LE	0x001 +# define TIOCM_DTR	0x002 +# define TIOCM_RTS	0x004 +# define TIOCM_ST	0x008 +# define TIOCM_SR	0x010 +# define TIOCM_CTS	0x020 +# define TIOCM_CAR	0x040 +# define TIOCM_RNG	0x080 +# define TIOCM_DSR	0x100 +# define TIOCM_CD	TIOCM_CAR +# define TIOCM_RI	TIOCM_RNG + +#define TIOCGSOFTCAR	_IOR('T', 25, unsigned int) /* 0x5419 */ +#define TIOCSSOFTCAR	_IOW('T', 26, unsigned int) /* 0x541A */ +#define TIOCLINUX	_IOW('T', 28, char) /* 0x541C */ +#define TIOCCONS	_IO('T', 29) /* 0x541D */ +#define TIOCGSERIAL	0x803C541E	/* _IOR('T', 30, struct serial_struct) 0x541E */ +#define TIOCSSERIAL	0x403C541F	/* _IOW('T', 31, struct serial_struct) 0x541F */ +#define TIOCPKT		_IOW('T', 32, int) /* 0x5420 */ +# define TIOCPKT_DATA		 0 +# define TIOCPKT_FLUSHREAD	 1 +# define TIOCPKT_FLUSHWRITE	 2 +# define TIOCPKT_STOP		 4 +# define TIOCPKT_START		 8 +# define TIOCPKT_NOSTOP		16 +# define TIOCPKT_DOSTOP		32 +# define TIOCPKT_IOCTL		64 + + +#define TIOCNOTTY	_IO('T', 34) /* 0x5422 */ +#define TIOCSETD	_IOW('T', 35, int) /* 0x5423 */ +#define TIOCGETD	_IOR('T', 36, int) /* 0x5424 */ +#define TCSBRKP		_IOW('T', 37, int) /* 0x5425 */	/* Needed for POSIX tcsendbreak() */ +#define TIOCSBRK	_IO('T', 39) /* 0x5427 */ /* BSD compatibility */ +#define TIOCCBRK	_IO('T', 40) /* 0x5428 */ /* BSD compatibility */ +#define TIOCGSID	_IOR('T', 41, pid_t) /* 0x5429 */ /* Return the session ID of FD */ +#define TCGETS2		_IOR('T', 42, struct termios2) +#define TCSETS2		_IOW('T', 43, struct termios2) +#define TCSETSW2	_IOW('T', 44, struct termios2) +#define TCSETSF2	_IOW('T', 45, struct termios2) +#define TIOCGPTN	_IOR('T',0x30, unsigned int) /* Get Pty Number (of pty-mux device) */ +#define TIOCSPTLCK	_IOW('T',0x31, int)  /* Lock/unlock Pty */ +#define TIOCGDEV	_IOR('T',0x32, unsigned int) /* Get primary device node of /dev/console */ +#define TIOCSIG		_IOW('T',0x36, int)  /* Generate signal on Pty slave */ +#define TIOCVHANGUP	_IO('T', 0x37) +#define TIOCGPKT	_IOR('T', 0x38, int) /* Get packet mode state */ +#define TIOCGPTLCK	_IOR('T', 0x39, int) /* Get Pty lock state */ +#define TIOCGEXCL	_IOR('T', 0x40, int) /* Get exclusive mode state */ + +#define TIOCSERCONFIG	_IO('T', 83) /* 0x5453 */ +#define TIOCSERGWILD	_IOR('T', 84,  int) /* 0x5454 */ +#define TIOCSERSWILD	_IOW('T', 85,  int) /* 0x5455 */ +#define TIOCGLCKTRMIOS	0x5456 +#define TIOCSLCKTRMIOS	0x5457 +#define TIOCSERGSTRUCT	0x80d85458	/* _IOR('T', 88, struct async_struct) 0x5458 */ /* For debugging only */ +#define TIOCSERGETLSR   _IOR('T', 89, unsigned int) /* 0x5459 */ /* Get line status register */ +  /* ioctl (fd, TIOCSERGETLSR, &result) where result may be as below */ +# define TIOCSER_TEMT    0x01	/* Transmitter physically empty */ +#define TIOCSERGETMULTI 0x80A8545A	/* _IOR('T', 90, struct serial_multiport_struct) 0x545A */ /* Get multiport config */ +#define TIOCSERSETMULTI 0x40A8545B	/* _IOW('T', 91, struct serial_multiport_struct) 0x545B */ /* Set multiport config */ + +#define TIOCMIWAIT	_IO('T', 92) /* 0x545C */	/* wait for a change on serial input line(s) */ +#define TIOCGICOUNT	0x545D	/* read serial port inline interrupt counts */ + +#endif /* __ASM_SH_IOCTLS_H */ diff --git a/arch/sh/include/uapi/asm/posix_types.h b/arch/sh/include/uapi/asm/posix_types.h new file mode 100644 index 00000000000..dc55e5adfe1 --- /dev/null +++ b/arch/sh/include/uapi/asm/posix_types.h @@ -0,0 +1,7 @@ +#ifndef __KERNEL__ +# ifdef __SH5__ +#  include <asm/posix_types_64.h> +# else +#  include <asm/posix_types_32.h> +# endif +#endif /* __KERNEL__ */ diff --git a/arch/sh/include/uapi/asm/posix_types_32.h b/arch/sh/include/uapi/asm/posix_types_32.h new file mode 100644 index 00000000000..ba0bdc423b0 --- /dev/null +++ b/arch/sh/include/uapi/asm/posix_types_32.h @@ -0,0 +1,22 @@ +#ifndef __ASM_SH_POSIX_TYPES_32_H +#define __ASM_SH_POSIX_TYPES_32_H + +typedef unsigned short	__kernel_mode_t; +#define __kernel_mode_t __kernel_mode_t +typedef unsigned short	__kernel_ipc_pid_t; +#define __kernel_ipc_pid_t __kernel_ipc_pid_t +typedef unsigned short	__kernel_uid_t; +#define __kernel_uid_t __kernel_uid_t +typedef unsigned short	__kernel_gid_t; +#define __kernel_gid_t __kernel_gid_t + +typedef unsigned short	__kernel_old_uid_t; +#define __kernel_old_uid_t __kernel_old_uid_t +typedef unsigned short	__kernel_old_gid_t; +#define __kernel_old_gid_t __kernel_old_gid_t +typedef unsigned short	__kernel_old_dev_t; +#define __kernel_old_dev_t __kernel_old_dev_t + +#include <asm-generic/posix_types.h> + +#endif /* __ASM_SH_POSIX_TYPES_32_H */ diff --git a/arch/sh/include/uapi/asm/posix_types_64.h b/arch/sh/include/uapi/asm/posix_types_64.h new file mode 100644 index 00000000000..244f7e950e1 --- /dev/null +++ b/arch/sh/include/uapi/asm/posix_types_64.h @@ -0,0 +1,28 @@ +#ifndef __ASM_SH_POSIX_TYPES_64_H +#define __ASM_SH_POSIX_TYPES_64_H + +typedef unsigned short	__kernel_mode_t; +#define __kernel_mode_t __kernel_mode_t +typedef unsigned short	__kernel_ipc_pid_t; +#define __kernel_ipc_pid_t __kernel_ipc_pid_t +typedef unsigned short	__kernel_uid_t; +#define __kernel_uid_t __kernel_uid_t +typedef unsigned short	__kernel_gid_t; +#define __kernel_gid_t __kernel_gid_t +typedef long unsigned int	__kernel_size_t; +#define __kernel_size_t __kernel_size_t +typedef int		__kernel_ssize_t; +#define __kernel_ssize_t __kernel_ssize_t +typedef int		__kernel_ptrdiff_t; +#define __kernel_ptrdiff_t __kernel_ptrdiff_t + +typedef unsigned short	__kernel_old_uid_t; +#define __kernel_old_uid_t __kernel_old_uid_t +typedef unsigned short	__kernel_old_gid_t; +#define __kernel_old_gid_t __kernel_old_gid_t +typedef unsigned short	__kernel_old_dev_t; +#define __kernel_old_dev_t __kernel_old_dev_t + +#include <asm-generic/posix_types.h> + +#endif /* __ASM_SH_POSIX_TYPES_64_H */ diff --git a/arch/sh/include/uapi/asm/ptrace.h b/arch/sh/include/uapi/asm/ptrace.h new file mode 100644 index 00000000000..8b8c5aca9c2 --- /dev/null +++ b/arch/sh/include/uapi/asm/ptrace.h @@ -0,0 +1,34 @@ +/* + * Copyright (C) 1999, 2000  Niibe Yutaka + */ +#ifndef _UAPI__ASM_SH_PTRACE_H +#define _UAPI__ASM_SH_PTRACE_H + + +#define PTRACE_GETREGS		12	/* General registers */ +#define PTRACE_SETREGS		13 + +#define PTRACE_GETFPREGS	14	/* FPU registers */ +#define PTRACE_SETFPREGS	15 + +#define PTRACE_GETFDPIC		31	/* get the ELF fdpic loadmap address */ + +#define PTRACE_GETFDPIC_EXEC	0	/* [addr] request the executable loadmap */ +#define PTRACE_GETFDPIC_INTERP	1	/* [addr] request the interpreter loadmap */ + +#define	PTRACE_GETDSPREGS	55	/* DSP registers */ +#define	PTRACE_SETDSPREGS	56 + +#define PT_TEXT_END_ADDR	240 +#define PT_TEXT_ADDR		244	/* &(struct user)->start_code */ +#define PT_DATA_ADDR		248	/* &(struct user)->start_data */ +#define PT_TEXT_LEN		252 + +#if defined(__SH5__) || defined(CONFIG_CPU_SH5) +#include <asm/ptrace_64.h> +#else +#include <asm/ptrace_32.h> +#endif + + +#endif /* _UAPI__ASM_SH_PTRACE_H */ diff --git a/arch/sh/include/uapi/asm/ptrace_32.h b/arch/sh/include/uapi/asm/ptrace_32.h new file mode 100644 index 00000000000..926e0cefc2b --- /dev/null +++ b/arch/sh/include/uapi/asm/ptrace_32.h @@ -0,0 +1,77 @@ +#ifndef _UAPI__ASM_SH_PTRACE_32_H +#define _UAPI__ASM_SH_PTRACE_32_H + +/* + * GCC defines register number like this: + * ----------------------------- + *	 0 - 15 are integer registers + *	17 - 22 are control/special registers + *	24 - 39 fp registers + *	40 - 47 xd registers + *	48 -    fpscr register + * ----------------------------- + * + * We follows above, except: + *	16 --- program counter (PC) + *	22 --- syscall # + *	23 --- floating point communication register + */ +#define REG_REG0	 0 +#define REG_REG15	15 + +#define REG_PC		16 + +#define REG_PR		17 +#define REG_SR		18 +#define REG_GBR		19 +#define REG_MACH	20 +#define REG_MACL	21 + +#define REG_SYSCALL	22 + +#define REG_FPREG0	23 +#define REG_FPREG15	38 +#define REG_XFREG0	39 +#define REG_XFREG15	54 + +#define REG_FPSCR	55 +#define REG_FPUL	56 + +/* + * This struct defines the way the registers are stored on the + * kernel stack during a system call or other kernel entry. + */ +struct pt_regs { +	unsigned long regs[16]; +	unsigned long pc; +	unsigned long pr; +	unsigned long sr; +	unsigned long gbr; +	unsigned long mach; +	unsigned long macl; +	long tra; +}; + +/* + * This struct defines the way the DSP registers are stored on the + * kernel stack during a system call or other kernel entry. + */ +struct pt_dspregs { +	unsigned long	a1; +	unsigned long	a0g; +	unsigned long	a1g; +	unsigned long	m0; +	unsigned long	m1; +	unsigned long	a0; +	unsigned long	x0; +	unsigned long	x1; +	unsigned long	y0; +	unsigned long	y1; +	unsigned long	dsr; +	unsigned long	rs; +	unsigned long	re; +	unsigned long	mod; +}; + + +#endif /* _UAPI__ASM_SH_PTRACE_32_H */ diff --git a/arch/sh/include/uapi/asm/ptrace_64.h b/arch/sh/include/uapi/asm/ptrace_64.h new file mode 100644 index 00000000000..0e52ee83e94 --- /dev/null +++ b/arch/sh/include/uapi/asm/ptrace_64.h @@ -0,0 +1,14 @@ +#ifndef _UAPI__ASM_SH_PTRACE_64_H +#define _UAPI__ASM_SH_PTRACE_64_H + +struct pt_regs { +	unsigned long long pc; +	unsigned long long sr; +	long long syscall_nr; +	unsigned long long regs[63]; +	unsigned long long tregs[8]; +	unsigned long long pad[2]; +}; + + +#endif /* _UAPI__ASM_SH_PTRACE_64_H */ diff --git a/arch/sh/include/uapi/asm/setup.h b/arch/sh/include/uapi/asm/setup.h new file mode 100644 index 00000000000..552df83f1a4 --- /dev/null +++ b/arch/sh/include/uapi/asm/setup.h @@ -0,0 +1 @@ +#include <asm-generic/setup.h> diff --git a/arch/sh/include/uapi/asm/sigcontext.h b/arch/sh/include/uapi/asm/sigcontext.h new file mode 100644 index 00000000000..8ce1435bc0b --- /dev/null +++ b/arch/sh/include/uapi/asm/sigcontext.h @@ -0,0 +1,40 @@ +#ifndef __ASM_SH_SIGCONTEXT_H +#define __ASM_SH_SIGCONTEXT_H + +struct sigcontext { +	unsigned long	oldmask; + +#if defined(__SH5__) || defined(CONFIG_CPU_SH5) +	/* CPU registers */ +	unsigned long long sc_regs[63]; +	unsigned long long sc_tregs[8]; +	unsigned long long sc_pc; +	unsigned long long sc_sr; + +	/* FPU registers */ +	unsigned long long sc_fpregs[32]; +	unsigned int sc_fpscr; +	unsigned int sc_fpvalid; +#else +	/* CPU registers */ +	unsigned long sc_regs[16]; +	unsigned long sc_pc; +	unsigned long sc_pr; +	unsigned long sc_sr; +	unsigned long sc_gbr; +	unsigned long sc_mach; +	unsigned long sc_macl; + +#if defined(__SH4__) || defined(CONFIG_CPU_SH4) || \ +    defined(__SH2A__) || defined(CONFIG_CPU_SH2A) +	/* FPU registers */ +	unsigned long sc_fpregs[16]; +	unsigned long sc_xfpregs[16]; +	unsigned int sc_fpscr; +	unsigned int sc_fpul; +	unsigned int sc_ownedfp; +#endif +#endif +}; + +#endif /* __ASM_SH_SIGCONTEXT_H */ diff --git a/arch/sh/include/uapi/asm/signal.h b/arch/sh/include/uapi/asm/signal.h new file mode 100644 index 00000000000..cb96d02f55a --- /dev/null +++ b/arch/sh/include/uapi/asm/signal.h @@ -0,0 +1,17 @@ +#ifndef __ASM_SH_SIGNAL_H +#define __ASM_SH_SIGNAL_H + +#define SA_RESTORER	0x04000000 + +#include <asm-generic/signal.h> + +#ifndef __KERNEL__ +struct old_sigaction { +	__sighandler_t sa_handler; +	old_sigset_t sa_mask; +	unsigned long sa_flags; +	void (*sa_restorer)(void); +}; +#endif + +#endif /* __ASM_SH_SIGNAL_H */ diff --git a/arch/sh/include/uapi/asm/sockios.h b/arch/sh/include/uapi/asm/sockios.h new file mode 100644 index 00000000000..cf8b96b1f9a --- /dev/null +++ b/arch/sh/include/uapi/asm/sockios.h @@ -0,0 +1,14 @@ +#ifndef __ASM_SH_SOCKIOS_H +#define __ASM_SH_SOCKIOS_H + +/* Socket-level I/O control calls. */ +#define FIOGETOWN	_IOR('f', 123, int) +#define FIOSETOWN 	_IOW('f', 124, int) + +#define SIOCATMARK	_IOR('s', 7, int) +#define SIOCSPGRP	_IOW('s', 8, pid_t) +#define SIOCGPGRP	_IOR('s', 9, pid_t) + +#define SIOCGSTAMP	_IOR('s', 100, struct timeval) /* Get stamp (timeval) */ +#define SIOCGSTAMPNS	_IOR('s', 101, struct timespec) /* Get stamp (timespec) */ +#endif /* __ASM_SH_SOCKIOS_H */ diff --git a/arch/sh/include/uapi/asm/stat.h b/arch/sh/include/uapi/asm/stat.h new file mode 100644 index 00000000000..e1810cc6e3d --- /dev/null +++ b/arch/sh/include/uapi/asm/stat.h @@ -0,0 +1,138 @@ +#ifndef __ASM_SH_STAT_H +#define __ASM_SH_STAT_H + +struct __old_kernel_stat { +	unsigned short st_dev; +	unsigned short st_ino; +	unsigned short st_mode; +	unsigned short st_nlink; +	unsigned short st_uid; +	unsigned short st_gid; +	unsigned short st_rdev; +	unsigned long  st_size; +	unsigned long  st_atime; +	unsigned long  st_mtime; +	unsigned long  st_ctime; +}; + +#if defined(__SH5__) || defined(CONFIG_CPU_SH5) +struct stat { +	unsigned short st_dev; +	unsigned short __pad1; +	unsigned long st_ino; +	unsigned short st_mode; +	unsigned short st_nlink; +	unsigned short st_uid; +	unsigned short st_gid; +	unsigned short st_rdev; +	unsigned short __pad2; +	unsigned long  st_size; +	unsigned long  st_blksize; +	unsigned long  st_blocks; +	unsigned long  st_atime; +	unsigned long  st_atime_nsec; +	unsigned long  st_mtime; +	unsigned long  st_mtime_nsec; +	unsigned long  st_ctime; +	unsigned long  st_ctime_nsec; +	unsigned long  __unused4; +	unsigned long  __unused5; +}; + +/* This matches struct stat64 in glibc2.1, hence the absolutely + * insane amounts of padding around dev_t's. + */ +struct stat64 { +	unsigned short	st_dev; +	unsigned char	__pad0[10]; + +	unsigned long	st_ino; +	unsigned int	st_mode; +	unsigned int	st_nlink; + +	unsigned long	st_uid; +	unsigned long	st_gid; + +	unsigned short	st_rdev; +	unsigned char	__pad3[10]; + +	long long	st_size; +	unsigned long	st_blksize; + +	unsigned long	st_blocks;	/* Number 512-byte blocks allocated. */ +	unsigned long	__pad4;		/* future possible st_blocks high bits */ + +	unsigned long	st_atime; +	unsigned long	st_atime_nsec; + +	unsigned long	st_mtime; +	unsigned long	st_mtime_nsec; + +	unsigned long	st_ctime; +	unsigned long	st_ctime_nsec;	/* will be high 32 bits of ctime someday */ + +	unsigned long	__unused1; +	unsigned long	__unused2; +}; +#else +struct stat { +	unsigned long  st_dev; +	unsigned long  st_ino; +	unsigned short st_mode; +	unsigned short st_nlink; +	unsigned short st_uid; +	unsigned short st_gid; +	unsigned long  st_rdev; +	unsigned long  st_size; +	unsigned long  st_blksize; +	unsigned long  st_blocks; +	unsigned long  st_atime; +	unsigned long  st_atime_nsec; +	unsigned long  st_mtime; +	unsigned long  st_mtime_nsec; +	unsigned long  st_ctime; +	unsigned long  st_ctime_nsec; +	unsigned long  __unused4; +	unsigned long  __unused5; +}; + +/* This matches struct stat64 in glibc2.1, hence the absolutely + * insane amounts of padding around dev_t's. + */ +struct stat64 { +	unsigned long long	st_dev; +	unsigned char	__pad0[4]; + +#define STAT64_HAS_BROKEN_ST_INO	1 +	unsigned long	__st_ino; + +	unsigned int	st_mode; +	unsigned int	st_nlink; + +	unsigned long	st_uid; +	unsigned long	st_gid; + +	unsigned long long	st_rdev; +	unsigned char	__pad3[4]; + +	long long	st_size; +	unsigned long	st_blksize; + +	unsigned long long	st_blocks;	/* Number 512-byte blocks allocated. */ + +	unsigned long	st_atime; +	unsigned long	st_atime_nsec; + +	unsigned long	st_mtime; +	unsigned long	st_mtime_nsec; + +	unsigned long	st_ctime; +	unsigned long	st_ctime_nsec; + +	unsigned long long	st_ino; +}; + +#define STAT_HAVE_NSEC 1 +#endif + +#endif /* __ASM_SH_STAT_H */ diff --git a/arch/sh/include/uapi/asm/swab.h b/arch/sh/include/uapi/asm/swab.h new file mode 100644 index 00000000000..1cd09767a7a --- /dev/null +++ b/arch/sh/include/uapi/asm/swab.h @@ -0,0 +1,59 @@ +#ifndef __ASM_SH_SWAB_H +#define __ASM_SH_SWAB_H + +/* + * Copyright (C) 1999  Niibe Yutaka + * Copyright (C) 2000, 2001  Paolo Alberelli + */ +#include <linux/compiler.h> +#include <linux/types.h> +#include <asm-generic/swab.h> + +static inline __attribute_const__ __u32 __arch_swab32(__u32 x) +{ +	__asm__( +#ifdef __SH5__ +		"byterev	%1, %0\n\t" +		"shari		%0, 32, %0" +#else +		"swap.b		%1, %0\n\t" +		"swap.w		%0, %0\n\t" +		"swap.b		%0, %0" +#endif +		: "=r" (x) +		: "r" (x)); + +	return x; +} +#define __arch_swab32 __arch_swab32 + +static inline __attribute_const__ __u16 __arch_swab16(__u16 x) +{ +	__asm__( +#ifdef __SH5__ +		"byterev	%1, %0\n\t" +		"shari		%0, 32, %0" +#else +		"swap.b		%1, %0" +#endif +		: "=r" (x) +		:  "r" (x)); + +	return x; +} +#define __arch_swab16 __arch_swab16 + +static inline __u64 __arch_swab64(__u64 val) +{ +	union { +		struct { __u32 a,b; } s; +		__u64 u; +	} v, w; +	v.u = val; +	w.s.b = __arch_swab32(v.s.a); +	w.s.a = __arch_swab32(v.s.b); +	return w.u; +} +#define __arch_swab64 __arch_swab64 + +#endif /* __ASM_SH_SWAB_H */ diff --git a/arch/sh/include/uapi/asm/types.h b/arch/sh/include/uapi/asm/types.h new file mode 100644 index 00000000000..b9e79bc580d --- /dev/null +++ b/arch/sh/include/uapi/asm/types.h @@ -0,0 +1 @@ +#include <asm-generic/types.h> diff --git a/arch/sh/include/uapi/asm/unistd.h b/arch/sh/include/uapi/asm/unistd.h new file mode 100644 index 00000000000..eeef88dd53c --- /dev/null +++ b/arch/sh/include/uapi/asm/unistd.h @@ -0,0 +1,7 @@ +#ifndef __KERNEL__ +# ifdef __SH5__ +#  include <asm/unistd_64.h> +# else +#  include <asm/unistd_32.h> +# endif +#endif diff --git a/arch/sh/include/uapi/asm/unistd_32.h b/arch/sh/include/uapi/asm/unistd_32.h new file mode 100644 index 00000000000..d13a1d62373 --- /dev/null +++ b/arch/sh/include/uapi/asm/unistd_32.h @@ -0,0 +1,386 @@ +#ifndef __ASM_SH_UNISTD_32_H +#define __ASM_SH_UNISTD_32_H + +/* + * Copyright (C) 1999  Niibe Yutaka + */ + +/* + * This file contains the system call numbers. + */ + +#define __NR_restart_syscall	  0 +#define __NR_exit		  1 +#define __NR_fork		  2 +#define __NR_read		  3 +#define __NR_write		  4 +#define __NR_open		  5 +#define __NR_close		  6 +#define __NR_waitpid		  7 +#define __NR_creat		  8 +#define __NR_link		  9 +#define __NR_unlink		 10 +#define __NR_execve		 11 +#define __NR_chdir		 12 +#define __NR_time		 13 +#define __NR_mknod		 14 +#define __NR_chmod		 15 +#define __NR_lchown		 16 +				 /* 17 was sys_break */ +#define __NR_oldstat		 18 +#define __NR_lseek		 19 +#define __NR_getpid		 20 +#define __NR_mount		 21 +#define __NR_umount		 22 +#define __NR_setuid		 23 +#define __NR_getuid		 24 +#define __NR_stime		 25 +#define __NR_ptrace		 26 +#define __NR_alarm		 27 +#define __NR_oldfstat		 28 +#define __NR_pause		 29 +#define __NR_utime		 30 +				 /* 31 was sys_stty */ +				 /* 32 was sys_gtty */ +#define __NR_access		 33 +#define __NR_nice		 34 +				 /* 35 was sys_ftime */ +#define __NR_sync		 36 +#define __NR_kill		 37 +#define __NR_rename		 38 +#define __NR_mkdir		 39 +#define __NR_rmdir		 40 +#define __NR_dup		 41 +#define __NR_pipe		 42 +#define __NR_times		 43 +				 /* 44 was sys_prof */ +#define __NR_brk		 45 +#define __NR_setgid		 46 +#define __NR_getgid		 47 +#define __NR_signal		 48 +#define __NR_geteuid		 49 +#define __NR_getegid		 50 +#define __NR_acct		 51 +#define __NR_umount2		 52 +				 /* 53 was sys_lock */ +#define __NR_ioctl		 54 +#define __NR_fcntl		 55 +				 /* 56 was sys_mpx */ +#define __NR_setpgid		 57 +				 /* 58 was sys_ulimit */ +				 /* 59 was sys_olduname */ +#define __NR_umask		 60 +#define __NR_chroot		 61 +#define __NR_ustat		 62 +#define __NR_dup2		 63 +#define __NR_getppid		 64 +#define __NR_getpgrp		 65 +#define __NR_setsid		 66 +#define __NR_sigaction		 67 +#define __NR_sgetmask		 68 +#define __NR_ssetmask		 69 +#define __NR_setreuid		 70 +#define __NR_setregid		 71 +#define __NR_sigsuspend		 72 +#define __NR_sigpending		 73 +#define __NR_sethostname	 74 +#define __NR_setrlimit		 75 +#define __NR_getrlimit		 76	/* Back compatible 2Gig limited rlimit */ +#define __NR_getrusage		 77 +#define __NR_gettimeofday	 78 +#define __NR_settimeofday	 79 +#define __NR_getgroups		 80 +#define __NR_setgroups		 81 +				 /* 82 was sys_oldselect */ +#define __NR_symlink		 83 +#define __NR_oldlstat		 84 +#define __NR_readlink		 85 +#define __NR_uselib		 86 +#define __NR_swapon		 87 +#define __NR_reboot		 88 +#define __NR_readdir		 89 +#define __NR_mmap		 90 +#define __NR_munmap		 91 +#define __NR_truncate		 92 +#define __NR_ftruncate		 93 +#define __NR_fchmod		 94 +#define __NR_fchown		 95 +#define __NR_getpriority	 96 +#define __NR_setpriority	 97 +				 /* 98 was sys_profil */ +#define __NR_statfs		 99 +#define __NR_fstatfs		100 +				/* 101 was sys_ioperm */ +#define __NR_socketcall		102 +#define __NR_syslog		103 +#define __NR_setitimer		104 +#define __NR_getitimer		105 +#define __NR_stat		106 +#define __NR_lstat		107 +#define __NR_fstat		108 +#define __NR_olduname		109 +				/* 110 was sys_iopl */ +#define __NR_vhangup		111 +				/* 112 was sys_idle */ +				/* 113 was sys_vm86old */ +#define __NR_wait4		114 +#define __NR_swapoff		115 +#define __NR_sysinfo		116 +#define __NR_ipc		117 +#define __NR_fsync		118 +#define __NR_sigreturn		119 +#define __NR_clone		120 +#define __NR_setdomainname	121 +#define __NR_uname		122 +#define __NR_cacheflush		123 +#define __NR_adjtimex		124 +#define __NR_mprotect		125 +#define __NR_sigprocmask	126 +				/* 127 was sys_create_module */ +#define __NR_init_module	128 +#define __NR_delete_module	129 +				/* 130 was sys_get_kernel_syms */ +#define __NR_quotactl		131 +#define __NR_getpgid		132 +#define __NR_fchdir		133 +#define __NR_bdflush		134 +#define __NR_sysfs		135 +#define __NR_personality	136 +				/* 137 was sys_afs_syscall */ +#define __NR_setfsuid		138 +#define __NR_setfsgid		139 +#define __NR__llseek		140 +#define __NR_getdents		141 +#define __NR__newselect		142 +#define __NR_flock		143 +#define __NR_msync		144 +#define __NR_readv		145 +#define __NR_writev		146 +#define __NR_getsid		147 +#define __NR_fdatasync		148 +#define __NR__sysctl		149 +#define __NR_mlock		150 +#define __NR_munlock		151 +#define __NR_mlockall		152 +#define __NR_munlockall		153 +#define __NR_sched_setparam		154 +#define __NR_sched_getparam		155 +#define __NR_sched_setscheduler		156 +#define __NR_sched_getscheduler		157 +#define __NR_sched_yield		158 +#define __NR_sched_get_priority_max	159 +#define __NR_sched_get_priority_min	160 +#define __NR_sched_rr_get_interval	161 +#define __NR_nanosleep		162 +#define __NR_mremap		163 +#define __NR_setresuid		164 +#define __NR_getresuid		165 +				/* 166 was sys_vm86 */ +				/* 167 was sys_query_module */ +#define __NR_poll		168 +#define __NR_nfsservctl		169 +#define __NR_setresgid		170 +#define __NR_getresgid		171 +#define __NR_prctl              172 +#define __NR_rt_sigreturn	173 +#define __NR_rt_sigaction	174 +#define __NR_rt_sigprocmask	175 +#define __NR_rt_sigpending	176 +#define __NR_rt_sigtimedwait	177 +#define __NR_rt_sigqueueinfo	178 +#define __NR_rt_sigsuspend	179 +#define __NR_pread64		180 +#define __NR_pwrite64		181 +#define __NR_chown		182 +#define __NR_getcwd		183 +#define __NR_capget		184 +#define __NR_capset		185 +#define __NR_sigaltstack	186 +#define __NR_sendfile		187 +				/* 188 reserved for sys_getpmsg */ +				/* 189 reserved for sys_putpmsg */ +#define __NR_vfork		190 +#define __NR_ugetrlimit		191	/* SuS compliant getrlimit */ +#define __NR_mmap2		192 +#define __NR_truncate64		193 +#define __NR_ftruncate64	194 +#define __NR_stat64		195 +#define __NR_lstat64		196 +#define __NR_fstat64		197 +#define __NR_lchown32		198 +#define __NR_getuid32		199 +#define __NR_getgid32		200 +#define __NR_geteuid32		201 +#define __NR_getegid32		202 +#define __NR_setreuid32		203 +#define __NR_setregid32		204 +#define __NR_getgroups32	205 +#define __NR_setgroups32	206 +#define __NR_fchown32		207 +#define __NR_setresuid32	208 +#define __NR_getresuid32	209 +#define __NR_setresgid32	210 +#define __NR_getresgid32	211 +#define __NR_chown32		212 +#define __NR_setuid32		213 +#define __NR_setgid32		214 +#define __NR_setfsuid32		215 +#define __NR_setfsgid32		216 +#define __NR_pivot_root		217 +#define __NR_mincore		218 +#define __NR_madvise		219 +#define __NR_getdents64		220 +#define __NR_fcntl64		221 +				/* 222 is reserved for tux */ +				/* 223 is unused */ +#define __NR_gettid		224 +#define __NR_readahead		225 +#define __NR_setxattr		226 +#define __NR_lsetxattr		227 +#define __NR_fsetxattr		228 +#define __NR_getxattr		229 +#define __NR_lgetxattr		230 +#define __NR_fgetxattr		231 +#define __NR_listxattr		232 +#define __NR_llistxattr		233 +#define __NR_flistxattr		234 +#define __NR_removexattr	235 +#define __NR_lremovexattr	236 +#define __NR_fremovexattr	237 +#define __NR_tkill		238 +#define __NR_sendfile64		239 +#define __NR_futex		240 +#define __NR_sched_setaffinity	241 +#define __NR_sched_getaffinity	242 +				/* 243 is reserved for set_thread_area */ +				/* 244 is reserved for get_thread_area */ +#define __NR_io_setup		245 +#define __NR_io_destroy		246 +#define __NR_io_getevents	247 +#define __NR_io_submit		248 +#define __NR_io_cancel		249 +#define __NR_fadvise64		250 +				/* 251 is unused */ +#define __NR_exit_group		252 +#define __NR_lookup_dcookie	253 +#define __NR_epoll_create	254 +#define __NR_epoll_ctl		255 +#define __NR_epoll_wait		256 +#define __NR_remap_file_pages	257 +#define __NR_set_tid_address	258 +#define __NR_timer_create	259 +#define __NR_timer_settime	(__NR_timer_create+1) +#define __NR_timer_gettime	(__NR_timer_create+2) +#define __NR_timer_getoverrun	(__NR_timer_create+3) +#define __NR_timer_delete	(__NR_timer_create+4) +#define __NR_clock_settime	(__NR_timer_create+5) +#define __NR_clock_gettime	(__NR_timer_create+6) +#define __NR_clock_getres	(__NR_timer_create+7) +#define __NR_clock_nanosleep	(__NR_timer_create+8) +#define __NR_statfs64		268 +#define __NR_fstatfs64		269 +#define __NR_tgkill		270 +#define __NR_utimes		271 +#define __NR_fadvise64_64	272 +				/* 273 is reserved for vserver */ +#define __NR_mbind              274 +#define __NR_get_mempolicy      275 +#define __NR_set_mempolicy      276 +#define __NR_mq_open            277 +#define __NR_mq_unlink          (__NR_mq_open+1) +#define __NR_mq_timedsend       (__NR_mq_open+2) +#define __NR_mq_timedreceive    (__NR_mq_open+3) +#define __NR_mq_notify          (__NR_mq_open+4) +#define __NR_mq_getsetattr      (__NR_mq_open+5) +#define __NR_kexec_load		283 +#define __NR_waitid		284 +#define __NR_add_key		285 +#define __NR_request_key	286 +#define __NR_keyctl		287 +#define __NR_ioprio_set		288 +#define __NR_ioprio_get		289 +#define __NR_inotify_init	290 +#define __NR_inotify_add_watch	291 +#define __NR_inotify_rm_watch	292 +				/* 293 is unused */ +#define __NR_migrate_pages	294 +#define __NR_openat		295 +#define __NR_mkdirat		296 +#define __NR_mknodat		297 +#define __NR_fchownat		298 +#define __NR_futimesat		299 +#define __NR_fstatat64		300 +#define __NR_unlinkat		301 +#define __NR_renameat		302 +#define __NR_linkat		303 +#define __NR_symlinkat		304 +#define __NR_readlinkat		305 +#define __NR_fchmodat		306 +#define __NR_faccessat		307 +#define __NR_pselect6		308 +#define __NR_ppoll		309 +#define __NR_unshare		310 +#define __NR_set_robust_list	311 +#define __NR_get_robust_list	312 +#define __NR_splice		313 +#define __NR_sync_file_range	314 +#define __NR_tee		315 +#define __NR_vmsplice		316 +#define __NR_move_pages		317 +#define __NR_getcpu		318 +#define __NR_epoll_pwait	319 +#define __NR_utimensat		320 +#define __NR_signalfd		321 +#define __NR_timerfd_create	322 +#define __NR_eventfd		323 +#define __NR_fallocate		324 +#define __NR_timerfd_settime	325 +#define __NR_timerfd_gettime	326 +#define __NR_signalfd4		327 +#define __NR_eventfd2		328 +#define __NR_epoll_create1	329 +#define __NR_dup3		330 +#define __NR_pipe2		331 +#define __NR_inotify_init1	332 +#define __NR_preadv		333 +#define __NR_pwritev		334 +#define __NR_rt_tgsigqueueinfo	335 +#define __NR_perf_event_open	336 +#define __NR_fanotify_init	337 +#define __NR_fanotify_mark	338 +#define __NR_prlimit64		339 + +/* Non-multiplexed socket family */ +#define __NR_socket		340 +#define __NR_bind		341 +#define __NR_connect		342 +#define __NR_listen		343 +#define __NR_accept		344 +#define __NR_getsockname	345 +#define __NR_getpeername	346 +#define __NR_socketpair		347 +#define __NR_send		348 +#define __NR_sendto		349 +#define __NR_recv		350 +#define __NR_recvfrom		351 +#define __NR_shutdown		352 +#define __NR_setsockopt		353 +#define __NR_getsockopt		354 +#define __NR_sendmsg		355 +#define __NR_recvmsg		356 +#define __NR_recvmmsg		357 +#define __NR_accept4		358 +#define __NR_name_to_handle_at	359 +#define __NR_open_by_handle_at	360 +#define __NR_clock_adjtime	361 +#define __NR_syncfs		362 +#define __NR_sendmmsg		363 +#define __NR_setns		364 +#define __NR_process_vm_readv	365 +#define __NR_process_vm_writev	366 +#define __NR_kcmp		367 +#define __NR_finit_module	368 + +#define NR_syscalls 369 + +#endif /* __ASM_SH_UNISTD_32_H */ diff --git a/arch/sh/include/uapi/asm/unistd_64.h b/arch/sh/include/uapi/asm/unistd_64.h new file mode 100644 index 00000000000..e6820c86e8c --- /dev/null +++ b/arch/sh/include/uapi/asm/unistd_64.h @@ -0,0 +1,406 @@ +#ifndef __ASM_SH_UNISTD_64_H +#define __ASM_SH_UNISTD_64_H + +/* + * include/asm-sh/unistd_64.h + * + * This file contains the system call numbers. + * + * Copyright (C) 2000, 2001  Paolo Alberelli + * Copyright (C) 2003 - 2007 Paul Mundt + * Copyright (C) 2004  Sean McGoogan + * + * This file is subject to the terms and conditions of the GNU General Public + * License.  See the file "COPYING" in the main directory of this archive + * for more details. + */ +#define __NR_restart_syscall	  0 +#define __NR_exit		  1 +#define __NR_fork		  2 +#define __NR_read		  3 +#define __NR_write		  4 +#define __NR_open		  5 +#define __NR_close		  6 +#define __NR_waitpid		  7 +#define __NR_creat		  8 +#define __NR_link		  9 +#define __NR_unlink		 10 +#define __NR_execve		 11 +#define __NR_chdir		 12 +#define __NR_time		 13 +#define __NR_mknod		 14 +#define __NR_chmod		 15 +#define __NR_lchown		 16 +				 /* 17 was sys_break */ +#define __NR_oldstat		 18 +#define __NR_lseek		 19 +#define __NR_getpid		 20 +#define __NR_mount		 21 +#define __NR_umount		 22 +#define __NR_setuid		 23 +#define __NR_getuid		 24 +#define __NR_stime		 25 +#define __NR_ptrace		 26 +#define __NR_alarm		 27 +#define __NR_oldfstat		 28 +#define __NR_pause		 29 +#define __NR_utime		 30 +				 /* 31 was sys_stty */ +				 /* 32 was sys_gtty */ +#define __NR_access		 33 +#define __NR_nice		 34 +				 /* 35 was sys_ftime */ +#define __NR_sync		 36 +#define __NR_kill		 37 +#define __NR_rename		 38 +#define __NR_mkdir		 39 +#define __NR_rmdir		 40 +#define __NR_dup		 41 +#define __NR_pipe		 42 +#define __NR_times		 43 +				 /* 44 was sys_prof */ +#define __NR_brk		 45 +#define __NR_setgid		 46 +#define __NR_getgid		 47 +#define __NR_signal		 48 +#define __NR_geteuid		 49 +#define __NR_getegid		 50 +#define __NR_acct		 51 +#define __NR_umount2		 52 +				 /* 53 was sys_lock */ +#define __NR_ioctl		 54 +#define __NR_fcntl		 55 +				 /* 56 was sys_mpx */ +#define __NR_setpgid		 57 +				 /* 58 was sys_ulimit */ +				 /* 59 was sys_olduname */ +#define __NR_umask		 60 +#define __NR_chroot		 61 +#define __NR_ustat		 62 +#define __NR_dup2		 63 +#define __NR_getppid		 64 +#define __NR_getpgrp		 65 +#define __NR_setsid		 66 +#define __NR_sigaction		 67 +#define __NR_sgetmask		 68 +#define __NR_ssetmask		 69 +#define __NR_setreuid		 70 +#define __NR_setregid		 71 +#define __NR_sigsuspend		 72 +#define __NR_sigpending		 73 +#define __NR_sethostname	 74 +#define __NR_setrlimit		 75 +#define __NR_getrlimit		 76	/* Back compatible 2Gig limited rlimit */ +#define __NR_getrusage		 77 +#define __NR_gettimeofday	 78 +#define __NR_settimeofday	 79 +#define __NR_getgroups		 80 +#define __NR_setgroups		 81 +				 /* 82 was sys_select */ +#define __NR_symlink		 83 +#define __NR_oldlstat		 84 +#define __NR_readlink		 85 +#define __NR_uselib		 86 +#define __NR_swapon		 87 +#define __NR_reboot		 88 +#define __NR_readdir		 89 +#define __NR_mmap		 90 +#define __NR_munmap		 91 +#define __NR_truncate		 92 +#define __NR_ftruncate		 93 +#define __NR_fchmod		 94 +#define __NR_fchown		 95 +#define __NR_getpriority	 96 +#define __NR_setpriority	 97 +				 /* 98 was sys_profil */ +#define __NR_statfs		 99 +#define __NR_fstatfs		100 +				/* 101 was sys_ioperm */ +#define __NR_socketcall		102	/* old implementation of socket systemcall */ +#define __NR_syslog		103 +#define __NR_setitimer		104 +#define __NR_getitimer		105 +#define __NR_stat		106 +#define __NR_lstat		107 +#define __NR_fstat		108 +#define __NR_olduname		109 +				/* 110 was sys_iopl */ +#define __NR_vhangup		111 +				/* 112 was sys_idle */ +				/* 113 was sys_vm86old */ +#define __NR_wait4		114 +#define __NR_swapoff		115 +#define __NR_sysinfo		116 +#define __NR_ipc		117 +#define __NR_fsync		118 +#define __NR_sigreturn		119 +#define __NR_clone		120 +#define __NR_setdomainname	121 +#define __NR_uname		122 +#define __NR_cacheflush		123 +#define __NR_adjtimex		124 +#define __NR_mprotect		125 +#define __NR_sigprocmask	126 +				/* 127 was sys_create_module */ +#define __NR_init_module	128 +#define __NR_delete_module	129 +				/* 130 was sys_get_kernel_syms */ +#define __NR_quotactl		131 +#define __NR_getpgid		132 +#define __NR_fchdir		133 +#define __NR_bdflush		134 +#define __NR_sysfs		135 +#define __NR_personality	136 +				/* 137 was sys_afs_syscall */ +#define __NR_setfsuid		138 +#define __NR_setfsgid		139 +#define __NR__llseek		140 +#define __NR_getdents		141 +#define __NR__newselect		142 +#define __NR_flock		143 +#define __NR_msync		144 +#define __NR_readv		145 +#define __NR_writev		146 +#define __NR_getsid		147 +#define __NR_fdatasync		148 +#define __NR__sysctl		149 +#define __NR_mlock		150 +#define __NR_munlock		151 +#define __NR_mlockall		152 +#define __NR_munlockall		153 +#define __NR_sched_setparam		154 +#define __NR_sched_getparam		155 +#define __NR_sched_setscheduler		156 +#define __NR_sched_getscheduler		157 +#define __NR_sched_yield		158 +#define __NR_sched_get_priority_max	159 +#define __NR_sched_get_priority_min	160 +#define __NR_sched_rr_get_interval	161 +#define __NR_nanosleep		162 +#define __NR_mremap		163 +#define __NR_setresuid		164 +#define __NR_getresuid		165 +				/* 166 was sys_vm86 */ +				/* 167 was sys_query_module */ +#define __NR_poll		168 +#define __NR_nfsservctl		169 +#define __NR_setresgid		170 +#define __NR_getresgid		171 +#define __NR_prctl              172 +#define __NR_rt_sigreturn	173 +#define __NR_rt_sigaction	174 +#define __NR_rt_sigprocmask	175 +#define __NR_rt_sigpending	176 +#define __NR_rt_sigtimedwait	177 +#define __NR_rt_sigqueueinfo	178 +#define __NR_rt_sigsuspend	179 +#define __NR_pread64		180 +#define __NR_pwrite64		181 +#define __NR_chown		182 +#define __NR_getcwd		183 +#define __NR_capget		184 +#define __NR_capset		185 +#define __NR_sigaltstack	186 +#define __NR_sendfile		187 +				/* 188 reserved for getpmsg */ +				/* 189 reserved for putpmsg */ +#define __NR_vfork		190 +#define __NR_ugetrlimit		191	/* SuS compliant getrlimit */ +#define __NR_mmap2		192 +#define __NR_truncate64		193 +#define __NR_ftruncate64	194 +#define __NR_stat64		195 +#define __NR_lstat64		196 +#define __NR_fstat64		197 +#define __NR_lchown32		198 +#define __NR_getuid32		199 +#define __NR_getgid32		200 +#define __NR_geteuid32		201 +#define __NR_getegid32		202 +#define __NR_setreuid32		203 +#define __NR_setregid32		204 +#define __NR_getgroups32	205 +#define __NR_setgroups32	206 +#define __NR_fchown32		207 +#define __NR_setresuid32	208 +#define __NR_getresuid32	209 +#define __NR_setresgid32	210 +#define __NR_getresgid32	211 +#define __NR_chown32		212 +#define __NR_setuid32		213 +#define __NR_setgid32		214 +#define __NR_setfsuid32		215 +#define __NR_setfsgid32		216 +#define __NR_pivot_root		217 +#define __NR_mincore		218 +#define __NR_madvise		219 + +/* Non-multiplexed socket family */ +#define __NR_socket		220 +#define __NR_bind		221 +#define __NR_connect		222 +#define __NR_listen		223 +#define __NR_accept		224 +#define __NR_getsockname	225 +#define __NR_getpeername	226 +#define __NR_socketpair		227 +#define __NR_send		228 +#define __NR_sendto		229 +#define __NR_recv		230 +#define __NR_recvfrom		231 +#define __NR_shutdown		232 +#define __NR_setsockopt		233 +#define __NR_getsockopt		234 +#define __NR_sendmsg		235 +#define __NR_recvmsg		236 + +/* Non-multiplexed IPC family */ +#define __NR_semop		237 +#define __NR_semget		238 +#define __NR_semctl		239 +#define __NR_msgsnd		240 +#define __NR_msgrcv		241 +#define __NR_msgget		242 +#define __NR_msgctl		243 +#define __NR_shmat		244 +#define __NR_shmdt		245 +#define __NR_shmget		246 +#define __NR_shmctl		247 + +#define __NR_getdents64		248 +#define __NR_fcntl64		249 +				/* 250 is reserved for tux */ +				/* 251 is unused */ +#define __NR_gettid		252 +#define __NR_readahead		253 +#define __NR_setxattr		254 +#define __NR_lsetxattr		255 +#define __NR_fsetxattr		256 +#define __NR_getxattr		257 +#define __NR_lgetxattr		258 +#define __NR_fgetxattr		269 +#define __NR_listxattr		260 +#define __NR_llistxattr		261 +#define __NR_flistxattr		262 +#define __NR_removexattr	263 +#define __NR_lremovexattr	264 +#define __NR_fremovexattr	265 +#define __NR_tkill		266 +#define __NR_sendfile64		267 +#define __NR_futex		268 +#define __NR_sched_setaffinity	269 +#define __NR_sched_getaffinity	270 +				/* 271 is reserved for set_thread_area */ +				/* 272 is reserved for get_thread_area */ +#define __NR_io_setup		273 +#define __NR_io_destroy		274 +#define __NR_io_getevents	275 +#define __NR_io_submit		276 +#define __NR_io_cancel		277 +#define __NR_fadvise64		278 +				/* 279 is unused */ +#define __NR_exit_group		280 + +#define __NR_lookup_dcookie	281 +#define __NR_epoll_create	282 +#define __NR_epoll_ctl		283 +#define __NR_epoll_wait		284 +#define __NR_remap_file_pages	285 +#define __NR_set_tid_address	286 +#define __NR_timer_create	287 +#define __NR_timer_settime	(__NR_timer_create+1) +#define __NR_timer_gettime	(__NR_timer_create+2) +#define __NR_timer_getoverrun	(__NR_timer_create+3) +#define __NR_timer_delete	(__NR_timer_create+4) +#define __NR_clock_settime	(__NR_timer_create+5) +#define __NR_clock_gettime	(__NR_timer_create+6) +#define __NR_clock_getres	(__NR_timer_create+7) +#define __NR_clock_nanosleep	(__NR_timer_create+8) +#define __NR_statfs64		296 +#define __NR_fstatfs64		297 +#define __NR_tgkill		298 +#define __NR_utimes		299 +#define __NR_fadvise64_64	300 +				/* 301 is reserved for vserver */ +				/* 302 is reserved for mbind */ +				/* 303 is reserved for get_mempolicy */ +				/* 304 is reserved for set_mempolicy */ +#define __NR_mq_open            305 +#define __NR_mq_unlink          (__NR_mq_open+1) +#define __NR_mq_timedsend       (__NR_mq_open+2) +#define __NR_mq_timedreceive    (__NR_mq_open+3) +#define __NR_mq_notify          (__NR_mq_open+4) +#define __NR_mq_getsetattr      (__NR_mq_open+5) +				/* 311 is reserved for kexec */ +#define __NR_waitid		312 +#define __NR_add_key		313 +#define __NR_request_key	314 +#define __NR_keyctl		315 +#define __NR_ioprio_set		316 +#define __NR_ioprio_get		317 +#define __NR_inotify_init	318 +#define __NR_inotify_add_watch	319 +#define __NR_inotify_rm_watch	320 +				/* 321 is unused */ +#define __NR_migrate_pages	322 +#define __NR_openat		323 +#define __NR_mkdirat		324 +#define __NR_mknodat		325 +#define __NR_fchownat		326 +#define __NR_futimesat		327 +#define __NR_fstatat64		328 +#define __NR_unlinkat		329 +#define __NR_renameat		330 +#define __NR_linkat		331 +#define __NR_symlinkat		332 +#define __NR_readlinkat		333 +#define __NR_fchmodat		334 +#define __NR_faccessat		335 +#define __NR_pselect6		336 +#define __NR_ppoll		337 +#define __NR_unshare		338 +#define __NR_set_robust_list	339 +#define __NR_get_robust_list	340 +#define __NR_splice		341 +#define __NR_sync_file_range	342 +#define __NR_tee		343 +#define __NR_vmsplice		344 +#define __NR_move_pages		345 +#define __NR_getcpu		346 +#define __NR_epoll_pwait	347 +#define __NR_utimensat		348 +#define __NR_signalfd		349 +#define __NR_timerfd_create	350 +#define __NR_eventfd		351 +#define __NR_fallocate		352 +#define __NR_timerfd_settime	353 +#define __NR_timerfd_gettime	354 +#define __NR_signalfd4		355 +#define __NR_eventfd2		356 +#define __NR_epoll_create1	357 +#define __NR_dup3		358 +#define __NR_pipe2		359 +#define __NR_inotify_init1	360 +#define __NR_preadv		361 +#define __NR_pwritev		362 +#define __NR_rt_tgsigqueueinfo	363 +#define __NR_perf_event_open	364 +#define __NR_recvmmsg		365 +#define __NR_accept4		366 +#define __NR_fanotify_init	367 +#define __NR_fanotify_mark	368 +#define __NR_prlimit64		369 +#define __NR_name_to_handle_at	370 +#define __NR_open_by_handle_at	371 +#define __NR_clock_adjtime	372 +#define __NR_syncfs		373 +#define __NR_sendmmsg		374 +#define __NR_setns		375 +#define __NR_process_vm_readv	376 +#define __NR_process_vm_writev	377 +#define __NR_kcmp		378 +#define __NR_finit_module	379 + +#define NR_syscalls 380 + +#endif /* __ASM_SH_UNISTD_64_H */  | 
