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::234; helo=mail-it0-x234.google.com; envelope-from=ard.biesheuvel@linaro.org; receiver=edk2-devel@lists.01.org Received: from mail-it0-x234.google.com (mail-it0-x234.google.com [IPv6:2607:f8b0:4001:c0b::234]) (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 6AABC2215BD89 for ; Tue, 30 Jan 2018 01:46:42 -0800 (PST) Received: by mail-it0-x234.google.com with SMTP id k131so11882578ith.4 for ; Tue, 30 Jan 2018 01:52:16 -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=u7Pa1H/yh/qkhralpt5NeFlkGZSTU14xspl4eVrXMmc=; b=cHYy3O8RBbDFeB/LmVwREFxUw6KDGsPwmHWufEY/LMxlSs5/pjTr1XkjtdQphWPRdd q5fr3uuPf9/FbdbnwlAvG2SCffLHa0YXwgGZEL81HMKzmNK+3mf+wbswNj9dTJuQqEkG sQIEcnuXH5uo+hod7DehE9e6n26i0rD2VflOw= 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=u7Pa1H/yh/qkhralpt5NeFlkGZSTU14xspl4eVrXMmc=; b=hZZpwl7fTccDphoZdnKdQMAwts6uK04GvjSVYvJSdSKfrw6Ma/GtO83rgbaGNljEbN OrRA/Py9h5DRhv2ontNNgfKZerFqNAohR4CfQigxHhr2bOpGlUc0R+F9tZ/ZAwypO2IY XiKlVr1+1bKZtGvzdX4OucvxET/W0GxJCEfetKpUNWj8M1E0B76BYYdwXAc9hDNy6ovs TyL1fKW+87TL8GEvkvr0HxDzvvbmmOl9AtDG0kgBkb7eu6VU4g0enZyGDucw7SC+92xk EUhVCAGZJmAhFRTkvTarRBu59iaZKqWojkOY5/euWPN0gJCX8w9+AG+WQsvkIaE2y+IC m69A== X-Gm-Message-State: AKwxytfsHO/PAot9u7zFIl+l7PV+YtoMP7PGjV6VqL4Z4kUcL8F6Nxlv XO082b2LcHhsL0EkHdn4yf1tg1ISsr5hTX5Dm5fauw== X-Google-Smtp-Source: AH8x2271o5l4mn8eYQRdiVfOMGlOflE41KNv4QDkE9XLwUgZJN/mDh1q4X5Vi+N5cNZgOjvvvuCVjonSgZe/ka45Tlc= X-Received: by 10.36.108.208 with SMTP id w199mr833977itb.102.1517305936018; Tue, 30 Jan 2018 01:52:16 -0800 (PST) MIME-Version: 1.0 Received: by 10.107.112.13 with HTTP; Tue, 30 Jan 2018 01:52:15 -0800 (PST) In-Reply-To: <0C09AFA07DD0434D9E2A0C6AEB0483103BA1996C@shsmsx102.ccr.corp.intel.com> References: <20171207224322.20362-1-ard.biesheuvel@linaro.org> <0C09AFA07DD0434D9E2A0C6AEB0483103BA1996C@shsmsx102.ccr.corp.intel.com> From: Ard Biesheuvel Date: Tue, 30 Jan 2018 09:52:15 +0000 Message-ID: To: "Zeng, Star" Cc: "Wu, Hao A" , "Ni, Ruiyu" , "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: Tue, 30 Jan 2018 09:46:42 -0000 Content-Type: text/plain; charset="UTF-8" On 30 January 2018 at 01:24, Zeng, Star wrote: > Reviewed-by: Star Zeng > > Thanks Hao's investigation and Ard's contribution. > Thanks all Pushed as 864701886fc3..b23fc39cd3c3 > > Star > -----Original Message----- > From: Ard Biesheuvel [mailto:ard.biesheuvel@linaro.org] > Sent: Monday, January 29, 2018 4:26 PM > 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 > > 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 >>