{"id":2235241,"url":"http://patchwork.ozlabs.org/api/1.2/covers/2235241/?format=json","web_url":"http://patchwork.ozlabs.org/project/uboot/cover/cover.1778277334.git.aidan@wolfssl.com/","project":{"id":18,"url":"http://patchwork.ozlabs.org/api/1.2/projects/18/?format=json","name":"U-Boot","link_name":"uboot","list_id":"u-boot.lists.denx.de","list_email":"u-boot@lists.denx.de","web_url":null,"scm_url":null,"webscm_url":null,"list_archive_url":"","list_archive_url_format":"","commit_url_format":""},"msgid":"<cover.1778277334.git.aidan@wolfssl.com>","list_archive_url":null,"date":"2026-05-09T00:04:07","name":"[v3,00/12] tpm: Add wolfTPM library support for TPM 2.0","submitter":{"id":92785,"url":"http://patchwork.ozlabs.org/api/1.2/people/92785/?format=json","name":"Aidan Garske","email":"aidan@wolfssl.com"},"mbox":"http://patchwork.ozlabs.org/project/uboot/cover/cover.1778277334.git.aidan@wolfssl.com/mbox/","series":[{"id":503464,"url":"http://patchwork.ozlabs.org/api/1.2/series/503464/?format=json","web_url":"http://patchwork.ozlabs.org/project/uboot/list/?series=503464","date":"2026-05-09T00:04:07","name":"tpm: Add wolfTPM library support for TPM 2.0","version":3,"mbox":"http://patchwork.ozlabs.org/series/503464/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/covers/2235241/comments/","headers":{"Return-Path":"<u-boot-bounces@lists.denx.de>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=wolfssl-com.20251104.gappssmtp.com\n header.i=@wolfssl-com.20251104.gappssmtp.com header.a=rsa-sha256\n header.s=20251104 header.b=Eqa0Qy6M;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=lists.denx.de\n (client-ip=2a01:238:438b:c500:173d:9f52:ddab:ee01; helo=phobos.denx.de;\n envelope-from=u-boot-bounces@lists.denx.de; receiver=patchwork.ozlabs.org)","phobos.denx.de;\n dmarc=fail (p=none dis=none) header.from=wolfssl.com","phobos.denx.de;\n spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de","phobos.denx.de;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=wolfssl-com.20251104.gappssmtp.com\n header.i=@wolfssl-com.20251104.gappssmtp.com header.b=\"Eqa0Qy6M\";\n\tdkim-atps=neutral","phobos.denx.de;\n dmarc=fail (p=none dis=none) header.from=wolfssl.com","phobos.denx.de;\n spf=pass smtp.mailfrom=aidan@wolfssl.com"],"Received":["from phobos.denx.de (phobos.denx.de\n [IPv6:2a01:238:438b:c500:173d:9f52:ddab:ee01])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4gC6bC0J1Pz1yCg\n\tfor <incoming@patchwork.ozlabs.org>; Sat, 09 May 2026 10:40:22 +1000 (AEST)","from h2850616.stratoserver.net (localhost [IPv6:::1])\n\tby phobos.denx.de (Postfix) with ESMTP id DFC7684CE4;\n\tSat,  9 May 2026 02:40:13 +0200 (CEST)","by phobos.denx.de (Postfix, from userid 109)\n id 1238F84E02; Sat,  9 May 2026 02:04:39 +0200 (CEST)","from mail-dl1-x122c.google.com (mail-dl1-x122c.google.com\n [IPv6:2607:f8b0:4864:20::122c])\n (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits))\n (No client certificate requested)\n by phobos.denx.de (Postfix) with ESMTPS id 7387084E02\n for <u-boot@lists.denx.de>; Sat,  9 May 2026 02:04:34 +0200 (CEST)","by mail-dl1-x122c.google.com with SMTP id\n a92af1059eb24-12db2e415a7so1869579c88.1\n for <u-boot@lists.denx.de>; Fri, 08 May 2026 17:04:34 -0700 (PDT)","from localhost.localdomain ([207.231.76.218])\n by smtp.gmail.com with ESMTPSA id\n a92af1059eb24-132787673ffsm5505030c88.15.2026.05.08.17.04.31\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Fri, 08 May 2026 17:04:31 -0700 (PDT)"],"X-Spam-Checker-Version":"SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de","X-Spam-Level":"*","X-Spam-Status":"No, score=1.4 required=5.0 tests=BAYES_00,DKIM_SIGNED,\n DKIM_VALID,RCVD_IN_DNSWL_BLOCKED,RCVD_IN_SBL_CSS,SPF_HELO_NONE,\n SPF_PASS autolearn=no autolearn_force=no version=3.4.2","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=wolfssl-com.20251104.gappssmtp.com; s=20251104; t=1778285072; x=1778889872;\n darn=lists.denx.de;\n h=content-transfer-encoding:mime-version:message-id:date:subject:cc\n :to:from:from:to:cc:subject:date:message-id:reply-to;\n bh=nxuCgzKOp0P3yffVO3FtiXYPHygY+ysu+DqXEnnW6Rc=;\n b=Eqa0Qy6MomytG37XymnTeMJQGKrjxxmg/1MpFV6cS+rQ/uHLnD70128/B72FKqnQUb\n FsBJ1+6uHZljl0BKhNYPyArcpNNtbmHPOCGhGsgMDgKDRjmQaGpvuN/qyYduUmymX3AS\n QZQWZ+RlFyAV/ThzfRyREyO1wO9pZzVIvFiKghf+mtYKvz7lkYyTC5ohkkH8dgZkJ4dS\n nZDujeNdB+9r4ibf4pnvErUYNBJVvpcFYJZeDff33eMRAI3lH+GVVwI1r0ojDBuMA6IT\n RfGesYfHDrvpHeBq66e7OzNABN4oRSELm+3ZNOFtXOqjWSbnwFur/qAAUIqYNyv/5wkZ\n n5Pw==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1778285072; x=1778889872;\n h=content-transfer-encoding:mime-version:message-id:date:subject:cc\n :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date\n :message-id:reply-to;\n bh=nxuCgzKOp0P3yffVO3FtiXYPHygY+ysu+DqXEnnW6Rc=;\n b=fggALi9Ot9fUE3EjoLsOW983+nvCHqiQ7rsIQatw+/rhKudq4mRBtZEEYM3e3WPbci\n Bq7rORM65GlmV/IDbjHBucMwll4067fjp45EG9c1G0nWLq4O23uT6qxEj/tirdbwzl4c\n uWrXxfk2QMn40i/HIhnhfQ+sCWwvgyy18Dy7i16Kjk7w9rYFi8k6SqfEe2OLjMoHCM/S\n aeql1tPFufC5J7DYuPT24LSiB/g8Q6pKH1qKyjC+pJcWJGIeAkbKfSLIkeDe73z2ZwDi\n Au8Vj+QzNlTbDKutpJ5TjB6Grummjid4pIrcTDYqbrQWOZ1bRkaSJzXffmGT8xrxHZsk\n TTew==","X-Gm-Message-State":"AOJu0Yw/C4sLw4KJJKPXo/F1nctSCkxhl9y2xVSfenyBF63oAMd/+cau\n VkzCEKUTeZHkDPZI1QYuJc8st2oMLjkII12v13cwZyNt0p7ctjRzIzcyqSdj6zgMMUjTj8XpYRV\n q7T7i","X-Gm-Gg":"AeBDievjCrUdCMj50G4zNT5vwXhfP6UM45yYtyWrCyRmPKu5SLC4+tNuT5TvaDyHVXx\n NgN5X8n7EWQt+RfvfHCd2eOztPoCRtzT930NvGxYr/WxkeL2g5cklBlg8g05dDjp7yW3qUkv0U4\n iJYpKKqNEQqaNdyUpZrF63Wcu8zS7L0RKg455IlMJVZYHkjZBFuIB9bQaFyW4Ujw70MxiS/2KXf\n u5gJYfUo+3rgzaB0uRL5MQmjt6oSasxT5lHP3lJ5bUnzMnrrqkZdMwL0PuZ7Dev2Yz1/DNixij4\n 6XdlYyjlmlGMg4hVf0kD5aFeiyPvBhyOCwrWUocsjKo10euSmtlai/AdAIEaKLeJk5dG5YKeZdp\n cCE/NMWAMt9d/rU2WaVuqiDdjCYITFzGtuwNdxk4y2pIoEMfsbumOMsP1IiZId+M5HV6HKnKyUu\n QTIawrcGzwCe7SlRvBWuZ6QL7SNgWfGTr8QZ3GDOOdxeGKimX/R0wTxONfLpsRk+vxPcvOh8SOP\n t99OmEhoVm+bGSR26SDRg==","X-Received":"by 2002:a05:7022:6990:b0:12c:6e85:505c with SMTP id\n a92af1059eb24-131967d531dmr7744799c88.4.1778285072463;\n Fri, 08 May 2026 17:04:32 -0700 (PDT)","From":"Aidan Garske <aidan@wolfssl.com>","To":"u-boot@lists.denx.de","Cc":"David Garske <david@wolfssl.com>,\n Ilias Apalodimas <ilias.apalodimas@linaro.org>","Subject":"[PATCH v3 00/12] tpm: Add wolfTPM library support for TPM 2.0","Date":"Fri,  8 May 2026 17:04:07 -0700","Message-ID":"<cover.1778277334.git.aidan@wolfssl.com>","X-Mailer":"git-send-email 2.47.3","MIME-Version":"1.0","Content-Transfer-Encoding":"8bit","X-Mailman-Approved-At":"Sat, 09 May 2026 02:40:11 +0200","X-BeenThere":"u-boot@lists.denx.de","X-Mailman-Version":"2.1.39","Precedence":"list","List-Id":"U-Boot discussion <u-boot.lists.denx.de>","List-Unsubscribe":"<https://lists.denx.de/options/u-boot>,\n <mailto:u-boot-request@lists.denx.de?subject=unsubscribe>","List-Archive":"<https://lists.denx.de/pipermail/u-boot/>","List-Post":"<mailto:u-boot@lists.denx.de>","List-Help":"<mailto:u-boot-request@lists.denx.de?subject=help>","List-Subscribe":"<https://lists.denx.de/listinfo/u-boot>,\n <mailto:u-boot-request@lists.denx.de?subject=subscribe>","Errors-To":"u-boot-bounces@lists.denx.de","Sender":"\"U-Boot\" <u-boot-bounces@lists.denx.de>","X-Virus-Scanned":"clamav-milter 0.103.8 at phobos.denx.de","X-Virus-Status":"Clean"},"content":"Hi all,\n\nThis is v3 of the wolfTPM TPM 2.0 stack integration for U-Boot.\n\nwolfTPM (https://github.com/wolfSSL/wolfTPM) is a portable, GPLv2 TPM 2.0\nlibrary that provides a full TPM 2.0 command set, an SPI/MMIO HAL, and\nfirmware-update support for Infineon SLB9672/SLB9673 hardware.  This\nseries wires it into U-Boot as an optional backend behind the existing\n'tpm2' command, alongside support for QEMU+swtpm, sandbox emulation, and\nreal Raspberry Pi 4 + Infineon SLB9672 hardware.\n\nBranch (full 14-commit history including the subtree squash + merge):\n  https://github.com/aidangarske/u-boot wolftpm-v2-patches\n\nNote on the subtree commits omitted from this email thread:\n  The branch above contains 14 commits; the email series is 12 patches.\n  Two commits are deliberately not sent to the list:\n\n    * \"Squashed 'lib/wolftpm/' content from commit 664db130d57\"\n        - the parentless squash commit produced by `git subtree add`.\n          Its diff is ~3.4MB / ~90k lines and would be rejected by the\n          mailing list on size.\n    * \"Merge commit 'd42fd7b146...' as 'lib/wolftpm'\"\n        - the corresponding subtree merge commit. Merges have no patch\n          form and are routinely omitted by `git format-patch`.\n\n  Please pull from the branch above (or wolfssl/wolfTPM @ 664db130d57)\n  to inspect the imported wolfTPM source. Subsequent updates will go\n  via tools/update-subtree.sh, matching how mbedTLS, lwIP, and\n  dts/upstream are maintained in tree.\n\nChanges since v2:\n  - Replaced the lib/wolftpm git submodule with a git subtree import\n    (squash + merge), matching the convention used for mbedTLS, lwIP,\n    and dts/upstream.  tools/update-subtree.sh is updated to know\n    about the wolftpm subtree (path lib/wolftpm, upstream\n    https://github.com/wolfssl/wolfTPM.git).\n    [feedback: Ilias Apalodimas]\n  - Reverted the changes to include/linux/byteorder/generic.h.  The\n    redefinition workaround for cpu_to_beXX / beXX_to_cpu now lives\n    on the wolfTPM side: include/configs/user_settings.h pulls in\n    <asm/byteorder.h> up front so U-Boot's macros are defined before\n    wolfTPM's #ifndef-guarded fallbacks in tpm2_packet.h.\n    [feedback: Ilias Apalodimas]\n\nTesting:\n  - QEMU arm64 + swtpm Python test framework\n    (./test/py/test.py --bd qemu_arm64 -k \"test_wolftpm and not ut_cmd\"):\n    19 passed, 2 skipped (matching doc/usage/cmd/wolftpm.rst).\n  - Manual QEMU arm64 + swtpm walkthrough per\n    doc/usage/cmd/wolftpm.rst section \"Building and Running wolfTPM\n    with U-Boot using QEMU\": tpm2 help/info/autostart/startup/\n    get_capability/pcr_read/pcr_print/caps all return expected output.\n  - Raspberry Pi 4 + Infineon SLB9672 (real hardware): all wolfTPM\n    cmd tests pass, including firmware update path.\n\nv2 thread:\n  https://lore.kernel.org/u-boot/?q=PATCH+v2+tpm+wolfTPM\n\nAidan Garske (12):\n  tpm: export tpm_show_device, tpm_set_device, and get_tpm\n  include/hash: add SHA384 hash wrapper declaration for wolfTPM\n  spi: add BCM2835/BCM2711 hardware SPI controller driver\n  dts: add TPM device tree nodes for RPi4, QEMU, and sandbox\n  tpm: add wolfTPM build rules and Kconfig\n  tpm: add wolfTPM headers and SHA384 glue code\n  tpm: add wolfTPM driver helpers and Kconfig options\n  cmd: refactor tpm2 command into frontend/backend architecture\n  tpm: add sandbox TPM SPI emulator\n  test: add wolfTPM C unit tests and Python integration tests\n  doc: add wolfTPM documentation\n  configs: enable wolfTPM in rpi_4_defconfig\n\n--\n2.47.3"}