summaryrefslogtreecommitdiffstats
path: root/include/asm-arm/arch-aaec2000/uncompress.h
diff options
context:
space:
mode:
authorBellido Nicolas <nb-ml@be.rmk.(none)>2005-06-20 18:51:05 +0100
committerRussell King <rmk+kernel@arm.linux.org.uk>2005-06-20 18:51:05 +0100
commit038c5b602524b33447008492e932cdd0a1e806c9 (patch)
treea2a474e180e370dfbc966bfd7f0050469aff4b98 /include/asm-arm/arch-aaec2000/uncompress.h
parent09f0551d20ddf6d22c333adcc59f2b1148734273 (diff)
[PATCH] ARM: 2686/2: AAEC-2000 Core support
Patch from Bellido Nicolas Core support for AAEC-2000 based platforms. This is an updated version of the previous patch, and takes into account Russell's comments. AAED-2000 default configuration will follow as soon as some problems with the bootloader are sorted out... Signed-off-by: Nicolas Bellido Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'include/asm-arm/arch-aaec2000/uncompress.h')
-rw-r--r--include/asm-arm/arch-aaec2000/uncompress.h47
1 files changed, 47 insertions, 0 deletions
diff --git a/include/asm-arm/arch-aaec2000/uncompress.h b/include/asm-arm/arch-aaec2000/uncompress.h
new file mode 100644
index 00000000000..fff0c94b75c
--- /dev/null
+++ b/include/asm-arm/arch-aaec2000/uncompress.h
@@ -0,0 +1,47 @@
+/*
+ * linux/include/asm-arm/arch-aaec2000/uncompress.h
+ *
+ * Copyright (c) 2005 Nicolas Bellido Y Ortega
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+#ifndef __ASM_ARCH_UNCOMPRESS_H
+#define __ASM_ARCH_UNCOMPRESS_H
+
+#include "hardware.h"
+
+#define UART(x) (*(volatile unsigned long *)(serial_port + (x)))
+
+static void putstr( const char *s )
+{
+ unsigned long serial_port;
+ do {
+ serial_port = _UART3_BASE;
+ if (UART(UART_CR) & UART_CR_EN) break;
+ serial_port = _UART1_BASE;
+ if (UART(UART_CR) & UART_CR_EN) break;
+ serial_port = _UART2_BASE;
+ if (UART(UART_CR) & UART_CR_EN) break;
+ return;
+ } while (0);
+
+ for (; *s; s++) {
+ /* wait for space in the UART's transmitter */
+ while ((UART(UART_SR) & UART_SR_TxFF));
+ /* send the character out. */
+ UART(UART_DR) = *s;
+ /* if a LF, also do CR... */
+ if (*s == 10) {
+ while ((UART(UART_SR) & UART_SR_TxFF));
+ UART(UART_DR) = 13;
+ }
+ }
+}
+
+#define arch_decomp_setup()
+#define arch_decomp_wdog()
+
+#endif /* __ASM_ARCH_UNCOMPRESS_H */