ARM: PRIMA2: provide two DEBUG_LL ports for prima2 and marco
[linux-3.10.git] / arch / arm / mach-prima2 / include / mach / uncompress.h
1 /*
2  * arch/arm/mach-prima2/include/mach/uncompress.h
3  *
4  * Copyright (c) 2011 Cambridge Silicon Radio Limited, a CSR plc group company.
5  *
6  * Licensed under GPLv2 or later.
7  */
8
9 #ifndef __ASM_ARCH_UNCOMPRESS_H
10 #define __ASM_ARCH_UNCOMPRESS_H
11
12 #include <linux/io.h>
13 #include <mach/hardware.h>
14 #include <mach/uart.h>
15
16 void arch_decomp_setup(void)
17 {
18 }
19
20 #define arch_decomp_wdog()
21
22 static __inline__ void putc(char c)
23 {
24         /*
25          * during kernel decompression, all mappings are flat:
26          *  virt_addr == phys_addr
27          */
28         if (!SIRFSOC_UART1_PA_BASE)
29                 return;
30
31         while (__raw_readl((void __iomem *)SIRFSOC_UART1_PA_BASE + SIRFSOC_UART_TXFIFO_STATUS)
32                 & SIRFSOC_UART1_TXFIFO_FULL)
33                 barrier();
34
35         __raw_writel(c, (void __iomem *)SIRFSOC_UART1_PA_BASE + SIRFSOC_UART_TXFIFO_DATA);
36 }
37
38 static inline void flush(void)
39 {
40 }
41
42 #endif
43