Show a cover letter.

GET /api/covers/2231636/?format=api
HTTP 200 OK
Allow: GET, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 2231636,
    "url": "http://patchwork.ozlabs.org/api/covers/2231636/?format=api",
    "web_url": "http://patchwork.ozlabs.org/project/uboot/cover/20260501-ten64-add-usb5744-v3-0-234c5b2f8c6f@traverse.com.au/",
    "project": {
        "id": 18,
        "url": "http://patchwork.ozlabs.org/api/projects/18/?format=api",
        "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": "<20260501-ten64-add-usb5744-v3-0-234c5b2f8c6f@traverse.com.au>",
    "list_archive_url": null,
    "date": "2026-05-01T01:36:01",
    "name": "[v3,0/8] board: ten64: add USB Hub (USB5744) management support",
    "submitter": {
        "id": 72945,
        "url": "http://patchwork.ozlabs.org/api/people/72945/?format=api",
        "name": "Mathew McBride",
        "email": "matt@traverse.com.au"
    },
    "mbox": "http://patchwork.ozlabs.org/project/uboot/cover/20260501-ten64-add-usb5744-v3-0-234c5b2f8c6f@traverse.com.au/mbox/",
    "series": [
        {
            "id": 502413,
            "url": "http://patchwork.ozlabs.org/api/series/502413/?format=api",
            "web_url": "http://patchwork.ozlabs.org/project/uboot/list/?series=502413",
            "date": "2026-05-01T01:36:01",
            "name": "board: ten64: add USB Hub (USB5744) management support",
            "version": 3,
            "mbox": "http://patchwork.ozlabs.org/series/502413/mbox/"
        }
    ],
    "comments": "http://patchwork.ozlabs.org/api/covers/2231636/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=traverse.com.au header.i=@traverse.com.au\n header.a=rsa-sha256 header.s=fm1 header.b=ua3YEh5V;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=messagingengine.com header.i=@messagingengine.com\n header.a=rsa-sha256 header.s=fm2 header.b=ZC7gPQce;\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=none (p=none dis=none) header.from=traverse.com.au",
            "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=traverse.com.au header.i=@traverse.com.au\n header.b=\"ua3YEh5V\";\n\tdkim=pass (2048-bit key;\n unprotected) header.d=messagingengine.com header.i=@messagingengine.com\n header.b=\"ZC7gPQce\";\n\tdkim-atps=neutral",
            "phobos.denx.de; dmarc=none (p=none dis=none)\n header.from=traverse.com.au",
            "phobos.denx.de;\n spf=pass smtp.mailfrom=matt@traverse.com.au"
        ],
        "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 4g6DCZ1zkmz1yGq\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 01 May 2026 11:36:26 +1000 (AEST)",
            "from h2850616.stratoserver.net (localhost [IPv6:::1])\n\tby phobos.denx.de (Postfix) with ESMTP id BB6A4803C6;\n\tFri,  1 May 2026 03:36:16 +0200 (CEST)",
            "by phobos.denx.de (Postfix, from userid 109)\n id DA87C83E36; Fri,  1 May 2026 03:36:15 +0200 (CEST)",
            "from fhigh-a7-smtp.messagingengine.com\n (fhigh-a7-smtp.messagingengine.com [103.168.172.158])\n (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits))\n (No client certificate requested)\n by phobos.denx.de (Postfix) with ESMTPS id E11EB80086\n for <u-boot@lists.denx.de>; Fri,  1 May 2026 03:36:11 +0200 (CEST)",
            "from phl-compute-04.internal (phl-compute-04.internal [10.202.2.44])\n by mailfhigh.phl.internal (Postfix) with ESMTP id AFFE21400157;\n Thu, 30 Apr 2026 21:36:10 -0400 (EDT)",
            "from phl-frontend-04 ([10.202.2.163])\n by phl-compute-04.internal (MEProxy); Thu, 30 Apr 2026 21:36:10 -0400",
            "by mail.messagingengine.com (Postfix) with ESMTPA; Thu,\n 30 Apr 2026 21:36:06 -0400 (EDT)"
        ],
        "X-Spam-Checker-Version": "SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de",
        "X-Spam-Level": "",
        "X-Spam-Status": "No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED,\n DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_BLOCKED,\n SPF_HELO_PASS,SPF_PASS autolearn=ham autolearn_force=no version=3.4.2",
        "DKIM-Signature": [
            "v=1; a=rsa-sha256; c=relaxed/relaxed; d=traverse.com.au;\n h=cc:cc:content-transfer-encoding:content-type:content-type\n :date:date:from:from:in-reply-to:message-id:mime-version\n :reply-to:subject:subject:to:to; s=fm1; t=1777599370; x=\n 1777685770; bh=0UQjB10QWM2+eiIy+0xtIzo2g6+Vm1p1dtT+0Jeln3Y=; b=u\n a3YEh5VQDtPkmXPE4e4SQbpLR7Xb72rLZJ78C4M+9IhZPfKwpfbF4/iR+oZyYRfY\n HQFxEJWx58Uqtd4tjXr+54arIspMxyWV6dj1u0wHhI9ePh6B+c57TRJNBI1cIojj\n c+rt64c3JEGllprEukxR87hG7Mtzju0b5zE1Ir9iOCTLwiZqv9tlKbYArNGyHKrA\n GdwSMhyCedBUj6MuworfdFYbZAVTl4dMBE6kvgZZt38lF0NCBwQtQQ080RwL0/9M\n +7RSLNoBe2+PmhPGoP6WyE62jM41QeUaSiG9XzsVGhhCoN+mQDM6+PQHXjjr3wom\n vvwfdyPGJw3UP15V6ftlQ==",
            "v=1; a=rsa-sha256; c=relaxed/relaxed; d=\n messagingengine.com; h=cc:cc:content-transfer-encoding\n :content-type:content-type:date:date:feedback-id:feedback-id\n :from:from:in-reply-to:message-id:mime-version:reply-to:subject\n :subject:to:to:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=\n fm2; t=1777599370; x=1777685770; bh=0UQjB10QWM2+eiIy+0xtIzo2g6+V\n m1p1dtT+0Jeln3Y=; b=ZC7gPQceEMLKX9Y0CiWuETZcmmdHNbRzTZd9QSBYTMIO\n O+Gl2a2oRQZnZ6PE4MiLKf0LcXdHhNuHFn35EGcZaNUoWyYBAMlgw+p0x9rfCUWC\n UwyIO+YjMGAs9JruMvt6MrbzZNkB1SqjY39CkMeAJUd9lQZM3TMU6944GWITHgqV\n gqR1m0wARVxl+Y3/gVRoOTudi1S587+J97QTZJgez2cqc3p3g3twjT1a9KxFDVyg\n 7nDxWU6ZZy8dNqdrbYJjr+xJg/rl6SaKAJGXgJ4ejOfVBfI/t1jlC97UuB9kU7+d\n z2YjpApV8Y7z2vwUmuj3mO4jzKUpoYCgU8njjy0byw=="
        ],
        "X-ME-Sender": "<xms:iQP0aW5PDzl_3JU2G8xX0imgovzroVwXn3evLf_HJ5kSL1ZXXqVLVw>\n <xme:iQP0aS-nvtp3wmwJJQ9NlyAl_q3xlQI9OakPywusIJcI7rvZuwGn7MGWyNnWbZM9E\n X26q9WFd8gcVD5_BUDi4fzO2W_upcfuE3tnDDEgT7z1Vce072MmucI>",
        "X-ME-Received": "\n <xmr:iQP0aQFB06rpDrkV0nFnIvXY3RTS7XSJ1MaBV4vxsZglECMfyfJ7y5cjuPeVNKQ0sLoV7mlWUbA96p6o3kCl4htFgCTAuqcwhL1midBJwPqCeMgl_aEg_0UW>",
        "X-ME-Proxy-Cause": "\n gggruggvucftvghtrhhoucdtuddrgeefhedrtddtgdekkeeklecutefuodetggdotefrod\n ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpuffrtefokffrpgfnqfghnecuuegr\n ihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenucfjug\n hrpefhufffkfggtgfgvfevofesthejredtredtjeenucfhrhhomhepofgrthhhvgifucfo\n tgeurhhiuggvuceomhgrthhtsehtrhgrvhgvrhhsvgdrtghomhdrrghuqeenucggtffrrg\n htthgvrhhnpedvhfefhfeiledttedvkeffudfhfeethfdutdejleeggffhfeeuudejhfeu\n uefgudenucffohhmrghinhepghhithhhuhgsrdgtohhmpdhkvghrnhgvlhdrohhrghenuc\n evlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehmrghtthes\n thhrrghvvghrshgvrdgtohhmrdgruhdpnhgspghrtghpthhtohepuddtpdhmohguvgepsh\n hmthhpohhuthdprhgtphhtthhopehmrghtthesthhrrghvvghrshgvrdgtohhmrdgruhdp\n rhgtphhtthhopehluhhkrghsiidrtgiivggthhhofihskhhisehthhgruhhmrghtvggtrd\n gtohhmpdhrtghpthhtohepshhjghestghhrhhomhhiuhhmrdhorhhgpdhrtghpthhtohep\n uhdqsghoohhtsehlihhsthhsrdguvghngidruggvpdhrtghpthhtohepmhhitghhrghlrd\n hsihhmvghksegrmhgurdgtohhmpdhrtghpthhtohepmhgrrhgvkhdrvhgrshhuthesmhgr\n ihhlsghogidrohhrghdprhgtphhtthhopehprggumhgrrhgrohdrsggvghgrrhhisegrmh\n gurdgtohhmpdhrtghpthhtohepphgvnhhgrdhfrghnsehngihprdgtohhmpdhrtghpthht\n ohepqhhuvghnthhinhdrshgthhhulhiisegthhgvrhhrhidruggv",
        "X-ME-Proxy": "<xmx:iQP0afUKSCy_Elbs-NWDLm4UmoDwrYNzdE5d584r9Lq0yL3m0GxwhA>\n <xmx:iQP0aU8xIbhN1lwn7XcyLdstxmmFGcxLAbunbx8sZfbYhAFbTjrTrw>\n <xmx:iQP0aU4JtfEdyL6O9tGIzz9YjVbysRZVUwu4UxurTFUzFGB_5TuoIA>\n <xmx:iQP0aVnM01Fg0wltQoYZds6NkVKeK-oLw4LeKpPMkrSbFuQmlrnLfQ>\n <xmx:igP0aeUGuUwUS5m1OWcOlovbNks4-ZgYsxuukVCneGyzD_2nP7MtOBHg>",
        "Feedback-ID": "i426947f3:Fastmail",
        "From": "Mathew McBride <matt@traverse.com.au>",
        "Subject": "[PATCH v3 0/8] board: ten64: add USB Hub (USB5744) management support",
        "Date": "Fri, 01 May 2026 11:36:01 +1000",
        "Message-Id": "<20260501-ten64-add-usb5744-v3-0-234c5b2f8c6f@traverse.com.au>",
        "MIME-Version": "1.0",
        "Content-Type": "text/plain; charset=\"utf-8\"",
        "Content-Transfer-Encoding": "7bit",
        "X-B4-Tracking": "v=1; b=H4sIAIED9GkC/23NQQ6CMBCF4auYri0pQymtK+9hXIx0Kl0IpoVGQ\n 7i7hcTERJb/S+abmUUKniI7HWYWKPnohz5HdTywtsP+Ttzb3AwEKCGF5iP1SnK0lk/xVjdScoG\n 2dgqtcVKwfPcM5PxrMy/X3J2P4xDe24tUrutXMztaKrngIIyURrkGWn0eAyYKkYp2eBQ4sdVM8\n ONAuedAdghRl6A1Vab6d5Zl+QD3rqHcAAEAAA==",
        "X-Change-ID": "20260408-ten64-add-usb5744-0ad5f6ad9f40",
        "To": "u-boot@lists.denx.de",
        "Cc": "Tom Rini <trini@konsulko.com>,\n Lukasz Czechowski <lukasz.czechowski@thaumatec.com>,\n Quentin Schulz <quentin.schulz@cherry.de>,\n Michal Simek <michal.simek@amd.com>, Marek Vasut <marek.vasut@mailbox.org>,\n Padmarao Begari <padmarao.begari@amd.com>, Peng Fan <peng.fan@nxp.com>,\n Simon Glass <sjg@chromium.org>, Mathew McBride <matt@traverse.com.au>",
        "X-Mailer": "b4 0.14.3",
        "X-Developer-Signature": "v=1; a=ed25519-sha256; t=1777599366; l=3753;\n i=matt@traverse.com.au; s=20260115; h=from:subject:message-id;\n bh=uiR3efrskKAau2x15qSMR7fTawiOOnuaOTB/gpJrV5s=;\n b=uCmBUUgq3gG22km92H/l3xqv+nnfmWxef4uvesMO/yxzlRYtoeqzVbd/eFEfbBBoBm0X0Xthx\n E39fL++1o3oA5bAocbm5p9UGlz1pxv9D7F173gqih1/z/aq8d+6Ywn2",
        "X-Developer-Key": "i=matt@traverse.com.au; a=ed25519;\n pk=SM+aGm9Y2fPJ2prfH/b5lab73fTBrKL5UsJwdzv7Pbg=",
        "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": "The main public Ten64 board version (RevC) has a Microchip/SMSC\nUSB hub (USB5744) connected to the second USB controller on the\nLS1088A.\n\nThe USB5744 is configured (by bootstrap pins) not to start automatically,\nrather the firmware has to issue the start commands to the USB5744\nover I2C.\nThe rationale for this is to allow certain ports to be disabled,\nnamely the M.2 Key B slot where the USB3 lanes need to be disabled\nfor a card that is PCI Express only (as the USB3 pins are shared\nwith a PCIe lane).\n(The functionality for this scenario is not present in the mainline\nUSB5744 driver at this time).\n\nFurther testing revealed that some operating systems get stuck at boot\nwhen they start their usb5744 driver, so we hide the USB Hub from\noperating systems by deleting references (fixup) in the FDT prior to handover.\n\nSimilarly, references in U-Boot's internal FDT need to be deleted\nwhen running on a board without the USB hub present.\n\nCI pipeline results are here:\nhttps://github.com/u-boot/u-boot/pull/924\nEnabling USB_ONBOARD_HUB triggered a compile error\nwhich required touching arch/arm/asm/gpio.h (see below).\nNo build failures for other boards were detected by CI\nas a result.\n\nSigned-off-by: Mathew McBride <matt@traverse.com.au>\n---\nChanges in v3:\n- Change how the compile error in usb/common-hub is fixed,\n  by including linux/types.h in arm/asm/gpio.h, which\n  should resolve problems with non-C90 types being used in\n  soc/machine specific gpio.h. This change was suggested\n  by Quentin Schulz.\n- Change from a hardcoded usb_init() call to adding \"usb start\"\n  to preboot (thanks Fabio for the suggestion)\n- Fix some typos\n- Add explanation about why the fdt fixup errors can\n  (generally) be ignored (thanks to Simon for suggesting)\n- Link to v2: https://lore.kernel.org/r/20260421-ten64-add-usb5744-v2-0-eaa81288e393@traverse.com.au\n\nChanges in v2:\n- Add missing CONFIG_OF_BOARD_FIXUP to the board defconfig\n  so that board_fix_fdt is called.\n- Call usb_init late in the init sequence (before CLI / bootflow)\n  to ensure the USB hub is initialized and usable before\n  any downstream users.\n- Remove 'local' copies of the board dts in arch/arm/dts that\n  are no longer required after OF_UPSTREAM conversion.\n  However, the board specific -u-boot.dtsi needs to remain\n  to pick up the SoC specific -u-boot.dtsi.\n  (Thanks to Fabio Estevam for pointing this out)\n- Remove error print in ft_board_setup if USB hub nodes\n  not found (e.g if the control FDT is passed to the OS,\n  the fixup has already been done by board_fix_fdt,\n  causing a false error notification).\n- Link to v1: https://lore.kernel.org/r/20260409-ten64-add-usb5744-v1-0-2094496f72c8@traverse.com.au\n\n---\nMathew McBride (8):\n      arm: gpio: include integer type definitions for gpio.h\n      board: ten64: add fdt fixup to hide usb hub topology\n      board: ten64: remove USB hub references from internal FDT when needed\n      configs: ten64: enable OF_BOARD_FIXUP\n      configs: ten64: enable USB_ONBOARD_HUB (USB5744) option\n      configs: ten64: switch to OF_UPSTREAM\n      arm: dts: remove local copy of Ten64 board DTS\n      configs: ten64: add USB start to preboot\n\n arch/arm/dts/fsl-ls1088a-ten64-u-boot.dtsi |   8 -\n arch/arm/dts/fsl-ls1088a-ten64.dts         | 388 -----------------------------\n arch/arm/include/asm/gpio.h                |   2 +\n board/traverse/ten64/ten64.c               |  70 ++++++\n configs/ten64_tfa_defconfig                |   7 +-\n 5 files changed, 78 insertions(+), 397 deletions(-)\n---\nbase-commit: 4433253ecf2041f9362a763bb6cb79960921ac7e\nchange-id: 20260408-ten64-add-usb5744-0ad5f6ad9f40\n\nBest regards,"
}