From 4b6dddc294a58fd9010926719e5c907beebf9b4d Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Fri, 19 Aug 2016 01:23:23 +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 Reviewed-by: Bin Meng Reviewed-by: Simon Glass --- 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 ac2d598d66..0884af22a7 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig @@ -461,33 +461,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 e17f0bb0f2..40ea6bffb7 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 9ee6b5e924..e62705af41 100644 --- a/arch/x86/lib/tables.c +++ b/arch/x86/lib/tables.c @@ -5,9 +5,9 @@ */ #include +#include #include #include -#include #include #include #include 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 0e0d8efd33..4c098c064e 100644 --- a/lib/Kconfig +++ b/lib/Kconfig @@ -163,6 +163,39 @@ config FDT_FIXUP_PARTITIONS using partition info defined in the 'mtdparts' environment variable. +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 3842e7d989..23e9f1ef11 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 9f3055020b..9808ee7b9c 100644 --- a/arch/x86/lib/smbios.c +++ b/lib/smbios.c @@ -7,10 +7,10 @@ */ #include +#include +#include #include #include -#include -#include DECLARE_GLOBAL_DATA_PTR; -- 2.39.5