mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-23 04:34:11 +08:00
a081568d70
As per the corresponding change to the serial drivers, arrange for ARM decompressors to give CRLF. Move the common putstr code into misc.c such that machines only need to supply "putc" and "flush" functions. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
51 lines
1.0 KiB
C
51 lines
1.0 KiB
C
/*
|
|
* linux/include/asm-arm/arch-brutus/uncompress.h
|
|
*
|
|
* (C) 1999 Nicolas Pitre <nico@cam.org>
|
|
*
|
|
* Reorganised to be machine independent.
|
|
*/
|
|
|
|
#include "hardware.h"
|
|
|
|
/*
|
|
* The following code assumes the serial port has already been
|
|
* initialized by the bootloader. We search for the first enabled
|
|
* port in the most probable order. If you didn't setup a port in
|
|
* your bootloader then nothing will appear (which might be desired).
|
|
*/
|
|
|
|
#define UART(x) (*(volatile unsigned long *)(serial_port + (x)))
|
|
|
|
static void putc(int c)
|
|
{
|
|
unsigned long serial_port;
|
|
|
|
do {
|
|
serial_port = _Ser3UTCR0;
|
|
if (UART(UTCR3) & UTCR3_TXE) break;
|
|
serial_port = _Ser1UTCR0;
|
|
if (UART(UTCR3) & UTCR3_TXE) break;
|
|
serial_port = _Ser2UTCR0;
|
|
if (UART(UTCR3) & UTCR3_TXE) break;
|
|
return;
|
|
} while (0);
|
|
|
|
/* wait for space in the UART's transmitter */
|
|
while (!(UART(UTSR1) & UTSR1_TNF))
|
|
barrier();
|
|
|
|
/* send the character out. */
|
|
UART(UTDR) = c;
|
|
}
|
|
|
|
static inline void flush(void)
|
|
{
|
|
}
|
|
|
|
/*
|
|
* Nothing to do for these
|
|
*/
|
|
#define arch_decomp_setup()
|
|
#define arch_decomp_wdog()
|