diff options
author | Ian Moffett <ian@osmora.org> | 2025-06-24 22:52:22 -0400 |
---|---|---|
committer | Ian Moffett <ian@osmora.org> | 2025-06-24 22:54:07 -0400 |
commit | f725323f3fd14e5a1f3b091f7ef0dcbbf8bd9c23 (patch) | |
tree | 0428414f8f05dc784cce13ac39d2ca9fcf73566a /sys/include/dev/acpi/tables.h | |
parent | 0a00f1f00f13f61c54929d54a71e046860d95d2a (diff) |
kernel: Add SMBIOS/DMI support
Signed-off-by: Ian Moffett <ian@osmora.org>
Diffstat (limited to 'sys/include/dev/acpi/tables.h')
-rw-r--r-- | sys/include/dev/acpi/tables.h | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/sys/include/dev/acpi/tables.h b/sys/include/dev/acpi/tables.h index d190150..5340c7f 100644 --- a/sys/include/dev/acpi/tables.h +++ b/sys/include/dev/acpi/tables.h @@ -162,4 +162,35 @@ struct __packed acpi_mcfg { struct acpi_mcfg_base base[1]; }; +struct __packed dmi_entry32 { + char signature[4]; /* _SM_ */ + uint8_t checksum; /* Sum of table bytes */ + uint8_t length; /* Length of entry table */ + uint8_t major; /* DMI major */ + uint8_t minor; /* DMI minor */ + uint16_t max_size; /* Max structure size */ + uint8_t rev; /* Entry revision */ + char fmt_area[5]; /* Formatted area */ + char isignature[5]; /* Intermediate signature */ + uint8_t ichecksum; /* Intermediate checksum */ + uint16_t table_len; /* Length of SMBIOS structure table */ + uint32_t addr; /* 32-bit physical start of SMBIOS structure table */ + uint16_t nstruct; /* Total number of structures */ + uint8_t bcd_rev; +}; + +struct __packed dmi_entry64 { + char signature[5]; /* _SM_ */ + uint8_t checksum; /* Sum of table bytes */ + uint8_t length; /* Length of entry table */ + uint8_t major; /* DMI major */ + uint8_t minor; /* DMI minor */ + uint8_t docrev; + uint8_t entry_rev; + uint8_t reserved; + uint16_t max_size; /* Max structure size */ + uint16_t padding; + uint64_t addr; /* 64-bit physical address */ +}; + #endif /* _ACPI_TABLES_H_ */ |