From: Paul Mundt Date: Mon, 8 Feb 2010 02:34:03 +0000 (+0900) Subject: Merge branch 'sh/dmaengine' X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=2e18e047981ae04be9bd0d9760057f7c1a7b3785;p=deliverable%2Flinux.git Merge branch 'sh/dmaengine' Conflicts: arch/sh/drivers/dma/dma-sh.c --- 2e18e047981ae04be9bd0d9760057f7c1a7b3785 diff --cc arch/sh/drivers/dma/dma-sh.c index 565cc1a4cbba,31830cb0af89..827208781ed5 --- a/arch/sh/drivers/dma/dma-sh.c +++ b/arch/sh/drivers/dma/dma-sh.c @@@ -52,11 -52,14 +52,14 @@@ static inline unsigned int get_dmte_irq * * iterations to complete the transfer. */ + static unsigned int ts_shift[] = TS_SHIFT; static inline unsigned int calc_xmit_shift(struct dma_channel *chan) { - u32 chcr = ctrl_inl(dma_base_addr[chan->chan] + CHCR); + u32 chcr = __raw_readl(dma_base_addr[chan->chan] + CHCR); + int cnt = ((chcr & CHCR_TS_LOW_MASK) >> CHCR_TS_LOW_SHIFT) | + ((chcr & CHCR_TS_HIGH_MASK) >> CHCR_TS_HIGH_SHIFT); - return ts_shift[(chcr & CHCR_TS_MASK)>>CHCR_TS_SHIFT]; + return ts_shift[cnt]; } /*