diff options
Diffstat (limited to 'include/asm-powerpc')
-rw-r--r-- | include/asm-powerpc/errno.h | 11 | ||||
-rw-r--r-- | include/asm-powerpc/ioctl.h | 69 | ||||
-rw-r--r-- | include/asm-powerpc/ioctls.h | 107 | ||||
-rw-r--r-- | include/asm-powerpc/local.h | 1 | ||||
-rw-r--r-- | include/asm-powerpc/namei.h | 20 | ||||
-rw-r--r-- | include/asm-powerpc/percpu.h | 1 | ||||
-rw-r--r-- | include/asm-powerpc/poll.h | 23 | ||||
-rw-r--r-- | include/asm-powerpc/resource.h | 1 | ||||
-rw-r--r-- | include/asm-powerpc/shmparam.h | 6 | ||||
-rw-r--r-- | include/asm-powerpc/string.h | 32 | ||||
-rw-r--r-- | include/asm-powerpc/unaligned.h | 18 |
11 files changed, 289 insertions, 0 deletions
diff --git a/include/asm-powerpc/errno.h b/include/asm-powerpc/errno.h new file mode 100644 index 000000000000..19f20bd41ae6 --- /dev/null +++ b/include/asm-powerpc/errno.h | |||
@@ -0,0 +1,11 @@ | |||
1 | #ifndef _PPC_ERRNO_H | ||
2 | #define _PPC_ERRNO_H | ||
3 | |||
4 | #include <asm-generic/errno.h> | ||
5 | |||
6 | #undef EDEADLOCK | ||
7 | #define EDEADLOCK 58 /* File locking deadlock error */ | ||
8 | |||
9 | #define _LAST_ERRNO 516 | ||
10 | |||
11 | #endif | ||
diff --git a/include/asm-powerpc/ioctl.h b/include/asm-powerpc/ioctl.h new file mode 100644 index 000000000000..93c6acfdd0fd --- /dev/null +++ b/include/asm-powerpc/ioctl.h | |||
@@ -0,0 +1,69 @@ | |||
1 | #ifndef _PPC_IOCTL_H | ||
2 | #define _PPC_IOCTL_H | ||
3 | |||
4 | |||
5 | /* | ||
6 | * this was copied from the alpha as it's a bit cleaner there. | ||
7 | * -- Cort | ||
8 | */ | ||
9 | |||
10 | #define _IOC_NRBITS 8 | ||
11 | #define _IOC_TYPEBITS 8 | ||
12 | #define _IOC_SIZEBITS 13 | ||
13 | #define _IOC_DIRBITS 3 | ||
14 | |||
15 | #define _IOC_NRMASK ((1 << _IOC_NRBITS)-1) | ||
16 | #define _IOC_TYPEMASK ((1 << _IOC_TYPEBITS)-1) | ||
17 | #define _IOC_SIZEMASK ((1 << _IOC_SIZEBITS)-1) | ||
18 | #define _IOC_DIRMASK ((1 << _IOC_DIRBITS)-1) | ||
19 | |||
20 | #define _IOC_NRSHIFT 0 | ||
21 | #define _IOC_TYPESHIFT (_IOC_NRSHIFT+_IOC_NRBITS) | ||
22 | #define _IOC_SIZESHIFT (_IOC_TYPESHIFT+_IOC_TYPEBITS) | ||
23 | #define _IOC_DIRSHIFT (_IOC_SIZESHIFT+_IOC_SIZEBITS) | ||
24 | |||
25 | /* | ||
26 | * Direction bits _IOC_NONE could be 0, but OSF/1 gives it a bit. | ||
27 | * And this turns out useful to catch old ioctl numbers in header | ||
28 | * files for us. | ||
29 | */ | ||
30 | #define _IOC_NONE 1U | ||
31 | #define _IOC_READ 2U | ||
32 | #define _IOC_WRITE 4U | ||
33 | |||
34 | #define _IOC(dir,type,nr,size) \ | ||
35 | (((dir) << _IOC_DIRSHIFT) | \ | ||
36 | ((type) << _IOC_TYPESHIFT) | \ | ||
37 | ((nr) << _IOC_NRSHIFT) | \ | ||
38 | ((size) << _IOC_SIZESHIFT)) | ||
39 | |||
40 | /* provoke compile error for invalid uses of size argument */ | ||
41 | extern unsigned int __invalid_size_argument_for_IOC; | ||
42 | #define _IOC_TYPECHECK(t) \ | ||
43 | ((sizeof(t) == sizeof(t[1]) && \ | ||
44 | sizeof(t) < (1 << _IOC_SIZEBITS)) ? \ | ||
45 | sizeof(t) : __invalid_size_argument_for_IOC) | ||
46 | |||
47 | /* used to create numbers */ | ||
48 | #define _IO(type,nr) _IOC(_IOC_NONE,(type),(nr),0) | ||
49 | #define _IOR(type,nr,size) _IOC(_IOC_READ,(type),(nr),(_IOC_TYPECHECK(size))) | ||
50 | #define _IOW(type,nr,size) _IOC(_IOC_WRITE,(type),(nr),(_IOC_TYPECHECK(size))) | ||
51 | #define _IOWR(type,nr,size) _IOC(_IOC_READ|_IOC_WRITE,(type),(nr),(_IOC_TYPECHECK(size))) | ||
52 | #define _IOR_BAD(type,nr,size) _IOC(_IOC_READ,(type),(nr),sizeof(size)) | ||
53 | #define _IOW_BAD(type,nr,size) _IOC(_IOC_WRITE,(type),(nr),sizeof(size)) | ||
54 | #define _IOWR_BAD(type,nr,size) _IOC(_IOC_READ|_IOC_WRITE,(type),(nr),sizeof(size)) | ||
55 | |||
56 | /* used to decode them.. */ | ||
57 | #define _IOC_DIR(nr) (((nr) >> _IOC_DIRSHIFT) & _IOC_DIRMASK) | ||
58 | #define _IOC_TYPE(nr) (((nr) >> _IOC_TYPESHIFT) & _IOC_TYPEMASK) | ||
59 | #define _IOC_NR(nr) (((nr) >> _IOC_NRSHIFT) & _IOC_NRMASK) | ||
60 | #define _IOC_SIZE(nr) (((nr) >> _IOC_SIZESHIFT) & _IOC_SIZEMASK) | ||
61 | |||
62 | /* various drivers, such as the pcmcia stuff, need these... */ | ||
63 | #define IOC_IN (_IOC_WRITE << _IOC_DIRSHIFT) | ||
64 | #define IOC_OUT (_IOC_READ << _IOC_DIRSHIFT) | ||
65 | #define IOC_INOUT ((_IOC_WRITE|_IOC_READ) << _IOC_DIRSHIFT) | ||
66 | #define IOCSIZE_MASK (_IOC_SIZEMASK << _IOC_SIZESHIFT) | ||
67 | #define IOCSIZE_SHIFT (_IOC_SIZESHIFT) | ||
68 | |||
69 | #endif | ||
diff --git a/include/asm-powerpc/ioctls.h b/include/asm-powerpc/ioctls.h new file mode 100644 index 000000000000..f5b7f2b055e7 --- /dev/null +++ b/include/asm-powerpc/ioctls.h | |||
@@ -0,0 +1,107 @@ | |||
1 | #ifndef _ASM_PPC_IOCTLS_H | ||
2 | #define _ASM_PPC_IOCTLS_H | ||
3 | |||
4 | #include <asm/ioctl.h> | ||
5 | |||
6 | #define FIOCLEX _IO('f', 1) | ||
7 | #define FIONCLEX _IO('f', 2) | ||
8 | #define FIOASYNC _IOW('f', 125, int) | ||
9 | #define FIONBIO _IOW('f', 126, int) | ||
10 | #define FIONREAD _IOR('f', 127, int) | ||
11 | #define TIOCINQ FIONREAD | ||
12 | #define FIOQSIZE _IOR('f', 128, loff_t) | ||
13 | |||
14 | #define TIOCGETP _IOR('t', 8, struct sgttyb) | ||
15 | #define TIOCSETP _IOW('t', 9, struct sgttyb) | ||
16 | #define TIOCSETN _IOW('t', 10, struct sgttyb) /* TIOCSETP wo flush */ | ||
17 | |||
18 | #define TIOCSETC _IOW('t', 17, struct tchars) | ||
19 | #define TIOCGETC _IOR('t', 18, struct tchars) | ||
20 | #define TCGETS _IOR('t', 19, struct termios) | ||
21 | #define TCSETS _IOW('t', 20, struct termios) | ||
22 | #define TCSETSW _IOW('t', 21, struct termios) | ||
23 | #define TCSETSF _IOW('t', 22, struct termios) | ||
24 | |||
25 | #define TCGETA _IOR('t', 23, struct termio) | ||
26 | #define TCSETA _IOW('t', 24, struct termio) | ||
27 | #define TCSETAW _IOW('t', 25, struct termio) | ||
28 | #define TCSETAF _IOW('t', 28, struct termio) | ||
29 | |||
30 | #define TCSBRK _IO('t', 29) | ||
31 | #define TCXONC _IO('t', 30) | ||
32 | #define TCFLSH _IO('t', 31) | ||
33 | |||
34 | #define TIOCSWINSZ _IOW('t', 103, struct winsize) | ||
35 | #define TIOCGWINSZ _IOR('t', 104, struct winsize) | ||
36 | #define TIOCSTART _IO('t', 110) /* start output, like ^Q */ | ||
37 | #define TIOCSTOP _IO('t', 111) /* stop output, like ^S */ | ||
38 | #define TIOCOUTQ _IOR('t', 115, int) /* output queue size */ | ||
39 | |||
40 | #define TIOCGLTC _IOR('t', 116, struct ltchars) | ||
41 | #define TIOCSLTC _IOW('t', 117, struct ltchars) | ||
42 | #define TIOCSPGRP _IOW('t', 118, int) | ||
43 | #define TIOCGPGRP _IOR('t', 119, int) | ||
44 | |||
45 | #define TIOCEXCL 0x540C | ||
46 | #define TIOCNXCL 0x540D | ||
47 | #define TIOCSCTTY 0x540E | ||
48 | |||
49 | #define TIOCSTI 0x5412 | ||
50 | #define TIOCMGET 0x5415 | ||
51 | #define TIOCMBIS 0x5416 | ||
52 | #define TIOCMBIC 0x5417 | ||
53 | #define TIOCMSET 0x5418 | ||
54 | # define TIOCM_LE 0x001 | ||
55 | # define TIOCM_DTR 0x002 | ||
56 | # define TIOCM_RTS 0x004 | ||
57 | # define TIOCM_ST 0x008 | ||
58 | # define TIOCM_SR 0x010 | ||
59 | # define TIOCM_CTS 0x020 | ||
60 | # define TIOCM_CAR 0x040 | ||
61 | # define TIOCM_RNG 0x080 | ||
62 | # define TIOCM_DSR 0x100 | ||
63 | # define TIOCM_CD TIOCM_CAR | ||
64 | # define TIOCM_RI TIOCM_RNG | ||
65 | |||
66 | #define TIOCGSOFTCAR 0x5419 | ||
67 | #define TIOCSSOFTCAR 0x541A | ||
68 | #define TIOCLINUX 0x541C | ||
69 | #define TIOCCONS 0x541D | ||
70 | #define TIOCGSERIAL 0x541E | ||
71 | #define TIOCSSERIAL 0x541F | ||
72 | #define TIOCPKT 0x5420 | ||
73 | # define TIOCPKT_DATA 0 | ||
74 | # define TIOCPKT_FLUSHREAD 1 | ||
75 | # define TIOCPKT_FLUSHWRITE 2 | ||
76 | # define TIOCPKT_STOP 4 | ||
77 | # define TIOCPKT_START 8 | ||
78 | # define TIOCPKT_NOSTOP 16 | ||
79 | # define TIOCPKT_DOSTOP 32 | ||
80 | |||
81 | |||
82 | #define TIOCNOTTY 0x5422 | ||
83 | #define TIOCSETD 0x5423 | ||
84 | #define TIOCGETD 0x5424 | ||
85 | #define TCSBRKP 0x5425 /* Needed for POSIX tcsendbreak() */ | ||
86 | #define TIOCSBRK 0x5427 /* BSD compatibility */ | ||
87 | #define TIOCCBRK 0x5428 /* BSD compatibility */ | ||
88 | #define TIOCGSID 0x5429 /* Return the session ID of FD */ | ||
89 | #define TIOCGPTN _IOR('T',0x30, unsigned int) /* Get Pty Number (of pty-mux device) */ | ||
90 | #define TIOCSPTLCK _IOW('T',0x31, int) /* Lock/unlock Pty */ | ||
91 | |||
92 | #define TIOCSERCONFIG 0x5453 | ||
93 | #define TIOCSERGWILD 0x5454 | ||
94 | #define TIOCSERSWILD 0x5455 | ||
95 | #define TIOCGLCKTRMIOS 0x5456 | ||
96 | #define TIOCSLCKTRMIOS 0x5457 | ||
97 | #define TIOCSERGSTRUCT 0x5458 /* For debugging only */ | ||
98 | #define TIOCSERGETLSR 0x5459 /* Get line status register */ | ||
99 | /* ioctl (fd, TIOCSERGETLSR, &result) where result may be as below */ | ||
100 | # define TIOCSER_TEMT 0x01 /* Transmitter physically empty */ | ||
101 | #define TIOCSERGETMULTI 0x545A /* Get multiport config */ | ||
102 | #define TIOCSERSETMULTI 0x545B /* Set multiport config */ | ||
103 | |||
104 | #define TIOCMIWAIT 0x545C /* wait for a change on serial input line(s) */ | ||
105 | #define TIOCGICOUNT 0x545D /* read serial port inline interrupt counts */ | ||
106 | |||
107 | #endif /* _ASM_PPC_IOCTLS_H */ | ||
diff --git a/include/asm-powerpc/local.h b/include/asm-powerpc/local.h new file mode 100644 index 000000000000..c11c530f74d0 --- /dev/null +++ b/include/asm-powerpc/local.h | |||
@@ -0,0 +1 @@ | |||
#include <asm-generic/local.h> | |||
diff --git a/include/asm-powerpc/namei.h b/include/asm-powerpc/namei.h new file mode 100644 index 000000000000..29c9ec832133 --- /dev/null +++ b/include/asm-powerpc/namei.h | |||
@@ -0,0 +1,20 @@ | |||
1 | /* | ||
2 | * include/asm-ppc/namei.h | ||
3 | * Adapted from include/asm-alpha/namei.h | ||
4 | * | ||
5 | * Included from fs/namei.c | ||
6 | */ | ||
7 | |||
8 | #ifdef __KERNEL__ | ||
9 | #ifndef __PPC_NAMEI_H | ||
10 | #define __PPC_NAMEI_H | ||
11 | |||
12 | /* This dummy routine maybe changed to something useful | ||
13 | * for /usr/gnemul/ emulation stuff. | ||
14 | * Look at asm-sparc/namei.h for details. | ||
15 | */ | ||
16 | |||
17 | #define __emul_prefix() NULL | ||
18 | |||
19 | #endif /* __PPC_NAMEI_H */ | ||
20 | #endif /* __KERNEL__ */ | ||
diff --git a/include/asm-powerpc/percpu.h b/include/asm-powerpc/percpu.h new file mode 100644 index 000000000000..06a959d67234 --- /dev/null +++ b/include/asm-powerpc/percpu.h | |||
@@ -0,0 +1 @@ | |||
#include <asm-generic/percpu.h> | |||
diff --git a/include/asm-powerpc/poll.h b/include/asm-powerpc/poll.h new file mode 100644 index 000000000000..be5024913c62 --- /dev/null +++ b/include/asm-powerpc/poll.h | |||
@@ -0,0 +1,23 @@ | |||
1 | #ifndef __PPC_POLL_H | ||
2 | #define __PPC_POLL_H | ||
3 | |||
4 | #define POLLIN 0x0001 | ||
5 | #define POLLPRI 0x0002 | ||
6 | #define POLLOUT 0x0004 | ||
7 | #define POLLERR 0x0008 | ||
8 | #define POLLHUP 0x0010 | ||
9 | #define POLLNVAL 0x0020 | ||
10 | #define POLLRDNORM 0x0040 | ||
11 | #define POLLRDBAND 0x0080 | ||
12 | #define POLLWRNORM 0x0100 | ||
13 | #define POLLWRBAND 0x0200 | ||
14 | #define POLLMSG 0x0400 | ||
15 | #define POLLREMOVE 0x1000 | ||
16 | |||
17 | struct pollfd { | ||
18 | int fd; | ||
19 | short events; | ||
20 | short revents; | ||
21 | }; | ||
22 | |||
23 | #endif | ||
diff --git a/include/asm-powerpc/resource.h b/include/asm-powerpc/resource.h new file mode 100644 index 000000000000..04bc4db8921b --- /dev/null +++ b/include/asm-powerpc/resource.h | |||
@@ -0,0 +1 @@ | |||
#include <asm-generic/resource.h> | |||
diff --git a/include/asm-powerpc/shmparam.h b/include/asm-powerpc/shmparam.h new file mode 100644 index 000000000000..d6250602ae64 --- /dev/null +++ b/include/asm-powerpc/shmparam.h | |||
@@ -0,0 +1,6 @@ | |||
1 | #ifndef _PPC_SHMPARAM_H | ||
2 | #define _PPC_SHMPARAM_H | ||
3 | |||
4 | #define SHMLBA PAGE_SIZE /* attach addr a multiple of this */ | ||
5 | |||
6 | #endif /* _PPC_SHMPARAM_H */ | ||
diff --git a/include/asm-powerpc/string.h b/include/asm-powerpc/string.h new file mode 100644 index 000000000000..225575997392 --- /dev/null +++ b/include/asm-powerpc/string.h | |||
@@ -0,0 +1,32 @@ | |||
1 | #ifndef _PPC_STRING_H_ | ||
2 | #define _PPC_STRING_H_ | ||
3 | |||
4 | #ifdef __KERNEL__ | ||
5 | |||
6 | #define __HAVE_ARCH_STRCPY | ||
7 | #define __HAVE_ARCH_STRNCPY | ||
8 | #define __HAVE_ARCH_STRLEN | ||
9 | #define __HAVE_ARCH_STRCMP | ||
10 | #define __HAVE_ARCH_STRCAT | ||
11 | #define __HAVE_ARCH_MEMSET | ||
12 | #define __HAVE_ARCH_MEMCPY | ||
13 | #define __HAVE_ARCH_MEMMOVE | ||
14 | #define __HAVE_ARCH_MEMCMP | ||
15 | #define __HAVE_ARCH_MEMCHR | ||
16 | |||
17 | extern int strcasecmp(const char *, const char *); | ||
18 | extern int strncasecmp(const char *, const char *, int); | ||
19 | extern char * strcpy(char *,const char *); | ||
20 | extern char * strncpy(char *,const char *, __kernel_size_t); | ||
21 | extern __kernel_size_t strlen(const char *); | ||
22 | extern int strcmp(const char *,const char *); | ||
23 | extern char * strcat(char *, const char *); | ||
24 | extern void * memset(void *,int,__kernel_size_t); | ||
25 | extern void * memcpy(void *,const void *,__kernel_size_t); | ||
26 | extern void * memmove(void *,const void *,__kernel_size_t); | ||
27 | extern int memcmp(const void *,const void *,__kernel_size_t); | ||
28 | extern void * memchr(const void *,int,__kernel_size_t); | ||
29 | |||
30 | #endif /* __KERNEL__ */ | ||
31 | |||
32 | #endif | ||
diff --git a/include/asm-powerpc/unaligned.h b/include/asm-powerpc/unaligned.h new file mode 100644 index 000000000000..45520d9b85d1 --- /dev/null +++ b/include/asm-powerpc/unaligned.h | |||
@@ -0,0 +1,18 @@ | |||
1 | #ifdef __KERNEL__ | ||
2 | #ifndef __PPC_UNALIGNED_H | ||
3 | #define __PPC_UNALIGNED_H | ||
4 | |||
5 | /* | ||
6 | * The PowerPC can do unaligned accesses itself in big endian mode. | ||
7 | * | ||
8 | * The strange macros are there to make sure these can't | ||
9 | * be misused in a way that makes them not work on other | ||
10 | * architectures where unaligned accesses aren't as simple. | ||
11 | */ | ||
12 | |||
13 | #define get_unaligned(ptr) (*(ptr)) | ||
14 | |||
15 | #define put_unaligned(val, ptr) ((void)( *(ptr) = (val) )) | ||
16 | |||
17 | #endif | ||
18 | #endif /* __KERNEL__ */ | ||