serial.h 836 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. /*
  2. * include/linux/serial.h
  3. *
  4. * Copyright (C) 1992 by Theodore Ts'o.
  5. *
  6. * Redistribution of this file is permitted under the terms of the GNU
  7. * Public License (GPL)
  8. */
  9. #ifndef _LINUX_SERIAL_H
  10. #define _LINUX_SERIAL_H
  11. #include <uapi/linux/serial.h>
  12. #include <uapi/linux/serial_reg.h>
  13. /* Helper for dealing with UART_LCR_WLEN* defines */
  14. #define UART_LCR_WLEN(x) ((x) - 5)
  15. /* FIFO and shifting register empty */
  16. #define UART_LSR_BOTH_EMPTY (UART_LSR_TEMT | UART_LSR_THRE)
  17. static inline bool uart_lsr_tx_empty(u16 lsr)
  18. {
  19. return (lsr & UART_LSR_BOTH_EMPTY) == UART_LSR_BOTH_EMPTY;
  20. }
  21. /*
  22. * Counters of the input lines (CTS, DSR, RI, CD) interrupts
  23. */
  24. struct async_icount {
  25. __u32 cts, dsr, rng, dcd, tx, rx;
  26. __u32 frame, parity, overrun, brk;
  27. __u32 buf_overrun;
  28. };
  29. #include <linux/compiler.h>
  30. #endif /* _LINUX_SERIAL_H */