Skip to contentSkip to conversation

arm64: tegra: Update console for Jetson Xavier and Orin

PATCH In review Jon Hunter 2 participants 3 messages Oct 28, 2022

Subsystems (2)
lore
Share & tools
lore

Jon Hunter

author maintainer
#0 lore raw

PATCH 1/1 arm64: tegra: Update console for Jetson Xavier and Orin

The Tegra Combined UART (TCU) is the default serial interface for Jetson Xavier and Orin platforms and so update the bootargs for these platforms to use the TCU.

---
 arch/arm64/boot/dts/nvidia/tegra194-p2888.dtsi                | 2 +-
 arch/arm64/boot/dts/nvidia/tegra194-p3668.dtsi                | 2 +-
 arch/arm64/boot/dts/nvidia/tegra234-p3737-0000+p3701-0000.dts | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)
arch/arm64/boot/dts/nvidia/tegra194-p2888.dtsi +1 -1
index 3837ebc67c8e..ccdb32c67861 100644
@@ -23,7 +23,7 @@ aliases {
 	};
 
 	chosen {
-		bootargs = "console=ttyS0,115200n8";
+		bootargs = "console=ttyTCU0,115200n8";
 		stdout-path = "serial0:115200n8";
 	};
 
arch/arm64/boot/dts/nvidia/tegra194-p3668.dtsi +1 -1
index 916ea3419ee5..f147324d72f3 100644
@@ -20,7 +20,7 @@ aliases {
 	};
 
 	chosen {
-		bootargs = "console=ttyS0,115200n8";
+		bootargs = "console=ttyTCU0,115200n8";
 		stdout-path = "serial0:115200n8";
 	};
 
arch/arm64/boot/dts/nvidia/tegra234-p3737-0000+p3701-0000.dts +1 -1
index df703fb0cfff..96aa2267b06d 100644
@@ -2025,7 +2025,7 @@ hda@3510000 {
 	};
 
 	chosen {
-		bootargs = "console=ttyS0,115200n8";
+		bootargs = "console=ttyTCU0,115200n8";
 		stdout-path = "serial0:115200n8";
 	};
 
Signature · 1 line
2.25.1
#1 lore raw
Quoted 10 lines · Jon Hunter

The Tegra Combined UART (TCU) is the default serial interface for Jetson Xavier and Orin platforms and so update the bootargs for these platforms to use the TCU.

---
 arch/arm64/boot/dts/nvidia/tegra194-p2888.dtsi                | 2 +-
 arch/arm64/boot/dts/nvidia/tegra194-p3668.dtsi                | 2 +-
 arch/arm64/boot/dts/nvidia/tegra234-p3737-0000+p3701-0000.dts | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

I'm a little confused now. You're certainly right that the TCU is the serial interface, but then why haven't we seen any fallout from this? That is, why does console=ttyS0,115200n8 still work just fine?

Looking a little more into stdout-path (which we already point to the TCU), that ends up adding TCU as the preferred console already. So I wonder if we really need to set the console here at all.

Do you see any difference in behavior after this patch? Does it fix anything? Could you perhaps try to remove this option altogether and see if that makes a difference?

Thierry

Quoted 43 lines
arch/arm64/boot/dts/nvidia/tegra194-p2888.dtsi +1 -1
index 3837ebc67c8e..ccdb32c67861 100644
@@ -23,7 +23,7 @@ aliases {
 	};
 
 	chosen {
-		bootargs = "console=ttyS0,115200n8";
+		bootargs = "console=ttyTCU0,115200n8";
 		stdout-path = "serial0:115200n8";
 	};
 
arch/arm64/boot/dts/nvidia/tegra194-p3668.dtsi +1 -1
index 916ea3419ee5..f147324d72f3 100644
@@ -20,7 +20,7 @@ aliases {
 	};
 
 	chosen {
-		bootargs = "console=ttyS0,115200n8";
+		bootargs = "console=ttyTCU0,115200n8";
 		stdout-path = "serial0:115200n8";
 	};
 
arch/arm64/boot/dts/nvidia/tegra234-p3737-0000+p3701-0000.dts +1 -1
index df703fb0cfff..96aa2267b06d 100644
@@ -2025,7 +2025,7 @@ hda@3510000 {
 	};
 
 	chosen {
-		bootargs = "console=ttyS0,115200n8";
+		bootargs = "console=ttyTCU0,115200n8";
 		stdout-path = "serial0:115200n8";
 	};
 
Signature · 1 line
2.25.1
author maintainer
#2 lore raw
Quoted 12 lines · Thierry Reding
Quoted 10 lines · Jon Hunter

The Tegra Combined UART (TCU) is the default serial interface for Jetson Xavier and Orin platforms and so update the bootargs for these platforms to use the TCU.

---
  arch/arm64/boot/dts/nvidia/tegra194-p2888.dtsi                | 2 +-
  arch/arm64/boot/dts/nvidia/tegra194-p3668.dtsi                | 2 +-
  arch/arm64/boot/dts/nvidia/tegra234-p3737-0000+p3701-0000.dts | 2 +-
  3 files changed, 3 insertions(+), 3 deletions(-)
Quoted 3 lines

I'm a little confused now. You're certainly right that the TCU is the serial interface, but then why haven't we seen any fallout from this? That is, why does console=ttyS0,115200n8 still work just fine?

For Jetson Xavier platforms, ttyS0 is the UART on the 40-pin header and yes could be used, but probably not obvious. I thought about keeping both and we could if we wanted. I certainly have not used ttyS0 on Orin.

Quoted 7 lines

Looking a little more into stdout-path (which we already point to the TCU), that ends up adding TCU as the preferred console already. So I wonder if we really need to set the console here at all.

Do you see any difference in behavior after this patch? Does it fix anything? Could you perhaps try to remove this option altogether and see if that makes a difference?

I wondered about that, but I was not seeing any console until the rootfs was mounted. However, looking at of_console_check() it appears that the cmdline takes precedence over stdout-path. OK, let me try removing the bootargs all together.

Jon

Signature · 1 line
nvpublic