Re: [U-Boot] [PATCH v2 4/4] mmc: sdhci: add the udelay for completed post-request

2012-08-30 Thread Andy Fleming
On Thu, Jul 26, 2012 at 7:33 PM, Jaehoon Chung jh80.ch...@samsung.com wrote:
 To ensure that complete the request, add udelay(100).
 Also  increased the timeout value to 1.
 (Because timeout value is short, there is the case that didn't transfer data)

 Signed-off-by: Jaehoon Chung jh80.ch...@samsung.com
 ---
  drivers/mmc/sdhci.c |3 ++-
  1 files changed, 2 insertions(+), 1 deletions(-)

 diff --git a/drivers/mmc/sdhci.c b/drivers/mmc/sdhci.c
 index ac39e48..f71a14b 100644
 --- a/drivers/mmc/sdhci.c
 +++ b/drivers/mmc/sdhci.c
 @@ -83,7 +83,7 @@ static int sdhci_transfer_data(struct sdhci_host *host, 
 struct mmc_data *data,
  {
 unsigned int stat, rdy, mask, timeout, block = 0;

 -   timeout = 1;
 +   timeout = 10;
 rdy = SDHCI_INT_SPACE_AVAIL | SDHCI_INT_DATA_AVAIL;
 mask = SDHCI_DATA_AVAILABLE | SDHCI_SPACE_AVAILABLE;
 do {
 @@ -239,6 +239,7 @@ int sdhci_send_command(struct mmc *mmc, struct mmc_cmd 
 *cmd,
 if ((host-quirks  SDHCI_QUIRK_32BIT_DMA_ADDR) 
 !is_aligned  (data-flags == MMC_DATA_READ))
 memcpy(data-dest, aligned_buffer, trans_bytes);
 +   udelay(100);


These sorts of changes (both the increased timeout, and the udelay)
look very much like attempting to use time to substitute for proper
coherency assurances. What request is this udelay allowing to
finish?

Andy
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH v2 4/4] mmc: sdhci: add the udelay for completed post-request

2012-07-26 Thread Jaehoon Chung
To ensure that complete the request, add udelay(100).
Also  increased the timeout value to 1.
(Because timeout value is short, there is the case that didn't transfer data)

Signed-off-by: Jaehoon Chung jh80.ch...@samsung.com
---
 drivers/mmc/sdhci.c |3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/drivers/mmc/sdhci.c b/drivers/mmc/sdhci.c
index ac39e48..f71a14b 100644
--- a/drivers/mmc/sdhci.c
+++ b/drivers/mmc/sdhci.c
@@ -83,7 +83,7 @@ static int sdhci_transfer_data(struct sdhci_host *host, 
struct mmc_data *data,
 {
unsigned int stat, rdy, mask, timeout, block = 0;
 
-   timeout = 1;
+   timeout = 10;
rdy = SDHCI_INT_SPACE_AVAIL | SDHCI_INT_DATA_AVAIL;
mask = SDHCI_DATA_AVAILABLE | SDHCI_SPACE_AVAILABLE;
do {
@@ -239,6 +239,7 @@ int sdhci_send_command(struct mmc *mmc, struct mmc_cmd *cmd,
if ((host-quirks  SDHCI_QUIRK_32BIT_DMA_ADDR) 
!is_aligned  (data-flags == MMC_DATA_READ))
memcpy(data-dest, aligned_buffer, trans_bytes);
+   udelay(100);
return 0;
}
 
-- 
1.7.4.1
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot