56 DBG (
"Found 64-bit SMBIOS v%d.%d entry point at %p (%lx+%zx)\n",
69 DBG (
"Found 32-bit SMBIOS v%d.%d entry point at %p (%lx+%zx)\n",
75 DBG (
"No SMBIOS table provided\n" );
uint32_t signature
Signature.
#define SMBIOS_SIGNATURE
Signature for 32-bit SMBIOS entry point.
unsigned int count
Number of SMBIOS structures.
unsigned long user_to_phys(userptr_t userptr, off_t offset)
Convert user pointer to physical address.
size_t len
Length of SMBIOS structures.
userptr_t phys_to_user(unsigned long phys_addr)
Convert physical address to user pointer.
SMBIOS entry point descriptor.
#define SMBIOS3_SIGNATURE
Signature for 64-bit SMBIOS entry point.
int find_smbios(struct smbios *smbios)
uint16_t version
SMBIOS version.
PROVIDE_SMBIOS(efi, find_smbios, efi_find_smbios)
uint16_t smbios_len
Structure table length.
uint32_t signature
Signature.
SMBIOS 32-bit entry point.
uint32_t smbios_address
Structure table address.
#define SMBIOS_VERSION(major, minor)
Calculate SMBIOS version.
static struct smbios_entry * smbios_entry
SMBIOS configuration table.
#define ENODEV
No such device.
EFI_USE_TABLE(SMBIOS_TABLE, &smbios_entry, 0)
FILE_LICENCE(GPL2_OR_LATER)
uint16_t smbios_count
Number of SMBIOS structures.
static int efi_find_smbios(struct smbios *smbios)
Find SMBIOS.
uint8_t minor
Minor version.
GUIDs used to locate the SMBIOS tables in the UEFI 2.5 system table.
uint8_t minor
Minor version.
userptr_t address
Start of SMBIOS structures.
uint32_t smbios_len
Structure table length.
uint64_t smbios_address
Structure table address.
static struct smbios3_entry * smbios3_entry
SMBIOS configuration table.
#define DBG(...)
Print a debugging message.
uint8_t major
Major version.
uint8_t major
Major version.
SMBIOS 64-bit entry point.