From: muller%sdcc7@ucsd.edu (Keith Muller)
authorKeith Bostic <bostic@ucbvax.Berkeley.EDU>
Sun, 6 Mar 1988 02:40:48 +0000 (18:40 -0800)
committerKeith Bostic <bostic@ucbvax.Berkeley.EDU>
Sun, 6 Mar 1988 02:40:48 +0000 (18:40 -0800)
Tracked down the bizzarre error we were getting on the console from the
mp driver. It was due to a missing case in a switch statement. Turns out
it was reporting that a port saw the BREAK key pressed. It also had a
overzealous logging of frame and parity errors. In actual use with
lots of ports this a bit much. Since none of the other tty drivers log
every break, framing error or parity error I made the following change:

SCCS-vsn: sys/tahoe/vba/mp.c 1.3

usr/src/sys/tahoe/vba/mp.c

index bdaadc3..c9be3ba 100644 (file)
@@ -1,4 +1,4 @@
-/*     mp.c    1.2     87/11/24        */
+/*     mp.c    1.3     88/03/05        */
 
 #include "mp.h"
 #if NMP > 0
 
 #include "mp.h"
 #if NMP > 0
@@ -984,15 +984,14 @@ mprintr(unit, list)
                        ptr = (caddr_t)&mp_softc[unit].ms_cbuf[port][mp->mp_nextrcv][0];
                        ev->ev_un.rcvblk = (u_char *)vtoph(0, ptr);
                        ev->ev_params = (caddr_t) vtoph(0, ptr);
                        ptr = (caddr_t)&mp_softc[unit].ms_cbuf[port][mp->mp_nextrcv][0];
                        ev->ev_un.rcvblk = (u_char *)vtoph(0, ptr);
                        ev->ev_params = (caddr_t) vtoph(0, ptr);
-                        switch(ev->ev_error) {
-                        case RCVDTA:    /* Normal (good) rcv data */
-                                rcverr = (char *)0;
-                               break;
-                       case PARERR:    /* parity error */
-                               rcverr = "parity error";
-                               break;
+                       switch(ev->ev_error) {
+                       case RCVDTA:    /* Normal (good) rcv data */
+                                       /* do not report the following */
+                                       /* they are "normal" errors */
                        case FRAMERR:   /* frame error */
                        case FRAMERR:   /* frame error */
-                               rcverr = "frame error";
+                       case BRKASRT:   /* Break condition */
+                       case PARERR:    /* parity error */
+                               rcverr = (char *)0;
                                break;
                        case OVRNERR:   /* Overrun error */
                                rcverr = "overrun error";
                                break;
                        case OVRNERR:   /* Overrun error */
                                rcverr = "overrun error";