Hi list,
There seem to be two common methods for ix86-based boards to enable the
A20 line: The traditional method that uses the keyboard controller (this
is what Linux supports) and a method (sometimes referred to as "fast
A20 Gate") that uses a special port address (0x92).
Some boards (especially in the embedded PC area) implement only the
latter method (some don't even _have_ a keyboard controller).
With these boards, Linux fails to boot.
The fix for this is pretty simple (see below) and I wonder if it
would be possible to get this fix into the kernel by default.
Cheers
Rob
----------------------------------------------------------------
Robert Kaiser email: rkaiser@sysgo.de
SYSGO RTS GmbH
Am Pfaffenstein 14 http://www.elinos.com
D-55270 Klein-Winternheim / Germany http://www.sysgo.de
diff -urN linux-2.4.0-test8/arch/i386/boot/setup.S linux/arch/i386/boot/setup.S
--- linux-2.4.0-test8/arch/i386/boot/setup.S Wed Jul 19 07:00:33 2000
+++ linux/arch/i386/boot/setup.S Fri Oct 13 18:00:42 2000
@@ -631,6 +631,16 @@
# appropriate
# that was painless, now we enable a20
+
+# enable the "fast" A20 gate
+
+ in al,#0x92
+ or al,#2
+ and al,#0xfe
+ out #0x92,al
+
+# enable the keyboard controller A20 gate
+
call empty_8042
movb $0xD1, %al # command write
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Sun Oct 15 2000 - 21:00:25 EST