Hi David, Apologies for the very late reply, but I am overloaded and this is going some time to review.
For starters the CI failed to pass the docs. Please have a look and update them properly https://source.denx.de/u-boot/custodians/u-boot-tpm/-/pipelines/30029 Cheers /Ilias On Mon Mar 16, 2026 at 8:14 PM EET, David Garske wrote: > *** BLURB HERE *** > > Aidan (12): > tpm: export tpm_show_device, tpm_set_device, and get_tpm > include: add byteorder macro guards and SHA384 hash wrapper > spi: add BCM2835/BCM2711 hardware SPI controller driver > dts: add TPM device tree nodes for RPi4, QEMU, and sandbox > tpm: add wolfTPM library as git submodule > tpm: add wolfTPM headers and SHA384 glue code > tpm: add wolfTPM driver helpers and Kconfig options > cmd: refactor tpm2 command into frontend/backend architecture > tpm: add sandbox TPM SPI emulator > test: add wolfTPM C unit tests and Python integration tests > doc: add wolfTPM documentation > configs: enable wolfTPM in rpi_4_defconfig > > .gitmodules | 3 + > README | 3 + > README.wolftpm.md | 154 +++ > arch/arm/dts/bcm2711-rpi-4-b-u-boot.dtsi | 54 + > arch/arm/dts/bcm2711-rpi-4-b.dts | 20 + > arch/arm/dts/qemu-arm64.dts | 4 + > arch/sandbox/dts/sandbox.dtsi | 11 + > cmd/Kconfig | 11 + > cmd/Makefile | 10 +- > cmd/native_tpm2.c | 516 ++++++++++ > cmd/tpm-common.c | 4 +- > cmd/tpm-v2.c | 559 ++--------- > cmd/tpm2-backend.h | 66 ++ > cmd/wolftpm.c | 1170 ++++++++++++++++++++++ > configs/rpi_4_defconfig | 29 +- > doc/usage/cmd/wolftpm.rst | 635 ++++++++++++ > drivers/mtd/spi/sandbox.c | 30 +- > drivers/spi/Kconfig | 9 + > drivers/spi/Makefile | 1 + > drivers/spi/bcm2835_spi.c | 431 ++++++++ > drivers/tpm/Kconfig | 44 + > drivers/tpm/Makefile | 9 + > drivers/tpm/tpm_spi_sandbox.c | 410 ++++++++ > drivers/tpm/wolftpm_common.c | 137 +++ > include/configs/user_settings.h | 118 +++ > include/hash.h | 18 + > include/linux/byteorder/generic.h | 31 +- > include/tpm-common.h | 22 + > include/wolftpm.h | 34 + > lib/Kconfig | 13 + > lib/Makefile | 18 + > lib/wolftpm | 1 + > lib/wolftpm.c | 56 ++ > test/cmd/Makefile | 1 + > test/cmd/wolftpm.c | 364 +++++++ > test/py/tests/test_wolftpm.py | 375 +++++++ > 36 files changed, 4861 insertions(+), 510 deletions(-) > create mode 100644 .gitmodules > create mode 100644 README.wolftpm.md > create mode 100644 arch/arm/dts/bcm2711-rpi-4-b-u-boot.dtsi > create mode 100644 cmd/native_tpm2.c > create mode 100644 cmd/tpm2-backend.h > create mode 100644 cmd/wolftpm.c > create mode 100644 doc/usage/cmd/wolftpm.rst > create mode 100644 drivers/spi/bcm2835_spi.c > create mode 100644 drivers/tpm/tpm_spi_sandbox.c > create mode 100644 drivers/tpm/wolftpm_common.c > create mode 100644 include/configs/user_settings.h > create mode 100644 include/wolftpm.h > create mode 160000 lib/wolftpm > create mode 100644 lib/wolftpm.c > create mode 100644 test/cmd/wolftpm.c > create mode 100644 test/py/tests/test_wolftpm.py

