From owner-freebsd-current@FreeBSD.ORG Tue Jun 1 08:24:23 2004 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D4C0E16A4CE for ; Tue, 1 Jun 2004 08:24:23 -0700 (PDT) Received: from mail5.speakeasy.net (mail5.speakeasy.net [216.254.0.205]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6A6A143D55 for ; Tue, 1 Jun 2004 08:24:23 -0700 (PDT) (envelope-from jhb@FreeBSD.org) Received: (qmail 19669 invoked from network); 1 Jun 2004 15:24:22 -0000 Received: from dsl027-160-063.atl1.dsl.speakeasy.net (HELO server.baldwin.cx) ([216.27.160.63]) (envelope-sender ) encrypted SMTP for ; 1 Jun 2004 15:24:22 -0000 Received: from 10.50.41.233 (gw1.twc.weather.com [216.133.140.1]) by server.baldwin.cx (8.12.11/8.12.11) with ESMTP id i51FOJhi056882; Tue, 1 Jun 2004 11:24:19 -0400 (EDT) (envelope-from jhb@FreeBSD.org) From: John Baldwin To: "Poul-Henning Kamp" Date: Tue, 1 Jun 2004 11:25:02 -0400 User-Agent: KMail/1.6 References: <5104.1085865706@critter.freebsd.dk> In-Reply-To: <5104.1085865706@critter.freebsd.dk> MIME-Version: 1.0 Content-Disposition: inline Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Message-Id: <200406011125.03166.jhb@FreeBSD.org> X-Spam-Checker-Version: SpamAssassin 2.63 (2004-01-11) on server.baldwin.cx cc: current@FreeBSD.org Subject: Re: boot2 patch, please test. X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 01 Jun 2004 15:24:24 -0000 On Saturday 29 May 2004 05:21 pm, Poul-Henning Kamp wrote: > Some embedded boxes do not have the keyboard controller, and this > patch adds a timeout so they do not get stuck waiting for it to > become ready. > > Please test that this patch does not have any effect on normal > PC architecture machines. I'd prefer that you explicitly set %cx to a timeout value after the cli instead of relying on its value being zero in the caller. > Index: i386/boot2/boot1.S > =================================================================== > RCS file: /home/ncvs/src/sys/boot/i386/boot2/boot1.S,v > retrieving revision 1.27 > diff -u -r1.27 boot1.S > --- i386/boot2/boot1.S 14 May 2004 20:29:29 -0000 1.27 > +++ i386/boot2/boot1.S 29 May 2004 19:49:52 -0000 > @@ -203,7 +203,9 @@ > * Enable A20 so we can access memory above 1 meg. > */ > seta20: cli # Disable interrupts > -seta20.1: inb $0x64,%al # Get status > +seta20.1: dec %cx > + jz seta20.3 > + inb $0x64,%al # Get status > testb $0x2,%al # Busy? > jnz seta20.1 # Yes > movb $0xd1,%al # Command: Write > @@ -213,6 +215,7 @@ > jnz seta20.2 # Yes > movb $0xdf,%al # Enable > outb %al,$0x60 # A20 > +seta20.3: > sti # Enable interrupts > retw # To caller > /* -- John Baldwin <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve" = http://www.FreeBSD.org