From owner-freebsd-current Wed Aug 15 23:50:26 2001 Delivered-To: freebsd-current@freebsd.org Received: from avocet.mail.pas.earthlink.net (avocet.mail.pas.earthlink.net [207.217.121.50]) by hub.freebsd.org (Postfix) with ESMTP id E13F837B406 for ; Wed, 15 Aug 2001 23:50:22 -0700 (PDT) (envelope-from tlambert2@mindspring.com) Received: from mindspring.com (dialup-209.244.105.125.Dial1.SanJose1.Level3.net [209.244.105.125]) by avocet.mail.pas.earthlink.net (EL-8_9_3_3/8.9.3) with ESMTP id XAA27033; Wed, 15 Aug 2001 23:48:09 -0700 (PDT) Message-ID: <3B7B6CD4.16697200@mindspring.com> Date: Wed, 15 Aug 2001 23:48:52 -0700 From: Terry Lambert Reply-To: tlambert2@mindspring.com X-Mailer: Mozilla 4.7 [en]C-CCK-MCD {Sony} (Win98; U) X-Accept-Language: en MIME-Version: 1.0 To: Kazutaka YOKOTA Cc: Warner Losh , freebsd-current@FreeBSD.ORG Subject: Re: psmintr: out of sync (was: Re: FreeBSD's aggressive keyboard probe/attach) References: <200108150924.SAA06230@zodiac.mech.utsunomiya-u.ac.jp> <200108151347.f7FDl6W23619@harmony.village.org> <200108160225.LAA08355@zodiac.mech.utsunomiya-u.ac.jp> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG Kazutaka YOKOTA wrote: > While we are carrying out the reset/initialization sequence, the mouse > pointer will be frozen on the screen. The keyboard input may not > respond in a timely fasion because the PS/2 mouse and the AT keyboard > share the same I/O port. Then, I suspect our user may feel uneasy and > think the entire FreeBSD is frozen... The keyboard freeze seems problematic; can you decouple the reset vs. the reset complete notification, by keeping a flag ("currently resetting") that the interrupt handler can look at? This kind of goes with your next observation: > What do you think the average user will do in such situation? It is > quite likely that s/he will wiggle the mouse (rather frantically?) to > see if the mouse is dead, won't he? I am not sure our initialization > sequence is robust enough to not be disturbed by this. Yes, wiggling the mouse to make it work is the natural thing for someone to do... > If disable/enable sequence, which is lot simpler and takes considrably > less time, can correct the sync problem, I think it will be better. It looks to me as if the mouse is automatically enabled by default after a reset? If this is true, then doing a disable then a reset will result in the next mouse packet coming in on a correct boundary. It makes the reset a tiny bit more complicated, but makes the results more deterministic. I don't know what to tell you, if the keyboard goes away during the reset process: it seems counter-intuitive, and it means you can't use keyboard shortcuts to get to a mouse "control panel" to fix the problem manually... 8-(. I think if that's unavoidable, a simple comment to that effect in the code would save you loads of grief later. -- Terry To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message