arm: vt8500: Convert debug-macro.S to be multiplatform friendly
authorTony Prisk <linux@prisktech.co.nz>
Thu, 27 Dec 2012 23:09:18 +0000 (12:09 +1300)
committerTony Prisk <linux@prisktech.co.nz>
Sat, 12 Jan 2013 02:47:38 +0000 (15:47 +1300)
This patch moves debug-macro.S from arm/mach-vt8500/include/mach to
arm/include/debug/vt8500.S to provide multiplatform support.

Minor style changes in code for readability.

Signed-off-by: Tony Prisk <linux@prisktech.co.nz>
arch/arm/Kconfig.debug
arch/arm/include/debug/vt8500.S [moved from arch/arm/mach-vt8500/include/mach/debug-macro.S with 56% similarity]

index 661030d..bbb0a67 100644 (file)
@@ -412,6 +412,13 @@ choice
                  of the tiles using the RS1 memory map, including all new A-class
                  core tiles, FPGA-based SMMs and software models.
 
+       config DEBUG_VT8500_UART0
+               bool "Use UART0 on VIA/Wondermedia SoCs"
+               depends on ARCH_VT8500
+               help
+                 This option selects UART0 on VIA/Wondermedia System-on-a-chip
+                 devices, including VT8500, WM8505, WM8650 and WM8850.
+
        config DEBUG_LL_UART_NONE
                bool "No low-level debugging UART"
                depends on !ARCH_MULTIPLATFORM
@@ -506,6 +513,7 @@ config DEBUG_LL_INCLUDE
        default "debug/sunxi.S" if DEBUG_SUNXI_UART0 || DEBUG_SUNXI_UART1
        default "debug/vexpress.S" if DEBUG_VEXPRESS_UART0_DETECT || \
                DEBUG_VEXPRESS_UART0_CA9 || DEBUG_VEXPRESS_UART0_RS1
+       default "debug/vt8500.S" if DEBUG_VT8500_UART0
        default "debug/tegra.S" if DEBUG_TEGRA_UART
        default "debug/zynq.S" if DEBUG_ZYNQ_UART0 || DEBUG_ZYNQ_UART1
        default "mach/debug-macro.S"
similarity index 56%
rename from arch/arm/mach-vt8500/include/mach/debug-macro.S
rename to arch/arm/include/debug/vt8500.S
index ca292f2..0e0ca08 100644 (file)
@@ -1,20 +1,24 @@
-/*
- * arch/arm/mach-vt8500/include/mach/debug-macro.S
+/* 
+ * Debugging macro include header
  *
  *  Copyright (C) 2010 Alexey Charkov <alchark@gmail.com>
- *
- * Debugging macro include header
+ *    Moved from arch/arm/mach-vt8500/include/mach/debug-macro.S
+ *    Minor changes for readability.
  *
  * 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.
- *
-*/
+ */
+
+#define DEBUG_LL_PHYS_BASE             0xD8000000
+#define DEBUG_LL_VIRT_BASE             0xF8000000
+#define DEBUG_LL_UART_OFFSET           0x00200000
 
+#if defined(CONFIG_DEBUG_VT8500_UART0)
        .macro  addruart, rp, rv, tmp
-       mov     \rp,      #0x00200000
-       orr     \rv, \rp, #0xf8000000
-       orr     \rp, \rp, #0xd8000000
+       mov     \rp,      #DEBUG_LL_UART_OFFSET
+       orr     \rv, \rp, #DEBUG_LL_VIRT_BASE
+       orr     \rp, \rp, #DEBUG_LL_PHYS_BASE
        .endm
 
        .macro  senduart,rd,rx
@@ -29,3 +33,5 @@
 
        .macro  waituart,rd,rx
        .endm
+
+#endif