]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
smbios: correctly name Structure Table Maximum Size field
authorHeinrich Schuchardt <heinrich.schuchardt@canonical.com>
Wed, 31 Jan 2024 22:49:34 +0000 (23:49 +0100)
committerHeinrich Schuchardt <heinrich.schuchardt@canonical.com>
Fri, 2 Feb 2024 18:57:45 +0000 (19:57 +0100)
In the SMBIOS 3 entry point the Structure Table Maximum Size field was
incorrectly named max_struct_size. A Maximum Structure Size field only
exists in the SMBIOS 2.1 entry point and has a different meaning.

Call the Structure Table Length field table_maximum_size.

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
cmd/smbios.c
drivers/misc/qfw_smbios.c
include/smbios.h
lib/efi_loader/efi_tcg2.c
lib/efi_loader/smbiosdump.c
lib/smbios-parser.c
lib/smbios.c

index e2d82be1639c1d722e2d58eac312c9e2105d8f09..66f6b761378e0d046d0f5dbd379eb5726ec42bcf 100644 (file)
@@ -142,7 +142,7 @@ static int do_smbios(struct cmd_tbl *cmdtp, int flag, int argc,
                         entry3->major_ver, entry3->minor_ver, entry3->doc_rev);
                table = (void *)(uintptr_t)entry3->struct_table_address;
                size = entry3->length;
-               table_maximum_size = entry3->max_struct_size;
+               table_maximum_size = entry3->table_maximum_size;
        } else if (!memcmp(entry, smbios_sig, sizeof(smbios_sig) - 1)) {
                struct smbios_entry *entry2 = entry;
 
index a898cb4eea4b928408436535b13f91fafe0602ad..c3e8c310d00001fbc0f96b424cc8aed333fbbdfd 100644 (file)
@@ -90,7 +90,7 @@ static int qfw_parse_smbios_anchor(struct udevice *dev,
                entry->length = sizeof(struct smbios3_entry);
                entry->major_ver = entry2->major_ver;
                entry->minor_ver = entry2->minor_ver;
-               entry->max_struct_size = entry2->struct_table_length;
+               entry->table_maximum_size = entry2->struct_table_length;
        } else {
                ret = -ENOENT;
                goto out;
index e2b7f695846821f55caf894a7440d14d205528a8..3df8827b60d401055c22641f509f9d61c9e39589 100644 (file)
@@ -75,7 +75,7 @@ struct __packed smbios3_entry {
        /** @reserved: reserved */
        u8 reserved;
        /** maximum size of SMBIOS table */
-       u32 max_struct_size;
+       u32 table_maximum_size;
        /** @struct_table_address: 64-bit physical starting address */
        u64 struct_table_address;
 };
index b5d4aa7be52afa326bbc2cde1463e31c96bf988d..b07e0099c27e54b38d8cb11d2eedee14ede51907 100644 (file)
@@ -1098,7 +1098,7 @@ tcg2_measure_smbios(struct udevice *dev,
         */
        event_size = sizeof(struct smbios_handoff_table_pointers2) +
                     FIELD_SIZEOF(struct efi_configuration_table, guid) +
-                    entry->max_struct_size;
+                    entry->table_maximum_size;
        event = calloc(1, event_size);
        if (!event) {
                ret = EFI_OUT_OF_RESOURCES;
@@ -1113,7 +1113,7 @@ tcg2_measure_smbios(struct udevice *dev,
        smbios_copy = (struct smbios_header *)((uintptr_t)&event->table_entry[0].table);
        memcpy(&event->table_entry[0].table,
               (void *)((uintptr_t)entry->struct_table_address),
-              entry->max_struct_size);
+              entry->table_maximum_size);
 
        smbios_prepare_measurement(entry, smbios_copy);
 
index f0b901897e97fd8b12bea3dc530f14f9b80ad5e3..2f0b91a353d1ab41480cc537b4e277eccac78328 100644 (file)
@@ -329,7 +329,7 @@ efi_status_t do_check(void)
                        return EFI_LOAD_ERROR;
                }
                table = (void *)(uintptr_t)smbios3_anchor->struct_table_address;
-               len = smbios3_anchor->max_struct_size;
+               len = smbios3_anchor->table_maximum_size;
        } else {
                struct smbios_entry *smbios_anchor;
                int r;
@@ -469,7 +469,7 @@ static efi_status_t do_save(u16 *filename)
 
        smbios3_anchor = get_config_table(&smbios3_guid);
        if (smbios3_anchor) {
-               size = 0x20 + smbios3_anchor->max_struct_size;
+               size = 0x20 + smbios3_anchor->table_maximum_size;
                ret = bs->allocate_pool(EFI_LOADER_DATA, size, (void **)&buf);
                if (ret != EFI_SUCCESS) {
                        error(u"Out of memory\n");
@@ -480,7 +480,7 @@ static efi_status_t do_save(u16 *filename)
                memcpy(buf, smbios3_anchor, smbios3_anchor->length);
                memcpy(buf + 0x20,
                       (void *)(uintptr_t)smbios3_anchor->struct_table_address,
-                      smbios3_anchor->max_struct_size);
+                      smbios3_anchor->table_maximum_size);
 
                smbios3_anchor = (struct smbios3_entry *)buf;
                smbios3_anchor->struct_table_address = 0x20;
index 0d1ac781b38c5fa8bfac95bf169c4525b39eaac1..9a62b3c760d3b41f790e28e157907466eeb8cb3f 100644 (file)
@@ -230,7 +230,7 @@ void smbios_prepare_measurement(const struct smbios3_entry *entry,
        void *table_end;
        struct smbios_header *header;
 
-       table_end = (void *)((u8 *)smbios_copy + entry->max_struct_size);
+       table_end = (void *)((u8 *)smbios_copy + entry->table_maximum_size);
 
        for (i = 0; i < ARRAY_SIZE(smbios_filter_tables); i++) {
                header = smbios_copy;
index 327f78c8b05709649a2186f139c6641ad1733aa2..c83af730a916c59f99308790267bd5f8ce307589 100644 (file)
@@ -615,7 +615,7 @@ ulong write_smbios_table(ulong addr)
        se->minor_ver = SMBIOS_MINOR_VER;
        se->doc_rev = 0;
        se->entry_point_rev = 1;
-       se->max_struct_size = len;
+       se->table_maximum_size = len;
        se->struct_table_address = table_addr;
        se->checksum = table_compute_checksum(se, sizeof(struct smbios3_entry));
        unmap_sysmem(se);