11da177e4SLinus Torvalds /* 21da177e4SLinus Torvalds * drivers/s390/char/sclp_tty.h 31da177e4SLinus Torvalds * interface to the SCLP-read/write driver 41da177e4SLinus Torvalds * 51da177e4SLinus Torvalds * S390 version 61da177e4SLinus Torvalds * Copyright (C) 1999 IBM Deutschland Entwicklung GmbH, IBM Corporation 71da177e4SLinus Torvalds * Author(s): Martin Peschke <mpeschke@de.ibm.com> 81da177e4SLinus Torvalds * Martin Schwidefsky <schwidefsky@de.ibm.com> 91da177e4SLinus Torvalds */ 101da177e4SLinus Torvalds 111da177e4SLinus Torvalds #ifndef __SCLP_TTY_H__ 121da177e4SLinus Torvalds #define __SCLP_TTY_H__ 131da177e4SLinus Torvalds 141da177e4SLinus Torvalds #include <linux/ioctl.h> 151da177e4SLinus Torvalds #include <linux/termios.h> 161da177e4SLinus Torvalds #include <linux/tty_driver.h> 171da177e4SLinus Torvalds 181da177e4SLinus Torvalds /* This is the type of data structures storing sclp ioctl setting. */ 191da177e4SLinus Torvalds struct sclp_ioctls { 201da177e4SLinus Torvalds unsigned short htab; 211da177e4SLinus Torvalds unsigned char echo; 221da177e4SLinus Torvalds unsigned short columns; 231da177e4SLinus Torvalds unsigned char final_nl; 241da177e4SLinus Torvalds unsigned short max_sccb; 251da177e4SLinus Torvalds unsigned short kmem_sccb; /* can't be modified at run time */ 261da177e4SLinus Torvalds unsigned char tolower; 271da177e4SLinus Torvalds unsigned char delim; 281da177e4SLinus Torvalds }; 291da177e4SLinus Torvalds 301da177e4SLinus Torvalds /* must be unique, FIXME: must be added in Documentation/ioctl_number.txt */ 311da177e4SLinus Torvalds #define SCLP_IOCTL_LETTER 'B' 321da177e4SLinus Torvalds 331da177e4SLinus Torvalds /* set width of horizontal tabulator */ 341da177e4SLinus Torvalds #define TIOCSCLPSHTAB _IOW(SCLP_IOCTL_LETTER, 0, unsigned short) 351da177e4SLinus Torvalds /* enable/disable echo of input (independent from line discipline) */ 361da177e4SLinus Torvalds #define TIOCSCLPSECHO _IOW(SCLP_IOCTL_LETTER, 1, unsigned char) 371da177e4SLinus Torvalds /* set number of colums for output */ 381da177e4SLinus Torvalds #define TIOCSCLPSCOLS _IOW(SCLP_IOCTL_LETTER, 2, unsigned short) 391da177e4SLinus Torvalds /* enable/disable writing without final new line character */ 401da177e4SLinus Torvalds #define TIOCSCLPSNL _IOW(SCLP_IOCTL_LETTER, 4, signed char) 411da177e4SLinus Torvalds /* set the maximum buffers size for output, rounded up to next 4kB boundary */ 421da177e4SLinus Torvalds #define TIOCSCLPSOBUF _IOW(SCLP_IOCTL_LETTER, 5, unsigned short) 431da177e4SLinus Torvalds /* set initial (default) sclp ioctls */ 441da177e4SLinus Torvalds #define TIOCSCLPSINIT _IO(SCLP_IOCTL_LETTER, 6) 451da177e4SLinus Torvalds /* enable/disable conversion from upper to lower case of input */ 461da177e4SLinus Torvalds #define TIOCSCLPSCASE _IOW(SCLP_IOCTL_LETTER, 7, unsigned char) 471da177e4SLinus Torvalds /* set special character used for separating upper and lower case, */ 481da177e4SLinus Torvalds /* 0x00 disables this feature */ 491da177e4SLinus Torvalds #define TIOCSCLPSDELIM _IOW(SCLP_IOCTL_LETTER, 9, unsigned char) 501da177e4SLinus Torvalds 511da177e4SLinus Torvalds /* get width of horizontal tabulator */ 521da177e4SLinus Torvalds #define TIOCSCLPGHTAB _IOR(SCLP_IOCTL_LETTER, 10, unsigned short) 531da177e4SLinus Torvalds /* Is echo of input enabled ? (independent from line discipline) */ 541da177e4SLinus Torvalds #define TIOCSCLPGECHO _IOR(SCLP_IOCTL_LETTER, 11, unsigned char) 551da177e4SLinus Torvalds /* get number of colums for output */ 561da177e4SLinus Torvalds #define TIOCSCLPGCOLS _IOR(SCLP_IOCTL_LETTER, 12, unsigned short) 571da177e4SLinus Torvalds /* Is writing without final new line character enabled ? */ 581da177e4SLinus Torvalds #define TIOCSCLPGNL _IOR(SCLP_IOCTL_LETTER, 14, signed char) 591da177e4SLinus Torvalds /* get the maximum buffers size for output */ 601da177e4SLinus Torvalds #define TIOCSCLPGOBUF _IOR(SCLP_IOCTL_LETTER, 15, unsigned short) 611da177e4SLinus Torvalds /* Is conversion from upper to lower case of input enabled ? */ 621da177e4SLinus Torvalds #define TIOCSCLPGCASE _IOR(SCLP_IOCTL_LETTER, 17, unsigned char) 631da177e4SLinus Torvalds /* get special character used for separating upper and lower case, */ 641da177e4SLinus Torvalds /* 0x00 disables this feature */ 651da177e4SLinus Torvalds #define TIOCSCLPGDELIM _IOR(SCLP_IOCTL_LETTER, 19, unsigned char) 661da177e4SLinus Torvalds /* get the number of buffers/pages got from kernel at startup */ 671da177e4SLinus Torvalds #define TIOCSCLPGKBUF _IOR(SCLP_IOCTL_LETTER, 20, unsigned short) 681da177e4SLinus Torvalds 691da177e4SLinus Torvalds extern struct tty_driver *sclp_tty_driver; 701da177e4SLinus Torvalds 711da177e4SLinus Torvalds #endif /* __SCLP_TTY_H__ */ 72