kfreebsd-8 (8.2-15) 914_psm.diff

Summary

 sys/dev/atkbdc/psm.c |   23 -----------------------
 1 file changed, 23 deletions(-)

    
download this patch

Patch contents

This patch fixes PS/2 mouse support with xserver-xorg-input-mouse 1.4.0.
It is a revert of upstream commit r18970:

| Teach psm about O_ASYNC
| 
| This makes Xorg happy if you aren't using moused.

---
 sys/dev/atkbdc/psm.c |   23 -----------------------
 1 file changed, 23 deletions(-)

--- a/sys/dev/atkbdc/psm.c
+++ b/sys/dev/atkbdc/psm.c
@@ -70,10 +70,7 @@
 #include <sys/module.h>
 #include <sys/bus.h>
 #include <sys/conf.h>
-#include <sys/filio.h>
 #include <sys/poll.h>
-#include <sys/sigio.h>
-#include <sys/signalvar.h>
 #include <sys/syslog.h>
 #include <machine/bus.h>
 #include <sys/rman.h>
@@ -302,7 +299,6 @@
 	struct cdev	*bdev;
 	int		lasterr;
 	int		cmdcount;
-	struct sigio	*async;		/* Processes waiting for SIGIO */
 };
 static devclass_t psm_devclass;
 #define	PSM_SOFTC(unit)	\
@@ -1494,7 +1490,6 @@
 	sc->mode.level = sc->dflt_mode.level;
 	sc->mode.protocol = sc->dflt_mode.protocol;
 	sc->watchdog = FALSE;
-	sc->async = NULL;
 
 	/* flush the event queue */
 	sc->queue.count = 0;
@@ -1634,12 +1629,6 @@
 	/* remove anything left in the output buffer */
 	empty_aux_buffer(sc->kbdc, 10);
 
-	/* clean up and sigio requests */
-	if (sc->async != NULL) {
-		funsetown(&sc->async);
-		sc->async = NULL;
-	}
-
 	/* close is almost always successful */
 	sc->state &= ~PSM_OPEN;
 	kbdc_lock(sc->kbdc, FALSE);
@@ -2201,15 +2190,6 @@
 		break;
 #endif /* MOUSE_GETHWID */
 
-	case FIONBIO:
-	case FIOASYNC:
-		break;
-	case FIOSETOWN:
-		error = fsetown(*(int *)addr, &sc->async);
-		break;
-	case FIOGETOWN:
-		*(int *) addr = fgetown(&sc->async);
-		break;
 	default:
 		return (ENOTTY);
 	}
@@ -3474,9 +3454,6 @@
 		wakeup(sc);
 	}
 	selwakeuppri(&sc->rsel, PZERO);
-	if (sc->async != NULL) {
-		pgsigio(&sc->async, SIGIO, 0);
-	}
 	sc->state &= ~PSM_SOFTARMED;
 	splx(s);
 }