From patchwork Thu Aug 30 08:21:36 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chunyan Zhang X-Patchwork-Id: 10581343 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 888C213AC for ; Thu, 30 Aug 2018 08:21:59 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 78EB62B659 for ; Thu, 30 Aug 2018 08:21:59 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 6CC132B663; Thu, 30 Aug 2018 08:21:59 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.0 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 079922B659 for ; Thu, 30 Aug 2018 08:21:59 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727802AbeH3MWz (ORCPT ); Thu, 30 Aug 2018 08:22:55 -0400 Received: from mail-pf1-f196.google.com ([209.85.210.196]:45132 "EHLO mail-pf1-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727650AbeH3MWz (ORCPT ); Thu, 30 Aug 2018 08:22:55 -0400 Received: by mail-pf1-f196.google.com with SMTP id i26-v6so3536774pfo.12 for ; Thu, 30 Aug 2018 01:21:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id; bh=QWmDPEdLUpyWw5hHCL9ae0thTLkKN/kT21prhaAp1tI=; b=EIRTyWY5uZjfZCI0IlZhpxZOdQkcWVx0Euxcq86o0/YCIQabFXJgQDZtz6GXQT4Xqh AL2KCZPmfUjYuiUnAN2g23cg4Ffkpgf5vvlkc+7XLN1LYVIW+30rNLpMTBXs/GW6BBKE MoN1mHtsdB0TcFJqqqXmBrU2bmUsHP4yA2Ea0= 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=QWmDPEdLUpyWw5hHCL9ae0thTLkKN/kT21prhaAp1tI=; b=PoOKsmcxLgT33sQX9l+To0Ll48Lp+Y616AUViuDRiejdLpxcQub6dinxhliHLxW69D gOcKznz7esDCBez2pb+zx5hgEii9zs6w5/IIRCjwP0esVAjzcWf86foFHGMObkfHMGbq 9YuNF9HoO+2eiJrRL7Y2KsV0ZmxZ1YJ4re7rGywfhnd6Qo/80ZWYwmsKW9XoKrjH/nl4 yl1EhUPVwbgNmMB+JVel++mjymcUUvKciZCebvJ+ldVT6+FRU3rSQqaxQ+SC8bSkqAgZ 0//I8hsFcNJUW28EIkgAYsoYMoDdwfcPFv5NaKyN/vSvkTyjZBVVa2y2lT2nnMMaE39l ucdg== X-Gm-Message-State: APzg51CJXJwrVnWRlP48FYoSanBRrL3yfJmdPXweGrr92Bgwk6FBtK4M Otf37/kSra8ofK9FXIktU0lS6Q== X-Google-Smtp-Source: ANB0VdauBMpDtiVVuzyWcilogTP8zXwJwP0Hrf4K5NrqIBQcKnOpjx/MoKRL4yWgGYIcs5YLF6O5hQ== X-Received: by 2002:a62:cd3:: with SMTP id 80-v6mr9585491pfm.184.1535617317198; Thu, 30 Aug 2018 01:21:57 -0700 (PDT) Received: from ubt.spreadtrum.com ([117.18.48.102]) by smtp.gmail.com with ESMTPSA id j22-v6sm8224885pfh.45.2018.08.30.01.21.52 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Thu, 30 Aug 2018 01:21:56 -0700 (PDT) From: Chunyan Zhang To: Ulf Hansson , Adrian Hunter , Rob Herring Cc: linux-mmc@vger.kernel.org, linux-kernel@vger.kernel.org, Orson Zhai , Baolin Wang , Billows Wu , Jason Wu , Chunyan Zhang , Chunyan Zhang Subject: [PATCH V8 0/9] mmc: add support for sdhci 4.0 Date: Thu, 30 Aug 2018 16:21:36 +0800 Message-Id: <1535617305-16952-1-git-send-email-zhang.chunyan@linaro.org> X-Mailer: git-send-email 2.7.4 Sender: linux-mmc-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-mmc@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP From the SD host controller version 4.0 on, SDHCI implementation either is version 3 compatible or version 4 mode. This patch-set covers those changes which are common for SDHCI 4.0 version, regardless of whether they are used with SD or eMMC storage devices. This patchset also added a new sdhci driver for Spreadtrum's controller which supports v4.0 mode. This patchset has been tested on Spreadtrum's mobile phone, emmc can be initialized, mounted, read and written, with these changes for common sdhci framework and sdhci-sprd driver. Changes from V7: - Added Adrian's acked-by on patch 1-6; - Addressed comments. Previous patch series: v7: https://lkml.org/lkml/2018/8/29/130 v6: http://lkml.org/lkml/2018/8/24/205 v5: https://lkml.org/lkml/2018/8/16/122 v4: https://lkml.org/lkml/2018/7/23/269 v3: https://lkml.org/lkml/2018/7/8/239 v2: https://lkml.org/lkml/2018/6/14/936 v1: https://lkml.org/lkml/2018/6/8/108 Chunyan Zhang (9): mmc: sdhci: Add version V4 definition mmc: sdhci: Add sd host v4 mode mmc: sdhci: Change SDMA address register for v4 mode mmc: sdhci: Add ADMA2 64-bit addressing support for V4 mode mmc: sdhci: Add 32-bit block count support for v4 mode mmc: sdhci: Add Auto CMD Auto Select support mmc: sdhci: SDMA may use Auto-CMD23 in v4 mode mmc: sdhci-sprd: Add Spreadtrum's initial host controller dt-bindings: sdhci-sprd: Add bindings for the sdhci-sprd controller .../devicetree/bindings/mmc/sdhci-sprd.txt | 41 ++ drivers/mmc/host/Kconfig | 13 + drivers/mmc/host/Makefile | 1 + drivers/mmc/host/sdhci-sprd.c | 498 +++++++++++++++++++++ drivers/mmc/host/sdhci.c | 223 +++++++-- drivers/mmc/host/sdhci.h | 28 +- 6 files changed, 754 insertions(+), 50 deletions(-) create mode 100644 Documentation/devicetree/bindings/mmc/sdhci-sprd.txt create mode 100644 drivers/mmc/host/sdhci-sprd.c