-/* $OpenBSD: conf.c,v 1.45 2023/04/18 23:11:56 dlg Exp $ */
+/* $OpenBSD: conf.c,v 1.46 2023/05/12 16:43:00 kettenis Exp $ */
/*
* Copyright (c) 1996 Michael Shalayeff
#include "efipxe.h"
#include "softraid_arm64.h"
-const char version[] = "1.17";
+const char version[] = "1.18";
int debug = 0;
struct fs_ops file_system[] = {
-/* $OpenBSD: efiboot.c,v 1.47 2023/02/15 14:13:38 kettenis Exp $ */
+/* $OpenBSD: efiboot.c,v 1.48 2023/05/12 16:43:00 kettenis Exp $ */
/*
* Copyright (c) 2015 YASUOKA Masahiko <yasuoka@yasuoka.net>
return;
}
+ /*
+ * If there is no BSD disklabel on the boot device, boot from
+ * the ESP instead.
+ */
+ if ((bootdev_dip->flags & DISKINFO_FLAG_GOODLABEL) == 0) {
+ strlcpy(p, "esp0a", 6);
+ return;
+ }
+
TAILQ_FOREACH(dip, &disklist, list) {
if (bootdev_dip == dip)
break;
* Determine the partition type for the 'a' partition of the
* boot device.
*/
- if ((bootdev_dip->flags & DISKINFO_FLAG_GOODLABEL) != 0)
- part_type = bootdev_dip->disklabel.d_partitions[0].p_fstype;
+ part_type = bootdev_dip->disklabel.d_partitions[0].p_fstype;
/*
* See if we booted from a disk that is a member of a bootable