From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: None (no SPF record) identity=mailfrom; client-ip=2a00:1450:4864:20::12c; helo=mail-lf1-x12c.google.com; envelope-from=mw@semihalf.com; receiver=edk2-devel@lists.01.org Received: from mail-lf1-x12c.google.com (mail-lf1-x12c.google.com [IPv6:2a00:1450:4864:20::12c]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id DD9F02118B795 for ; Wed, 7 Nov 2018 17:58:55 -0800 (PST) Received: by mail-lf1-x12c.google.com with SMTP id z13so2981709lfe.11 for ; Wed, 07 Nov 2018 17:58:55 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=semihalf-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id; bh=tyCv+gACWzf/sU2Bl1Il0su1AqWx8PSNUSdylthI+mc=; b=rGzzg0GdIP5DCb1x7GLVSD3yN0cZ+t/k1+zrcq3zqQ+S4IgLEvOnKt8AxGbM9FXcqE ghLV6iOUzFD+qXzRu/C6iNd8/j34hNbmjYGpfeDr7yb+SfK9G/FR9hilWQ2xWD3wpQVD WFVVfUXLw5ox1jdbV8XrtlU+LF2vdCCnauzfuYi74J+jqsYXmjUg4jZx9UQO+P1NGgIf mTT5Ju8w+9AxRUPKG4xVO3zwF9HBF407p7rEzzM6bCjfF6br7Ay3i+jl//rJElkrK1DI AYwWaC9FZJE9beGagQBcGHGDigUvgHUBPSDRZcFEpP0kRB5+1rkSi5T+KCGlRLkzMs5e n0kQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=tyCv+gACWzf/sU2Bl1Il0su1AqWx8PSNUSdylthI+mc=; b=jiXvf5aqoZhO5a0eKbL0I2XTyyYamJ+zvN/5F0Razz9cCfyxlcx6V+d9WmBZ/VTYaW /RrbywMa611dZ9p1LouWH83nre0TY+rArpQnAz1cdJImUhOdA8ucdS/1Ga+9DAtlJyWp +K1i/BOFj9RFb+uPtO85/iC2Q/RDwP1btNDlXLYXxvubLCd8WCG0viQsFcqNtzlYlAxH uecvch/RFXAmAuWLiBKC6DVNJMom+Znrvui7CjAdeoNOoFzlBXzAX08aX8GYlvC1h+zv HLS415yiIX6ledqlcQe4zbUyhe/W9HJqZ15/o7snM4ApQGTktb1/u/jUosOtNZKoO93U BJ4w== X-Gm-Message-State: AGRZ1gIYCUWooSIih2+/GHXJ23pNDcr9oNjsVwjLf1aaYk7HMNngXdGu 5DzMD07BzYT6md+kxvzxqqIYNCSh350= X-Google-Smtp-Source: AJdET5c6Nts3Dafx8prjpTiiqlD9DNaFiBmTO7aWgj3M6GWVPipqmUDeSClTqP81lRbxQPD7Cu+7iw== X-Received: by 2002:a19:a9d2:: with SMTP id s201mr1428382lfe.154.1541642333559; Wed, 07 Nov 2018 17:58:53 -0800 (PST) Received: from gilgamesh.semihalf.com (31-172-191-173.noc.fibertech.net.pl. [31.172.191.173]) by smtp.gmail.com with ESMTPSA id r22-v6sm386223ljg.82.2018.11.07.17.58.51 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Wed, 07 Nov 2018 17:58:52 -0800 (PST) From: Marcin Wojtas To: edk2-devel@lists.01.org Cc: leif.lindholm@linaro.org, hao.a.wu@intel.com, michael.d.kinney@intel.com, liming.gao@intel.com, ard.biesheuvel@linaro.org, nadavh@marvell.com, mw@semihalf.com, jsd@semihalf.com, tm@semihalf.com, jaz@semihalf.com Date: Thu, 8 Nov 2018 02:57:31 +0100 Message-Id: <1541642255-15602-1-git-send-email-mw@semihalf.com> X-Mailer: git-send-email 2.7.4 Subject: [PATCH v3 0/4] SdMmcOverride extension X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 X-List-Received-Date: Thu, 08 Nov 2018 01:58:56 -0000 Hi, This is the third version of the patchset, which addresses all remarks that came up during the v2 review, such as updating the bus mode related enum/macro, headers cleanup, etc. Details can be found in the changelog below. Patches are available in the github: https://github.com/MarvellEmbeddedProcessors/edk2-open-platform/commits/sdmmc-override-upstream-r20181108 Please note that extending SdMmcOverride protocol was impacting so far the only user of it (Synquacer controller). In paralel edk2-platforms patchset, a patch can be found: ("Silicon/SynQuacer/PlatformDxe: adjust to updated SdMmcOverride") which immunizes for above and future extensions of the protocol: https://github.com/MarvellEmbeddedProcessors/edk2-open-platform/commits/xenon-upstream-r20181108 I'm looking forward to the comments and remarks. Best regards, Marcin Changelog: * 1/4: - rename new parameter to PhaseData - add Ard's RB * 2/4: - s/Controler/Controller/ - remove all references to MMC_SDR_50 mode - rename and reorder MMC bus modes - rename enum: s/SD_MMC_UHS_TIMING/SD_MMC_BUS_MODE/ and move it to protocol header in order to drop including private one - fix if condition in EmmcSwitchToHighSpeed - call SdMmcHcUhsSignaling unconditionally before SdMmcOverride callback, so that protocol producer can optionally modify only quirky timing mode values. *4/4 - bump protocol version to 2 - remove redundant assert from SdMmcPciHcDriverBindingStart (BaseClkFreq is already checked in SdMmcHcInitClockFreq) - update comment in SdMmcHcInitClockFreq - restore original DumpCapabilityReg and append v1 -> v2 * Rebase onto newest master * 1/4 [new patch] - preparation for extending NotifyPhase * 2/4 - UhsSignaling as a part of NotifyPhase * 3/4 - SwitchClockFreqPost as a part of NotifyPhase * 4/4 - Allow updating BaseClkFreq via Capability instead of the independent callback. Marcin Wojtas (2): MdeModulePkg/SdMmcPciHcDxe: Add an optional parameter in NotifyPhase MdeModulePkg/SdMmcPciHcDxe: Allow overriding base clock frequency Tomasz Michalec (2): MdeModulePkg/SdMmcPciHcDxe: Add UhsSignaling to SdMmcOverride protocol MdeModulePkg/SdMmcPciHcDxe: Add SwitchClockFreqPost to SdMmcOverride MdeModulePkg/Bus/Pci/SdMmcPciHcDxe/SdMmcPciHcDxe.h | 6 + MdeModulePkg/Bus/Pci/SdMmcPciHcDxe/SdMmcPciHci.h | 40 +++- MdeModulePkg/Include/Protocol/SdMmcOverride.h | 29 ++- MdeModulePkg/Bus/Pci/SdMmcPciHcDxe/EmmcDevice.c | 200 +++++++++++++++----- MdeModulePkg/Bus/Pci/SdMmcPciHcDxe/SdDevice.c | 53 +++++- MdeModulePkg/Bus/Pci/SdMmcPciHcDxe/SdMmcPciHcDxe.c | 13 +- MdeModulePkg/Bus/Pci/SdMmcPciHcDxe/SdMmcPciHci.c | 101 ++++++++-- 7 files changed, 358 insertions(+), 84 deletions(-) -- 2.7.4