Commit 86245b8507ce901c0152ec98a26832434c93262b

Authored by Alan Cox
Committed by Linus Torvalds
1 parent f47807f359

m32r: enable arbitary speed tty rate setting

Add the defines and constants needed for the M32R platform to support the
arbitary speed tty ioctls.

Signed-off-by: Alan Cox <alan@redhat.com>
Cc: Hirokazu Takata <takata@linux-m32r.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

Showing 3 changed files with 12 additions and 3 deletions Side-by-side Diff

include/asm-m32r/ioctls.h
... ... @@ -47,6 +47,10 @@
47 47 #define TIOCSBRK 0x5427 /* BSD compatibility */
48 48 #define TIOCCBRK 0x5428 /* BSD compatibility */
49 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 54 #define TIOCGPTN _IOR('T',0x30, unsigned int) /* Get Pty Number (of pty-mux device) */
51 55 #define TIOCSPTLCK _IOW('T',0x31, int) /* Lock/unlock Pty */
52 56  
include/asm-m32r/termbits.h
... ... @@ -140,6 +140,7 @@
140 140 #define HUPCL 0002000
141 141 #define CLOCAL 0004000
142 142 #define CBAUDEX 0010000
  143 +#define BOTHER 0010000
143 144 #define B57600 0010001
144 145 #define B115200 0010002
145 146 #define B230400 0010003
146 147  
... ... @@ -155,10 +156,12 @@
155 156 #define B3000000 0010015
156 157 #define B3500000 0010016
157 158 #define B4000000 0010017
158   -#define CIBAUD 002003600000 /* input baud rate (not used) */
  159 +#define CIBAUD 002003600000 /** input baud rate */
159 160 #define CTVB 004000000000 /* VisioBraille Terminal flow control */
160 161 #define CMSPAR 010000000000 /* mark or space (stick) parity */
161 162 #define CRTSCTS 020000000000 /* flow control */
  163 +
  164 +#define IBSHIFT 16 /* Shift from CBAUD to CIBAUD */
162 165  
163 166 /* c_lflag bits */
164 167 #define ISIG 0000001
include/asm-m32r/termios.h
... ... @@ -81,8 +81,10 @@
81 81 copy_to_user((termio)->c_cc, (termios)->c_cc, NCC); \
82 82 })
83 83  
84   -#define user_termios_to_kernel_termios(k, u) copy_from_user(k, u, sizeof(struct termios))
85   -#define kernel_termios_to_user_termios(u, k) copy_to_user(u, k, sizeof(struct termios))
  84 +#define user_termios_to_kernel_termios(k, u) copy_from_user(k, u, sizeof(struct termios2))
  85 +#define kernel_termios_to_user_termios(u, k) copy_to_user(u, k, sizeof(struct termios2))
  86 +#define user_termios_to_kernel_termios_1(k, u) copy_from_user(k, u, sizeof(struct termios))
  87 +#define kernel_termios_to_user_termios_1(u, k) copy_to_user(u, k, sizeof(struct termios))
86 88  
87 89 #endif /* __KERNEL__ */
88 90