[PATCH 06/13] ARM: at91: PIT: make IO endian agnostic

Ben Dooks ben.dooks at codethink.co.uk
Wed Mar 18 08:53:05 PDT 2015

Fix the use of __raw IO accessor with the readl/writel_relaxed versions
to allow the code to be used on a system running in big endian.

Signed-off-by: Ben Dooks <ben.dooks at codethink.co.uk>
CC: Daniel Lezcano <daniel.lezcano at linaro.org>
CC: Thomas Gleixner <tglx at linutronix.de>
CC: Linux Kernel <linux-kernel at vger.kernel.org>
CC: Linux ARM Kernel <linux-arm-kernel at lists.infradead.org>
CC: Andrew Victor <linux at maxim.org.za>
CC: Nicolas Ferre <nicolas.ferre at atmel.com>
CC: Jean-Christophe Plagniol-Villard <plagnioj at jcrosoft.com>
 drivers/clocksource/timer-atmel-pit.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/clocksource/timer-atmel-pit.c b/drivers/clocksource/timer-atmel-pit.c
index b5b4d45..c0304ff 100644
--- a/drivers/clocksource/timer-atmel-pit.c
+++ b/drivers/clocksource/timer-atmel-pit.c
@@ -61,12 +61,12 @@ static inline struct pit_data *clkevt_to_pit_data(struct clock_event_device *clk
 static inline unsigned int pit_read(void __iomem *base, unsigned int reg_offset)
-	return __raw_readl(base + reg_offset);
+	return readl_relaxed(base + reg_offset);
 static inline void pit_write(void __iomem *base, unsigned int reg_offset, unsigned long value)
-	__raw_writel(value, base + reg_offset);
+	writel_relaxed(value, base + reg_offset);

More information about the linux-arm-kernel mailing list