From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: intel.com, ip: 134.134.136.100, mailfrom: mateusz.albecki@intel.com) Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by groups.io with SMTP; Wed, 07 Aug 2019 09:51:21 -0700 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by orsmga105.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 07 Aug 2019 09:51:19 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.64,357,1559545200"; d="scan'208";a="192949594" Received: from gklab-27-32.ger.corp.intel.com ([10.102.28.45]) by fmsmga001.fm.intel.com with ESMTP; 07 Aug 2019 09:51:17 -0700 From: "Albecki, Mateusz" To: devel@edk2.groups.io Cc: Mateusz Albecki , Hao A Wu Subject: [PATCH 0/4] Add EDKII_UFS_HC_PLATFORM_PROTOCOL to support platform specific programming of UFS host controllers Date: Wed, 7 Aug 2019 18:51:03 +0200 Message-Id: <20190807165107.688-1-mateusz.albecki@intel.com> X-Mailer: git-send-email 2.14.1.windows.1 To cover additional host controller programming mentioned in the UFS specification we have added an additional protocol that allows the UEFI driver to give control to platform driver. This allows the platform to perform any additional steps needed for the stable operation. Test coverage: Tested on platform with UFS 2.1 host controller with Samsung UFS2.0 part with 3 LUs enabled All LUs have been enumerated in boot manager. Tested that enumeration works without platform protocol installed(on host controller that can support it) Tested that enumeration works with platform protocol installed and with additional programming steps after link startup(power mode change to GEAR2). Cc: Hao A Wu Mateusz Albecki (4): MdeModulePkg: Add definition of the EDKII_UFS_HC_PLATFORM_PROTOCOL MdeModulePkg/UfsPassThruDxe: Refactor UfsExecUicCommand function MdeModulePkg/UfsPassThruDxe: Refactor private data to use EDKII_UFS_HC_INFO MdeModulePkg/UfsPassThruDxe: Implement EDKII_UFS_HC_PLATFORM_PROTOCOL MdeModulePkg/Bus/Ufs/UfsPassThruDxe/UfsPassThru.c | 25 ++- MdeModulePkg/Bus/Ufs/UfsPassThruDxe/UfsPassThru.h | 44 +++++- .../Bus/Ufs/UfsPassThruDxe/UfsPassThruDxe.inf | 3 +- .../Bus/Ufs/UfsPassThruDxe/UfsPassThruHci.c | 172 ++++++++++++++++----- .../Include/Protocol/UfsHostControllerPlatform.h | 124 +++++++++++++++ MdeModulePkg/MdeModulePkg.dec | 3 + 6 files changed, 324 insertions(+), 47 deletions(-) create mode 100644 MdeModulePkg/Include/Protocol/UfsHostControllerPlatform.h -- 2.14.1.windows.1 -------------------------------------------------------------------- Intel Technology Poland sp. z o.o. ul. Slowackiego 173 | 80-298 Gdansk | Sad Rejonowy Gdansk Polnoc | VII Wydzial Gospodarczy Krajowego Rejestru Sadowego - KRS 101882 | NIP 957-07-52-316 | Kapital zakladowy 200.000 PLN. Ta wiadomosc wraz z zalacznikami jest przeznaczona dla okreslonego adresata i moze zawierac informacje poufne. W razie przypadkowego otrzymania tej wiadomosci, prosimy o powiadomienie nadawcy oraz trwale jej usuniecie; jakiekolwiek przegladanie lub rozpowszechnianie jest zabronione. This e-mail and any attachments may contain confidential material for the sole use of the intended recipient(s). If you are not the intended recipient, please contact the sender and delete all copies; any review or distribution by others is strictly prohibited.