Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/2227047/?format=api
{ "id": 2227047, "url": "http://patchwork.ozlabs.org/api/patches/2227047/?format=api", "web_url": "http://patchwork.ozlabs.org/project/qemu-devel/patch/20260423051804.362095-13-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": "<20260423051804.362095-13-jamin_lin@aspeedtech.com>", "list_archive_url": null, "date": "2026-04-23T05:18:20", "name": "[v4,12/17] hw/usb/hcd-ehci: Implement 64-bit iTD descriptor addressing", "commit_ref": null, "pull_url": null, "state": "new", "archived": false, "hash": "7ce861f2cd09dd441115df05e92d36a5a9b11873", "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/20260423051804.362095-13-jamin_lin@aspeedtech.com/mbox/", "series": [ { "id": 501145, "url": "http://patchwork.ozlabs.org/api/series/501145/?format=api", "web_url": "http://patchwork.ozlabs.org/project/qemu-devel/list/?series=501145", "date": "2026-04-23T05:18:08", "name": "hw/usb/ehci: Add 64-bit descriptor addressing support", "version": 4, "mbox": "http://patchwork.ozlabs.org/series/501145/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/2227047/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/2227047/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=nu7UYrSm;\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=lists1p.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 lists1p.gnu.org (lists1p.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 4g1PZJ3jL9z1y2d\n\tfor <incoming@patchwork.ozlabs.org>; Thu, 23 Apr 2026 15:20:56 +1000 (AEST)", "from localhost ([::1] helo=lists1p.gnu.org)\n\tby lists1p.gnu.org with esmtp (Exim 4.90_1)\n\t(envelope-from <qemu-devel-bounces@nongnu.org>)\n\tid 1wFmT2-00083g-9I; Thu, 23 Apr 2026 01:19:12 -0400", "from eggs.gnu.org ([2001:470:142:3::10])\n by lists1p.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 1wFmSm-0007en-LG; Thu, 23 Apr 2026 01:18:57 -0400", "from mail-japaneastazlp170130007.outbound.protection.outlook.com\n ([2a01:111:f403:c405::7] helo=TYDPR03CU002.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 1wFmSk-0003DU-R3; Thu, 23 Apr 2026 01:18:56 -0400", "from TYPPR06MB8206.apcprd06.prod.outlook.com (2603:1096:405:383::19)\n by KUXPR06MB8534.apcprd06.prod.outlook.com (2603:1096:d10:9d::22)\n with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9846.16; Thu, 23 Apr\n 2026 05:18:20 +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.9846.021; Thu, 23 Apr 2026\n 05:18:20 +0000" ], "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;\n b=uyTAxQ7JC9r0w0U3Ng90Gr9FLz8QvZSYoEw2wURBGpZ1t0AdMjbLb5XqVHZoSlucJzfzVzddzWURS6sXYymIgQJ3y60og/Tzx9kJanckGtHOK/G23DhuiIViG0UzGpvsWUyoX6fjrc4nRNQjl+AmwvqFQ4YRNhTyBFuQiaUSwwGFBPWu/Lo5QYWXlgMhgHgpXuMLdSSqQbdRWQYVz8/Hcl5QzwQ/gz+BroL2zsIN9gE6NygMT7TwCRD3n7sZ4ZdIvwrVjMseTiiwNlG3lDyKmo9Vamr8Qn6cZ2YfBkAjFOyZCmh1Kx2dMiDAlmOt43ggjSEegWJmRZOM4JBatICUkg==", "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=xdCqqwgGyyJ6ZpatzPh1q47FdstaGy6eGso1RaGeAJ8=;\n b=zF4TJyXULiIQ5jLk1iaxaSdUI3cbPRfMlpoP/N95HeQdIUuHSXPAGpgTa4P6fyFkbuF3PCDw2P1q0qFv7vqrRViYENqdpsUo7mUMYB7/iDSziBVwATmEaYEsjrsoRkHnw/nuClAve8oLOrxxLb8GKjmYTuSGVR7N6N/GjD0lgRpqaVnTku30teo9qak0P3TFhwtTpHTT30+gt2SuOsD+NoyVR5y+K8ORyo1eUecMKH6kzoE0D1z1lLs3G8NjgI+u2L0RA+sv0EHhICgL13/O3h2OH6rEYGGKueEfs+wM1tJ/soFhunqWHrHGBOF1xTlvhrIKlVZ1RGhMvgbJPOCBfw==", "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=xdCqqwgGyyJ6ZpatzPh1q47FdstaGy6eGso1RaGeAJ8=;\n b=nu7UYrSmPdhhaXBC7ZqBKQVHsGbCGmG9RMMavBPMdrV03OzBrMxPlEAHxAai460nT6ElfTE2VqPubyJNtuoNriHMV4927tH8qYsS7/8nH5SnOSm0yw/uG52JSooKGpKio9ljWwD7tZ15dMM8CBiCcQ12FgIwkiZKC0mLa+cYrCn/RMQ+fQt9A6Pt6AkfxxdNKvR/3Qk5GhzcJuFJv2l7eG/jEJ4BGqF8+IlYvbE72X/hJUcf5ijO/Biw3UuIMscefSMj6YZ/0efzLDCXPjdl90dUOo5jaX0OAt9QqSqGdKHJjbazddHEhVDQzaBFjngLz9zafrdsrFgedaIkBq+7Kw==", "From": "Jamin Lin <jamin_lin@aspeedtech.com>", "To": "\"philmd@linaro.org\" <philmd@linaro.org>,\n \"peterx@redhat.com\" <peterx@redhat.com>,\n =?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 Kane Chen <kane_chen@aspeedtech.com>,\n Andrew Jeffery <andrew@codeconstruct.com.au>, Joel Stanley <joel@jms.id.au>,\n Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,\n Yanan Wang <wangyanan55@huawei.com>, Zhao Liu <zhao1.liu@intel.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 \"flwu@google.com\" <flwu@google.com>, \"nabihestefan@google.com\"\n <nabihestefan@google.com>, \"farosas@suse.de\" <farosas@suse.de>", "Subject": "[PATCH v4 12/17] hw/usb/hcd-ehci: Implement 64-bit iTD descriptor\n addressing", "Thread-Topic": "[PATCH v4 12/17] hw/usb/hcd-ehci: Implement 64-bit iTD\n descriptor addressing", "Thread-Index": "AQHc0uCZpFMCSv8lKEK9Jloeph3lDw==", "Date": "Thu, 23 Apr 2026 05:18:20 +0000", "Message-ID": "<20260423051804.362095-13-jamin_lin@aspeedtech.com>", "References": "<20260423051804.362095-1-jamin_lin@aspeedtech.com>", "In-Reply-To": "<20260423051804.362095-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=nu7UYrSm;\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=lists1p.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_|KUXPR06MB8534:EE_", "x-ms-office365-filtering-correlation-id": "415e18fe-2f68-4841-55e9-08dea0f7bbd7", "x-ms-exchange-senderadcheck": "1", "x-ms-exchange-antispam-relay": "0", "x-microsoft-antispam": "BCL:0;\n ARA:13230040|376014|7416014|1800799024|366016|38070700021|921020|18002099003|22082099003|56012099003;", "x-microsoft-antispam-message-info": "\n AqUCLWxGfExwhVsArDecuej9kRloLAVNV95U1G4S1XnBxe+LudoQ49OEnZjFkezH+NwQeamwNIsWpyX7rr+sKUN3Ay7b1SDmGd4A/israBD89/zwGG2PveKAZbOYh+T9UvREbpX6JTADMkkKjPifoo27cuBJkY12i6bKPPhByR062yP4uB0ozQvLplKBjHyJsnTyuaGAqcD++LlrZj9+HgG0Rwy87+qxxV4WCwED3PQQPztzF+NfHEuT7SHonCMDOfzsKCbRhOOsJMUlVZTO6LtPuuhOxJzlFDwBPKI44S652bLrrbg+LBbUOt1+zsQgZJpk6xYpMWeiKWEsghHYZtB1PdT0K0H+j4ZqOWv4k09ZK7YMfONuHwaKHRNUtKmU038yLSFc55eXAkwZ9EIYBp9JHAXEYBgrq6I0+34k+jSbO6OcRRH+rwUIcU/fvljejkmE2GpGm76PJmtciNndI+gLfl9YkHanIzRLFOGX157c6vErYUsI+0IPqozfSiUa6IGtxN06XFqIVJF4ie4fYBNSpHWVcehsB41s7ObC28sLqsljkPk+ZR5dlJmovLRs2YWVgLQxLbpkB+6sbfgZjNkjht6MkpieKaqefdJ1Q3L7cL/P1dYCLsIL59a3X7JX4FAPWMJYCtkbPRJj92y7MFV2Nuf/ZsSmWb0aFfH12DGGttGP2Ue76F5LfxD2VAicSIe40sFdy0A32mAAobgRR2qwHd3aXIy/fI2VAmL5X27GpCYwAkF28xVptDj9vAJ5sIQipveuxFEpdK5IEpiuYsi2ljzA9b2/zpCKAWZL9EB/lNyq5BXgtG8eM/NzLeYi", "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)(38070700021)(921020)(18002099003)(22082099003)(56012099003);\n DIR:OUT; SFP:1102;", "x-ms-exchange-antispam-messagedata-chunkcount": "1", "x-ms-exchange-antispam-messagedata-0": "=?iso-8859-1?q?9q+37vBtogbxD22fLkS9JBi?=\n\t=?iso-8859-1?q?+z1enZIxHwj5zLhkIFMGcXLjceySujW1ehq2XTSTBmSmNXf0kR31EGn2F28e?=\n\t=?iso-8859-1?q?nKzSbLBTdhepe5zPmDSjstkPtf5GfKEG7B8dJIVQNB+ZGMJlImnBXJdKuFJg?=\n\t=?iso-8859-1?q?gmJWdCqqin8+HTxZQ5W3504boWp6juhVBtsIuSFu1CoOqCn2PaqZhP/vTOba?=\n\t=?iso-8859-1?q?1C5w+A3VjEzdjAxkdL+fS5jawN9fjjthJoiyg7hZ6+Z+SlH5y09Zpa5ZChs/?=\n\t=?iso-8859-1?q?+Cvkj+vCh1tVLAL19sAbR0DBrEHO4ONOhqk5hecA7GgCOdU8FXcrLBOXiRPx?=\n\t=?iso-8859-1?q?NN4n7sZblxKQ+JClgc8kJzg3xtVe421F0zaTV5bT2Sv19DtEYKUNG/Ji2+Hu?=\n\t=?iso-8859-1?q?PkByEuFEnrpnZkM0sqhhnZVYWpJResamg4odCgaawcszpMu4xvhkOjH8mrII?=\n\t=?iso-8859-1?q?ouv7G9rwJG33/uGX+49QxJIM69yRqHoxPs/bWyJ/3YctnxPzTu29DMmqfl7l?=\n\t=?iso-8859-1?q?HKimlkK2QTuQO/DbN7bTtBc7rtq0/m4oXSsCCGTOKq8Gew2UN0M226dRltND?=\n\t=?iso-8859-1?q?KXFLk6sSsrAcTi2ryF2vDkGDQIAhR2zpba2y/nTFXdycJR+mdW5zRNYuOr3s?=\n\t=?iso-8859-1?q?5tOdjIx4PujL/ke8yKiX/WuypHYI89W+hM7GTJ6sKw9133x3y52fcDDdA2yW?=\n\t=?iso-8859-1?q?8OlC5N8TSDedCQp72QSBrLyFPV6zHX8Duk42AzuhIvAzYDBE5Sa0KwgDeeYl?=\n\t=?iso-8859-1?q?vfHpGjHbJo7jDpMBUPl131OWcsj2zBEBEe774kDfhOHjNKC8sEYbyB1x1Von?=\n\t=?iso-8859-1?q?8GfhI44K0pRzBedj4/qaqVbZ7HOMPircrL/dxYrESDge1f89/pxomhRuA5kC?=\n\t=?iso-8859-1?q?vVcyHIJKAd+QsMGghTVpga/ZTjKWVz10Int/UkHkpfOYCYHNskEHM6NfXjH1?=\n\t=?iso-8859-1?q?9fRe+L3eMCL433RSJFHgAD2/dCfWcmHxP7D1eab6IvHmJSSvxsdB9qRk+Akw?=\n\t=?iso-8859-1?q?xuN1RUGlfo8qKJWAa88YU0e3X58/naLWo85AyxhaTUf8SypwZo1EtSZeRBFg?=\n\t=?iso-8859-1?q?ttQ1Y6cH5Rwwv1BIesLMnpdu5lqEShBBHNmhxtEOdL0j38sL7adsP34d3SWy?=\n\t=?iso-8859-1?q?2fTx8ji6DR7EcygyGErO/DG34CCYs9HVg7NKGp/QCIZjsbXWYPsA2LKYpPBl?=\n\t=?iso-8859-1?q?JUpg3M/DYbdogunCRLOCXuYmkecRZpQ8orWbM2uAfjPIODa5iUq+IpRNEMWl?=\n\t=?iso-8859-1?q?uqyWOdbKGzaf1ybc3ddviYPX8ny5qcASijlomAMuZeZVT78Nk1f6oKoynJgi?=\n\t=?iso-8859-1?q?8iM2aN9YogdM69I+OTuDP8jZYJQtW0hblW2j38O2seHm51UspD5P7ly6qxeq?=\n\t=?iso-8859-1?q?SIcH4EZxttpCCA6Qg1U670POC7W05sjrRJ9hJfxhfMnxlkpvziu5t6NTmcIR?=\n\t=?iso-8859-1?q?SAimXXDNVeLCf7r5BdunMJ7IEWvSaYfiz/2Y4rJZU3TIgW4bR8NDVbwU8Xrh?=\n\t=?iso-8859-1?q?z9/ceqYWjiGJhk77fA/FECqF3d6h06BAtSaf4Vrg0uuT8Zysrhzpr0hoWD2F?=\n\t=?iso-8859-1?q?sVcD6QK/sCaaycsj+/z1nRvGQ4WdThoUpWrckMpHoKSmRBqTopeSPGXBbv0k?=\n\t=?iso-8859-1?q?s+EACL8q78mKhYr+Om7FpjlPsN34Bw99S638chCh4oK5ujzQPn25liRJbVKk?=\n\t=?iso-8859-1?q?8theB4g+r3aHMGzu2k/E9sVR5orUlTE9I7HlZ+3BYaz45469Tuf4pif48VB8?=\n\t=?iso-8859-1?q?O/+F5Ksm59HyUVTB6lewQUcH8OnVP3GFR8PWK2b2geUhgbw=3D=3D?=", "Content-Type": "text/plain; charset=\"iso-8859-1\"", "Content-Transfer-Encoding": "quoted-printable", "MIME-Version": "1.0", "X-Exchange-RoutingPolicyChecked": "\n dmRwj0Rr7Y0TfE5CrmGvuz0hoF5f6RkwPkLBKM7WdQzsJJDJwHqxU9ZK24ZoKDl2dttqM+FhJosFNW8UEY2cHIwYO5FG3iSXBABkbqgpEbJ8o4VZC6IFzUR6/zeyTnjOt5g8+dqPNB+0916MXMHGbNzPdbufZ5pedrJKnJc3safFpTaLzdj1+fGJhfqVoap/EA+/4/sWC3Nww7cM5ndMY6j3dDK+tBllnlqZT7t700F47j2DYL50X+89dMWvXiu3DG9WS0WX+gnpZN+HznoJxaJ238mqBXHBUIW9vHxUzKdwATkiAh13i1f/dwODdZebUR0gt8OMXszW6EjTAvqECQ==", "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 415e18fe-2f68-4841-55e9-08dea0f7bbd7", "X-MS-Exchange-CrossTenant-originalarrivaltime": "23 Apr 2026 05:18:20.1939 (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 4VaQaQ05hOlWID1u2/E13Jxd8kGLkWmSKcPa8ki0OECR7KMHyMTcGUaSStUmHiea50nujzR1X5LUbhv62CRbtZDaPQnwA+fxISF6tFfqvlA=", "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "KUXPR06MB8534", "Received-SPF": "pass client-ip=2a01:111:f403:c405::7;\n envelope-from=jamin_lin@aspeedtech.com;\n helo=TYDPR03CU002.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, SPF_HELO_NONE=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": "EHCI supports 64-bit control data structure addressing when the\n64-bit Addressing Capability bit in HCCPARAMS is set. In that mode,\nthe CTRLDSSEGMENT register provides the upper 32 bits that are\nconcatenated with 32-bit link pointer values to form full 64-bit\ndescriptor addresses (EHCI 1.0, section 2.3.5 and Appendix B).\n\niTD link pointers are stored as 32-bit values and must be expanded\nto full 64-bit descriptor addresses when 64-bit mode is enabled.\nUpdate the iTD traversal path to use ehci_get_desc_addr() when\nfollowing link pointers.\n\nAppendix B also defines high dword fields for iTD buffer pointers.\nAdd bufptr_hi[7] to EHCIitd and use ehci_get_buf_addr() to construct\nfull 64-bit buffer addresses from bufptr[] and bufptr_hi[] fields\nwhen processing isochronous transfers. This allows buffers above\n4GB to be handled correctly.\n\nWhen 64-bit capability is disabled, descriptor and buffer addresses\nremain 32-bit and existing behaviour is unchanged.\n\nSigned-off-by: Jamin Lin <jamin_lin@aspeedtech.com>\nReviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>\n---\n hw/usb/hcd-ehci.h | 1 +\n hw/usb/hcd-ehci.c | 9 ++++++---\n 2 files changed, 7 insertions(+), 3 deletions(-)", "diff": "diff --git a/hw/usb/hcd-ehci.h b/hw/usb/hcd-ehci.h\nindex fc66aacd9f..8e6a8cdfb0 100644\n--- a/hw/usb/hcd-ehci.h\n+++ b/hw/usb/hcd-ehci.h\n@@ -63,6 +63,7 @@ typedef struct EHCIitd {\n #define ITD_BUFPTR_MAXPKT_SH 0\n #define ITD_BUFPTR_MULT_MASK 0x00000003\n #define ITD_BUFPTR_MULT_SH 0\n+ uint32_t bufptr_hi[7];\n } EHCIitd;\n \n /*\ndiff --git a/hw/usb/hcd-ehci.c b/hw/usb/hcd-ehci.c\nindex e82e0f625c..43a01a796f 100644\n--- a/hw/usb/hcd-ehci.c\n+++ b/hw/usb/hcd-ehci.c\n@@ -1464,7 +1464,8 @@ static int ehci_process_itd(EHCIState *ehci,\n return -1;\n }\n \n- ptr1 = (itd->bufptr[pg] & ITD_BUFPTR_MASK);\n+ ptr1 = ehci_get_buf_addr(ehci, itd->bufptr_hi[pg],\n+ itd->bufptr[pg], ITD_BUFPTR_MASK);\n qemu_sglist_init(&ehci->isgl, ehci->device, 2, ehci->as);\n if (off + len > 4096) {\n /* transfer crosses page border */\n@@ -1472,7 +1473,9 @@ static int ehci_process_itd(EHCIState *ehci,\n qemu_sglist_destroy(&ehci->isgl);\n return -1; /* avoid page pg + 1 */\n }\n- ptr2 = (itd->bufptr[pg + 1] & ITD_BUFPTR_MASK);\n+ ptr2 = ehci_get_buf_addr(ehci, itd->bufptr_hi[pg + 1],\n+ itd->bufptr[pg + 1],\n+ ITD_BUFPTR_MASK);\n uint32_t len2 = off + len - 4096;\n uint32_t len1 = len - len2;\n qemu_sglist_add(&ehci->isgl, ptr1 + off, len1);\n@@ -1762,7 +1765,7 @@ static int ehci_state_fetchitd(EHCIState *ehci, int async)\n \n put_dwords(ehci, NLPTR_GET(entry), (uint32_t *) &itd,\n sizeof(EHCIitd) >> 2);\n- ehci_set_fetch_addr(ehci, async, itd.next);\n+ ehci_set_fetch_addr(ehci, async, ehci_get_desc_addr(ehci, itd.next));\n ehci_set_state(ehci, async, EST_FETCHENTRY);\n \n return 1;\n", "prefixes": [ "v4", "12/17" ] }