diff options
author | Tim Shimmin <tes@chook.melbourne.sgi.com> | 2006-09-29 16:45:43 +1000 |
---|---|---|
committer | Tim Shimmin <tes@chook.melbourne.sgi.com> | 2006-09-29 16:45:43 +1000 |
commit | 1b06e7926694178e146ff708b2c15a6da64c9765 (patch) | |
tree | 30602fa4a854d6956f478212937726ca75ea13ce /include/asm-arm/arch-iop32x/uncompress.h | |
parent | 65e8697a12e356cd7a6ecafa1149f5c5c6a71593 (diff) | |
parent | c972398b7871d9fb58c6a317786065a7cc6ca4be (diff) | |
download | op-kernel-dev-1b06e7926694178e146ff708b2c15a6da64c9765.zip op-kernel-dev-1b06e7926694178e146ff708b2c15a6da64c9765.tar.gz |
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
Diffstat (limited to 'include/asm-arm/arch-iop32x/uncompress.h')
-rw-r--r-- | include/asm-arm/arch-iop32x/uncompress.h | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/include/asm-arm/arch-iop32x/uncompress.h b/include/asm-arm/arch-iop32x/uncompress.h new file mode 100644 index 0000000..e64f52b --- /dev/null +++ b/include/asm-arm/arch-iop32x/uncompress.h @@ -0,0 +1,39 @@ +/* + * include/asm-arm/arch-iop32x/uncompress.h + */ + +#include <asm/types.h> +#include <asm/mach-types.h> +#include <linux/serial_reg.h> +#include <asm/hardware.h> + +static volatile u8 *uart_base; + +#define TX_DONE (UART_LSR_TEMT | UART_LSR_THRE) + +static inline void putc(char c) +{ + while ((uart_base[UART_LSR] & TX_DONE) != TX_DONE) + barrier(); + uart_base[UART_TX] = c; +} + +static inline void flush(void) +{ +} + +static __inline__ void __arch_decomp_setup(unsigned long arch_id) +{ + if (machine_is_iq80321()) + uart_base = (volatile u8 *)IQ80321_UART; + else if (machine_is_iq31244()) + uart_base = (volatile u8 *)IQ31244_UART; + else + uart_base = (volatile u8 *)0xfe800000; +} + +/* + * nothing to do + */ +#define arch_decomp_setup() __arch_decomp_setup(arch_id) +#define arch_decomp_wdog() |