AGX Orin 64G UART2(C58, C56) can not work in Jetpack 5.1.1

I enable serial@3140000 in two device trees “tegra234-cvm-p3701.dtsi.”

serial@3140000 {
	status = "okay";
};

=============
After flashing, I could get the ttyTHS4

nvidia@tegra-ubuntu:~$ sudo dmesg | grep ttyTHS4
[ 9.232086] 3140000.serial: ttyTHS4 at MMIO 0x3140000 (irq = 68, base_baud = 0) is a TEGRA_UART

Then, I tried to read the GPS NMEA data from ttyTHS4 with baud rate of 9600 bps. But there is no data input.

The same carried board with AGX ORIN 32G in Jetpack 5.0.2 works fine. So, is there any difference between Jetpack 5.0.2 and 5.1.1 in serial@3140000?

Hi vince.cheng,

Are you using the devkit or custom board?

This issue is caused from Uart-E and Uart-I are pinmuxed in JP5.1.1.
You could modify pinmux configuration for PY.05, PY.06 to use uarte.

Or just simply run the following command and test again.

sudo busybox devmem 0x0243d070 w 0x400
sudo busybox devmem 0x0243d078 w 0x450
sudo busybox devmem 0x0243d080 w 0x400
sudo busybox devmem 0x0243d088 w 0x450

Hi Kevin,
Thanks for your reply.

  • List item

We use our designed board.

  • List item

I tested the command and could read the NMAE data from ttyTHS4.
I also changed the pinmux from parti to uarte and it worked fine.

		uart5_tx_py5 {
			nvidia,pins = "uart5_tx_py5";
			nvidia,function = "uarte";
			nvidia,pull = <TEGRA_PIN_PULL_NONE>;
			nvidia,tristate = <TEGRA_PIN_DISABLE>;
			nvidia,enable-input = <TEGRA_PIN_DISABLE>;
			nvidia,lpdr = <TEGRA_PIN_DISABLE>;
		};

		uart5_rx_py6 {
			nvidia,pins = "uart5_rx_py6";
			nvidia,function = "uarte";
			nvidia,pull = <TEGRA_PIN_PULL_NONE>;
			nvidia,tristate = <TEGRA_PIN_ENABLE>;
			nvidia,enable-input = <TEGRA_PIN_ENABLE>;
			nvidia,lpdr = <TEGRA_PIN_DISABLE>;

=========

  • List item

But I am so worried about the uarti. I found that it was still assigned to SBSA.

31d0000.serial: ttyAMA0 at MMIO 0x31d0000 (irq = 68, base_baud = 0) is a SBSA

Is it the new driver in Jetpack 5.1.1?
Could I disable this driver?
Our board refers to AGX ORIN EVB and is based on Jetpack 5.0.2 to design. If I ignore SBSA or disable it, is it any effect?

Yes, this is second debug console implemented in JP5.1.1.
You should also remove the usage of /dev/ttyAMA0 in kernel cmdline.
There should be no effect if you want to use /dev/ttyTHS4 rather than /dev/ttyAMA0.

Hi Kevin,
Thanks for your reply.

I set disabled in these two files.
+++ b/hardware/nvidia/platform/t23x/concord/kernel-dts/tegra234-p3701-0000-p3737-0000.dts
@@ -235,6 +235,6 @@
};

    serial@31d0000 {
  •           status = "okay";
    
  •           status = "disabled";
      };
    

};
diff --git a/hardware/nvidia/platform/t23x/concord/kernel-dts/tegra234-p3701-0004-p3737-0000.dts b/hardware/nvidia/platform/t23x/concord/kernel-dts/tegra234-p3701-0004-p3737-0000.dts
index 4c31511db…3c087e385 100644
— a/hardware/nvidia/platform/t23x/concord/kernel-dts/tegra234-p3701-0004-p3737-0000.dts
+++ b/hardware/nvidia/platform/t23x/concord/kernel-dts/tegra234-p3701-0004-p3737-0000.dts
@@ -235,6 +235,6 @@
};

    serial@31d0000 {
  •           status = "okay";
    
  •           status = "disabled";
      };
    

};

I also delete, ‘console=ttyAMA0,115200’ in p3701.conf.common

Then the ttyAMA0 is not dispersed.

Thanks for your help. I think that this topic can be closed.

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.