Revert to Fedora kernel-2.6.17-1.2187_FC5 patched with vs2.0.2.1; there are too many...
[linux-2.6.git] / include / asm-arm / arch-iop3xx / uncompress.h
index 673fabc..c98eb62 100644 (file)
@@ -9,31 +9,25 @@
 
 #ifdef CONFIG_ARCH_IOP321
 #define UTYPE unsigned char *
-#else
+#elif defined(CONFIG_ARCH_IOP331)
 #define UTYPE u32 *
+#else
+#error "Missing IOP3xx arch type def"
 #endif
 
 static volatile UTYPE uart_base;
 
 #define TX_DONE (UART_LSR_TEMT|UART_LSR_THRE)
 
-static __inline__ void putc(char c)
+static inline void putc(char c)
 {
-       while ((uart_base[UART_LSR] & TX_DONE) != TX_DONE);
+       while ((uart_base[UART_LSR] & TX_DONE) != TX_DONE)
+               barrier();
        *uart_base = c;
 }
 
-/*
- * This does not append a newline
- */
-static void putstr(const char *s)
+static inline void flush(void)
 {
-       while (*s) {
-               putc(*s);
-               if (*s == '\n')
-                       putc('\r');
-               s++;
-       }
 }
 
 static __inline__ void __arch_decomp_setup(unsigned long arch_id)
@@ -42,8 +36,8 @@ static __inline__ void __arch_decomp_setup(unsigned long arch_id)
                        uart_base = (volatile UTYPE)IQ80321_UART;
                else if(machine_is_iq31244())
                        uart_base = (volatile UTYPE)IQ31244_UART;
-               else if(machine_is_iq80331())
-                       uart_base = (volatile UTYPE)IQ80331_UART0_PHYS;
+               else if(machine_is_iq80331() || machine_is_iq80332())
+                       uart_base = (volatile UTYPE)IOP331_UART0_PHYS;
                else
                        uart_base = (volatile UTYPE)0xfe800000;
 }