[PATCH v5 0/6] Implement all missing SMBIOS types required by distro tooling

Raymond Mao raymondmaoca at gmail.com
Thu Feb 12 15:53:10 CET 2026


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?
Do you mind sharing your remote working branch, so that I can have a
cross-check?

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