ARM: debug-ll: rework SPEAr handling
authorArnd Bergmann <arnd@arndb.de>
Thu, 3 Dec 2015 16:54:05 +0000 (17:54 +0100)
committerArnd Bergmann <arnd@arndb.de>
Tue, 15 Dec 2015 22:41:56 +0000 (23:41 +0100)
Enabling one of the SPEAr platforms in a multiplatform kernel
while trying to use DEBUG_LL for another platform can default to
the wrong UART address, as the options are purely based on the
architecture being enabled or not.

This changes the logic to use the SPEAr default addresses only
if we have also picked the respective Kconfig symbols introduced
here.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
arch/arm/Kconfig.debug

index 178c84b7b8bae76c10e933d21115565a527c0997..d116845e625008ff5fc02006ef4fd8386d093c57 100644 (file)
@@ -1076,6 +1076,22 @@ choice
                  Say Y here if you want the debug print routines to direct
                  their output to the uart1 port on SiRFATLAS7 devices.
 
+       config DEBUG_SPEAR3XX
+               bool "Kernel low-level debugging messages via ST SPEAr 3xx/6xx UART"
+               depends on ARCH_SPEAR3XX || ARCH_SPEAR6XX
+               select DEBUG_UART_PL01X
+               help
+                 Say Y here if you want kernel low-level debugging support
+                 on ST SPEAr based platforms.
+
+       config DEBUG_SPEAR13XX
+               bool "Kernel low-level debugging messages via ST SPEAr 13xx UART"
+               depends on ARCH_SPEAR13XX
+               select DEBUG_UART_PL01X
+               help
+                 Say Y here if you want kernel low-level debugging support
+                 on ST SPEAr13xx based platforms.
+
        config STIH41X_DEBUG_ASC2
                bool "Use StiH415/416 ASC2 UART for low-level debug"
                depends on ARCH_STI
@@ -1443,12 +1459,12 @@ config DEBUG_UART_PHYS
        default 0xc0013000 if DEBUG_U300_UART
        default 0xc8000000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
        default 0xc8000003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
-       default 0xd0000000 if ARCH_SPEAR3XX || ARCH_SPEAR6XX
+       default 0xd0000000 if DEBUG_SPEAR3XX
        default 0xd0012000 if DEBUG_MVEBU_UART0
        default 0xc81004c0 if DEBUG_MESON_UARTAO
        default 0xd4017000 if DEBUG_MMP_UART2
        default 0xd4018000 if DEBUG_MMP_UART3
-       default 0xe0000000 if ARCH_SPEAR13XX
+       default 0xe0000000 if DEBUG_SPEAR13XX
        default 0xe4007000 if DEBUG_HIP04_UART
        default 0xe6c40000 if DEBUG_RMOBILE_SCIFA0
        default 0xe6c50000 if DEBUG_RMOBILE_SCIFA1
@@ -1530,8 +1546,7 @@ config DEBUG_UART_VIRT
        default 0xfc40ab00 if DEBUG_BRCMSTB_UART
        default 0xfc705000 if DEBUG_ZTE_ZX
        default 0xfcfe8600 if DEBUG_UART_BCM63XX
-       default 0xfd000000 if ARCH_SPEAR3XX || ARCH_SPEAR6XX
-       default 0xfd000000 if ARCH_SPEAR13XX
+       default 0xfd000000 if DEBUG_SPEAR3XX || DEBUG_SPEAR13XX
        default 0xfd012000 if DEBUG_MVEBU_UART0_ALTERNATE && ARCH_MV78XX0
        default 0xfd883000 if DEBUG_ALPINE_UART0
        default 0xfde12000 if DEBUG_MVEBU_UART0_ALTERNATE && ARCH_DOVE