diff options
| -rw-r--r-- | arch/arm/plat-omap/dma.c | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/arch/arm/plat-omap/dma.c b/arch/arm/plat-omap/dma.c index fd3154ae69b1..0eb676d7e807 100644 --- a/arch/arm/plat-omap/dma.c +++ b/arch/arm/plat-omap/dma.c | |||
| @@ -829,10 +829,10 @@ EXPORT_SYMBOL(omap_free_dma); | |||
| 829 | * | 829 | * |
| 830 | * @param arb_rate | 830 | * @param arb_rate |
| 831 | * @param max_fifo_depth | 831 | * @param max_fifo_depth |
| 832 | * @param tparams - Number of thereads to reserve : DMA_THREAD_RESERVE_NORM | 832 | * @param tparams - Number of threads to reserve : DMA_THREAD_RESERVE_NORM |
| 833 | * DMA_THREAD_RESERVE_ONET | 833 | * DMA_THREAD_RESERVE_ONET |
| 834 | * DMA_THREAD_RESERVE_TWOT | 834 | * DMA_THREAD_RESERVE_TWOT |
| 835 | * DMA_THREAD_RESERVE_THREET | 835 | * DMA_THREAD_RESERVE_THREET |
| 836 | */ | 836 | */ |
| 837 | void | 837 | void |
| 838 | omap_dma_set_global_params(int arb_rate, int max_fifo_depth, int tparams) | 838 | omap_dma_set_global_params(int arb_rate, int max_fifo_depth, int tparams) |
| @@ -844,11 +844,14 @@ omap_dma_set_global_params(int arb_rate, int max_fifo_depth, int tparams) | |||
| 844 | return; | 844 | return; |
| 845 | } | 845 | } |
| 846 | 846 | ||
| 847 | if (max_fifo_depth == 0) | ||
| 848 | max_fifo_depth = 1; | ||
| 847 | if (arb_rate == 0) | 849 | if (arb_rate == 0) |
| 848 | arb_rate = 1; | 850 | arb_rate = 1; |
| 849 | 851 | ||
| 850 | reg = (arb_rate & 0xff) << 16; | 852 | reg = 0xff & max_fifo_depth; |
| 851 | reg |= (0xff & max_fifo_depth); | 853 | reg |= (0x3 & tparams) << 12; |
| 854 | reg |= (arb_rate & 0xff) << 16; | ||
| 852 | 855 | ||
| 853 | dma_write(reg, GCR); | 856 | dma_write(reg, GCR); |
| 854 | } | 857 | } |
