ARM: imx6: Add UART2 for low-level debug
authorDirk Behme <dirk.behme@de.bosch.com>
Fri, 27 Apr 2012 08:15:45 +0000 (10:15 +0200)
committerShawn Guo <shawn.guo@linaro.org>
Fri, 11 May 2012 07:17:57 +0000 (15:17 +0800)
To be able to enable early debugging on boards using the UART2 for the
console, add the option for early debugging on UART2.

Signed-off-by: Dirk Behme <dirk.behme@de.bosch.com>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
arch/arm/Kconfig.debug
arch/arm/mach-imx/lluart.c
arch/arm/plat-mxc/include/mach/debug-macro.S
arch/arm/plat-mxc/include/mach/mx6q.h

index 85348a0..0f876c2 100644 (file)
@@ -180,6 +180,14 @@ choice
                  Say Y here if you want kernel low-level debugging support
                  on i.MX50 or i.MX53.
 
+       config DEBUG_IMX6Q_UART2
+               bool "i.MX6Q Debug UART2"
+               depends on SOC_IMX6Q
+               help
+                 Say Y here if you want kernel low-level debugging support
+                 on i.MX6Q UART2. This is correct for e.g. the SabreLite
+                  board.
+
        config DEBUG_IMX6Q_UART4
                bool "i.MX6Q Debug UART4"
                depends on SOC_IMX6Q
index 0213f8d..c40a34c 100644 (file)
 #include <mach/hardware.h>
 
 static struct map_desc imx_lluart_desc = {
+#ifdef CONFIG_DEBUG_IMX6Q_UART2
+       .virtual        = MX6Q_IO_P2V(MX6Q_UART2_BASE_ADDR),
+       .pfn            = __phys_to_pfn(MX6Q_UART2_BASE_ADDR),
+       .length         = MX6Q_UART2_SIZE,
+       .type           = MT_DEVICE,
+#endif
 #ifdef CONFIG_DEBUG_IMX6Q_UART4
        .virtual        = MX6Q_IO_P2V(MX6Q_UART4_BASE_ADDR),
        .pfn            = __phys_to_pfn(MX6Q_UART4_BASE_ADDR),
index 8ddda36..761e45f 100644 (file)
@@ -24,6 +24,8 @@
 #define UART_PADDR     MX51_UART1_BASE_ADDR
 #elif defined (CONFIG_DEBUG_IMX50_IMX53_UART)
 #define UART_PADDR     MX53_UART1_BASE_ADDR
+#elif defined (CONFIG_DEBUG_IMX6Q_UART2)
+#define UART_PADDR     MX6Q_UART2_BASE_ADDR
 #elif defined (CONFIG_DEBUG_IMX6Q_UART4)
 #define UART_PADDR     MX6Q_UART4_BASE_ADDR
 #endif
index 254a561..f7e7dba 100644 (file)
@@ -27,6 +27,8 @@
 #define MX6Q_CCM_SIZE                  0x4000
 #define MX6Q_ANATOP_BASE_ADDR          0x020c8000
 #define MX6Q_ANATOP_SIZE               0x1000
+#define MX6Q_UART2_BASE_ADDR           0x021e8000
+#define MX6Q_UART2_SIZE                        0x4000
 #define MX6Q_UART4_BASE_ADDR           0x021f0000
 #define MX6Q_UART4_SIZE                        0x4000