git: b11aebff4d4a - main - kboot: Mark the EFI specific parts of bootinfo.c

From: Warner Losh <imp_at_FreeBSD.org>
Date: Wed, 07 Dec 2022 18:06:24 UTC
The branch main has been updated by imp:

URL: https://cgit.FreeBSD.org/src/commit/?id=b11aebff4d4a301bfeac516b5be45080c8a11142

commit b11aebff4d4a301bfeac516b5be45080c8a11142
Author:     Warner Losh <imp@FreeBSD.org>
AuthorDate: 2022-12-06 17:55:58 +0000
Commit:     Warner Losh <imp@FreeBSD.org>
CommitDate: 2022-12-07 18:00:54 +0000

    kboot: Mark the EFI specific parts of bootinfo.c
    
    bootinfo.c is about to be shared with kboot since they create
    substantially similar environments / metadata tagging / etc. Tag this
    with #ifdef EFI for the moment until the proper abstracting out can
    happen.
    
    Sponsored by:           Netflix
---
 stand/efi/loader/bootinfo.c | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/stand/efi/loader/bootinfo.c b/stand/efi/loader/bootinfo.c
index 1185908f64be..1bd8c11c0028 100644
--- a/stand/efi/loader/bootinfo.c
+++ b/stand/efi/loader/bootinfo.c
@@ -40,8 +40,10 @@ __FBSDID("$FreeBSD$");
 #include <machine/metadata.h>
 #include <machine/psl.h>
 
+#ifdef EFI
 #include <efi.h>
 #include <efilib.h>
+#endif
 
 #include "bootstrap.h"
 #include "modinfo.h"
@@ -50,8 +52,10 @@ __FBSDID("$FreeBSD$");
 #include <machine/specialreg.h>
 #endif
 
+#ifdef EFI
 #include "loader_efi.h"
 #include "gfx_fb.h"
+#endif
 
 #if defined(LOADER_FDT_SUPPORT)
 #include <fdt_platform.h>
@@ -67,10 +71,12 @@ int bi_load(char *args, vm_offset_t *modulep, vm_offset_t *kernendp,
 static int
 bi_getboothowto(char *kargs)
 {
+#ifdef EFI
 	const char *sw, *tmp;
 	char *opts;
 	int speed, port;
 	char buf[50];
+#endif
 	char *console;
 	int howto;
 
@@ -83,6 +89,7 @@ bi_getboothowto(char *kargs)
 			howto |= RB_SERIAL;
 		if (strcmp(console, "nullconsole") == 0)
 			howto |= RB_MUTE;
+#ifdef EFI
 #if defined(__i386__) || defined(__amd64__)
 		if (strcmp(console, "efi") == 0 &&
 		    getenv("efi_8250_uid") != NULL &&
@@ -121,12 +128,14 @@ bi_getboothowto(char *kargs)
 				    NULL, NULL);
 			}
 		}
+#endif
 #endif
 	}
 
 	return (howto);
 }
 
+#ifdef EFI
 static EFI_STATUS
 efi_do_vmap(EFI_MEMORY_DESCRIPTOR *mm, UINTN sz, UINTN mmsz, UINT32 mmver)
 {
@@ -295,6 +304,7 @@ bi_load_efi_data(struct preloaded_file *kfp, bool exit_bs)
 
 	return (0);
 }
+#endif
 
 /*
  * Load the information expected by an amd64 kernel.
@@ -351,8 +361,10 @@ bi_load(char *args, vm_offset_t *modulep, vm_offset_t *kernendp, bool exit_bs)
 		return(EINVAL);
 	}
 
+#ifdef EFI
 	/* Try reading the /etc/fstab file to select the root device */
 	getrootmount(devformat(rootdev));
+#endif
 
 	addr = 0;
 	for (xp = file_findfile(NULL, NULL); xp != NULL; xp = xp->f_next) {
@@ -408,11 +420,15 @@ bi_load(char *args, vm_offset_t *modulep, vm_offset_t *kernendp, bool exit_bs)
 #ifdef MODINFOMD_MODULEP
 	file_addmetadata(kfp, MODINFOMD_MODULEP, sizeof(module), &module);
 #endif
+#ifdef EFI
 	file_addmetadata(kfp, MODINFOMD_FW_HANDLE, sizeof(ST), &ST);
+#endif
 #ifdef LOADER_GELI_SUPPORT
 	geli_export_key_metadata(kfp);
 #endif
+#ifdef EFI
 	bi_load_efi_data(kfp, exit_bs);
+#endif
 
 	size = md_copymodules(0, is64);	/* Find the size of the modules */
 	kernend = roundup(addr + size, PAGE_SIZE);