sclp_tty.h 2.9 KB

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