patch-1.3.48 linux/include/linux/serial.h

Next file: linux/init/main.c
Previous file: linux/include/linux/mount.h
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v1.3.47/linux/include/linux/serial.h linux/include/linux/serial.h
@@ -97,6 +97,16 @@
 	int	reserved[32];
 };
 
+/*
+ * Serial input interrupt line counters -- external structure
+ * Four lines can interrupt: CTS, DSR, RI, DCD
+ */
+struct serial_icounter_struct {
+	int cts, dsr, rng, dcd;
+	int reserved[16];
+};
+
+
 #ifdef __KERNEL__
 /*
  * This is our internal structure for each serial port's state.
@@ -110,6 +120,13 @@
 #include <linux/termios.h>
 #include <linux/tqueue.h>
 
+/*
+ * Counters of the input lines (CTS, DSR, RI, CD) interrupts
+ */
+struct async_icount {
+	__u32	cts, dsr, rng, dcd;	
+};
+
 struct async_struct {
 	int			magic;
 	int			baud_base;
@@ -148,6 +165,8 @@
 	struct termios		callout_termios;
 	struct wait_queue	*open_wait;
 	struct wait_queue	*close_wait;
+	struct wait_queue	*delta_msr_wait;
+	struct async_icount	icount;	/* kernel counters for the 4 input interrupts */
 	struct async_struct	*next_port; /* For the linked list */
 	struct async_struct	*prev_port;
 };

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov with Sam's (original) version
of this