Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/2194932/?format=api
{ "id": 2194932, "url": "http://patchwork.ozlabs.org/api/patches/2194932/?format=api", "web_url": "http://patchwork.ozlabs.org/project/qemu-devel/patch/20260210091018.1553489-17-jamin_lin@aspeedtech.com/", "project": { "id": 14, "url": "http://patchwork.ozlabs.org/api/projects/14/?format=api", "name": "QEMU Development", "link_name": "qemu-devel", "list_id": "qemu-devel.nongnu.org", "list_email": "qemu-devel@nongnu.org", "web_url": "", "scm_url": "", "webscm_url": "", "list_archive_url": "", "list_archive_url_format": "", "commit_url_format": "" }, "msgid": "<20260210091018.1553489-17-jamin_lin@aspeedtech.com>", "list_archive_url": null, "date": "2026-02-10T09:10:43", "name": "[v5,16/21] hw/i3c/dw-i3c: Add controller resets", "commit_ref": null, "pull_url": null, "state": "new", "archived": false, "hash": "e601edb8f489767eac37b2cbd32639ca52bdfada", "submitter": { "id": 81768, "url": "http://patchwork.ozlabs.org/api/people/81768/?format=api", "name": "Jamin Lin", "email": "jamin_lin@aspeedtech.com" }, "delegate": null, "mbox": "http://patchwork.ozlabs.org/project/qemu-devel/patch/20260210091018.1553489-17-jamin_lin@aspeedtech.com/mbox/", "series": [ { "id": 491625, "url": "http://patchwork.ozlabs.org/api/series/491625/?format=api", "web_url": "http://patchwork.ozlabs.org/project/qemu-devel/list/?series=491625", "date": "2026-02-10T09:10:19", "name": "i3c: aspeed: Add I3C support", "version": 5, "mbox": "http://patchwork.ozlabs.org/series/491625/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/2194932/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/2194932/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>", "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=aspeedtech.com header.i=@aspeedtech.com\n header.a=rsa-sha256 header.s=selector1 header.b=GzRFkwNo;\n\tdkim-atps=neutral", "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org\n (client-ip=209.51.188.17; helo=lists.gnu.org;\n envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n receiver=patchwork.ozlabs.org)", "dkim=none (message not signed)\n header.d=none;dmarc=none action=none header.from=aspeedtech.com;" ], "Received": [ "from lists.gnu.org (lists.gnu.org [209.51.188.17])\n\t(using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4f9G905zWFz1xwH\n\tfor <incoming@patchwork.ozlabs.org>; Tue, 10 Feb 2026 20:14:28 +1100 (AEDT)", "from localhost ([::1] helo=lists1p.gnu.org)\n\tby lists.gnu.org with esmtp (Exim 4.90_1)\n\t(envelope-from <qemu-devel-bounces@nongnu.org>)\n\tid 1vpjlx-0001k1-S9; Tue, 10 Feb 2026 04:11:05 -0500", "from eggs.gnu.org ([2001:470:142:3::10])\n by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <jamin_lin@aspeedtech.com>)\n id 1vpjlv-0001aS-AS; Tue, 10 Feb 2026 04:11:03 -0500", "from mail-koreacentralazlp170130006.outbound.protection.outlook.com\n ([2a01:111:f403:c40f::6] helo=SEYPR02CU001.outbound.protection.outlook.com)\n by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <jamin_lin@aspeedtech.com>)\n id 1vpjlt-0004mZ-5p; Tue, 10 Feb 2026 04:11:03 -0500", "from TYPPR06MB8206.apcprd06.prod.outlook.com (2603:1096:405:383::19)\n by KUZPR06MB8268.apcprd06.prod.outlook.com (2603:1096:d10:62::15)\n with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9587.19; Tue, 10 Feb\n 2026 09:10:43 +0000", "from TYPPR06MB8206.apcprd06.prod.outlook.com\n ([fe80::e659:1ead:77cb:f6d3]) by TYPPR06MB8206.apcprd06.prod.outlook.com\n ([fe80::e659:1ead:77cb:f6d3%3]) with mapi id 15.20.9587.017; Tue, 10 Feb 2026\n 09:10:43 +0000" ], "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;\n b=kZbaLW4K8CR0aemLK+JIEKPhcwU1GCqH+s5v0y9d9qIlcjb9RtH2fb1ZAw9xgyy3yWFUW3GW1masP3Rxz3ThX3SGVIpYXJjnBfDegSkHy6wQ5vSnZuZYU5aSXP38UJx2yf6cnARUpwxNPTvgLJMS1A07B6ssT6gk9iY5K5YHCHHZ0zRMY5zBqBuIrgKtXEjWAsK01PgDj638wRg52tLjsCAtRqtBGqdBmOhU6RlinJpYMZIfkOlo6RISqJwhSbtgzGCPFw0rqWspjPxmyo1mRQaRQz2JwXQxuP/Wfe26kZ0dIxauQ1wd1Z+0dwoCOebAjLPZSjdYXvA+UUH9XF+v2Q==", "ARC-Message-Signature": "i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector10001;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;\n bh=1TwHv/7KzfQ9FX9uU6wHs4J3dlaJJwwRwPKB8I479Jo=;\n b=SGhDvRRo1ZiPO58X2kkELqPM39b+ZY6L+EaFVIwSC9dZNRTQ6CggpcP3NBFuK5bVjK63awE7Wol7v1+bE4ARrr4YD0uvhpcRD4+GTQ21pepA6cigZhJuaKd3krPnDN1xbcU0/rYMn0PwVvV2aIpY3THlpAdOlsYKGhD0xHT6yp6/xIMY8fkw2do8aTl1YoCsH3jGXBe30hT9285Riqaxn4N8sDFeHCcAwxF5ypY1DRx3l4xNSqFHvXM04kQ+3t6USMZdUr/6wjCYC96DdbZXKVit0Hrq8X3e7X1uN650ONPc3sff57eYKiNTY4aucmZ1U2kCWgeMrXLEVayH+X6H7Q==", "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=aspeedtech.com; dmarc=pass action=none\n header.from=aspeedtech.com; dkim=pass header.d=aspeedtech.com; arc=none", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=aspeedtech.com;\n s=selector1;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=1TwHv/7KzfQ9FX9uU6wHs4J3dlaJJwwRwPKB8I479Jo=;\n b=GzRFkwNoZFpOZLXfJJgFQVHImdzaHCp0B4KF/xokCQfJR/n2/BCk46YiMuLdGsFW6UxaMxn2uF/kN4nQsIuDTtRO0ie+IwsPQCN2ahYkzz52TMrtIzeisTowLou1OElkpGey7KMXtwhdYIMz1iacqVKS2CdOuRIEW5uhOBJe0azWjcEM6JeKrDwxGynso4E1Qc2YLaIC3hWGKo3rjKFhwi0BOIur/BfE2I4SB6CvuRU59KoJbvTXz7k/S6i/CV7tC6nqlt6WQDnwF7FBLRjIa6NJTfP+bno4LHsqKFB0k11JagM44h1mOlYr3IrADyZfCJFPV+Ijr7WJ8Uh3V8Tlog==", "From": "Jamin Lin <jamin_lin@aspeedtech.com>", "To": "Paolo Bonzini <pbonzini@redhat.com>,\n Peter Maydell <peter.maydell@linaro.org>,\n =?iso-8859-1?q?C=E9dric_Le_Goater?= <clg@kaod.org>,\n Steven Lee <steven_lee@aspeedtech.com>, Troy Lee <leetroy@gmail.com>,\n Andrew Jeffery <andrew@codeconstruct.com.au>, Joel Stanley <joel@jms.id.au>,\n\t=?iso-8859-1?q?Marc-Andr=E9_Lureau?= <marcandre.lureau@redhat.com>,\n\t=?iso-8859-1?q?Daniel_P=2E_Berrang=E9?= <berrange@redhat.com>,\n\t=?iso-8859-1?q?Philippe_Mathieu-Daud=E9?= <philmd@linaro.org>,\n \"open list:All patches CC here\" <qemu-devel@nongnu.org>,\n \"open list:ARM TCG CPUs\" <qemu-arm@nongnu.org>", "CC": "Jamin Lin <jamin_lin@aspeedtech.com>, Troy Lee <troy_lee@aspeedtech.com>,\n Kane Chen <kane_chen@aspeedtech.com>, \"nabihestefan@google.com\"\n <nabihestefan@google.com>, Joe Komlodi <komlodi@google.com>, Patrick Venture\n <venture@google.com>, Stephen Longfield <slongfield@google.com>", "Subject": "[PATCH v5 16/21] hw/i3c/dw-i3c: Add controller resets", "Thread-Topic": "[PATCH v5 16/21] hw/i3c/dw-i3c: Add controller resets", "Thread-Index": "AQHcmm0iOoO98wBrVkm7uZ9FFOaTuw==", "Date": "Tue, 10 Feb 2026 09:10:43 +0000", "Message-ID": "<20260210091018.1553489-17-jamin_lin@aspeedtech.com>", "References": "<20260210091018.1553489-1-jamin_lin@aspeedtech.com>", "In-Reply-To": "<20260210091018.1553489-1-jamin_lin@aspeedtech.com>", "Accept-Language": "zh-TW, en-US", "Content-Language": "en-US", "X-MS-Has-Attach": "", "X-MS-TNEF-Correlator": "", "authentication-results": [ "legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=aspeedtech.com header.i=@aspeedtech.com\n header.a=rsa-sha256 header.s=selector1 header.b=GzRFkwNo;\n\tdkim-atps=neutral", "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org\n (client-ip=209.51.188.17; helo=lists.gnu.org;\n envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n receiver=patchwork.ozlabs.org)", "dkim=none (message not signed)\n header.d=none;dmarc=none action=none header.from=aspeedtech.com;" ], "x-ms-publictraffictype": "Email", "x-ms-traffictypediagnostic": "TYPPR06MB8206:EE_|KUZPR06MB8268:EE_", "x-ms-office365-filtering-correlation-id": "c1db6e2b-ebad-46c5-1642-08de688444fc", "x-ms-exchange-senderadcheck": "1", "x-ms-exchange-antispam-relay": "0", "x-microsoft-antispam": "BCL:0;\n ARA:13230040|366016|7416014|376014|1800799024|38070700021|921020;", "x-microsoft-antispam-message-info": "=?iso-8859-1?q?CUgj00jLjufNU66xjo34Rl75lo?=\n\t=?iso-8859-1?q?mGFTKnQKGo0OXyxPskg2Omh03xtqB+HzVAqS7Et0+jEhkKdSJ9C7ZpdkZNsU?=\n\t=?iso-8859-1?q?gp8MLBOEMeJiZu3DL0Gs3dQiPqIv5ZX6CQStcreMwrSl8uQxjzuiygTOycsw?=\n\t=?iso-8859-1?q?dwrBek/2MK4uRBLgjLHxMRFqjy+X2qM3+mLFuTdOXSdJ6VS6q+nTESnrYBMp?=\n\t=?iso-8859-1?q?wqrpYnaNW7NRp/eSfbGA1yb6vwpagPlpnuwVf6mdCf5szCHZl0qfoGtWO/Sj?=\n\t=?iso-8859-1?q?lYYtXD/eJrZKiNDsPYqqakaU4+2uxs9eWeRw9cx+HoE73M2gKX8SRRQz6Evm?=\n\t=?iso-8859-1?q?j1iRv7dah7WBInETf23qhE02mizYashdpR/E+1mjT7PKUClUXkqGot1ua2ii?=\n\t=?iso-8859-1?q?9BqDn8IJh5Msz5OGIeyAthFSHqqPralrKWnHnW8Nw0EvCd2MfPzoDYec4huV?=\n\t=?iso-8859-1?q?PRHtABriXOpm+gKRlxalFTeH1QIVrLGWzCbc5snKejp27MXvIsxL+Nv0Ea6A?=\n\t=?iso-8859-1?q?sd8rj48PWMBkWULOFqEYmQIq3Az45WX+zbndopj8mRMrmkYjnL8ULGbVOdIi?=\n\t=?iso-8859-1?q?vGXNjOb38xaTlnUewiv0yKmoWMKY0UO48ZhL+hQCi/ebpcEHHuAF+ZKccoQl?=\n\t=?iso-8859-1?q?Ci5q25Ms8rovy5qt9wALKcd6OMPSwecp5QE3pU/Ptjkb4SM4HXAuYHIbRICx?=\n\t=?iso-8859-1?q?fylAUpqLm9xRE44Q8+V9GvERHsP8cb2wbit3kA3oCTZj3YB7eKsS8uBN6eV/?=\n\t=?iso-8859-1?q?GfCrKyPOnUWVFXz/R4NaRzKLAPejiMXr9G9boXoXZbq7RKBVWvCKddJgwSFa?=\n\t=?iso-8859-1?q?XcXoY4JWi8zlDa6i+DFJ+YkwxFij8VjNCsTI1jMJwgwcNW739235+oazeLVg?=\n\t=?iso-8859-1?q?dagIDffpBbxM+xDfv8+zyKA6PPB0qSTAUoxNsdduPPItOIwypeAcPhtJpNW1?=\n\t=?iso-8859-1?q?H3Qn0JpTb18Ht0XPfh2A2xHij/hRibZY4sK/t4LRSVZb9uOla9csi4/FI6o/?=\n\t=?iso-8859-1?q?viAcFhXEdikOYnajGkdVq1kLCwcpjBCWAm7ySUwtRvhCxg1uJZZsgABdhKLi?=\n\t=?iso-8859-1?q?BD9Oe4IFT8Y2e88232J9w/OxnCuTZpVqZVEib2fmoYuDNBD1n6BSN+hknLav?=\n\t=?iso-8859-1?q?cYBtWvQTJ8ahHusGCNq3ptLGVbuZ2gyzWu960+pa686QQxYaUYmlm5VIum5M?=\n\t=?iso-8859-1?q?G0/FSn+Mvu1ng6bSR8zo10TWqLk+vXkiVpRA1jt60o6DaQGBg9fKdsd0dmRg?=\n\t=?iso-8859-1?q?2v95RdEom8Tg0w0pcmcszN72Q5P2kjwtNsAzem+l4Hly+m3VsXzURuOD7p8e?=\n\t=?iso-8859-1?q?OjdVEH69ki+PH4ns6O6n95w2KUa6pSE92XhKYPVGQ/DRiXDQkhqT2bN0wf7d?=\n\t=?iso-8859-1?q?wkV1pfdiSm4NKYOIuI58NaoxWDNmDs7NGgXptprCiDhImhlub7JJ0Wzufhz6?=\n\t=?iso-8859-1?q?lnVoT+0AO0FzCu7asbj3dsKL/9GMMuRekx3LQH49wSY67waqs6qfDqOJhOsu?=\n\t=?iso-8859-1?q?bLpn5yAJHRExcvLU4zEDocF+EilWUn/+J/2T6zaJBFTNqvfuWom5OOSNyu5D?=\n\t=?iso-8859-1?q?fxzObR1WYAUp992BsRVm5I8RazTZ4EGWHyF9VvX44Xpa3ghvi0aC6JHKVki8?=\n\t=?iso-8859-1?q?8ykec0lLc3XXezwqUgCamrfkPjszPdsg7JWerdoL4xtFOLvfJzfXJytXojmM?=\n\t=?iso-8859-1?q?fM0Kurt8BD/SlP7CO8?=", "x-forefront-antispam-report": "CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;\n IPV:NLI; SFV:NSPM; H:TYPPR06MB8206.apcprd06.prod.outlook.com; PTR:; CAT:NONE;\n SFS:(13230040)(366016)(7416014)(376014)(1800799024)(38070700021)(921020);\n DIR:OUT; SFP:1102;", "x-ms-exchange-antispam-messagedata-chunkcount": "1", "x-ms-exchange-antispam-messagedata-0": "=?iso-8859-1?q?1Zf3geNA/lCnu2ORBQ6OzV+?=\n\t=?iso-8859-1?q?xXj0dsaAheWlCuKKJ7fJ32qP751xPnKqW7qgyyTYK7mNNl93DjZw+wH0M6zE?=\n\t=?iso-8859-1?q?Rh/jUg+6yGqFhW81ODwssrhCUlWzKAM+5hujOqw1XLvihszyAgDnmG5kj9q7?=\n\t=?iso-8859-1?q?jQql5A4Hho01Sj414EeMifvu6LVDxyV2FjnUABllrFwPKlIbudVrhWLDvSq/?=\n\t=?iso-8859-1?q?/z8Wfviw+spoEH/mo97N6pjFFaN4aNA0LRhOfXGfCnc6/gxEKq11ByhjWfXQ?=\n\t=?iso-8859-1?q?YjS/JyR6F2Kzq2h/HEJ5R0eCTroeDNjCAOFSgsJJ9xEuRAfVjDbNW7L8KSvL?=\n\t=?iso-8859-1?q?4JKyhuuf/EEU0Pz1XnLULG6A3mv0ih1aLDkrQIIMJINeS9XSvxFSsI4KaPbr?=\n\t=?iso-8859-1?q?bJnSEVAvsNFkXyrnfSXZINlDZEVfcoILS3VAWgA9YEyr4FzYwSYx/K2o+lc0?=\n\t=?iso-8859-1?q?vccBV51SFcA83bV/EoscAKazurIG7BrOseOFwSm1TrdOb+LcHQAuUpGk3zFX?=\n\t=?iso-8859-1?q?1+sgUzluR12ThtXF42lTyWMaCzgAH1WoIgIBSFIbvJp3nMlW7alMwx9ELXxJ?=\n\t=?iso-8859-1?q?oS5MQMQJvvwB3Z9S9tRdDKt0GwrM9CxYJ66rQGwMjEm6ew6MauSHwhIwOhba?=\n\t=?iso-8859-1?q?HygqTdG371GfaBFKBUCr/PghtyhuaB7WE22WCfNQQZxWj35hYO5CxhV3HSu4?=\n\t=?iso-8859-1?q?U+9d/P/RgE7ZSaL/AzCoZd0S75EIFxYLJYmiqmYPIFVM9QGhoV9UaT9Yx44J?=\n\t=?iso-8859-1?q?EYJMua+rwW/hJICq2DFhaRU8urOS3eOEHvtRdcI5B1VhfJrj/7SDoQQCo1uf?=\n\t=?iso-8859-1?q?8HbUb5r6Dq8AntddjbvYpxpK/A8gKJ0rkr9qEIN/vpPSD0FKjTTr0NfMyr2G?=\n\t=?iso-8859-1?q?qg4vySKFqc8QQMRpArJqBPVOajIaGfSZWz8gbUzmkqJuJlxmDou9+9pX5cWd?=\n\t=?iso-8859-1?q?CjI5cuqgiUt1S3zlCjPJ5a0Kc7jw4Ke4Ts7C8e9Inw6ci88jOD4llJZySRmf?=\n\t=?iso-8859-1?q?LQYCKWqqU7ik0sRrQEYcrpNXyUqboF6nSUEd67DHfDstEZVv6b41UtRHrVVG?=\n\t=?iso-8859-1?q?Bj5Ik2txCmtDXQ7kpZ423YwEO4pKwQNDB0XW5wVnn8spC6Dd+Oq68iiAYT38?=\n\t=?iso-8859-1?q?xu5AE6Nw2b/QCXrQJulfK9w7KwoHzk3ViEgQKEl0tnCvu8enEP4MLr6/Ky55?=\n\t=?iso-8859-1?q?cfyMdJzSFuIEk5//U4WupPU84lzX8tDhB9F/Hn3uSQRDXQU4IZxn64QeM8SV?=\n\t=?iso-8859-1?q?fLNk8UetoM0yJE/YSsTER8I+EAzlTCEFSXh3OFMHgcrTVUt0Sc1BFadLVKii?=\n\t=?iso-8859-1?q?Pgebp5yZ/iwnn8RVkwgDB8ZsHXy6J7s2kbvz9R672sv3wobirCYu7f7MyLwI?=\n\t=?iso-8859-1?q?rkuSL9qU8s3jPvoDMlIuohrlhPnjW7HW+nIWm1FcE2QAYB0PJQQBCri7NIPV?=\n\t=?iso-8859-1?q?KuHK955Uzvza2KCsT16WLlvkw7nL6tV+kJEPK/n2qbhyAeOvDWX8Ghc0fkGf?=\n\t=?iso-8859-1?q?+n7JDnE028sdUxpigOuWddMWcO8AJVcPpVN4P9BJr124AFtbcYGF3BElT2Fd?=\n\t=?iso-8859-1?q?Rg8ZvDNC7qWZugxM6vjuMp2QqCvEaUrLw6Pg7iO+X9vb9hes61QBOw71WPb0?=\n\t=?iso-8859-1?q?WLZfxDtLsyAuLjNe3ktDULrBdqg7GL8BxlyHGsPmn4/ve5DT4TwgqTEZwzIs?=\n\t=?iso-8859-1?q?/Gtm/crdESiE4VZRN5X/8yT271Tb3XlHInbrvQvTXWTnmYAE0MtrA6KySMWN?=\n\t=?iso-8859-1?q?qTcRs8QX++gMtlzZW+//QmuFcOMJgo2jNx47gUX6MFB2vsw=3D=3D?=", "Content-Type": "text/plain; charset=\"iso-8859-1\"", "Content-Transfer-Encoding": "quoted-printable", "MIME-Version": "1.0", "X-OriginatorOrg": "aspeedtech.com", "X-MS-Exchange-CrossTenant-AuthAs": "Internal", "X-MS-Exchange-CrossTenant-AuthSource": "TYPPR06MB8206.apcprd06.prod.outlook.com", "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n c1db6e2b-ebad-46c5-1642-08de688444fc", "X-MS-Exchange-CrossTenant-originalarrivaltime": "10 Feb 2026 09:10:43.4878 (UTC)", "X-MS-Exchange-CrossTenant-fromentityheader": "Hosted", "X-MS-Exchange-CrossTenant-id": "43d4aa98-e35b-4575-8939-080e90d5a249", "X-MS-Exchange-CrossTenant-mailboxtype": "HOSTED", "X-MS-Exchange-CrossTenant-userprincipalname": "\n v2WqW65NcRtCFQ+MfsukyeD50rEnmK4WtBtYaJxSDsyOiqlhe4Qa3O1iEZfEVKBdAu3LTVIPnbVemXs9wuNJEhsn20L06bzG0VDIf0SVo+M=", "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "KUZPR06MB8268", "Received-SPF": "pass client-ip=2a01:111:f403:c40f::6;\n envelope-from=jamin_lin@aspeedtech.com;\n helo=SEYPR02CU001.outbound.protection.outlook.com", "X-Spam_score_int": "-20", "X-Spam_score": "-2.1", "X-Spam_bar": "--", "X-Spam_report": "(-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,\n DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,\n SPF_HELO_PASS=-0.001,\n SPF_PASS=-0.001 autolearn=ham autolearn_force=no", "X-Spam_action": "no action", "X-BeenThere": "qemu-devel@nongnu.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "qemu development <qemu-devel.nongnu.org>", "List-Unsubscribe": "<https://lists.nongnu.org/mailman/options/qemu-devel>,\n <mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>", "List-Archive": "<https://lists.nongnu.org/archive/html/qemu-devel>", "List-Post": "<mailto:qemu-devel@nongnu.org>", "List-Help": "<mailto:qemu-devel-request@nongnu.org?subject=help>", "List-Subscribe": "<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n <mailto:qemu-devel-request@nongnu.org?subject=subscribe>", "Errors-To": "qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org", "Sender": "qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org" }, "content": "Adds behavior to the device reset register.\n\nSigned-off-by: Joe Komlodi <komlodi@google.com>\nReviewed-by: Patrick Venture <venture@google.com>\nReviewed-by: Stephen Longfield <slongfield@google.com>\nReviewed-by: Jamin Lin <jamin_lin@aspeedtech.com>\nSigned-off-by: Jamin Lin <jamin_lin@aspeedtech.com>\n---\n hw/i3c/dw-i3c.c | 117 ++++++++++++++++++++++++++++++++++++++++++++\n hw/i3c/trace-events | 1 +\n 2 files changed, 118 insertions(+)", "diff": "diff --git a/hw/i3c/dw-i3c.c b/hw/i3c/dw-i3c.c\nindex b6ec0d9579..d742458129 100644\n--- a/hw/i3c/dw-i3c.c\n+++ b/hw/i3c/dw-i3c.c\n@@ -860,6 +860,122 @@ static void dw_i3c_intr_force_w(DWI3C *s, uint32_t val)\n dw_i3c_update_irq(s);\n }\n \n+static void dw_i3c_cmd_queue_reset(DWI3C *s)\n+{\n+ fifo32_reset(&s->cmd_queue);\n+\n+ ARRAY_FIELD_DP32(s->regs, QUEUE_STATUS_LEVEL, CMD_QUEUE_EMPTY_LOC,\n+ fifo32_num_free(&s->cmd_queue));\n+ uint8_t empty_threshold = ARRAY_FIELD_EX32(s->regs, QUEUE_THLD_CTRL,\n+ CMD_BUF_EMPTY_THLD);\n+ if (fifo32_num_free(&s->cmd_queue) >= empty_threshold) {\n+ ARRAY_FIELD_DP32(s->regs, INTR_STATUS, CMD_QUEUE_RDY, 1);\n+ dw_i3c_update_irq(s);\n+ };\n+}\n+\n+static void dw_i3c_resp_queue_reset(DWI3C *s)\n+{\n+ fifo32_reset(&s->resp_queue);\n+\n+ ARRAY_FIELD_DP32(s->regs, QUEUE_STATUS_LEVEL, RESP_BUF_BLR,\n+ fifo32_num_used(&s->resp_queue));\n+ /*\n+ * This interrupt will always be cleared because the threshold is a minimum\n+ * of 1 and the queue size is 0.\n+ */\n+ ARRAY_FIELD_DP32(s->regs, INTR_STATUS, RESP_RDY, 0);\n+ dw_i3c_update_irq(s);\n+}\n+\n+static void dw_i3c_ibi_queue_reset(DWI3C *s)\n+{\n+ fifo32_reset(&s->ibi_queue);\n+\n+ ARRAY_FIELD_DP32(s->regs, QUEUE_STATUS_LEVEL, IBI_BUF_BLR,\n+ fifo32_num_used(&s->resp_queue));\n+ /*\n+ * This interrupt will always be cleared because the threshold is a minimum\n+ * of 1 and the queue size is 0.\n+ */\n+ ARRAY_FIELD_DP32(s->regs, INTR_STATUS, IBI_THLD, 0);\n+ dw_i3c_update_irq(s);\n+}\n+\n+static void dw_i3c_tx_queue_reset(DWI3C *s)\n+{\n+ fifo32_reset(&s->tx_queue);\n+\n+ ARRAY_FIELD_DP32(s->regs, DATA_BUFFER_STATUS_LEVEL, TX_BUF_EMPTY_LOC,\n+ fifo32_num_free(&s->tx_queue));\n+ /* TX buf is empty, so this interrupt will always be set. */\n+ ARRAY_FIELD_DP32(s->regs, INTR_STATUS, TX_THLD, 1);\n+ dw_i3c_update_irq(s);\n+}\n+\n+static void dw_i3c_rx_queue_reset(DWI3C *s)\n+{\n+ fifo32_reset(&s->rx_queue);\n+\n+ ARRAY_FIELD_DP32(s->regs, DATA_BUFFER_STATUS_LEVEL, RX_BUF_BLR,\n+ fifo32_num_used(&s->resp_queue));\n+ /*\n+ * This interrupt will always be cleared because the threshold is a minimum\n+ * of 1 and the queue size is 0.\n+ */\n+ ARRAY_FIELD_DP32(s->regs, INTR_STATUS, RX_THLD, 0);\n+ dw_i3c_update_irq(s);\n+}\n+\n+static void dw_i3c_reset(DeviceState *dev)\n+{\n+ DWI3C *s = DW_I3C(dev);\n+ trace_dw_i3c_reset(s->cfg.id);\n+\n+ memcpy(s->regs, dw_i3c_resets, sizeof(s->regs));\n+ /*\n+ * The user config for these may differ from our resets array, set them\n+ * manually.\n+ */\n+ ARRAY_FIELD_DP32(s->regs, DEVICE_ADDR_TABLE_POINTER, ADDR,\n+ s->cfg.dev_addr_table_pointer);\n+ ARRAY_FIELD_DP32(s->regs, DEVICE_ADDR_TABLE_POINTER, DEPTH,\n+ s->cfg.dev_addr_table_depth);\n+ ARRAY_FIELD_DP32(s->regs, DEV_CHAR_TABLE_POINTER,\n+ P_DEV_CHAR_TABLE_START_ADDR,\n+ s->cfg.dev_char_table_pointer);\n+ ARRAY_FIELD_DP32(s->regs, DEV_CHAR_TABLE_POINTER, DEV_CHAR_TABLE_DEPTH,\n+ s->cfg.dev_char_table_depth);\n+\n+ dw_i3c_cmd_queue_reset(s);\n+ dw_i3c_resp_queue_reset(s);\n+ dw_i3c_ibi_queue_reset(s);\n+ dw_i3c_tx_queue_reset(s);\n+ dw_i3c_rx_queue_reset(s);\n+}\n+\n+static void dw_i3c_reset_ctrl_w(DWI3C *s, uint32_t val)\n+{\n+ if (FIELD_EX32(val, RESET_CTRL, CORE_RESET)) {\n+ dw_i3c_reset(DEVICE(s));\n+ }\n+ if (FIELD_EX32(val, RESET_CTRL, CMD_QUEUE_RESET)) {\n+ dw_i3c_cmd_queue_reset(s);\n+ }\n+ if (FIELD_EX32(val, RESET_CTRL, RESP_QUEUE_RESET)) {\n+ dw_i3c_resp_queue_reset(s);\n+ }\n+ if (FIELD_EX32(val, RESET_CTRL, TX_BUF_RESET)) {\n+ dw_i3c_tx_queue_reset(s);\n+ }\n+ if (FIELD_EX32(val, RESET_CTRL, RX_BUF_RESET)) {\n+ dw_i3c_rx_queue_reset(s);\n+ }\n+ if (FIELD_EX32(val, RESET_CTRL, IBI_QUEUE_RESET)) {\n+ dw_i3c_ibi_queue_reset(s);\n+ }\n+}\n+\n static uint32_t dw_i3c_pop_rx(DWI3C *s)\n {\n if (fifo32_is_empty(&s->rx_queue)) {\n@@ -1617,6 +1733,7 @@ static void dw_i3c_write(void *opaque, hwaddr offset, uint64_t value,\n dw_i3c_cmd_queue_port_w(s, val32);\n break;\n case R_RESET_CTRL:\n+ dw_i3c_reset_ctrl_w(s, val32);\n break;\n case R_INTR_STATUS:\n dw_i3c_intr_status_w(s, val32);\ndiff --git a/hw/i3c/trace-events b/hw/i3c/trace-events\nindex a262fcce39..39f33d9a50 100644\n--- a/hw/i3c/trace-events\n+++ b/hw/i3c/trace-events\n@@ -11,6 +11,7 @@ dw_i3c_send(uint32_t deviceid, uint32_t num_bytes) \"I3C Dev[%u] send %\" PRId32 \"\n dw_i3c_recv_data(uint32_t deviceid, uint32_t num_bytes) \"I3C Dev[%u] recv %\" PRId32 \" bytes from bus\"\n dw_i3c_ibi_recv(uint32_t deviceid, uint8_t ibi_byte) \"I3C Dev[%u] recv IBI byte 0x%\" PRIx8\n dw_i3c_ibi_handle(uint32_t deviceid, uint8_t addr, bool rnw) \"I3C Dev[%u] handle IBI from address 0x%\" PRIx8 \" RnW=%d\"\n+dw_i3c_reset(uint32_t deviceid) \"I3C Dev[%u] reset\"\n dw_i3c_pop_rx(uint32_t deviceid, uint32_t data) \"I3C Dev[%u] pop 0x%\" PRIx32 \" from RX FIFO\"\n dw_i3c_resp_queue_push(uint32_t deviceid, uint32_t data) \"I3C Dev[%u] push 0x%\" PRIx32 \" to response queue\"\n dw_i3c_push_tx(uint32_t deviceid, uint32_t data) \"I3C Dev[%u] push 0x%\" PRIx32 \" to TX FIFO\"\n", "prefixes": [ "v5", "16/21" ] }