smbios: smbios.h should not import ofnode.h
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@canonical.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
diff --git a/include/smbios.h b/include/smbios.h
index 49de32f..b507b9d 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 @@
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 eb6d2ba..b2ec1f7 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 4a3732b..e1180efa 100644
--- a/lib/smbios-parser.c
+++ b/lib/smbios-parser.c
@@ -5,8 +5,11 @@
#define LOG_CATEGORY LOGC_BOOT
+#include <errno.h>
#include <smbios.h>
+#include <string.h>
#include <tables_csum.h>
+#include <linux/kernel.h>
const struct smbios_entry *smbios_entry(u64 address, u32 size)
{