termios.h 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. #ifndef _UAPI_ASM_GENERIC_TERMIOS_H
  2. #define _UAPI_ASM_GENERIC_TERMIOS_H
  3. /*
  4. * Most architectures have straight copies of the x86 code, with
  5. * varying levels of bug fixes on top. Usually it's a good idea
  6. * to use this generic version instead, but be careful to avoid
  7. * ABI changes.
  8. * New architectures should not provide their own version.
  9. */
  10. #include <asm/termbits.h>
  11. #include <asm/ioctls.h>
  12. struct winsize {
  13. unsigned short ws_row;
  14. unsigned short ws_col;
  15. unsigned short ws_xpixel;
  16. unsigned short ws_ypixel;
  17. };
  18. #define NCC 8
  19. struct termio {
  20. unsigned short c_iflag; /* input mode flags */
  21. unsigned short c_oflag; /* output mode flags */
  22. unsigned short c_cflag; /* control mode flags */
  23. unsigned short c_lflag; /* local mode flags */
  24. unsigned char c_line; /* line discipline */
  25. unsigned char c_cc[NCC]; /* control characters */
  26. };
  27. /* modem lines */
  28. #define TIOCM_LE 0x001
  29. #define TIOCM_DTR 0x002
  30. #define TIOCM_RTS 0x004
  31. #define TIOCM_ST 0x008
  32. #define TIOCM_SR 0x010
  33. #define TIOCM_CTS 0x020
  34. #define TIOCM_CAR 0x040
  35. #define TIOCM_RNG 0x080
  36. #define TIOCM_DSR 0x100
  37. #define TIOCM_CD TIOCM_CAR
  38. #define TIOCM_RI TIOCM_RNG
  39. #define TIOCM_OUT1 0x2000
  40. #define TIOCM_OUT2 0x4000
  41. #define TIOCM_LOOP 0x8000
  42. /* ioctl (fd, TIOCSERGETLSR, &result) where result may be as below */
  43. #endif /* _UAPI_ASM_GENERIC_TERMIOS_H */