kdb347: Disable Serial Debug Console on Connect Tech TX2/TX1 Carriers

Introduction

The TX2/TX1 by default will output the serial debug terminal to /dev/ttyS0. As such, if this UART port is required by an application or external hardware it can be disabled. In most cases /dev/ttyS0 is assigned to UART0 on Connect Tech’s carrier boards. For additional information about the UART interface on the TX1 carriers please refer to the following KDB:

KDB346: Remote Connection on Connect Tech TX1 Carriers

Note: Many of the commands shown in this guide will require you to be the root user or to use sudo

TX2 L4T 32.4.2+

Disable

The serial console can be disabled after flashing by editing the /boot/extlinux/extlinux.conf file on the Jetson TX2.

L4T 32.4.2

Output the contents of /proc/cmdline:

cat /proc/cmdline

Open the /boot/extlinux/extlinux.conf file to be edited:

vim /boot/extlinux/extlinux.conf

Comment out the append line with #:

#APPEND ${cbootargs} quiet root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 console=ttyS0,115200n8 console=tty0 OS=l4t fbcon=map:0 net.ifnames=0

On the line below, add the contents output from the cat /proc/cmdline to APPEND. Example:

APPEND console=ttyS0,115200 androidboot.presilicon=true firmware_class.path=/etc/firmware root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 console=ttyS0,115200n8 console=tty0 OS=l4t fbcon=map:0 net.ifnames=0 video=tegrafb no_console_suspend=1 earlycon=uart8250,mmio32,0x3100000 nvdumper_reserved=0x2772e0000 gpt tegra_fbmem2=0x800000@0x9607d000 lut_mem2=0x2008@0x9607a000 usbcore.old_scheme_first=1 tegraid=18.1.2.0.0 maxcpus=6 boot.slot_suffix= boot.ratchetvalues=0.2031647.1 bl_prof_dataptr=0x10000@0x275840000 sdhci_tegra.en_boot_part_access=1 quiet root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 console=ttyS0,115200n8 console=tty0 OS=l4t fbcon=map:0 net.ifnames=0

Delete all portions from APPEND line that contain console=ttyS0,115200. There will be one at the start but there may be more:

APPEND androidboot.presilicon=true firmware_class.path=/etc/firmware root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 console=tty0 OS=l4t fbcon=map:0 net.ifnames=0 video=tegrafb no_console_suspend=1 earlycon=uart8250,mmio32,0x3100000 nvdumper_reserved=0x2772e0000 gpt tegra_fbmem2=0x800000@0x9607d000 lut_mem2=0x2008@0x9607a000 usbcore.old_scheme_first=1 tegraid=18.1.2.0.0 maxcpus=6 boot.slot_suffix= boot.ratchetvalues=0.2031647.1 bl_prof_dataptr=0x10000@0x275840000 sdhci_tegra.en_boot_part_access=1 quiet root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 console=tty0 OS=l4t fbcon=map:0 net.ifnames=0

Reboot the system

Check /proc/cmdline again. There should be no reference to console=ttyS0,115200

The following is an example of what the /boot/extlinux/extlinux.conf file can look like when complete. There will be differences on the APPEND line based on the carrier used:

TIMEOUT 30
DEFAULT primary
MENU TITLE L4T boot options
LABEL primary
MENU LABEL primary kernel
LINUX /boot/Image
INITRD /boot/initrd
# APPEND ${cbootargs} quiet root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 console=ttyS0,115200n8 console=tty0 OS=l4t fbcon=map:0 net.ifnames=0
APPEND androidboot.presilicon=true firmware_class.path=/etc/firmware root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 console=tty0 OS=l4t fbcon=map:0 net.ifnames=0 video=tegrafb no_console_suspend=1 earlycon=uart8250,mmio32,0x3100000 nvdumper_reserved=0x2772e0000 gpt tegra_fbmem2=0x800000@0x9607d000 lut_mem2=0x2008@0x9607a000 usbcore.old_scheme_first=1 tegraid=18.1.2.0.0 maxcpus=6 boot.slot_suffix= boot.ratchetvalues=0.2031647.1 bl_prof_dataptr=0x10000@0x275840000 sdhci_tegra.en_boot_part_access=1 quiet root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 console=tty0 OS=l4t fbcon=map:0 net.ifnames=0

TX2 L4T 28.1 to 32.3.1

Disable

The serial console can only be disabled before flashing, this can be done by editing the cti.conf.common file in your Jetpack install directory after our BSP has been installed.

KDB350: CTI-L4T NVIDIA® Jetson™ TX2/TX1 Board Support Package Release Notes

L4T 28.2

Navigate to the Linux_for_Tegra directory:

cd <install_dir>/64_TX2/Linux_for_Tegra/

L4T 28.1

Navigate to the Linux_for_Tegra_TX2 directory:

cd <install_dir>/64_TX2/Linux_for_Tegra_TX2/

Open cti.conf.common with a text editor and change the following line from:

CMDLINE_ADD="console=ttyS0,115200n8 console=tty0 OS=l4t fbcon=map:0 net.ifnames=0";

To the following, then save and exit:

CMDLINE_ADD="console=tty0 OS=l4t fbcon=map:0 net.ifnames=0";

Flash your TX2:

./flash.sh <profile> mmcblk0p1

Disclaimer

The cti.conf.common file is sensitive to changes if there is an error in this file the system will not boot correctly, additionally you will no longer be able to access the TX2 module through the serial debug after this modification. Please ensure when changing this file that the file is appended with only what is described in this document.

TX1 L4T 28.1+

Disable

The serial console can only be disabled before flashing, this can be done by editing the <profile>.conf file in your Jetpack install directory after our BSP has been installed.

KDB350: CTI-L4T NVIDIA® Jetson™ TX2/TX1 Board Support Package Release Notes

L4T 28.2

Navigate to the Linux_for_Tegra directory:

cd <install_dir>/64_TX1/Linux_for_Tegra/

L4T 28.1

Navigate to the Linux_for_Tegra_TX1 directory:

cd <install_dir>/64_TX1/Linux_for_Tegra_TX1/

Open cti.conf.common with a text editor and change the following line from:

CMDLINE_ADD="console=ttyS0,115200n8 console=tty0 OS=l4t fbcon=map:0 net.ifnames=0";

To the following, then save and exit:

CMDLINE_ADD="console=tty0 OS=l4t fbcon=map:0 net.ifnames=0";

Flash your TX1:

./flash.sh <profile> mmcblk0p1

Disclaimer

The <profile>.conf file is sensitive to changes if there is an error in this file the system will not boot correctly, additionally you will no longer be able to access the TX1 module through the serial debug after this modification. Please ensure when changing this file that the file is appended with only what is described in this document.

TX1 L4T 24.2.1

Disable

When operating the TX1 proceed as root in the terminal, and locate the ttys0.conf file in /etc/init/. When this file is found, copy it to another directory as it may be needed later if debug terminal is desired. Now remove the ttyS0.conf file from /etc/init/ and reboot, UART0 ttyS0 should now be freed from the debug serial output. You will now need to remove, “console=ttyS0,115200n8” from the “/boot/extlinux/extlinux.conf”.  If you require the debug terminal you will need to add this string back to the extlinux.conf.

Disclaimer

The extlinux.conf file is sensitive to changes if there is an error in this file the system will not boot correctly, additionally you will no longer be able to access the TX1 module through the serial debug after this modification. Please ensure when changing this file that the file is appended with only what is described in this document.

Go to Top