Date: Tue, 7 Jan 1997 20:20:02 -0800 (PST) From: Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp> To: freebsd-bugs Subject: Re: kern/2409: psm0: unable to set the command byte. psm0 not found at 0x60 Message-ID: <199701080420.UAA11625@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR kern/2409; it has been noted by GNATS.
From: Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>
To: FreeBSD-gnats-submit@freebsd.org
Cc: marks@digex.net, yokota@zodiac.mech.utsunomiya-u.ac.jp
Subject: Re: kern/2409: psm0: unable to set the command byte. psm0 not found
at 0x60
Date: Wed, 08 Jan 1997 10:23:25 +0900
>>Number: 2409
>>Category: kern
>>Synopsis: psm0: unable to set the command byte. psm0 not found at 0x60
>>Confidential: no
>>Severity: serious
>>Priority: high
>>Responsible: freebsd-bugs
>>State: open
>>Class: sw-bug
>>Submitter-Id: current-users
>>Arrival-Date: Tue Jan 7 15:40:03 PST 1997
>>Last-Modified:
>>Originator: Mark Schleifer
>>Organization:
>DIGEX
>>Release: FreeBSD 2.2-BETA_A i386
>>Environment:
>
>DEC HiNote Ultra II Laptop
>Pentium 133MHz
>32 MB Ram
>
>>Description:
>
>On Boot:
>
>psm0: unable to set the command byte.
>psm0 not found at 0x60
The message means that the `psm' driver has difficulty with the
keyboard controller, and gives up probing the PS/2 mouse device. As
far as the driver is concerned, no PS/2 mouse exists in the system.
>Worked under SNAPs and ALPHA. Seems to be root cause of moused and
>X crashing system.
There recently was a patch to the `psm' driver. It cures system
crash occurring when the `psm' driver thinks there is no PS/2 mouse
attached, and someone, such as moused or X, tries to open `psm'. (See
the end of this mail.)
But, this patch doesn't solve the problem of your built-in(?) PS/2
pointing device not detected...
BTW, did `moused' work properly to access the PS/2 mouse under SNAPs
and ALPHA in your system? How did X access the mouse, directly or via
`moused'?
>>How-To-Repeat:
>
>Kernel made with following config file. This file worked with SNAPs and
>ALPHA after applying PAO patches. Also tried with PSM_NO_RESET with BETA
>but that caused the keyboard to lockup at first input request.
PSM_NO_RESET is no longer available in 2.2-BETA, thus, has nothing to do
with the keyboard lockup; the lockup which shouldn't be happening *sigh*
Did you see any message from the `sc' (syscons) driver on boot?
I would also ask you to add
options "KBDIO_DEBUG=2"
to your config file. With this option `sc' and `psm' drivers will log
quite a few messages via `syslogd' on boot and later. The messages are
marked with "kbdio: blugh blugh".
Kazu
-- patch to psm.c ---
RCS file: /home/ncvs/src/sys/i386/isa/psm.c,v
retrieving revision 1.25.2.3
retrieving revision 1.25.2.4
diff -u -r1.25.2.3 -r1.25.2.4
--- src/sys/i386/isa/psm.c 1996/12/03 10:47:24 1.25.2.3
+++ src/sys/i386/isa/psm.c 1997/01/05 06:34:11 1.25.2.4
@@ -19,7 +19,7 @@
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
- * $Id: psm.c,v 1.25.2.3 1996/12/03 10:47:24 phk Exp $
+ * $Id: psm.c,v 1.25.2.4 1997/01/05 06:34:11 nate Exp $
*/
/*
@@ -508,6 +508,8 @@
if (unit >= NPSM)
return (0);
+ psm_softc[unit] = NULL;
+
sc = malloc(sizeof *sc, M_DEVBUF, M_NOWAIT);
bzero(sc, sizeof *sc);
@@ -745,6 +747,9 @@
int unit = dvp->id_unit;
struct psm_softc *sc = psm_softc[unit];
+ if (sc == NULL) /* shouldn't happen */
+ return (0);
+
/* initial operation mode */
sc->mode.accelfactor = PSM_ACCEL;
sc->mode.protocol = MOUSE_PROTO_PS2;
@@ -786,7 +791,7 @@
/* Get device data */
sc = psm_softc[unit];
- if ((sc->state & PSM_VALID) == 0)
+ if ((sc == NULL) || (sc->state & PSM_VALID) == 0)
/* the device is no longer valid/functioning */
return (ENXIO);
ioport = sc->addr;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199701080420.UAA11625>
