Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/2194866/?format=api
{ "id": 2194866, "url": "http://patchwork.ozlabs.org/api/patches/2194866/?format=api", "web_url": "http://patchwork.ozlabs.org/project/qemu-devel/patch/20260210051008.355149-9-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": "<20260210051008.355149-9-jamin_lin@aspeedtech.com>", "list_archive_url": null, "date": "2026-02-10T05:10:18", "name": "[v2,08/11] tests/functional/aarch64/test_aspeed_ast2700: Add AST2700 A2 EVB functional tests", "commit_ref": null, "pull_url": null, "state": "new", "archived": false, "hash": "d2f8db0022d48f21e6b7d1f1c25b6f2bdd12b1e5", "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/20260210051008.355149-9-jamin_lin@aspeedtech.com/mbox/", "series": [ { "id": 491601, "url": "http://patchwork.ozlabs.org/api/series/491601/?format=api", "web_url": "http://patchwork.ozlabs.org/project/qemu-devel/list/?series=491601", "date": "2026-02-10T05:10:11", "name": "[v2,01/11] hw/misc/aspeed_scu: Remove unused SoC silicon revision definitions", "version": 2, "mbox": "http://patchwork.ozlabs.org/series/491601/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/2194866/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/2194866/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=awteZQyK;\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 4f98nV2st6z1xtV\n\tfor <incoming@patchwork.ozlabs.org>; Tue, 10 Feb 2026 16:12:14 +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 1vpg1R-0003CH-GP; Tue, 10 Feb 2026 00:10:49 -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 1vpg1L-00037t-Dd; Tue, 10 Feb 2026 00:10:44 -0500", "from mail-japaneastazlp170120005.outbound.protection.outlook.com\n ([2a01:111:f403:c405::5] helo=TYPPR03CU001.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 1vpg1I-0000Go-Gq; Tue, 10 Feb 2026 00:10:43 -0500", "from TYPPR06MB8206.apcprd06.prod.outlook.com (2603:1096:405:383::19)\n by TY1PPF9851F8D71.apcprd06.prod.outlook.com (2603:1096:408::91f)\n with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9564.15; Tue, 10 Feb\n 2026 05:10:19 +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 05:10:18 +0000" ], "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;\n b=PL4Wtn91uvS7OcVuygQgodT1iHCj4wGl6XRzSwZ1wJEVUYxXXYXVpe7CShxPPST8uGMhtOxyi55QNvtWaIMdcYQZxcw/zd2S9zhIX6jW6FSvzVzWdl9R356LyMSRkVRsscF8oozerJ4tsfLka+iIxwH1p1yFM8j720oeByrF6Grhw+EHUatdAA4cSQ5TFN7t/w92eHksw00rW1KHKlB6Q2kzZdcbsyhtThZrQH5jxIDOr+L0ARsZ75yd8W6oxS16oUJXM98hlleuTW1xU55WFB7DIzGOQ9RhNpZA0IS+u3f7VQe88dfWFMyF+RveRbsrGXeIkp0oO9dp0m9XiUjXfQ==", "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=br+QEf8Nj8kSFwTCV+J7cXjK/u1NBiM/tYaDeCxcdWs=;\n b=dXbvo+IRn2UJtznCaEQAKHZIW/b10OXY8AAw+aQ1tNYO7cM/zIxiQd2bynW75SPdGtn6L4XnL5DanC0ojD5Urch7o2gEXheDaJ8X95L5bqTPCRlxtjBGH7BoFtWJzxDhE/4Ac1CxvHBBEjotfcD57/GGMVMm/wcthR0hbEAkuxBGAV5JgyuSpYMrth5sToM9/tTFShEiVQpCGEub3m3k+KJx9Xc1zIZiEhHAL5y2JBVrDciani7oIsKdDkVmphpcD8itrXSSc7rYr7r0H1RTn2BUQ3bt2KQYLw95z+rfiWQxtW90bZRkWKfMQQIyoibHcBRDIiJK+1BHSpQQKtOLjA==", "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=br+QEf8Nj8kSFwTCV+J7cXjK/u1NBiM/tYaDeCxcdWs=;\n b=awteZQyK6WNoRV01q6nj/rw3SWay0rkaXBezL+W/KywoTdhHh6Fyndy0VYU7jtT5KTfgGADA3kP+oKeG4KDH44O4rV7++DmBvRVMvngmQMLLgBFrXJk/nHZ6xy5JARRhiRdaaJhReO0ZMqKyzy14SPlbUipf+t+z6L3JA9eDZ2ZmEHWwH3MsNoNn3K22nOOelwHxbpVd1rMiA2bJJzicErwz8lK3fuRafyNiNuAiQWAQZSI9bn/5GWHP+okRU/asJ4UimrxCgdijII0larZVX6G+835ZJi3UDgnNB6MckJk8pEpWuyuutVaw9xREWpGTJIftgwVT/E6GqPUc5OkgkA==", "From": "Jamin Lin <jamin_lin@aspeedtech.com>", "To": "=?iso-8859-1?q?C=E9dric_Le_Goater?= <clg@kaod.org>,\n Peter Maydell <peter.maydell@linaro.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 Fabiano Rosas <farosas@suse.de>, Laurent Vivier <lvivier@redhat.com>,\n Paolo Bonzini <pbonzini@redhat.com>,\n \"open list:ASPEED BMCs\" <qemu-arm@nongnu.org>,\n \"open list:All patches CC here\" <qemu-devel@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>", "Subject": "[PATCH v2 08/11] tests/functional/aarch64/test_aspeed_ast2700: Add\n AST2700 A2 EVB functional tests", "Thread-Topic": "[PATCH v2 08/11] tests/functional/aarch64/test_aspeed_ast2700:\n Add AST2700 A2 EVB functional tests", "Thread-Index": "AQHcmkuMY3Xq9yXsV0qMkx9bBAe6vg==", "Date": "Tue, 10 Feb 2026 05:10:18 +0000", "Message-ID": "<20260210051008.355149-9-jamin_lin@aspeedtech.com>", "References": "<20260210051008.355149-1-jamin_lin@aspeedtech.com>", "In-Reply-To": "<20260210051008.355149-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=awteZQyK;\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_|TY1PPF9851F8D71:EE_", "x-ms-office365-filtering-correlation-id": "7394f46e-8cbc-48da-f678-08de6862af38", "x-ms-exchange-senderadcheck": "1", "x-ms-exchange-antispam-relay": "0", "x-microsoft-antispam": "BCL:0;\n ARA:13230040|376014|7416014|1800799024|366016|921020|7142099003|38070700021;", "x-microsoft-antispam-message-info": "=?iso-8859-1?q?AlRfqu8WBgEiTl+THlQkb6NwS3?=\n\t=?iso-8859-1?q?jA+sG/QiWFxbHrW2/7WQ96VYxGVpCk5l/KtlF2+e8b2XfSgntQwkmulVmemC?=\n\t=?iso-8859-1?q?8ybtLojEmmQJH1bWAmA+XYObp9yXtG5Td+6e5LZcIxms5jxF7jVcjE03yy/1?=\n\t=?iso-8859-1?q?b74345nuN2nx3jDH46fXRS7IAKn7LdKgZjkEAB9srjpzOE+NoWuByNKDDRTI?=\n\t=?iso-8859-1?q?CdN4vuUsZOYmsegxX+auiEk6KtQYHv46+1X2R6ktkpTxqZXegKLDaFUFkf0s?=\n\t=?iso-8859-1?q?suw1Cexg+ZPCeABCfULTMEYXq2d5nzkWDSKT6dVsx71ZiBd2LNYpN2o3mvlT?=\n\t=?iso-8859-1?q?ObgpMKpiUeKbomspSwYcynM0iZ39hMJrSLMYyS09ke7JqiYXoyYruHBAHxOY?=\n\t=?iso-8859-1?q?3ilhx/xWj4tKIDSU/mtTMR9dnbBU20NdqXviRJeTBDX8EV0sXIv6Z/cKUNh2?=\n\t=?iso-8859-1?q?HVRKK0p1Z86QL89ENG130JEDIG15rMlRxZCVwCg6BKMxjgTaUAUWvJVenbyt?=\n\t=?iso-8859-1?q?OlgUo6rg9IRpfLN/D0BN9MJJgyWzqWzU49XD947fi8mwT2vwexEZLlqumd7R?=\n\t=?iso-8859-1?q?dWsPHlWcRLBg26tDQr5iQmyUaRTy4TnMwa0B/MjKiOoM6oHA9viO9m+X/Q+8?=\n\t=?iso-8859-1?q?u9DxwQFbCW+Qy0hYn4UEbf93dvuQh0SapWqNjVSM5uLjqx2Jt9nji53793kq?=\n\t=?iso-8859-1?q?q8TtKEXc3K4WIf36fOaSbHEvemjZdh+2ki90BnzoGsPOZVpixyRmc3LMPxwU?=\n\t=?iso-8859-1?q?auLguTal9Vk7LdKOcmz8SlnyR+fh/nV+eiWKz8Z1MgbitTLoDodMjH4Shn5b?=\n\t=?iso-8859-1?q?6tfViPkAg16zA64XwBWIor5fq4PSO1+TNmBblZnDYXehdVXh0FTJT9/+BdDi?=\n\t=?iso-8859-1?q?qofXgPnW/IJnf6YfC8HU+bbAhZaA6NkNcJ+nM3XMX3j96FttnaSGYUPEg4rx?=\n\t=?iso-8859-1?q?+sb0VO+VOaeMCA/qQxU6J5drXPGbRye0fT8UM0mHACkgx7fCBw7yBavGmiTF?=\n\t=?iso-8859-1?q?FKf8qwvf1VSevlbCVEzJQaQFm+JhtVtx+ZYUOp8XoZmynU3QhlNiBDZlK9vV?=\n\t=?iso-8859-1?q?D3O1OoHgad4xLgt7j3s10/Gbz1beHcFQAjdGEzG2G5EGZ3LPP00Mm0Dcw6RN?=\n\t=?iso-8859-1?q?DUGsguVQvBuMRD6K6daLWVfLrN8qXvtFem02v+ghKL2oO8c+jo8JszkBBOhL?=\n\t=?iso-8859-1?q?hnl3M8orDv5SF42OuyiuHeNC9Qgc4bahUu837q3izQnRUdGtpGkI4w5710MN?=\n\t=?iso-8859-1?q?zyJmnKCFNk475MJNd4pZnV7GG6uuT2LpYxLrrAjVaKSTLCJ1jVjM5888OUbv?=\n\t=?iso-8859-1?q?4+KKpKtkcA7+DXwE24VUycLJrLybGJWcRnbR4wotAbgTJCAvBwBU3bxKZHlI?=\n\t=?iso-8859-1?q?ux1arkUNYTAogbjNl5wV8bqBMScwOjkKCPDsSs8Q9WRRYBa9rRANtOnHtt+V?=\n\t=?iso-8859-1?q?eUbb8ZR6PNITPuWCrac+UwqVvYWKiPgvvPLLcPII6hDcI0swzko7q+Waeri9?=\n\t=?iso-8859-1?q?gC2/hEB8HhlkuMAlu5HnmWYm7O9LqK3xMlas+A4ByFEgbA+GaAPTZ98PuK48?=\n\t=?iso-8859-1?q?E31G2uH9bxZKn4CVe8MCnJPA4H8h/KWDuiG065F/OP/sK5chgg8j+lkvzWcv?=\n\t=?iso-8859-1?q?W5/SyUGwF+CdeK6RyYYzH2ysvvcqWo/MQDuQ=3D=3D?=", "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)(376014)(7416014)(1800799024)(366016)(921020)(7142099003)(38070700021);\n DIR:OUT; SFP:1102;", "x-ms-exchange-antispam-messagedata-chunkcount": "1", "x-ms-exchange-antispam-messagedata-0": "=?iso-8859-1?q?dXMAMZzRoLrLmAPjOoss6Qw?=\n\t=?iso-8859-1?q?oF/f2/kdYCkTsF4NvHE17eZa3QHAqsMKwEQ114ECWrMFOZ2vQkkz5k/9AOEo?=\n\t=?iso-8859-1?q?xHqiLFZ2YqWr+VmTkTW5KrN6iavQ9c7g1V0swDe0BEvWUhSSfnQR9nlgupmJ?=\n\t=?iso-8859-1?q?vBvXrIjPyW8Et79CMpgXYgkZkGduDAlj9i4JqQhN4BRMxiebPW9iLGxcZPld?=\n\t=?iso-8859-1?q?ygxiKj66CkWdzNM5ieubQ2DNJclWGtK4Ncx9guIVNdU4M7lrRlUoDXV7yVLQ?=\n\t=?iso-8859-1?q?3pR73I5AXDsQWLrIsypOhYjuN5ZYEXfcYgkUspWvY/yNMoJJDi/vG0XqsWT+?=\n\t=?iso-8859-1?q?dzl8ZkltLo85uQ5p8viSbPLTHYJQd7esWNK5UNLvUMa+yhc2uG02yA3rWOPL?=\n\t=?iso-8859-1?q?LGbXBr5Z2AnhyO9HcML/SJMtGaycqwAxXCpEHbg1fiiQm2yHlPUsz/CY5pfM?=\n\t=?iso-8859-1?q?9cZT9dVCZffF44q6diI9+vPYlFiO44yrRPecLISxX8D9keDhkw/rMMSEXRVd?=\n\t=?iso-8859-1?q?efKMleBqEjgpXC2+A/UWgo2XnI6737QT39iFXGW1p9Z+gFMxTD/mmqjVbjMk?=\n\t=?iso-8859-1?q?RYRRLKcAm0wWKavTifs2lNtt2jp3quG9CGkFirFfjorWj7M6eS/IY+2VbtpU?=\n\t=?iso-8859-1?q?/ZGWcCC4wELNvlcRc6OG+Fl3VhzYz8ykTG5W1Z/9isbDr1nD72aa3QrDnM/M?=\n\t=?iso-8859-1?q?3TurRefdKJp2VmGgJknlSxotVyozTnwG8DrQnhiUDs9tWRCPqmlHxQIwPsg5?=\n\t=?iso-8859-1?q?BthuTh849ZlfkYiuHLjkWHNYrjmtmUH8AIYaTdTp51C+3K+0/geXuhqwui0P?=\n\t=?iso-8859-1?q?eZSlwITekcC0O2h2QU/+4lWrYvw46v7xaj2PZXGIegZhnYeU6cfnWNFwIUtE?=\n\t=?iso-8859-1?q?+APqSByb8E5/QQqBi2MsZPdXCaOCwB47+nx/VZD+fj1g3Iz7L8eKvYS+XheP?=\n\t=?iso-8859-1?q?+6Qw6Dzus4OJOLDifr1l9+11nGB2iSSVJ8Gb0cREswVNb5dKG7m6/46A68LK?=\n\t=?iso-8859-1?q?i9mJRKN3BKftwggbHAK31vMSnCuW8Ww4bqxgu1rX3p7upXH441zpOz1Sr2eK?=\n\t=?iso-8859-1?q?HfodGgaiBVVrSDl/TcA/LCHpKDsfYzGxSpc6/V+2m5QI89if8L/WFdieQfi9?=\n\t=?iso-8859-1?q?tyKWPGyDz/YYV5HUC/QD9cqkcaphzSx4HD6087oycXKB31CxzfouGbFc0Joy?=\n\t=?iso-8859-1?q?KC6YHqE7CDSQAgwG30bH6WNQnr6J5M1D/SwB8j3kjAE008chOOrOfQdJQS3Y?=\n\t=?iso-8859-1?q?7rg4OeWM6Dh1Y2doVxQRz4wLd2LyBNu1Nt/amvm7oRduteCM2d2SWuTNWZrp?=\n\t=?iso-8859-1?q?qMP5pvAfQpJkhqyYNlOqI+zhE7H+SA3S2xsRDRom1761lnLw9MAu+iSuAceE?=\n\t=?iso-8859-1?q?vYGnwxHhNHgCO7c+vlmlxmlq2050iPYbMT1dKzx5RWYpJaG4GftVYviXXkP6?=\n\t=?iso-8859-1?q?TmB1+nv8Iw2GXXYexDBSBYSqOAWnaD3Z75jp02kf5sajbHtmo+fQ3uIWz7qc?=\n\t=?iso-8859-1?q?EX+dkJGCiRAn+hsGCwJUxr7/zrR8I7MqOo9e7XjkaYmUab3pgJ7wsOCkf3Ir?=\n\t=?iso-8859-1?q?f53b3y39HQ6VPp0YSrMeGPNhHCSfF/qcZsJ+wTtA8vKpEdIRPInNmCLhrYVo?=\n\t=?iso-8859-1?q?UzzlPPXXhvbWJ8m6LR8MpjTggBQOSQhXMN8aVchwe3dJ6+pqPj4zAMI8eOTP?=\n\t=?iso-8859-1?q?rB4gjw0ziRJMTw8AP4wVoip8yq8Oy2hxTg7vLZc3xPz3SAUxcT6NO6DU+fwV?=\n\t=?iso-8859-1?q?CVFORBfUrfaI59sGfu9DIrcyDdf1SL9fXSiGAuBifNEgjKQ=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 7394f46e-8cbc-48da-f678-08de6862af38", "X-MS-Exchange-CrossTenant-originalarrivaltime": "10 Feb 2026 05:10:18.8585 (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 hYGQjMOMEIX8a/ghDMPlLqJcuvSbBjq5bFfKq8hzf8/9MwHdG4jjTLskSi8sHSyWvHKw/X48QmB7y+CcF+TFvYT/Jluy7l/yTiwum3L2+NA=", "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "TY1PPF9851F8D71", "Received-SPF": "pass client-ip=2a01:111:f403:c405::5;\n envelope-from=jamin_lin@aspeedtech.com;\n helo=TYPPR03CU001.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": "Add functional coverage for the AST2700 A2 EVB machine by introducing\ntest cases that boot and validate an OpenBMC SDK v11.00 image on\n\"ast2700a2-evb\".\n\nSigned-off-by: Jamin Lin <jamin_lin@aspeedtech.com>\n---\n tests/functional/aarch64/meson.build | 2 +\n .../functional/aarch64/test_aspeed_ast2700.py | 190 ++++++++++++++++++\n 2 files changed, 192 insertions(+)\n create mode 100644 tests/functional/aarch64/test_aspeed_ast2700.py", "diff": "diff --git a/tests/functional/aarch64/meson.build b/tests/functional/aarch64/meson.build\nindex b5dd674bac..1bf0a30a9b 100644\n--- a/tests/functional/aarch64/meson.build\n+++ b/tests/functional/aarch64/meson.build\n@@ -3,6 +3,7 @@\n test_aarch64_timeouts = {\n 'aspeed_ast2700a1' : 600,\n 'aspeed_ast2700fc' : 600,\n+ 'aspeed_ast2700' : 600,\n 'device_passthrough' : 720,\n 'imx8mp_evk' : 240,\n 'raspi4' : 480,\n@@ -25,6 +26,7 @@ tests_aarch64_system_quick = [\n tests_aarch64_system_thorough = [\n 'aspeed_ast2700a1',\n 'aspeed_ast2700fc',\n+ 'aspeed_ast2700',\n 'device_passthrough',\n 'hotplug_pci',\n 'imx8mp_evk',\ndiff --git a/tests/functional/aarch64/test_aspeed_ast2700.py b/tests/functional/aarch64/test_aspeed_ast2700.py\nnew file mode 100644\nindex 0000000000..64f0a5abe4\n--- /dev/null\n+++ b/tests/functional/aarch64/test_aspeed_ast2700.py\n@@ -0,0 +1,190 @@\n+#!/usr/bin/env python3\n+#\n+# Functional test that boots the ASPEED SoCs with firmware\n+#\n+# Copyright (C) 2022 ASPEED Technology Inc\n+#\n+# SPDX-License-Identifier: GPL-2.0-or-later\n+\n+import os\n+\n+from qemu_test import QemuSystemTest, Asset\n+from qemu_test import wait_for_console_pattern, exec_command\n+from qemu_test import exec_command_and_wait_for_pattern\n+\n+\n+class AST2x00MachineSDK(QemuSystemTest):\n+\n+ def do_test_aarch64_aspeed_sdk_start(self, image, bus_id):\n+ bus_str = str(bus_id)\n+ self.require_netdev('user')\n+ self.vm.set_console()\n+ self.vm.add_args(\n+ '-device',\n+ f'tmp105,'\n+ f'bus=aspeed.i2c.bus.{bus_str},'\n+ f'address=0x4d,'\n+ f'id=tmp-test-{bus_str}'\n+ )\n+ self.vm.add_args('-drive', 'file=' + image + ',if=mtd,format=raw',\n+ '-net', 'nic', '-net', 'user', '-snapshot')\n+\n+ self.vm.launch()\n+\n+ def verify_vbootrom_firmware_flow(self):\n+ wait_for_console_pattern(self, 'Found valid caliptra flash image')\n+ wait_for_console_pattern(self, 'Check flash image checksum')\n+ wait_for_console_pattern(self, 'pass')\n+ wait_for_console_pattern(self, 'Read abb header')\n+ wait_for_console_pattern(self, 'pass')\n+ wait_for_console_pattern(self, 'Read soc manifest')\n+ wait_for_console_pattern(self, 'pass')\n+ wait_for_console_pattern(self, 'Load atf image')\n+ wait_for_console_pattern(self, 'pass')\n+ wait_for_console_pattern(self, 'Load optee image')\n+ wait_for_console_pattern(self, 'pass')\n+ wait_for_console_pattern(self, 'Load uboot image')\n+ wait_for_console_pattern(self, 'pass')\n+ wait_for_console_pattern(self, 'Load ssp image')\n+ wait_for_console_pattern(self, 'pass')\n+ wait_for_console_pattern(self, 'Load tsp image')\n+ wait_for_console_pattern(self, 'pass')\n+ wait_for_console_pattern(self, 'Jumping to BL31 (Trusted Firmware-A)')\n+\n+ def enable_ast2700_pcie2(self):\n+ wait_for_console_pattern(self, 'Hit any key to stop autoboot')\n+ exec_command_and_wait_for_pattern(self, '\\012', '=>')\n+ exec_command_and_wait_for_pattern(self,\n+ 'cp 100420000 403000000 900000', '=>')\n+ exec_command_and_wait_for_pattern(self,\n+ 'bootm start 403000000', '=>')\n+ exec_command_and_wait_for_pattern(self, 'bootm loados', '=>')\n+ exec_command_and_wait_for_pattern(self, 'bootm ramdisk', '=>')\n+ exec_command_and_wait_for_pattern(self, 'bootm prep', '=>')\n+ exec_command_and_wait_for_pattern(self,\n+ 'fdt set /soc@14000000/pcie@140d0000 status \"okay\"', '=>')\n+ exec_command(self, 'bootm go')\n+\n+ def verify_openbmc_boot_start(self, enable_pcie=True):\n+ wait_for_console_pattern(self, 'U-Boot 2023.10')\n+ if enable_pcie:\n+ self.enable_ast2700_pcie2()\n+ wait_for_console_pattern(self, 'Linux version ')\n+\n+ def verify_openbmc_boot_and_login(self, name, enable_pcie=True):\n+ self.verify_openbmc_boot_start(enable_pcie)\n+\n+ wait_for_console_pattern(self, f'{name} login:')\n+ exec_command_and_wait_for_pattern(self, 'root', 'Password:')\n+ exec_command_and_wait_for_pattern(self, '0penBmc', f'root@{name}:~#')\n+\n+ ASSET_SDK_V1100_AST2700 = Asset(\n+ 'https://github.com/AspeedTech-BMC/openbmc/releases/download/v11.00/ast2700-default-obmc.tar.gz',\n+ 'e2b8f043fe8063dd3b6ded93422e38bd41914dc9c3202199507652df024de4dc')\n+\n+ ASSET_SDK_V1100_AST2700_DCSCM = Asset(\n+ 'https://github.com/AspeedTech-BMC/openbmc/releases/download/v11.00/ast2700-dcscm-obmc.tar.gz',\n+ '0e93f7976139da71fab9df7952a58bdd80650e23e7abf5853b0eb6695deb02d0')\n+\n+ def do_ast2700_i2c_test(self, bus_id):\n+ bus_str = str(bus_id)\n+ exec_command_and_wait_for_pattern(self,\n+ 'echo lm75 0x4d > '\n+ f'/sys/class/i2c-dev/i2c-{bus_str}/device/new_device ',\n+ f'i2c i2c-{bus_str}: new_device: Instantiated device lm75 at 0x4d')\n+ exec_command_and_wait_for_pattern(self,\n+ f'cat /sys/bus/i2c/devices/{bus_str}-004d/hwmon/hwmon*/temp1_input',\n+ '0')\n+ self.vm.cmd('qom-set', path=f'/machine/peripheral/tmp-test-{bus_str}',\n+ property='temperature', value=18000)\n+ exec_command_and_wait_for_pattern(self,\n+ f'cat /sys/bus/i2c/devices/{bus_str}-004d/hwmon/hwmon*/temp1_input',\n+ '18000')\n+\n+ def do_ast2700_pcie_test(self):\n+ exec_command_and_wait_for_pattern(self,\n+ 'lspci -s 0002:00:00.0',\n+ '0002:00:00.0 PCI bridge: '\n+ 'ASPEED Technology, Inc. AST1150 PCI-to-PCI Bridge')\n+ exec_command_and_wait_for_pattern(self,\n+ 'lspci -s 0002:01:00.0',\n+ '0002:01:00.0 Ethernet controller: '\n+ 'Intel Corporation 82574L Gigabit Network Connection')\n+ exec_command_and_wait_for_pattern(self,\n+ 'ip addr show dev eth2',\n+ 'inet 10.0.2.15/24')\n+\n+ def start_ast2700_test(self, name, bus_id):\n+ num_cpu = 4\n+ load_images_list = [\n+ {\n+ 'addr': '0x400000000',\n+ 'file': self.scratch_file(name, 'u-boot.bin')\n+ },\n+ {\n+ 'addr': '0x430000000',\n+ 'file': self.scratch_file(name, 'bl31.bin')\n+ },\n+ {\n+ 'addr': '0x430080000',\n+ 'file': self.scratch_file(name, 'optee', 'tee-raw.bin')\n+ }\n+ ]\n+\n+ for load_image in load_images_list:\n+ addr = load_image['addr']\n+ file = load_image['file']\n+ self.vm.add_args('-device',\n+ f'loader,force-raw=on,addr={addr},file={file}')\n+\n+ for i in range(num_cpu):\n+ self.vm.add_args('-device',\n+ f'loader,addr=0x430000000,cpu-num={i}')\n+\n+ self.vm.add_args('-smp', str(num_cpu))\n+ self.do_test_aarch64_aspeed_sdk_start(\n+ self.scratch_file(name, 'image-bmc'), bus_id)\n+\n+ def start_ast2700_test_vbootrom(self, name, bus_id):\n+ self.vm.add_args('-bios', 'ast27x0_bootrom.bin')\n+ self.do_test_aarch64_aspeed_sdk_start(\n+ self.scratch_file(name, 'image-bmc'), bus_id)\n+\n+ def test_aarch64_ast2700_evb_sdk_v11_00(self):\n+ self.set_machine('ast2700a2-evb')\n+ self.require_netdev('user')\n+\n+ self.archive_extract(self.ASSET_SDK_V1100_AST2700)\n+ self.vm.add_args('-device', 'e1000e,netdev=net1,bus=pcie.2')\n+ self.vm.add_args('-netdev', 'user,id=net1')\n+ self.start_ast2700_test('ast2700-default', 1)\n+ self.verify_openbmc_boot_and_login('ast2700-default')\n+ self.do_ast2700_i2c_test(1)\n+ self.do_ast2700_pcie_test()\n+\n+ def test_aarch64_ast2700_evb_sdk_vbootrom_v11_00(self):\n+ self.set_machine('ast2700a2-evb')\n+ self.require_netdev('user')\n+\n+ self.archive_extract(self.ASSET_SDK_V1100_AST2700)\n+ self.vm.add_args('-device', 'e1000e,netdev=net1,bus=pcie.2')\n+ self.vm.add_args('-netdev', 'user,id=net1')\n+ self.start_ast2700_test_vbootrom('ast2700-default', 1)\n+ self.verify_vbootrom_firmware_flow()\n+ self.verify_openbmc_boot_start()\n+\n+ def test_aarch64_ast2700_evb_ioexp_v11_00(self):\n+ self.set_machine('ast2700a2-evb')\n+ self.require_netdev('user')\n+\n+ self.archive_extract(self.ASSET_SDK_V1100_AST2700_DCSCM)\n+ self.vm.set_machine('ast2700a2-evb,fmc-model=w25q512jv')\n+ self.vm.add_args('-device',\n+ 'tmp105,bus=ioexp0.0,address=0x4d,id=tmp-test-16')\n+ self.start_ast2700_test('ast2700-dcscm', 8)\n+ self.verify_openbmc_boot_and_login('ast2700-dcscm', False)\n+ self.do_ast2700_i2c_test(8)\n+ self.do_ast2700_i2c_test(16)\n+\n+if __name__ == '__main__':\n+ QemuSystemTest.main()\n", "prefixes": [ "v2", "08/11" ] }