From patchwork Mon Jun 2 09:09:23 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Srinivas Kandagatla X-Patchwork-Id: 31267 Return-Path: X-Original-To: linaro@patches.linaro.org Delivered-To: linaro@patches.linaro.org Received: from mail-ve0-f199.google.com (mail-ve0-f199.google.com [209.85.128.199]) by ip-10-151-82-157.ec2.internal (Postfix) with ESMTPS id 451A7203C2 for ; Mon, 2 Jun 2014 09:09:40 +0000 (UTC) Received: by mail-ve0-f199.google.com with SMTP id oz11sf22675396veb.2 for ; Mon, 02 Jun 2014 02:09:40 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:delivered-to:from:to:cc:subject :date:message-id:in-reply-to:references:sender:precedence:list-id :x-original-sender:x-original-authentication-results:mailing-list :list-post:list-help:list-archive:list-unsubscribe; bh=Drqy4Sx1vNmI/6vqphLgzw8izByBUgSCYX0YGKpUzEQ=; b=ad8YIzfxuuKlgkQzIvOqJr1XoTO4SO7pUCPsuljNZ+jW/HACU5yvhjG6JQsCBARWIt O+mizruYPshDdnfRarG7mQK0jjmLALYlliy/R9gYO1Uatf1xmXLlUN1365IPZNNuxhbM RqemyrX1SAw/39+qyLf0cin94vyUYHSqo3xMBFHEkNsdl18ueuVvOWb8ReMFHaNjEw7o dzsZUKnGYWV18Utb0YTHw1mPXOx+k+83Y1FK2lHJXbpJfQtg1UGm5Hp7dAT4GE30VYww A2Aa3ERfvuh8BS9C1BMIcT4S5L6Nnqb8Dlxnw8oz6vfxcogB8lbqaUX4bTp/b7t2wXff zh3w== X-Gm-Message-State: ALoCoQnRWE/aClH7jzO2h+o2Kte19m+Fv21d1GYs8XuvBgr+DtbIXxneuXIM3/eSQguIQ14aPnjw X-Received: by 10.236.55.69 with SMTP id j45mr10928963yhc.49.1401700180033; Mon, 02 Jun 2014 02:09:40 -0700 (PDT) MIME-Version: 1.0 X-BeenThere: patchwork-forward@linaro.org Received: by 10.140.89.104 with SMTP id u95ls1933797qgd.5.gmail; Mon, 02 Jun 2014 02:09:39 -0700 (PDT) X-Received: by 10.52.243.225 with SMTP id xb1mr1899673vdc.36.1401700179942; Mon, 02 Jun 2014 02:09:39 -0700 (PDT) Received: from mail-vc0-f177.google.com (mail-vc0-f177.google.com [209.85.220.177]) by mx.google.com with ESMTPS id q3si7574555vcx.104.2014.06.02.02.09.39 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Mon, 02 Jun 2014 02:09:39 -0700 (PDT) Received-SPF: pass (google.com: domain of patch+caf_=patchwork-forward=linaro.org@linaro.org designates 209.85.220.177 as permitted sender) client-ip=209.85.220.177; Received: by mail-vc0-f177.google.com with SMTP id hy4so1818332vcb.36 for ; Mon, 02 Jun 2014 02:09:39 -0700 (PDT) X-Received: by 10.52.121.19 with SMTP id lg19mr4292vdb.54.1401700179847; Mon, 02 Jun 2014 02:09:39 -0700 (PDT) X-Forwarded-To: patchwork-forward@linaro.org X-Forwarded-For: patch@linaro.org patchwork-forward@linaro.org Delivered-To: patch@linaro.org Received: by 10.220.221.72 with SMTP id ib8csp82657vcb; Mon, 2 Jun 2014 02:09:39 -0700 (PDT) X-Received: by 10.68.254.5 with SMTP id ae5mr38702372pbd.83.1401700178737; Mon, 02 Jun 2014 02:09:38 -0700 (PDT) Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id x3si6115406pas.214.2014.06.02.02.09.38; Mon, 02 Jun 2014 02:09:38 -0700 (PDT) Received-SPF: none (google.com: linux-kernel-owner@vger.kernel.org does not designate permitted sender hosts) client-ip=209.132.180.67; Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753512AbaFBJJd (ORCPT + 28 others); Mon, 2 Jun 2014 05:09:33 -0400 Received: from mail-wi0-f169.google.com ([209.85.212.169]:44489 "EHLO mail-wi0-f169.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753351AbaFBJJ2 (ORCPT ); Mon, 2 Jun 2014 05:09:28 -0400 Received: by mail-wi0-f169.google.com with SMTP id hi2so3963045wib.0 for ; Mon, 02 Jun 2014 02:09:26 -0700 (PDT) X-Received: by 10.180.82.133 with SMTP id i5mr20604580wiy.50.1401700166777; Mon, 02 Jun 2014 02:09:26 -0700 (PDT) Received: from srini-ThinkPad-X1-Carbon-2nd.dlink.com (host-78-149-12-106.as13285.net. [78.149.12.106]) by mx.google.com with ESMTPSA id lo18sm30864492wic.1.2014.06.02.02.09.25 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Mon, 02 Jun 2014 02:09:25 -0700 (PDT) From: srinivas.kandagatla@linaro.org To: Russell King , Ulf Hansson , linux-mmc@vger.kernel.org Cc: Chris Ball , linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org, linus.walleij@linaro.org, Srinivas Kandagatla Subject: [PATCH v6 06/12] mmc: mmci: add 8bit bus support in variant data Date: Mon, 2 Jun 2014 10:09:23 +0100 Message-Id: <1401700163-11670-1-git-send-email-srinivas.kandagatla@linaro.org> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1401699818-11329-1-git-send-email-srinivas.kandagatla@linaro.org> References: <1401699818-11329-1-git-send-email-srinivas.kandagatla@linaro.org> Sender: linux-kernel-owner@vger.kernel.org Precedence: list List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Removed-Original-Auth: Dkim didn't pass. X-Original-Sender: srinivas.kandagatla@linaro.org X-Original-Authentication-Results: mx.google.com; spf=pass (google.com: domain of patch+caf_=patchwork-forward=linaro.org@linaro.org designates 209.85.220.177 as permitted sender) smtp.mail=patch+caf_=patchwork-forward=linaro.org@linaro.org Mailing-list: list patchwork-forward@linaro.org; contact patchwork-forward+owners@linaro.org X-Google-Group-Id: 836684582541 List-Post: , List-Help: , List-Archive: List-Unsubscribe: , From: Srinivas Kandagatla This patch adds 8bit bus enable to variant structure giving more flexibility to the driver to support more SOCs which have different clock register layout. Without this patch other new SOCs like Qcom will have to add more code to special case them. Signed-off-by: Srinivas Kandagatla Reviewed-by: Linus Walleij --- drivers/mmc/host/mmci.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/drivers/mmc/host/mmci.c b/drivers/mmc/host/mmci.c index ad7e538..fa3ad83 100644 --- a/drivers/mmc/host/mmci.c +++ b/drivers/mmc/host/mmci.c @@ -52,6 +52,7 @@ static unsigned int fmax = 515633; * struct variant_data - MMCI variant-specific quirks * @clkreg: default value for MCICLOCK register * @clkreg_enable: enable value for MMCICLOCK register + * @clkreg_8bit_bus_enable: enable value for 8 bit bus * @datalength_bits: number of bits in the MMCIDATALENGTH register * @fifosize: number of bytes that can be written when MMCI_TXFIFOEMPTY * is asserted (likewise for RX) @@ -72,6 +73,7 @@ static unsigned int fmax = 515633; struct variant_data { unsigned int clkreg; unsigned int clkreg_enable; + unsigned int clkreg_8bit_bus_enable; unsigned int datalength_bits; unsigned int fifosize; unsigned int fifohalfsize; @@ -113,6 +115,7 @@ static struct variant_data variant_u300 = { .fifosize = 16 * 4, .fifohalfsize = 8 * 4, .clkreg_enable = MCI_ST_U300_HWFCEN, + .clkreg_8bit_bus_enable = MCI_ST_8BIT_BUS, .datalength_bits = 16, .sdio = true, .pwrreg_powerup = MCI_PWR_ON, @@ -139,6 +142,7 @@ static struct variant_data variant_ux500 = { .fifohalfsize = 8 * 4, .clkreg = MCI_CLK_ENABLE, .clkreg_enable = MCI_ST_UX500_HWFCEN, + .clkreg_8bit_bus_enable = MCI_ST_8BIT_BUS, .datalength_bits = 24, .sdio = true, .st_clkdiv = true, @@ -154,6 +158,7 @@ static struct variant_data variant_ux500v2 = { .fifohalfsize = 8 * 4, .clkreg = MCI_CLK_ENABLE, .clkreg_enable = MCI_ST_UX500_HWFCEN, + .clkreg_8bit_bus_enable = MCI_ST_8BIT_BUS, .datactrl_mask_ddrmode = MCI_ST_DPSM_DDRMODE, .datalength_bits = 24, .sdio = true, @@ -305,7 +310,7 @@ static void mmci_set_clkreg(struct mmci_host *host, unsigned int desired) if (host->mmc->ios.bus_width == MMC_BUS_WIDTH_4) clk |= MCI_4BIT_BUS; if (host->mmc->ios.bus_width == MMC_BUS_WIDTH_8) - clk |= MCI_ST_8BIT_BUS; + clk |= variant->clkreg_8bit_bus_enable; if (host->mmc->ios.timing == MMC_TIMING_UHS_DDR50) clk |= MCI_ST_UX500_NEG_EDGE;