summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoremaste <emaste@FreeBSD.org>2017-06-19 03:07:00 +0000
committeremaste <emaste@FreeBSD.org>2017-06-19 03:07:00 +0000
commita249b94418fc905d8e8ea4829e6071170bebd283 (patch)
tree89aa67fafa9885abf22509e2939b6bc4c016e441
parentb641a516f9e321f101e03134aec14efca25bc07c (diff)
downloadFreeBSD-src-a249b94418fc905d8e8ea4829e6071170bebd283.zip
FreeBSD-src-a249b94418fc905d8e8ea4829e6071170bebd283.tar.gz
bsdinstall: use consistent EFI configuration across platforms
MFC r320007: - increase arm64 EFI partition to 200M, as x86 - use EFI_BOOTPART_SIZE and EFI_BOOTPART_PATH macros on x86 - increase ZFS EFI partition to 200M MFC r320008: bsdinstall: correct comment after r320007 PR: 201898 Approved by: re (kib) Relnotes: Yes Sponsored by: The FreeBSD Foundation
-rw-r--r--usr.sbin/bsdinstall/partedit/partedit_arm64.c6
-rw-r--r--usr.sbin/bsdinstall/partedit/partedit_x86.c8
-rwxr-xr-xusr.sbin/bsdinstall/scripts/zfsboot2
3 files changed, 10 insertions, 6 deletions
diff --git a/usr.sbin/bsdinstall/partedit/partedit_arm64.c b/usr.sbin/bsdinstall/partedit/partedit_arm64.c
index 5c0fb03..7fe784d 100644
--- a/usr.sbin/bsdinstall/partedit/partedit_arm64.c
+++ b/usr.sbin/bsdinstall/partedit/partedit_arm64.c
@@ -34,8 +34,8 @@
#include "partedit.h"
-/* EFI partition size in KB */
-#define EFI_BOOTPART_SIZE (50 * 1024)
+/* EFI partition size in bytes */
+#define EFI_BOOTPART_SIZE (200 * 1024 * 1024)
#define EFI_BOOTPART_PATH "/boot/boot1.efifat"
const char *
@@ -73,7 +73,7 @@ bootpart_size(const char *scheme)
if (strcmp(scheme, "GPT") != 0)
return (0);
- return ((EFI_BOOTPART_SIZE) * 1024);
+ return (EFI_BOOTPART_SIZE);
}
const char *
diff --git a/usr.sbin/bsdinstall/partedit/partedit_x86.c b/usr.sbin/bsdinstall/partedit/partedit_x86.c
index 5616e58..a5f65ba 100644
--- a/usr.sbin/bsdinstall/partedit/partedit_x86.c
+++ b/usr.sbin/bsdinstall/partedit/partedit_x86.c
@@ -32,6 +32,10 @@
#include "partedit.h"
+/* EFI partition size in bytes */
+#define EFI_BOOTPART_SIZE (200 * 1024 * 1024)
+#define EFI_BOOTPART_PATH "/boot/boot1.efifat"
+
static const char *
x86_bootmethod(void)
{
@@ -99,7 +103,7 @@ bootpart_size(const char *scheme)
if (strcmp(x86_bootmethod(), "BIOS") == 0)
return (512*1024);
else
- return (200*1024*1024);
+ return (EFI_BOOTPART_SIZE);
return (0);
}
@@ -137,7 +141,7 @@ partcode_path(const char *part_type, const char *fs_type)
if (strcmp(part_type, "GPT") == 0) {
if (strcmp(x86_bootmethod(), "UEFI") == 0)
- return ("/boot/boot1.efifat");
+ return (EFI_BOOTPART_PATH);
else if (strcmp(fs_type, "zfs") == 0)
return ("/boot/gptzfsboot");
else
diff --git a/usr.sbin/bsdinstall/scripts/zfsboot b/usr.sbin/bsdinstall/scripts/zfsboot
index 12bf161..36b136c 100755
--- a/usr.sbin/bsdinstall/scripts/zfsboot
+++ b/usr.sbin/bsdinstall/scripts/zfsboot
@@ -848,7 +848,7 @@ zfs_create_diskpart()
f_eval_catch $funcname gpart \
"$GPART_ADD_ALIGN_LABEL_WITH_SIZE" \
- "$align_small" efiboot$index efi 800k $disk ||
+ "$align_small" efiboot$index efi 200M $disk ||
return $FAILURE
f_eval_catch $funcname gpart "$GPART_BOOTCODE_PARTONLY" \
/boot/boot1.efifat 1 $disk ||
OpenPOWER on IntegriCloud