From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by mx.groups.io with SMTP id smtpd.web12.5065.1614665042656553695 for ; Mon, 01 Mar 2021 22:04:03 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=nFCkgOd5; spf=pass (domain: intel.com, ip: 192.55.52.43, mailfrom: hao.a.wu@intel.com) IronPort-SDR: ZHl11xjCYTpG0m2X7tkelv3iN7unbE6NaYkAGfevRm41RNfE/F66g/P7bXK/s8/paST4a1l1O3 ZzJOr3bTMiZA== X-IronPort-AV: E=McAfee;i="6000,8403,9910"; a="271703672" X-IronPort-AV: E=Sophos;i="5.81,216,1610438400"; d="scan'208";a="271703672" Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Mar 2021 22:04:00 -0800 IronPort-SDR: LFqcISbgaVFwGsQUjc84vSBdfHp8BAJQXt/x0wbyMqI8G/m/VE7aRmc+djUD+kDOVQY4Zrefae iWjupnacXeVw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.81,216,1610438400"; d="scan'208";a="398084439" Received: from orsmsx606.amr.corp.intel.com ([10.22.229.19]) by fmsmga008.fm.intel.com with ESMTP; 01 Mar 2021 22:04:00 -0800 Received: from orsmsx611.amr.corp.intel.com (10.22.229.24) by ORSMSX606.amr.corp.intel.com (10.22.229.19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2; Mon, 1 Mar 2021 22:04:00 -0800 Received: from orsmsx604.amr.corp.intel.com (10.22.229.17) 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.2106.2; Mon, 1 Mar 2021 22:03:59 -0800 Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by orsmsx604.amr.corp.intel.com (10.22.229.17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2 via Frontend Transport; Mon, 1 Mar 2021 22:03:59 -0800 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (104.47.57.169) by edgegateway.intel.com (134.134.137.100) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2106.2; Mon, 1 Mar 2021 22:03:59 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=WGtdPi/Ov2ENr/cZwCpj7TPUWjGlP6DVP0zO65WiIUNdzVP0Bld02/H20Awniv+pQ7eQin9pbXxksqL1id5E2U8mozWQ/rFdzmpiwhnnfpI5LH+qiF9a+FHkAUPbTn0JnA3YqQPSEn9dUhzEubX/XBP7cXDB/yjPLb2CsMcF2u2KogODIy/q79tI0uOFQz5tIoFbUWBwTOnfyRJ+LrrTqWuDLkNRFXIpYKm2jbttqyCoQHoTfA7pkrukLR+Ve5cyXXwT7CqeKd7UBi+tTnVrv21N9ASxn0jFuoJIyNVgO5UVKOUevNur+NMwTYdB3RIfw/GJ7IEd/X5f524shcbxeA== 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-SenderADCheck; bh=vgoJ7WmXXHYUeQ+y6JJrhNslNuYW8c71ZChIbvZUj/g=; b=RyOyeYCcvnevMCu4rNOcvUBauDMK1MvSzD3wpKsNvbPCn/EtvxgNEudnyQNhMpIL18JZJpPjNWJw0G/OYGwvVWMT59/8JEAqrOiLxEqWuVIl/LuWP+OAgTRF/Agq4hunIhBowjtEbgMv9gCwT8RmVp+vwcVECMD5ERsVvXxzyZSWJ7RBTH3oqhDVe5/DXuLjJHXTs6VVj3RYNn//ttcCvmZk/Xoh1ihLLypYe66/q9di65lYSo91wf9MlfWiGSdnSAAvCifHp56sssWjc0ZZSbD/NdpKbr6LkUDtZbeF5NOWtCcIIfeBcwMRzo+HdFkxs+UAnxwDeKmNLApikqzYHQ== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=vgoJ7WmXXHYUeQ+y6JJrhNslNuYW8c71ZChIbvZUj/g=; b=nFCkgOd5chqtezezVOBDBxgaz4P7BZxTkTsD/sJ+avdk+6scyyO7BtN1gf4fqkM4LLt7XkI/ootMraojQ+75Lyx9mOlHOjufe57ykd8R8/ByJg1vQVJIR4EBqVqdXuFqG2MPQNzULARy7Tg+eMJQUvQi42l3qnWGT/vvHJr95gE= Received: from BN8PR11MB3666.namprd11.prod.outlook.com (2603:10b6:408:8c::19) by BN6PR11MB4052.namprd11.prod.outlook.com (2603:10b6:405:7a::37) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3890.20; Tue, 2 Mar 2021 06:03:58 +0000 Received: from BN8PR11MB3666.namprd11.prod.outlook.com ([fe80::9d91:6348:53a9:cb20]) by BN8PR11MB3666.namprd11.prod.outlook.com ([fe80::9d91:6348:53a9:cb20%7]) with mapi id 15.20.3890.023; Tue, 2 Mar 2021 06:03:58 +0000 From: "Wu, Hao A" To: "Bandaru, Purna Chandra Rao" , "devel@edk2.groups.io" CC: "Albecki, Mateusz" , "Ni, Ray" Subject: Re: [PATCH v4] MdeModulePkg/UfsPassThruDxe: Improve Device initialization polling Loop Thread-Topic: [PATCH v4] MdeModulePkg/UfsPassThruDxe: Improve Device initialization polling Loop Thread-Index: AQHXDyOBnirjm4CrKk+eaTleFfq2VapwNQQg Date: Tue, 2 Mar 2021 06:03:58 +0000 Message-ID: References: <20210302051824.12448-1-purna.chandra.rao.bandaru@intel.com> In-Reply-To: <20210302051824.12448-1-purna.chandra.rao.bandaru@intel.com> Accept-Language: en-US, zh-CN X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.5.1.3 authentication-results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [192.198.147.218] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: c4dcbf1e-9c91-46d8-1f4c-08d8dd40f86f x-ms-traffictypediagnostic: BN6PR11MB4052: x-ms-exchange-minimumurldomainage: tianocore.org#6027 x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:8882; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: b6IpfqUuQjRjmISXn3Ma08p9T9eZ3I91G1mn0Eu+RtZaNWijmRJr+l9RZKNOvzq2wtCR7wPw9KRzsXHrn9c5kdGeXh3YU/VTaTUJdcoEdBrvBcjvgAoUx2pnzwn/FqVzZbRRjm79nf32we+x8HCqsjRJMjfy9QnW9bdglC4UhpjbiUB03Wx6PHk+6PKU4UIWb/Te8B+VmbEE9wDOTiUlye53UUGiPvNun4aslEDHazcya83FC0CLINZ/JYlUCnnjalpNsWdM+Xwz8amgWkLiENFvNamRiQjfnOvg8N5B64QE8PSxOx7JB9ivCzeIH+Ql5t4KiHie9OcT/tUnJHcNBqMJuDUipps+M+AtDUyk7W7ldjm6UO9K37m6LrXt/UFIZEXl7THsWL5Zl9MF/AoMkG6P9DY42Lx/PZRnXiRRT07OJRF/8RlnGWWCSxfiNQosQpWT9ucisvYdPYcntgmDUGghqaZlBA2P7HDBoPDzNkMYp2TFBfst3mL7lC27d5WMgC1yJuS+sNACDZG8G+Q4wWnEPybKLnzXWJPWIGxXQ4pkOBcyrD8D5gmQenUHOBCvqc5ZeU5FHWqcdWX6yBwJorDFZv2nHLWwiX9joaWE8DI= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN8PR11MB3666.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(376002)(396003)(346002)(136003)(366004)(39860400002)(86362001)(66556008)(478600001)(66476007)(64756008)(7696005)(66946007)(76116006)(107886003)(110136005)(316002)(54906003)(8676002)(5660300002)(45080400002)(66446008)(8936002)(4326008)(52536014)(966005)(2906002)(83380400001)(26005)(33656002)(186003)(9686003)(71200400001)(6506007)(53546011)(55016002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: =?us-ascii?Q?eyG+bEpUf0mSKhFkVogoaWnbT/2G9loOv3I/PQGavfLjhlpyD9cJ8z2zlk6d?= =?us-ascii?Q?x4LhtTktysTCFIEHALaw+t7sX70yptZ87vD9L989nD+s+KKkjSHpZ7mep2cf?= =?us-ascii?Q?alrxQ4j7gEd4Yb9VLmiwFGpyVZXkhEhgLEPh8JoRhzQEOYPz6sGUkEBH8h5D?= =?us-ascii?Q?vyTqgyO9Mh0wuOoWr0lIhMGSJyvU2yq8+4K1R3hMQvmpN1UPnFjidsojKRkJ?= =?us-ascii?Q?v281xO73EbVuyRHfLym/l2o6F/pEvv+UDOeKUONKd1BO1LaZCk5f6wg41j7E?= =?us-ascii?Q?7MdkHwsqwavo/yKf0jw5ufIBsslClPYJ+akzgl45Mb2hjPdgoEjvDbire7Au?= =?us-ascii?Q?nH3kKrBOj5P4BnViUG1XqpYFY9RZzpwzscUcvDkfTYaZKrWRBTIGbgApw3dz?= =?us-ascii?Q?u8m/F/YpnpSk6APjLWUHSbYDVcnDam9XhaVSaxeHQaX1+yrv/3m+fqznb9pk?= =?us-ascii?Q?nUC1kpXxsqErskvk3x4MF0beJF0LV3qXZL8M91/QGCaOc3G2JetTR15DGeaM?= =?us-ascii?Q?mFihDpNDdLbte8QgsbmGAvM2ltLDU1y2Ryyf3vyvXvmjjtw9t/22nZpbJAo8?= =?us-ascii?Q?1vPuQlGGet5tedyKBBsZv98daKikMEYRIWU78fbtF9UYTM8uaPKdQYklWFY/?= =?us-ascii?Q?0JmeQsr7pB5+kA/dF9lMrH/6VGmr7RA0HRlebH6TKoCYO34+6QuLOUqRwIo5?= =?us-ascii?Q?0A/M79A1O3PzgeCiwAQjjIfPLykKQveURA3M9hH1FVb0BO673Re3t0N18OW1?= =?us-ascii?Q?toWRD8bog1gHBAJZWPQWqDbna6K1trRRFQOzpBJN+diP4apq7ashgNJJ3VkV?= =?us-ascii?Q?VYKhpvy7McxnS3iXxlMFQI5FYKFyHm7yf/3EOM86fv7GY0PNJ/Cud9MZUfWb?= =?us-ascii?Q?NNeQ7UvqiNMQdjJsMjPmBPuiPE+OCTE3IvOe7LkYcZPsqJvsRGve6K8aCmkG?= =?us-ascii?Q?U+1BHxiG5CSV5hMgfOJW/WIUa6voClqUJZOoLNRtUCFEJTmAxJMSgfNIHIQU?= =?us-ascii?Q?QFAT+06Mt0XD3CnNgd1r35xCIOzsAata9IzqclE6xOlUlh0kQDDPUMvNzFyn?= =?us-ascii?Q?3CPvpb5mDKSvUZn0/TyZpZOED+gvWFB6GqLlqbyV60lYgcu6/XKWqrotxAn8?= =?us-ascii?Q?JD17lDW45CVbkEKQxLs3Rz5DnfpxTXigFKxckYd8K18PCB4971Xhx2JvHxUU?= =?us-ascii?Q?UcV3TW28h6RjU6SthvbDqePaXSLS/pRLtou51mBqBo1Rif93UJRPF/ljwpo9?= =?us-ascii?Q?Y/FfsM9rRjOwWPtGYsknR2awBc39vDJ3/Gjk2ac0FSwbhFeJZsKMu304q7w4?= =?us-ascii?Q?fieFtg8sNz/FFdTHkRdTNV9+?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BN8PR11MB3666.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: c4dcbf1e-9c91-46d8-1f4c-08d8dd40f86f X-MS-Exchange-CrossTenant-originalarrivaltime: 02 Mar 2021 06:03:58.3985 (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: LEIy1+yUIk02sU7PciuwZHGuzCcoLzK9Cz9pyh0oyj+WdmPeCBpeaFbzQf+Abd9jN+FbTtSsS6Tn/esEDBw6Bg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR11MB4052 Return-Path: hao.a.wu@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable > -----Original Message----- > From: Bandaru, Purna Chandra Rao > Sent: Tuesday, March 2, 2021 1:18 PM > To: devel@edk2.groups.io > Cc: Bandaru, Purna Chandra Rao ; > Albecki, Mateusz ; Ni, Ray ; > Wu, Hao A > Subject: [PATCH v4] MdeModulePkg/UfsPassThruDxe: Improve Device > initialization polling Loop >=20 > https://bugzilla.tianocore.org/show_bug.cgi?id=3D3217 >=20 > Current Ufs Pass thru driver polls for 5us and return success even when t= he > timeout occurs. > There are cards that can take upto 600ms for Init and hence increased the > time out for fDeviceInit polling loop. >=20 > Change-Id: I7b38e6f6aa46d93f07621caf29ad7c43f57df021 Reviewed-by: Hao A Wu I will remove the above 'Change-Id' information when pushing the patch. I will hold this patch until the edk2-stable202102 is announced. Best Regards, Hao Wu > Signed-off-by: Bandaru > Cc: Mateusz Albecki > Cc: Ray Ni > Cc: Hao A Wu > --- > MdeModulePkg/Bus/Ufs/UfsPassThruDxe/UfsPassThru.c | 17 > +++++++++++++---- > MdeModulePkg/Bus/Ufs/UfsPassThruDxe/UfsPassThru.h | 3 ++- > 2 files changed, 15 insertions(+), 5 deletions(-) >=20 > diff --git a/MdeModulePkg/Bus/Ufs/UfsPassThruDxe/UfsPassThru.c > b/MdeModulePkg/Bus/Ufs/UfsPassThruDxe/UfsPassThru.c > index 9768c2e6fb..92ff958f16 100644 > --- a/MdeModulePkg/Bus/Ufs/UfsPassThruDxe/UfsPassThru.c > +++ b/MdeModulePkg/Bus/Ufs/UfsPassThruDxe/UfsPassThru.c > @@ -1,6 +1,6 @@ > /** @file >=20 > - Copyright (c) 2014 - 2019, Intel Corporation. All rights reserved.
> + Copyright (c) 2014 - 2021, Intel Corporation. All rights > + reserved.
> Copyright (c) Microsoft Corporation.
> SPDX-License-Identifier: BSD-2-Clause-Patent >=20 > @@ -749,7 +749,7 @@ UfsFinishDeviceInitialization ( { > EFI_STATUS Status; > UINT8 DeviceInitStatus; > - UINT8 Timeout; > + UINT32 Timeout; >=20 > DeviceInitStatus =3D 0xFF; >=20 > @@ -761,7 +761,10 @@ UfsFinishDeviceInitialization ( > return Status; > } >=20 > - Timeout =3D 5; > + // > + // There are cards that can take upto 600ms to clear fDeviceInit flag. > + // > + Timeout =3D UFS_INIT_COMPLETION_TIMEOUT; > do { > Status =3D UfsReadFlag (Private, UfsFlagDevInit, &DeviceInitStatus); > if (EFI_ERROR (Status)) { > @@ -771,7 +774,13 @@ UfsFinishDeviceInitialization ( > Timeout--; > } while (DeviceInitStatus !=3D 0 && Timeout !=3D 0); >=20 > - return EFI_SUCCESS; > + if (Timeout =3D=3D 0) { > + DEBUG ((DEBUG_ERROR, "UfsFinishDeviceInitialization > DeviceInitStatus=3D%x EFI_TIMEOUT \n", DeviceInitStatus)); > + return EFI_TIMEOUT; > + } else { > + DEBUG ((DEBUG_INFO, "UfsFinishDeviceInitialization Timeout left=3D%x > EFI_SUCCESS \n", Timeout)); > + return EFI_SUCCESS; > + } > } >=20 > /** > diff --git a/MdeModulePkg/Bus/Ufs/UfsPassThruDxe/UfsPassThru.h > b/MdeModulePkg/Bus/Ufs/UfsPassThruDxe/UfsPassThru.h > index ef33250c89..79b86f7e6b 100644 > --- a/MdeModulePkg/Bus/Ufs/UfsPassThruDxe/UfsPassThru.h > +++ b/MdeModulePkg/Bus/Ufs/UfsPassThruDxe/UfsPassThru.h > @@ -1,6 +1,6 @@ > /** @file >=20 > - Copyright (c) 2014 - 2019, Intel Corporation. All rights reserved.
> + Copyright (c) 2014 - 2021, Intel Corporation. All rights > + reserved.
> Copyright (c) Microsoft Corporation.
> SPDX-License-Identifier: BSD-2-Clause-Patent >=20 > @@ -40,6 +40,7 @@ > // > #define UFS_MAX_LUNS 12 > #define UFS_WLUN_PREFIX 0xC1 > +#define UFS_INIT_COMPLETION_TIMEOUT 600000 >=20 > typedef struct { > UINT8 Lun[UFS_MAX_LUNS]; > -- > 2.16.2.windows.1