aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/x86/i386/usb-legacy-support.txt
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2008-07-14 16:43:24 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2008-07-14 16:43:24 -0400
commita3da5bf84a97d48cfaf66c6842470fc403da5121 (patch)
treecdf66c0cff8c61eedd60601fc9dffdd1ed39b880 /Documentation/x86/i386/usb-legacy-support.txt
parent3b23e665b68387f5ee7b21f7b75ceea4d9acae4a (diff)
parentd59fdcf2ac501de99c3dfb452af5e254d4342886 (diff)
Merge branch 'x86/for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
* 'x86/for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (821 commits) x86: make 64bit hpet_set_mapping to use ioremap too, v2 x86: get x86_phys_bits early x86: max_low_pfn_mapped fix #4 x86: change _node_to_cpumask_ptr to return const ptr x86: I/O APIC: remove an IRQ2-mask hack x86: fix numaq_tsc_disable calling x86, e820: remove end_user_pfn x86: max_low_pfn_mapped fix, #3 x86: max_low_pfn_mapped fix, #2 x86: max_low_pfn_mapped fix, #1 x86_64: fix delayed signals x86: remove conflicting nx6325 and nx6125 quirks x86: Recover timer_ack lost in the merge of the NMI watchdog x86: I/O APIC: Never configure IRQ2 x86: L-APIC: Always fully configure IRQ0 x86: L-APIC: Set IRQ0 as edge-triggered x86: merge dwarf2 headers x86: use AS_CFI instead of UNWIND_INFO x86: use ignore macro instead of hash comment x86: use matching CFI_ENDPROC ...
Diffstat (limited to 'Documentation/x86/i386/usb-legacy-support.txt')
-rw-r--r--Documentation/x86/i386/usb-legacy-support.txt44
1 files changed, 44 insertions, 0 deletions
diff --git a/Documentation/x86/i386/usb-legacy-support.txt b/Documentation/x86/i386/usb-legacy-support.txt
new file mode 100644
index 000000000000..1894cdfc69d9
--- /dev/null
+++ b/Documentation/x86/i386/usb-legacy-support.txt
@@ -0,0 +1,44 @@
1USB Legacy support
2~~~~~~~~~~~~~~~~~~
3
4Vojtech Pavlik <vojtech@suse.cz>, January 2004
5
6
7Also known as "USB Keyboard" or "USB Mouse support" in the BIOS Setup is a
8feature that allows one to use the USB mouse and keyboard as if they were
9their classic PS/2 counterparts. This means one can use an USB keyboard to
10type in LILO for example.
11
12It has several drawbacks, though:
13
141) On some machines, the emulated PS/2 mouse takes over even when no USB
15 mouse is present and a real PS/2 mouse is present. In that case the extra
16 features (wheel, extra buttons, touchpad mode) of the real PS/2 mouse may
17 not be available.
18
192) If CONFIG_HIGHMEM64G is enabled, the PS/2 mouse emulation can cause
20 system crashes, because the SMM BIOS is not expecting to be in PAE mode.
21 The Intel E7505 is a typical machine where this happens.
22
233) If AMD64 64-bit mode is enabled, again system crashes often happen,
24 because the SMM BIOS isn't expecting the CPU to be in 64-bit mode. The
25 BIOS manufacturers only test with Windows, and Windows doesn't do 64-bit
26 yet.
27
28Solutions:
29
30Problem 1) can be solved by loading the USB drivers prior to loading the
31PS/2 mouse driver. Since the PS/2 mouse driver is in 2.6 compiled into
32the kernel unconditionally, this means the USB drivers need to be
33compiled-in, too.
34
35Problem 2) can currently only be solved by either disabling HIGHMEM64G
36in the kernel config or USB Legacy support in the BIOS. A BIOS update
37could help, but so far no such update exists.
38
39Problem 3) is usually fixed by a BIOS update. Check the board
40manufacturers web site. If an update is not available, disable USB
41Legacy support in the BIOS. If this alone doesn't help, try also adding
42idle=poll on the kernel command line. The BIOS may be entering the SMM
43on the HLT instruction as well.
44