From patchwork Mon Feb 5 12:50:13 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kishon Vijay Abraham I X-Patchwork-Id: 126862 Delivered-To: patch@linaro.org Received: by 10.46.124.24 with SMTP id x24csp1944956ljc; Mon, 5 Feb 2018 04:55:35 -0800 (PST) X-Google-Smtp-Source: AH8x22738ZMH1i+zFTHxKC6arkbHrU3i7KdXH/ntMS1hXScbQB2OCi82AGKfBj5ucvD1p/BOp7F0 X-Received: by 10.101.80.75 with SMTP id k11mr26851646pgo.451.1517835335509; Mon, 05 Feb 2018 04:55:35 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1517835335; cv=none; d=google.com; s=arc-20160816; b=Zxm8zhIIAkuz/FIthpCpmngYyawpilC+eu3shHqgEBnuYaxYwmefZ4ZG9I6NuKof8Z TQrME6MSVSYvyAXPxz0Zp3YSTED4M31it+Qo0Ym4B9/df9Z23+4T8+8OMZ37hFOQ+rk8 Q+2qdXO4lV31bDX6qVTpu7cQwxYBGWRa5+hXFiqPkd7DutEnXEPAkWGlOw7Fgl0VH/7S yVRNLR3vhuaQNH3n8ARcj/UBsKGdSPcWNU1dl2UHmXc9mP1cOuqYFxA4iLC9CIeyE+Fp K/H3hexF5/Fp3/ia9FuJQ5OJ6VVBTIof+iog7H/+I4NpT71NsIwznTFfSqck/63hVOvk MUvQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature :arc-authentication-results; bh=S0nlfGEeSuxHsSxNWxJai3lBx2fexmMj+MNa78gzUsk=; b=dxo3TCAmEcvJyQ3hQ6k+s7uUiwF4b6QZSceO0grCG2iXCvI46GvqqTkjNgFUhVjO3K sbdbI9TgiINImvYt2Ct7bvjgT+rW70Hfof5q9dEp32lBCEdL8dBYmAEb1r0f/qrdSBCH 31YQ4CbI8NMOk/eKe18ADS1dfDAUxOv3j4HyveZqS6ymqSZXWHMJrQv+Sbzs3jhrS3op qN2qIHPr91j1wqHnC3rAQ1QsF313LDGPtANNA0WUIWqnbPW3gjnGRLlFdXdlneT2j6xT CO0EkD8jW/hP9L4jAhp42PW64spdZvWkSaf7S43ioJ0Ubob3omNzOmrEc587dLvWQf32 9z7g== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@ti.com header.s=ti-com-17Q1 header.b=FFyAtT9M; spf=pass (google.com: best guess record for domain of linux-omap-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-omap-owner@vger.kernel.org; dmarc=fail (p=QUARANTINE sp=NONE dis=QUARANTINE) header.from=ti.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 3-v6si6864337pll.204.2018.02.05.04.55.35; Mon, 05 Feb 2018 04:55:35 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-omap-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@ti.com header.s=ti-com-17Q1 header.b=FFyAtT9M; spf=pass (google.com: best guess record for domain of linux-omap-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-omap-owner@vger.kernel.org; dmarc=fail (p=QUARANTINE sp=NONE dis=QUARANTINE) header.from=ti.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753160AbeBEMzc (ORCPT + 5 others); Mon, 5 Feb 2018 07:55:32 -0500 Received: from fllnx210.ext.ti.com ([198.47.19.17]:11955 "EHLO fllnx210.ext.ti.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752782AbeBEMvZ (ORCPT ); Mon, 5 Feb 2018 07:51:25 -0500 Received: from dflxv15.itg.ti.com ([128.247.5.124]) by fllnx210.ext.ti.com (8.15.1/8.15.1) with ESMTP id w15CoeeC023455; Mon, 5 Feb 2018 06:50:40 -0600 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ti.com; s=ti-com-17Q1; t=1517835040; bh=nSsqK2OQnsA4CATLxi/TuU7D0FFhy37Ah5eCE4Rzms8=; h=From:To:CC:Subject:Date; b=FFyAtT9MvXhGz43UgCGFNaQFXEJpkSIOX+CGkQBXc9ccVDgvXg0hgYnOa832w81pw rLVZ0fsM2q0kbWfDkc8Y/s/sxhqdI7WT4fh7p1XeHFagHUv5MSPFJocL2kY+nLI4tp TW8GKDmhJjo3fJa8Kfdmu0GespaRF1Y8HHKpm010= Received: from DFLE103.ent.ti.com (dfle103.ent.ti.com [10.64.6.24]) by dflxv15.itg.ti.com (8.14.3/8.13.8) with ESMTP id w15CoeVs006591; Mon, 5 Feb 2018 06:50:40 -0600 Received: from DFLE102.ent.ti.com (10.64.6.23) by DFLE103.ent.ti.com (10.64.6.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1261.35; Mon, 5 Feb 2018 06:50:40 -0600 Received: from dlep32.itg.ti.com (157.170.170.100) by DFLE102.ent.ti.com (10.64.6.23) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.1.1261.35 via Frontend Transport; Mon, 5 Feb 2018 06:50:40 -0600 Received: from a0393678ub.india.ti.com (ileax41-snat.itg.ti.com [10.172.224.153]) by dlep32.itg.ti.com (8.14.3/8.13.8) with ESMTP id w15CoaGV023963; Mon, 5 Feb 2018 06:50:37 -0600 From: Kishon Vijay Abraham I To: Ulf Hansson , Tony Lindgren , Adrian Hunter CC: Rob Herring , Mark Rutland , Russell King , Kishon Vijay Abraham I , , , , , Subject: [PATCH v2 00/16] mmc: sdhci-omap: Add UHS/HS200 mode support Date: Mon, 5 Feb 2018 18:20:13 +0530 Message-ID: <20180205125029.21570-1-kishon@ti.com> X-Mailer: git-send-email 2.11.0 MIME-Version: 1.0 X-EXCLAIMER-MD-CONFIG: e1e8a2fd-e40a-4ac6-ac9b-f7e9cc9ee180 Sender: linux-omap-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-omap@vger.kernel.org Add UHS/HS200 mode support in sdhci-omap. The programming sequence for voltage switching, tuning is followed from AM572x TRM http://www.ti.com/lit/ug/spruhz6i/spruhz6i.pdf (Similar to all AM57x/DRA7x SoCs). The patch series also implements workaround for errata published in http://www.ti.com/lit/er/sprz429k/sprz429k.pdf. It also includes a pdata-quirk patch since both pdata-quirks and sdhci-omap uses struct sdhci_omap_platform_data. The dt patches enabling UHS/HS200 will follow this series. Changes from v1: *) Only poll on DAT0 and DATI for card_busy status *) Cleanup iodelay patch as suggested by Tony. *) Added quirk to disable HW timeout *) Use the existing data timer but program a relatively accurate SW timeout value (Impacts all platforms) *) Fix a bug in sdhci which was using data_timer for non data line commands I've tested on dra72-evm, dra7xx-evm, dra71-evm, am572x-idk, am571x-idk dra76-evm, am57xx-evm and k2g-evm. I've also pushed the series (along with dt) to https://github.com/kishon/linux-wip.git sdhci_uhs_v2 Kishon Vijay Abraham I (16): mmc: sdhci-omap: Update 'power_mode' outside sdhci_omap_init_74_clocks mmc: sdhci-omap: Add card_busy host ops mmc: sdhci-omap: Add custom set_uhs_signaling sdhci_host ops mmc: sdhci-omap: Add tuning support mmc: sdhci-omap: Workaround for Errata i802 mmc: sdhci_omap: Add support to set IODELAY values mmc: sdhci_omap: Fix sdhci-omap quirks mmc: sdhci-omap: Add support to override f_max and iodelay from pdata mmc: sdhci: Add quirk to disable HW timeout mmc: sdhci: Fix to use data_timer only for data line commands mmc: sdhci: Program a relatively accurate SW timeout value mmc: sdhci-omap: Workaround for Errata i834 dt-bindings: sdhci-omap: Add K2G specific binding mmc: sdhci-omap: Add support for MMC/SD controller in k2g SoC mmc: sdhci-omap: Add SPDX identifier ARM: OMAP2+: Use sdhci-omap specific pdata-quirks for MMC/SD on DRA74x EVM .../devicetree/bindings/mmc/sdhci-omap.txt | 2 + arch/arm/mach-omap2/pdata-quirks.c | 34 +- drivers/mmc/host/sdhci-omap.c | 430 +++++++++++++++++++-- drivers/mmc/host/sdhci.c | 62 ++- drivers/mmc/host/sdhci.h | 17 + include/linux/platform_data/sdhci-omap.h | 22 ++ 6 files changed, 518 insertions(+), 49 deletions(-) create mode 100644 include/linux/platform_data/sdhci-omap.h -- 2.11.0 -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html