lkml.org 
[lkml]   [2009]   [Mar]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 5/7] mmc_spi: allow higher timeouts for SPI mode
On Wed, 11 Mar 2009 14:28:39 +0100
Wolfgang Mües <wolfgang.mues@auerswald.de> wrote:

> From: Wolfgang Muees <wolfgang.mues@auerswald.de>
>
> o Some SD cards have very high timeouts in SPI mode.
> So adjust the timeouts from theory to practice.
>
> Signed-off-by: Wolfgang Muees <wolfgang.mues@auerswald.de>
>
> ---
> This is one of a line of patches to enhance the usability of
> the mmc spi host port driver from "don't work with most SD cards"
> to "work with nearly all SD cards" (including those ugly cards
> with non-byte-aligned responses).
>
> diff -uprN 2_6_29_rc7_patch4_no_crc_on_CID_CSD/drivers/mmc/core/core.c 2_6_29_rc7_patch5_extra_spi_timeouts/drivers/mmc/core/core.c
> --- 2_6_29_rc7_patch4_no_crc_on_CID_CSD/drivers/mmc/core/core.c 2009-03-04 02:05:22.000000000 +0100
> +++ 2_6_29_rc7_patch5_extra_spi_timeouts/drivers/mmc/core/core.c 2009-03-10 12:06:16.000000000 +0100
> @@ -297,6 +297,21 @@ void mmc_set_data_timeout(struct mmc_dat
> data->timeout_clks = 0;
> }
> }
> + /*
> + * Some cards need very high timeouts if driven in SPI mode.
> + * The worst observed timeout was 900ms after writing a
> + * continuous stream of data until the internal logic
> + * overflowed.
> + */
> + if (mmc_host_is_spi(card->host)) {
> + if (data->flags & MMC_DATA_WRITE) {
> + if (data->timeout_ns < 1000000000)
> + data->timeout_ns = 1000000000; /* 1s */
> + } else {
> + if (data->timeout_ns < 100000000)
> + data->timeout_ns = 100000000; /* 100ms */
> + }
> + }
> }
> EXPORT_SYMBOL(mmc_set_data_timeout);
>

In the future, there are macros called NSEC_PER_SEC and similar that
can be used to increase readability instead of the comments.

Rgds
--
-- Pierre Ossman

WARNING: This correspondence is being monitored by the
Swedish government. Make sure your server uses encryption
for SMTP traffic and consider using PGP for end-to-end
encryption.
[unhandled content-type:application/pgp-signature]
\
 
 \ /
  Last update: 2009-03-15 12:31    [from the cache]
©2003-2011 Jasper Spaans