From patchwork Mon Jun 14 16:10:59 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: kishore kadiyala X-Patchwork-Id: 105979 X-Patchwork-Delegate: tony@atomide.com Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by demeter.kernel.org (8.14.3/8.14.3) with ESMTP id o5EGgLgb010008 for ; Mon, 14 Jun 2010 16:42:21 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754070Ab0FNQmT (ORCPT ); Mon, 14 Jun 2010 12:42:19 -0400 Received: from mail-vw0-f46.google.com ([209.85.212.46]:61992 "EHLO mail-vw0-f46.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752005Ab0FNQmS (ORCPT ); Mon, 14 Jun 2010 12:42:18 -0400 Received: by vws14 with SMTP id 14so869857vws.19 for ; Mon, 14 Jun 2010 09:42:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:in-reply-to :references:date:message-id:subject:from:to:cc:content-type; bh=hfPPglDL1QcgJ2p6YwMncadHi1xladOMcqgENpEeCd0=; b=p1I2r/RzJrxMeMa0XD71V0sQoYnbPXU6ZKks1o0FcxymXdvTY1yOY7rhK+GYSna0Pa S9xSX3QlE1vD+WZP667CZSP+n2tNBLVdjLSv/IQamzEj9qoacqNKK9b8dv/J0+nheBBM IRhIOBAiT0bms30KhEu7sLFjKPyrRsk4Yf8FA= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; b=vkpt9F1RpJ3Sa9Q5XxEf3Tqlukaml58nLmOQLr2zESVhCoHiJ4tfjbZoPv2zNuzUc5 iKQ0iOGorSa4t2Qf4UNmNwPBjFxsb+kNXRxVzIaLWndgABqH0o/m12C2hf2vWeM+2n28 jB5wtLbTDOfSQcJv/jw7AuSWuMZArglSspWtU= MIME-Version: 1.0 Received: by 10.224.80.11 with SMTP id r11mr2295552qak.148.1276531859808; Mon, 14 Jun 2010 09:10:59 -0700 (PDT) Received: by 10.220.159.131 with HTTP; Mon, 14 Jun 2010 09:10:59 -0700 (PDT) In-Reply-To: <008f01cae1b2$6262c970$544ff780@am.dhcp.ti.com> References: <003b01cad0f0$6ea78040$544ff780@am.dhcp.ti.com> <20100406163211.GA29117@nokia.com> <4BBB6767.7010202@ti.com> <20100406165720.GA17916@nokia.com> <00b401cad5e0$1d1868d0$544ff780@am.dhcp.ti.com> <4BBBC628.9030207@ti.com> <00c901cad5e7$9de54350$544ff780@am.dhcp.ti.com> <4BBBD87C.1040307@ti.com> <003601cad73c$98c3aa50$544ff780@am.dhcp.ti.com> <008f01cae1b2$6262c970$544ff780@am.dhcp.ti.com> Date: Mon, 14 Jun 2010 21:40:59 +0530 Message-ID: Subject: [PATCH v5] OMAP: Fix for bus width which improves SD card's peformance. From: kishore kadiyala To: linux-mmc@vger.kernel.org, linux-omap@vger.kernel.org Cc: Madhusudhan , akpm@linux-foundation.org, tony@atomide.com, Nishanth Menon , felipe.balbi@nokia.com, Vimal Singh , "S, Venkatraman" , "Lavinen Jarkko (Nokia-D/Helsinki)" Sender: linux-omap-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-omap@vger.kernel.org X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.2.3 (demeter.kernel.org [140.211.167.41]); Mon, 14 Jun 2010 16:42:21 +0000 (UTC) diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c index b032828..a0c8515 100644 --- a/drivers/mmc/host/omap_hsmmc.c +++ b/drivers/mmc/host/omap_hsmmc.c @@ -2096,10 +2096,23 @@ static int __init omap_hsmmc_probe(struct platform_device *pdev) mmc->caps |= MMC_CAP_MMC_HIGHSPEED | MMC_CAP_SD_HIGHSPEED | MMC_CAP_WAIT_WHILE_BUSY; - if (mmc_slot(host).wires >= 8) + switch (mmc_slot(host).wires) { + case 8: mmc->caps |= MMC_CAP_8_BIT_DATA; - else if (mmc_slot(host).wires >= 4) + /* Fall through */ + case 4: mmc->caps |= MMC_CAP_4_BIT_DATA; + break; + case 1: + /* Nothing to crib here */ + case 0: + /* Assuming nothing was given by board, Core use's 1-Bit */ + break; + default: + /* Completely unexpected.. Core goes with 1-Bit Width */ + dev_crit(mmc_dev(host->mmc), "Invalid width %d\n used!" + "using 1 instead\n", mmc_slot(host).wires); + } if (mmc_slot(host).nonremovable)