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 <mcuos.com@gmail.com> 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 TX_DONE (UART_LSR_TEMT | UART_LSR_THRE) 28 static volatile u32 * const uart_base = (u32 *)UART0_PA; 29 putc(int ch)30static void putc(int ch) 31 { 32 /* Check THRE and TEMT bits before we transmit the character. 33 */ 34 while ((uart_base[UART_LSR] & TX_DONE) != TX_DONE) 35 barrier(); 36 37 *uart_base = ch; 38 } 39 flush(void)40static inline void flush(void) 41 { 42 } 43 arch_decomp_setup(void)44static void arch_decomp_setup(void) 45 { 46 } 47 48 #endif/* __ASM_W90X900_UNCOMPRESS_H */ 49