diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2012-07-27 18:14:26 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-07-27 18:14:26 -0400 |
commit | cea8f46c36c3f82860b038aa23a46e16757666ba (patch) | |
tree | e09dc37d2b6880d86dac09afbc0c686139d86df0 /drivers/net/irda | |
parent | c1e7179a38919f02dd950801529176b72f5e5a8a (diff) | |
parent | 91b006def384d8f07f9f324ab211fefe2b085c90 (diff) |
Merge branch 'for-linus' of git://git.linaro.org/people/rmk/linux-arm
Pull ARM updates from Russell King:
"First ARM push of this merge window, post me coming back from holiday.
This is what has been in linux-next for the last few weeks. Not much
to say which isn't described by the commit summaries."
* 'for-linus' of git://git.linaro.org/people/rmk/linux-arm: (32 commits)
ARM: 7463/1: topology: Update cpu_power according to DT information
ARM: 7462/1: topology: factorize the update of sibling masks
ARM: 7461/1: topology: Add arch_scale_freq_power function
ARM: 7456/1: ptrace: provide separate functions for tracing syscall {entry,exit}
ARM: 7455/1: audit: move syscall auditing until after ptrace SIGTRAP handling
ARM: 7454/1: entry: don't bother with syscall tracing on ret_from_fork path
ARM: 7453/1: audit: only allow syscall auditing for pure EABI userspace
ARM: 7452/1: delay: allow timer-based delay implementation to be selected
ARM: 7451/1: arch timer: implement read_current_timer and get_cycles
ARM: 7450/1: dcache: select DCACHE_WORD_ACCESS for little-endian ARMv6+ CPUs
ARM: 7449/1: use generic strnlen_user and strncpy_from_user functions
ARM: 7448/1: perf: remove arm_perf_pmu_ids global enumeration
ARM: 7447/1: rwlocks: remove unused branch labels from trylock routines
ARM: 7446/1: spinlock: use ticket algorithm for ARMv6+ locking implementation
ARM: 7445/1: mm: update CONTEXTIDR register to contain PID of current process
ARM: 7444/1: kernel: add arch-timer C3STOP feature
ARM: 7460/1: remove asm/locks.h
ARM: 7439/1: head.S: simplify initial page table mapping
ARM: 7437/1: zImage: Allow DTB command line concatenation with ATAG_CMDLINE
ARM: 7436/1: Do not map the vectors page as write-through on UP systems
...
Diffstat (limited to 'drivers/net/irda')
-rw-r--r-- | drivers/net/irda/pxaficp_ir.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/net/irda/pxaficp_ir.c b/drivers/net/irda/pxaficp_ir.c index ff16daf33ae1..8d5476707912 100644 --- a/drivers/net/irda/pxaficp_ir.c +++ b/drivers/net/irda/pxaficp_ir.c | |||
@@ -289,7 +289,7 @@ static irqreturn_t pxa_irda_sir_irq(int irq, void *dev_id) | |||
289 | } | 289 | } |
290 | lsr = STLSR; | 290 | lsr = STLSR; |
291 | } | 291 | } |
292 | si->last_oscr = OSCR; | 292 | si->last_oscr = readl_relaxed(OSCR); |
293 | break; | 293 | break; |
294 | 294 | ||
295 | case 0x04: /* Received Data Available */ | 295 | case 0x04: /* Received Data Available */ |
@@ -300,7 +300,7 @@ static irqreturn_t pxa_irda_sir_irq(int irq, void *dev_id) | |||
300 | dev->stats.rx_bytes++; | 300 | dev->stats.rx_bytes++; |
301 | async_unwrap_char(dev, &dev->stats, &si->rx_buff, STRBR); | 301 | async_unwrap_char(dev, &dev->stats, &si->rx_buff, STRBR); |
302 | } while (STLSR & LSR_DR); | 302 | } while (STLSR & LSR_DR); |
303 | si->last_oscr = OSCR; | 303 | si->last_oscr = readl_relaxed(OSCR); |
304 | break; | 304 | break; |
305 | 305 | ||
306 | case 0x02: /* Transmit FIFO Data Request */ | 306 | case 0x02: /* Transmit FIFO Data Request */ |
@@ -316,7 +316,7 @@ static irqreturn_t pxa_irda_sir_irq(int irq, void *dev_id) | |||
316 | /* We need to ensure that the transmitter has finished. */ | 316 | /* We need to ensure that the transmitter has finished. */ |
317 | while ((STLSR & LSR_TEMT) == 0) | 317 | while ((STLSR & LSR_TEMT) == 0) |
318 | cpu_relax(); | 318 | cpu_relax(); |
319 | si->last_oscr = OSCR; | 319 | si->last_oscr = readl_relaxed(OSCR); |
320 | 320 | ||
321 | /* | 321 | /* |
322 | * Ok, we've finished transmitting. Now enable | 322 | * Ok, we've finished transmitting. Now enable |
@@ -370,7 +370,7 @@ static void pxa_irda_fir_dma_tx_irq(int channel, void *data) | |||
370 | 370 | ||
371 | while (ICSR1 & ICSR1_TBY) | 371 | while (ICSR1 & ICSR1_TBY) |
372 | cpu_relax(); | 372 | cpu_relax(); |
373 | si->last_oscr = OSCR; | 373 | si->last_oscr = readl_relaxed(OSCR); |
374 | 374 | ||
375 | /* | 375 | /* |
376 | * HACK: It looks like the TBY bit is dropped too soon. | 376 | * HACK: It looks like the TBY bit is dropped too soon. |
@@ -470,7 +470,7 @@ static irqreturn_t pxa_irda_fir_irq(int irq, void *dev_id) | |||
470 | 470 | ||
471 | /* stop RX DMA */ | 471 | /* stop RX DMA */ |
472 | DCSR(si->rxdma) &= ~DCSR_RUN; | 472 | DCSR(si->rxdma) &= ~DCSR_RUN; |
473 | si->last_oscr = OSCR; | 473 | si->last_oscr = readl_relaxed(OSCR); |
474 | icsr0 = ICSR0; | 474 | icsr0 = ICSR0; |
475 | 475 | ||
476 | if (icsr0 & (ICSR0_FRE | ICSR0_RAB)) { | 476 | if (icsr0 & (ICSR0_FRE | ICSR0_RAB)) { |
@@ -546,7 +546,7 @@ static int pxa_irda_hard_xmit(struct sk_buff *skb, struct net_device *dev) | |||
546 | skb_copy_from_linear_data(skb, si->dma_tx_buff, skb->len); | 546 | skb_copy_from_linear_data(skb, si->dma_tx_buff, skb->len); |
547 | 547 | ||
548 | if (mtt) | 548 | if (mtt) |
549 | while ((unsigned)(OSCR - si->last_oscr)/4 < mtt) | 549 | while ((unsigned)(readl_relaxed(OSCR) - si->last_oscr)/4 < mtt) |
550 | cpu_relax(); | 550 | cpu_relax(); |
551 | 551 | ||
552 | /* stop RX DMA, disable FICP */ | 552 | /* stop RX DMA, disable FICP */ |