Branch: refs/heads/master
Home: https://github.com/tianocore/edk2
Commit: 9e83101fdfdbe97c9d5b9586b69a8444bb49584b
https://github.com/tianocore/edk2/commit/9e83101fdfdbe97c9d5b9586b69a8444bb49584b
Author: Dongyan Qian <[email protected]>
Date: 2026-07-16 (Thu, 16 Jul 2026)
Changed paths:
M DynamicTablesPkg/Include/SmbiosTableGenerator.h
M DynamicTablesPkg/Library/Smbios/SmbiosType16Lib/SmbiosType16Generator.c
M DynamicTablesPkg/Library/Smbios/SmbiosType17Lib/SmbiosType17Generator.c
M DynamicTablesPkg/Library/Smbios/SmbiosType19Lib/SmbiosType19Generator.c
M DynamicTablesPkg/Library/Smbios/SmbiosType20Lib/SmbiosType20Generator.c
M DynamicTablesPkg/Library/Smbios/SmbiosType26Lib/SmbiosType26Generator.c
M DynamicTablesPkg/Library/Smbios/SmbiosType27Lib/SmbiosType27Generator.c
M DynamicTablesPkg/Library/Smbios/SmbiosType28Lib/SmbiosType28Generator.c
M DynamicTablesPkg/Library/Smbios/SmbiosType29Lib/SmbiosType29Generator.c
M DynamicTablesPkg/Library/Smbios/SmbiosType44Lib/SmbiosType44Generator.c
M DynamicTablesPkg/Library/Smbios/SmbiosType4Lib/SmbiosType4Generator.c
M DynamicTablesPkg/Library/Smbios/SmbiosType7Lib/SmbiosType7Generator.c
Log Message:
-----------
DynamicTablesPkg/Smbios: Use EFIAPI for extended callbacks
The SMBIOS_TABLE_GENERATOR_BUILD_TABLEEX and
SMBIOS_TABLE_GENERATOR_FREE_TABLEEX callback types do not specify EFIAPI.
The Type 37 implementations specify it, while the other extended callback
implementations follow the omission in the shared types.
For X64 GCC builds, BaseTools/Conf/tools_def.template adds
-DEFIAPI=__attribute__((ms_abi)). Therefore, callbacks marked with EFIAPI
use the Microsoft x64 ABI, while unannotated callback types use the
compiler default ABI. If the two sides differ, the caller and callee use
different argument registers, and GCC rejects the function pointer
assignment.
This mismatch remained hidden while the standalone Type 37 generator was
built only for AARCH64. Moving the SMBIOS generators to the common
component section adds X64 build coverage and exposes it.
Add EFIAPI to the extended callback types and all matching implementations.
This follows the ACPI generator callback convention and provides the ABI
prerequisite for expanding the SMBIOS standalone build coverage.
Signed-off-by: Dongyan Qian <[email protected]>
Commit: f5254b5c23fbe9e91941138c915132f2a0217d36
https://github.com/tianocore/edk2/commit/f5254b5c23fbe9e91941138c915132f2a0217d36
Author: Dongyan Qian <[email protected]>
Date: 2026-07-16 (Thu, 16 Jul 2026)
Changed paths:
M DynamicTablesPkg/Library/Smbios/SmbiosType16Lib/SmbiosType16Generator.c
M DynamicTablesPkg/Library/Smbios/SmbiosType17Lib/SmbiosType17Generator.c
M DynamicTablesPkg/Library/Smbios/SmbiosType19Lib/SmbiosType19Generator.c
M DynamicTablesPkg/Library/Smbios/SmbiosType44Lib/SmbiosType44Generator.c
M DynamicTablesPkg/Library/Smbios/SmbiosType4Lib/SmbiosType4Generator.c
M DynamicTablesPkg/Library/Smbios/SmbiosType7Lib/SmbiosType7Generator.c
Log Message:
-----------
DynamicTablesPkg/Smbios: Fix X64 build warnings
Moving the standalone SMBIOS generators to the common component section
adds them to the X64 build. VS2022 reports narrowing warnings for native-
width, wide, or enum values converted to fixed-width SMBIOS fields. These
warnings are treated as errors under /WX.
Use UINTN for the Type 7 table-list count and index. Add bounds checks for
the Type 4 processor counts and Type 7 cache level where CM-derived values
could exceed the corresponding SMBIOS fields, and make the remaining
intended conversions explicit in the Type 4, Type 7, Type 16, Type 17,
Type 19, and Type 44 generators.
This rejects out-of-range processor counts and cache levels instead of
silently truncating them, while preserving the existing behavior for valid
configuration data.
Signed-off-by: Dongyan Qian <[email protected]>
Commit: 80462803041b11e6eabf20e08e1dbc169d3774f2
https://github.com/tianocore/edk2/commit/80462803041b11e6eabf20e08e1dbc169d3774f2
Author: Dongyan Qian <[email protected]>
Date: 2026-07-16 (Thu, 16 Jul 2026)
Changed paths:
M DynamicTablesPkg/DynamicTables.dsc.inc
Log Message:
-----------
DynamicTablesPkg: Move SMBIOS generators to common components
The SMBIOS generators are architecture-neutral standalone components. They
are currently listed only for AARCH64. Move them to the existing common
component section so every supported architecture receives the same package
build coverage.
Keep the DynamicTableFactoryDxe registration architecture-specific.
Its NULL library list determines the generators registered at runtime.
Signed-off-by: Dongyan Qian <[email protected]>
Commit: 3a4556803d3a02dc0b298c489013e04082a9617e
https://github.com/tianocore/edk2/commit/3a4556803d3a02dc0b298c489013e04082a9617e
Author: Dongyan Qian <[email protected]>
Date: 2026-07-16 (Thu, 16 Jul 2026)
Changed paths:
M DynamicTablesPkg/Drivers/DynamicTableManagerDxe/DynamicTableManagerDxe.inf
A
DynamicTablesPkg/Drivers/DynamicTableManagerDxe/LoongArch64/LoongArch64DynamicTableManagerDxe.c
M DynamicTablesPkg/DynamicTables.dsc.inc
M DynamicTablesPkg/DynamicTablesPkg.dsc
Log Message:
-----------
DynamicTablesPkg: Enable LoongArch64 table generation
Add LOONGARCH64 support to DynamicTablesPkg by adding it to the existing
common component build list, adding the LoongArch64 DynamicTableManagerDxe
source, and enabling the SMBIOS generators used by current LoongArch
platforms.
Keep DynamicTableFactoryDxe generator registration architecture-specific.
The LoongArch64 factory instance links selected NULL generator libraries so
their constructors register the generators at runtime.
LoongArch64-specific tables can use AcpiRawLib initially and move to
dedicated LoongArch64 generators in follow-up patches.
Signed-off-by: Dongyan Qian <[email protected]>
Compare: https://github.com/tianocore/edk2/compare/1dc6b5e3dd6d...3a4556803d3a
To unsubscribe from these emails, change your notification settings at
https://github.com/tianocore/edk2/settings/notifications
_______________________________________________
edk2-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-commits