Skip to content

C/C++ definitions of multiple firmware specifications with corresponding type information

License

KNSoft/KNSoft.FirmwareSpec

Repository files navigation

English (en-US) 简体中文 (zh-CN)

 

KNSoft.FirmwareSpec

NuGet Downloads GitHub Actions Workflow Status PR Welcome GitHub License

KNSoft.FirmwareSpec contains C/C++ definitions of multiple firmware specifications and corresponding type information, compatible with MSVC and GCC compilers.

Specification Definition Type information Sample program
SMBIOS reference specification SMBIOS.h SMBIOS.TypeInfo.h SmbiosDecode
ACPI Specification (TODO) - -
CPUID CPUID.h (WIP) (WIP)

TypeInfoGenerator generates type information (e.g. SMBIOS.TypeInfo.h) according to the corresponding specification definitions (e.g. SMBIOS.h), type information is very useful for tools like dmidecode to resolve each of structure fields.

GitHub Action compiles and runs sample programs, artifact contains them and theirs text outputs.

Usage

NuGet package KNSoft.FirmwareSpec is out-of-the-box, install to project and include wanted header, for example:

#include <KNSoft/FirmwareSpec/SMBIOS.h>             // SMBIOS reference specification
#include <KNSoft/FirmwareSpec/SMBIOS.TypeInfo.h>    // Type information of SMBIOS reference specification

#include <KNSoft/FirmwareSpec/CPUID.h>              // CPUID

We always keep our definitions up-to-date, support version control by using macro (e.g. SMBIOS_VERSION), see corresponding header for more information.

Caution

In beta stage, may contains some bugs and various issues, should be used with caution.

You could report issue or send PR to make this project better.

License

KNSoft.FirmwareSpec is licensed under the MIT license.

About

C/C++ definitions of multiple firmware specifications with corresponding type information

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published