Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ARM: debug-ll: rework lpc32xx handling

LPC32xx can not yet be configured in a multiplatform kernel, but
if we ever get there, enabling one of the LPC32xx platforms
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 LPC32xx default addresses only
if we have also picked the respective Kconfig symbols introduced
here.

While we're at it, this also reorders the virtual address as
it should be.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Vladimir Zapolskiy <vz@mleia.com>

+11 -3
+11 -3
arch/arm/Kconfig.debug
··· 480 480 Say Y here if you want kernel low-level debugging support 481 481 on NXP LPC18xx/43xx UART0. 482 482 483 + config DEBUG_LPC32XX 484 + bool "Kernel low-level debugging messages via NXP LPC32xx UART" 485 + depends on ARCH_LPC32XX 486 + select DEBUG_UART_8250 487 + help 488 + Say Y here if you want kernel low-level debugging support 489 + on NXP LPC32xx based platforms. 490 + 483 491 config DEBUG_MESON_UARTAO 484 492 bool "Kernel low-level debugging via Meson6 UARTAO" 485 493 depends on ARCH_MESON ··· 1426 1418 config DEBUG_UART_8250 1427 1419 def_bool ARCH_EBSA110 || (FOOTBRIDGE && !DEBUG_DC21285_PORT) || \ 1428 1420 ARCH_IOP13XX || ARCH_IOP32X || ARCH_IOP33X || ARCH_IXP4XX || \ 1429 - ARCH_LPC32XX || ARCH_RPC 1421 + ARCH_RPC 1430 1422 1431 1423 # Compatibility options for BCM63xx 1432 1424 config DEBUG_UART_BCM63XX ··· 1469 1461 default 0x3e000000 if DEBUG_BCM_KONA_UART 1470 1462 default 0x4000e400 if DEBUG_LL_UART_EFM32 1471 1463 default 0x40081000 if DEBUG_LPC18XX_UART0 1472 - default 0x40090000 if ARCH_LPC32XX 1464 + default 0x40090000 if DEBUG_LPC32XX 1473 1465 default 0x40100000 if DEBUG_PXA_UART1 1474 1466 default 0x42000000 if DEBUG_GEMINI 1475 1467 default 0x50000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \ ··· 1557 1549 default 0xf1c28000 if DEBUG_SUNXI_UART0 1558 1550 default 0xf1c28400 if DEBUG_SUNXI_UART1 1559 1551 default 0xf1f02800 if DEBUG_SUNXI_R_UART 1552 + default 0xf4090000 if DEBUG_LPC32XX 1560 1553 default 0xf4200000 if DEBUG_GEMINI 1561 1554 default 0xf6200000 if DEBUG_PXA_UART1 1562 - default 0xf4090000 if ARCH_LPC32XX 1563 1555 default 0xf7000000 if DEBUG_SUN9I_UART0 1564 1556 default 0xf7000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \ 1565 1557 DEBUG_S3C2410_UART0)