mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Nishanth Menon <nm@ti.com>
To: "Chikkature Rajashekar, Madhusudhan" <madhu.cr@ti.com>
Cc: "felipe.balbi@nokia.com" <felipe.balbi@nokia.com>,
	"me@felipebalbi.com" <me@felipebalbi.com>,
	"'kishore kadiyala'" <kishorek.kadiyala@gmail.com>,
	"'Vimal Singh'" <vimal.newwork@gmail.com>,
	"tony@atomide.com" <tony@atomide.com>,
	"S, Venkatraman" <svenkatr@ti.com>,
	"linux-omap@vger.kernel.org" <linux-omap@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"'Lavinen Jarkko (Nokia-D/Helsinki)'" <jarkko.lavinen@nokia.com>
Subject: Re: [PATCH v3] OMAP: Fix for bus width which improves SD card's peformance.
Date: Tue, 6 Apr 2010 19:57:32 -0500	[thread overview]
Message-ID: <4BBBD87C.1040307@ti.com> (raw)
In-Reply-To: <00c901cad5e7$9de54350$544ff780@am.dhcp.ti.com>

Chikkature Rajashekar, Madhusudhan had written, on 04/06/2010 07:16 PM, 
the following:
> 
>> -----Original Message-----
>> From: Nishanth Menon [mailto:nm@ti.com]
>> Sent: Tuesday, April 06, 2010 6:39 PM
>> To: Chikkature Rajashekar, Madhusudhan
>> Cc: felipe.balbi@nokia.com; me@felipebalbi.com; 'kishore kadiyala'; 'Vimal
>> Singh'; tony@atomide.com; S, Venkatraman; linux-omap@vger.kernel.org;
>> linux-kernel@vger.kernel.org; 'Lavinen Jarkko (Nokia-D/Helsinki)'
>> Subject: Re: [PATCH v3] OMAP: Fix for bus width which improves SD card's
>> peformance.
>>
>> Chikkature Rajashekar, Madhusudhan had written, on 04/06/2010 06:23 PM,
>> the following:
>>>> -----Original Message-----
>>>> From: Felipe Balbi [mailto:felipe.balbi@nokia.com]
>>>> Sent: Tuesday, April 06, 2010 11:57 AM
>>>> To: ext Nishanth Menon
>>>> Cc: Balbi Felipe (Nokia-D/Helsinki); Chikkature Rajashekar,
>> Madhusudhan;
>>>> me@felipebalbi.com; 'kishore kadiyala'; 'Vimal Singh';
>> tony@atomide.com;
>>>> S, Venkatraman; linux-omap@vger.kernel.org; linux-
>> kernel@vger.kernel.org;
>>>> Lavinen Jarkko (Nokia-D/Helsinki)
>>>> Subject: Re: [PATCH v3] OMAP: Fix for bus width which improves SD
>> card's
>>>> peformance.
>>>>
>>>> On Tue, Apr 06, 2010 at 06:55:03PM +0200, ext Nishanth Menon wrote:
>>>>> some reasons why i love switch statements ;) since I dont expect other
>>>>> than precisely 4 and 8 (do we expect 5,6,7 - i might be wrong).. but
>> if
>>>>> it is so, wont the following be better?
>>>>>
>>>>> switch (mmc_slot(host).wires)
>>>>> {
>>>>> case 8:
>>>>> 	mmc->caps |= MMC_CAP_8_BIT_DATA;
>>>>> 	/* fall thru*/
>>>>> case 4:
>>>>> 	mmc->caps |= MMC_CAP_4_BIT_DATA;
>>>>> 		break;
>>>>> default:
>>>>> 	WARN("bad width");
>>>>> }
>>>> I like that, but I remember Madhu (or someone else) saying he thinks
>>>> it's less readable this way. Go figure...
>>>>
>>> Well, I did not comment on the usage of switch here. Note we only need
>> to
>>> handle 8-bit and 4-bit.The board files need not setup 8-bit or 4-bit if
>> the
>>> configuration of that board is 1-bit. The driver will still work in 1-
>> bit
>>> mode which would mean there is nothing to do in default case and should
>> not
>>> err out.
>> check the attachment out.. hope that takes care of it.. just as a
>> reference alone ofcourse..
> 
> Nope. The default case is wrong. The assumption followed by controller
> drivers is that if the board file says 4-bit or 8-bit set the capabilities
> otherwise don't do any thing. The host will continue to work in 1-bit mode
> which is a must. Your patch violates that (can not design a board without
> connecting one data line at least :))
> 
> Also you can not say 1-bit is non-optimal because the board file dictates
> the configuration based on what it is capable of. Why through a warning?
> It is subjective.
Point noted. try n++:
switch(mmc_slot(host).wires) {
case 8:
         mmc->caps |= MMC_CAP_8_BIT_DATA;
         /* Fall through */
case 4:
         mmc->caps |= MMC_CAP_4_BIT_DATA;
         break;
case 0:
         /* assuming nothing was given by board, use 1 */
case 1:
         /* nothing to crib here */
         break;
default:
         /* Completely unexpected.. try 1 bit instead  */
         dev_crit(mmc_dev(host->mmc), "Invalid width %d"
                         " used! using 1 instead\n",
                         mmc_slot(host).wires);
}

note: we should crib if the board file made a mistake here.. say it gave 
10 wire or so.. I agree that we can recover by stepping back to 1 bit 
mode.. but we gotta tell the log that something aint right..

-- 
Regards,
Nishanth Menon

  reply	other threads:[~2010-04-07  0:57 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-02-11 14:20 [PATCH] " kishore kadiyala
2010-02-11 17:34 ` Madhusudhan
2010-03-31  6:07   ` [PATCH-V2] " kishore kadiyala
2010-03-31  6:27     ` Vimal Singh
2010-03-31  7:03       ` kishore kadiyala
2010-03-31 13:11         ` Jarkko Nikula
2010-03-31 16:37         ` Madhusudhan
2010-04-01  6:31           ` kishore kadiyala
2010-04-01 15:41             ` Madhusudhan
2010-04-05 12:56               ` [PATCH v3] " kishore kadiyala
2010-04-05 16:48                 ` Felipe Balbi
2010-04-05 17:19                   ` Madhusudhan
2010-04-05 17:43                     ` Madhusudhan
2010-04-06  5:00                     ` Felipe Balbi
2010-04-06 16:16                       ` Madhusudhan
2010-04-06 16:32                         ` Felipe Balbi
2010-04-06 16:55                           ` Nishanth Menon
2010-04-06 16:57                             ` Felipe Balbi
2010-04-06 23:23                               ` Madhusudhan
2010-04-06 23:39                                 ` Nishanth Menon
2010-04-07  0:16                                   ` Madhusudhan
2010-04-07  0:57                                     ` Nishanth Menon [this message]
2010-04-08 16:57                                       ` Madhusudhan
2010-04-19 15:36                                         ` [PATCH v4] " kishore kadiyala
2010-04-19 15:51                                           ` kishore kadiyala
2010-04-22  0:26                                             ` Madhusudhan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4BBBD87C.1040307@ti.com \
    --to=nm@ti.com \
    --cc=felipe.balbi@nokia.com \
    --cc=jarkko.lavinen@nokia.com \
    --cc=kishorek.kadiyala@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=madhu.cr@ti.com \
    --cc=me@felipebalbi.com \
    --cc=svenkatr@ti.com \
    --cc=tony@atomide.com \
    --cc=vimal.newwork@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

Powered by JetHome