Skip to contentSkip to conversation

ARM: debug: add UART early console support for MSTAR SoCs

PATCH Superseded Romain Perier 2 participants 2 messages May 3, 2021 – May 4, 2021 Arm (32-bit)

v1 of 2 Superseded Latest is v2 →

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 ARM: debug: add UART early console support for MSTAR SoCs

This adds the debug_ll uart for the PM UART found on armv7-based MStar SoCs.

---
 arch/arm/Kconfig.debug | 11 +++++++++++
 1 file changed, 11 insertions(+)
arch/arm/Kconfig.debug +11 -0
index 36016497b1b3..4f1dd41d639a 100644
@@ -607,6 +607,14 @@ choice
 		  when u-boot hands over to the kernel, the system
 		  silently crashes, with no serial output at all.
 
+	config DEBUG_MSTAR_PMUART
+		bool "Kernel low-level debugging messages via MSTAR PM UART"
+		depends on ARCH_MSTARV7
+		select DEBUG_UART_8250
+		help
+		  Say Y here if you want kernel low-level debugging support
+		  for MSTAR based platforms on PM UART.
+
 	config DEBUG_MT6589_UART0
 		bool "Mediatek mt6589 UART0"
 		depends on ARCH_MEDIATEK
@@ -1605,6 +1613,7 @@ config DEBUG_UART_PHYS
 	default 0x18000400 if DEBUG_BCM_HR2
 	default 0x18023000 if DEBUG_BCM_IPROC_UART3
 	default 0x1c090000 if DEBUG_VEXPRESS_UART0_RS1
+	default 0x1f221000 if DEBUG_MSTAR_PMUART
 	default 0x20001000 if DEBUG_HIP01_UART
 	default 0x20060000 if DEBUG_RK29_UART0
 	default 0x20064000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
@@ -1722,6 +1731,7 @@ config DEBUG_UART_VIRT
 	default 0xf0100000 if DEBUG_DIGICOLOR_UA0
 	default 0xf01fb000 if DEBUG_NOMADIK_UART
 	default 0xf0201000 if DEBUG_BCM2835 || DEBUG_BCM2836
+	default 0xf0221000 if DEBUG_MSTAR_PMUART
 	default 0xf1000300 if DEBUG_BCM_5301X
 	default 0xf1000400 if DEBUG_BCM_HR2
 	default 0xf1002000 if DEBUG_MT8127_UART0
@@ -1827,6 +1837,7 @@ config DEBUG_UART_8250_SHIFT
 	default 0 if DEBUG_FOOTBRIDGE_COM1 || ARCH_IOP32X || DEBUG_BCM_5301X || \
 		DEBUG_BCM_HR2 || DEBUG_OMAP7XXUART1 || DEBUG_OMAP7XXUART2 || \
 		DEBUG_OMAP7XXUART3
+	default 3 if DEBUG_MSTAR_PMUART
 	default 2
 
 config DEBUG_UART_8250_WORD
Signature · 7 lines
2.30.2


_______________________________________________
linux-arm-kernel mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Acked-by on v1 1/1
#1 lore raw

Hi Romain,

Quoted 14 lines · Romain Perier

This adds the debug_ll uart for the PM UART found on armv7-based MStar SoCs.

---
 arch/arm/Kconfig.debug | 11 +++++++++++
 1 file changed, 11 insertions(+)
arch/arm/Kconfig.debug +0 -0
index 36016497b1b3..4f1dd41d639a 100644

arch/arm/Kconfig.debug choice · line 610

Quoted 4 lines
arch/arm/Kconfig.debug +1 -0
@@ -607,6 +607,14 @@ choice
                  when u-boot hands over to the kernel, the system
                  silently crashes, with no serial output at all.
 
+       config DEBUG_MSTAR_PMUART

The only minor thing I can think of here is that maybe this should be MSTARV7 to match the ARCH.
I'm not sure the PM UART is in the same place for the pre-ARMv7 stuff and for the MIPS stuff before that.

Quoted 35 lines
arch/arm/Kconfig.debug +10 -1
+               bool "Kernel low-level debugging messages via MSTAR PM UART"
+               depends on ARCH_MSTARV7
+               select DEBUG_UART_8250
+               help
+                 Say Y here if you want kernel low-level debugging support
+                 for MSTAR based platforms on PM UART.
+
        config DEBUG_MT6589_UART0
                bool "Mediatek mt6589 UART0"
                depends on ARCH_MEDIATEK
@@ -1605,6 +1613,7 @@ config DEBUG_UART_PHYS
        default 0x18000400 if DEBUG_BCM_HR2
        default 0x18023000 if DEBUG_BCM_IPROC_UART3
        default 0x1c090000 if DEBUG_VEXPRESS_UART0_RS1
+       default 0x1f221000 if DEBUG_MSTAR_PMUART
        default 0x20001000 if DEBUG_HIP01_UART
        default 0x20060000 if DEBUG_RK29_UART0
        default 0x20064000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
@@ -1722,6 +1731,7 @@ config DEBUG_UART_VIRT
        default 0xf0100000 if DEBUG_DIGICOLOR_UA0
        default 0xf01fb000 if DEBUG_NOMADIK_UART
        default 0xf0201000 if DEBUG_BCM2835 || DEBUG_BCM2836
+       default 0xf0221000 if DEBUG_MSTAR_PMUART
        default 0xf1000300 if DEBUG_BCM_5301X
        default 0xf1000400 if DEBUG_BCM_HR2
        default 0xf1002000 if DEBUG_MT8127_UART0
@@ -1827,6 +1837,7 @@ config DEBUG_UART_8250_SHIFT
        default 0 if DEBUG_FOOTBRIDGE_COM1 || ARCH_IOP32X || DEBUG_BCM_5301X || \
                DEBUG_BCM_HR2 || DEBUG_OMAP7XXUART1 || DEBUG_OMAP7XXUART2 || \
                DEBUG_OMAP7XXUART3
+       default 3 if DEBUG_MSTAR_PMUART
        default 2
 
 config DEBUG_UART_8250_WORD
--
Quoted 2 lines

2.30.2

Aside from the MSTARV7 thing this looks good and I quickly tested on an SSD202D board.

With the MSTARV7 thing fixed if deemed necessary:

_______________________________________________
linux-arm-kernel mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel