diff options
author | Alan Cox <alan@lxorguk.ukuu.org.uk> | 2007-07-16 02:38:42 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-07-16 12:05:38 -0400 |
commit | 787ea0ef70d65f71a667ed686f2f28d63ef9a217 (patch) | |
tree | 087eb3d105b399ec8154461a6c852b2e10aebb42 /include | |
parent | 5c6af69abe9436c33b82a13623b38a4cc51e6464 (diff) |
ARM26: enable arbitary speed tty ioctls and split input/output speed
Add the ioctls and values needed for this to the ARM26/ARM32 ports. The
actual code has been in the base kernel for a while and automatically turns
on when a port sets the required defines.
Signed-off-by: Alan Cox <alan@redhat.com>
Cc: Russell King <rmk+kernel@arm.linux.org.uk>
Cc: Ian Molton <spyro@f2s.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'include')
-rw-r--r-- | include/asm-arm26/ioctls.h | 4 | ||||
-rw-r--r-- | include/asm-arm26/termbits.h | 5 | ||||
-rw-r--r-- | include/asm-arm26/termios.h | 6 |
3 files changed, 12 insertions, 3 deletions
diff --git a/include/asm-arm26/ioctls.h b/include/asm-arm26/ioctls.h index ba9c7d81d24e..8a3296200be1 100644 --- a/include/asm-arm26/ioctls.h +++ b/include/asm-arm26/ioctls.h | |||
@@ -47,6 +47,10 @@ | |||
47 | #define TIOCSBRK 0x5427 /* BSD compatibility */ | 47 | #define TIOCSBRK 0x5427 /* BSD compatibility */ |
48 | #define TIOCCBRK 0x5428 /* BSD compatibility */ | 48 | #define TIOCCBRK 0x5428 /* BSD compatibility */ |
49 | #define TIOCGSID 0x5429 /* Return the session ID of FD */ | 49 | #define TIOCGSID 0x5429 /* Return the session ID of FD */ |
50 | #define TCGETS2 _IOR('T',0x2A, struct termios2) | ||
51 | #define TCSETS2 _IOW('T',0x2B, struct termios2) | ||
52 | #define TCSETSW2 _IOW('T',0x2C, struct termios2) | ||
53 | #define TCSETSF2 _IOW('T',0x2D, struct termios2) | ||
50 | #define TIOCGPTN _IOR('T',0x30, unsigned int) /* Get Pty Number (of pty-mux device) */ | 54 | #define TIOCGPTN _IOR('T',0x30, unsigned int) /* Get Pty Number (of pty-mux device) */ |
51 | #define TIOCSPTLCK _IOW('T',0x31, int) /* Lock/unlock Pty */ | 55 | #define TIOCSPTLCK _IOW('T',0x31, int) /* Lock/unlock Pty */ |
52 | 56 | ||
diff --git a/include/asm-arm26/termbits.h b/include/asm-arm26/termbits.h index f66b51804736..48d2f5c7bcb8 100644 --- a/include/asm-arm26/termbits.h +++ b/include/asm-arm26/termbits.h | |||
@@ -138,6 +138,7 @@ struct ktermios { | |||
138 | #define HUPCL 0002000 | 138 | #define HUPCL 0002000 |
139 | #define CLOCAL 0004000 | 139 | #define CLOCAL 0004000 |
140 | #define CBAUDEX 0010000 | 140 | #define CBAUDEX 0010000 |
141 | #define BOTHER 0010000 | ||
141 | #define B57600 0010001 | 142 | #define B57600 0010001 |
142 | #define B115200 0010002 | 143 | #define B115200 0010002 |
143 | #define B230400 0010003 | 144 | #define B230400 0010003 |
@@ -153,10 +154,12 @@ struct ktermios { | |||
153 | #define B3000000 0010015 | 154 | #define B3000000 0010015 |
154 | #define B3500000 0010016 | 155 | #define B3500000 0010016 |
155 | #define B4000000 0010017 | 156 | #define B4000000 0010017 |
156 | #define CIBAUD 002003600000 /* input baud rate (not used) */ | 157 | #define CIBAUD 002003600000 /* input baud rate */ |
157 | #define CMSPAR 010000000000 /* mark or space (stick) parity */ | 158 | #define CMSPAR 010000000000 /* mark or space (stick) parity */ |
158 | #define CRTSCTS 020000000000 /* flow control */ | 159 | #define CRTSCTS 020000000000 /* flow control */ |
159 | 160 | ||
161 | #define IBSHIFT 16 /* Shift from CBAUD to CIBAUD */ | ||
162 | |||
160 | /* c_lflag bits */ | 163 | /* c_lflag bits */ |
161 | #define ISIG 0000001 | 164 | #define ISIG 0000001 |
162 | #define ICANON 0000002 | 165 | #define ICANON 0000002 |
diff --git a/include/asm-arm26/termios.h b/include/asm-arm26/termios.h index 329c324c4040..293e3f1bc3f2 100644 --- a/include/asm-arm26/termios.h +++ b/include/asm-arm26/termios.h | |||
@@ -82,8 +82,10 @@ struct termio { | |||
82 | copy_to_user((termio)->c_cc, (termios)->c_cc, NCC); \ | 82 | copy_to_user((termio)->c_cc, (termios)->c_cc, NCC); \ |
83 | }) | 83 | }) |
84 | 84 | ||
85 | #define user_termios_to_kernel_termios(k, u) copy_from_user(k, u, sizeof(struct termios)) | 85 | #define user_termios_to_kernel_termios(k, u) copy_from_user(k, u, sizeof(struct termios2)) |
86 | #define kernel_termios_to_user_termios(u, k) copy_to_user(u, k, sizeof(struct termios)) | 86 | #define kernel_termios_to_user_termios(u, k) copy_to_user(u, k, sizeof(struct termios2)) |
87 | #define user_termios_to_kernel_termios_1(k, u) copy_from_user(k, u, sizeof(struct termios)) | ||
88 | #define kernel_termios_to_user_termios_1(u, k) copy_to_user(u, k, sizeof(struct termios)) | ||
87 | 89 | ||
88 | #endif /* __KERNEL__ */ | 90 | #endif /* __KERNEL__ */ |
89 | 91 | ||