Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 27 Oct 2008 09:18:06 -0700
From:      Jeremy Chadwick <koitsu@FreeBSD.org>
To:        John Baldwin <jhb@freebsd.org>
Cc:        Jo Rhett <jrhett@netconsonance.com>, Aragon Gouveia <aragon@phat.za.net>, freebsd-stable Stable <freebsd-stable@freebsd.org>
Subject:   Re: 6.4 RC1 locks up solid on first reboot
Message-ID:  <20081027161806.GA25404@icarus.home.lan>
In-Reply-To: <200810271157.06096.jhb@freebsd.org>
References:  <A5A9A4D4-CD16-45FA-A2AC-62C4B5AE976D@netconsonance.com> <20081025014218.GA47549@phat.za.net> <20081025080945.GA55413@icarus.home.lan> <200810271157.06096.jhb@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Oct 27, 2008 at 11:57:05AM -0400, John Baldwin wrote:
> On Saturday 25 October 2008 04:09:45 am Jeremy Chadwick wrote:
> > Just for posterity: the USB Legacy Support BIOS option does not affect
> > natively-connected PS/2 keyboards; you can leave the option enabled even
> > in the scenario where you have a USB keyboard *and* a PS/2 keyboard
> > plugged in; one will not "trump" the other.  Instead, you should have
> > two keyboards which function in OSes/environments which lack a USB
> > stack.  (That is, until something resets/reassigns the BIOS-controlled
> > interrupt, which will then break USB->PS/2 emulation; the native PS/2
> > keyboard should not be affected by this)
> 
> This last statement is not quite true (at least not always true).  For many 
> systems, the way the PS/2 emulation works is that accesses to the backing I/O 
> ports (0x60 and 0x64) case a trap into SMM and the SMI handler in the BIOS 
> then talks to the USB controller and keyboard and updates the register values 
> to simulate the I/O port accesses.  This is disabled by having the USB host 
> controller driver frob flags in controller registers to disable the SMI 
> traps.

Thanks for cluing me in, John.  I'm used to legacy device emulation
being done purely from an interrupt handler point of view (BIOS mapping
code to a specific interrupt), and wasn't even aware of SMM/SMI.

-- 
| Jeremy Chadwick                                jdc at parodius.com |
| Parodius Networking                       http://www.parodius.com/ |
| UNIX Systems Administrator                  Mountain View, CA, USA |
| Making life hard for others since 1977.              PGP: 4BD6C0CB |




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20081027161806.GA25404>