Skip to contentSkip to conversation

ARM: debug: Add Iproc UART3 debug addresses

PATCH Applied Clément Péron 3 participants 9 messages May 30, 2018 – Jun 4, 2018 Arm (32-bit)

lore
Share & tools
lore
#0 lore raw

PATCH v2 1/2 ARM: debug: Add Iproc UART3 debug addresses

From: Cl?ment Peron <[email protected]>

Broadcom Iproc SoCs typically use the UART3 for debug/console, provide a known good location for that.

---

 arch/arm/Kconfig.debug | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)
arch/arm/Kconfig.debug +11 -1
index 199ebc1c4538..4ea9d5793b91 100644
@@ -207,6 +207,14 @@ choice
 		depends on ARCH_BCM_HR2
 		select DEBUG_UART_8250
 
+	config DEBUG_BCM_IPROC_UART3
+		bool "Kernel low-level debugging on BCM IPROC UART3"
+		depends on ARCH_BCM_CYGNUS
+		select DEBUG_UART_8250
+		help
+		  Say Y here if you want the debug print routines to direct
+		  their output to the third serial port on these devices.
+
 	config DEBUG_BCM_KONA_UART
 		bool "Kernel low-level debugging messages via BCM KONA UART"
 		depends on ARCH_BCM_MOBILE
@@ -1557,6 +1565,7 @@ config DEBUG_UART_PHYS
 	default 0x18000400 if DEBUG_BCM_HR2
 	default 0x18010000 if DEBUG_SIRFATLAS7_UART0
 	default 0x18020000 if DEBUG_SIRFATLAS7_UART1
+	default 0x18023000 if DEBUG_BCM_IPROC_UART3
 	default 0x1c090000 if DEBUG_VEXPRESS_UART0_RS1
 	default 0x20001000 if DEBUG_HIP01_UART
 	default 0x20060000 if DEBUG_RK29_UART0
@@ -1676,6 +1685,7 @@ config DEBUG_UART_VIRT
 	default 0xf1002000 if DEBUG_MT8127_UART0
 	default 0xf1006000 if DEBUG_MT6589_UART0
 	default 0xf1009000 if DEBUG_MT8135_UART3
+	default 0xf1023000 if DEBUG_BCM_IPROC_UART3
 	default 0xf11f1000 if DEBUG_VERSATILE
 	default 0xf1600000 if DEBUG_INTEGRATOR
 	default 0xf1c28000 if DEBUG_SUNXI_UART0
@@ -1791,7 +1801,7 @@ config DEBUG_UART_8250_WORD
 		DEBUG_KEYSTONE_UART0 || DEBUG_KEYSTONE_UART1 || \
 		DEBUG_ALPINE_UART0 || \
 		DEBUG_DAVINCI_DMx_UART0 || DEBUG_DAVINCI_DA8XX_UART1 || \
-		DEBUG_DAVINCI_DA8XX_UART2 || \
+		DEBUG_DAVINCI_DA8XX_UART2 || DEBUG_BCM_IPROC_UART3 || \
 		DEBUG_BCM_KONA_UART || DEBUG_RK32_UART2
 
 config DEBUG_UART_8250_PALMCHIP
Signature · 1 line
2.17.0
#1 lore raw

PATCH v2 2/2 ARM: debug: fix BCM2836 order entry

From: Cl?ment Peron <[email protected]>

Entries are sorted by their address value, except the BCM2836/KONA which are not in the proper order.

---
 arch/arm/Kconfig.debug | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
arch/arm/Kconfig.debug +1 -1
index 4ea9d5793b91..1571d6c8f40e 100644
@@ -1572,8 +1572,8 @@ config DEBUG_UART_PHYS
 	default 0x20064000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
 	default 0x20068000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3
 	default 0x20201000 if DEBUG_BCM2835
-	default 0x3f201000 if DEBUG_BCM2836
 	default 0x3e000000 if DEBUG_BCM_KONA_UART
+	default 0x3f201000 if DEBUG_BCM2836
 	default 0x4000e400 if DEBUG_LL_UART_EFM32
 	default 0x40028000 if DEBUG_AT91_SAMV7_USART1
 	default 0x40081000 if DEBUG_LPC18XX_UART0
