linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "H. Peter Anvin" <hpa@transmeta.com>
To: Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Cc: Linus Torvalds <torvalds@transmeta.com>, kai@thphy.uni-duesseldorf.de
Subject: That horrible hack from hell called A20
Date: Tue, 05 Dec 2000 15:30:44 -0800	[thread overview]
Message-ID: <3A2D7AA4.9E7D414F@transmeta.com> (raw)

Okay, here is my latest attempt to find a way to toggle A20M# that
genuinely works on all machines -- including Olivettis, IBM Aptivas,
bizarre notebooks, yadda yadda.

The bizarre notebooks with broken SMM code are the ones I really worry
most about... there may very well be NO WAY to support them that actually
works on all machines, because you don't get any kind of feedback that
they are broken.

If you have had A20M# problems with any kernel -- recent or not --
*please* try this patch, against 2.4.0-test12-pre5:

	ftp://ftp.kernel.org/pub/linux/kernel/people/hpa/a20-test12-pre5.diff 

--- arch/i386/boot/setup.S.12p5 Tue Dec  5 15:19:10 2000
+++ arch/i386/boot/setup.S      Tue Dec  5 15:22:13 2000
@@ -636,6 +636,7 @@
 # First, try the "fast A20 gate".
 #
        inb     $0x92,%al
+       movb    %al,%dl
        orb     $0x02,%al                       # Fast A20 on
        andb    $0xfe,%al                       # Don't reset CPU!
        outb    %al,$0x92
@@ -648,9 +649,17 @@
 # did the trick and stop its probing at that stage; but subsequent ones
 # must not do so.
 #
+       pushw   %dx
        movb    $0x01,%dl                       # A20-sensitive
        call    empty_8042
+       popw    %dx
        jnz     a20_wait                        # A20 already on?
+
+# If A20 is still off, we need to go to the KBC.  Set the
+# "fast A20 gate" to its original value, since some smartass
+# manufacturers have apparently decided to use A20M# as a GPIO!
+       movb    %dl,%al
+       outb    %al,$0x92
 
        movb    $0xD1, %al                      # command write
        outb    %al, $0x64


-- 
<hpa@transmeta.com> at work, <hpa@zytor.com> in private!
"Unix gives you enough rope to shoot yourself in the foot."
http://www.zytor.com/~hpa/puzzle.txt
-
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/

             reply	other threads:[~2000-12-06  0:02 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2000-12-05 23:30 H. Peter Anvin [this message]
2000-12-06  0:13 ` That horrible hack from hell called A20 Linus Torvalds
2000-12-06  0:15   ` H. Peter Anvin
2000-12-06  1:26     ` Alan Cox
2000-12-06  0:21 ` Kai Germaschewski
2000-12-06  0:48   ` Linus Torvalds
2000-12-06 15:53     ` Richard B. Johnson
2000-12-06 18:26       ` H. Peter Anvin
2000-12-06  1:07   ` Linus Torvalds
2000-12-06  1:10     ` H. Peter Anvin
2000-12-06  1:37       ` Linus Torvalds
2000-12-06  1:41         ` Linus Torvalds
2000-12-06  2:38           ` H. Peter Anvin
2000-12-08 10:33       ` Riley Williams
2000-12-06 10:16     ` Kai Germaschewski
2000-12-06  1:25 ` Alan Cox
2000-12-06  2:05   ` H. Peter Anvin
     [not found] <fa.mnh2nkv.1kkusq6@ifi.uio.no>
     [not found] ` <fa.enh20bv.1pkea3o@ifi.uio.no>
2000-12-06 12:43   ` Giacomo Catenazzi
2000-12-06 13:01     ` Alan Cox
2000-12-06 17:37       ` H. Peter Anvin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3A2D7AA4.9E7D414F@transmeta.com \
    --to=hpa@transmeta.com \
    --cc=kai@thphy.uni-duesseldorf.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=torvalds@transmeta.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).