summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTheo de Raadt <deraadt@cvs.openbsd.org>2006-04-27 19:31:45 +0000
committerTheo de Raadt <deraadt@cvs.openbsd.org>2006-04-27 19:31:45 +0000
commit30d8e2d9eb115d129bbf776a5861f20d9ca37c53 (patch)
treee7c34955015f14585a7a9ad462dbbd82b64f89db
parenta15426ecd54ac6bd38f84c977ce6e8dd09f7d5cf (diff)
2 lines of code in most drivers, to do the timestamping; ok miod kettenis
-rw-r--r--sys/arch/i386/isa/pccom.c6
-rw-r--r--sys/arch/sparc/dev/z8530tty.c6
-rw-r--r--sys/dev/ic/com.c6
-rw-r--r--sys/dev/ic/z8530tty.c6
-rw-r--r--sys/dev/usb/ucom.c6
5 files changed, 25 insertions, 5 deletions
diff --git a/sys/arch/i386/isa/pccom.c b/sys/arch/i386/isa/pccom.c
index e3e97510158..cedee9e5fa8 100644
--- a/sys/arch/i386/isa/pccom.c
+++ b/sys/arch/i386/isa/pccom.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: pccom.c,v 1.50 2006/01/01 11:59:39 miod Exp $ */
+/* $OpenBSD: pccom.c,v 1.51 2006/04/27 19:31:43 deraadt Exp $ */
/* $NetBSD: com.c,v 1.82.4.1 1996/06/02 09:08:00 mrg Exp $ */
/*
@@ -1447,6 +1447,10 @@ comintr(arg)
}
msr = bus_space_read_1(iot, ioh, com_msr);
delta = msr ^ sc->sc_msr;
+
+ ttytstamp(tp, sc->sc_msr & MSR_CTS, msr & MSR_CTS,
+ sc->sc_msr & MSR_DCD, msr & MSR_DCD);
+
if (!ISSET(delta, MSR_DCD | MSR_CTS | MSR_RI | MSR_DSR))
continue;
sc->sc_msr = msr;
diff --git a/sys/arch/sparc/dev/z8530tty.c b/sys/arch/sparc/dev/z8530tty.c
index 2403cba6830..8c1fa31d03a 100644
--- a/sys/arch/sparc/dev/z8530tty.c
+++ b/sys/arch/sparc/dev/z8530tty.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: z8530tty.c,v 1.5 2005/11/11 15:21:59 fgsch Exp $ */
+/* $OpenBSD: z8530tty.c,v 1.6 2006/04/27 19:31:43 deraadt Exp $ */
/* $NetBSD: z8530tty.c,v 1.13 1996/10/16 20:42:14 gwr Exp $ */
/*-
@@ -1397,6 +1397,10 @@ zstty_stint(cs, force)
delta = rr0 ^ cs->cs_rr0;
else
delta = cs->cs_rr0_mask;
+
+ ttytstamp(tp, cs->cs_rr0 & ZSRR0_CTS, rr0 & ZSRR0_CTS,
+ cs->cs_rr0 & ZSRR0_DCD, rr0 & ZSRR0_DCD);
+
cs->cs_rr0 = rr0;
if (ISSET(delta, cs->cs_rr0_mask)) {
diff --git a/sys/dev/ic/com.c b/sys/dev/ic/com.c
index cd245649229..3d10dfaae21 100644
--- a/sys/dev/ic/com.c
+++ b/sys/dev/ic/com.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: com.c,v 1.110 2006/03/27 06:14:52 deraadt Exp $ */
+/* $OpenBSD: com.c,v 1.111 2006/04/27 19:31:44 deraadt Exp $ */
/* $NetBSD: com.c,v 1.82.4.1 1996/06/02 09:08:00 mrg Exp $ */
/*
@@ -1217,6 +1217,10 @@ comintr(arg)
if (msr != sc->sc_msr) {
delta = msr ^ sc->sc_msr;
+
+ ttytstamp(tp, sc->sc_msr & MSR_CTS, msr & MSR_CTS,
+ sc->sc_msr & MSR_DCD, msr & MSR_DCD);
+
sc->sc_msr = msr;
if (ISSET(delta, MSR_DCD)) {
if (!ISSET(sc->sc_swflags, COM_SW_SOFTCAR) &&
diff --git a/sys/dev/ic/z8530tty.c b/sys/dev/ic/z8530tty.c
index 2068259f5d9..4e13aed4595 100644
--- a/sys/dev/ic/z8530tty.c
+++ b/sys/dev/ic/z8530tty.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: z8530tty.c,v 1.15 2004/06/21 23:50:35 tholo Exp $ */
+/* $OpenBSD: z8530tty.c,v 1.16 2006/04/27 19:31:44 deraadt Exp $ */
/* $NetBSD: z8530tty.c,v 1.13 1996/10/16 20:42:14 gwr Exp $ */
/*
@@ -1074,6 +1074,10 @@ zstty_stint(cs)
* Fix from Bill Studenmund, October 1996.
*/
cs->cs_rr0_delta |= (cs->cs_rr0 ^ rr0);
+
+ ttytstamp(tp, cs->cs_rr0 & ZSRR0_CTS, rr0 & ZSRR0_CTS,
+ cs->cs_rr0 & ZSRR0_DCD, rr0 & ZSRR0_DCD);
+
cs->cs_rr0 = rr0;
zst->zst_st_check = 1;
diff --git a/sys/dev/usb/ucom.c b/sys/dev/usb/ucom.c
index 8078e29714c..d67600d2c7f 100644
--- a/sys/dev/usb/ucom.c
+++ b/sys/dev/usb/ucom.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: ucom.c,v 1.28 2006/03/27 08:19:39 dlg Exp $ */
+/* $OpenBSD: ucom.c,v 1.29 2006/04/27 19:31:44 deraadt Exp $ */
/* $NetBSD: ucom.c,v 1.49 2003/01/01 00:10:25 thorpej Exp $ */
/*
@@ -785,6 +785,10 @@ ucom_status_change(struct ucom_softc *sc)
old_msr = sc->sc_msr;
sc->sc_methods->ucom_get_status(sc->sc_parent, sc->sc_portno,
&sc->sc_lsr, &sc->sc_msr);
+
+ ttytstamp(tp, old_msr & UMSR_CTS, sc->sc_msr & UMSR_CTS,
+ old_msr & UMSR_DCD, sc->sc_msr & UMSR_DCD);
+
if (ISSET((sc->sc_msr ^ old_msr), UMSR_DCD))
(*LINESW(tp, l_modem))(tp,
ISSET(sc->sc_msr, UMSR_DCD));