Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752922AbcD2Csu (ORCPT ); Thu, 28 Apr 2016 22:48:50 -0400 Received: from lucky1.263xmail.com ([211.157.147.131]:42691 "EHLO lucky1.263xmail.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752793AbcD2Css (ORCPT ); Thu, 28 Apr 2016 22:48:48 -0400 X-263anti-spam: KSV:0; X-MAIL-GRAY: 1 X-MAIL-DELIVERY: 0 X-ABS-CHECKED: 4 X-ADDR-CHECKED: 0 X-KSVirus-check: 0 X-RL-SENDER: shawn.lin@rock-chips.com X-FST-TO: adrian.hunter@intel.com X-SENDER-IP: 58.22.7.114 X-LOGIN-NAME: shawn.lin@rock-chips.com X-UNIQUE-TAG: <9fbadf7c5276cbe0ec73f4ccb35e973c> X-ATTACHMENT-NUM: 0 X-DNS-TYPE: 0 From: Shawn Lin To: Adrian Hunter , Ulf Hansson Cc: Jaehoon Chung , Michal Simek , soren.brinkmann@xilinx.com, Rob Herring , linux-mmc@vger.kernel.org, linux-kernel@vger.kernel.org, Doug Anderson , Heiko Stuebner , linux-rockchip@lists.infradead.org, devicetree@vger.kernel.org, Shawn Lin Subject: [PATCH v2 5/6] mmc: sdhci: implement enhanced strobe callback Date: Fri, 29 Apr 2016 10:48:23 +0800 Message-Id: <1461898103-29026-1-git-send-email-shawn.lin@rock-chips.com> X-Mailer: git-send-email 1.8.0 In-Reply-To: <1461897751-28810-1-git-send-email-shawn.lin@rock-chips.com> References: <1461897751-28810-1-git-send-email-shawn.lin@rock-chips.com> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1462 Lines: 46 Enhanced strobe stuff currently is beyond the scope of Secure Digital Host Controller Interface. So we can't find a register here to enable/disable it. We experct variant drivers to finish the details according to their vendor settings. Signed-off-by: Shawn Lin --- Changes in v2: None drivers/mmc/host/sdhci.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c index 94cffa7..a04e4c4 100644 --- a/drivers/mmc/host/sdhci.c +++ b/drivers/mmc/host/sdhci.c @@ -2049,6 +2049,16 @@ out_unlock: return err; } +static int sdhci_prepare_enhanced_strobe(struct mmc_host *mmc, bool enable) +{ + /* + * Currently we can't find a register to enable enhanced strobe + * function for standard sdhci, so we expect variant drivers to + * overwrite it. + */ + return -EINVAL; +} + static int sdhci_select_drive_strength(struct mmc_card *card, unsigned int max_dtr, int host_drv, int card_drv, int *drv_type) @@ -2158,6 +2168,7 @@ static const struct mmc_host_ops sdhci_ops = { .enable_sdio_irq = sdhci_enable_sdio_irq, .start_signal_voltage_switch = sdhci_start_signal_voltage_switch, .prepare_hs400_tuning = sdhci_prepare_hs400_tuning, + .prepare_enhanced_strobe = sdhci_prepare_enhanced_strobe, .execute_tuning = sdhci_execute_tuning, .select_drive_strength = sdhci_select_drive_strength, .card_event = sdhci_card_event, -- 2.3.7