Signature · 1 line
2.17.0
#3 lore raw
In reply to Clément Péron

Hi Cl?ment,

Correct me if I'm wrong, but I thought the trend is to move to use earlycon that can be activated from kernel command line for early print before the serial driver is loaded.

Have you tried earlcon?

Thanks,

Ray

Quoted 56 lines · Cl?ment P?ron

From: Cl?ment Peron <[email protected]>

Broadcom Iproc SoCs typically use the UART3 for debug/console, provide a known good location for that.

---

  arch/arm/Kconfig.debug | 12 +++++++++++-
  1 file changed, 11 insertions(+), 1 deletion(-)
arch/arm/Kconfig.debug +11 -1
index 199ebc1c4538..4ea9d5793b91 100644
@@ -207,6 +207,14 @@ choice
  		depends on ARCH_BCM_HR2
  		select DEBUG_UART_8250
 
+	config DEBUG_BCM_IPROC_UART3
+		bool "Kernel low-level debugging on BCM IPROC UART3"
+		depends on ARCH_BCM_CYGNUS
+		select DEBUG_UART_8250
+		help
+		  Say Y here if you want the debug print routines to direct
+		  their output to the third serial port on these devices.
+
  	config DEBUG_BCM_KONA_UART
  		bool "Kernel low-level debugging messages via BCM KONA UART"
  		depends on ARCH_BCM_MOBILE
@@ -1557,6 +1565,7 @@ config DEBUG_UART_PHYS
  	default 0x18000400 if DEBUG_BCM_HR2
  	default 0x18010000 if DEBUG_SIRFATLAS7_UART0
  	default 0x18020000 if DEBUG_SIRFATLAS7_UART1
+	default 0x18023000 if DEBUG_BCM_IPROC_UART3
  	default 0x1c090000 if DEBUG_VEXPRESS_UART0_RS1
  	default 0x20001000 if DEBUG_HIP01_UART
  	default 0x20060000 if DEBUG_RK29_UART0
@@ -1676,6 +1685,7 @@ config DEBUG_UART_VIRT
  	default 0xf1002000 if DEBUG_MT8127_UART0
  	default 0xf1006000 if DEBUG_MT6589_UART0
  	default 0xf1009000 if DEBUG_MT8135_UART3
+	default 0xf1023000 if DEBUG_BCM_IPROC_UART3
  	default 0xf11f1000 if DEBUG_VERSATILE
  	default 0xf1600000 if DEBUG_INTEGRATOR
  	default 0xf1c28000 if DEBUG_SUNXI_UART0
@@ -1791,7 +1801,7 @@ config DEBUG_UART_8250_WORD
  		DEBUG_KEYSTONE_UART0 || DEBUG_KEYSTONE_UART1 || \
  		DEBUG_ALPINE_UART0 || \
  		DEBUG_DAVINCI_DMx_UART0 || DEBUG_DAVINCI_DA8XX_UART1 || \
-		DEBUG_DAVINCI_DA8XX_UART2 || \
+		DEBUG_DAVINCI_DA8XX_UART2 || DEBUG_BCM_IPROC_UART3 || \
  		DEBUG_BCM_KONA_UART || DEBUG_RK32_UART2
 
  config DEBUG_UART_8250_PALMCHIP
#4 lore raw

Hi Rai,

Quoted 8 lines · Ray Jui

Hi Cl?ment,

Correct me if I'm wrong, but I thought the trend is to move to use earlycon that can be activated from kernel command line for early print before the serial driver is loaded.

Have you tried earlcon?

No, only tested this method.

Thanks,
Clement

Quoted 62 lines

Thanks,

Ray

Quoted 56 lines · Cl?ment P?ron

From: Cl?ment Peron <[email protected]>

Broadcom Iproc SoCs typically use the UART3 for debug/console, provide a known good location for that.

---

  arch/arm/Kconfig.debug | 12 +++++++++++-
  1 file changed, 11 insertions(+), 1 deletion(-)
