get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

GET /api/1.1/patches/2229611/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 2229611,
    "url": "http://patchwork.ozlabs.org/api/1.1/patches/2229611/?format=api",
    "web_url": "http://patchwork.ozlabs.org/project/uboot/patch/20260428142848.48156-1-heinrich.schuchardt@canonical.com/",
    "project": {
        "id": 18,
        "url": "http://patchwork.ozlabs.org/api/1.1/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
    },
    "msgid": "<20260428142848.48156-1-heinrich.schuchardt@canonical.com>",
    "date": "2026-04-28T14:28:48",
    "name": "[v2,1/1] .clang-format: add U-Boot specific for each macros",
    "commit_ref": null,
    "pull_url": null,
    "state": "new",
    "archived": false,
    "hash": "ab527213f363dfc0dce7deba133e7dd6d59f3a25",
    "submitter": {
        "id": 82181,
        "url": "http://patchwork.ozlabs.org/api/1.1/people/82181/?format=api",
        "name": "Heinrich Schuchardt",
        "email": "heinrich.schuchardt@canonical.com"
    },
    "delegate": {
        "id": 68728,
        "url": "http://patchwork.ozlabs.org/api/1.1/users/68728/?format=api",
        "username": "xypron",
        "first_name": "Heinrich",
        "last_name": "Schuchardt",
        "email": "xypron.glpk@gmx.de"
    },
    "mbox": "http://patchwork.ozlabs.org/project/uboot/patch/20260428142848.48156-1-heinrich.schuchardt@canonical.com/mbox/",
    "series": [
        {
            "id": 501867,
            "url": "http://patchwork.ozlabs.org/api/1.1/series/501867/?format=api",
            "web_url": "http://patchwork.ozlabs.org/project/uboot/list/?series=501867",
            "date": "2026-04-28T14:28:48",
            "name": "[v2,1/1] .clang-format: add U-Boot specific for each macros",
            "version": 2,
            "mbox": "http://patchwork.ozlabs.org/series/501867/mbox/"
        }
    ],
    "comments": "http://patchwork.ozlabs.org/api/patches/2229611/comments/",
    "check": "pending",
    "checks": "http://patchwork.ozlabs.org/api/patches/2229611/checks/",
    "tags": {},
    "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 (4096-bit key;\n unprotected) header.d=canonical.com header.i=@canonical.com\n header.a=rsa-sha256 header.s=20251003 header.b=iqTYm7SN;\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=pass (p=reject dis=none) header.from=canonical.com",
            "phobos.denx.de;\n spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de",
            "phobos.denx.de;\n\tdkim=pass (4096-bit key;\n unprotected) header.d=canonical.com header.i=@canonical.com\n header.b=\"iqTYm7SN\";\n\tdkim-atps=neutral",
            "phobos.denx.de; dmarc=pass (p=reject dis=none)\n header.from=canonical.com",
            "phobos.denx.de; spf=pass\n smtp.mailfrom=heinrich.schuchardt@canonical.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)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4g4jVQ1kLfz1yHv\n\tfor <incoming@patchwork.ozlabs.org>; Wed, 29 Apr 2026 00:29:02 +1000 (AEST)",
            "from h2850616.stratoserver.net (localhost [IPv6:::1])\n\tby phobos.denx.de (Postfix) with ESMTP id D34588426E;\n\tTue, 28 Apr 2026 16:28:57 +0200 (CEST)",
            "by phobos.denx.de (Postfix, from userid 109)\n id CD0C4842A2; Tue, 28 Apr 2026 16:28:56 +0200 (CEST)",
            "from smtp-relay-internal-1.canonical.com\n (smtp-relay-internal-1.canonical.com [185.125.188.123])\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 BEB7984255\n for <u-boot@lists.denx.de>; Tue, 28 Apr 2026 16:28:54 +0200 (CEST)",
            "from mail-wm1-f70.google.com (mail-wm1-f70.google.com\n [209.85.128.70])\n (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest\n SHA256)\n (No client certificate requested)\n by smtp-relay-internal-1.canonical.com (Postfix) with ESMTPS id 41DCA3F861\n for <u-boot@lists.denx.de>; Tue, 28 Apr 2026 14:28:54 +0000 (UTC)",
            "by mail-wm1-f70.google.com with SMTP id\n 5b1f17b1804b1-488c0120047so68000455e9.0\n for <u-boot@lists.denx.de>; Tue, 28 Apr 2026 07:28:54 -0700 (PDT)",
            "from workstation5 (ip-176-199-115-125.um44.pools.vodafone-ip.de.\n [176.199.115.125]) by smtp.gmail.com with ESMTPSA id\n 5b1f17b1804b1-48a774c3ddfsm46391335e9.2.2026.04.28.07.28.52\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Tue, 28 Apr 2026 07:28:52 -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=-2.1 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,\n DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,\n RCVD_IN_DNSWL_BLOCKED,SPF_HELO_NONE,SPF_PASS autolearn=ham\n autolearn_force=no version=3.4.2",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=canonical.com;\n s=20251003; t=1777386534;\n bh=Qit23yoT/JLBtdiKkJqUQVtxZxvk5uZWi+AI+UC0yf4=;\n h=From:To:Cc:Subject:Date:Message-ID:MIME-Version;\n b=iqTYm7SNsok9L0DPnDTjgxw1D+Of5qaR3QctCJWCQoh+KKbUKY/J37XsjBoV9J7Y7\n gKvU1qazI0zazhAXav1vCuJv2SETikJkJNdwqEhMZA3M+0F9fAkWSvHSswks6w5izr\n HpTdv2VD6XTrOYNrdEkuVBQh3nxFOhgH41VchJQ/Fg7CxYoCMA0xEk5eLd7qzl8G5n\n m4nqUmbx7HKzCWd/pf6OeuJYLkVHXiRPVIyAYr8xmDj+w7f3OfzdFoNj+IOjhTBVsF\n nXyu+IX6MuZprvSBCY5VBIGR6DAn/WjXBRbVJ8OHQ4LcvPs10EPzr/jQNkFCqixVSa\n qkQwzNs+5MW3tVodcOyNkYo2H0wBAGGOACGWWUFcmQYPl3ven6dVp43XbGUyv0XIaE\n r7NUn/b1m7drXDGmRrfZAsxD892jCN92kCOLhULXCMQQ7X3B3BkleVutY5K+iV2SRn\n slE+VZkWuI2pnx7lbJqpMRGMsbdS6mXUrgLf4yZVzyk4pZRSqfzoy9L4BIwsJ70qm0\n GXH9ZHpqOOl42BA4f6CuujQg+Knu7TxlN3ENLYkKRxkHVILT81leSZnYfdAuzs40ik\n JJf2RVCD4DyQz0y6d3YnIyHgqFPMqXS98ARyMP0NQ1wf3Ss7ddYOV68t6rrbO7lBP0\n RoD4ufnZ2vV3hS9/kpsoU2dI=",
        "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1777386534; x=1777991334;\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=Qit23yoT/JLBtdiKkJqUQVtxZxvk5uZWi+AI+UC0yf4=;\n b=aEhZy5Hy3F1u9khwLtSLaLzRbpPQozswD81ijEnkr+s3NF0Hd4YxZPM3GZ19qtcheH\n XWZWiHntLWGrgmGgsd1CZgggmo/QdS0rKblIlX02EL+MhDYH8oyFe53ZL3QpC9/NDR+N\n mtopl5+1Wg5tRW31uIEGDPIM46kixT5otrLyHXEc2hpsGR2Y7hup3UJaWjWwuWerPxrW\n ApMAJdh+B2JERvn3QPlq6NziA8MqAXzsLmh0Cm1/QvXusEAhW1zf/5Tp5gnINWc94poJ\n nHvdXII59jt35egpC6W1aW+cXYVzC/ZNYvlB+GXm7h3MtCUDxJPvjTB2n4BRvZga3XoT\n sjbg==",
        "X-Forwarded-Encrypted": "i=1;\n AFNElJ/eKqsDO0E1ZM6LTo/fHXJQObK3OXWVJR9VdLIbabYayALH3Bem5rDlShxglL6h5kVa6pkYp0Y=@lists.denx.de",
        "X-Gm-Message-State": "AOJu0YyH/0kSOcVQxxJ9qlSo+XAVUEPcc+qA5yTPI5QwibncD1l3spaO\n sJori5D22Z0ffLWHWIEwhcp7P+gZDtT1t6XCmhyigcvG7GeoblXy4wOfSIf3cPzZlrg3Lpbo5lg\n BIMzcO1YGmL0wgcjKa0+/2X6k7IYjWNjt5N5oOAl+JXSGRypNcYc4Q6IOWbc8dQdk7MHStd8=",
        "X-Gm-Gg": "AeBDietuQoib7/DZ2SCc5aUW8725BZPqr1L1z9sBarDzwfpylFB+jAowYGt7wlOKVty\n bygBkmrvAf3PDcRxVveRjG62YvlN++sJloAmDmilOYyP6UVhZSzaIAx9BnmvgIB5HkcT/SJFEjU\n VqPlMzSXfIDbZI+E7NPm1Bv9FpFsGBi4W84I8cz3np32PvKi3saP6lj4BYwppVJQxSZ+kJ1LOFO\n PNOaafpsL+ynBEk3ARgMA/dB1FQMM8Bf/AXzM+BFpdGRcqhLefNFWk6gyKv2NjqKlU+bxKT6n3b\n F3d7O2L8CV0F78T4w8PJYBO4qotctnYUfB1ewAPiNfxfF6C818Yz2UQynuBxCXOY1ZaPQcD1UcE\n ZbRJ8XE7TRORDaFOvyFDIgLPwEDZ3Q1r2GvgbbfmzmD62BkRkIJEm9eA0u7H+y4K2MEqGvwpYOd\n +hPXdwtftKPkvWseH8/isypuPUwGJQXPFon1X9FzQXKRT7TxALWs6e2hQ2rk5y",
        "X-Received": [
            "by 2002:a05:600c:8109:b0:488:c530:48a0 with SMTP id\n 5b1f17b1804b1-48a77b24190mr60865655e9.24.1777386533722;\n Tue, 28 Apr 2026 07:28:53 -0700 (PDT)",
            "by 2002:a05:600c:8109:b0:488:c530:48a0 with SMTP id\n 5b1f17b1804b1-48a77b24190mr60865095e9.24.1777386533242;\n Tue, 28 Apr 2026 07:28:53 -0700 (PDT)"
        ],
        "From": "Heinrich Schuchardt <heinrich.schuchardt@canonical.com>",
        "To": "Tom Rini <trini@konsulko.com>",
        "Cc": "Javier Tia <floss@jetm.me>, Simon Glass <sjg@chromium.org>,\n u-boot@lists.denx.de, Quentin Schulz <quentin.schulz@cherry.de>,\n Heinrich Schuchardt <heinrich.schuchardt@canonical.com>",
        "Subject": "[PATCH v2 1/1] .clang-format: add U-Boot specific for each macros",
        "Date": "Tue, 28 Apr 2026 16:28:48 +0200",
        "Message-ID": "<20260428142848.48156-1-heinrich.schuchardt@canonical.com>",
        "X-Mailer": "git-send-email 2.53.0",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "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": "Formatting via clang-format is controlled by .clang-format.\nFor each statements should be formatted with a brace at the line end:\n\n    for_each() {\n    }\n\nThis requires clang-format to know that the symbol is not a function\nbut a for each macro. We use some for each macros which don't exist in\nLinux. Add these to file .clang-format.\n\nSigned-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>\n---\nv2:\n\tsearch all directories (not only /include) for definitions\n\tsort alphabetically\n---\n .clang-format | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++\n 1 file changed, 51 insertions(+)",
    "diff": "diff --git a/.clang-format b/.clang-format\nindex 48405c54ef2..e86a17da147 100644\n--- a/.clang-format\n+++ b/.clang-format\n@@ -748,6 +748,57 @@ ForEachMacros:\n   - 'ynl_attr_for_each_nested'\n   - 'ynl_attr_for_each_payload'\n   - 'zorro_for_each_dev'\n+  # U-Boot specific\n+  - '__for_each_child_of_node'\n+  - '__usbhs_for_each_pipe'\n+  - '__usbhsg_for_each_uep'\n+  - '_for_each_zynqmp_part'\n+  - 'alist_for_each'\n+  - 'alist_for_each_filter'\n+  - 'cvmx_coremask_for_each_core'\n+  - 'cvmx_coremask_for_each_node'\n+  - 'dev_for_each_property'\n+  - 'dev_for_each_subnode'\n+  - 'expr_list_for_each_sym'\n+  - 'fdt_for_each_node_by_compatible'\n+  - 'fdt_for_each_property_offset'\n+  - 'fdt_for_each_subnode'\n+  - 'for_each_bin_hdr_v0'\n+  - 'for_each_bl_params_node'\n+  - 'for_each_child_withdel'\n+  - 'for_each_console_dev'\n+  - 'for_each_ext_hdr_v0'\n+  - 'for_each_label'\n+  - 'for_each_label_withdel'\n+  - 'for_each_marker'\n+  - 'for_each_marker_of_type'\n+  - 'for_each_memory_map_entry_reversed'\n+  - 'for_each_mmc_mode_by_pref'\n+  - 'for_each_opt_hdr_v1'\n+  - 'for_each_property_withdel'\n+  - 'for_each_sd_mode_by_pref'\n+  - 'for_each_supported_width'\n+  - 'for_each_tpm_device'\n+  - 'for_each_w1_device'\n+  - 'for_each_zynqmp_image'\n+  - 'for_each_zynqmp_part'\n+  - 'for_each_zynqmp_part_in_image'\n+  - 'mtd_for_each_device'\n+  - 'ofnode_for_each_compatible_node'\n+  - 'ofnode_for_each_prop'\n+  - 'ofnode_for_each_subnode'\n+  - 'pko_for_each_port'\n+  - 'sfi_for_each_mentry'\n+  - 'ubi_for_each_free_peb'\n+  - 'ubi_for_each_protected_peb'\n+  - 'ubi_for_each_scrub_peb'\n+  - 'ubi_for_each_used_peb'\n+  - 'ubi_rb_for_each_entry'\n+  - 'usbhs_for_each_dfifo'\n+  - 'usbhs_for_each_pipe'\n+  - 'usbhs_for_each_pipe_with_dcp'\n+  - 'usbhsg_for_each_uep'\n+  - 'usbhsg_for_each_uep_with_dcp'\n \n IncludeBlocks: Preserve\n IncludeCategories:\n",
    "prefixes": [
        "v2",
        "1/1"
    ]
}