Now that we have proper .text and .data sections we need to move dt_blob to
authorpatrick <patrick@openbsd.org>
Sat, 30 Jul 2022 21:06:54 +0000 (21:06 +0000)
committerpatrick <patrick@openbsd.org>
Sat, 30 Jul 2022 21:06:54 +0000 (21:06 +0000)
.data.  dt_blob is a basic device tree that is populated from ACPI tables
when booting with ACPI instead of DT.  Since we're modifying its content we
need to put it somewhere writeable.

Found and proposed by mlarkin@
ok kettenis@ mlarkin@

sys/arch/arm64/stand/efiboot/Makefile
sys/arch/arm64/stand/efiboot/conf.c
sys/arch/arm64/stand/efiboot/start.S

index 5ed83a2..e7f6a3d 100644 (file)
@@ -1,4 +1,4 @@
-#      $OpenBSD: Makefile,v 1.15 2022/03/14 19:09:32 kettenis Exp $
+#      $OpenBSD: Makefile,v 1.16 2022/07/30 21:06:54 patrick Exp $
 
 NOMAN=         #
 
@@ -9,7 +9,7 @@ OBJFMT=         binary
 INSTALL_STRIP=
 BINDIR=                /usr/mdec
 SRCS=          start.S self_reloc.c efiboot.c conf.c exec.c efiacpi.c
-SRCS+=         efidev.c efipxe.c efirng.c fdt.c dt_blob.S
+SRCS+=         efidev.c efipxe.c efirng.c fdt.c
 SRCS+=         softraid_arm64.c
 
 S=             ${.CURDIR}/../../../..
index 68a063d..7497d21 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: conf.c,v 1.38 2022/07/29 21:34:59 kettenis Exp $      */
+/*     $OpenBSD: conf.c,v 1.39 2022/07/30 21:06:54 patrick Exp $       */
 
 /*
  * Copyright (c) 1996 Michael Shalayeff
@@ -46,7 +46,7 @@
 #include "efipxe.h"
 #include "softraid_arm64.h"
 
-const char version[] = "1.10";
+const char version[] = "1.11";
 int    debug = 0;
 
 struct fs_ops file_system[] = {
index 2cdb214..feb869e 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: start.S,v 1.4 2022/07/29 21:34:59 kettenis Exp $ */
+/* $OpenBSD: start.S,v 1.5 2022/07/30 21:06:54 patrick Exp $ */
 /*-
  * Copyright (c) 2014 Andrew Turner
  * All rights reserved.
@@ -170,3 +170,7 @@ _start:
        bl      efi_main
 
 1:     b       1b
+
+       .data
+       .align 4
+#include "dt_blob.S"