You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

70 lines
2.4 KiB

From 738e0c73073b27de660696d32c2030bc683de2a2 Mon Sep 17 00:00:00 2001
From: Vladimir Serbinenko <phcoder@gmail.com>
Date: Fri, 28 Feb 2014 10:50:05 +0100
Subject: [PATCH 065/237] * include/grub/i386/openbsd_bootarg.h: Add addr and
frequency fields. * grub-core/loader/i386/bsd.c (grub_cmd_openbsd): Fill addr
field.
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Suggested by: Markus Müller.
---
ChangeLog | 7 +++++++
grub-core/loader/i386/bsd.c | 2 ++
include/grub/i386/openbsd_bootarg.h | 2 ++
3 files changed, 11 insertions(+)
diff --git a/ChangeLog b/ChangeLog
index 97cf57e..f571f66 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,12 @@
2014-02-28 Vladimir Serbinenko <phcoder@gmail.com>
+ * include/grub/i386/openbsd_bootarg.h: Add addr and frequency fields.
+ * grub-core/loader/i386/bsd.c (grub_cmd_openbsd): Fill addr field.
+
+ Suggested by: Markus Müller.
+
+2014-02-28 Vladimir Serbinenko <phcoder@gmail.com>
+
* grub-core/kern/i386/pc/mmap.c: Fallback to EISA memory map
if E820 failed to return any regions.
diff --git a/grub-core/loader/i386/bsd.c b/grub-core/loader/i386/bsd.c
index ea0edfa..19985f0 100644
--- a/grub-core/loader/i386/bsd.c
+++ b/grub-core/loader/i386/bsd.c
@@ -1646,6 +1646,7 @@ grub_cmd_openbsd (grub_extcmd_context_t ctxt, int argc, char *argv[])
serial.device = (GRUB_OPENBSD_COM_MAJOR << 8) | port;
serial.speed = speed;
+ serial.addr = grub_ns8250_hw_get_port (port);
grub_bsd_add_meta (OPENBSD_BOOTARG_CONSOLE, &serial, sizeof (serial));
bootflags |= OPENBSD_RB_SERCONS;
@@ -1656,6 +1657,7 @@ grub_cmd_openbsd (grub_extcmd_context_t ctxt, int argc, char *argv[])
grub_memset (&serial, 0, sizeof (serial));
serial.device = (GRUB_OPENBSD_VGA_MAJOR << 8);
+ serial.addr = 0xffffffff;
grub_bsd_add_meta (OPENBSD_BOOTARG_CONSOLE, &serial, sizeof (serial));
bootflags &= ~OPENBSD_RB_SERCONS;
}
diff --git a/include/grub/i386/openbsd_bootarg.h b/include/grub/i386/openbsd_bootarg.h
index 01ca486..9ebe6b4 100644
--- a/include/grub/i386/openbsd_bootarg.h
+++ b/include/grub/i386/openbsd_bootarg.h
@@ -75,6 +75,8 @@ struct grub_openbsd_bootarg_console
{
grub_uint32_t device;
grub_uint32_t speed;
+ grub_uint32_t addr;
+ grub_uint32_t frequency;
};
struct grub_openbsd_bootarg_pcibios
--
2.9.3