+/* SPDX-License-Identifier: GPL-2.0+ */
/*
* Copyright (C) 2015, Bin Meng <bmeng.cn@gmail.com>
*
* Adapted from coreboot src/include/smbios.h
- *
- * SPDX-License-Identifier: GPL-2.0+
*/
#ifndef _SMBIOS_H_
#define BIOS_CHARACTERISTICS_SELECTABLE_BOOT (1 << 16)
#define BIOS_CHARACTERISTICS_EXT1_ACPI (1 << 0)
+#define BIOS_CHARACTERISTICS_EXT1_UEFI (1 << 3)
#define BIOS_CHARACTERISTICS_EXT2_TARGET (1 << 2)
struct __packed smbios_type0 {
* @handle: the structure's handle, a unique 16-bit number
* @return: size of the structure
*/
-typedef int (*smbios_write_type)(uintptr_t *addr, int handle);
+typedef int (*smbios_write_type)(ulong *addr, int handle);
/**
* write_smbios_table() - Write SMBIOS table
*
* This writes SMBIOS table at a given address.
*
- * @addr: start address to write SMBIOS table
- * @return: end address of SMBIOS table
+ * @addr: start address to write SMBIOS table. If this is not
+ * 16-byte-aligned then it will be aligned before the table is written
+ * @return: end address of SMBIOS table (and start address for next entry)
*/
-uintptr_t write_smbios_table(uintptr_t addr);
+ulong write_smbios_table(ulong addr);
#endif /* _SMBIOS_H_ */