summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjhb <jhb@FreeBSD.org>2006-04-11 20:11:30 +0000
committerjhb <jhb@FreeBSD.org>2006-04-11 20:11:30 +0000
commitf701a00d00ba5cf28bf717582d64bd141bc10a05 (patch)
treef48de877d7fcb0c872876fdcab26078d4faab679
parent340a564f4a4f8acfd27ab9bc7b781a48a8c6820d (diff)
downloadFreeBSD-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.
-rw-r--r--sys/boot/i386/libi386/Makefile2
-rw-r--r--sys/boot/i386/libi386/gatea20.c54
-rw-r--r--sys/boot/i386/libi386/libi386.h2
-rw-r--r--sys/boot/pc98/libpc98/Makefile2
-rw-r--r--sys/boot/pc98/libpc98/gatea20.c42
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");
-}
OpenPOWER on IntegriCloud