summaryrefslogtreecommitdiffstats
path: root/drivers/irqchip
diff options
context:
space:
mode:
authorEric Anholt <eric@anholt.net>2016-04-13 16:28:43 -0400
committerMarc Zyngier <marc.zyngier@arm.com>2016-05-11 05:13:00 -0400
commita1dcbd11d09be1cb357b2f217c0eaa1461128da0 (patch)
tree8246d163344fbe26dca0691602ceeff2d6503733 /drivers/irqchip
parentcb290d827eb0378447095093b4ea712482d31ae8 (diff)
irqchip/bcm2836: Use a more generic memory barrier call
dsb() requires an argument on arm64, so we needed to add "sy". Instead, take this opportunity to switch to the same smp_wmb() call that gic uses for its IPIs. This is a less strong barrier than we were doing before (dmb(ishst) compared to dsb(sy)), but it seems to be the correct one. Signed-off-by: Eric Anholt <eric@anholt.net> Acked-by: Stephen Warren <swarren@wwwdotorg.org> Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Diffstat (limited to 'drivers/irqchip')
-rw-r--r--drivers/irqchip/irq-bcm2836.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/irqchip/irq-bcm2836.c b/drivers/irqchip/irq-bcm2836.c
index f8141bd392c1..72ff1d5c5de6 100644
--- a/drivers/irqchip/irq-bcm2836.c
+++ b/drivers/irqchip/irq-bcm2836.c
@@ -195,7 +195,7 @@ static void bcm2836_arm_irqchip_send_ipi(const struct cpumask *mask,
195 * Ensure that stores to normal memory are visible to the 195 * Ensure that stores to normal memory are visible to the
196 * other CPUs before issuing the IPI. 196 * other CPUs before issuing the IPI.
197 */ 197 */
198 dsb(); 198 smp_wmb();
199 199
200 for_each_cpu(cpu, mask) { 200 for_each_cpu(cpu, mask) {
201 writel(1 << ipi, mailbox0_base + 16 * cpu); 201 writel(1 << ipi, mailbox0_base + 16 * cpu);