svn commit: r358136 - in head/stand: efi/loader i386/libi386 i386/loader libsa
Warner Losh
imp at FreeBSD.org
Thu Feb 20 00:46:24 UTC 2020
Author: imp
Date: Thu Feb 20 00:46:22 2020
New Revision: 358136
URL: https://svnweb.freebsd.org/changeset/base/358136
Log:
Move smbios.c to libsa.
smbios used to be an i386 only kinda weird quirk to the x86
architecture. But UEFI picked it up, dusted it off and now it's many
other locations. Make it base technology by moving it to libsa and
fixing up the compliation. The code has issues with unaligned access
still, but that will be addressed in a followup commit.
Differential Revision: https://reviews.freebsd.org/D23660
Added:
head/stand/libsa/smbios.c (contents, props changed)
- copied, changed from r358135, head/stand/i386/libi386/smbios.c
head/stand/libsa/smbios.h (contents, props changed)
- copied, changed from r358135, head/stand/i386/libi386/smbios.h
Deleted:
head/stand/i386/libi386/smbios.c
head/stand/i386/libi386/smbios.h
Modified:
head/stand/efi/loader/Makefile
head/stand/i386/libi386/Makefile
head/stand/i386/loader/main.c
head/stand/libsa/Makefile
Modified: head/stand/efi/loader/Makefile
==============================================================================
--- head/stand/efi/loader/Makefile Thu Feb 20 00:46:16 2020 (r358135)
+++ head/stand/efi/loader/Makefile Thu Feb 20 00:46:22 2020 (r358136)
@@ -22,7 +22,6 @@ SRCS= autoload.c \
framebuffer.c \
main.c \
self_reloc.c \
- smbios.c \
vers.c
CFLAGS+= -I${.CURDIR}/../loader
@@ -45,8 +44,6 @@ CWARNFLAGS.main.c+= -Wno-format
.PATH: ${.CURDIR}/../loader
.PATH: ${.CURDIR}/../loader/arch/${MACHINE}
-# For smbios.c XXX need to abstract properly
-.PATH: ${BOOTSRC}/i386/libi386
.include "${.CURDIR}/../loader/arch/${MACHINE}/Makefile.inc"
CFLAGS+= -I${.CURDIR}
@@ -56,18 +53,6 @@ CFLAGS+= -I${EFISRC}/include/${MACHINE}
CFLAGS+= -I${SYSDIR}/contrib/dev/acpica/include
CFLAGS+= -I${BOOTSRC}/i386/libi386
CFLAGS+= -DEFI
-
-.if !defined(BOOT_HIDE_SERIAL_NUMBERS)
-# Export serial numbers, UUID, and asset tag from loader.
-CFLAGS+= -DSMBIOS_SERIAL_NUMBERS
-.if defined(BOOT_LITTLE_ENDIAN_UUID)
-# Use little-endian UUID format as defined in SMBIOS 2.6.
-CFLAGS+= -DSMBIOS_LITTLE_ENDIAN_UUID
-.elif defined(BOOT_NETWORK_ENDIAN_UUID)
-# Use network-endian UUID format for backward compatibility.
-CFLAGS+= -DSMBIOS_NETWORK_ENDIAN_UUID
-.endif
-.endif
.if defined(HAVE_FDT) && ${MK_FDT} != "no"
.include "${BOOTSRC}/fdt.mk"
Modified: head/stand/i386/libi386/Makefile
==============================================================================
--- head/stand/i386/libi386/Makefile Thu Feb 20 00:46:16 2020 (r358135)
+++ head/stand/i386/libi386/Makefile Thu Feb 20 00:46:22 2020 (r358136)
@@ -9,7 +9,7 @@ SRCS= bio.c biosacpi.c biosdisk.c biosmem.c biospnp.c
comconsole.c devicename.c elf32_freebsd.c \
elf64_freebsd.c multiboot.c multiboot_tramp.S relocater_tramp.S \
i386_copy.c i386_module.c nullconsole.c pxe.c pxetramp.S \
- smbios.c time.c vidconsole.c amd64_tramp.S spinconsole.c
+ time.c vidconsole.c amd64_tramp.S spinconsole.c
.PATH: ${ZFSSRC}
SRCS+= devicename_stubs.c
CFLAGS+= -I${ZFSSRC}
@@ -26,18 +26,6 @@ CFLAGS+= -DCOMSPEED=${BOOT_COMCONSOLE_SPEED}
.ifdef(BOOT_BIOSDISK_DEBUG)
# Make the disk code more talkative
CFLAGS+= -DDISK_DEBUG
-.endif
-
-.if !defined(BOOT_HIDE_SERIAL_NUMBERS)
-# Export serial numbers, UUID, and asset tag from loader.
-CFLAGS+= -DSMBIOS_SERIAL_NUMBERS
-.if defined(BOOT_LITTLE_ENDIAN_UUID)
-# Use little-endian UUID format as defined in SMBIOS 2.6.
-CFLAGS+= -DSMBIOS_LITTLE_ENDIAN_UUID
-.elif defined(BOOT_NETWORK_ENDIAN_UUID)
-# Use network-endian UUID format for backward compatibility.
-CFLAGS+= -DSMBIOS_NETWORK_ENDIAN_UUID
-.endif
.endif
# terminal emulation
Modified: head/stand/i386/loader/main.c
==============================================================================
--- head/stand/i386/loader/main.c Thu Feb 20 00:46:16 2020 (r358135)
+++ head/stand/i386/loader/main.c Thu Feb 20 00:46:22 2020 (r358136)
@@ -45,7 +45,7 @@ __FBSDID("$FreeBSD$");
#include "bootstrap.h"
#include "common/bootargs.h"
#include "libi386/libi386.h"
-#include "libi386/smbios.h"
+#include <smbios.h>
#include "btxv86.h"
#ifdef LOADER_ZFS_SUPPORT
Modified: head/stand/libsa/Makefile
==============================================================================
--- head/stand/libsa/Makefile Thu Feb 20 00:46:16 2020 (r358135)
+++ head/stand/libsa/Makefile Thu Feb 20 00:46:22 2020 (r358136)
@@ -137,6 +137,20 @@ CLEANFILES+= ${SAFE_INCS} ${STAND_H_INC} ${OTHER_INC}
SRCS+= closeall.c dev.c ioctl.c nullfs.c stat.c \
fstat.c close.c lseek.c open.c read.c write.c readdir.c
+# SMBios routines
+SRCS+= smbios.c
+.if !defined(BOOT_HIDE_SERIAL_NUMBERS)
+# Export serial numbers, UUID, and asset tag from loader.
+CFLAGS.smbios.c+= -DSMBIOS_SERIAL_NUMBERS
+.if defined(BOOT_LITTLE_ENDIAN_UUID)
+# Use little-endian UUID format as defined in SMBIOS 2.6.
+CFLAGS.smbios.c+= -DSMBIOS_LITTLE_ENDIAN_UUID
+.elif defined(BOOT_NETWORK_ENDIAN_UUID)
+# Use network-endian UUID format for backward compatibility.
+CFLAGS.smbios.c+= -DSMBIOS_NETWORK_ENDIAN_UUID
+.endif
+.endif
+
# network routines
SRCS+= arp.c ether.c ip.c inet_ntoa.c in_cksum.c net.c udp.c netif.c rpc.c
Copied and modified: head/stand/libsa/smbios.c (from r358135, head/stand/i386/libi386/smbios.c)
==============================================================================
Copied and modified: head/stand/libsa/smbios.h (from r358135, head/stand/i386/libi386/smbios.h)
==============================================================================
More information about the svn-src-all
mailing list