get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 2234558,
    "url": "http://patchwork.ozlabs.org/api/1.2/patches/2234558/?format=api",
    "web_url": "http://patchwork.ozlabs.org/project/linux-i2c/patch/20260507-dw-i2c-v4-1-9a447b23bfdf@wkennington.com/",
    "project": {
        "id": 35,
        "url": "http://patchwork.ozlabs.org/api/1.2/projects/35/?format=api",
        "name": "Linux I2C development",
        "link_name": "linux-i2c",
        "list_id": "linux-i2c.vger.kernel.org",
        "list_email": "linux-i2c@vger.kernel.org",
        "web_url": "",
        "scm_url": "",
        "webscm_url": "",
        "list_archive_url": "",
        "list_archive_url_format": "",
        "commit_url_format": ""
    },
    "msgid": "<20260507-dw-i2c-v4-1-9a447b23bfdf@wkennington.com>",
    "list_archive_url": null,
    "date": "2026-05-07T20:05:15",
    "name": "[v4,1/4] i2c: designware: Introduce shutdown exported function",
    "commit_ref": null,
    "pull_url": null,
    "state": "new",
    "archived": false,
    "hash": "593adaf557f528f1e1e1022642dbb2c003c43cca",
    "submitter": {
        "id": 87247,
        "url": "http://patchwork.ozlabs.org/api/1.2/people/87247/?format=api",
        "name": "William A. Kennington III",
        "email": "william@wkennington.com"
    },
    "delegate": null,
    "mbox": "http://patchwork.ozlabs.org/project/linux-i2c/patch/20260507-dw-i2c-v4-1-9a447b23bfdf@wkennington.com/mbox/",
    "series": [
        {
            "id": 503262,
            "url": "http://patchwork.ozlabs.org/api/1.2/series/503262/?format=api",
            "web_url": "http://patchwork.ozlabs.org/project/linux-i2c/list/?series=503262",
            "date": "2026-05-07T20:05:14",
            "name": "i2c: designware: Improve device disable handling",
            "version": 4,
            "mbox": "http://patchwork.ozlabs.org/series/503262/mbox/"
        }
    ],
    "comments": "http://patchwork.ozlabs.org/api/patches/2234558/comments/",
    "check": "pending",
    "checks": "http://patchwork.ozlabs.org/api/patches/2234558/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "\n <linux-i2c+bounces-17299-incoming=patchwork.ozlabs.org@vger.kernel.org>",
        "X-Original-To": [
            "incoming@patchwork.ozlabs.org",
            "linux-i2c@vger.kernel.org"
        ],
        "Delivered-To": "patchwork-incoming@legolas.ozlabs.org",
        "Authentication-Results": [
            "legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=wkennington-com.20251104.gappssmtp.com\n header.i=@wkennington-com.20251104.gappssmtp.com header.a=rsa-sha256\n header.s=20251104 header.b=S2f3MXYk;\n\tdkim-atps=neutral",
            "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=2600:3c0a:e001:db::12fc:5321; helo=sea.lore.kernel.org;\n envelope-from=linux-i2c+bounces-17299-incoming=patchwork.ozlabs.org@vger.kernel.org;\n receiver=patchwork.ozlabs.org)",
            "smtp.subspace.kernel.org;\n\tdkim=pass (2048-bit key) header.d=wkennington-com.20251104.gappssmtp.com\n header.i=@wkennington-com.20251104.gappssmtp.com header.b=\"S2f3MXYk\"",
            "smtp.subspace.kernel.org;\n arc=none smtp.client-ip=209.85.215.171",
            "smtp.subspace.kernel.org;\n dmarc=none (p=none dis=none) header.from=wkennington.com",
            "smtp.subspace.kernel.org;\n spf=none smtp.mailfrom=wkennington.com"
        ],
        "Received": [
            "from sea.lore.kernel.org (sea.lore.kernel.org\n [IPv6:2600:3c0a:e001:db::12fc:5321])\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 4gBNY10wk3z1yM5\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 08 May 2026 06:05:57 +1000 (AEST)",
            "from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby sea.lore.kernel.org (Postfix) with ESMTP id C0C733038143\n\tfor <incoming@patchwork.ozlabs.org>; Thu,  7 May 2026 20:05:26 +0000 (UTC)",
            "from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id 16A5436BCDA;\n\tThu,  7 May 2026 20:05:26 +0000 (UTC)",
            "from mail-pg1-f171.google.com (mail-pg1-f171.google.com\n [209.85.215.171])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))\n\t(No client certificate requested)\n\tby smtp.subspace.kernel.org (Postfix) with ESMTPS id A364E35E950\n\tfor <linux-i2c@vger.kernel.org>; Thu,  7 May 2026 20:05:24 +0000 (UTC)",
            "by mail-pg1-f171.google.com with SMTP id\n 41be03b00d2f7-c80291e6237so925148a12.0\n        for <linux-i2c@vger.kernel.org>; Thu, 07 May 2026 13:05:24 -0700 (PDT)",
            "from wakbuild.c.googlers.com\n (123.143.125.34.bc.googleusercontent.com. [34.125.143.123])\n        by smtp.gmail.com with ESMTPSA id\n 41be03b00d2f7-c8263ff29c2sm443200a12.12.2026.05.07.13.05.23\n        (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n        Thu, 07 May 2026 13:05:23 -0700 (PDT)"
        ],
        "ARC-Seal": "i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1778184325; cv=none;\n b=c+i+s8+kOW9q6i70soeEZB99HdSvf1wpD2TaR6UfHBJlcwky74D5DShk9R5RndMlzvYDENwtUXPvHrFRQ2M76khf5CWrURbmnIC8qcLBaTkHjOvhue7TsAZGP7mis+XbvxC0J4kEAv+c6FR0aiT7Y3u6wFLlDtJ/sibSQmRbtEY=",
        "ARC-Message-Signature": "i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1778184325; c=relaxed/simple;\n\tbh=xdMaato8TzQhG7sEcha36250OMNuC2a38m+gB16kRFU=;\n\th=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References:\n\t In-Reply-To:To:Cc;\n b=F3KqDnbRlisQRy+POOV5indS7jGPxM+PFbpSsgpt92T8B6dW/ParonAkZ4uo0DlbhfrzpghPbzLxjm/OVMaJyx9k03fkwGb/at8akp8ctALIXV7iPzp9egfPYTBp+YSj5yCBWAIYh+l3tDnCZD1V5r5R/MtaiAktFvvQLlQKlig=",
        "ARC-Authentication-Results": "i=1; smtp.subspace.kernel.org;\n dmarc=none (p=none dis=none) header.from=wkennington.com;\n spf=none smtp.mailfrom=wkennington.com;\n dkim=pass (2048-bit key) header.d=wkennington-com.20251104.gappssmtp.com\n header.i=@wkennington-com.20251104.gappssmtp.com header.b=S2f3MXYk;\n arc=none smtp.client-ip=209.85.215.171",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n        d=wkennington-com.20251104.gappssmtp.com; s=20251104; t=1778184324;\n x=1778789124; darn=vger.kernel.org;\n        h=cc:to:in-reply-to:references:message-id:content-transfer-encoding\n         :mime-version:subject:date:from:from:to:cc:subject:date:message-id\n         :reply-to;\n        bh=Dbh8YwmHjgZJuVNCq9Cmjprrm6eEx/Q8kVEN8sLgRu4=;\n        b=S2f3MXYkmsULTzHHrDWjRXAQe57gPyh+CxofFXbwX5F3xigvl8lacDyDy/HaAolYu8\n         yYb93yqwLL2CV6OUgBUqX4Vx/nIaNVQH0jI+csXVBdK0JaPKhtebirOhwAfV03x+o9OS\n         Cf6Fvpf/qaftpAFfsvsdcyH9C0XLaiV/9n/CsH9EhhCkp1c1dz3HVK2FKTcMDGZM0gMg\n         d0fI+B4Zl20sWzVJj+vXeaCgVyc/5DpRWd8z8XbjJHk6mysh2wNhvqWN0/xvpP/BZ8oi\n         bmjdC+Wyjpwt7l5EsEDlZunK1S9Sj5K9bs9cjoDHzFXG2RW+0zdEfLMgvhI2230o5bH0\n         wQUg==",
        "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n        d=1e100.net; s=20251104; t=1778184324; x=1778789124;\n        h=cc:to:in-reply-to:references:message-id:content-transfer-encoding\n         :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to\n         :cc:subject:date:message-id:reply-to;\n        bh=Dbh8YwmHjgZJuVNCq9Cmjprrm6eEx/Q8kVEN8sLgRu4=;\n        b=ZXnfVrJmrpyg/5FM4SzPvQBD7n1gYpCfJ3j5H6nakY6FpRuMREyuHR85/b4+p90DpX\n         Sg99PfD8ocU+4RngKQGMAtzs9I/BuCN65d2A8Hm4bcLyLIdx2NMxZUV3k7lHx/x+4Tfk\n         2stgtt/hfqb4Tl+0/+jpT1wvpex167sKrT0zsre5C3Y7xpkD1WpSLMSZWYDup/T8u9H6\n         ZSpofZnDGFLpMCetsTd4fr8nXDwPcaV9iDa+/htphiU64SnWjANTaTXtKxKL+65Sk+LD\n         f9flyO3Bjz3HRY0uzcDTUJkQXNsi127sudSWp/WWJh/UnDMrgxz4yu9QhqykXEQsNb9t\n         llkA==",
        "X-Gm-Message-State": "AOJu0YzIY5u8ETGKHSgdCmUaz7lm45IYpKnx+YOVRom/KUIeZQ6dH6n4\n\tniINWHapaHk6uGfS2W9rpT3VrBAMUF+CXWQUk9koiE+yqW3iIL/Q8i52WDk28ivEkyE=",
        "X-Gm-Gg": "AeBDiesmoIMz/2SQVb0M2JJZQAmhBgCIE5hae6uesfuCwN5XcjX8m4FXmCxO7UAc/Iw\n\t0EiR4QHQLyNtui9OiyXrQ14HtCoAEtIvCdnOWo5dI4NeJKSZkBuNgCRXFxjjtvmETt4gtfyeI3X\n\tuje4hrGy4OF1qd+/X5xHIlk3SbYYvmq33FeRT+Haj8fEswIb62Fw4WeyzbNjBZUGf7ZPXQzmmps\n\tOBVtfpvI2OPDaWzTvmQvriuEZbhi1gpljhyqQcy3EJ+qcuUrGmL9QNHv9+mEFMbYxlAg541lyl9\n\t7eCo534nodOICluG4k0Vfcp5RqFo/C0xil54JjkjztLQWZB9KaINj/vf1VxpMq7VcRSKq6V2nPg\n\tnfBX4H/S2amDkRdspwux5qib5pZTdyatTsgxgW6yb3RCQpSguN4n6czPRYiWQGy3rc2MBlfODRu\n\tFB/Uhk7MGPrj5IbnzGzOchRn/FxOCsdbcK2hrZZNZTkZl0XJ8ScpehGCYePfIpPDneTgx9SaHRR\n\tUF2T5hEUfZNiao=",
        "X-Received": "by 2002:a05:6a21:6d88:b0:39f:3efb:e888 with SMTP id\n adf61e73a8af0-3aa5a983571mr10254508637.25.1778184323838;\n        Thu, 07 May 2026 13:05:23 -0700 (PDT)",
        "From": "\"William A. Kennington III\" <william@wkennington.com>",
        "Date": "Thu, 07 May 2026 20:05:15 +0000",
        "Subject": "[PATCH v4 1/4] i2c: designware: Introduce shutdown exported\n function",
        "Precedence": "bulk",
        "X-Mailing-List": "linux-i2c@vger.kernel.org",
        "List-Id": "<linux-i2c.vger.kernel.org>",
        "List-Subscribe": "<mailto:linux-i2c+subscribe@vger.kernel.org>",
        "List-Unsubscribe": "<mailto:linux-i2c+unsubscribe@vger.kernel.org>",
        "MIME-Version": "1.0",
        "Content-Type": "text/plain; charset=\"utf-8\"",
        "Content-Transfer-Encoding": "7bit",
        "Message-Id": "<20260507-dw-i2c-v4-1-9a447b23bfdf@wkennington.com>",
        "References": "<20260507-dw-i2c-v4-0-9a447b23bfdf@wkennington.com>",
        "In-Reply-To": "<20260507-dw-i2c-v4-0-9a447b23bfdf@wkennington.com>",
        "To": "Mika Westerberg <mika.westerberg@linux.intel.com>,\n Andy Shevchenko <andriy.shevchenko@linux.intel.com>,\n Jan Dabros <jsd@semihalf.com>, Andi Shyti <andi.shyti@kernel.org>",
        "Cc": "linux-i2c@vger.kernel.org, linux-kernel@vger.kernel.org,\n \"William A. Kennington III\" <william@wkennington.com>",
        "X-Mailer": "b4 0.14.3"
    },
    "content": "Introduce an exported shutdown function to safely shutdown the\nDesignWare I2C controller.\n\nThis shutdown hook gracefully sets the target disable bit before disabling\nthe controller. This guarantees that any incoming requests from the\ncontroller are immediately NACKed during shutdown, preventing the bus from\nhanging.\n\nSigned-off-by: William A. Kennington III <william@wkennington.com>\n---\n drivers/i2c/busses/i2c-designware-common.c | 24 ++++++++++++++++++++++++\n drivers/i2c/busses/i2c-designware-core.h   |  1 +\n 2 files changed, 25 insertions(+)",
    "diff": "diff --git a/drivers/i2c/busses/i2c-designware-common.c b/drivers/i2c/busses/i2c-designware-common.c\nindex 4dc57fd56170..886f4dad166a 100644\n--- a/drivers/i2c/busses/i2c-designware-common.c\n+++ b/drivers/i2c/busses/i2c-designware-common.c\n@@ -1028,5 +1028,29 @@ EXPORT_GPL_DEV_PM_OPS(i2c_dw_dev_pm_ops) = {\n \tRUNTIME_PM_OPS(i2c_dw_runtime_suspend, i2c_dw_runtime_resume, NULL)\n };\n \n+void i2c_dw_shutdown(struct dw_i2c_dev *dev)\n+{\n+\tunsigned int con;\n+\n+\t/*\n+\t * We only need to handle shutdown for target mode to ensure\n+\t * we NACK any incoming controller requests. Master mode cleanup\n+\t * is handled after each transfer in i2c_dw_xfer().\n+\t */\n+\tif (dev->mode != DW_IC_SLAVE)\n+\t\treturn;\n+\n+\t/*\n+\t * To quickly NACK the controller during shutdown, we set the target\n+\t * disable bit while the controller is still enabled.\n+\t */\n+\tregmap_read(dev->map, DW_IC_CON, &con);\n+\tcon |= DW_IC_CON_SLAVE_DISABLE;\n+\tregmap_write(dev->map, DW_IC_CON, con);\n+\n+\ti2c_dw_disable(dev);\n+}\n+EXPORT_SYMBOL_GPL(i2c_dw_shutdown);\n+\n MODULE_DESCRIPTION(\"Synopsys DesignWare I2C bus adapter core\");\n MODULE_LICENSE(\"GPL\");\ndiff --git a/drivers/i2c/busses/i2c-designware-core.h b/drivers/i2c/busses/i2c-designware-core.h\nindex 9d8d104cc391..c71aa2dd368d 100644\n--- a/drivers/i2c/busses/i2c-designware-core.h\n+++ b/drivers/i2c/busses/i2c-designware-core.h\n@@ -417,6 +417,7 @@ static inline void i2c_dw_configure(struct dw_i2c_dev *dev)\n \n int i2c_dw_probe(struct dw_i2c_dev *dev);\n int i2c_dw_init(struct dw_i2c_dev *dev);\n+void i2c_dw_shutdown(struct dw_i2c_dev *dev);\n void i2c_dw_set_mode(struct dw_i2c_dev *dev, int mode);\n \n #if IS_ENABLED(CONFIG_I2C_DESIGNWARE_BAYTRAIL)\n",
    "prefixes": [
        "v4",
        "1/4"
    ]
}