summaryrefslogtreecommitdiff
path: root/arch/arm/plat-omap/include/plat/serial.h
diff options
context:
space:
mode:
authorTony Lindgren <tony@atomide.com>2010-02-15 19:49:01 +0300
committerTony Lindgren <tony@atomide.com>2010-02-15 19:49:01 +0300
commit0c8219f0302d0d27fda52c790d38406801e547ec (patch)
tree96dc93845e4a8b947fd92b4bab71efd241a02a8e /arch/arm/plat-omap/include/plat/serial.h
parent4f2c49fedf833e522001bc51824b894732900a3d (diff)
downloadlinux-0c8219f0302d0d27fda52c790d38406801e547ec.tar.xz
omap: Make uncompress code and DEBUG_LL code generic
Define arch_decomp_setup() the same way as some other architectures do. Use arch_id to configure the debug uart based on the machine_is by storing it into the uart scratchpad register for DEBUG_LL code to use. Signed-off-by: Tony Lindgren <tony@atomide.com>
Diffstat (limited to 'arch/arm/plat-omap/include/plat/serial.h')
-rw-r--r--arch/arm/plat-omap/include/plat/serial.h33
1 files changed, 29 insertions, 4 deletions
diff --git a/arch/arm/plat-omap/include/plat/serial.h b/arch/arm/plat-omap/include/plat/serial.h
index 7f5a7a88a6eb..83dce4c4f7e6 100644
--- a/arch/arm/plat-omap/include/plat/serial.h
+++ b/arch/arm/plat-omap/include/plat/serial.h
@@ -26,24 +26,49 @@
#define OMAP2_UART3_BASE 0x4806e000
/* OMAP3 serial ports */
-#define OMAP3_UART1_BASE 0x4806a000
-#define OMAP3_UART2_BASE 0x4806c000
+#define OMAP3_UART1_BASE OMAP2_UART1_BASE
+#define OMAP3_UART2_BASE OMAP2_UART2_BASE
#define OMAP3_UART3_BASE 0x49020000
#define OMAP3_UART4_BASE 0x49042000 /* Only on 36xx */
/* OMAP4 serial ports */
-#define OMAP4_UART1_BASE 0x4806a000
-#define OMAP4_UART2_BASE 0x4806c000
+#define OMAP4_UART1_BASE OMAP2_UART1_BASE
+#define OMAP4_UART2_BASE OMAP2_UART2_BASE
#define OMAP4_UART3_BASE 0x48020000
#define OMAP4_UART4_BASE 0x4806e000
+/* External port on Zoom2/3 */
+#define ZOOM_UART_BASE 0x10000000
+#define ZOOM_UART_VIRT 0xfb000000
+
#define OMAP_PORT_SHIFT 2
#define OMAP7XX_PORT_SHIFT 0
+#define ZOOM_PORT_SHIFT 1
#define OMAP1510_BASE_BAUD (12000000/16)
#define OMAP16XX_BASE_BAUD (48000000/16)
#define OMAP24XX_BASE_BAUD (48000000/16)
+/*
+ * DEBUG_LL port encoding stored into the UART1 scratchpad register by
+ * decomp_setup in uncompress.h
+ */
+#define OMAP1UART1 11
+#define OMAP1UART2 12
+#define OMAP1UART3 13
+#define OMAP2UART1 21
+#define OMAP2UART2 22
+#define OMAP2UART3 23
+#define OMAP3UART1 OMAP2UART1
+#define OMAP3UART2 OMAP2UART2
+#define OMAP3UART3 33
+#define OMAP3UART4 34 /* Only on 36xx */
+#define OMAP4UART1 OMAP2UART1
+#define OMAP4UART2 OMAP2UART2
+#define OMAP4UART3 43
+#define OMAP4UART4 44
+#define ZOOM_UART 95 /* Only on zoom2/3 */
+
/* This is only used by 8250.c for omap1510 */
#define is_omap_port(pt) ({int __ret = 0; \
if ((pt)->port.mapbase == OMAP1_UART1_BASE || \