bug-grub
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Gate A20


From: Yoshinori K. Okuji
Subject: Gate A20
Date: Fri, 03 May 2002 08:17:59 +0900
User-agent: Wanderlust/2.8.1 (Something) SEMI/1.14.3 (Ushinoya) FLIM/1.14.3 (Unebigoryƍmae) APEL/10.3 Emacs/21.2 (i386-debian-linux-gnu) MULE/5.0 (SAKAKI)

About Gate A20.

GRUB supports only the traditional approach (i.e. using the keyboard
controller) to enable/disable Gate A20 at the moment. This is not
enough.

Until now, at least two persons have problems because of this. One is
Zinx, who reported a problem via the Debian Bug Tracking System:

http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=139774&repeatmerged=yes

The other is Daniel. His report is here:

http://www.mail-archive.com/bug-grub%40gnu.org/msg05653.html

In his case, it was difficult to figure out that his problem was
related to Gate A20. I and he investigated it privately, and it turned
out that enabling Gate A20 via the keyboard controller made his USB
keyboard unworkable, but doing that via System Control Port A worked
quite well. I guess that's because the BIOS keyboard support somewhat
relies on the status of the keyboard contoller output port.

Those implies that GRUB needs to support using System Control Port A,
but according to <http://www.win.tue.nl/~aeb/linux/kbd/A20.html>, some
systems seem to crash, if System Control Port A is used. In that web
site, a suggestion is recorded, but it is unknown whether the
suggestion overcomes the crash problem or not.

Therefore, syslinux uses BIOS as the first way, the keyboard
controller as the second, and System Control Port A as the last. This
may be good for syslinux, but not good for GRUB, because GRUB must
support interactive operations using a keyboard even after loading an
OS image, unlike syslinux. In Daniel's system, as using the keyboard
controller spoils the BIOS support for an USB keyboard, System Control
Port A _must_ be used before the keyboard controller. Incidentally,
his system doesn't support the BIOS calls (INT 15H, AX=240x)
unfortunately.

I'm not sure how we should solve all this problem. Do you have any
ideas or suggestions?

Okuji



reply via email to

[Prev in Thread] Current Thread [Next in Thread]