From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by spool.mail.gandi.net (Postfix) with ESMTPS id 305D1740038 for ; Mon, 31 Jul 2023 07:36:57 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=MObEMrNnT9xQ4xRzlhkZeUWJiurEZtXXXhdnwF9/E4o=; c=relaxed/simple; d=groups.io; h=X-Received:X-Received:X-IronPort-AV:X-IronPort-AV:X-Received:X-ExtLoop1:X-IronPort-AV:X-Received:X-Received:X-Received:X-Received:X-Received:ARC-Seal:ARC-Message-Signature:ARC-Authentication-Results:X-Received:X-Received:From:To:CC:Subject:Thread-Topic:Thread-Index:Date:Message-ID:References:In-Reply-To:Accept-Language:X-MS-Has-Attach:X-MS-TNEF-Correlator:x-ms-publictraffictype:x-ms-traffictypediagnostic:x-ms-office365-filtering-correlation-id:x-ld-processed:x-ms-exchange-senderadcheck:x-ms-exchange-antispam-relay:x-microsoft-antispam-message-info:x-ms-exchange-antispam-messagedata-chunkcount:x-ms-exchange-antispam-messagedata-0:MIME-Version:X-MS-Exchange-CrossTenant-AuthAs:X-MS-Exchange-CrossTenant-AuthSource:X-MS-Exchange-CrossTenant-Network-Message-Id:X-MS-Exchange-CrossTenant-originalarrivaltime:X-MS-Exchange-CrossTenant-fromentityheader:X-MS-Exchange-CrossTenant-id:X-MS-Exchange-CrossTenant-mailboxtype:X-MS-Exchange-CrossTenant-userprincipalname:X-MS-Exchange-Transport-CrossT enantHeadersStamped:X-OriginatorOrg:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:X-Gm-Message-State:Content-Language:Content-Type:Content-Transfer-Encoding; s=20140610; t=1690789016; v=1; b=lDYkQA+q18HEiQlHqb9I2cZFUMyHaaKqjAIHOJfJYOrVlh3QPBxgxNkNSt1bki4PpByPllpJ /x0suiQlJWmXJ7RNKFfLeDhN1wG2VQ3VP6EcPzNqOc3IezleCFZQyLfKO7D2vYY4MliTjvKscaS zCIOr2Bn6E+sTWjW4NXHUeyI= X-Received: by 127.0.0.2 with SMTP id c87RYY7687511xy3ORSSPQEz; Mon, 31 Jul 2023 00:36:56 -0700 X-Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65]) by mx.groups.io with SMTP id smtpd.web10.2537.1690789015245803623 for ; Mon, 31 Jul 2023 00:36:56 -0700 X-IronPort-AV: E=McAfee;i="6600,9927,10787"; a="372575941" X-IronPort-AV: E=Sophos;i="6.01,244,1684825200"; d="scan'208";a="372575941" X-Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 31 Jul 2023 00:36:54 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.01,202,1684825200"; d="scan'208";a="871554879" X-Received: from orsmsx602.amr.corp.intel.com ([10.22.229.15]) by fmsmga001.fm.intel.com with ESMTP; 31 Jul 2023 00:36:56 -0700 X-Received: from orsmsx611.amr.corp.intel.com (10.22.229.24) by ORSMSX602.amr.corp.intel.com (10.22.229.15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 31 Jul 2023 00:36:48 -0700 X-Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) by ORSMSX611.amr.corp.intel.com (10.22.229.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 31 Jul 2023 00:36:47 -0700 X-Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) by orsmsx610.amr.corp.intel.com (10.22.229.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27 via Frontend Transport; Mon, 31 Jul 2023 00:36:47 -0700 X-Received: from NAM10-DM6-obe.outbound.protection.outlook.com (104.47.58.108) by edgegateway.intel.com (134.134.137.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.27; Mon, 31 Jul 2023 00:36:47 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XFAiLewrMGZ3VZoJqAUXTomICUxuWgDhb9G4IGcO4Ra+jAW2UFpmZKdW8ijrnTQejCugWN2+UXtVg1yEjgkbdHqfjzITFnCyxntrAv3uBnLGE1J4eERAqnV1oTkpLLTvz83nHMwfWX+SDmBDYDxe0v+UsH7+Ke4rxjDhLtMUNu5nVv6T2dQA+hPcPMOMkkfqRn3Oovf7SJ8PON6F4jEFQMWf0MTXGCbO7VqGTzW5UrpSOejLq/JG9QHOj3yfHXjkwO5jjaVDatcdIrpGySFhcDLWC58WwbPZSwc9euQ1EQSsmHiSateYzVPHhwSbKZh6gYa39xk4Q/KXwfr6UhbcUA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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; bh=+GBoOzFP46WtQH6kiQ6d6nU6N2ehup+nJccKG3Of960=; b=LY8Zk6F0IUhXe9JEO3NlKuQgXTmdy+/cGu+ECV+qmfK54JuNhX9jqMnfYlUj2cEvkjJ//J/Oy+iF4tEZLjcssHU5jbBmdcwMu+MBHWqKhUIo+Id2+9HqnYolvfKDPXKGYV1Ojj5vnmZbY6Xp2cEMf3EbqrsqApPxiuLGI6kUiKAmZMtYpEGLjnw67dnEPJuxlmsKAFrlX0aPP0l6Pn25Cz0OMqIEpi7TCosvItQshysAjzGx+IUUU4xCGOwnl3z65xhoBXrx94sKU7AmbE9vR1bk5e5NF6fJ6A7+311RiYAA7Ln4cBEDB9ak+k+qtKhBcrTrQ4J6DMYUve8VoRia8Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none X-Received: from DM6PR11MB4025.namprd11.prod.outlook.com (2603:10b6:5:197::31) by SA2PR11MB4955.namprd11.prod.outlook.com (2603:10b6:806:fa::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6631.42; Mon, 31 Jul 2023 07:36:44 +0000 X-Received: from DM6PR11MB4025.namprd11.prod.outlook.com ([fe80::ebe2:341b:4ed7:d19b]) by DM6PR11MB4025.namprd11.prod.outlook.com ([fe80::ebe2:341b:4ed7:d19b%6]) with mapi id 15.20.6631.042; Mon, 31 Jul 2023 07:36:44 +0000 From: "Wu, Hao A" To: "devel@edk2.groups.io" , "brit.chesley@amd.com" CC: "Wang, Jian J" , "Gao, Liming" , "Ni, Ray" , Abner Chang Subject: Re: [edk2-devel] [PATCH v2 1/1] MdeModulePkg: UsbBusDxe: Rebuild Descriptor Table Thread-Topic: [edk2-devel] [PATCH v2 1/1] MdeModulePkg: UsbBusDxe: Rebuild Descriptor Table Thread-Index: AQHZsPWQ4t+8Y8P3zEmG6icey3EW8q/TnlCg Date: Mon, 31 Jul 2023 07:36:44 +0000 Message-ID: References: <20230707170709.45-1-brit.chesley@amd.com> In-Reply-To: <20230707170709.45-1-brit.chesley@amd.com> Accept-Language: en-US, zh-CN X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: DM6PR11MB4025:EE_|SA2PR11MB4955:EE_ x-ms-office365-filtering-correlation-id: 8b0f01d4-e5f3-4e89-a5a2-08db9198e3e8 x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam-message-info: 8Hj7yc5JojtghWgdN9y1lU+dLn4xFPeaowIQwG/dPVCi3ZpFVj8/DOueCpbakBY/UvVzOGFkmVUkfopEjXMQF41fdN5j8A2NHhLCm/aBh6L9uesiUOHIh2A7c7X2EtGnj7tfZtoDTtA0PDJNhXdnv+U9wwWztE13/rkf6vRwkrRr/R1ymUaJF8+5EoBWTJAEhFEmW0WXYBNZdGm7v6j01PLoqmy+be3xV/RNAAgtiWeyt6ZRofPhbVDA5vLzt6j+HV8dKbcIpBKsIUSv0awO6i6gse6pY3veNyJgAt2WZG4EYSYY8H3wiCLTMR1mkYnlBti2muo/xzOoTNbazuQ8u4jPvljbaf2NmoNcifzcTHvswLMdRXucAMW/qY54/xtSM+FpnHLQLaYVI9AXRdiJ6FprZT5hdI/+Reetewf3jjuquJKMNkqPwxnNORg4BmVI0pwlpt7fcrQlda8eLg3UYyR3nRZYJelL/thopy2U2QSVm8oU7GNgw72LNZyOiIYxZNSeTHEk+efWESAuBbJTyhb7tSOlIqslfQzDzZ86dicpIPJex9CxYSzBRUqf9scy92mXwYZeDZJ6p6DH2ZIreaqjjS5Q0O5tmQHUA+tEJNWgqC4opib2a/hj7f0ZU+fKTIqpRKq2/I6UoL654IvWVw== x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?aIikDznouUydDreGP0iGjo5JYMwlNYkveL8ZTXYaCUYq7aJznYnEWX+6xU1r?= =?us-ascii?Q?1D13DpARcYm2LroZoCgnDVlIVcQr3p1xV18Kd7nFJ4wgkJ5NFBamALfMvq2q?= =?us-ascii?Q?RSJY7WfhBdwD9fG7LELu4i5VafLMf7kYHdRLDUYEpewI2jvJstYfCUQZauST?= =?us-ascii?Q?h5Nr65rFyaVtmvtR7k6b7Ei1jkN9Q4Q7noTR+HrkgOog8lW3OqFGJQg23LD9?= =?us-ascii?Q?OO6Kmt27EkEVpKHSG5fGaYIxRAbQtNezVJe11sy+dykL1NIRIDktYK/4bFOq?= =?us-ascii?Q?ajNNGV8u+JYQsn76WEYZzL6Ef4XfDAAHLKTZOeH0SO6KDDaKyJdx7t+Tvqny?= =?us-ascii?Q?SmiLHsCp6c6ZkVHDxn4Vs+/m7/7Wl9rI6MC5W4IHaG9g8S3skh97RAPLaEIZ?= =?us-ascii?Q?xzuP3khXYVA7ioFZSj3J1Au2DFjn/Z3ew9aXR7pUMEkNsgwEUKS/igrDKdXv?= =?us-ascii?Q?+eYWODhphBAY1CttzoU+XT+wNWSAjrmukbGkdqdaBD9uZOpSEbGZuzTKJHjn?= =?us-ascii?Q?Z/ehrhcoDsFAYFzG5r66j58BHmHNvUP/OIbk+M4RDuaCsqsCKImrPyu6DGIA?= =?us-ascii?Q?M+FIPhML+TrZQ5wqklOjCR0zGLrfXHV6ajs7YmukHXZ/ybnaQnf4/2W1ek2N?= =?us-ascii?Q?SQ7lZoKGL2nZlYJZ0iGBhrAVzrVKYZJ/nE4A9xx/a3QH2xNFTUVgx2oHfZmH?= =?us-ascii?Q?Ij/RRjSLx4uJBGOYUeRtoZVtXle6MjTKMw9Q3gjdRPLlraH7EZoWsIKPVzNe?= =?us-ascii?Q?eEb52Bfd8RLmaUl+m+DuIrR/bbKn7vNhoiTYxe0qNpeKlpyO92T+XZx7MH3G?= =?us-ascii?Q?7/6Y8Al1shEFa80xbYQTSXY3iyea9fAPaC+cgMrza7NPO2oMIx6p0cYHMFpG?= =?us-ascii?Q?Ssja9SEa/9xngU69UmrJIF8Or3QRqBhAr+ySxr9HFvaWn0ZRIuYgYUhRcaf5?= =?us-ascii?Q?EMti2Og1/kBS+Q8uut99IBDDe3lZf2ACfqUD4kqNB+p/p31CALaOA2neI4H6?= =?us-ascii?Q?naPDBVM4NRc1HDbzHaChpPD5zAtoilmH9//UWJYr8COduDk2nktNxZ1b+IPp?= =?us-ascii?Q?1ayMABFwatl4CpEkAJ2nWXG4tuxuEV0NIQdcAJ+H7g/rc8ziB3mMoBy4h0eG?= =?us-ascii?Q?IgI0t1fuNlmAgfapLngz0Os0HmfeDo4fIYCA2SmyrbpG+tUpmXFfbwaEzeSA?= =?us-ascii?Q?8JXwY5RAUu4a1gVcvCLWxdnE0W0XXiUf4Yl/d7TiS1WIU/w5hHLYruMPCROL?= =?us-ascii?Q?nGvJ30tLLOSh+ziM5I7xoVoYBfsoCj6IxMko07UMf/M0EvgWhsUzOPbyC1ij?= =?us-ascii?Q?Zb3emHz9b3ZIkiLzQOwu4wdM3aoM7XvCfDzQMk731rDQGNwuMrVZCS5Z3ovA?= =?us-ascii?Q?G1D7haqJc5bpbObdVGHklcbc04E2gb5CNFre4V8kmUuSPiAGZPoxC9mc97RM?= =?us-ascii?Q?PaOg+JI5lu4iZyfgt8xc3LhbqtbJAtKTxp0D/Zh8KgRaIXm6ZH5IEy2KNfI2?= =?us-ascii?Q?2+hBGBItDa+povPzEoRhaU8y2gUWuRr6oprwHSBRNx+oKrLtkVOtjIqaagve?= =?us-ascii?Q?/tkv45w0EIwV+52Mve16AFqL9zmdo7V0IMF8NEV+?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM6PR11MB4025.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8b0f01d4-e5f3-4e89-a5a2-08db9198e3e8 X-MS-Exchange-CrossTenant-originalarrivaltime: 31 Jul 2023 07:36:44.7369 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: Nu74+UpbQ4guB2Ah07l1LmeWcasTsQeZOLZiZ/YWRSxaTNjGaVokGZ3Ljm6S1xrplcexMJ5H7DDFcM6byBTa9g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA2PR11MB4955 X-OriginatorOrg: intel.com Precedence: Bulk List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,hao.a.wu@intel.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: 4B5WQZNrSs4Bvp8qjjmuyGCQx7686176AA= Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable X-GND-Status: LEGIT Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20140610 header.b=lDYkQA+q; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=intel.com (policy=none); spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce@groups.io; arc=reject ("signature check failed: fail, {[1] = sig:microsoft.com:reject}") > -----Original Message----- > From: devel@edk2.groups.io On Behalf Of > brit.chesley via groups.io > Sent: Saturday, July 8, 2023 1:07 AM > To: devel@edk2.groups.io > Cc: Wang, Jian J ; Gao, Liming > ; Wu, Hao A ; Ni, Ray > ; Abner Chang > Subject: [edk2-devel] [PATCH v2 1/1] MdeModulePkg: UsbBusDxe: Rebuild > Descriptor Table >=20 > From: Britton Chesley >=20 > Fixed a bug which led to an ASSERT due to the USB device context being > maintained after a port reset, but the underlying XHCI context was > uninitialized. Specifically, Xhc->UsbDevContext is freed after a reset > and only re-allocates the default [0] enpoint transfer ring. Added build Really sorry for another question. My take is that the transfer ring of other endpoints (besides the Default Control Endpoint) will be re-initialized by the below flow: UsbSetConfig -> UsbCtrlRequest (USB_REQ_SET_CONFIG) -> XhcSetConfigCmd(64) -> XhcInitializeEndpointContext(64) Could you help to elaborate a bit more on what is the issue with the above (current) flow and why rebuilding the Descriptor Table before UsbSetConfig = can resolve it? Thanks in advance. Best Regards, Hao Wu > descriptor table call in UsbIoPortReset. BZ 4456 >=20 > Cc: Jian J Wang > Cc: Liming Gao > Cc: Hao A Wu > Cc: Ray Ni > Cc: Abner Chang > Signed-off-by: Britton Chesley > --- > MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBus.c | 26 > ++++++++++++++++++++++++- > 1 file changed, 25 insertions(+), 1 deletion(-) >=20 > diff --git a/MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBus.c > b/MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBus.c > index c25f3cc2f279..a5b798bd8d6c 100644 > --- a/MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBus.c > +++ b/MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBus.c > @@ -821,6 +821,7 @@ UsbIoPortReset ( > EFI_TPL OldTpl; > EFI_STATUS Status; > UINT8 DevAddress; > + UINT8 Config; >=20 > OldTpl =3D gBS->RaiseTPL (USB_BUS_TPL); >=20 > @@ -882,8 +883,26 @@ UsbIoPortReset ( > // is in CONFIGURED state. > // > if (Dev->ActiveConfig !=3D NULL) { > - Status =3D UsbSetConfig (Dev, Dev->ActiveConfig->Desc.ConfigurationV= alue); > + UsbFreeDevDesc (Dev->DevDesc); >=20 > + Status =3D UsbRemoveConfig (Dev); > + if (EFI_ERROR (Status)) { > + DEBUG ((DEBUG_ERROR, "UsbIoPortReset: Failed to remove > configuration - %r\n", Status)); > + } > + > + Status =3D UsbGetMaxPacketSize0 (Dev); > + if (EFI_ERROR (Status)) { > + DEBUG ((DEBUG_ERROR, "UsbIoPortReset: Failed to get max packet siz= e - > %r\n", Status)); > + } > + > + Status =3D UsbBuildDescTable (Dev); > + if (EFI_ERROR (Status)) { > + DEBUG ((DEBUG_ERROR, "UsbIoPortReset: Failed to build descriptor > table - %r\n", Status)); > + } > + > + Config =3D Dev->DevDesc->Configs[0]->Desc.ConfigurationValue; > + > + Status =3D UsbSetConfig (Dev, Config); > if (EFI_ERROR (Status)) { > DEBUG (( > DEBUG_ERROR, > @@ -892,6 +911,11 @@ UsbIoPortReset ( > Status > )); > } > + > + Status =3D UsbSelectConfig (Dev, Config); > + if (EFI_ERROR (Status)) { > + DEBUG ((DEBUG_ERROR, "UsbIoPortReset: Failed to set configuration = - > %r\n", Status)); > + } > } >=20 > ON_EXIT: > -- > 2.36.1 >=20 >=20 >=20 >=20 >=20 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#107396): https://edk2.groups.io/g/devel/message/107396 Mute This Topic: https://groups.io/mt/100010162/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-