7 #ifndef _ETRAX_SERIAL_H
8 #define _ETRAX_SERIAL_H
11 #include <asm/termios.h>
27 #define SERIAL_RECV_DESCRIPTORS 8
29 struct etrax_recv_buffer {
30 struct etrax_recv_buffer *
next;
45 volatile u8 *oclrintradr;
46 volatile u32 *ofirstadr;
48 const volatile u8 *ostatusadr;
51 volatile u8 *iclrintradr;
52 volatile u32 *ifirstadr;
54 volatile u32 *idescradr;
68 unsigned int dma_in_nbr;
69 unsigned int dma_out_nbr;
70 unsigned int dma_in_irq_nbr;
71 unsigned int dma_out_irq_nbr;
72 unsigned long dma_in_irq_flags;
73 unsigned long dma_out_irq_flags;
74 char *dma_in_irq_description;
75 char *dma_out_irq_description;
78 char *io_if_description;
89 volatile int tr_running;
93 int ignore_status_mask;
96 unsigned short closing_wait;
97 unsigned short closing_wait2;
99 unsigned long last_active;
105 struct etrax_recv_buffer *first_recv_buffer;
106 struct etrax_recv_buffer *last_recv_buffer;
107 unsigned int recv_cnt;
108 unsigned int max_recv_cnt;
117 unsigned long char_time_usec;
118 unsigned long flush_time_usec;
119 unsigned long last_tx_active_usec;
120 unsigned long last_tx_active;
121 unsigned long last_rx_active_usec;
122 unsigned long last_rx_active;
124 int break_detected_cnt;
127 #ifdef CONFIG_ETRAX_RS485
143 #define RS_EVENT_WRITE_WAKEUP 0