diff options
author | jhb <jhb@FreeBSD.org> | 2006-04-11 20:11:30 +0000 |
---|---|---|
committer | jhb <jhb@FreeBSD.org> | 2006-04-11 20:11:30 +0000 |
commit | f701a00d00ba5cf28bf717582d64bd141bc10a05 (patch) | |
tree | f48de877d7fcb0c872876fdcab26078d4faab679 /sys/boot | |
parent | 340a564f4a4f8acfd27ab9bc7b781a48a8c6820d (diff) | |
download | FreeBSD-src-f701a00d00ba5cf28bf717582d64bd141bc10a05.zip FreeBSD-src-f701a00d00ba5cf28bf717582d64bd141bc10a05.tar.gz |
Drop the gateA20() function in the loader as it is unused. All the other
boot loaders that load the loader already handle A20. In fact, they are
required to do so in order to setup the environment that btxldr expects.
Diffstat (limited to 'sys/boot')
-rw-r--r-- | sys/boot/i386/libi386/Makefile | 2 | ||||
-rw-r--r-- | sys/boot/i386/libi386/gatea20.c | 54 | ||||
-rw-r--r-- | sys/boot/i386/libi386/libi386.h | 2 | ||||
-rw-r--r-- | sys/boot/pc98/libpc98/Makefile | 2 | ||||
-rw-r--r-- | sys/boot/pc98/libpc98/gatea20.c | 42 |
5 files changed, 2 insertions, 100 deletions
diff --git a/sys/boot/i386/libi386/Makefile b/sys/boot/i386/libi386/Makefile index 01ae3f4..4de6d02 100644 --- a/sys/boot/i386/libi386/Makefile +++ b/sys/boot/i386/libi386/Makefile @@ -6,7 +6,7 @@ INTERNALLIB= SRCS= biosacpi.c bioscd.c biosdisk.c biosmem.c biospnp.c \ biospci.c biossmap.c bootinfo.c bootinfo32.c bootinfo64.c \ comconsole.c devicename.c elf32_freebsd.c \ - elf64_freebsd.c gatea20.c \ + elf64_freebsd.c \ i386_copy.c i386_module.c nullconsole.c pxe.c pxetramp.s \ smbios.c time.c vidconsole.c amd64_tramp.S diff --git a/sys/boot/i386/libi386/gatea20.c b/sys/boot/i386/libi386/gatea20.c deleted file mode 100644 index 1c5f0f0..0000000 --- a/sys/boot/i386/libi386/gatea20.c +++ /dev/null @@ -1,54 +0,0 @@ -/* - * $NetBSD: gatea20.c,v 1.2 1997/10/29 00:32:49 fvdl Exp $ - */ - -/* extracted from freebsd:sys/i386/boot/biosboot/io.c */ - -#include <sys/cdefs.h> -__FBSDID("$FreeBSD$"); - -#include <stand.h> -#include <machine/cpufunc.h> - -#include <bootstrap.h> - -#include "libi386.h" - -#define K_RDWR 0x60 /* keyboard data & cmds (read/write) */ -#define K_STATUS 0x64 /* keyboard status */ -#define K_CMD 0x64 /* keybd ctlr command (write-only) */ - -#define K_OBUF_FUL 0x01 /* output buffer full */ -#define K_IBUF_FUL 0x02 /* input buffer full */ - -#define KC_CMD_WIN 0xd0 /* read output port */ -#define KC_CMD_WOUT 0xd1 /* write output port */ -#define KB_A20 0x9f /* enable A20, - reset (!), - enable output buffer full interrupt - enable data line - disable clock line */ - -/* - * Gate A20 for high memory - */ -static unsigned char x_20 = KB_A20; -void gateA20() -{ - __asm("pushfl ; cli"); -#ifdef IBM_L40 - outb(0x92, 0x2); -#else /* !IBM_L40 */ - while (inb(K_STATUS) & K_IBUF_FUL); - while (inb(K_STATUS) & K_OBUF_FUL) - (void)inb(K_RDWR); - - outb(K_CMD, KC_CMD_WOUT); - delay(100); - while (inb(K_STATUS) & K_IBUF_FUL); - outb(K_RDWR, x_20); - delay(100); - while (inb(K_STATUS) & K_IBUF_FUL); -#endif /* IBM_L40 */ - __asm("popfl"); -} diff --git a/sys/boot/i386/libi386/libi386.h b/sys/boot/i386/libi386/libi386.h index ce7e225..699ea74 100644 --- a/sys/boot/i386/libi386/libi386.h +++ b/sys/boot/i386/libi386/libi386.h @@ -104,8 +104,6 @@ void biosacpi_detect(void); void smbios_detect(void); -void gateA20(void); - int i386_autoload(void); int bi_getboothowto(char *kargs); diff --git a/sys/boot/pc98/libpc98/Makefile b/sys/boot/pc98/libpc98/Makefile index 7179559..6e61c93 100644 --- a/sys/boot/pc98/libpc98/Makefile +++ b/sys/boot/pc98/libpc98/Makefile @@ -7,7 +7,7 @@ INTERNALLIB= SRCS= bioscd.c biosdisk.c biosmem.c biospnp.c biospci.c biossmap.c \ bootinfo.c bootinfo32.c comconsole.c devicename.c elf32_freebsd.c \ - gatea20.c i386_copy.c i386_module.c nullconsole.c pxe.c pxetramp.s \ + i386_copy.c i386_module.c nullconsole.c pxe.c pxetramp.s \ time.c vidconsole.c BOOT_COMCONSOLE_PORT?= 0x238 diff --git a/sys/boot/pc98/libpc98/gatea20.c b/sys/boot/pc98/libpc98/gatea20.c deleted file mode 100644 index 3928064..0000000 --- a/sys/boot/pc98/libpc98/gatea20.c +++ /dev/null @@ -1,42 +0,0 @@ -/* - * $NetBSD: gatea20.c,v 1.2 1997/10/29 00:32:49 fvdl Exp $ - */ - -/* extracted from freebsd:sys/i386/boot/biosboot/io.c */ - -#include <sys/cdefs.h> -__FBSDID("$FreeBSD$"); - -#include <stand.h> -#include <machine/cpufunc.h> - -#include <bootstrap.h> - -#include "libi386.h" - -#define K_RDWR 0x60 /* keyboard data & cmds (read/write) */ -#define K_STATUS 0x64 /* keyboard status */ -#define K_CMD 0x64 /* keybd ctlr command (write-only) */ - -#define K_OBUF_FUL 0x01 /* output buffer full */ -#define K_IBUF_FUL 0x02 /* input buffer full */ - -#define KC_CMD_WIN 0xd0 /* read output port */ -#define KC_CMD_WOUT 0xd1 /* write output port */ -#define KB_A20 0x9f /* enable A20, - reset (!), - enable output buffer full interrupt - enable data line - disable clock line */ - -/* - * Gate A20 for high memory - */ -static unsigned char x_20 = KB_A20; -void gateA20() -{ - __asm("pushfl ; cli"); - outb(0xf2, 0x00); - outb(0xf6, 0x02); - __asm("popfl"); -} |