167 lines
5.1 KiB
Diff
167 lines
5.1 KiB
Diff
|
From 77426a40be72c7ee38f6d42da1ef9951044cdca0 Mon Sep 17 00:00:00 2001
|
||
|
From: Alexander Graf <agraf@suse.de>
|
||
|
Date: Sun, 7 Aug 2016 12:20:57 +0200
|
||
|
Subject: [PATCH] x86: Move smbios generation into arch independent directory
|
||
|
|
||
|
We will need the SMBIOS generation function on ARM as well going forward,
|
||
|
so let's move it into a non arch specific location.
|
||
|
|
||
|
Signed-off-by: Alexander Graf <agraf@suse.de>
|
||
|
---
|
||
|
arch/x86/Kconfig | 27 ------------------------
|
||
|
arch/x86/lib/Makefile | 1 -
|
||
|
arch/x86/lib/tables.c | 2 +-
|
||
|
{arch/x86/include/asm => include}/smbios.h | 0
|
||
|
lib/Kconfig | 33 ++++++++++++++++++++++++++++++
|
||
|
lib/Makefile | 1 +
|
||
|
{arch/x86/lib => lib}/smbios.c | 4 ++--
|
||
|
7 files changed, 37 insertions(+), 31 deletions(-)
|
||
|
rename {arch/x86/include/asm => include}/smbios.h (100%)
|
||
|
rename {arch/x86/lib => lib}/smbios.c (99%)
|
||
|
|
||
|
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
|
||
|
index 29d2307..265cea9 100644
|
||
|
--- a/arch/x86/Kconfig
|
||
|
+++ b/arch/x86/Kconfig
|
||
|
@@ -453,33 +453,6 @@ config GENERATE_ACPI_TABLE
|
||
|
by the operating system. It defines platform-independent interfaces
|
||
|
for configuration and power management monitoring.
|
||
|
|
||
|
-config GENERATE_SMBIOS_TABLE
|
||
|
- bool "Generate an SMBIOS (System Management BIOS) table"
|
||
|
- default y
|
||
|
- help
|
||
|
- The System Management BIOS (SMBIOS) specification addresses how
|
||
|
- motherboard and system vendors present management information about
|
||
|
- their products in a standard format by extending the BIOS interface
|
||
|
- on Intel architecture systems.
|
||
|
-
|
||
|
- Check http://www.dmtf.org/standards/smbios for details.
|
||
|
-
|
||
|
-config SMBIOS_MANUFACTURER
|
||
|
- string "SMBIOS Manufacturer"
|
||
|
- depends on GENERATE_SMBIOS_TABLE
|
||
|
- default SYS_VENDOR
|
||
|
- help
|
||
|
- The board manufacturer to store in SMBIOS structures.
|
||
|
- Change this to override the default one (CONFIG_SYS_VENDOR).
|
||
|
-
|
||
|
-config SMBIOS_PRODUCT_NAME
|
||
|
- string "SMBIOS Product Name"
|
||
|
- depends on GENERATE_SMBIOS_TABLE
|
||
|
- default SYS_BOARD
|
||
|
- help
|
||
|
- The product name to store in SMBIOS structures.
|
||
|
- Change this to override the default one (CONFIG_SYS_BOARD).
|
||
|
-
|
||
|
endmenu
|
||
|
|
||
|
config MAX_PIRQ_LINKS
|
||
|
diff --git a/arch/x86/lib/Makefile b/arch/x86/lib/Makefile
|
||
|
index e17f0bb..40ea6bf 100644
|
||
|
--- a/arch/x86/lib/Makefile
|
||
|
+++ b/arch/x86/lib/Makefile
|
||
|
@@ -29,7 +29,6 @@ obj-y += relocate.o
|
||
|
obj-y += physmem.o
|
||
|
obj-$(CONFIG_X86_RAMTEST) += ramtest.o
|
||
|
obj-y += sfi.o
|
||
|
-obj-$(CONFIG_GENERATE_SMBIOS_TABLE) += smbios.o
|
||
|
obj-y += string.o
|
||
|
ifndef CONFIG_QEMU
|
||
|
obj-$(CONFIG_GENERATE_ACPI_TABLE) += acpi_table.o
|
||
|
diff --git a/arch/x86/lib/tables.c b/arch/x86/lib/tables.c
|
||
|
index 9ee6b5e..e62705a 100644
|
||
|
--- a/arch/x86/lib/tables.c
|
||
|
+++ b/arch/x86/lib/tables.c
|
||
|
@@ -5,9 +5,9 @@
|
||
|
*/
|
||
|
|
||
|
#include <common.h>
|
||
|
+#include <smbios.h>
|
||
|
#include <asm/sfi.h>
|
||
|
#include <asm/mpspec.h>
|
||
|
-#include <asm/smbios.h>
|
||
|
#include <asm/tables.h>
|
||
|
#include <asm/acpi_table.h>
|
||
|
#include <asm/coreboot_tables.h>
|
||
|
diff --git a/arch/x86/include/asm/smbios.h b/include/smbios.h
|
||
|
similarity index 100%
|
||
|
rename from arch/x86/include/asm/smbios.h
|
||
|
rename to include/smbios.h
|
||
|
diff --git a/lib/Kconfig b/lib/Kconfig
|
||
|
index 02ca405..5a14530 100644
|
||
|
--- a/lib/Kconfig
|
||
|
+++ b/lib/Kconfig
|
||
|
@@ -149,6 +149,39 @@ config SPL_OF_LIBFDT
|
||
|
particular compatible nodes. The library operates on a flattened
|
||
|
version of the device tree.
|
||
|
|
||
|
+menu "System tables"
|
||
|
+ depends on !EFI && !SYS_COREBOOT
|
||
|
+
|
||
|
+config GENERATE_SMBIOS_TABLE
|
||
|
+ bool "Generate an SMBIOS (System Management BIOS) table"
|
||
|
+ default y
|
||
|
+ depends on X86
|
||
|
+ help
|
||
|
+ The System Management BIOS (SMBIOS) specification addresses how
|
||
|
+ motherboard and system vendors present management information about
|
||
|
+ their products in a standard format by extending the BIOS interface
|
||
|
+ on Intel architecture systems.
|
||
|
+
|
||
|
+ Check http://www.dmtf.org/standards/smbios for details.
|
||
|
+
|
||
|
+config SMBIOS_MANUFACTURER
|
||
|
+ string "SMBIOS Manufacturer"
|
||
|
+ depends on GENERATE_SMBIOS_TABLE
|
||
|
+ default SYS_VENDOR
|
||
|
+ help
|
||
|
+ The board manufacturer to store in SMBIOS structures.
|
||
|
+ Change this to override the default one (CONFIG_SYS_VENDOR).
|
||
|
+
|
||
|
+config SMBIOS_PRODUCT_NAME
|
||
|
+ string "SMBIOS Product Name"
|
||
|
+ depends on GENERATE_SMBIOS_TABLE
|
||
|
+ default SYS_BOARD
|
||
|
+ help
|
||
|
+ The product name to store in SMBIOS structures.
|
||
|
+ Change this to override the default one (CONFIG_SYS_BOARD).
|
||
|
+
|
||
|
+endmenu
|
||
|
+
|
||
|
source lib/efi/Kconfig
|
||
|
source lib/efi_loader/Kconfig
|
||
|
|
||
|
diff --git a/lib/Makefile b/lib/Makefile
|
||
|
index f48d901..c026a9e 100644
|
||
|
--- a/lib/Makefile
|
||
|
+++ b/lib/Makefile
|
||
|
@@ -27,6 +27,7 @@ obj-$(CONFIG_FIT) += fdtdec_common.o
|
||
|
obj-$(CONFIG_TEST_FDTDEC) += fdtdec_test.o
|
||
|
obj-$(CONFIG_GZIP) += gunzip.o
|
||
|
obj-$(CONFIG_GZIP_COMPRESSED) += gzip.o
|
||
|
+obj-$(CONFIG_GENERATE_SMBIOS_TABLE) += smbios.o
|
||
|
obj-y += initcall.o
|
||
|
obj-$(CONFIG_LMB) += lmb.o
|
||
|
obj-y += ldiv.o
|
||
|
diff --git a/arch/x86/lib/smbios.c b/lib/smbios.c
|
||
|
similarity index 99%
|
||
|
rename from arch/x86/lib/smbios.c
|
||
|
rename to lib/smbios.c
|
||
|
index 9f30550..9808ee7 100644
|
||
|
--- a/arch/x86/lib/smbios.c
|
||
|
+++ b/lib/smbios.c
|
||
|
@@ -7,10 +7,10 @@
|
||
|
*/
|
||
|
|
||
|
#include <common.h>
|
||
|
+#include <smbios.h>
|
||
|
+#include <tables_csum.h>
|
||
|
#include <version.h>
|
||
|
#include <asm/cpu.h>
|
||
|
-#include <asm/smbios.h>
|
||
|
-#include <asm/tables.h>
|
||
|
|
||
|
DECLARE_GLOBAL_DATA_PTR;
|
||
|
|