Thread (84 messages) flat view 84 messages, 6 authors, 2011-01-14
STALE5734d

[PATCH V3 42/63] ST SPEAr: replace readl, writel with __raw_readl, __raw_writel in uncompress.h

From: stanley.miao <hidden>
Date: 2011-01-07 02:26:25

Viresh Kumar wrote:
readl also calls outer cache maintainance operations 
I use readl here on spear13xx. It works fine.
This is the definition of readl, could you tell me which code calls 
outer cache maintainance ?

#define readl(c) ({ __u32 __v = le32_to_cpu((__force __le32) \
                                        __raw_readl(__mem_pci(c))); __v; })
which are not available
during Linux uncompression. This patch replaces readl, writel with __raw_readl
and __raw_writel.
  
I tried to make spear13xx working under big endian. The _raw_readl here 
brought me a big trouble.


Stanley.

quoted hunk ↗ jump to hunk
Signed-off-by: Viresh Kumar <redacted>
---
 arch/arm/plat-spear/include/plat/uncompress.h |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/arm/plat-spear/include/plat/uncompress.h b/arch/arm/plat-spear/include/plat/uncompress.h
index 99ba678..963aa5b 100644
--- a/arch/arm/plat-spear/include/plat/uncompress.h
+++ b/arch/arm/plat-spear/include/plat/uncompress.h
@@ -24,10 +24,10 @@ static inline void putc(int c)
 {
 	void __iomem *base = (void __iomem *)SPEAR_DBG_UART_BASE;
 
-	while (readl(base + UART01x_FR) & UART01x_FR_TXFF)
+	while (__raw_readl(base + UART01x_FR) & UART01x_FR_TXFF)
 		barrier();
 
-	writel(c, base + UART01x_DR);
+	__raw_writel(c, base + UART01x_DR);
 }
 
 static inline void flush(void)
  
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help