[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[2524] 2009-08-24 Vladimir Serbinenko <address@hidden>
From: |
Vladimir Serbinenko |
Subject: |
[2524] 2009-08-24 Vladimir Serbinenko <address@hidden> |
Date: |
Mon, 24 Aug 2009 13:20:25 +0000 |
Revision: 2524
http://svn.sv.gnu.org/viewvc/?view=rev&root=grub&revision=2524
Author: phcoder
Date: 2009-08-24 13:20:24 +0000 (Mon, 24 Aug 2009)
Log Message:
-----------
2009-08-24 Vladimir Serbinenko <address@hidden>
Fix OpenBSD and NetBSD support.
* include/grub/i386/bsd.h (GRUB_BSD_TEMP_BUFFER): Change to resolve
memory address conflict.
(OPENBSD_MMAP_ACPI): New definition.
(OPENBSD_MMAP_NVS): Likewise.
* loader/i386/bsd.c (grub_openbsd_boot): Support OPENBSD_MMAP_ACPI
and OPENBSD_MMAP_NVS.
Add memory map terminator
Explicit cast when calling grub_unix_real_boot.
(grub_nebsd_boot): Explicit cast when calling grub_unix_real_boot.
Modified Paths:
--------------
trunk/grub2/ChangeLog
trunk/grub2/include/grub/i386/bsd.h
trunk/grub2/loader/i386/bsd.c
Modified: trunk/grub2/ChangeLog
===================================================================
--- trunk/grub2/ChangeLog 2009-08-24 13:10:12 UTC (rev 2523)
+++ trunk/grub2/ChangeLog 2009-08-24 13:20:24 UTC (rev 2524)
@@ -1,5 +1,19 @@
2009-08-24 Vladimir Serbinenko <address@hidden>
+ Fix OpenBSD and NetBSD support.
+
+ * include/grub/i386/bsd.h (GRUB_BSD_TEMP_BUFFER): Change to resolve
+ memory address conflict.
+ (OPENBSD_MMAP_ACPI): New definition.
+ (OPENBSD_MMAP_NVS): Likewise.
+ * loader/i386/bsd.c (grub_openbsd_boot): Support OPENBSD_MMAP_ACPI
+ and OPENBSD_MMAP_NVS.
+ Add memory map terminator
+ Explicit cast when calling grub_unix_real_boot.
+ (grub_nebsd_boot): Explicit cast when calling grub_unix_real_boot.
+
+2009-08-24 Vladimir Serbinenko <address@hidden>
+
Let user specify NetBSD root device.
* loader/i386/bsd.c (netbsd_root): New variable.
Modified: trunk/grub2/include/grub/i386/bsd.h
===================================================================
--- trunk/grub2/include/grub/i386/bsd.h 2009-08-24 13:10:12 UTC (rev 2523)
+++ trunk/grub2/include/grub/i386/bsd.h 2009-08-24 13:20:24 UTC (rev 2524)
@@ -29,7 +29,7 @@
KERNEL_TYPE_NETBSD,
};
-#define GRUB_BSD_TEMP_BUFFER 0x68000
+#define GRUB_BSD_TEMP_BUFFER 0x80000
#define FREEBSD_RB_ASKNAME (1 << 0) /* ask for file name to reboot from */
#define FREEBSD_RB_SINGLE (1 << 1) /* reboot to single user only */
@@ -157,6 +157,8 @@
grub_uint64_t len;
#define OPENBSD_MMAP_AVAILABLE 1
#define OPENBSD_MMAP_RESERVED 2
+#define OPENBSD_MMAP_ACPI 3
+#define OPENBSD_MMAP_NVS 4
grub_uint32_t type;
};
Modified: trunk/grub2/loader/i386/bsd.c
===================================================================
--- trunk/grub2/loader/i386/bsd.c 2009-08-24 13:10:12 UTC (rev 2523)
+++ trunk/grub2/loader/i386/bsd.c 2009-08-24 13:20:24 UTC (rev 2524)
@@ -574,6 +574,14 @@
pm->type = OPENBSD_MMAP_AVAILABLE;
break;
+ case GRUB_MACHINE_MEMORY_ACPI:
+ pm->type = OPENBSD_MMAP_ACPI;
+ break;
+
+ case GRUB_MACHINE_MEMORY_NVS:
+ pm->type = OPENBSD_MMAP_NVS;
+ break;
+
default:
pm->type = OPENBSD_MMAP_RESERVED;
break;
@@ -589,6 +597,12 @@
pm = (struct grub_openbsd_bios_mmap *) (pa + 1);
grub_mmap_iterate (hook);
+ /* Memory map terminator. */
+ pm->addr = 0;
+ pm->len = 0;
+ pm->type = 0;
+ pm++;
+
pa->ba_size = (char *) pm - (char *) pa;
pa->ba_next = (struct grub_openbsd_bootargs *) pm;
pa = pa->ba_next;
@@ -600,8 +614,8 @@
(part << OPENBSD_B_PARTSHIFT));
grub_unix_real_boot (entry, bootflags, bootdev, OPENBSD_BOOTARG_APIVER,
- 0, grub_mmap_get_upper () >> 10,
- grub_mmap_get_lower () >> 10,
+ 0, (grub_uint32_t) (grub_mmap_get_upper () >> 10),
+ (grub_uint32_t) (grub_mmap_get_lower () >> 10),
(char *) pa - buf, buf);
/* Not reached. */
@@ -642,8 +656,8 @@
}
grub_unix_real_boot (entry, bootflags, 0, bootinfo,
- 0, grub_mmap_get_upper () >> 10,
- grub_mmap_get_lower () >> 10);
+ 0, (grub_uint32_t) (grub_mmap_get_upper () >> 10),
+ (grub_uint32_t) (grub_mmap_get_lower () >> 10));
/* Not reached. */
return GRUB_ERR_NONE;
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [2524] 2009-08-24 Vladimir Serbinenko <address@hidden>,
Vladimir Serbinenko <=