[PATCH 00/10] SMBIOS improvements
Caleb Connolly
caleb.connolly at linaro.org
Mon Aug 19 13:56:17 CEST 2024
Hi Raymond,
I haven't managed to root cause it yet, but this series seems to make
the RB3 Gen 2 Qualcomm board hang during relocation.
How early post-relocation does any code here get called?
On 16/08/2024 17:46, Raymond Mao wrote:
> Motivations for changes:
> Current SMBIOS library and command-line tool is not fully matching with
> the requirements:
> 1. Missing support for other mandatory types (#7, #9, #16, #17, #19).
> 2. Only a few platforms support SMBIOS node from the device tree.
> 3. Values of some fields are hardcoded in the library other than fetching
> from the device hardware.
> 4. Embedded data with dynamic length is not supported (E.g. Contained
> Object Handles in Type #2 and Contained Elements in Type #3)
>
> Changes:
> 1. Refactor the SMBIOS library and command-line tool to better align with
> the SMBIOS spec.
> 2. Create an arch-specific driver for all aarch64-based platforms to fetch
> SMBIOS private data from the device hardware.
> 3. Create a sysinfo driver to poppulate platform SMBIOS private data.
> 4. Put device tree SMBIOS node as a fallback solution when SMBIOS data is
> missing from sysinfo driver.
> 5. Add support for Type #7 (Cache Information) and link its handles to
> Type #4.
>
> Once this patch is acceptted, subsequent patch sets will add other missing
> types (#9, #16, #17, #19).
>
> Raymond Mao (10):
> sysinfo: Add sysinfo API for accessing data area
> sysinfo: Add sysinfo driver and data structure for SMBIOS
> smbios: Refactor SMBIOS library
> smbios: ignore the non-existence of platform sysinfo detect
> armv8: Add arch-specific sysinfo driver
> sysinfo: Add sysinfo driver for SMBIOS type 7
> smbios: Add support to SMBIOS type 7
> armv8: Add sysinfo driver for cache information
> configs: Enable sysinfo for QEMU Arm64
> tests: update smbios pytest
>
> arch/arm/cpu/armv8/Makefile | 5 +
> arch/arm/cpu/armv8/sysinfo.c | 391 ++++++++++++++++++++++++++
> cmd/smbios.c | 350 ++++++++++++++++++++++-
> configs/qemu_arm64_defconfig | 2 +
> drivers/misc/Kconfig | 2 +-
> drivers/sysinfo/Makefile | 1 +
> drivers/sysinfo/smbios_plat.c | 442 +++++++++++++++++++++++++++++
> drivers/sysinfo/smbios_plat.h | 131 +++++++++
> drivers/sysinfo/sysinfo-uclass.c | 20 ++
> include/smbios.h | 240 ++++++++++++++--
> include/sysinfo.h | 124 ++++++++-
> lib/Makefile | 2 +
> lib/smbios.c | 461 ++++++++++++++++++++++++++-----
> test/py/tests/test_smbios.py | 2 +-
> 14 files changed, 2058 insertions(+), 115 deletions(-)
> create mode 100644 arch/arm/cpu/armv8/sysinfo.c
> create mode 100644 drivers/sysinfo/smbios_plat.c
> create mode 100644 drivers/sysinfo/smbios_plat.h
>
--
// Caleb (they/them)
More information about the U-Boot
mailing list