PSM patch to reset device twice

From: Mike Heffner <mheffner_at_vt.edu>
Date: Wed, 02 Jul 2003 15:27:22 -0400 (EDT)
The attached patch will try to reset the mouse twice to try and wakeup
some KVMs/mice. Specifically, this helps detect some Intellimouse mice
through IOGear KVMs.

Reseting the mouse multiple times shouldn't cause problems, and the patch
makes the second reset non-fatal, however, please try the patch and report
if it causes any problems with detecting mice. I plan to commit the
patch this weekend unless there are problems with it.


Thanks,

Mike

-- 
  Mike Heffner       <mheffner_at_[acm.]vt.edu>
                         <mikeh_at_FreeBSD.org>


Index: psm.c
===================================================================
RCS file: /cvs/ncvs/src/sys/isa/psm.c,v
retrieving revision 1.59
diff -u -r1.59 psm.c
--- psm.c	1 Jul 2003 14:41:16 -0000	1.59
+++ psm.c	2 Jul 2003 19:19:20 -0000
_at__at_ -1040,6 +1040,10 _at__at_
 	/*
 	 * NOTE: some controllers appears to hang the `keyboard' when the aux
 	 * port doesn't exist and `PSMC_RESET_DEV' is issued.
+	 *
+	 * Attempt to reset the controller twice -- this helps
+	 * pierce through some KVM switches. The second reset
+	 * is non-fatal.
 	 */
 	if (!reset_aux_dev(sc->kbdc)) {
             recover_from_error(sc->kbdc);
_at__at_ -1047,6 +1051,11 _at__at_
             if (verbose)
         	printf("psm%d: failed to reset the aux device.\n", unit);
             endprobe(ENXIO);
+	} else if (!reset_aux_dev(sc->kbdc)) {
+	    recover_from_error(sc->kbdc);
+	    if (verbose >= 2)
+        	printf("psm%d: failed to reset the aux device (2).\n",
+        	    unit);
 	}
     }
 

End of MIME message
Received on Wed Jul 02 2003 - 10:27:07 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:37:13 UTC