Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 20 Jul 2004 13:43:44 +0100
From:      Ian Dowse <iedowse@maths.tcd.ie>
To:        "M. Warner Losh" <imp@bsdimp.com>
Cc:        pjd@freebsd.org
Subject:   Re: Unloading USB driver while device is attached. 
Message-ID:  <200407201343.aa92531@salmon.maths.tcd.ie>
In-Reply-To: Your message of "Mon, 19 Jul 2004 19:50:56 MDT." <20040719.195056.35662742.imp@bsdimp.com> 

next in thread | previous in thread | raw e-mail | index | archive | help
In message <20040719.195056.35662742.imp@bsdimp.com>, "M. Warner Losh" writes:
>:   o Attempt to follow the correct procedure for synchronising with
>:     the BIOS via SMM to take over control of the EHCI controller.
>:     This may fix problems when the BIOS is configured to emulate
>:     legacy devices, but is untested on any affected machines.
>
>Docs on how to do this?  I've not seen this info...

It's in the EHCI spec at:

	http://developer.intel.com/technology/usb/download/ehci-r10.pdf

See sections 5.1 (EHCI Extended Capability: Pre-OS to OS Handoff
Synchronization) and 2.1.7 (USBLEGSUP - USB Legacy Support Extended
Capability).

A quick summary is that if the BIOS implements legacy emulation via
SMIs then there is a particular host controller flag that the OS
is supposed to set that will cause the BIOS to receive an SMI. The
BIOS should recognise this signal and disable the legacy support,
giving the OS exclusive access to the host controller.

Ian



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