# \[PATCH\] mtd: fsmc\_nand: fix handling of wait\_for\_completion\_timeout result

- From: Nicholas Mc Guire \<hidden\>
- Date: 2014-12-29 11:34:47 
- List: linux-devicetree
- Page: https://ratatoskr.run/linux-devicetree/2014/12/4400780
- Thread: https://ratatoskr.run/linux-devicetree/2014/12/4400780/t.md

```text
wait_for_completion_timeout does not return negative values so
"result" handling here should be simplified to cover the actually
possible cases only.

patch was only compile tested for nhk8815_defconfig

patch is against linux-next 3.19.0-rc1 -next-20141226

Signed-off-by: Nicholas Mc Guire <redacted>
---
 drivers/mtd/nand/fsmc_nand.c |    5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/drivers/mtd/nand/fsmc_nand.c b/drivers/mtd/nand/fsmc_nand.c
index edfaa21..7c0508f 100644
--- a/drivers/mtd/nand/fsmc_nand.c
+++ b/drivers/mtd/nand/fsmc_nand.c
@@ -604,11 +604,10 @@ static int dma_xfer(struct fsmc_nand_data *host, void *buffer, int len,
 	ret =
 	wait_for_completion_timeout(&host->dma_access_complete,
 				msecs_to_jiffies(3000));
-	if (ret <= 0) {
+	if (ret == 0) {
 		dmaengine_terminate_all(chan);
 		dev_err(host->dev, "wait_for_completion_timeout\n");
-		if (!ret)
-			ret = -ETIMEDOUT;
+		ret = -ETIMEDOUT;
 		goto unmap_dma;
 	}
 
-- 
1.7.10.4
```
