diff options
author | Gerrit Code Review <gerrit2@git-master.nvidia.com> | 2010-01-29 05:55:11 +0200 |
---|---|---|
committer | Gerrit Code Review <gerrit2@git-master.nvidia.com> | 2010-01-29 05:55:11 +0200 |
commit | 77fdc251c3d85a8dc956d2b67180c86fb12b8d1e (patch) | |
tree | ba17a8f22f342928f84d81655d939811065c7838 /arch/arm | |
parent | be2a66ed904211824cb577674ad531dbb557defb (diff) | |
parent | d380392a01015b6ee863e56e9a56f9a734fbea86 (diff) |
Merge change Ic82f1749 into android-tegra-2.6.29
* changes:
tegra: Fix buges in DMA mode for high speed UART trasmit.
Diffstat (limited to 'arch/arm')
-rw-r--r-- | arch/arm/mach-tegra/dma.c | 10 | ||||
-rw-r--r-- | arch/arm/mach-tegra/include/mach/dma.h | 1 |
2 files changed, 6 insertions, 5 deletions
diff --git a/arch/arm/mach-tegra/dma.c b/arch/arm/mach-tegra/dma.c index bbd3691240ea..aae36b30664d 100644 --- a/arch/arm/mach-tegra/dma.c +++ b/arch/arm/mach-tegra/dma.c @@ -506,11 +506,11 @@ static void handle_oneshot_dma(struct tegra_dma_channel *ch) list_del(&req->list); req->bytes_transferred = bytes_transferred; - req->status = 0; + req->status = TEGRA_DMA_REQ_SUCCESS; spin_unlock(&ch->lock); /* Callback should be called without any lock */ - req->complete(req, 0); + req->complete(req, TEGRA_DMA_REQ_SUCCESS); spin_lock(&ch->lock); } @@ -547,7 +547,7 @@ static void handle_continuous_dma(struct tegra_dma_channel *ch) req->buffer_status = TEGRA_DMA_REQ_BUF_STATUS_HALF_FULL; /* DMA lock is NOT held when callbak is called */ spin_unlock(&ch->lock); - req->threshold(req, 0); + req->threshold(req, TEGRA_DMA_REQ_SUCCESS); return; } else if (req->buffer_status == @@ -563,12 +563,12 @@ static void handle_continuous_dma(struct tegra_dma_channel *ch) req->buffer_status = TEGRA_DMA_REQ_BUF_STATUS_FULL; req->bytes_transferred = bytes_transferred; - req->status = 0; + req->status = TEGRA_DMA_REQ_SUCCESS; list_del(&req->list); /* DMA lock is NOT held when callbak is called */ spin_unlock(&ch->lock); - req->complete(req, 0); + req->complete(req, TEGRA_DMA_REQ_SUCCESS); return; } else { diff --git a/arch/arm/mach-tegra/include/mach/dma.h b/arch/arm/mach-tegra/include/mach/dma.h index 508e2fcf8409..0b79861edfd2 100644 --- a/arch/arm/mach-tegra/include/mach/dma.h +++ b/arch/arm/mach-tegra/include/mach/dma.h @@ -31,6 +31,7 @@ enum tegra_dma_mode { }; enum tegra_dma_req_error { + TEGRA_DMA_REQ_SUCCESS = 0, TEGRA_DMA_REQ_ERROR_ABOTRED, }; |