[PATCH v2 1/2] smbios: smbios.h should not import ofnode.h

Heinrich Schuchardt heinrich.schuchardt at canonical.com
Mon Jan 1 19:50:03 CET 2024


The smbios.h include does not use any definitions from ofnode.h.
So don't include it.

As DECLARE_GLOBAL_DATA_PTR is no longer defined via dm/of.h we need to
add it to efi_smbios.c.

Add now missing includes to smbios-parser.c.

Remove a superfluous check comparing the sizes of the SMBIOS 2.1 and SMBIOS
3.0 anchors.

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt at canonical.com>
---
v2:
	new patch
---
 include/smbios.h            | 6 +-----
 lib/efi_loader/efi_smbios.c | 3 +++
 lib/smbios-parser.c         | 3 +++
 3 files changed, 7 insertions(+), 5 deletions(-)

diff --git a/include/smbios.h b/include/smbios.h
index 49de32fec2..b507b9d9d7 100644
--- a/include/smbios.h
+++ b/include/smbios.h
@@ -8,7 +8,7 @@
 #ifndef _SMBIOS_H_
 #define _SMBIOS_H_
 
-#include <dm/ofnode.h>
+#include <linux/types.h>
 
 /* SMBIOS spec version implemented */
 #define SMBIOS_MAJOR_VER	3
@@ -80,10 +80,6 @@ struct __packed smbios3_entry {
 	u64 struct_table_address;
 };
 
-/* These two structures should use the same amount of 16-byte-aligned space */
-static_assert(ALIGN(16, sizeof(struct smbios_entry)) ==
-	      ALIGN(16, sizeof(struct smbios3_entry)));
-
 /* BIOS characteristics */
 #define BIOS_CHARACTERISTICS_PCI_SUPPORTED	(1 << 7)
 #define BIOS_CHARACTERISTICS_UPGRADEABLE	(1 << 11)
diff --git a/lib/efi_loader/efi_smbios.c b/lib/efi_loader/efi_smbios.c
index eb6d2ba43c..b2ec1f7919 100644
--- a/lib/efi_loader/efi_smbios.c
+++ b/lib/efi_loader/efi_smbios.c
@@ -13,6 +13,9 @@
 #include <mapmem.h>
 #include <smbios.h>
 #include <linux/sizes.h>
+#include <asm/global_data.h>
+
+DECLARE_GLOBAL_DATA_PTR;
 
 const efi_guid_t smbios3_guid = SMBIOS3_TABLE_GUID;
 
diff --git a/lib/smbios-parser.c b/lib/smbios-parser.c
index b578c30840..b041592152 100644
--- a/lib/smbios-parser.c
+++ b/lib/smbios-parser.c
@@ -5,7 +5,10 @@
 
 #define LOG_CATEGORY	LOGC_BOOT
 
+#include <errno.h>
 #include <smbios.h>
+#include <string.h>
+#include <linux/kernel.h>
 
 static inline int verify_checksum(const struct smbios_entry *e)
 {
-- 
2.43.0



More information about the U-Boot mailing list