public inbox for linux-mmc@vger.kernel.org
 help / color / mirror / Atom feed
* mmc_test Correct xfer_size at write
@ 2011-06-28 10:35 James Hogan
  0 siblings, 0 replies; 4+ messages in thread
From: James Hogan @ 2011-06-28 10:35 UTC (permalink / raw)
  To: Pierre Ossman, linux-mmc

Hi,

I'm trying to figure out why the broken write transfer tests in mmc_test
require the result to be -ETIMEDOUT, so that I can make dw_mmc pass
these tests. Perhaps somebody could explain.

I can understand for reads, that the controller is waiting for the start
bit on the data lines and so it can timeout after a while if it doesn't
see any. However for writes (as far as I can glean from the physical
layer spec and a logic analyser) the data response token which is
normally sent by the card in response to a write transfer is clocked out
immediately after the data so is either there or it isn't.

Have I misunderstood it or is -ETIMEDOUT just the error that is required
by convention when the data response token is not detected?

Thanks

James


^ permalink raw reply	[flat|nested] 4+ messages in thread

* mmc_test Correct xfer_size at write
@ 2011-06-28 10:37 James Hogan
  2011-06-28 16:50 ` Pierre Ossman
  0 siblings, 1 reply; 4+ messages in thread
From: James Hogan @ 2011-06-28 10:37 UTC (permalink / raw)
  To: Pierre Ossman, linux-mmc

Hi,

I'm trying to figure out why the broken write transfer tests in mmc_test
require the result to be -ETIMEDOUT, so that I can make dw_mmc pass
these tests. Perhaps somebody could explain.

I can understand for reads, that the controller is waiting for the start
bit on the data lines and so it can timeout after a while if it doesn't
see any. However for writes (as far as I can glean from the physical
layer spec and a logic analyser) the data response token which is
normally sent by the card in response to a write transfer is clocked out
immediately after the data so is either there or it isn't.

Have I misunderstood it or is -ETIMEDOUT just the error that is required
by convention when the data response token is not detected?

Thanks

James


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: mmc_test Correct xfer_size at write
  2011-06-28 10:37 James Hogan
@ 2011-06-28 16:50 ` Pierre Ossman
  2011-06-29  8:06   ` James Hogan
  0 siblings, 1 reply; 4+ messages in thread
From: Pierre Ossman @ 2011-06-28 16:50 UTC (permalink / raw)
  To: James Hogan; +Cc: linux-mmc

[-- Attachment #1: Type: text/plain, Size: 1449 bytes --]

On Tue, 28 Jun 2011 11:37:25 +0100
James Hogan <james.hogan@imgtec.com> wrote:

> Hi,
> 
> I'm trying to figure out why the broken write transfer tests in mmc_test
> require the result to be -ETIMEDOUT, so that I can make dw_mmc pass
> these tests. Perhaps somebody could explain.
> 
> I can understand for reads, that the controller is waiting for the start
> bit on the data lines and so it can timeout after a while if it doesn't
> see any. However for writes (as far as I can glean from the physical
> layer spec and a logic analyser) the data response token which is
> normally sent by the card in response to a write transfer is clocked out
> immediately after the data so is either there or it isn't.
> 
> Have I misunderstood it or is -ETIMEDOUT just the error that is required
> by convention when the data response token is not detected?
> 

It's more or less by convention. ETIMEDOUT is the closest thing we have
to "we expected a response from the card but got bupkis". You can find
some informal definitions here:

http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=include/linux/mmc/core.h;h=b6718e549a510780e0f8c9a3be17e64753d6c2f5;hb=HEAD#l81

Rgds
-- 
     -- Pierre Ossman

  WARNING: This correspondence is being monitored by FRA, a
  Swedish intelligence agency. Make sure your server uses
  encryption for SMTP traffic and consider using PGP for
  end-to-end encryption.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 230 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: mmc_test Correct xfer_size at write
  2011-06-28 16:50 ` Pierre Ossman
@ 2011-06-29  8:06   ` James Hogan
  0 siblings, 0 replies; 4+ messages in thread
From: James Hogan @ 2011-06-29  8:06 UTC (permalink / raw)
  To: Pierre Ossman; +Cc: linux-mmc

On 06/28/2011 05:50 PM, Pierre Ossman wrote:
> On Tue, 28 Jun 2011 11:37:25 +0100
> James Hogan <james.hogan@imgtec.com> wrote:
> 
>> Hi,
>>
>> I'm trying to figure out why the broken write transfer tests in mmc_test
>> require the result to be -ETIMEDOUT, so that I can make dw_mmc pass
>> these tests. Perhaps somebody could explain.
>>
>> I can understand for reads, that the controller is waiting for the start
>> bit on the data lines and so it can timeout after a while if it doesn't
>> see any. However for writes (as far as I can glean from the physical
>> layer spec and a logic analyser) the data response token which is
>> normally sent by the card in response to a write transfer is clocked out
>> immediately after the data so is either there or it isn't.
>>
>> Have I misunderstood it or is -ETIMEDOUT just the error that is required
>> by convention when the data response token is not detected?
>>
> 
> It's more or less by convention. ETIMEDOUT is the closest thing we have
> to "we expected a response from the card but got bupkis". You can find
> some informal definitions here:
> 
> http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=include/linux/mmc/core.h;h=b6718e549a510780e0f8c9a3be17e64753d6c2f5;hb=HEAD#l81
> 
> Rgds

Thanks for the info Pierre

James


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2011-06-29  8:06 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-06-28 10:35 mmc_test Correct xfer_size at write James Hogan
  -- strict thread matches above, loose matches on Subject: below --
2011-06-28 10:37 James Hogan
2011-06-28 16:50 ` Pierre Ossman
2011-06-29  8:06   ` James Hogan

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox