aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-u300/include/mach/uncompress.h
diff options
context:
space:
mode:
authorLinus Walleij <linus.walleij@stericsson.com>2009-04-23 10:22:13 +0100
committerRussell King <rmk+kernel@arm.linux.org.uk>2009-04-28 22:44:15 +0100
commitbb3cee2b35d2b9edab71997bd06040ff37483e08 (patch)
tree59fbdd7076981906e705e63d09b3d42ff8873242 /arch/arm/mach-u300/include/mach/uncompress.h
parentcd27e485410aa7e7464b0126d968fe8c2a5c045b (diff)
downloadkernel_samsung_smdk4412-bb3cee2b35d2b9edab71997bd06040ff37483e08.zip
kernel_samsung_smdk4412-bb3cee2b35d2b9edab71997bd06040ff37483e08.tar.gz
kernel_samsung_smdk4412-bb3cee2b35d2b9edab71997bd06040ff37483e08.tar.bz2
[ARM] 5473/1: U300 core machine support
This adds core support for the ST-Ericsson U300 series platforms: U300, U330, U335 and U365. Supports memory mappings, interrupt controller, system timer (clocksource and clockevents), and binds to the existing drivers for the PrimeCells used in this design: PL190 (VIC), PL180 (MMC/SD host) and PL011 (UART). This is intented to serve as starting point for our mainling work, more patches to follow. Signed-off-by: Linus Walleij <linus.walleij@stericsson.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-u300/include/mach/uncompress.h')
-rw-r--r--arch/arm/mach-u300/include/mach/uncompress.h46
1 files changed, 46 insertions, 0 deletions
diff --git a/arch/arm/mach-u300/include/mach/uncompress.h b/arch/arm/mach-u300/include/mach/uncompress.h
new file mode 100644
index 0000000..29acb71
--- /dev/null
+++ b/arch/arm/mach-u300/include/mach/uncompress.h
@@ -0,0 +1,46 @@
+/*
+ * arch/arm/mach-u300/include/mach/uncompress.h
+ *
+ * Copyright (C) 2003 ARM Limited
+ *
+ * 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.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+#define AMBA_UART_DR (*(volatile unsigned char *)0xc0013000)
+#define AMBA_UART_LCRH (*(volatile unsigned char *)0xc001302C)
+#define AMBA_UART_CR (*(volatile unsigned char *)0xc0013030)
+#define AMBA_UART_FR (*(volatile unsigned char *)0xc0013018)
+
+/*
+ * This does not append a newline
+ */
+static inline void putc(int c)
+{
+ while (AMBA_UART_FR & (1 << 5))
+ barrier();
+
+ AMBA_UART_DR = c;
+}
+
+static inline void flush(void)
+{
+ while (AMBA_UART_FR & (1 << 3))
+ barrier();
+}
+
+/*
+ * nothing to do
+ */
+#define arch_decomp_setup()
+#define arch_decomp_wdog()