Re: sdhci-stm performance issues

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



 Hello
The problem was due to the missing both 8BIT and MMC_SPEED supports in
my sdhci driver (comes from the 2.6.32 Kernel series).
I've also added the patch in attachment.

Best Regards
Peppe

On 8/24/2010 5:11 PM, Peppe CAVALLARO wrote:
>
> Hello,
> testing the sdhci-stm.c driver, I sent some weeks ago to the mailing list,
> I'm facing some performance issues.
> For example, when copy a file (e.g. ~10MiB) to the card, I've noticed
> that,
> in the sdhci_prepare_data, the maximum value for data->blocks is 248.
>
> The sdhci-stm driver uses the ADMA and:
>   max_seg_size = 65536,
>   max_hw_segs = 128,
>   max_phys_segs = 128,
>   max_req_size = 524288,
>   max_blk_size = 2048,
>   max_blk_count = 65535.
>
> Using my arasan.c code, I've also sent to this mailing list in July,
> I could see that the data->blocks was bigger than 248 and the
> performances were better.
> Note that this driver used the same mmc_host parameters (max_blk_size
> etc.) reported
> above for the sdhci-stm.
>
> What am I missing?
>
> Welcome advice.
>
> Best Regards,
> Giuseppe
> --
> To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>

From b3427a938ed04febdaa729ca500f266274e06bd2 Mon Sep 17 00:00:00 2001
From: Giuseppe Cavallaro <peppe.cavallaro@xxxxxx>
Date: Tue, 31 Aug 2010 05:43:45 +0200
Subject: [PATCH (sh-2.6.32.y)] sdhci: add MMC_CAP_8_BIT_DATA in the Host capabilities

Signed-off-by: Giuseppe Cavallaro <peppe.cavallaro@xxxxxx>
---
 drivers/mmc/host/sdhci.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c
index 955cad9..1c49326 100644
--- a/drivers/mmc/host/sdhci.c
+++ b/drivers/mmc/host/sdhci.c
@@ -1799,7 +1799,7 @@ int sdhci_add_host(struct sdhci_host *host)
 	mmc->caps = MMC_CAP_SDIO_IRQ;
 
 	if (!(host->quirks & SDHCI_QUIRK_FORCE_1_BIT_DATA))
-		mmc->caps |= MMC_CAP_4_BIT_DATA;
+		mmc->caps |= MMC_CAP_4_BIT_DATA | MMC_CAP_8_BIT_DATA;
 
 	if (caps & SDHCI_CAN_DO_HISPD)
 		mmc->caps |= MMC_CAP_SD_HIGHSPEED;
-- 
1.5.5.6


[Index of Archives]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux