All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3 00/12] tpm: Add wolfTPM library support for TPM 2.0
@ 2026-05-09  0:04 Aidan Garske
  2026-05-09  0:04 ` [PATCH v3 01/12] tpm: export tpm_show_device, tpm_set_device, and get_tpm Aidan Garske
                   ` (12 more replies)
  0 siblings, 13 replies; 18+ messages in thread
From: Aidan Garske @ 2026-05-09  0:04 UTC (permalink / raw)
  To: u-boot; +Cc: David Garske, Ilias Apalodimas

Hi all,

This is v3 of the wolfTPM TPM 2.0 stack integration for U-Boot.

wolfTPM (https://github.com/wolfSSL/wolfTPM) is a portable, GPLv2 TPM 2.0
library that provides a full TPM 2.0 command set, an SPI/MMIO HAL, and
firmware-update support for Infineon SLB9672/SLB9673 hardware.  This
series wires it into U-Boot as an optional backend behind the existing
'tpm2' command, alongside support for QEMU+swtpm, sandbox emulation, and
real Raspberry Pi 4 + Infineon SLB9672 hardware.

Branch (full 14-commit history including the subtree squash + merge):
  https://github.com/aidangarske/u-boot wolftpm-v2-patches

Note on the subtree commits omitted from this email thread:
  The branch above contains 14 commits; the email series is 12 patches.
  Two commits are deliberately not sent to the list:

    * "Squashed 'lib/wolftpm/' content from commit 664db130d57"
        - the parentless squash commit produced by `git subtree add`.
          Its diff is ~3.4MB / ~90k lines and would be rejected by the
          mailing list on size.
    * "Merge commit 'd42fd7b146...' as 'lib/wolftpm'"
        - the corresponding subtree merge commit. Merges have no patch
          form and are routinely omitted by `git format-patch`.

  Please pull from the branch above (or wolfssl/wolfTPM @ 664db130d57)
  to inspect the imported wolfTPM source. Subsequent updates will go
  via tools/update-subtree.sh, matching how mbedTLS, lwIP, and
  dts/upstream are maintained in tree.

Changes since v2:
  - Replaced the lib/wolftpm git submodule with a git subtree import
    (squash + merge), matching the convention used for mbedTLS, lwIP,
    and dts/upstream.  tools/update-subtree.sh is updated to know
    about the wolftpm subtree (path lib/wolftpm, upstream
    https://github.com/wolfssl/wolfTPM.git).
    [feedback: Ilias Apalodimas]
  - Reverted the changes to include/linux/byteorder/generic.h.  The
    redefinition workaround for cpu_to_beXX / beXX_to_cpu now lives
    on the wolfTPM side: include/configs/user_settings.h pulls in
    <asm/byteorder.h> up front so U-Boot's macros are defined before
    wolfTPM's #ifndef-guarded fallbacks in tpm2_packet.h.
    [feedback: Ilias Apalodimas]

Testing:
  - QEMU arm64 + swtpm Python test framework
    (./test/py/test.py --bd qemu_arm64 -k "test_wolftpm and not ut_cmd"):
    19 passed, 2 skipped (matching doc/usage/cmd/wolftpm.rst).
  - Manual QEMU arm64 + swtpm walkthrough per
    doc/usage/cmd/wolftpm.rst section "Building and Running wolfTPM
    with U-Boot using QEMU": tpm2 help/info/autostart/startup/
    get_capability/pcr_read/pcr_print/caps all return expected output.
  - Raspberry Pi 4 + Infineon SLB9672 (real hardware): all wolfTPM
    cmd tests pass, including firmware update path.

v2 thread:
  https://lore.kernel.org/u-boot/?q=PATCH+v2+tpm+wolfTPM

Aidan Garske (12):
  tpm: export tpm_show_device, tpm_set_device, and get_tpm
  include/hash: add SHA384 hash wrapper declaration for wolfTPM
  spi: add BCM2835/BCM2711 hardware SPI controller driver
  dts: add TPM device tree nodes for RPi4, QEMU, and sandbox
  tpm: add wolfTPM build rules and Kconfig
  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

--
2.47.3


^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2026-05-11 10:09 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-05-09  0:04 [PATCH v3 00/12] tpm: Add wolfTPM library support for TPM 2.0 Aidan Garske
2026-05-09  0:04 ` [PATCH v3 01/12] tpm: export tpm_show_device, tpm_set_device, and get_tpm Aidan Garske
2026-05-09  0:04 ` [PATCH v3 02/12] include/hash: add SHA384 hash wrapper declaration for wolfTPM Aidan Garske
2026-05-09  0:04 ` [PATCH v3 03/12] spi: add BCM2835/BCM2711 hardware SPI controller driver Aidan Garske
2026-05-11  8:50   ` Peter Robinson
2026-05-09  0:04 ` [PATCH v3 04/12] dts: add TPM device tree nodes for RPi4, QEMU, and sandbox Aidan Garske
2026-05-11  8:26   ` Peter Robinson
2026-05-09  0:04 ` [PATCH v3 05/12] tpm: add wolfTPM build rules and Kconfig Aidan Garske
2026-05-09  0:04 ` [PATCH v3 06/12] tpm: add wolfTPM headers and SHA384 glue code Aidan Garske
2026-05-09  0:04 ` [PATCH v3 07/12] tpm: add wolfTPM driver helpers and Kconfig options Aidan Garske
2026-05-09  0:04 ` [PATCH v3 08/12] cmd: refactor tpm2 command into frontend/backend architecture Aidan Garske
2026-05-09  0:04 ` [PATCH v3 09/12] tpm: add sandbox TPM SPI emulator Aidan Garske
2026-05-09  0:04 ` [PATCH v3 10/12] test: add wolfTPM C unit tests and Python integration tests Aidan Garske
2026-05-09  0:04 ` [PATCH v3 11/12] doc: add wolfTPM documentation Aidan Garske
2026-05-09  0:04 ` [PATCH v3 12/12] configs: enable wolfTPM in rpi_4_defconfig Aidan Garske
2026-05-11  8:22   ` Peter Robinson
2026-05-11  9:15 ` [PATCH v3 00/12] tpm: Add wolfTPM library support for TPM 2.0 Peter Robinson
2026-05-11 10:09   ` Peter Robinson

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.