arch/arm/Kconfig.debug +11 -1
index 199ebc1c4538..4ea9d5793b91 100644
@@ -207,6 +207,14 @@ choice
              depends on ARCH_BCM_HR2
              select DEBUG_UART_8250
 
+     config DEBUG_BCM_IPROC_UART3
+             bool "Kernel low-level debugging on BCM IPROC UART3"
+             depends on ARCH_BCM_CYGNUS
+             select DEBUG_UART_8250
+             help
+               Say Y here if you want the debug print routines to direct
+               their output to the third serial port on these devices.
+
      config DEBUG_BCM_KONA_UART
              bool "Kernel low-level debugging messages via BCM KONA UART"
              depends on ARCH_BCM_MOBILE
@@ -1557,6 +1565,7 @@ config DEBUG_UART_PHYS
      default 0x18000400 if DEBUG_BCM_HR2
      default 0x18010000 if DEBUG_SIRFATLAS7_UART0
      default 0x18020000 if DEBUG_SIRFATLAS7_UART1
+     default 0x18023000 if DEBUG_BCM_IPROC_UART3
      default 0x1c090000 if DEBUG_VEXPRESS_UART0_RS1
      default 0x20001000 if DEBUG_HIP01_UART
      default 0x20060000 if DEBUG_RK29_UART0
@@ -1676,6 +1685,7 @@ config DEBUG_UART_VIRT
      default 0xf1002000 if DEBUG_MT8127_UART0
      default 0xf1006000 if DEBUG_MT6589_UART0
      default 0xf1009000 if DEBUG_MT8135_UART3
+     default 0xf1023000 if DEBUG_BCM_IPROC_UART3
      default 0xf11f1000 if DEBUG_VERSATILE
      default 0xf1600000 if DEBUG_INTEGRATOR
      default 0xf1c28000 if DEBUG_SUNXI_UART0
@@ -1791,7 +1801,7 @@ config DEBUG_UART_8250_WORD
              DEBUG_KEYSTONE_UART0 || DEBUG_KEYSTONE_UART1 || \
              DEBUG_ALPINE_UART0 || \
              DEBUG_DAVINCI_DMx_UART0 || DEBUG_DAVINCI_DA8XX_UART1 || \
-             DEBUG_DAVINCI_DA8XX_UART2 || \
+             DEBUG_DAVINCI_DA8XX_UART2 || DEBUG_BCM_IPROC_UART3 || \
              DEBUG_BCM_KONA_UART || DEBUG_RK32_UART2
 
  config DEBUG_UART_8250_PALMCHIP
#5 lore raw
Quoted 10 lines · Cl?ment P?ron

Hi Rai,

Quoted 7 lines · Ray Jui

Hi Cl?ment,

Correct me if I'm wrong, but I thought the trend is to move to use earlycon that can be activated from kernel command line for early print before the serial driver is loaded.

Quoted 6 lines
Quoted 1 line

Have you tried earlcon?

No, only tested this method.

Thanks,
Clement

If I remember it correctly, I think the trend is to use earlycon. There are obvious shortcomings by making this configuration compile time based.

Quoted 62 lines
Quoted 62 lines

Thanks,

Ray

Quoted 56 lines · Cl?ment P?ron

From: Cl?ment Peron <[email protected]>

Broadcom Iproc SoCs typically use the UART3 for debug/console, provide a known good location for that.

---

   arch/arm/Kconfig.debug | 12 +++++++++++-
   1 file changed, 11 insertions(+), 1 deletion(-)
arch/arm/Kconfig.debug +11 -1
index 199ebc1c4538..4ea9d5793b91 100644
@@ -207,6 +207,14 @@ choice
               depends on ARCH_BCM_HR2
               select DEBUG_UART_8250
 
+     config DEBUG_BCM_IPROC_UART3
+             bool "Kernel low-level debugging on BCM IPROC UART3"
+             depends on ARCH_BCM_CYGNUS
+             select DEBUG_UART_8250
+             help
+               Say Y here if you want the debug print routines to direct
+               their output to the third serial port on these devices.
+
       config DEBUG_BCM_KONA_UART
               bool "Kernel low-level debugging messages via BCM KONA UART"
               depends on ARCH_BCM_MOBILE
