patch-2.1.110 linux/include/asm-arm/arch-arc/io.h

Next file: linux/include/asm-arm/arch-arc/processor.h
Previous file: linux/include/asm-alpha/tsunami.h
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.1.109/linux/include/asm-arm/arch-arc/io.h linux/include/asm-arm/arch-arc/io.h
@@ -159,7 +159,18 @@
 	result & 0xffff;							\
 })
 
-#define __outlc(v,p) __outwc((v),(p))
+#define __outlc(value,port) 							\
+({										\
+	unsigned long v = value;						\
+	if (__PORT_PCIO((port)))						\
+		__asm__ __volatile__(						\
+		"str	%0, [%1, %2]"						\
+		: : "r" (v), "r" (PCIO_BASE), "Jr" ((port) << 2));		\
+	else									\
+		__asm__ __volatile__(						\
+		"str	%0, [%1, %2]"						\
+		: : "r" (v), "r" (IO_BASE), "r" ((port) << 2));			\
+})
 
 #define __inlc(port)								\
 ({										\

FUNET's LINUX-ADM group, [email protected]
TCL-scripts by Sam Shen, [email protected]