From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=2607:f8b0:4001:c0b::22a; helo=mail-it0-x22a.google.com; envelope-from=ard.biesheuvel@linaro.org; receiver=edk2-devel@lists.01.org Received: from mail-it0-x22a.google.com (mail-it0-x22a.google.com [IPv6:2607:f8b0:4001:c0b::22a]) (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 06D172215BD8E for ; Mon, 29 Jan 2018 00:20:10 -0800 (PST) Received: by mail-it0-x22a.google.com with SMTP id w14so8348586itc.3 for ; Mon, 29 Jan 2018 00:25:44 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=dC9cYULytqkGlFcVfqv2Dezyt9VHarqtOp1kwTVa23Y=; b=WkS3+Fx0m7eybhYBgObEgXoHgNOVn6Wq/XDd6XzV0s2pxhRkXOZOdGCfG04MFGin5W X1+51CKBO8K7dTrE5JjIipYsmfN3NkIcthCqfRxYaKd7yW9BaIy5n3p3hoMs3UUB7xiI rouNMu2xqEs1AcQouhnF5J8kB+BkMXKQiQ4nE= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=dC9cYULytqkGlFcVfqv2Dezyt9VHarqtOp1kwTVa23Y=; b=NMRbdYOBcaX5IG0Aczwddr2ZhMKFa9IyZXGvlq7isI2wo3YhPmaEeszpH6drSNhvfF cfarLVNNasirbe+5Bx5yV/lhnFtXwbjWggXvhfxLpzlpotH30lPzmjx42UaNircUSv5g EVuJTp651nC+hsL5Xdig8sXge86DOMKWimveBqSjorME+2ux0pCtkPXZ2lZyVRT+2J+j Eu/HLRGyV9zyZ9131gYq98xOaux2YAf8SZZh+RlyPXfl4rRm3qr3nRqR885mUsmVJhZs 5oacBx0ios3GJnY0NZl6oHthRQNSF/MK2jkrAhumU3pZ9iqe89vAl89CP5x4uUoIIyjO qewA== X-Gm-Message-State: AKwxyte1BZmp9BAUctzZGi9Rgp9n8Y6DOtc9het633wJV98fGFxWOj78 oo/S55oYkdQqapW8ome2NcZ9Ll2ZjEfiBU9Uo1lM4w== X-Google-Smtp-Source: AH8x2272MkR+hLyA50o/WanAdHV0gi0gCsijzbgk3SJmJ6TgA0y5uHsHnbhpmhKXvLIZdDimMqst2mw1+3X24Skqy54= X-Received: by 10.36.207.87 with SMTP id y84mr24618187itf.59.1517214343419; Mon, 29 Jan 2018 00:25:43 -0800 (PST) MIME-Version: 1.0 Received: by 10.107.112.13 with HTTP; Mon, 29 Jan 2018 00:25:43 -0800 (PST) In-Reply-To: References: <20171207224322.20362-1-ard.biesheuvel@linaro.org> From: Ard Biesheuvel Date: Mon, 29 Jan 2018 08:25:43 +0000 Message-ID: To: "Wu, Hao A" , "Zeng, Star" , "Ni, Ruiyu" Cc: "edk2-devel@lists.01.org" , "leif.lindholm@linaro.org" , "Kinney, Michael D" , "Tian, Feng" Subject: Re: [PATCH v4 0/2] quirks handling for SDHCI controllers X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 29 Jan 2018 08:20:11 -0000 Content-Type: text/plain; charset="UTF-8" On 29 January 2018 at 05:13, Wu, Hao A wrote: > One minor comment, please help to remove the line (around line 1067): > @param[in] Capability The capability of the slot. > > within function description comment for SdMmcHcInitHost() in file: > MdeModulePkg\Bus\Pci\SdMmcPciHcDxe\SdMmcPciHci.c > > Other than that, the series is good to me: > Reviewed-by: Hao Wu > Thank you very much! > Really sorry for the delay. > No worries. Star, Ray, any more comments from your side? > >> -----Original Message----- >> From: Ard Biesheuvel [mailto:ard.biesheuvel@linaro.org] >> Sent: Friday, December 08, 2017 6:43 AM >> To: edk2-devel@lists.01.org >> Cc: leif.lindholm@linaro.org; Kinney, Michael D; Zeng, Star; Tian, Feng; Ni, >> Ruiyu; Wu, Hao A; Ard Biesheuvel >> Subject: [PATCH v4 0/2] quirks handling for SDHCI controllers >> >> Many SDHCI implementations exist that are almost spec complicant, and >> could be driven by the generic SD/MMC host controller driver except >> for some minimal necessary init time tweaks. >> >> Adding such tweaks to the generic driver is undesirable. On the other >> hand, forking the driver for every platform that has such a SDHCI >> controller is problematic when it comes to upstreaming and ongoing >> maintenance (which is arguably the point of upstreaming in the first >> place). >> >> So these patches propose a workaround that is minimally invasive on the >> EDK2 side, but gives platforms a lot of leeway when it comes to applying >> SDHCI quirks. >> >> Changes since v3: >> - remove PassThru argument from protocol members: it is unclear whether the >> protocol is available when the override protocol is invoked, and my >> example use case does not need it >> - replace incorrect HandleProtocol with LocateProtocol, given that the override >> protocol is now a singleton instance >> - merge notifier calls into SdMmcHcReset() and SdMmcHcInitHost (), this >> required changing the prototype to take a SD_MMC_HC_PRIVATE_DATA* >> argument >> and so the prototypes no longer belong in SdMmcPciHci.h and have been >> moved >> to SdMmcPciHcDxe.h >> - use VOID* type for capability not UINT64* since we don't know its alignment >> >> Changes since v2: >> - use a singleton instance of the SD/MMC protocol rather than one per >> controller; this is needed to support 'reconnect -r', as pointed out >> by Ray >> - use EDKII prefixes for all types defined by the protocol >> - replace 'hook' with 'notify', and tweak some other identifiers >> - add missing function comment headers for factored out functions >> >> Changes since RFC/v1: >> - add EFI_SD_MMC_PASS_THRU_PROTOCOL* member to override methods >> - use UINT64* not VOID* to pass capability structure (which is always 64 bits >> in size) >> >> Ard Biesheuvel (2): >> MdeModulePkg: introduce SD/MMC override protocol >> MdeModulePkg/SdMmcPciHcDxe: allow HC capabilities to be overridden >> >> MdeModulePkg/Bus/Pci/SdMmcPciHcDxe/SdMmcPciHcDxe.c | 35 ++++++- >> MdeModulePkg/Bus/Pci/SdMmcPciHcDxe/SdMmcPciHcDxe.h | 36 ++++++++ >> MdeModulePkg/Bus/Pci/SdMmcPciHcDxe/SdMmcPciHcDxe.inf | 2 + >> MdeModulePkg/Bus/Pci/SdMmcPciHcDxe/SdMmcPciHci.c | 95 >> +++++++++++++++++-- >> MdeModulePkg/Bus/Pci/SdMmcPciHcDxe/SdMmcPciHci.h | 35 ------- >> MdeModulePkg/Include/Protocol/SdMmcOverride.h | 97 >> ++++++++++++++++++++ >> MdeModulePkg/MdeModulePkg.dec | 3 + >> 7 files changed, 257 insertions(+), 46 deletions(-) >> create mode 100644 MdeModulePkg/Include/Protocol/SdMmcOverride.h >> >> -- >> 2.11.0 >