There's no DMA at all, the device type memory attribute can ensure the
operations order and relaxed version imply compiler barrier, so we are safe
to use relaxed version to improve the performance a bit.

Signed-off-by: Jisheng Zhang <jszh...@marvell.com>
Acked-by: Sebastian Hesselbarth <sebastian.hesselba...@gmail.com>
---
 drivers/irqchip/irq-dw-apb-ictl.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/drivers/irqchip/irq-dw-apb-ictl.c 
b/drivers/irqchip/irq-dw-apb-ictl.c
index 31e231e..fcc3385 100644
--- a/drivers/irqchip/irq-dw-apb-ictl.c
+++ b/drivers/irqchip/irq-dw-apb-ictl.c
@@ -94,16 +94,16 @@ static int __init dw_apb_ictl_init(struct device_node *np,
         */
 
        /* mask and enable all interrupts */
-       writel(~0, iobase + APB_INT_MASK_L);
-       writel(~0, iobase + APB_INT_MASK_H);
-       writel(~0, iobase + APB_INT_ENABLE_L);
-       writel(~0, iobase + APB_INT_ENABLE_H);
+       writel_relaxed(~0, iobase + APB_INT_MASK_L);
+       writel_relaxed(~0, iobase + APB_INT_MASK_H);
+       writel_relaxed(~0, iobase + APB_INT_ENABLE_L);
+       writel_relaxed(~0, iobase + APB_INT_ENABLE_H);
 
-       reg = readl(iobase + APB_INT_ENABLE_H);
+       reg = readl_relaxed(iobase + APB_INT_ENABLE_H);
        if (reg)
                nrirqs = 32 + fls(reg);
        else
-               nrirqs = fls(readl(iobase + APB_INT_ENABLE_L));
+               nrirqs = fls(readl_relaxed(iobase + APB_INT_ENABLE_L));
 
        domain = irq_domain_add_linear(np, nrirqs,
                                       &irq_generic_chip_ops, NULL);
-- 
2.1.3

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to