From owner-freebsd-current Sun Aug 12 1:49:19 2001 Delivered-To: freebsd-current@freebsd.org Received: from robin.mail.pas.earthlink.net (robin.mail.pas.earthlink.net [207.217.120.65]) by hub.freebsd.org (Postfix) with ESMTP id D0A8037B405 for ; Sun, 12 Aug 2001 01:49:15 -0700 (PDT) (envelope-from tlambert2@mindspring.com) Received: from mindspring.com (dialup-209.247.137.140.Dial1.SanJose1.Level3.net [209.247.137.140]) by robin.mail.pas.earthlink.net (EL-8_9_3_3/8.9.3) with ESMTP id BAA16736; Sun, 12 Aug 2001 01:48:47 -0700 (PDT) Message-ID: <3B764317.4334A0F6@mindspring.com> Date: Sun, 12 Aug 2001 01:49:27 -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: Warner Losh Cc: Richard Tobin , Kazutaka YOKOTA , Sean Kelly , current@FreeBSD.ORG Subject: Re: FreeBSD's aggressive keyboard probe/attach References: <200108112351.AAA26897@banks.cogsci.ed.ac.uk> <200108120422.f7C4MY150223@harmony.village.org> 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 Warner Losh wrote: > > : > In addition, the PS/2 mouse driver is smart enough to bitch > : > about synchronization, but too stupid to resynchronize (reset) > : > when it happens. Duh. > > Ummm, what does adding flags 0x8000 buy you? I think that fixed it > for me on the machines that I was seeing it. > > Except for the machines I'd see it after suspend/resume, then flags > 0x4000 worked. 0x4000 is PSM_CONFIG_INITAFTERSUSPEND Under what circumstances would you _not_ want to call the function "reinitialize()" on the unit at resume time, such that this flag is not default? Even assuming it causes problems on some hardware (it appears to be _required_ to handle undocking from a docking station with an external mouse!), shouldn't this flag be inverted, instead? I.e.: on by default, with the ability to force it off if it caused trouble? 0x8000 is PSM_CONFIG_SYNCHACK If the mouse it "out of sync", the packet decode in psmintr() bitches about it -- but does nothing useful. This flag makes it bitch about doing a disable_aux_device()/enable_aux_device(), but actually _does_ something about fixing the problem. The only place the syncmask[0] or syncmask[1] appear to be set are in the psmprobe, psminit, and reinitialize code. This means that once it's out of sync, this is the _ONLY_ way it can be recovered, short of closing and reopening the device ("restart your X session and your 40 windows in your testbed, please, I refuse to at least _try_ to reset syncmask[0] and syncmask[1] for you"). Shouldn't this flag _also_ be enabled by default, with the ability to override as well? I think overriding in this case makes no sense: the worst thing that can happen is that your non-functional mouse continues to be non-functional following the calls to do the disable_aux_device()/enable_aux_device(). --- I'm pretty sure this won't fix the keyboard problems, but it might fix the mouse problems. I'm pretty sure FreeBSD would have to be a whole lot less agressive for the very useful "OmniView CAT6 KVM Extender" to work (luckily, FreeBSD doesn't probe the VGA port, so at least the monitor works, if not the keyboard/mouse 8-)): -- Terry To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message