diff options
author | Manuel Lauss <manuel.lauss@gmail.com> | 2014-07-23 10:36:26 -0400 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2014-07-30 07:56:34 -0400 |
commit | 2f73bfbe0873452f4cd388ec2f67f8226fe93f79 (patch) | |
tree | 9070345314cad7ea65779636fce34284b4cd3637 /arch | |
parent | 9cf12167e909a86fbc4b39cf4cffef4cba40f1b3 (diff) |
MIPS: Alchemy: remove au_read/write/sync
replace au_read/write/sync with __raw_read/write and wmb.
Signed-off-by: Manuel Lauss <manuel.lauss@gmail.com>
Cc: Linux-MIPS <linux-mips@linux-mips.org>
Patchwork: https://patchwork.linux-mips.org/patch/7465/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/mips/alchemy/common/dbdma.c | 22 | ||||
-rw-r--r-- | arch/mips/alchemy/common/dma.c | 15 | ||||
-rw-r--r-- | arch/mips/include/asm/mach-au1x00/au1000.h | 48 | ||||
-rw-r--r-- | arch/mips/include/asm/mach-au1x00/au1000_dma.h | 50 |
4 files changed, 44 insertions, 91 deletions
diff --git a/arch/mips/alchemy/common/dbdma.c b/arch/mips/alchemy/common/dbdma.c index 19d5642c16d9..745695db5ba0 100644 --- a/arch/mips/alchemy/common/dbdma.c +++ b/arch/mips/alchemy/common/dbdma.c | |||
@@ -341,7 +341,7 @@ u32 au1xxx_dbdma_chan_alloc(u32 srcid, u32 destid, | |||
341 | (dtp->dev_flags & DEV_FLAGS_SYNC)) | 341 | (dtp->dev_flags & DEV_FLAGS_SYNC)) |
342 | i |= DDMA_CFG_SYNC; | 342 | i |= DDMA_CFG_SYNC; |
343 | cp->ddma_cfg = i; | 343 | cp->ddma_cfg = i; |
344 | au_sync(); | 344 | wmb(); /* drain writebuffer */ |
345 | 345 | ||
346 | /* | 346 | /* |
347 | * Return a non-zero value that can be used to find the channel | 347 | * Return a non-zero value that can be used to find the channel |
@@ -631,7 +631,7 @@ u32 au1xxx_dbdma_put_source(u32 chanid, dma_addr_t buf, int nbytes, u32 flags) | |||
631 | */ | 631 | */ |
632 | dma_cache_wback_inv((unsigned long)buf, nbytes); | 632 | dma_cache_wback_inv((unsigned long)buf, nbytes); |
633 | dp->dscr_cmd0 |= DSCR_CMD0_V; /* Let it rip */ | 633 | dp->dscr_cmd0 |= DSCR_CMD0_V; /* Let it rip */ |
634 | au_sync(); | 634 | wmb(); /* drain writebuffer */ |
635 | dma_cache_wback_inv((unsigned long)dp, sizeof(*dp)); | 635 | dma_cache_wback_inv((unsigned long)dp, sizeof(*dp)); |
636 | ctp->chan_ptr->ddma_dbell = 0; | 636 | ctp->chan_ptr->ddma_dbell = 0; |
637 | 637 | ||
@@ -693,7 +693,7 @@ u32 au1xxx_dbdma_put_dest(u32 chanid, dma_addr_t buf, int nbytes, u32 flags) | |||
693 | */ | 693 | */ |
694 | dma_cache_inv((unsigned long)buf, nbytes); | 694 | dma_cache_inv((unsigned long)buf, nbytes); |
695 | dp->dscr_cmd0 |= DSCR_CMD0_V; /* Let it rip */ | 695 | dp->dscr_cmd0 |= DSCR_CMD0_V; /* Let it rip */ |
696 | au_sync(); | 696 | wmb(); /* drain writebuffer */ |
697 | dma_cache_wback_inv((unsigned long)dp, sizeof(*dp)); | 697 | dma_cache_wback_inv((unsigned long)dp, sizeof(*dp)); |
698 | ctp->chan_ptr->ddma_dbell = 0; | 698 | ctp->chan_ptr->ddma_dbell = 0; |
699 | 699 | ||
@@ -760,7 +760,7 @@ void au1xxx_dbdma_stop(u32 chanid) | |||
760 | 760 | ||
761 | cp = ctp->chan_ptr; | 761 | cp = ctp->chan_ptr; |
762 | cp->ddma_cfg &= ~DDMA_CFG_EN; /* Disable channel */ | 762 | cp->ddma_cfg &= ~DDMA_CFG_EN; /* Disable channel */ |
763 | au_sync(); | 763 | wmb(); /* drain writebuffer */ |
764 | while (!(cp->ddma_stat & DDMA_STAT_H)) { | 764 | while (!(cp->ddma_stat & DDMA_STAT_H)) { |
765 | udelay(1); | 765 | udelay(1); |
766 | halt_timeout++; | 766 | halt_timeout++; |
@@ -771,7 +771,7 @@ void au1xxx_dbdma_stop(u32 chanid) | |||
771 | } | 771 | } |
772 | /* clear current desc valid and doorbell */ | 772 | /* clear current desc valid and doorbell */ |
773 | cp->ddma_stat |= (DDMA_STAT_DB | DDMA_STAT_V); | 773 | cp->ddma_stat |= (DDMA_STAT_DB | DDMA_STAT_V); |
774 | au_sync(); | 774 | wmb(); /* drain writebuffer */ |
775 | } | 775 | } |
776 | EXPORT_SYMBOL(au1xxx_dbdma_stop); | 776 | EXPORT_SYMBOL(au1xxx_dbdma_stop); |
777 | 777 | ||
@@ -789,9 +789,9 @@ void au1xxx_dbdma_start(u32 chanid) | |||
789 | cp = ctp->chan_ptr; | 789 | cp = ctp->chan_ptr; |
790 | cp->ddma_desptr = virt_to_phys(ctp->cur_ptr); | 790 | cp->ddma_desptr = virt_to_phys(ctp->cur_ptr); |
791 | cp->ddma_cfg |= DDMA_CFG_EN; /* Enable channel */ | 791 | cp->ddma_cfg |= DDMA_CFG_EN; /* Enable channel */ |
792 | au_sync(); | 792 | wmb(); /* drain writebuffer */ |
793 | cp->ddma_dbell = 0; | 793 | cp->ddma_dbell = 0; |
794 | au_sync(); | 794 | wmb(); /* drain writebuffer */ |
795 | } | 795 | } |
796 | EXPORT_SYMBOL(au1xxx_dbdma_start); | 796 | EXPORT_SYMBOL(au1xxx_dbdma_start); |
797 | 797 | ||
@@ -832,7 +832,7 @@ u32 au1xxx_get_dma_residue(u32 chanid) | |||
832 | 832 | ||
833 | /* This is only valid if the channel is stopped. */ | 833 | /* This is only valid if the channel is stopped. */ |
834 | rv = cp->ddma_bytecnt; | 834 | rv = cp->ddma_bytecnt; |
835 | au_sync(); | 835 | wmb(); /* drain writebuffer */ |
836 | 836 | ||
837 | return rv; | 837 | return rv; |
838 | } | 838 | } |
@@ -868,7 +868,7 @@ static irqreturn_t dbdma_interrupt(int irq, void *dev_id) | |||
868 | au1x_dma_chan_t *cp; | 868 | au1x_dma_chan_t *cp; |
869 | 869 | ||
870 | intstat = dbdma_gptr->ddma_intstat; | 870 | intstat = dbdma_gptr->ddma_intstat; |
871 | au_sync(); | 871 | wmb(); /* drain writebuffer */ |
872 | chan_index = __ffs(intstat); | 872 | chan_index = __ffs(intstat); |
873 | 873 | ||
874 | ctp = chan_tab_ptr[chan_index]; | 874 | ctp = chan_tab_ptr[chan_index]; |
@@ -877,7 +877,7 @@ static irqreturn_t dbdma_interrupt(int irq, void *dev_id) | |||
877 | 877 | ||
878 | /* Reset interrupt. */ | 878 | /* Reset interrupt. */ |
879 | cp->ddma_irq = 0; | 879 | cp->ddma_irq = 0; |
880 | au_sync(); | 880 | wmb(); /* drain writebuffer */ |
881 | 881 | ||
882 | if (ctp->chan_callback) | 882 | if (ctp->chan_callback) |
883 | ctp->chan_callback(irq, ctp->chan_callparam); | 883 | ctp->chan_callback(irq, ctp->chan_callparam); |
@@ -1061,7 +1061,7 @@ static int __init dbdma_setup(unsigned int irq, dbdev_tab_t *idtable) | |||
1061 | dbdma_gptr->ddma_config = 0; | 1061 | dbdma_gptr->ddma_config = 0; |
1062 | dbdma_gptr->ddma_throttle = 0; | 1062 | dbdma_gptr->ddma_throttle = 0; |
1063 | dbdma_gptr->ddma_inten = 0xffff; | 1063 | dbdma_gptr->ddma_inten = 0xffff; |
1064 | au_sync(); | 1064 | wmb(); /* drain writebuffer */ |
1065 | 1065 | ||
1066 | ret = request_irq(irq, dbdma_interrupt, 0, "dbdma", (void *)dbdma_gptr); | 1066 | ret = request_irq(irq, dbdma_interrupt, 0, "dbdma", (void *)dbdma_gptr); |
1067 | if (ret) | 1067 | if (ret) |
diff --git a/arch/mips/alchemy/common/dma.c b/arch/mips/alchemy/common/dma.c index 9b624e2c0fcf..4fb6207b883b 100644 --- a/arch/mips/alchemy/common/dma.c +++ b/arch/mips/alchemy/common/dma.c | |||
@@ -141,17 +141,17 @@ void dump_au1000_dma_channel(unsigned int dmanr) | |||
141 | 141 | ||
142 | printk(KERN_INFO "Au1000 DMA%d Register Dump:\n", dmanr); | 142 | printk(KERN_INFO "Au1000 DMA%d Register Dump:\n", dmanr); |
143 | printk(KERN_INFO " mode = 0x%08x\n", | 143 | printk(KERN_INFO " mode = 0x%08x\n", |
144 | au_readl(chan->io + DMA_MODE_SET)); | 144 | __raw_readl(chan->io + DMA_MODE_SET)); |
145 | printk(KERN_INFO " addr = 0x%08x\n", | 145 | printk(KERN_INFO " addr = 0x%08x\n", |
146 | au_readl(chan->io + DMA_PERIPHERAL_ADDR)); | 146 | __raw_readl(chan->io + DMA_PERIPHERAL_ADDR)); |
147 | printk(KERN_INFO " start0 = 0x%08x\n", | 147 | printk(KERN_INFO " start0 = 0x%08x\n", |
148 | au_readl(chan->io + DMA_BUFFER0_START)); | 148 | __raw_readl(chan->io + DMA_BUFFER0_START)); |
149 | printk(KERN_INFO " start1 = 0x%08x\n", | 149 | printk(KERN_INFO " start1 = 0x%08x\n", |
150 | au_readl(chan->io + DMA_BUFFER1_START)); | 150 | __raw_readl(chan->io + DMA_BUFFER1_START)); |
151 | printk(KERN_INFO " count0 = 0x%08x\n", | 151 | printk(KERN_INFO " count0 = 0x%08x\n", |
152 | au_readl(chan->io + DMA_BUFFER0_COUNT)); | 152 | __raw_readl(chan->io + DMA_BUFFER0_COUNT)); |
153 | printk(KERN_INFO " count1 = 0x%08x\n", | 153 | printk(KERN_INFO " count1 = 0x%08x\n", |
154 | au_readl(chan->io + DMA_BUFFER1_COUNT)); | 154 | __raw_readl(chan->io + DMA_BUFFER1_COUNT)); |
155 | } | 155 | } |
156 | 156 | ||
157 | /* | 157 | /* |
@@ -204,7 +204,8 @@ int request_au1000_dma(int dev_id, const char *dev_str, | |||
204 | } | 204 | } |
205 | 205 | ||
206 | /* fill it in */ | 206 | /* fill it in */ |
207 | chan->io = KSEG1ADDR(AU1000_DMA_PHYS_ADDR) + i * DMA_CHANNEL_LEN; | 207 | chan->io = (void __iomem *)(KSEG1ADDR(AU1000_DMA_PHYS_ADDR) + |
208 | i * DMA_CHANNEL_LEN); | ||
208 | chan->dev_id = dev_id; | 209 | chan->dev_id = dev_id; |
209 | chan->dev_str = dev_str; | 210 | chan->dev_str = dev_str; |
210 | chan->fifo_addr = dev->fifo_addr; | 211 | chan->fifo_addr = dev->fifo_addr; |
diff --git a/arch/mips/include/asm/mach-au1x00/au1000.h b/arch/mips/include/asm/mach-au1x00/au1000.h index d664b11e0baf..754207071b58 100644 --- a/arch/mips/include/asm/mach-au1x00/au1000.h +++ b/arch/mips/include/asm/mach-au1x00/au1000.h | |||
@@ -645,54 +645,6 @@ | |||
645 | 645 | ||
646 | #include <asm/cpu.h> | 646 | #include <asm/cpu.h> |
647 | 647 | ||
648 | /* cpu pipeline flush */ | ||
649 | void static inline au_sync(void) | ||
650 | { | ||
651 | __asm__ volatile ("sync"); | ||
652 | } | ||
653 | |||
654 | void static inline au_sync_udelay(int us) | ||
655 | { | ||
656 | __asm__ volatile ("sync"); | ||
657 | udelay(us); | ||
658 | } | ||
659 | |||
660 | void static inline au_sync_delay(int ms) | ||
661 | { | ||
662 | __asm__ volatile ("sync"); | ||
663 | mdelay(ms); | ||
664 | } | ||
665 | |||
666 | void static inline au_writeb(u8 val, unsigned long reg) | ||
667 | { | ||
668 | *(volatile u8 *)reg = val; | ||
669 | } | ||
670 | |||
671 | void static inline au_writew(u16 val, unsigned long reg) | ||
672 | { | ||
673 | *(volatile u16 *)reg = val; | ||
674 | } | ||
675 | |||
676 | void static inline au_writel(u32 val, unsigned long reg) | ||
677 | { | ||
678 | *(volatile u32 *)reg = val; | ||
679 | } | ||
680 | |||
681 | static inline u8 au_readb(unsigned long reg) | ||
682 | { | ||
683 | return *(volatile u8 *)reg; | ||
684 | } | ||
685 | |||
686 | static inline u16 au_readw(unsigned long reg) | ||
687 | { | ||
688 | return *(volatile u16 *)reg; | ||
689 | } | ||
690 | |||
691 | static inline u32 au_readl(unsigned long reg) | ||
692 | { | ||
693 | return *(volatile u32 *)reg; | ||
694 | } | ||
695 | |||
696 | /* helpers to access the SYS_* registers */ | 648 | /* helpers to access the SYS_* registers */ |
697 | static inline unsigned long alchemy_rdsys(int regofs) | 649 | static inline unsigned long alchemy_rdsys(int regofs) |
698 | { | 650 | { |
diff --git a/arch/mips/include/asm/mach-au1x00/au1000_dma.h b/arch/mips/include/asm/mach-au1x00/au1000_dma.h index 7cedca5a305c..0a0cd4270c6f 100644 --- a/arch/mips/include/asm/mach-au1x00/au1000_dma.h +++ b/arch/mips/include/asm/mach-au1x00/au1000_dma.h | |||
@@ -106,7 +106,7 @@ enum { | |||
106 | struct dma_chan { | 106 | struct dma_chan { |
107 | int dev_id; /* this channel is allocated if >= 0, */ | 107 | int dev_id; /* this channel is allocated if >= 0, */ |
108 | /* free otherwise */ | 108 | /* free otherwise */ |
109 | unsigned int io; | 109 | void __iomem *io; |
110 | const char *dev_str; | 110 | const char *dev_str; |
111 | int irq; | 111 | int irq; |
112 | void *irq_dev; | 112 | void *irq_dev; |
@@ -157,7 +157,7 @@ static inline void enable_dma_buffer0(unsigned int dmanr) | |||
157 | 157 | ||
158 | if (!chan) | 158 | if (!chan) |
159 | return; | 159 | return; |
160 | au_writel(DMA_BE0, chan->io + DMA_MODE_SET); | 160 | __raw_writel(DMA_BE0, chan->io + DMA_MODE_SET); |
161 | } | 161 | } |
162 | 162 | ||
163 | static inline void enable_dma_buffer1(unsigned int dmanr) | 163 | static inline void enable_dma_buffer1(unsigned int dmanr) |
@@ -166,7 +166,7 @@ static inline void enable_dma_buffer1(unsigned int dmanr) | |||
166 | 166 | ||
167 | if (!chan) | 167 | if (!chan) |
168 | return; | 168 | return; |
169 | au_writel(DMA_BE1, chan->io + DMA_MODE_SET); | 169 | __raw_writel(DMA_BE1, chan->io + DMA_MODE_SET); |
170 | } | 170 | } |
171 | static inline void enable_dma_buffers(unsigned int dmanr) | 171 | static inline void enable_dma_buffers(unsigned int dmanr) |
172 | { | 172 | { |
@@ -174,7 +174,7 @@ static inline void enable_dma_buffers(unsigned int dmanr) | |||
174 | 174 | ||
175 | if (!chan) | 175 | if (!chan) |
176 | return; | 176 | return; |
177 | au_writel(DMA_BE0 | DMA_BE1, chan->io + DMA_MODE_SET); | 177 | __raw_writel(DMA_BE0 | DMA_BE1, chan->io + DMA_MODE_SET); |
178 | } | 178 | } |
179 | 179 | ||
180 | static inline void start_dma(unsigned int dmanr) | 180 | static inline void start_dma(unsigned int dmanr) |
@@ -183,7 +183,7 @@ static inline void start_dma(unsigned int dmanr) | |||
183 | 183 | ||
184 | if (!chan) | 184 | if (!chan) |
185 | return; | 185 | return; |
186 | au_writel(DMA_GO, chan->io + DMA_MODE_SET); | 186 | __raw_writel(DMA_GO, chan->io + DMA_MODE_SET); |
187 | } | 187 | } |
188 | 188 | ||
189 | #define DMA_HALT_POLL 0x5000 | 189 | #define DMA_HALT_POLL 0x5000 |
@@ -195,11 +195,11 @@ static inline void halt_dma(unsigned int dmanr) | |||
195 | 195 | ||
196 | if (!chan) | 196 | if (!chan) |
197 | return; | 197 | return; |
198 | au_writel(DMA_GO, chan->io + DMA_MODE_CLEAR); | 198 | __raw_writel(DMA_GO, chan->io + DMA_MODE_CLEAR); |
199 | 199 | ||
200 | /* Poll the halt bit */ | 200 | /* Poll the halt bit */ |
201 | for (i = 0; i < DMA_HALT_POLL; i++) | 201 | for (i = 0; i < DMA_HALT_POLL; i++) |
202 | if (au_readl(chan->io + DMA_MODE_READ) & DMA_HALT) | 202 | if (__raw_readl(chan->io + DMA_MODE_READ) & DMA_HALT) |
203 | break; | 203 | break; |
204 | if (i == DMA_HALT_POLL) | 204 | if (i == DMA_HALT_POLL) |
205 | printk(KERN_INFO "halt_dma: HALT poll expired!\n"); | 205 | printk(KERN_INFO "halt_dma: HALT poll expired!\n"); |
@@ -215,7 +215,7 @@ static inline void disable_dma(unsigned int dmanr) | |||
215 | halt_dma(dmanr); | 215 | halt_dma(dmanr); |
216 | 216 | ||
217 | /* Now we can disable the buffers */ | 217 | /* Now we can disable the buffers */ |
218 | au_writel(~DMA_GO, chan->io + DMA_MODE_CLEAR); | 218 | __raw_writel(~DMA_GO, chan->io + DMA_MODE_CLEAR); |
219 | } | 219 | } |
220 | 220 | ||
221 | static inline int dma_halted(unsigned int dmanr) | 221 | static inline int dma_halted(unsigned int dmanr) |
@@ -224,7 +224,7 @@ static inline int dma_halted(unsigned int dmanr) | |||
224 | 224 | ||
225 | if (!chan) | 225 | if (!chan) |
226 | return 1; | 226 | return 1; |
227 | return (au_readl(chan->io + DMA_MODE_READ) & DMA_HALT) ? 1 : 0; | 227 | return (__raw_readl(chan->io + DMA_MODE_READ) & DMA_HALT) ? 1 : 0; |
228 | } | 228 | } |
229 | 229 | ||
230 | /* Initialize a DMA channel. */ | 230 | /* Initialize a DMA channel. */ |
@@ -239,14 +239,14 @@ static inline void init_dma(unsigned int dmanr) | |||
239 | disable_dma(dmanr); | 239 | disable_dma(dmanr); |
240 | 240 | ||
241 | /* Set device FIFO address */ | 241 | /* Set device FIFO address */ |
242 | au_writel(CPHYSADDR(chan->fifo_addr), chan->io + DMA_PERIPHERAL_ADDR); | 242 | __raw_writel(CPHYSADDR(chan->fifo_addr), chan->io + DMA_PERIPHERAL_ADDR); |
243 | 243 | ||
244 | mode = chan->mode | (chan->dev_id << DMA_DID_BIT); | 244 | mode = chan->mode | (chan->dev_id << DMA_DID_BIT); |
245 | if (chan->irq) | 245 | if (chan->irq) |
246 | mode |= DMA_IE; | 246 | mode |= DMA_IE; |
247 | 247 | ||
248 | au_writel(~mode, chan->io + DMA_MODE_CLEAR); | 248 | __raw_writel(~mode, chan->io + DMA_MODE_CLEAR); |
249 | au_writel(mode, chan->io + DMA_MODE_SET); | 249 | __raw_writel(mode, chan->io + DMA_MODE_SET); |
250 | } | 250 | } |
251 | 251 | ||
252 | /* | 252 | /* |
@@ -283,7 +283,7 @@ static inline int get_dma_active_buffer(unsigned int dmanr) | |||
283 | 283 | ||
284 | if (!chan) | 284 | if (!chan) |
285 | return -1; | 285 | return -1; |
286 | return (au_readl(chan->io + DMA_MODE_READ) & DMA_AB) ? 1 : 0; | 286 | return (__raw_readl(chan->io + DMA_MODE_READ) & DMA_AB) ? 1 : 0; |
287 | } | 287 | } |
288 | 288 | ||
289 | /* | 289 | /* |
@@ -304,7 +304,7 @@ static inline void set_dma_fifo_addr(unsigned int dmanr, unsigned int a) | |||
304 | if (chan->dev_id != DMA_ID_GP04 && chan->dev_id != DMA_ID_GP05) | 304 | if (chan->dev_id != DMA_ID_GP04 && chan->dev_id != DMA_ID_GP05) |
305 | return; | 305 | return; |
306 | 306 | ||
307 | au_writel(CPHYSADDR(a), chan->io + DMA_PERIPHERAL_ADDR); | 307 | __raw_writel(CPHYSADDR(a), chan->io + DMA_PERIPHERAL_ADDR); |
308 | } | 308 | } |
309 | 309 | ||
310 | /* | 310 | /* |
@@ -316,7 +316,7 @@ static inline void clear_dma_done0(unsigned int dmanr) | |||
316 | 316 | ||
317 | if (!chan) | 317 | if (!chan) |
318 | return; | 318 | return; |
319 | au_writel(DMA_D0, chan->io + DMA_MODE_CLEAR); | 319 | __raw_writel(DMA_D0, chan->io + DMA_MODE_CLEAR); |
320 | } | 320 | } |
321 | 321 | ||
322 | static inline void clear_dma_done1(unsigned int dmanr) | 322 | static inline void clear_dma_done1(unsigned int dmanr) |
@@ -325,7 +325,7 @@ static inline void clear_dma_done1(unsigned int dmanr) | |||
325 | 325 | ||
326 | if (!chan) | 326 | if (!chan) |
327 | return; | 327 | return; |
328 | au_writel(DMA_D1, chan->io + DMA_MODE_CLEAR); | 328 | __raw_writel(DMA_D1, chan->io + DMA_MODE_CLEAR); |
329 | } | 329 | } |
330 | 330 | ||
331 | /* | 331 | /* |
@@ -344,7 +344,7 @@ static inline void set_dma_addr0(unsigned int dmanr, unsigned int a) | |||
344 | 344 | ||
345 | if (!chan) | 345 | if (!chan) |
346 | return; | 346 | return; |
347 | au_writel(a, chan->io + DMA_BUFFER0_START); | 347 | __raw_writel(a, chan->io + DMA_BUFFER0_START); |
348 | } | 348 | } |
349 | 349 | ||
350 | /* | 350 | /* |
@@ -356,7 +356,7 @@ static inline void set_dma_addr1(unsigned int dmanr, unsigned int a) | |||
356 | 356 | ||
357 | if (!chan) | 357 | if (!chan) |
358 | return; | 358 | return; |
359 | au_writel(a, chan->io + DMA_BUFFER1_START); | 359 | __raw_writel(a, chan->io + DMA_BUFFER1_START); |
360 | } | 360 | } |
361 | 361 | ||
362 | 362 | ||
@@ -370,7 +370,7 @@ static inline void set_dma_count0(unsigned int dmanr, unsigned int count) | |||
370 | if (!chan) | 370 | if (!chan) |
371 | return; | 371 | return; |
372 | count &= DMA_COUNT_MASK; | 372 | count &= DMA_COUNT_MASK; |
373 | au_writel(count, chan->io + DMA_BUFFER0_COUNT); | 373 | __raw_writel(count, chan->io + DMA_BUFFER0_COUNT); |
374 | } | 374 | } |
375 | 375 | ||
376 | /* | 376 | /* |
@@ -383,7 +383,7 @@ static inline void set_dma_count1(unsigned int dmanr, unsigned int count) | |||
383 | if (!chan) | 383 | if (!chan) |
384 | return; | 384 | return; |
385 | count &= DMA_COUNT_MASK; | 385 | count &= DMA_COUNT_MASK; |
386 | au_writel(count, chan->io + DMA_BUFFER1_COUNT); | 386 | __raw_writel(count, chan->io + DMA_BUFFER1_COUNT); |
387 | } | 387 | } |
388 | 388 | ||
389 | /* | 389 | /* |
@@ -396,8 +396,8 @@ static inline void set_dma_count(unsigned int dmanr, unsigned int count) | |||
396 | if (!chan) | 396 | if (!chan) |
397 | return; | 397 | return; |
398 | count &= DMA_COUNT_MASK; | 398 | count &= DMA_COUNT_MASK; |
399 | au_writel(count, chan->io + DMA_BUFFER0_COUNT); | 399 | __raw_writel(count, chan->io + DMA_BUFFER0_COUNT); |
400 | au_writel(count, chan->io + DMA_BUFFER1_COUNT); | 400 | __raw_writel(count, chan->io + DMA_BUFFER1_COUNT); |
401 | } | 401 | } |
402 | 402 | ||
403 | /* | 403 | /* |
@@ -410,7 +410,7 @@ static inline unsigned int get_dma_buffer_done(unsigned int dmanr) | |||
410 | 410 | ||
411 | if (!chan) | 411 | if (!chan) |
412 | return 0; | 412 | return 0; |
413 | return au_readl(chan->io + DMA_MODE_READ) & (DMA_D0 | DMA_D1); | 413 | return __raw_readl(chan->io + DMA_MODE_READ) & (DMA_D0 | DMA_D1); |
414 | } | 414 | } |
415 | 415 | ||
416 | 416 | ||
@@ -437,10 +437,10 @@ static inline int get_dma_residue(unsigned int dmanr) | |||
437 | if (!chan) | 437 | if (!chan) |
438 | return 0; | 438 | return 0; |
439 | 439 | ||
440 | curBufCntReg = (au_readl(chan->io + DMA_MODE_READ) & DMA_AB) ? | 440 | curBufCntReg = (__raw_readl(chan->io + DMA_MODE_READ) & DMA_AB) ? |
441 | DMA_BUFFER1_COUNT : DMA_BUFFER0_COUNT; | 441 | DMA_BUFFER1_COUNT : DMA_BUFFER0_COUNT; |
442 | 442 | ||
443 | count = au_readl(chan->io + curBufCntReg) & DMA_COUNT_MASK; | 443 | count = __raw_readl(chan->io + curBufCntReg) & DMA_COUNT_MASK; |
444 | 444 | ||
445 | if ((chan->mode & DMA_DW_MASK) == DMA_DW16) | 445 | if ((chan->mode & DMA_DW_MASK) == DMA_DW16) |
446 | count <<= 1; | 446 | count <<= 1; |