From: Dave A. <ai...@us...> - 2003-06-10 01:53:10
|
Update of /cvsroot/linux-vax/kernel-2.4/arch/i386/boot In directory sc8-pr-cvs1:/tmp/cvs-serv23180/arch/i386/boot Modified Files: setup.S Log Message: DA: sync to Marcelo 2.4.18 + remove init_mmap (no longer needed) Index: setup.S =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/arch/i386/boot/setup.S,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- setup.S 10 Apr 2002 14:23:20 -0000 1.2 +++ setup.S 10 Jun 2003 01:45:54 -0000 1.3 @@ -42,6 +42,9 @@ * if CX/DX have been changed in the e801 call and if so use AX/BX . * Michael Miller, April 2001 <mic...@mj...> * + * New A20 code ported from SYSLINUX by H. Peter Anvin. AMD Elan bugfixes + * by Robert Schwebel, December 2001 <ro...@sc...> + * */ #include <linux/config.h> @@ -50,7 +53,8 @@ #include <linux/compile.h> #include <asm/boot.h> #include <asm/e820.h> - +#include <asm/page.h> + /* Signature words to ensure LILO loaded us right */ #define SIG1 0xAA55 #define SIG2 0x5A5A @@ -79,7 +83,7 @@ # This is the setup header, and it must start at %cs:2 (old 0x9020:2) .ascii "HdrS" # header signature - .word 0x0202 # header version number (>= 0x0105) + .word 0x0203 # header version number (>= 0x0105) # or else old loadlin-1.5 will fail) realmode_swtch: .word 0, 0 # default_switch, SETUPSEG start_sys_seg: .word SYSSEG @@ -153,6 +157,10 @@ # can be located anywhere in # low memory 0x10000 or higher. +ramdisk_max: .long __MAXMEM-1 # (Header version 0x0203 or later) + # The highest safe address for + # the contents of an initrd + trampoline: call start_of_setup .space 1024 # End of setup header ##################################################### @@ -646,7 +654,18 @@ # # Enable A20. This is at the very best an annoying procedure. # A20 code ported from SYSLINUX 1.52-1.63 by H. Peter Anvin. +# AMD Elan bug fix by Robert Schwebel. # + +#if defined(CONFIG_MELAN) + movb $0x02, %al # alternate A20 gate + outb %al, $0x92 # this works on SC410/SC520 +a20_elan_wait: + call a20_test + jz a20_elan_wait + jmp a20_done +#endif + A20_TEST_LOOPS = 32 # Iterations per wait A20_ENABLE_LOOPS = 255 # Total loops to try |