diff mbox series

arm64: tegra: Update console for Jetson Xavier and Orin

Message ID 20221028123556.134435-1-jonathanh@nvidia.com
State Accepted
Headers show
Series arm64: tegra: Update console for Jetson Xavier and Orin | expand

Commit Message

Jon Hunter Oct. 28, 2022, 12:35 p.m. UTC
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.

Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
---
 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(-)

Comments

Thierry Reding Oct. 28, 2022, 2:17 p.m. UTC | #1
On Fri, Oct 28, 2022 at 01:35:56PM +0100, Jon Hunter wrote:
> 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.
> 
> Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
> ---
>  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

> 
> diff --git a/arch/arm64/boot/dts/nvidia/tegra194-p2888.dtsi b/arch/arm64/boot/dts/nvidia/tegra194-p2888.dtsi
> index 3837ebc67c8e..ccdb32c67861 100644
> --- a/arch/arm64/boot/dts/nvidia/tegra194-p2888.dtsi
> +++ b/arch/arm64/boot/dts/nvidia/tegra194-p2888.dtsi
> @@ -23,7 +23,7 @@ aliases {
>  	};
>  
>  	chosen {
> -		bootargs = "console=ttyS0,115200n8";
> +		bootargs = "console=ttyTCU0,115200n8";
>  		stdout-path = "serial0:115200n8";
>  	};
>  
> diff --git a/arch/arm64/boot/dts/nvidia/tegra194-p3668.dtsi b/arch/arm64/boot/dts/nvidia/tegra194-p3668.dtsi
> index 916ea3419ee5..f147324d72f3 100644
> --- a/arch/arm64/boot/dts/nvidia/tegra194-p3668.dtsi
> +++ b/arch/arm64/boot/dts/nvidia/tegra194-p3668.dtsi
> @@ -20,7 +20,7 @@ aliases {
>  	};
>  
>  	chosen {
> -		bootargs = "console=ttyS0,115200n8";
> +		bootargs = "console=ttyTCU0,115200n8";
>  		stdout-path = "serial0:115200n8";
>  	};
>  
> diff --git a/arch/arm64/boot/dts/nvidia/tegra234-p3737-0000+p3701-0000.dts b/arch/arm64/boot/dts/nvidia/tegra234-p3737-0000+p3701-0000.dts
> index df703fb0cfff..96aa2267b06d 100644
> --- a/arch/arm64/boot/dts/nvidia/tegra234-p3737-0000+p3701-0000.dts
> +++ b/arch/arm64/boot/dts/nvidia/tegra234-p3737-0000+p3701-0000.dts
> @@ -2025,7 +2025,7 @@ hda@3510000 {
>  	};
>  
>  	chosen {
> -		bootargs = "console=ttyS0,115200n8";
> +		bootargs = "console=ttyTCU0,115200n8";
>  		stdout-path = "serial0:115200n8";
>  	};
>  
> -- 
> 2.25.1
>
Jon Hunter Oct. 28, 2022, 2:45 p.m. UTC | #2
On 28/10/2022 15:17, Thierry Reding wrote:
> On Fri, Oct 28, 2022 at 01:35:56PM +0100, Jon Hunter wrote:
>> 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.
>>
>> Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
>> ---
>>   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?

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.

> 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
diff mbox series

Patch

diff --git a/arch/arm64/boot/dts/nvidia/tegra194-p2888.dtsi b/arch/arm64/boot/dts/nvidia/tegra194-p2888.dtsi
index 3837ebc67c8e..ccdb32c67861 100644
--- a/arch/arm64/boot/dts/nvidia/tegra194-p2888.dtsi
+++ b/arch/arm64/boot/dts/nvidia/tegra194-p2888.dtsi
@@ -23,7 +23,7 @@  aliases {
 	};
 
 	chosen {
-		bootargs = "console=ttyS0,115200n8";
+		bootargs = "console=ttyTCU0,115200n8";
 		stdout-path = "serial0:115200n8";
 	};
 
diff --git a/arch/arm64/boot/dts/nvidia/tegra194-p3668.dtsi b/arch/arm64/boot/dts/nvidia/tegra194-p3668.dtsi
index 916ea3419ee5..f147324d72f3 100644
--- a/arch/arm64/boot/dts/nvidia/tegra194-p3668.dtsi
+++ b/arch/arm64/boot/dts/nvidia/tegra194-p3668.dtsi
@@ -20,7 +20,7 @@  aliases {
 	};
 
 	chosen {
-		bootargs = "console=ttyS0,115200n8";
+		bootargs = "console=ttyTCU0,115200n8";
 		stdout-path = "serial0:115200n8";
 	};
 
diff --git a/arch/arm64/boot/dts/nvidia/tegra234-p3737-0000+p3701-0000.dts b/arch/arm64/boot/dts/nvidia/tegra234-p3737-0000+p3701-0000.dts
index df703fb0cfff..96aa2267b06d 100644
--- a/arch/arm64/boot/dts/nvidia/tegra234-p3737-0000+p3701-0000.dts
+++ b/arch/arm64/boot/dts/nvidia/tegra234-p3737-0000+p3701-0000.dts
@@ -2025,7 +2025,7 @@  hda@3510000 {
 	};
 
 	chosen {
-		bootargs = "console=ttyS0,115200n8";
+		bootargs = "console=ttyTCU0,115200n8";
 		stdout-path = "serial0:115200n8";
 	};