[PATCH v5 0/6] Implement all missing SMBIOS types required by distro tooling
Ilias Apalodimas
ilias.apalodimas at linaro.org
Fri Feb 13 07:44:24 CET 2026
On Thu, 12 Feb 2026 at 16:53, Raymond Mao <raymondmaoca at gmail.com> wrote:
>
> Hi Ilias,
>
> On Thu, Feb 12, 2026 at 7:45 AM Ilias Apalodimas
> <ilias.apalodimas at linaro.org> wrote:
> >
> > That's weird.
> >
> > I tried again on -next and got this
> > Handle 0x0006, DMI type 9, 24 bytes
> > System Slot Information
> > Designation: Not Specified
> > Type: Unknown
> > Data Bus Width: Unknown
> > Current Usage: Unknown
> > Length: Unknown
> > Characteristics: Unknown
> > Bus Address: 0000:00:00.0
> > Data Bus Width (Base): 0
> > Peer Devices: 0
> > Height: Not applicable
> >
> > Handle 0x0007, DMI type 16, 23 bytes
> > Physical Memory Array
> > Location: Unknown
> > Use: Unknown
> > Error Correction Type: Unknown
> > Maximum Capacity: 0 kB
> > Error Information Handle: Not Provided
> > Number Of Devices: 1
> >
> > Handle 0x0008, DMI type 17, 104 bytes
> > Memory Device
> > Array Handle: 0x0000
> > Error Information Handle: Not Provided
> > Total Width: Unknown
> > Data Width: Unknown
> > Size: No Module Installed
> > Form Factor: <OUT OF SPEC>
> > Set: None
> > Locator: <BAD INDEX>
> > Bank Locator: <BAD INDEX>
> > Type: Unknown
> > Type Detail: Other Unknown Fast-paged Static Column Pseudo-static
> > RAMBus Synchronous
> >
> > Handle 0x0009, DMI type 19, 31 bytes
> > Memory Array Mapped Address
> > Starting Address: 0x00000000000
> > Ending Address: 0x000000003FF
> > Range Size: 1 kB
> > Physical Array Handle: 0x0000
> > Partition Width: 1
> >
> > Handle 0x000A, DMI type 32, 11 bytes
> > System Boot Information
> > Status: No errors detected
> >
> > I am using a debian unstable with a 6.18 kernel
> >
>
> It looks that your log is not in a correct format, each header should
> start with:
> 'Handle <handle_id>, DMI type <type_num>, <size> bytes at <address>'
> But your one is missing 'at <address>'.
>
> How did you test it and get it printed? Are you using 'smbios' cmd in
> the u-boot console?
No, that's probably the difference. I am booting to linux and test
with 'dmidecode'
> Do you mind sharing your remote working branch, so that I can have a
> cross-check?
I don't but it's really just the -next branch with your patches. I
think the difference is u-boots tool vs linux
Regards
/Ilias
>
> Regards,
> Raymond
>
>
> > Cheers
> > /Ilias
> >
> > On Thu, 12 Feb 2026 at 02:24, Raymond Mao <raymondmaoca at gmail.com> wrote:
> > >
> > > Hi Ilias
> > >
> > > On Wed, Feb 11, 2026 at 10:20 AM Ilias Apalodimas
> > > <ilias.apalodimas at linaro.org> wrote:
> > > >
> > > > On Wed, 11 Feb 2026 at 16:30, Raymond Mao <raymondmaoca at gmail.com> wrote:
> > > > >
> > > > > Hi Ilias,
> > > > >
> > > > > On Wed, Feb 11, 2026 at 4:32 AM Ilias Apalodimas
> > > > > <ilias.apalodimas at linaro.org> wrote:
> > > > > >
> > > > > > Hi all,
> > > > > >
> > > > > > Apologies for the late reply.
> > > > > >
> > > > > > I did test the patches but I see something weird on smbios type 17.
> > > > > >
> > > > > > Handle 0x0008, DMI type 17, 104 bytes
> > > > > > Memory Device
> > > > > > Array Handle: 0x0000
> > > > > > Error Information Handle: Not Provided
> > > > > > Total Width: Unknown
> > > > > > Data Width: Unknown
> > > > > > Size: No Module Installed
> > > > > > Form Factor: <OUT OF SPEC>
> > > > > > Set: None
> > > > > > Locator: <BAD INDEX>
> > > > > > Bank Locator: <BAD INDEX>
> > > > > > Type: Unknown
> > > > > > Type Detail: Other Unknown Fast-paged Static Column
> > > > > > Pseudo-static RAMBus Synchronous
> > > > > > Speed: 512 MT/s
> > > > > > Manufacturer: <BAD INDEX>
> > > > > > Serial Number: Not Specified
> > > > > > Asset Tag: Not Specified
> > > > > > Part Number: Not Specified
> > > > > > Rank: Unknown
> > > > > > Configured Memory Speed: Unknown
> > > > > > Minimum Voltage: Unknown
> > > > > > Maximum Voltage: Unknown
> > > > > > Configured Voltage: Unknown
> > > > > > Memory Technology: <OUT OF SPEC>
> > > > > > Memory Operating Mode Capability: None
> > > > > > Firmware Version: Not Specified
> > > > > > Module Manufacturer ID: Bank 3, Hex 0x04
> > > > > > Module Product ID: Unknown
> > > > > > Memory Subsystem Controller Manufacturer ID: Unknown
> > > > > > Memory Subsystem Controller Product ID: Unknown
> > > > > > Non-Volatile Size: 16383 PB
> > > > > > Volatile Size: Unknown
> > > > > > Cache Size: Unknown
> > > > > > Logical Size: Unknown
> > > > > >
> > > > > > Any idea what <BAD INDEX> and <OUT OF SPEC> represent?
> > > > > > I tested this in QEMU
> > > > > >
> > > > >
> > > > > I just retested it by below qemu cmd after I rebased it to the current master:
> > > > > qemu-system-aarch64 -bios u-boot.bin -machine virt -cpu cortex-a57 -m
> > > > > 2G -nographic
> > > > >
> > > > > Below is the type17 I got:
> > > > > ```
> > > > > Handle 0x0008, DMI type 17, 104 bytes at 0xbe678141
> > > > > Memory Device:
> > > > > Physical Memory Array Handle: 0x0000
> > > > > Memory Error Information Handle: 0xfffe
> > > > > Total Width: 0x0000
> > > > > Data Width: 0x0000
> > > > > Size: 0xffff
> > > > > Form Factor: Unknown
> > > > > Device Set: 0x00ff
> > > > > Device Locator:
> > > > > Bank Locator:
> > > > > Memory Type: Unknown
> > > > > Type Detail: 0x0004
> > > > > Speed: 0x0000
> > > > > Manufacturer:
> > > > > Serial Number:
> > > > > Asset Tag:
> > > > > Part Number:
> > > > > Attributes: 0x0000
> > > > > Extended Size: 0x00000000
> > > > > Configured Memory Speed: 0x0000
> > > > > Minimum voltage: 0x0000
> > > > > Maximum voltage: 0x0000
> > > > > Configured voltage: 0x0000
> > > > > Memory Technology: Unknown
> > > > > Memory Operating Mode Capability: 0x0004
> > > > > Firmware Version:
> > > > > Module Manufacturer ID: 0x0000
> > > > > Module Product ID: 0x0000
> > > > > Memory Subsystem Controller Manufacturer ID: 0x0000
> > > > > Memory Subsystem Controller Product ID: 0x0000
> > > > > Non-volatile Size: 0xffffffffffffffff
> > > > > Volatile Size: 0xffffffffffffffff
> > > > > Cache Size: 0xffffffffffffffff
> > > > > Logical Size: 0xffffffffffffffff
> > > > > Extended Speed: 0x0000
> > > > > Extended Configured Memory Speed: 0x0000
> > > > > PMIC0 Manufacturer ID: 0x0000
> > > > > PMIC0 Revision Number: 0x0000
> > > > > RCD Manufacturer ID: 0x0000
> > > > > RCD Revision Number: 0x0000
> > > > > ```
> > > > >
> > > > > If you didn't use smbios_generic.dtsi to insert new nodes, or add new
> > > > > 'memory@' / 'memory-controller@' nodes into your DT, you should get
> > > > > the same result as mine by default.
> > > > > If you still can not get it, can you give me your build instruction
> > > > > and qemu cmd for reproducing?
> > > >
> > > > I used qemu_arm64_lwip_defconfig
> > > >
> > > > qemu-system-aarch64 -m 1024 -smp 2 -nographic -cpu cortex-a57 \
> > > > -machine virt,secure=off -bios u-boot.bin -chardev
> > > > socket,id=chrtpm,path=/tmp/mytpm1/swtpm-sock \
> > > > -tpmdev emulator,id=tpm0,chardev=chrtpm -device
> > > > tpm-tis-device,tpmdev=tpm0 \
> > > > -device virtio-rng-pci -drive
> > > > id=os,if=none,file=../debian.qcow2 -device virtio-blk-device,drive=os
> > > > is the command line
> > > >
> > >
> > > I did these steps with a clean build (exactly the same as your ones):
> > > $ make O=out_lwip qemu_arm64_lwip_defconfig
> > > $ CROSS_COMPILE=aarch64-none-linux-gnu- make O=out_lwip -j4 all
> > > $ cd out_lwip
> > > $ killall swtpm
> > > $ rm -rf /tmp/mytpm1
> > > $ mkdir -p /tmp/mytpm1
> > > $ swtpm_setup --tpmstate /tmp/mytpm1 --tpm2 --pcr-banks sha256
> > > $ swtpm socket --tpmstate dir=/tmp/mytpm1 --ctrl
> > > type=unixio,path=/tmp/mytpm1/swtpm-sock --log level=40 --tpm2 -t -d
> > > $ qemu-system-aarch64 -m 1024 -smp 2 -nographic -cpu cortex-a57 \
> > > -machine virt,secure=off -bios u-boot.bin -chardev
> > > socket,id=chrtpm,path=/tmp/mytpm1/swtpm-sock \
> > > -tpmdev emulator,id=tpm0,chardev=chrtpm -device tpm-tis-device,tpmdev=tpm0 \
> > > -device virtio-rng-pci -drive id=os,if=none,file=../debian.qcow2
> > > -device virtio-blk-device,drive=os
> > >
> > > SMBIOS type17 shows no difference:
> > > ```
> > > Handle 0x0008, DMI type 17, 104 bytes at 0x7e64b141
> > > Memory Device:
> > > Physical Memory Array Handle: 0x0000
> > > Memory Error Information Handle: 0xfffe
> > > Total Width: 0x0000
> > > Data Width: 0x0000
> > > Size: 0xffff
> > > Form Factor: Unknown
> > > Device Set: 0x00ff
> > > Device Locator:
> > > Bank Locator:
> > > Memory Type: Unknown
> > > Type Detail: 0x0004
> > > Speed: 0x0000
> > > Manufacturer:
> > > Serial Number:
> > > Asset Tag:
> > > Part Number:
> > > Attributes: 0x0000
> > > Extended Size: 0x00000000
> > > Configured Memory Speed: 0x0000
> > > Minimum voltage: 0x0000
> > > Maximum voltage: 0x0000
> > > Configured voltage: 0x0000
> > > Memory Technology: Unknown
> > > Memory Operating Mode Capability: 0x0004
> > > Firmware Version:
> > > Module Manufacturer ID: 0x0000
> > > Module Product ID: 0x0000
> > > Memory Subsystem Controller Manufacturer ID: 0x0000
> > > Memory Subsystem Controller Product ID: 0x0000
> > > Non-volatile Size: 0xffffffffffffffff
> > > Volatile Size: 0xffffffffffffffff
> > > Cache Size: 0xffffffffffffffff
> > > Logical Size: 0xffffffffffffffff
> > > Extended Speed: 0x0000
> > > Extended Configured Memory Speed: 0x0000
> > > PMIC0 Manufacturer ID: 0x0000
> > > PMIC0 Revision Number: 0x0000
> > > RCD Manufacturer ID: 0x0000
> > > RCD Revision Number: 0x0000
> > > ```
> > >
> > > By the way, I don't think it has any relationship with swtpm and the
> > > linux distro, so I also simply tried:
> > > $ qemu-system-aarch64 -m 1024 -smp 2 -nographic -cpu cortex-a57 \
> > > -machine virt,secure=off -bios u-boot.bin
> > >
> > > All works with the same type17 output.
> > >
> > > Regards,
> > > Raymond
> > >
> > > > Cheers
> > > > /Ilias
> > > >
> > > >
> > > > >
> > > > > Regards,
> > > > > Raymond
> > > > >
> > > > >
> > > > > > Regards
> > > > > > /Ilias
> > > > > >
> > > > > > On Wed, 4 Feb 2026 at 18:13, Tom Rini <trini at konsulko.com> wrote:
> > > > > > >
> > > > > > > On Wed, Feb 04, 2026 at 11:12:42AM -0500, Raymond Mao wrote:
> > > > > > >
> > > > > > > > Hi,
> > > > > > > >
> > > > > > > > Anyone have a chance to review this patch set? It is the last piece of
> > > > > > > > work to support all required SMBIOS types in U-Boot.
> > > > > > >
> > > > > > > I've been waiting for Ilias or Heinrich to have time to look at this.
> > > > > > >
> > > > > > > --
> > > > > > > Tom
More information about the U-Boot
mailing list