@@ -1557,6 +1565,7 @@ config DEBUG_UART_PHYS
       default 0x18000400 if DEBUG_BCM_HR2
       default 0x18010000 if DEBUG_SIRFATLAS7_UART0
       default 0x18020000 if DEBUG_SIRFATLAS7_UART1
+     default 0x18023000 if DEBUG_BCM_IPROC_UART3
       default 0x1c090000 if DEBUG_VEXPRESS_UART0_RS1
       default 0x20001000 if DEBUG_HIP01_UART
       default 0x20060000 if DEBUG_RK29_UART0
@@ -1676,6 +1685,7 @@ config DEBUG_UART_VIRT
       default 0xf1002000 if DEBUG_MT8127_UART0
       default 0xf1006000 if DEBUG_MT6589_UART0
       default 0xf1009000 if DEBUG_MT8135_UART3
+     default 0xf1023000 if DEBUG_BCM_IPROC_UART3
       default 0xf11f1000 if DEBUG_VERSATILE
       default 0xf1600000 if DEBUG_INTEGRATOR
       default 0xf1c28000 if DEBUG_SUNXI_UART0
@@ -1791,7 +1801,7 @@ config DEBUG_UART_8250_WORD
               DEBUG_KEYSTONE_UART0 || DEBUG_KEYSTONE_UART1 || \
               DEBUG_ALPINE_UART0 || \
               DEBUG_DAVINCI_DMx_UART0 || DEBUG_DAVINCI_DA8XX_UART1 || \
-             DEBUG_DAVINCI_DA8XX_UART2 || \
+             DEBUG_DAVINCI_DA8XX_UART2 || DEBUG_BCM_IPROC_UART3 || \
               DEBUG_BCM_KONA_UART || DEBUG_RK32_UART2
 
   config DEBUG_UART_8250_PALMCHIP
#6 lore raw
Quoted 14 lines · Ray Jui
Quoted 11 lines · Cl?ment P?ron

Hi Rai,

Quoted 8 lines · Ray Jui

Hi Cl?ment,

Correct me if I'm wrong, but I thought the trend is to move to use earlycon that can be activated from kernel command line for early print before the serial driver is loaded.

Have you tried earlcon?

Quoted 8 lines
Quoted 5 lines

No, only tested this method.

Thanks,
Clement

If I remember it correctly, I think the trend is to use earlycon. There are obvious shortcomings by making this configuration compile time based.

This is true, though on ARM 32-bit kernels DEBUG_LL gets used by the kernel self-decompressor and also before earlycon has a chance to run, this is useful to debugging memory issues where your memory configuration is incorrect typically.

Either way is fine with me (accepting or dropping) the patch, though there is probably minimal impact in just accepting such a change.

Signature · 1 line
Florian
#7 lore raw

Sorry Florian, I had a couple issues with my email client yesterday and I'm not sure if you have received my reply.

Please see my reply inline.

Quoted 23 lines · Florian Fainelli
Quoted 20 lines · Ray Jui
Quoted 16 lines · Cl?ment P?ron

Hi Rai,

Quoted 8 lines · Ray Jui

Hi Cl?ment,

Correct me if I'm wrong, but I thought the trend is to move to use earlycon that can be activated from kernel command line for early print before the serial driver is loaded.

Have you tried earlcon?

No, only tested this method.

Thanks,
Clement

Quoted 8 lines
Quoted 2 lines

If I remember it correctly, I think the trend is to use earlycon. There are obvious shortcomings by making this configuration compile time based.

This is true, though on ARM 32-bit kernels DEBUG_LL gets used by the kernel self-decompressor and also before earlycon has a chance to run, this is useful to debugging memory issues where your memory configuration is incorrect typically.

This is true.

Quoted 3 lines

Either way is fine with me (accepting or dropping) the patch, though there is probably minimal impact in just accepting such a change.

Will leave the decision to you then.

Thanks,

Ray