Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
uncompress.h
Go to the documentation of this file.
1 /*
2  * arch/arm/mach-w90x900/include/mach/uncompress.h
3  *
4  * Copyright (c) 2008 Nuvoton technology corporation
5  * All rights reserved.
6  *
7  * Wan ZongShun <[email protected]>
8  *
9  * Based on arch/arm/mach-s3c2410/include/mach/uncompress.h
10  *
11  * This program is free software; you can redistribute it and/or modify
12  * it under the terms of the GNU General Public License as published by
13  * the Free Software Foundation; either version 2 of the License, or
14  * (at your option) any later version.
15  *
16  */
17 
18 #ifndef __ASM_ARCH_UNCOMPRESS_H
19 #define __ASM_ARCH_UNCOMPRESS_H
20 
21 /* Defines for UART registers */
22 
23 #include <mach/regs-serial.h>
24 #include <mach/map.h>
25 #include <linux/serial_reg.h>
26 
27 #define arch_decomp_wdog()
28 
29 #define TX_DONE (UART_LSR_TEMT | UART_LSR_THRE)
30 static volatile u32 * const uart_base = (u32 *)UART0_PA;
31 
32 static void putc(int ch)
33 {
34  /* Check THRE and TEMT bits before we transmit the character.
35  */
36  while ((uart_base[UART_LSR] & TX_DONE) != TX_DONE)
37  barrier();
38 
39  *uart_base = ch;
40 }
41 
42 static inline void flush(void)
43 {
44 }
45 
46 static void arch_decomp_setup(void)
47 {
48 }
49 
50 #endif/* __ASM_W90X900_UNCOMPRESS_H */