2008-12-03 02:55:38 +00:00
|
|
|
/*
|
|
|
|
* arch/arm/mach-w90x900/include/mach/uncompress.h
|
|
|
|
*
|
|
|
|
* Copyright (c) 2008 Nuvoton technology corporation
|
|
|
|
* All rights reserved.
|
|
|
|
*
|
|
|
|
* Wan ZongShun <mcuos.com@gmail.com>
|
|
|
|
*
|
|
|
|
* Based on arch/arm/mach-s3c2410/include/mach/uncompress.h
|
|
|
|
*
|
|
|
|
* This program is free software; you can redistribute it and/or modify
|
|
|
|
* it under the terms of the GNU General Public License as published by
|
|
|
|
* the Free Software Foundation; either version 2 of the License, or
|
|
|
|
* (at your option) any later version.
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef __ASM_ARCH_UNCOMPRESS_H
|
|
|
|
#define __ASM_ARCH_UNCOMPRESS_H
|
|
|
|
|
|
|
|
/* Defines for UART registers */
|
|
|
|
|
|
|
|
#include <mach/regs-serial.h>
|
|
|
|
#include <mach/map.h>
|
2009-12-18 17:00:37 +00:00
|
|
|
#include <linux/serial_reg.h>
|
2008-12-03 02:55:38 +00:00
|
|
|
|
|
|
|
#define arch_decomp_wdog()
|
|
|
|
|
2009-12-18 17:00:37 +00:00
|
|
|
#define TX_DONE (UART_LSR_TEMT | UART_LSR_THRE)
|
2011-04-28 21:00:17 +00:00
|
|
|
static volatile u32 * const uart_base = (u32 *)UART0_PA;
|
2009-12-18 17:00:37 +00:00
|
|
|
|
2008-12-03 02:55:38 +00:00
|
|
|
static void putc(int ch)
|
|
|
|
{
|
2009-12-18 17:00:37 +00:00
|
|
|
/* Check THRE and TEMT bits before we transmit the character.
|
|
|
|
*/
|
|
|
|
while ((uart_base[UART_LSR] & TX_DONE) != TX_DONE)
|
|
|
|
barrier();
|
|
|
|
|
|
|
|
*uart_base = ch;
|
2008-12-03 02:55:38 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static inline void flush(void)
|
|
|
|
{
|
|
|
|
}
|
|
|
|
|
|
|
|
static void arch_decomp_setup(void)
|
|
|
|
{
|
|
|
|
}
|
|
|
|
|
|
|
|
#endif/* __ASM_W90X900_UNCOMPRESS_H */
|