boot2 patch, please test.
John Baldwin
jhb at FreeBSD.org
Tue Jun 1 08:24:24 PDT 2004
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 <jhb at FreeBSD.org> <>< http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve" = http://www.FreeBSD.org
More information about the freebsd-current
mailing list