1 /* 2 * drivers/s390/char/sclp_tty.h 3 * interface to the SCLP-read/write driver 4 * 5 * S390 version 6 * Copyright (C) 1999 IBM Deutschland Entwicklung GmbH, IBM Corporation 7 * Author(s): Martin Peschke <mpeschke@de.ibm.com> 8 * Martin Schwidefsky <schwidefsky@de.ibm.com> 9 */ 10 11 #ifndef __SCLP_TTY_H__ 12 #define __SCLP_TTY_H__ 13 14 #include <linux/ioctl.h> 15 #include <linux/termios.h> 16 #include <linux/tty_driver.h> 17 18 /* This is the type of data structures storing sclp ioctl setting. */ 19 struct sclp_ioctls { 20 unsigned short htab; 21 unsigned char echo; 22 unsigned short columns; 23 unsigned char final_nl; 24 unsigned short max_sccb; 25 unsigned short kmem_sccb; /* can't be modified at run time */ 26 unsigned char tolower; 27 unsigned char delim; 28 }; 29 30 /* must be unique, FIXME: must be added in Documentation/ioctl_number.txt */ 31 #define SCLP_IOCTL_LETTER 'B' 32 33 /* set width of horizontal tabulator */ 34 #define TIOCSCLPSHTAB _IOW(SCLP_IOCTL_LETTER, 0, unsigned short) 35 /* enable/disable echo of input (independent from line discipline) */ 36 #define TIOCSCLPSECHO _IOW(SCLP_IOCTL_LETTER, 1, unsigned char) 37 /* set number of colums for output */ 38 #define TIOCSCLPSCOLS _IOW(SCLP_IOCTL_LETTER, 2, unsigned short) 39 /* enable/disable writing without final new line character */ 40 #define TIOCSCLPSNL _IOW(SCLP_IOCTL_LETTER, 4, signed char) 41 /* set the maximum buffers size for output, rounded up to next 4kB boundary */ 42 #define TIOCSCLPSOBUF _IOW(SCLP_IOCTL_LETTER, 5, unsigned short) 43 /* set initial (default) sclp ioctls */ 44 #define TIOCSCLPSINIT _IO(SCLP_IOCTL_LETTER, 6) 45 /* enable/disable conversion from upper to lower case of input */ 46 #define TIOCSCLPSCASE _IOW(SCLP_IOCTL_LETTER, 7, unsigned char) 47 /* set special character used for separating upper and lower case, */ 48 /* 0x00 disables this feature */ 49 #define TIOCSCLPSDELIM _IOW(SCLP_IOCTL_LETTER, 9, unsigned char) 50 51 /* get width of horizontal tabulator */ 52 #define TIOCSCLPGHTAB _IOR(SCLP_IOCTL_LETTER, 10, unsigned short) 53 /* Is echo of input enabled ? (independent from line discipline) */ 54 #define TIOCSCLPGECHO _IOR(SCLP_IOCTL_LETTER, 11, unsigned char) 55 /* get number of colums for output */ 56 #define TIOCSCLPGCOLS _IOR(SCLP_IOCTL_LETTER, 12, unsigned short) 57 /* Is writing without final new line character enabled ? */ 58 #define TIOCSCLPGNL _IOR(SCLP_IOCTL_LETTER, 14, signed char) 59 /* get the maximum buffers size for output */ 60 #define TIOCSCLPGOBUF _IOR(SCLP_IOCTL_LETTER, 15, unsigned short) 61 /* Is conversion from upper to lower case of input enabled ? */ 62 #define TIOCSCLPGCASE _IOR(SCLP_IOCTL_LETTER, 17, unsigned char) 63 /* get special character used for separating upper and lower case, */ 64 /* 0x00 disables this feature */ 65 #define TIOCSCLPGDELIM _IOR(SCLP_IOCTL_LETTER, 19, unsigned char) 66 /* get the number of buffers/pages got from kernel at startup */ 67 #define TIOCSCLPGKBUF _IOR(SCLP_IOCTL_LETTER, 20, unsigned short) 68 69 extern struct tty_driver *sclp_tty_driver; 70 71 #endif /* __SCLP_TTY_H__ */ 72