How to use Jetson nano UART to communicate with other MCU?

Hi
I am going to use UART on Jetson nano to communicate with other MCU.
I did the test below, it does not work:

  1. Plug an USB to serial port converter to my PC where putty is running at serial port 115200, 8, 0, 1, 0.
  2. connect 9 Pins serial port pin 2 (RX) to Jetson nano carry board 40 pins pin 8 (TX), serial port pin 3(TX) to carry board 40 pins pin 10 (RX), serial port pin 5 (GND) to carry board pin 9 (GND).
  3. Open Putty on Jetson nano to open serial port at 115200, 8, 0, 1, 0. and tried the device name at /dev/ttyTHS1, /dev/ttyTHS2, /dev/ttyS0, /dev/ttyS1, /dev/ttyS2/, /dev/ttyS3. All of them have the same Putty message “Unable to open serial port”.
    Would you please let me know how can I use Jetson nano UART to communicate with other MCU?
    Thanks

CX

Some background might help…

Accessing the serial UART from the Linux side means accessing a device special file in “/dev”. The files which exist in “/dev” are the result of a driver and is not a real file. What do you see from this?
ls -l /dev/ttyS* /dev/ttyTHS*

Briefly, the number you see is related to the specific hardware. Let’s say you see these:

/dev/ttyS1
/dev/ttyTHS1

Because these are both “1” (and this applies mostly only to Jetsons which have two drivers for the same hardware), then this is a single UART. The naming convention with “ttyS1” is from a legacy driver, and the naming convention with “ttyTHS1” is from the NVIDIA driver which is the “Tegra High Speed” driver (it uses DMA). You’d only use one designation of file or the other, and would not mix them.

In that “ls -l” command you will also see user and group ownership. Normally it would be one of these:

crw-rw---- 1 root dialout
crw--w---- 1 root tty

Note that in each case the user/owner is “root”, but the “group” can change between “dialout” and “tty”. If the ownership of any driver on that particular UART is “tty”, then you cannot use this device. Such devices are already used by the serial console. You would need to go through steps to disable a serial console before you could use this for your own custom purposes, and I recommend not doing that. Other UART pins are available in most cases though, so it would just be a matter of picking different pins (and the device special file would also change the number).

Unless you run as root, then there is a good chance you would be denied access. The trick here is to add your user name to the list of “group” memberships…add your user to group “dialout” (don’t add to group “console”, this would be wrong, you are not a system console). If your user name is “myself”, then this would add your user to group “dialout”:
sudo usermod -aG dialout myself

I don’t know which particular pins are which device on your Nano, but this would be in the docs (might depend on carrier board revision). Do avoid devices which are group “tty”.

Thank you very much.
This is the output of ls command:
image
Based on your info, the /dev/ttyTHS2 and /dev/ttyS2 can be used to communicate with other MCU.
I tried both SDK carry board on /dev/ttyS2 and /dev/ttyTHS2, none of them is working. This is the 40 pins info


i.e, I connect it to UART_2.
Any other suggestion?
Thanks

CX

I don’t follow the specific “pin versus /dev file” since there is so much hardware involved, but if the files “/dev/ttyS2” and “/dev/ttyTHS2” exist, then it implies they are there and probably using the default settings you mentioned before, 115200 8N1. I don’t know the mapping between a pin “UART_2”, but I think someone (who is current on PINMUX) can now answer the question as to which UART designation goes the “/dev/ttyTHS2”.

Thanks,
I have sort out one issue of Putty can’t open /dev/ttyTHS2 by adding user into the dialout group.
I did a simple code, it can open the /dev/ttyTHS2 device and send a text out successfully. But, on my laptop Putty terminal, it does not receive any message.
It has another issue of the /dev/ttyTHS2 does not map to UART_2 on carry board 40 pins.
Anyone knew which /dev/tty* mapped to UART_2 on carry board 40 pins? or /dev/ttyTHS2 mapped which pins on carry board 40 pins? or any document I can refer to? or any other suggestion?
Thanks

CX

Before you start PuTTY as your regular user add that user to the dialout group. Only needs to be done once. From then on your user can use anything the account used to be able to work with, plus can also use anything which is a dialout group. This is a property of the account you use, not the application you run (i.e., PuTTY is run as the person who starts it).

Question for NVIDIA then remains: Which device special file maps to UART_2? I don’t know the answer to that.

Thanks.
Any suggestion from NVIDIA team?

Based on info below from the file of NV_Jetson_Nano_DeveloperKit_Users_Pinmux_Configuration.xlsm

The UART2 on carry board 40 pins mapped to /dev/ttyTHS1.
Based on info from Jetson nano (see below), the /dev/ttyTHS1 is used for console debug, is it?
image

On carry board rev B01, the pin 3 and 4 on J50 are used for serial console. I don’t it mapped to which /dev/tty*, but I can see it output debug message during boots up.

My questions are:

  1. why it has 2 debug serial console?
  2. How to change /dev/ttyTHS1 from tty group to dialout group?
    Thanks

The screenshot showing ttyTHS1 with group “tty” is indeed a serial console.

I’m not sure about why two different UARTs show as console, but as background to add clarity, one has to know about the history of UART serial consoles…

The bootloader software of Jetsons began a long time ago, and was “mostly” just ARM-capable publicly available software. The “ttyS0” (or any “ttyS#” name format) uses a standard driver which has been around a long time. Such drivers work with any 16450/16550/16550a UART. Keep in mind that this is the driver the boot software has.

NVIDIA’s UARTs can run in different modes and can essentially be told to act like any of the above 16xxx series UART. The NVIDIA UART can also run using DMA without loading down the CPU. To use the mode which works with DMA you need the NVIDIA driver (the driver with the format of “ttyTHS#”). Boot software does not have this driver.

If you want a serial console log to be continuous, without missing anything due to switching drivers in the middle of use, then you have to use a single driver for the entire boot process, both inside of Linux and before this inside the boot chain. Continuity of service for serial console, when transitioning from boot software to the Linux kernel, will only work with the legacy “ttyS#” driver. Both drivers can exist, but only one should be used at a time.

As to why the “ttyS0” UART and the “ttyTHS1” UART are both consoles I do not know. This should not be what happens since one would expect this to either be the pair “ttyS0/ttyTHS0”, or the pair “ttyS1/ttyTHS1”, and not be mixed as “ttyS0/ttyTHS1”.

There are two places this might have gone wrong: Either in the device tree, or in arguments to the kernel from extlinux.conf (or both).

The device tree has a node in it, “chosen->bootargs”. Bootargs are passed to the kernel via the boot software, and the extlinux.conf key/value pair “APPEND” appends to the end of this. The tree is what is used during bootloader stage setup, the final arguments passed to the Linux kernel as it boots is what Linux uses. What do you see from:

grep -H 'APPEND' /boot/extlinux/extlinux.conf
cat /proc/device-tree/chosen/bootargs
cat /proc/cmdline

Note in “extlinux.conf” that the APPEND of “${cbootargs}” has the content which the boot stages are passing on. The “cmdline” is what the kernel sees as a final argument as a whole at the moment it starts.

Btw, if you’ve made any changes to the boot software or the device tree, then this would be the place to start for looking at why there is a mix of two different UARTs (not just two drivers on one UART) with tty group. My guess is that a device tree edit would fix this.

Thank you very much for your kind reply.
The Jetson nano development kit boots up from MicroSD card which flashed with the jetson-nano-jp46-sd-card-image.zip without any modification except added a WIFI adaptor and config it as an access point.
This is output from your suggested command:

What can I do next?
Thanks

The use as serial console for ttyS0 is from the argument passed to the Linux kernel in the “APPEND” of “extlinux.conf”. Note this:
console=ttyS0,115200n8

A similar ttyS0 is in the device tree bootargs node.

It isn’t obvious where the “ttyTHS1” becomes group “tty” (serial console). Without a screen shot, e.g., using ssh to log in and then mouse copy paste, can you post a copy of the output of “dmesg”? You can highlight what you paste into the thread, and then click on the “code” icon (looks like “</>”). This will format the log and add scrollbars. I’m hoping that within this it mentions ttyTHS1 to see where it is being set as a serial console.

Below is the screen copy of “dmesg”

ion@ion-desktop:~$ dmesg
[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 4.9.253-tegra (buildbrain@mobile-u64-5496-d5000) (gcc version 7.3.1 20180425 [linaro-7.3-2018.05 revision d29120a424ecfbc167ef90065c0eeb7f91977701] (Linaro GCC 7.3-2018.05) ) #1 SMP PREEMPT Mon Jul 26 12:13:06 PDT 2021
[    0.000000] Boot CPU: AArch64 Processor [411fd071]
[    0.000000] OF: fdt:memory scan node memory@80000000, reg size 32,
[    0.000000] OF: fdt: - 80000000 ,  7ee00000
[    0.000000] OF: fdt: - 100000000 ,  7f200000
[    0.000000] Found tegra_fbmem: 00800000@92ca9000
[    0.000000] earlycon: uart8250 at MMIO32 0x0000000070006000 (options '')
[    0.000000] bootconsole [uart8250] enabled
[    0.000000] OF: reserved mem: initialized node vpr-carveout, compatible id nvidia,vpr-carveout
[    0.000000] OF: reserved mem: initialized node iram-carveout, compatible id nvidia,iram-carveout
[    0.000000] OF: reserved mem: initialized node ramoops_carveout, compatible id nvidia,ramoops
[    0.000000] cma: Reserved 64 MiB at 0x00000000fac00000
[    0.000000] On node 0 totalpages: 1039872
[    0.000000]   DMA zone: 8192 pages used for memmap
[    0.000000]   DMA zone: 0 pages reserved
[    0.000000]   DMA zone: 519168 pages, LIFO batch:31
[    0.000000]   Normal zone: 8136 pages used for memmap
[    0.000000]   Normal zone: 520704 pages, LIFO batch:31
[    0.000000] psci: probing for conduit method from DT.
[    0.000000] psci: PSCIv1.0 detected in firmware.
[    0.000000] psci: Using standard PSCI v0.2 function IDs
[    0.000000] psci: MIGRATE_INFO_TYPE not supported.
[    0.000000] psci: SMC Calling Convention v1.1
[    0.000000] percpu: Embedded 24 pages/cpu s57624 r8192 d32488 u98304
[    0.000000] pcpu-alloc: s57624 r8192 d32488 u98304 alloc=24*4096
[    0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3 
[    0.000000] CPU features: enabling workaround for ARM erratum 832075
[    0.000000] Speculative Store Bypass Disable mitigation not required
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 1023544
[    0.000000] Kernel command line: tegraid=21.1.2.0.0 ddr_die=4096M@2048M section=512M memtype=0 vpr_resize usb_port_owner_info=0 lane_owner_info=0 emc_max_dvfs=0 touch_id=0@63 video=tegrafb no_console_suspend=1 console=ttyS0,115200n8 debug_uartport=lsport,4 earlyprintk=uart8250-32bit,0x70006000 maxcpus=4 usbcore.old_scheme_first=1 lp0_vec=0x1000@0xff780000 core_edp_mv=1125 core_edp_ma=4000 gpt tegra_fbmem=0x800000@0x92ca9000 is_hdmi_initialised=1  earlycon=uart8250,mmio32,0x70006000  root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 console=ttyS0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0 quiet root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 console=ttyS0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0 
[    0.000000] log_buf_len individual max cpu contribution: 32768 bytes
[    0.000000] log_buf_len total cpu_extra contributions: 98304 bytes
[    0.000000] log_buf_len min size: 32768 bytes
[    0.000000] log_buf_len: 131072 bytes
[    0.000000] early log buf free: 29760(90%)
[    0.000000] PID hash table entries: 4096 (order: 3, 32768 bytes)
[    0.000000] Dentry cache hash table entries: 524288 (order: 10, 4194304 bytes)
[    0.000000] Inode-cache hash table entries: 262144 (order: 9, 2097152 bytes)
[    0.000000] Memory: 3560280K/4159488K available (15358K kernel code, 2956K rwdata, 6692K rodata, 8640K init, 612K bss, 124072K reserved, 475136K cma-reserved)
[    0.000000] Virtual kernel memory layout:
[    0.000000]     modules : 0xffffff8000000000 - 0xffffff8008000000   (   128 MB)
[    0.000000]     vmalloc : 0xffffff8008000000 - 0xffffffbebfff0000   (   250 GB)
[    0.000000]       .text : 0xffffff8008080000 - 0xffffff8008f80000   ( 15360 KB)
[    0.000000]     .rodata : 0xffffff8008f80000 - 0xffffff8009610000   (  6720 KB)
[    0.000000]       .init : 0xffffff8009610000 - 0xffffff8009e80000   (  8640 KB)
[    0.000000]       .data : 0xffffff8009e80000 - 0xffffff800a163008   (  2957 KB)
[    0.000000]        .bss : 0xffffff800a163008 - 0xffffff800a1fc0b4   (   613 KB)
[    0.000000]     fixed   : 0xffffffbefe7fd000 - 0xffffffbefec00000   (  4108 KB)
[    0.000000]     PCI I/O : 0xffffffbefee00000 - 0xffffffbeffe00000   (    16 MB)
[    0.000000]     vmemmap : 0xffffffbf00000000 - 0xffffffc000000000   (     4 GB maximum)
[    0.000000]               0xffffffbf00000000 - 0xffffffbf03fc8000   (    63 MB actual)
[    0.000000]     memory  : 0xffffffc000000000 - 0xffffffc0ff200000   (  4082 MB)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[    0.000000] Preemptible hierarchical RCU implementation.
[    0.000000] 	Build-time adjustment of leaf fanout to 64.
[    0.000000] 	RCU restricting CPUs from NR_CPUS=64 to nr_cpu_ids=4.
[    0.000000] RCU: Adjusting geometry for rcu_fanout_leaf=64, nr_cpu_ids=4
[    0.000000] NR_IRQS:64 nr_irqs:64 0
[    0.000000] /interrupt-controller@60004000: 192 interrupts forwarded to /interrupt-controller
[    0.000000] t210 clock and reset probe
[    0.000000] tegra-pmc: get_secure_pmc_setting: done secure_pmc=1
[    0.000000] clk_cbus_recalc_rate: no gbus parent
[    0.000000] clk_cbus_recalc_rate: no gbus parent
[    0.000000] clk_cbus_recalc_rate: no gbus parent
[    0.000000] clk_cbus_recalc_rate: no gbus parent
[    0.000000] clk_cbus_recalc_rate: no gbus parent
[    0.000000] arm_arch_timer: Architected cp15 timer(s) running at 19.20MHz (phys).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x46d987e47, max_idle_ns: 440795202767 ns
[    0.000007] sched_clock: 56 bits at 19MHz, resolution 52ns, wraps every 4398046511078ns
[    0.001704] Console: colour dummy device 80x25
[    0.001715] console [tty0] enabled
[    0.001721] bootconsole [uart8250] disabled
[    0.001742] kmemleak: Kernel memory leak detector disabled
[    0.001759] Calibrating delay loop (skipped), value calculated using timer frequency.. 38.40 BogoMIPS (lpj=76800)
[    0.001773] pid_max: default: 32768 minimum: 301
[    0.002219] Security Framework initialized
[    0.002443] Mount-cache hash table entries: 8192 (order: 4, 65536 bytes)
[    0.002451] Mountpoint-cache hash table entries: 8192 (order: 4, 65536 bytes)
[    0.003612] ftrace: allocating 47077 entries in 184 pages
[    0.172985] sched-energy: CPU device node has no sched-energy-costs
[    0.173017] ASID allocator initialised with 65536 entries
[    0.211913] tegra-id: chipid=22117.
[    0.211928] tegra-id: opt_subrevision=0.
[    0.211945] Tegra Speedo/IDDQ fuse revision 4
[    0.211950] Tegra: CPU Speedo ID 9, SoC Speedo ID 0, GPU Speedo ID 2
[    0.211955] Tegra: CPU Process ID 0, SoC Process ID 0, GPU Process ID 0
[    0.211960] Tegra: CPU Speedo Value 2035, SoC Speedo Value 1905, GPU Speedo Value 2030
[    0.211963] Tegra: CPU IDDQ Value 1640, SoC IDDQ Value 1816, GPU IDDQ Value 2250
[    0.211983] Tegra Revision: A02 SKU: 0x8f CPU Process: 0 SoC Process: 0
[    0.212001] DTS File Name: /dvs/git/dirty/git-master_linux/kernel/kernel-4.9/arch/arm64/boot/dts/../../../../../../hardware/nvidia/platform/t210/porg/kernel-dts/tegra210-p3448-0000-p3449-0000-b00.dts
[    0.212007] DTB Build time: Jul 26 2021 12:16:29
[    0.261106] CPU1: Booted secondary processor [411fd071]
[    0.293003] CPU2: Booted secondary processor [411fd071]
[    0.324977] CPU3: Booted secondary processor [411fd071]
[    0.325065] Brought up 4 CPUs
[    0.325072] SMP: Total of 4 processors activated.
[    0.325081] CPU features: detected feature: 32-bit EL0 Support
[    0.325348] CPU: All CPU(s) started at EL2
[    0.325365] alternatives: patching kernel code
[    0.333768] devtmpfs: initialized
[    0.372156] Initilizing CustomIPI irq domain
[    0.372488] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[    0.372512] futex hash table entries: 1024 (order: 4, 65536 bytes)
[    0.384002] pinctrl core: initialized pinctrl subsystem
[    0.384618] OS set in device tree is not L4T.
[    0.385069] regulator-dummy: no parameters
[    0.385367] Initializing plugin-manager
[    0.385534] Plugin module not found
[    0.385726] node /plugin-manager/fragement@0 match with board >=3448-0000-100
[    0.386258] node /plugin-manager/fragment@1 match with board >=3448-0000-101
[    0.387228] node /plugin-manager/fragement@7 match with odm-data enable-pmic-wdt
[    0.387435] node /plugin-manager/fragement@8 match with odm-data enable-pmic-wdt
[    0.388077] node /plugin-manager/fragement@13 match with board >=3448-0000-300
[    0.391799] NET: Registered protocol family 16
[    0.393182] pstore: using zlib compression
[    0.393222] console [pstore-1] enabled
[    0.393227] pstore: Registered ramoops as persistent store backend
[    0.393232] ramoops: attached 0x200000@0xb0000000, ecc: 0/0
[    0.409122] cpuidle: using governor menu
[    0.413433] tegra_smmu 70019000.iommu: Loaded Tegra IOMMU driver
[    0.415092] vdso: 2 pages (1 code @ ffffff8008f87000, 1 data @ ffffff8009e84000)
[    0.415115] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
[    0.417709] atomic_pool_init():622: DMA: preallocated 1024 KiB pool for atomic allocations
[    0.420046] Serial: AMBA PL011 UART driver
[    0.420549] tegra_powergate_init: DONE
[    0.420564] DTS File Name: /dvs/git/dirty/git-master_linux/kernel/kernel-4.9/arch/arm64/boot/dts/../../../../../../hardware/nvidia/platform/t210/porg/kernel-dts/tegra210-p3448-0000-p3449-0000-b00.dts
[    0.420569] DTB Build time: Jul 26 2021 12:16:29
[    0.422475] Tegra reboot handler registered.
[    0.427106] iommu: Adding device tegra-carveouts to group 0
[    0.427254] platform tegra-carveouts: domain=ffffffc0f942a3d8 allocates as[0]=ffffffc0f94380a8
[    0.427602] iommu: Adding device smmu_test to group 1
[    0.427648] platform smmu_test: domain=ffffffc0f942a618 allocates as[0]=ffffffc0f9438110
[    0.428487] mc: mapped MMIO address: 0xffffff8008041000 -> 0x70019000
[    0.428546] mc: mapped MMIO address: 0xffffff8008067000 -> 0x7001c000
[    0.428600] mc: mapped MMIO address: 0xffffff800807b000 -> 0x7001d000
[    0.428610] nv-tegra-mc 70019000.mc: No mssnvlink node
[    0.428634] mc-err: mcerr ops are set to t21x
[    0.439363] iommu: Adding device 70090000.xusb to group 2
[    0.439654] iommu: Adding device 70006000.serial to group 3
[    0.439730] platform 70006000.serial: domain=ffffffc0f94b3618 allocates as[0]=ffffffc0f9438178
[    0.440161] iommu: Adding device 70006040.serial to group 4
[    0.440451] iommu: Adding device 70006200.serial to group 5
[    0.440685] iommu: Adding device sound to group 6
[    0.440735] platform sound: domain=ffffffc0f94b3b58 allocates as[0]=ffffffc0f94381e0
[    0.441426] iommu: Adding device 7000d400.spi to group 7
[    0.441684] iommu: Adding device 7000d600.spi to group 8
[    0.441964] iommu: Adding device 70410000.spi to group 9
[    0.442270] iommu: Adding device 50000000.host1x to group 10
[    0.442546] iommu: Adding device 54080000.vi to group 11
[    0.442939] iommu: Adding device 54600000.isp to group 12
[    0.443239] iommu: Adding device 54680000.isp to group 13
[    0.443515] iommu: Adding device tegradc.0 to group 14
[    0.443573] platform tegradc.0: domain=ffffffc0f94c0a98 allocates as[0]=ffffffc0f9438248
[    0.447760] platform tegradc.0: IOVA linear map 0x0000000092ca9000(800000)
[    0.448150] platform tegradc.0: IOVA linear map 0x00000000d7000000(19000000)
[    0.448493] iommu: Adding device tegradc.1 to group 15
[    0.448542] platform tegradc.1: domain=ffffffc0f94c0cd8 allocates as[0]=ffffffc0f94382b0
[    0.452811] platform tegradc.1: IOVA linear map 0x0000000092ca9000(800000)
[    0.453226] platform tegradc.1: IOVA linear map 0x00000000d7000000(19000000)
[    0.453495] iommu: Adding device 54340000.vic to group 16
[    0.453710] iommu: Adding device 544c0000.nvenc to group 17
[    0.453913] iommu: Adding device 54500000.tsec to group 18
[    0.454122] iommu: Adding device 54100000.tsecb to group 19
[    0.454347] iommu: Adding device 54480000.nvdec to group 20
[    0.454540] iommu: Adding device 54380000.nvjpg to group 21
[    0.455600] iommu: Adding device 546c0000.i2c to group 22
[    0.455932] iommu: Adding device 57000000.gpu to group 23
[    0.455982] platform 57000000.gpu: domain=ffffffc0f94fdcd8 allocates as[0]=ffffffc0f9438318
[    0.456020] platform 57000000.gpu: domain=ffffffc0f94fdcd8 allocates as[1]=ffffffc0f9438380
[    0.456063] platform 57000000.gpu: domain=ffffffc0f94fdcd8 allocates as[2]=ffffffc0f94383e8
[    0.456120] platform 57000000.gpu: domain=ffffffc0f94fdcd8 allocates as[3]=ffffffc0f9438450
[    0.457041] tegra-pmc 7000e400.pmc: i2c-thermtrip node not found, emergency thermal reset disabled.
[    0.457055] tegra-pmc 7000e400.pmc: scratch reg offset dts data not present
[    0.457069] tegra-pmc: ### PMC reset source: TEGRA_POWER_ON_RESET
[    0.457072] tegra-pmc: ### PMC reset level: TEGRA_RESET_LEVEL_WARM
[    0.457077] tegra-pmc: ### PMC reset status reg: 0x0
[    0.509171] padctrl padctrl.0: Pad control driver tegra-pmc-padctrl registered
[    0.509180] tegra-pmc: Clear bootloader IO dpd settings
[    0.509198] tegra-pmc 7000e400.pmc: IO padctrl driver initialized
[    0.509267] tegra-pmc 7000e400.pmc: PMC: Successfully configure bootrom reset commands
[    0.509556] iommu: Adding device 70012000.se to group 24
[    0.510338] iommu: Adding device 7000c000.i2c to group 25
[    0.510595] iommu: Adding device 7000c400.i2c to group 26
[    0.510881] iommu: Adding device 7000c500.i2c to group 27
[    0.511130] iommu: Adding device 7000c700.i2c to group 28
[    0.511381] iommu: Adding device 7000d000.i2c to group 29
[    0.511636] iommu: Adding device 7000d100.i2c to group 30
[    0.511933] iommu: Adding device sdhci-tegra.0 to group 31
[    0.511983] platform sdhci-tegra.0: domain=ffffffc0f9562e58 allocates as[0]=ffffffc0f94384b8
[    0.512853] iommu: Adding device 700d0000.xudc to group 32
[    0.516153] vdd-ac-bat: 5000 mV 
[    0.516548] vdd-5v0-sys: 5000 mV 
[    0.517243] vdd-5v0-hdmi: 5000 mV 
[    0.517673] vdd-5v0-hdmi: supplied by vdd-5v0-sys
[    0.517935] vdd-1v8-sys: 1800 mV 
[    0.518305] vdd-fan: 5000 mV 
[    0.518539] vdd-fan: supplied by vdd-5v0-sys
[    0.518791] vdd-usb-vbus: 5000 mV 
[    0.519008] vdd-usb-vbus: supplied by vdd-5v0-sys
[    0.519343] vdd-usb-vbus2: 5000 mV 
[    0.549889] HugeTLB registered 2 MB page size, pre-allocated 0 pages
[    0.552158] gpio gpiochip0: gpio-line-names specifies 240 line names but there are 256 lines on the chip
[    0.553366] GPIO line 6 (system-suspend-gpio) hogged as output/high
[    0.553396] GPIO line 151 (camera-control-output-low) hogged as output/low
[    0.553416] GPIO line 152 (camera-control-output-low) hogged as output/low
[    0.553804] gpiochip_setup_dev: registered GPIOs 0 to 255 on device: gpiochip0 (tegra-gpio)
[    0.561941] eventlib_kernel: keventlib is initialized, test id: 0
[    0.562296] SCSI subsystem initialized
[    0.562495] libata version 3.00 loaded.
[    0.562790] usbcore: registered new interface driver usbfs
[    0.562839] usbcore: registered new interface driver hub
[    0.562884] usbcore: registered new device driver usb
[    0.567164] max77620 4-003c: PMIC Version OTP:0x35 and ES:0x8
[    0.573226] vdd-core: 600 <--> 1162 mV at 1125 mV 
[    0.573386] random: fast init done
[    0.574290] vdd-ddr-1v1: Bringing 1125000uV into 1150000-1150000uV
[    0.577118] vdd-ddr-1v1: 1150 mV 
[    0.580260] vdd-pre-reg-1v35: 1350 mV 
[    0.584244] vdd-1v8: 1800 mV 
[    0.588241] avdd-sys-1v2: 1200 mV 
[    0.592242] vdd-pex-1v0: 1050 mV 
[    0.592879] vddio-sdmmc-ap: 1800 <--> 3300 mV at 3300 mV 
[    0.593412] max77620-ldo3: at 3100 mV 
[    0.596245] vdd-rtc: 850 <--> 1100 mV at 1000 mV 
[    0.596820] max77620-ldo5: at 3100 mV 
[    0.600246] vddio-sdmmc3-ap: 1800 <--> 3300 mV at 2800 mV 
[    0.604240] avdd-1v05-pll: 1050 mV 
[    0.608242] avdd-io-hdmi-dp: 1050 mV 
[    0.610914] GPIO line 505 (spmic-default-output-high) hogged as output/high
[    0.611201] gpiochip_setup_dev: registered GPIOs 504 to 511 on device: gpiochip1 (max77620-gpio)
[    0.611513] max77620 4-003c: max77620 probe successful
[    0.614317] media: Linux media interface: v0.10
[    0.614377] Linux video capture interface: v2.00
[    0.615304] pps_core: LinuxPPS API ver. 1 registered
[    0.615308] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    0.615327] PTP clock support registered
[    0.618575] tegra210-emc 7001b000.external-memory-controller: validated EMC DFS table
[    0.619449] Advanced Linux Sound Architecture Driver Initialized.
[    0.620095] Bluetooth: Core ver 2.22
[    0.620149] NET: Registered protocol family 31
[    0.620154] Bluetooth: HCI device and connection manager initialized
[    0.620167] Bluetooth: HCI socket layer initialized
[    0.620176] Bluetooth: L2CAP socket layer initialized
[    0.620205] Bluetooth: SCO socket layer initialized
[    0.622035] tegra210_dvfs: no clock found for sdmmc2_ddr
[    0.622053] tegra210_dvfs: no clock found for sdmmc4_ddr
[    0.622100] tegra210_dvfs: no clock found for sdmmc1_ddr
[    0.622115] tegra210_dvfs: no clock found for sdmmc3_ddr
[    0.625615] tegra_dvfs: Unable to get vdd-cpu rail for step info, defering probe
[    0.626807] vdd-3v3-sys: 3300 mV 
[    0.627182] vdd-3v3-sys: supplied by vdd-5v0-sys
[    0.627231] vdd-1v8-sys: supplied by vdd-3v3-sys
[    0.628355] vdd-usb-vbus2: supplied by vdd-3v3-sys
[    0.628803] vdd-3v3-sd: 3300 mV 
[    0.629199] vdd-3v3-sd: supplied by vdd-3v3-sys
[    0.629958] avdd-io-edp-1v05: 1050 mV 
[    0.630331] avdd-io-edp-1v05: supplied by avdd-1v05-pll
[    0.630491] vdd-usb-hub-en: 5000 mV 
[    0.630844] vdd-usb-hub-en: supplied by vdd-1v8-sys
[    0.631921] camchar: rtcpu character device driver loaded
[    0.632645] extcon-gpio-states extcon:extcon@1: Cable state:0, cable id:0
[    0.634179] clocksource: Switched to clocksource arch_sys_counter
[    0.675637] VFS: Disk quotas dquot_6.6.0
[    0.675766] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
[    0.676271] nvmap_heap_init: nvmap_heap_init: created heap block cache
[    0.676759] dma_declare_coherent_resizable_cma_memory:324: resizable heap=vpr, base=0x00000000d7000000, size=0x19000000
[    0.676776]  dma-vpr: heap size is not multiple of cma_chunk_size heap_info->num_chunks (13) rem_chunk_size(0x1000000)
[    0.677007] cma: enabled page replacement for spfn=d7000, epfn=f0000
[    0.677013] dma_declare_coherent_resizable_cma_memory:373: resizable cma heap=vpr create successful
[    0.677023] tegra-carveouts tegra-carveouts: assigned reserved memory node vpr-carveout
[    0.677050] tegra-carveouts tegra-carveouts: iram :dma coherent mem declare 0x0000000040001000,258048
[    0.677056] tegra-carveouts tegra-carveouts: assigned reserved memory node iram-carveout
[    0.677071] nvmap: nvmap_select_cache_ops() nvmap cache ops set to set/ways
[    0.677080] nvmap_page_pool_init: Total RAM pages: 1008854
[    0.677085] nvmap_page_pool_init: nvmap page pool size: 126106 pages (492 MB)
[    0.677165] nvmap_background_zero_thread: PP zeroing thread starting.
[    0.677626] misc nvmap: created heap iram base 0x0000000040001000 size (252KiB)
[    0.678526] misc nvmap: created heap vpr base 0x00000000d7000000 size (409600KiB)
[    0.687364] thermal thermal_zone0: Registering thermal zone thermal_zone0 for type AO-therm
[    0.687817] thermal thermal_zone1: Registering thermal zone thermal_zone1 for type CPU-therm
[    0.688218] thermal thermal_zone2: Registering thermal zone thermal_zone2 for type GPU-therm
[    0.688490] thermal thermal_zone3: Registering thermal zone thermal_zone3 for type PLL-therm
[    0.688670] thermal thermal_zone4: Registering thermal zone thermal_zone4 for type PMIC-Die
[    0.688942] pre_t19x_iso_plat_init(): iso emc max clk=1600000KHz
[    0.688948] pre_t19x_iso_plat_init(): max_iso_bw=11520000KB
[    0.689382] NET: Registered protocol family 2
[    0.690437] TCP established hash table entries: 32768 (order: 6, 262144 bytes)
[    0.690650] TCP bind hash table entries: 32768 (order: 7, 524288 bytes)
[    0.691198] TCP: Hash tables configured (established 32768 bind 32768)
[    0.691361] UDP hash table entries: 2048 (order: 4, 65536 bytes)
[    0.691441] UDP-Lite hash table entries: 2048 (order: 4, 65536 bytes)
[    0.691837] NET: Registered protocol family 1
[    0.692558] RPC: Registered named UNIX socket transport module.
[    0.692565] RPC: Registered udp transport module.
[    0.692568] RPC: Registered tcp transport module.
[    0.692574] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.692588] PCI: CLS 0 bytes, default 64
[    0.692826] Trying to unpack rootfs image as initramfs...
[    0.999248] Freeing initrd memory: 6992K
[    1.009416] host1x 50000000.host1x: initialized
[    1.011375] hw perfevents: enabled with armv8_pmuv3 PMU driver, 7 counters available
[    1.014732] audit: initializing netlink subsys (disabled)
[    1.014829] audit: type=2000 audit(0.863:1): initialized
[    1.015510] workingset: timestamp_bits=46 max_order=20 bucket_order=0
[    1.025537] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    1.027067] ntfs: driver 2.1.32 [Flags: R/W].
[    1.027864] 9p: Installing v9fs 9p2000 file system support
[    1.031211] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 240)
[    1.031327] io scheduler noop registered
[    1.031639] io scheduler cfq registered (default)
[    1.034479] gic 702f9000.agic: GIC IRQ controller registered
[    1.037472] iommu: Adding device 702ef000.adsp to group 33
[    1.046642] iommu: Adding device aconnect@702c0000:adsp_audio to group 34
[    1.046802] tegra-aconnect aconnect@702c0000: Tegra ACONNECT bus registered
[    1.047466] tegra-xusb-padctl 7009f000.xusb_padctl: TEGRA_FUSE_SKU_CALIB_0 = 0x91e6410
[    1.047474] tegra-xusb-padctl 7009f000.xusb_padctl: TEGRA_FUSE_USB_CALIB_EXT_0 = 0x4
[    1.049078] tegra-xusb-padctl 7009f000.xusb_padctl: dev = phy-usb2.0, lane = usb2-0, function = xusb
[    1.049188] tegra-xusb-padctl 7009f000.xusb_padctl: dev = phy-usb2.1, lane = usb2-1, function = xusb
[    1.049291] tegra-xusb-padctl 7009f000.xusb_padctl: dev = phy-usb2.2, lane = usb2-2, function = xusb
[    1.049487] tegra-xusb-padctl 7009f000.xusb_padctl: dev = phy-pcie.3, lane = pcie-0, function = pcie-x1
[    1.049571] tegra-xusb-padctl 7009f000.xusb_padctl: dev = phy-pcie.4, lane = pcie-1, function = pcie-x4
[    1.049661] tegra-xusb-padctl 7009f000.xusb_padctl: dev = phy-pcie.5, lane = pcie-2, function = pcie-x4
[    1.049745] tegra-xusb-padctl 7009f000.xusb_padctl: dev = phy-pcie.6, lane = pcie-3, function = pcie-x4
[    1.049855] tegra-xusb-padctl 7009f000.xusb_padctl: dev = phy-pcie.7, lane = pcie-4, function = pcie-x4
[    1.049938] tegra-xusb-padctl 7009f000.xusb_padctl: dev = phy-pcie.8, lane = pcie-5, function = xusb
[    1.050025] tegra-xusb-padctl 7009f000.xusb_padctl: dev = phy-pcie.9, lane = pcie-6, function = xusb
[    1.056400] tegra-pwm 7000a000.pwm: PWM clk cannot sleep in ops
[    1.058088] tegra-dfll-pwm 70110000.pwm: DFLL pwm-rate: 12800000
[    1.060123] tegra-pcie 1003000.pcie: 4x1, 1x1 configuration
[    1.061414] tegra-pcie 1003000.pcie: PCIE: Enable power rails
[    1.061783] tegra-pcie 1003000.pcie: probing port 0, using 4 lanes
[    1.063077] tegra_camera_platform tegra-camera-platform: tegra_camera_probe:camera_platform_driver probe
[    1.063314] misc tegra_camera_ctrl: tegra_camera_isomgr_register isp_iso_bw=1500000, vi_iso_bw=1500000, max_bw=1500000
[    1.063576] Adding domain tsec-pd to PM domain host1x-pd
[    1.065843] tegra-pcie 1003000.pcie: probing port 1, using 1 lanes
[    1.066862] tsec 54500000.tsec: initialized
[    1.068454] tsec 54100000.tsecb: initialized
[    1.069199] Adding domain nvdec-pd to PM domain host1x-pd
[    1.072744] nvdec 54480000.nvdec: initialized
[    1.073841] Adding domain vic03-pd to PM domain host1x-pd
[    1.074018] Adding domain msenc-pd to PM domain host1x-pd
[    1.074213] Adding domain nvjpg-pd to PM domain host1x-pd
[    1.078207] falcon 54340000.vic: initialized
[    1.079516] falcon 544c0000.nvenc: initialized
[    1.080858] falcon 54380000.nvjpg: initialized
[    1.085400] tegra_cec 70015000.tegra_cec: dt=1 start=0x70015000 end=0x70015FFF irq=97
[    1.085444] tegra_cec 70015000.tegra_cec: Enable clock result: 0.
[    1.085483] tegra_cec 70015000.tegra_cec: tegra_cec_init started
[    1.085685] tegradc tegradc.0: disp0 connected to head0->/host1x/sor1
[    1.085792] display board info: id 0x0, fab 0x0
[    1.085797] tegra_cec 70015000.tegra_cec: cec_add_sysfs ret=0
[    1.085801] tegra_cec 70015000.tegra_cec: probed
[    1.085869] generic_infoframe_type: 0x87
[    1.086021] tegradc tegradc.0: DT parsed successfully
[    1.086069] tegradc tegradc.0: Display dc.ffffff800abc0000 registered with id=0
[    1.086693] tegradc tegradc.0: Bootloader disp_param detected. Detected mode: 1920x1080 (on 0x0mm) pclk=148350781
[    1.090012] tegradc tegradc.0: probed
[    1.096567] tegra-apbdma 60020000.dma: Tegra20 APB DMA driver register 32 channels
[    1.103613] tegra-adma 702e2000.adma: Tegra210 ADMA driver registered 22 channels
[    1.104651] tegra-fuse-burn 7000f800.efuse:efuse-burn: shutdown limit check disabled
[    1.104661] tegra-fuse-burn 7000f800.efuse:efuse-burn: Fuse burn driver initialized
[    1.105061] kfuse 7000fc00.kfuse: initialized
[    1.106454] tegra-pcie 1003000.pcie: PCI host bridge to bus 0000:00
[    1.106475] pci_bus 0000:00: root bus resource [io  0x0000-0xffff]
[    1.106481] pci_bus 0000:00: root bus resource [mem 0x13000000-0x1fffffff]
[    1.106487] pci_bus 0000:00: root bus resource [mem 0x20000000-0x3fffffff pref]
[    1.106495] pci_bus 0000:00: root bus resource [bus 00-ff]
[    1.106574] pci 0000:00:01.0: [10de:0fae] type 01 class 0x060400
[    1.106762] pci 0000:00:01.0: PME# supported from D0 D1 D2 D3hot D3cold
[    1.107571] pci 0000:00:02.0: [10de:0faf] type 01 class 0x060400
[    1.107694] pci 0000:00:02.0: PME# supported from D0 D1 D2 D3hot D3cold
[    1.108020] pci 0000:00:01.0: bridge configuration invalid ([bus 00-00]), reconfiguring
[    1.108038] pci 0000:00:02.0: bridge configuration invalid ([bus 00-00]), reconfiguring
[    1.108190] tegra-pmc-iopower pmc-iopower: Regulator supply iopower-dbg-supply not available
[    1.108347] pci 0000:01:00.0: [8086:24fd] type 00 class 0x028000
[    1.108410] pci 0000:01:00.0: reg 0x10: [mem 0x00000000-0x00001fff 64bit]
[    1.108694] pci 0000:01:00.0: PME# supported from D0 D3hot D3cold
[    1.109371] tegra-pmc-iopower pmc-iopower: NO_IOPOWER setting 0x0
[    1.111271] tegra-dfll-pwm 70110000.pwm: DFLL_PWM regulator is available now
[    1.111289] vdd-cpu: 708 <--> 1322 mV at 708 mV 
[    1.111798] pwm-regulator pwm_regulators:pwm-regulator@0: PWM regulator registration passed
[    1.113395] vdd-gpu: applied init 1000000uV constraint
[    1.113403] vdd-gpu: 708 <--> 1323 mV at 997 mV 
[    1.113841] pwm-regulator pwm_regulators:pwm-regulator@1: PWM regulator registration passed
[    1.118308] pci_bus 0000:01: busn_res: [bus 01-ff] end is updated to 01
[    1.118518] pci 0000:02:00.0: [10ec:8168] type 00 class 0x020000
[    1.118553] pci 0000:02:00.0: reg 0x10: [io  0x0000-0x00ff]
[    1.118588] pci 0000:02:00.0: reg 0x18: [mem 0x00000000-0x00000fff 64bit]
[    1.118612] pci 0000:02:00.0: reg 0x20: [mem 0x00000000-0x00003fff 64bit]
[    1.118801] pci 0000:02:00.0: supports D1 D2
[    1.118806] pci 0000:02:00.0: PME# supported from D0 D1 D2 D3hot D3cold
[    1.118949] Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
[    1.119091] No Device Node present for smmu client: serial8250 !!
[    1.119100] platform serial8250: No iommus property found in DT node, got swgids from fixup(101004000)
[    1.119154] iommu: Adding device serial8250 to group 35
[    1.121677] console [ttyS0] disabled
[    1.121784] 70006000.serial: ttyS0 at MMIO 0x70006000 (irq = 63, base_baud = 25500000) is a Tegra
[    1.121889] console [ttyS0] enabled
[    1.123252] Console: switching to colour frame buffer device 240x67
[    1.123330] 70006040.serial: ttyTHS1 at MMIO 0x70006040 (irq = 64, base_baud = 0) is a TEGRA_UART
[    1.123377] tegradc tegradc.0: fb registered
[    1.123709] serial-tegra 70006200.serial: RX in PIO mode
[    1.123820] 70006200.serial: ttyTHS2 at MMIO 0x70006200 (irq = 65, base_baud = 0) is a TEGRA_UART
[    1.125214] [drm] Initialized
[    1.130251] tegradc tegradc.0: DC initialized, skipping tegra_dc_program_mode.
[    1.130305] tegradc tegradc.0: hdmi: tmds rate:148351K prod-setting:prod_c_hdmi_75m_150m
[    1.130439] pci_bus 0000:02: busn_res: [bus 02-ff] end is updated to 02
[    1.130528] pci 0000:00:01.0: BAR 14: assigned [mem 0x13000000-0x130fffff]
[    1.130537] pci 0000:00:02.0: BAR 14: assigned [mem 0x13100000-0x131fffff]
[    1.130544] pci 0000:00:02.0: BAR 13: assigned [io  0x1000-0x1fff]
[    1.130556] pci 0000:01:00.0: BAR 0: assigned [mem 0x13000000-0x13001fff 64bit]
[    1.130586] pci 0000:00:01.0: PCI bridge to [bus 01]
[    1.130595] pci 0000:00:01.0:   bridge window [mem 0x13000000-0x130fffff]
[    1.130609] pci 0000:02:00.0: BAR 4: assigned [mem 0x13100000-0x13103fff 64bit]
[    1.130630] pci 0000:02:00.0: BAR 2: assigned [mem 0x13104000-0x13104fff 64bit]
[    1.130650] pci 0000:02:00.0: BAR 0: assigned [io  0x1000-0x10ff]
[    1.130659] pci 0000:00:02.0: PCI bridge to [bus 02]
[    1.130664] pci 0000:00:02.0:   bridge window [io  0x1000-0x1fff]
[    1.130671] pci 0000:00:02.0:   bridge window [mem 0x13100000-0x131fffff]
[    1.130882] tegradc tegradc.0: hdmi: get RGB quant from REG programmed by BL.
[    1.130894] tegradc tegradc.0: hdmi: get YCC quant from REG programmed by BL.
[    1.131333] pcieport 0000:00:01.0: Signaling PME through PCIe PME interrupt
[    1.131340] pci 0000:01:00.0: Signaling PME through PCIe PME interrupt
[    1.131348] pcie_pme 0000:00:01.0:pcie001: service driver pcie_pme loaded
[    1.131523] aer 0000:00:01.0:pcie002: service driver aer loaded
[    1.131776] pcieport 0000:00:02.0: Signaling PME through PCIe PME interrupt
[    1.131783] pci 0000:02:00.0: Signaling PME through PCIe PME interrupt
[    1.131791] pcie_pme 0000:00:02.0:pcie001: service driver pcie_pme loaded
[    1.131898] aer 0000:00:02.0:pcie002: service driver aer loaded
[    1.137741] brd: module loaded
[    1.143377] loop: module loaded
[    1.143466] tegra_profiler: version: 1.145, samples/io: 49/28
[    1.143596] tegra_profiler: auth: init
[    1.145112] THERMAL EST: found 2 subdevs
[    1.145121] THERMAL EST num_resources: 0
[    1.145127] [THERMAL EST subdev 0]
[    1.145134] [THERMAL EST subdev 1]
[    1.145621] thermal thermal_zone5: Registering thermal zone thermal_zone5 for type thermal-fan-est
[    1.145624] THERMAL EST: thz register success.
[    1.145792] THERMAL EST: end of probe, return err: 0
[    1.147209] sd: No Scsi addr parsed to reserve index
[    1.147249] hisi_sas: driver version v1.6
[    1.152391] tegra-qspi 70410000.spi: Prod settings list not found
[    1.153538] qspi_mtd spi32766.0: MX25U3235F (4096 Kbytes)
[    1.153550] qspi_mtd spi32766.0: mtd .name = spi32766.0, .size = 0x400000 (4MiB) .erasesize = 0x00001000 (4KiB) .numeraseregions = 0
[    1.156599] libphy: Fixed MDIO Bus: probed
[    1.157329] extcon-disp-state extcon:disp-state: cable 47 state 1
[    1.157339] Extcon AUX1(HDMI) enable
[    1.157364] tun: Universal TUN/TAP device driver, 1.6
[    1.157369] tun: (C) 1999-2004 Max Krasnyansky <maxk@qualcomm.com>
[    1.158921] tegradc tegradc.1: disp1 connected to head1->/host1x/sor
[    1.159055] tegradc tegradc.1: No lt-data, using default setting
[    1.159092] tegradc tegradc.1: No hpd-gpio in DT
[    1.159127] tegradc tegradc.1: DT parsed successfully
[    1.159192] tegradc tegradc.1: Display dc.ffffff800d540000 registered with id=1
[    1.159232] e1000e: Intel(R) PRO/1000 Network Driver - 3.2.6-k
[    1.159236] e1000e: Copyright(c) 1999 - 2015 Intel Corporation.
[    1.159309] igb: Intel(R) Gigabit Ethernet Network Driver - version 5.4.0-k
[    1.159311] igb: Copyright (c) 2007-2014 Intel Corporation.
[    1.159381] igbvf: Intel(R) Gigabit Virtual Function Network Driver - version 2.4.0-k
[    1.159387] igbvf: Copyright (c) 2009 - 2012 Intel Corporation.
[    1.159444] ixgbe: Intel(R) 10 Gigabit PCI Express Network Driver - version 4.4.0-k
[    1.159448] ixgbe: Copyright (c) 1999-2016 Intel Corporation.
[    1.161031] tegradc tegradc.1: dpd enable lookup fail:-19
[    1.161626] r8168 0000:02:00.0: enabling device (0000 -> 0003)
[    1.161655] r8168 Gigabit Ethernet driver 8.045.08-NAPI loaded
[    1.175843] r8168 0000:02:00.0 (unnamed net_device) (uninitialized): Invalid ethernet address 00:00:00:00:00:00, trying device tree node
[    1.175968] r8168 0000:02:00.0 (unnamed net_device) (uninitialized): Found valid ethernet address 00:04:4b:ec:a6:1e from device tree
[    1.176570] r8168: This product is covered by one or more of the following patents: US6,570,884, US6,115,776, and US6,327,625.
[    1.176639] r8168  Copyright (C) 2017  Realtek NIC software team <nicfae@realtek.com> 
                This program comes with ABSOLUTELY NO WARRANTY; for details, please see <http://www.gnu.org/licenses/>. 
                This is free software, and you are welcome to redistribute it under certain conditions; see <http://www.gnu.org/licenses/>. 
[    1.177277] PPP generic driver version 2.4.2
[    1.178310] PPP BSD Compression module registered
[    1.178324] PPP Deflate Compression module registered
[    1.178366] PPP MPPE Compression module registered
[    1.178373] NET: Registered protocol family 24
[    1.178452] usbcore: registered new interface driver r8152
[    1.178496] usbcore: registered new interface driver asix
[    1.178561] usbcore: registered new interface driver ax88179_178a
[    1.178593] usbcore: registered new interface driver cdc_ether
[    1.178635] usbcore: registered new interface driver net1080
[    1.178671] usbcore: registered new interface driver cdc_subset
[    1.178711] usbcore: registered new interface driver zaurus
[    1.178768] usbcore: registered new interface driver cdc_ncm
[    1.179058] tegradc tegradc.1: probed
[    1.179435] VFIO - User Level meta-driver version: 0.3
[    1.179439] tegradc tegradc.1: fb registered
[    1.182653] hpd: state 7 (Takeover from bootloader), hpd 0, pending_hpd_evt 1
[    1.182660] hpd: switching from state 7 (Takeover from bootloader) to state 0 (Reset)
[    1.182668] hpd: state 0 (Reset), hpd 0, pending_hpd_evt 0
[    1.182687] tegradc tegradc.1: blank - powerdown
[    1.182706] extcon-disp-state extcon:disp-state: cable 44 state 0 already set.
[    1.182710] Extcon DP: HPD disabled
[    1.182714] hpd: hpd_switch 0
[    1.182719] hpd: switching from state 0 (Reset) to state 1 (Check Plug)
[    1.182728] hpd: state 1 (Check Plug), hpd 0, pending_hpd_evt 0
[    1.182735] hpd: switching from state 1 (Check Plug) to state 3 (Disabled)
[    1.185436] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    1.185468] ehci-pci: EHCI PCI platform driver
[    1.185515] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[    1.185526] ohci-pci: OHCI PCI platform driver
[    1.185576] ohci-platform: OHCI generic platform driver
[    1.188506] tegra-xusb 70090000.xusb: USB2 port 0 has OTG_CAP
[    1.193984] tegradc tegradc.0: nominal-pclk:148351648 parent:148350781 div:1.0 pclk:148350781 146868084~161703244
[    1.194812] tegra-xusb-padctl 7009f000.xusb_padctl: enabled OTG on UTMI pad 0
[    1.195902] tegra-xusb 70090000.xusb: extcon 0: ffffffc0f943f800 id
[    1.197434] usbcore: registered new interface driver uas
[    1.197498] usbcore: registered new interface driver usb-storage
[    1.197576] usbcore: registered new interface driver usbserial
[    1.199385] tegra-xusb 70090000.xusb: Firmware timestamp: 2020-07-31 09:33:12 UTC, Version: 50.26 release
[    1.199417] tegra-xusb 70090000.xusb: xHCI Host Controller
[    1.199434] tegra-xusb 70090000.xusb: new USB bus registered, assigned bus number 1
[    1.200156] tegra-xusb 70090000.xusb: hcc params 0x0184f525 hci version 0x100 quirks 0x00050010
[    1.200190] tegra-xusb 70090000.xusb: irq 61, io mem 0x70090000
[    1.200349] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[    1.200356] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    1.200361] usb usb1: Product: xHCI Host Controller
[    1.200365] usb usb1: Manufacturer: Linux 4.9.253-tegra xhci-hcd
[    1.200370] usb usb1: SerialNumber: 70090000.xusb
[    1.201727] hub 1-0:1.0: USB hub found
[    1.201762] hub 1-0:1.0: 5 ports detected
[    1.202383] tegra-xusb 70090000.xusb: xHCI Host Controller
[    1.202395] tegra-xusb 70090000.xusb: new USB bus registered, assigned bus number 2
[    1.202469] tegra-xudc-new 700d0000.xudc: device count: 1
[    1.202519] usb usb2: We don't know the algorithms for LPM for this host, disabling LPM.
[    1.202619] usb usb2: New USB device found, idVendor=1d6b, idProduct=0003
[    1.202625] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    1.202630] usb usb2: Product: xHCI Host Controller
[    1.202634] usb usb2: Manufacturer: Linux 4.9.253-tegra xhci-hcd
[    1.202638] usb usb2: SerialNumber: 70090000.xusb
[    1.203048] hub 2-0:1.0: USB hub found
[    1.203083] hub 2-0:1.0: 4 ports detected
[    1.203501] tegra-xudc-new 700d0000.xudc: USB charger detection disabled
[    1.203511] tegra-xudc-new 700d0000.xudc: vbus state: 0
[    1.203533] tegra-xudc-new 700d0000.xudc: entering ELPG
[    1.203781] tegra-xudc-new 700d0000.xudc: entering ELPG done
[    1.203864] tegra-xusb 70090000.xusb: Upgrade port 0 to USB3.0
[    1.203871] tegra-xusb 70090000.xusb: Upgrade port 1 to USB3.0
[    1.204284] mousedev: PS/2 mouse device common for all mice
[    1.204351] usbcore: registered new interface driver xpad
[    1.289633] tegradc tegradc.0: blank - powerdown
[    1.302232] tegra-xusb-padctl 7009f000.xusb_padctl: power on UTMI pads 1
[    1.302292] tegra-xusb-padctl 7009f000.xusb_padctl: power on UTMI pads 2
[    1.306403] usb usb2: usb_suspend_both: status 0
[    1.326301] max77686-rtc max77620-rtc: rtc core: registered max77620-rtc as rtc0
[    1.328478] rtc rtc1: alarm rtc device
[    1.328492] tegra_rtc 7000e000.rtc: rtc core: registered 7000e000.rtc as rtc1
[    1.328509] tegra_rtc 7000e000.rtc: Tegra internal Real Time Clock
[    1.328883] i2c /dev entries driver
[    1.330432] i2c i2c-6: Added multiplexed i2c bus 7
[    1.330801] i2c i2c-6: Added multiplexed i2c bus 8
[    1.330806] i2c-mux-gpio cam_i2cmux: 2 port mux on Tegra I2C adapter adapter
[    1.331368] imx219 7-0010: tegracam sensor driver:imx219_v2.0.6
[    1.331481] extcon-disp-state extcon:disp-state: cable 47 state 0
[    1.331483] Extcon AUX1(HDMI) disable
[    1.354707] tegra-vii2c 546c0000.i2c: no acknowledge from address 0x10
[    1.354791] imx219 7-0010: imx219_board_setup: error during i2c read probe (-121)
[    1.354929] imx219 7-0010: board setup failed
[    1.355019] imx219: probe of 7-0010 failed with error -121
[    1.355793] imx219 8-0010: tegracam sensor driver:imx219_v2.0.6
[    1.379082] tegra-vii2c 546c0000.i2c: no acknowledge from address 0x10
[    1.379156] imx219 8-0010: imx219_board_setup: error during i2c read probe (-121)
[    1.379237] imx219 8-0010: board setup failed
[    1.379298] imx219: probe of 8-0010 failed with error -121
[    1.380954] max77620-power max77620-power: Event recorder REG_NVERC : 0x0
[    1.383937] tegra_soctherm 700e2000.soctherm: pllx_offset tz:0 max:14, min:2
[    1.383942] tegra_soctherm 700e2000.soctherm: pllx_offset tz:2 max:8, min:4
[    1.384415] tegra_soctherm 700e2000.soctherm: soctherm: trip temperature -2147483647 forced to -127000
[    1.384432] tegra_soctherm 700e2000.soctherm: thermtrip: will shut down when cpu reaches 102500 mC
[    1.384441] tegra_soctherm 700e2000.soctherm: throttrip: will throttle when cpu reaches 100500 mC
[    1.384593] tegra_soctherm 700e2000.soctherm: soctherm: trip temperature -2147483647 forced to -127000
[    1.384603] tegra_soctherm 700e2000.soctherm: thermtrip: will shut down when gpu reaches 103000 mC
[    1.384610] tegra_soctherm 700e2000.soctherm: throttrip: will throttle when gpu reaches 101000 mC
[    1.384759] tegra_soctherm 700e2000.soctherm: soctherm: trip temperature -2147483647 forced to -127000
[    1.384768] tegra_soctherm 700e2000.soctherm: thermtrip: will shut down when pll reaches 127000 mC
[    1.384773] tegra_soctherm 700e2000.soctherm: throttrip: pll: missing hot temperature
[    1.384991] tegra_soctherm 700e2000.soctherm: failed to register sensor: -19
[    1.385907] tegra_aotag tegra-aotag: Registering sensor 0
[    1.385966] tegra_aotag tegra-aotag: Invalid temp readout
[    1.385997] tegra_aotag tegra-aotag: Invalid temp readout
[    1.386014] tegra_aotag tegra-aotag: Bound to TZ : ID 0
[    1.386023] tegra_aotag tegra-aotag: Probe done [SUCCESS]:0
[    1.387298] tegra_soctherm 700e2000.soctherm: soctherm: trip temperature -2147483647 forced to -127000
[    1.387318] tegra_dfll_action dfll-cdev-cap: Tegra DFLL 'cap cooling device' registered
[    1.387569] tegra_aotag tegra-aotag: Invalid temp readout
[    1.387600] tegra_dfll_action dfll-cdev-floor: Tegra DFLL 'floor cooling device' registered
[    1.388153] parse_throttle_dt_data: Num cap clks = 6
[    1.388159] parse_throttle_dt_data: clk=cclk_g type=2
[    1.388175] parse_throttle_dt_data: clk=gpu type=4
[    1.388205] parse_throttle_dt_data: clk=cap.throttle.c2bus type=0
[    1.388224] parse_throttle_dt_data: clk=cap.throttle.c3bus type=0
[    1.388246] parse_throttle_dt_data: clk=cap.throttle.sclk type=0
[    1.388249] parse_throttle_dt_data: clk=emc type=3
[    1.388764] tegra_soctherm 700e2000.soctherm: soctherm: trip temperature -2147483647 forced to -127000
[    1.388916] tegra_soctherm 700e2000.soctherm: soctherm: trip temperature -2147483647 forced to -127000
[    1.389107] tegra_throttle_probe: probe successful. #cdevs=4
[    1.390038] FAN dev name: pwm-fan
[    1.390125] FAN:gpio request success.
[    1.390235] pwm_fan_driver pwm-fan: cap state:7, cap pwm:255
[    1.390580] pwm_fan_driver pwm-fan: got pwm for fan. polarity is normal
[    1.390771] pwm_fan_driver pwm-fan: fan tach request irq success
[    1.390780] pwm_fan_driver pwm-fan: tach period: 1000
[    1.390887] pwm_fan_driver pwm-fan: index 0: pwm=0, rpm=0, rru=40, rrd=40, state:2
[    1.390893] pwm_fan_driver pwm-fan: index 1: pwm=80, rpm=1000, rru=2, rrd=2, state:2
[    1.390897] pwm_fan_driver pwm-fan: index 2: pwm=120, rpm=2000, rru=1, rrd=1, state:2
[    1.390901] pwm_fan_driver pwm-fan: index 3: pwm=160, rpm=3000, rru=1, rrd=1, state:2
[    1.390905] pwm_fan_driver pwm-fan: index 4: pwm=255, rpm=4000, rru=1, rrd=1, state:3
[    1.390909] pwm_fan_driver pwm-fan: index 5: pwm=255, rpm=5000, rru=1, rrd=1, state:3
[    1.390913] pwm_fan_driver pwm-fan: index 6: pwm=255, rpm=6000, rru=1, rrd=1, state:3
[    1.390917] pwm_fan_driver pwm-fan: index 7: pwm=255, rpm=7000, rru=1, rrd=1, state:4
[    1.390921] pwm_fan_driver pwm-fan: index 8: pwm=255, rpm=10000, rru=1, rrd=1, state:4
[    1.390925] pwm_fan_driver pwm-fan: index 9: pwm=255, rpm=11000, rru=1, rrd=1, state:4
[    1.391293] tegradc tegradc.0: unblank
[    1.394385] device-mapper: uevent: version 1.0.3
[    1.394896] device-mapper: ioctl: 4.35.0-ioctl (2016-06-23) initialised: dm-devel@redhat.com
[    1.399586] tegra210-cpufreq cpufreq: probe()...completed
[    1.400422] sdhci: Secure Digital Host Controller Interface driver
[    1.400423] sdhci: Copyright(c) Pierre Ossman
[    1.400424] sdhci-pltfm: SDHCI platform and OF driver helper
[    1.400967] sdhci-tegra sdhci-tegra.0: Got CD GPIO
[    1.401393] sdhci-tegra sdhci-tegra.0: Client registration for eMC Successful
[    1.401517] sdhci-tegra sdhci-tegra.0: wakeup init done, cdirq 300
[    1.405776] tegradc tegradc.0: nominal-pclk:241500000 parent:241500000 div:1.0 pclk:241500000 239085000~263235000
[    1.405826] tegradc tegradc.0: hdmi: tmds rate:241500K prod-setting:prod_c_hdmi_150m_300m
[    1.406149] tegra-se 70012000.se: tegra_se_probe: complete
[    1.406845] tegradc tegradc.0: hdmi: get YCC quant from EDID.
[    1.406848] hidraw: raw HID events driver (C) Jiri Kosina
[    1.408024] usbcore: registered new interface driver usbhid
[    1.408025] usbhid: USB HID core driver
[    1.410083] tegra21x_actmon 6000c800.actmon: in actmon_register()...
[    1.410425] tegra21x_actmon 6000c800.actmon: initialization Completed for the device mc_all
[    1.412433] nvpmodel: initialized successfully
[    1.413382] usbcore: registered new interface driver snd-usb-audio
[    1.413437] No Device Node present for smmu client: snd-soc-dummy !!
[    1.413442] platform snd-soc-dummy: No iommus property found in DT node, got swgids from fixup(101004000)
[    1.413458] iommu: Adding device snd-soc-dummy to group 36
[    1.425437] OPE platform probe
[    1.426195] OPE platform probe successful
[    1.426229] OPE platform probe
[    1.426318] OPE platform probe successful
[    1.428178] input: tegra-hda HDMI/DP,pcm=3 as /devices/70030000.hda/sound/card0/input0
[    1.441573] extcon-disp-state extcon:disp-state: cable 47 state 1
[    1.441575] Extcon AUX1(HDMI) enable
[    1.450387] mmc0: SDHCI controller on sdhci-tegra.0 [sdhci-tegra.0] using ADMA 64-bit with 64 bit addr
[    1.457093] tegradc tegradc.0: sync windows ret = 246
[    1.458134] tegra-asoc: sound: ADMAIF1 <-> ADMAIF1 mapping ok
[    1.458396] tegra-asoc: sound: ADMAIF2 <-> ADMAIF2 mapping ok
[    1.458516] tegra-asoc: sound: ADMAIF3 <-> ADMAIF3 mapping ok
[    1.458657] tegra-asoc: sound: ADMAIF4 <-> ADMAIF4 mapping ok
[    1.458775] tegra-asoc: sound: ADMAIF5 <-> ADMAIF5 mapping ok
[    1.458895] tegra-asoc: sound: ADMAIF6 <-> ADMAIF6 mapping ok
[    1.459025] tegra-asoc: sound: ADMAIF7 <-> ADMAIF7 mapping ok
[    1.459152] tegra-asoc: sound: ADMAIF8 <-> ADMAIF8 mapping ok
[    1.459268] tegra-asoc: sound: ADMAIF9 <-> ADMAIF9 mapping ok
[    1.459385] tegra-asoc: sound: ADMAIF10 <-> ADMAIF10 mapping ok
[    1.471537] u32 classifier
[    1.471538]     Actions configured
[    1.471613] Initializing XFRM netlink socket
[    1.472323] NET: Registered protocol family 10
[    1.472994] NET: Registered protocol family 17
[    1.473003] NET: Registered protocol family 15
[    1.473075] bridge: filtering via arp/ip/ip6tables is no longer available by default. Update your scripts to load br_netfilter if you need this.
[    1.473123] Bluetooth: RFCOMM socket layer initialized
[    1.473132] Bluetooth: RFCOMM ver 1.11
[    1.473137] Bluetooth: HIDP (Human Interface Emulation) ver 1.2
[    1.473142] Bluetooth: HIDP socket layer initialized
[    1.473159] 9pnet: Installing 9P2000 support
[    1.473193] Key type dns_resolver registered
[    1.473574] Registered cp15_barrier emulation handler
[    1.473580] Registered setend emulation handler
[    1.479155] registered taskstats version 1
[    1.479807] Adding domain ve2-pd to PM domain host1x-pd
[    1.480051] Adding domain ve-pd to PM domain host1x-pd
[    1.482049] isp 54600000.isp: initialized
[    1.483029] isp 54680000.isp: initialized
[    1.493536] last reset is due to power on reset
[    1.493539] KERNEL: PMC reset status reg: 0x0
[    1.493601] BL: PMC reset status reg: 0x0
[    1.493603] BL: PMIC poweroff Event Recorder: 0x40
[    1.495146] clk_cbus_recalc_rate: no gbus parent
[    1.495151] clk_cbus_round_rate: no gbus parent
[    1.495152] clk_cbus_round_rate: no gbus parent
[    1.495160] clk_cbus_recalc_rate: no gbus parent
[    1.495260] clk_cbus_recalc_rate: no gbus parent
[    1.495263] clk_cbus_round_rate: no gbus parent
[    1.495264] clk_cbus_round_rate: no gbus parent
[    1.495267] clk_cbus_recalc_rate: no gbus parent
[    1.495926] tegra_dvfs: GPU-cap: registered
[    1.495989] tegra dvfs: vdd-cpu: nominal 1168mV, offset 708000uV, step 19200uV, scaling enabled
[    1.495991] tegra dvfs: vdd-core: nominal 1125mV, offset 600000uV, step 12500uV, scaling enabled
[    1.495993] tegra dvfs: vdd-gpu: nominal 1068mV, offset 708000uV, step 10000uV, scaling enabled
[    1.497358] tegra_dvfs: vdd-gpu-vts: registered
[    1.498074] tegra_core_action core_dvfs_cdev_floor: Tegra CORE DVFS 'floor cooling device' registered
[    1.498755] tegra_core_action core_dvfs_cdev_cap: Tegra CORE DVFS 'cap cooling device' registered
[    1.499299] input: gpio-keys as /devices/gpio-keys/input/input1
[    1.512204] extcon-disp-state extcon:disp-state: cable 51 state 1
[    1.512206] Extcon HDMI: HPD enabled
[    1.512220] tegradc tegradc.0: hdmi: plugged
[    1.526861] usb 1-2: new high-speed USB device number 2 using tegra-xusb
[    1.532167] tegra_rtc 7000e000.rtc: setting system clock to 2000-01-01 03:01:22 UTC (946695682)
[    1.533206] vi 54080000.vi: vi_probe: ++
[    1.554197] vi 54080000.vi: initialized
[    1.560663] vi 54080000.vi: subdev nvcsi--2 bound
[    1.560768] vi 54080000.vi: subdev nvcsi--1 bound
[    1.561167] usb 1-2: New USB device found, idVendor=0bda, idProduct=5411
[    1.561172] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[    1.561176] usb 1-2: Product: 4-Port USB 2.1 Hub
[    1.561179] usb 1-2: Manufacturer: Generic
[    1.562274] Disable partitions left on by BL
[    1.562278]   disb
[    1.562329] bwmgr: missing cdev-type property
[    1.562425] tegra_soctherm 700e2000.soctherm: soctherm: trip temperature -2147483647 forced to -127000
[    1.562432] DRAM derating cdev registered.
[    1.563334] ALSA device list:
[    1.563337]   #0: tegra-hda at 0x70038000 irq 83
[    1.563340]   #1: tegra-snd-t210ref-mobile-rt565x
[    1.564857] hub 1-2:1.0: USB hub found
[    1.565987] hub 1-2:1.0: 4 ports detected
[    1.566448] Freeing unused kernel memory: 8640K
[    1.590812] Root device found: mmcblk0p1
[    1.650906] mmc0: Applying tuning correction
[    1.650920] mmc0: Tap value after applying correction 57
[    1.650937] mmc0: hw tuning done ...
[    1.650979] mmc0: new ultra high speed SDR104 SDXC card at address aaaa
[    1.651453] mmcblk0: mmc0:aaaa SN64G 59.5 GiB 
[    1.656828]  mmcblk0: p1
[    1.670634] usb 2-1: new SuperSpeed USB device number 2 using tegra-xusb
[    1.698888] usb 2-1: New USB device found, idVendor=0bda, idProduct=0411
[    1.698895] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[    1.698899] usb 2-1: Product: 4-Port USB 3.1 Hub
[    1.698903] usb 2-1: Manufacturer: Generic
[    1.702729] hub 2-1:1.0: USB hub found
[    1.703560] hub 2-1:1.0: 4 ports detected
[    1.795752] Found dev node: /dev/mmcblk0p1
[    1.814197] usb 1-3: new full-speed USB device number 3 using tegra-xusb
[    1.831323] EXT4-fs (mmcblk0p1): mounted filesystem with ordered data mode. Opts: (null)
[    1.833286] Rootfs mounted over mmcblk0p1
[    1.836004] usb 1-3: New USB device found, idVendor=8087, idProduct=0a2b
[    1.836009] usb 1-3: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[    1.856303] Switching from initrd to actual rootfs
[    1.858204] usb 2-1: usb_suspend_both: status 0
[    1.858368] usb usb2: usb_suspend_both: status 0
[    1.914195] usb 1-2.4: new full-speed USB device number 4 using tegra-xusb
[    1.936662] usb 1-2.4: New USB device found, idVendor=0483, idProduct=5740
[    1.936668] usb 1-2.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[    1.936671] usb 1-2.4: Product: STM32 Virtual ComPort
[    1.936674] usb 1-2.4: Manufacturer: STMicroelectronics
[    1.936677] usb 1-2.4: SerialNumber: 2058346B4230
[    2.044124] systemd[1]: System time before build time, advancing clock.
[    2.069186] ip_tables: (C) 2000-2006 Netfilter Core Team
[    2.081915] cgroup: cgroup2: unknown option "nsdelegate"
[    2.102243] tegra_cec 70015000.tegra_cec: physical address: 10:00.
[    2.104149] systemd[1]: systemd 237 running in system mode. (+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD -IDN2 +IDN -PCRE2 default-hierarchy=hybrid)
[    2.104917] systemd[1]: Detected architecture arm64.
[    2.128398] systemd[1]: Set hostname to <ion-desktop>.
[    2.166775] tegra_cec 70015000.tegra_cec: Sent <Text View On> res: -113.
[    2.166779] tegra_cec 70015000.tegra_cec: tegra_cec_init Done.
[    2.171737] usb 2-1.2: new SuperSpeed USB device number 3 using tegra-xusb
[    2.206235] usb 2-1.2: New USB device found, idVendor=0bda, idProduct=0411
[    2.206241] usb 2-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[    2.206245] usb 2-1.2: Product: 4-Port USB 3.0 Hub
[    2.206248] usb 2-1.2: Manufacturer: Generic
[    2.209997] hub 2-1.2:1.0: USB hub found
[    2.211299] hub 2-1.2:1.0: 4 ports detected
[    2.236695] systemd[1]: File /lib/systemd/system/systemd-journald.service:36 configures an IP firewall (IPAddressDeny=any), but the local system does not support BPF/cgroup based firewalling.
[    2.236704] systemd[1]: Proceeding WITHOUT firewalling in effect! (This warning is only shown for the first loaded unit using IP firewalling.)
[    2.274196] usb 1-2.2: new high-speed USB device number 5 using tegra-xusb
[    2.302533] systemd[1]: wpa_supplicant.service: Service lacks both ExecStart= and ExecStop= setting. Refusing.
[    2.309088] usb 1-2.2: New USB device found, idVendor=0bda, idProduct=5411
[    2.309092] usb 1-2.2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[    2.309095] usb 1-2.2: Product: 4-Port USB 2.0 Hub
[    2.309097] usb 1-2.2: Manufacturer: Generic
[    2.310273] hub 1-2.2:1.0: USB hub found
[    2.311296] hub 1-2.2:1.0: 4 ports detected
[    2.415705] systemd[1]: wpa_supplicant.service: Cannot add dependency job, ignoring: Unit wpa_supplicant.service is not loaded properly: Invalid argument.
[    2.417367] random: systemd: uninitialized urandom read (16 bytes read)
[    2.417397] systemd[1]: Reached target Swap.
[    2.417619] random: systemd: uninitialized urandom read (16 bytes read)
[    2.419595] systemd[1]: Created slice System Slice.
[    2.419661] random: systemd: uninitialized urandom read (16 bytes read)
[    2.419830] systemd[1]: Listening on /dev/initctl Compatibility Named Pipe.
[    2.481800] EXT4-fs (mmcblk0p1): re-mounted. Opts: (null)
[    2.507089] usb 2-1.2.4: new SuperSpeed USB device number 4 using tegra-xusb
[    2.539671] usb 2-1.2.4: New USB device found, idVendor=0bda, idProduct=0411
[    2.539678] usb 2-1.2.4: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[    2.539682] usb 2-1.2.4: Product: 4-Port USB 3.0 Hub
[    2.539686] usb 2-1.2.4: Manufacturer: Generic
[    2.544728] hub 2-1.2.4:1.0: USB hub found
[    2.546007] hub 2-1.2.4:1.0: 4 ports detected
[    2.610197] usb 1-2.2.1: new low-speed USB device number 6 using tegra-xusb
[    2.618253] nvgpu: 57000000.gpu           gm20b_init_clk_setup_sw:1268 [INFO]  GPCPLL initial settings: NA mode, M=1, N=34, P=3 (id = 1)
[    2.640379] systemd-journald[1954]: Received request to flush runtime journal from PID 1
[    2.641124] usb 1-2.2.1: New USB device found, idVendor=413c, idProduct=2003
[    2.641130] usb 1-2.2.1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[    2.641134] usb 1-2.2.1: Product: Dell USB Keyboard
[    2.641138] usb 1-2.2.1: Manufacturer: Dell
[    2.646256] input: Dell Dell USB Keyboard as /devices/70090000.xusb/usb1/1-2/1-2.2/1-2.2.1/1-2.2.1:1.0/0003:413C:2003.0001/input/input2
[    2.674190] usb 2-1.2.4: usb_suspend_both: status 0
[    2.694188] usb 2-1.2: usb_suspend_both: status 0
[    2.707019] hid-generic 0003:413C:2003.0001: input,hidraw0: USB HID v1.10 Keyboard [Dell Dell USB Keyboard] on usb-70090000.xusb-2.2.1/input0
[    2.786235] usb 1-2.2.3: new low-speed USB device number 7 using tegra-xusb
[    2.810961] usb 1-2.2.3: New USB device found, idVendor=046d, idProduct=c077
[    2.810968] usb 1-2.2.3: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[    2.810973] usb 1-2.2.3: Product: USB Optical Mouse
[    2.810976] usb 1-2.2.3: Manufacturer: Logitech
[    2.814281] input: Logitech USB Optical Mouse as /devices/70090000.xusb/usb1/1-2/1-2.2/1-2.2.3/1-2.2.3:1.0/0003:046D:C077.0002/input/input3
[    2.814611] hid-generic 0003:046D:C077.0002: input,hidraw1: USB HID v1.11 Mouse [Logitech USB Optical Mouse] on usb-70090000.xusb-2.2.3/input0
[    2.886501] usb 2-1.3: new SuperSpeed USB device number 5 using tegra-xusb
[    2.906864] usb 2-1.3: LPM exit latency is zeroed, disabling LPM.
[    2.907741] usb 2-1.3: New USB device found, idVendor=2560, idProduct=c154
[    2.907747] usb 2-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[    2.907751] usb 2-1.3: Product: See3CAM_CU55
[    2.907754] usb 2-1.3: Manufacturer: e-con systems
[    2.907757] usb 2-1.3: SerialNumber: 1E050E00
[    2.910880] hid-generic 0003:2560:C154.0003: hidraw2: USB HID v1.11 Device [e-con systems See3CAM_CU55] on usb-70090000.xusb-1.3/input2
[    2.986207] usb 1-2.2.4: new high-speed USB device number 8 using tegra-xusb
[    3.021007] usb 1-2.2.4: New USB device found, idVendor=0bda, idProduct=5411
[    3.021014] usb 1-2.2.4: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[    3.021018] usb 1-2.2.4: Product: 4-Port USB 2.0 Hub
[    3.021021] usb 1-2.2.4: Manufacturer: Generic
[    3.022392] hub 1-2.2.4:1.0: USB hub found
[    3.024595] hub 1-2.2.4:1.0: 4 ports detected
[    3.150201] usb 1-2.2.4: usb_suspend_both: status 0
[    3.629657] random: crng init done
[    3.633090] random: 7 urandom warning(s) missed due to ratelimiting
[    3.675028] tegra_soctherm 700e2000.soctherm: soctherm: trip temperature -2147483647 forced to -127000
[    3.675051] cpu-throttle-alert cooling device registered.
[    3.675187] tegra_soctherm 700e2000.soctherm: soctherm: trip temperature -2147483647 forced to -127000
[    3.675201] gpu-throttle-alert cooling device registered.
[    3.675358] tegra_soctherm 700e2000.soctherm: soctherm: trip temperature -2147483647 forced to -127000
[    3.675371] tegra_soctherm 700e2000.soctherm: soctherm: trip temperature -2147483647 forced to -127000
[    3.675383] hot-surface-alert cooling device registered.
[    3.697281] Intel(R) Wireless WiFi driver for Linux
[    3.697285] Copyright(c) 2003- 2015 Intel Corporation
[    3.697508] iwlwifi 0000:01:00.0: enabling device (0000 -> 0002)
[    3.815884] iwlwifi 0000:01:00.0: Direct firmware load for iwlwifi-8265-26.ucode failed with error -2
[    3.826563] iwlwifi 0000:01:00.0: Falling back to user helper
[    4.293511] cdc_acm 1-2.4:1.0: ttyACM0: USB ACM device
[    4.295924] usbcore: registered new interface driver cdc_acm
[    4.295928] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
[    4.389863] uvcvideo: Found UVC 1.00 device See3CAM_CU55 (2560:c154)
[    4.417518] uvcvideo 2-1.3:1.0: Entity type for entity Extension 3 was not initialized!
[    4.425817] uvcvideo 2-1.3:1.0: Entity type for entity Processing 2 was not initialized!
[    4.434360] uvcvideo 2-1.3:1.0: Entity type for entity Camera 1 was not initialized!
[    4.448231] usbcore: registered new interface driver btusb
[    4.448888] input: See3CAM_CU55 as /devices/70090000.xusb/usb2/2-1/2-1.3/2-1.3:1.0/input/input4
[    4.450987] usbcore: registered new interface driver uvcvideo
[    4.450991] USB Video Class driver (1.1.1)
[    4.452814] Bluetooth: hci0: Bootloader revision 0.0 build 26 week 38 2015
[    4.453826] Bluetooth: hci0: Device revision is 16
[    4.453831] Bluetooth: hci0: Secure boot is enabled
[    4.453833] Bluetooth: hci0: OTP lock is enabled
[    4.453835] Bluetooth: hci0: API lock is enabled
[    4.453838] Bluetooth: hci0: Debug lock is disabled
[    4.453840] Bluetooth: hci0: Minimum firmware build 1 week 10 2014
[    4.473058] Bluetooth: hci0: Found device firmware: intel/ibt-12-16.sfi
[    4.502813] using random self ethernet address
[    4.508306] using random host ethernet address
[    4.519275] iwlwifi 0000:01:00.0: Direct firmware load for iwlwifi-8265-25.ucode failed with error -2
[    4.528581] iwlwifi 0000:01:00.0: Falling back to user helper
[    4.704389] iwlwifi 0000:01:00.0: Direct firmware load for iwlwifi-8265-24.ucode failed with error -2
[    4.714349] iwlwifi 0000:01:00.0: Falling back to user helper
[    4.817417] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[    4.817428] Bluetooth: BNEP socket layer initialized
[    4.942371] iwlwifi 0000:01:00.0: Direct firmware load for iwlwifi-8265-23.ucode failed with error -2
[    4.942374] iwlwifi 0000:01:00.0: Falling back to user helper
[    5.204804] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[    5.206057] eth0: 0xffffff800a40c000, 00:04:4b:ec:a6:1e, IRQ 406
[    5.224871] iwlwifi 0000:01:00.0: loaded firmware version 22.391740.0 op_mode iwlmvm
[    5.236898] Mass Storage Function, version: 2009/09/11
[    5.236902] LUN: removable file: (no medium)
[    5.245596] using random self ethernet address
[    5.245599] using random host ethernet address
[    5.266472] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[    5.285441] rndis0: HOST MAC 7a:64:62:be:d9:c0
[    5.285729] rndis0: MAC 7a:64:62:be:d9:c1
[    5.288265] iwlwifi 0000:01:00.0: Detected Intel(R) Dual Band Wireless AC 8265, REV=0x230
[    5.289306] usb0: HOST MAC 7a:64:62:be:d9:c2
[    5.289338] usb0: MAC 7a:64:62:be:d9:c3
[    5.289358] tegra-xudc-new 700d0000.xudc: exiting ELPG
[    5.290270] iwlwifi 0000:01:00.0: L1 Enabled - LTR Enabled
[    5.290944] iwlwifi 0000:01:00.0: L1 Enabled - LTR Enabled
[    5.292769] tegra-xudc-new 700d0000.xudc: exiting ELPG done
[    5.292859] tegra-xudc-new 700d0000.xudc: ep 0 (type: 0, dir: out) enabled
[    5.292952] tegra-xudc-new 700d0000.xudc: entering ELPG
[    5.293207] tegra-xudc-new 700d0000.xudc: entering ELPG done
[    5.293324] tegra-xudc-new 700d0000.xudc: exiting ELPG
[    5.293868] tegra-xudc-new 700d0000.xudc: exiting ELPG done
[    5.293877] tegra-xudc-new 700d0000.xudc: entering ELPG
[    5.294114] tegra-xudc-new 700d0000.xudc: entering ELPG done
[    5.300552] l4tbr0: port 1(rndis0) entered blocking state
[    5.300555] l4tbr0: port 1(rndis0) entered disabled state
[    5.301249] device rndis0 entered promiscuous mode
[    5.314466] IPv6: ADDRCONF(NETDEV_UP): rndis0: link is not ready
[    5.325887] l4tbr0: port 2(usb0) entered blocking state
[    5.325890] l4tbr0: port 2(usb0) entered disabled state
[    5.326500] device usb0 entered promiscuous mode
[    5.335151] IPv6: ADDRCONF(NETDEV_UP): usb0: link is not ready
[    5.408698] ieee80211 phy0: Selected rate control algorithm 'iwl-mvm-rs'
[    5.420717] thermal thermal_zone6: failed to read out thermal zone (-5)
[    5.427519] thermal thermal_zone6: Registering thermal zone thermal_zone6 for type iwlwifi_1
[    5.501347] zram: Added device: zram0
[    5.502947] zram: Added device: zram1
[    5.504463] zram: Added device: zram2
[    5.506353] zram: Added device: zram3
[    5.532999] zram0: detected capacity change from 0 to 518537216
[    5.562500] Adding 506380k swap on /dev/zram0.  Priority:5 extents:1 across:506380k SS
[    5.565526] zram1: detected capacity change from 0 to 518537216
[    5.589005] Adding 506380k swap on /dev/zram1.  Priority:5 extents:1 across:506380k SS
[    5.599487] zram2: detected capacity change from 0 to 518537216
[    5.617705] Adding 506380k swap on /dev/zram2.  Priority:5 extents:1 across:506380k SS
[    5.627716] zram3: detected capacity change from 0 to 518537216
[    5.640246] Adding 506380k swap on /dev/zram3.  Priority:5 extents:1 across:506380k SS
[    5.768577] iwlwifi 0000:01:00.0: L1 Enabled - LTR Enabled
[    5.768944] iwlwifi 0000:01:00.0: L1 Enabled - LTR Enabled
[    5.884995] iwlwifi 0000:01:00.0: L1 Enabled - LTR Enabled
[    5.885310] iwlwifi 0000:01:00.0: L1 Enabled - LTR Enabled
[    5.939400] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
[    6.000896] Bluetooth: hci0: Waiting for firmware download to complete
[    6.001779] Bluetooth: hci0: Firmware loaded in 1517161 usecs
[    6.001921] Bluetooth: hci0: Waiting for device to boot
[    6.013784] Bluetooth: hci0: Device booted in 11624 usecs
[    6.014385] Bluetooth: hci0: Found Intel DDC parameters: intel/ibt-12-16.ddc
[    6.016796] Bluetooth: hci0: Applying Intel DDC parameters completed
[    6.310311] iwlwifi 0000:01:00.0: L1 Enabled - LTR Enabled
[    6.310989] iwlwifi 0000:01:00.0: L1 Enabled - LTR Enabled
[    6.426282] iwlwifi 0000:01:00.0: L1 Enabled - LTR Enabled
[    6.426597] iwlwifi 0000:01:00.0: L1 Enabled - LTR Enabled
[    6.478871] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
[    6.492546] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
[    7.050230] usb 2-1.3: usb_suspend_both: status 0
[    7.102252] usb 2-1: usb_suspend_both: status 0
[    7.102427] usb usb2: usb_suspend_both: status 0
[    8.849932] Bridge firewalling registered
[    8.876890] nf_conntrack version 0.5.0 (16384 buckets, 65536 max)
[    9.168097] Netfilter messages via NETLINK v0.30.
[    9.171484] ctnetlink v0.93: registering with nfnetlink.
[    9.370190] r8168: eth0: link up
[    9.370218] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[    9.501937] IPv6: ADDRCONF(NETDEV_UP): docker0: link is not ready
[    9.627914] tegradc tegradc.0: unblank
[    9.627924] tegradc tegradc.1: blank - powerdown
[   11.165670] fuse init (API version 7.26)
[   14.790896] tegradc tegradc.0: unblank
[   14.790907] tegradc tegradc.1: blank - powerdown
[   31.864705] vdd-fan: disabling
[   31.864747] vdd-usb-vbus: disabling
[   31.864777] vdd-usb-vbus2: disabling
[   31.864873] vddio-sdmmc3-ap: disabling
[   31.866127] avdd-io-edp-1v05: disabling
[   31.866930] vdd-usb-hub-en: disabling
ion@ion-desktop:~$ 

The messages around the ttyTHS* are:

[    1.121784] 70006000.serial: ttyS0 at MMIO 0x70006000 (irq = 63, base_baud = 25500000) is a Tegra
[    1.121889] console [ttyS0] enabled
[    1.123252] Console: switching to colour frame buffer device 240x67
[    1.123330] 70006040.serial: ttyTHS1 at MMIO 0x70006040 (irq = 64, base_baud = 0) is a TEGRA_UART
[    1.123377] tegradc tegradc.0: fb registered
[    1.123709] serial-tegra 70006200.serial: RX in PIO mode
[    1.123820] 70006200.serial: ttyTHS2 at MMIO 0x70006200 (irq = 65, base_baud = 0) is a TEGRA_UART
[    1.125214] [drm] Initialized

Some of the log excerpts follow, and I will make comments on each one.

In the above I can’t say if the usb_port_owner_info and lane_owner_info is valid, but unless you changed these, then they would be valid for the developer kit carrier board. These are not directly related to serial console, but if USB were to fail, then this could cause indirect failure of serial over USB.

This entry is what determines serial console within Linux (this can differ in stages prior to Linux):
console=ttyS0,115200n8
(note that this uses the legacy driver, which is expected since it can provide continuity of service for serial console as the system switches from boot content to the Linux kernel)

The above can be ignored since this is for the local console and unrelated to serial console.

I don’t know the meaning of all of the above, but this is where serial console is added to “/dev/ttyTHS1”. Looks like “ttyS0” is disabled for a moment, but then added back in. Probably it should just remain as ttys0 and ttyTHS1 should not be set up as serial console. I did not see the kernel command line adding ttyTHS1 to serial console, but perhaps this is related to either the device tree or something in udev. I tend to doubt ttyTHS1 was added due to device tree since this would have shown up as inherited in the kernel “cmdline”, and it is not there. This is a mystery. You should verify, that once Linux boot completes, if both “/dev/ttys0” and “/dev/ttyTHS1” function as a serial console.

Any other serial port, aside from “ttyS0/ttyTHS0”, and “ttyS1/ttyTHS1”, should be available if your user is in group dialout. Sorry, I don’t know which pins access a particular device.

When it comes to failure to open a device, is your user a member of group dialout? If not, what do you see if you use “sudo” to run your program as root? Note that something is wrong if dialout does not work, but using root is a good debug step. So for example, “sudo putty”.

Thank you for your detail info.
I can see /dev/ttyS0 is a console as it is in tty group and I can get the debug message from the terminal during boots up. It has no /dev/ttyTHS0 is available.

I can’t open /dev/ttyS1 from putty no matter use root user or normal user, alougth it is in dialout group. I think it may be the reason of one driver is used. After boots up, the ttyTHS related driver is used.

I can’t open /dev/ttyTHS1 from putty as normal user due it is in tty group, not in dialout group.

I can open /dev/ttyTHS1 from putty as root user, and send text to a terminal in my laptop, which connected via USB to serial port converter and the pin 8 and 10 on 40 pins in carry board. This has proved that the /dev/ttyTHS1 is mapped to pin 8 and 10 on 40 pins in carry board.

I can open /dev/ttyTHS2 from putty as normal user, it means that the normal user has been added into the dialout group.

Now, the question is why /dev/ttyTHS1 is in tty group and how to change it to dialout group.

image

Thanks

When fully booted, is there any indication that this is running as a serial console? If not, then something improperly labelled this as group tty. I am suspicious of this anyway because (as mentioned previously) there should only be one hardware device running serial console. If ttyTHS1 is truly not a console, then we would need to find out why it was labelled as such.

I am also going to suggest creating a source code version of the device tree and attaching the file to the forums. Easy to do. If you run the command below, and dtc is missing, then “sudo apt-get install device-tree-compiler”>:
dtc -I fs -O dts -o extracted.dts /proc/device-tree

The file name “extracted.dts” will be a mirror of your existing and active device tree.

extracted.dts (321.4 KB)

Please see the attached file for details.
Thanks

One thing I forgot…to match this to that port (and see if ttyTHS0 was ever mentioned), what do you see from:
dmesg | grep 'ttyTHS'

dmesg | grep 'ttyTHS'
[    1.132195] 70006040.serial: ttyTHS1 at MMIO 0x70006040 (irq = 64, base_baud = 0) is a TEGRA_UART
[    1.132606] 70006200.serial: ttyTHS2 at MMIO 0x70006200 (irq = 65, base_baud = 0) is a TEGRA_UART

Most of what follows just explains the debugging and finding which device corresponds to which address and/or alias. You could skip to the end and see the part about attaching logs if you don’t want to read all of this (I’m sure someone will one day be interested in the debug steps, so it is included even if it isn’t mandatory).

Note that in this last log the “70006040” is the physical address associated with the ttyTHS1, and simiarly, “70006200” is the physical address associated with ttyTHS2. From this we can match device tree content.

If interested, look in the device tree for “serial@70006040” for anything associated with ttyTHS1, and “serial@70006200” for anything related to ttyTHS2. Note that each of these has a “compatible” line. “compatible” is the list of drivers capable of binding to this hardware. Examples:

	serial@70006040 {
		compatible = "nvidia,tegra114-hsuart";
...
	serial@70006200 {
		compatible = "nvidia,tegra114-hsuart";

…and so we know from above that two drivers (spoiler: Legacy plus DMA-capable drivers) can be used with that hardware (best to use only one driver at a time though), and one of these corresponds to a “ttyS#” device special file, while the other corresponds to a “ttyTHS#” device special file.

The above is how the characteristics for running the device are set up, e.g., indirectly, default speed. Those apply directly to the UART hardware. Other entries will use the UART, e.g., aliases. Examples:

		uartc = "/serial@70006200";
...
		uartb = "/serial@70006040";

…so mention of uartc implies related to the serial@70006200. This is an excerpt from the actual alias block in the device tree:

	aliases {
...
		serial3 = "/serial@70006300";
...
		serial1 = "/serial@70006040";
...
		serial2 = "/serial@70006200";
...
		serial0 = "/serial@70006000";
	};

…and so a reference to serial2 is also a name which can be used for the device serial@70006200. I mention these because depending on document you might see a reference note based on one of these notations, and this is how you cross-reference them. This is also how the drivers cross reference them.

I see two drivers listed for two devices which are related to your issue. Note that there are more “serial@” entries. We are interested in finding out why ttyS0 and ttyTHS1 are in use for serial console if they are not the same physical hardware UART.

Note that if you run this command you’ll see a lot of serial devices, and from this you can search for physical addresses in boot logs:

cd /proc/device-tree
egrep -R -H -a -i 'serial@'

The file names will tell you about notation. Then you can grep for the addresses in boot logs. I see all addresses cross referencing either the alias or the assignment to other notation. On a TX2 this is an example of the alias list from the above egrep:

# /proc/device-tree# egrep -R -H -a -i 'serial@' *
aliases/serial5:/serial@3150000
aliases/serial3:/serial@3130000
aliases/serial1:/serial@3110000
aliases/serial6:/serial@c290000
aliases/serial4:/serial@3140000
aliases/serial2:/serial@c280000
aliases/serial0:/serial@3100000

In this TX2, for the next egrep of dmesg, I used this, along with the result (this will differ for your case):

# dmesg | egrep '(3150000|3130000|3110000|c290000|3140000|c280000|3100000)'
[    0.000000] earlycon: uart8250 at MMIO32 0x0000000003100000 (options '')
[    0.000000] Kernel command line: root=/dev/mmcblk0p1 rw rootwait console=ttyS0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0 video=tegrafb no_console_suspend=1 earlycon=uart8250,mmio32,0x3100000 nvdumper_reserved=0x2772e0000 gpt 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 root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4
[    0.449723] iommu: Adding device 3100000.serial to group 14
[    0.450089] iommu: Adding device 3110000.serial to group 15
[    0.450439] iommu: Adding device c280000.serial to group 16
[    0.450781] iommu: Adding device 3130000.serial to group 17
[    0.954046] 3100000.serial: ttyS0 at MMIO 0x3100000 (irq = 36, base_baud = 25500000) is a Tegra
[    3.267062] 3110000.serial: ttyTHS1 at MMIO 0x3110000 (irq = 37, base_baud = 0) is a TEGRA_UART
[    3.270271] c280000.serial: ttyTHS2 at MMIO 0xc280000 (irq = 38, base_baud = 0) is a TEGRA_UART
[    3.271974] serial-tegra 3130000.serial: RX in PIO mode
[    3.272996] 3130000.serial: ttyTHS3 at MMIO 0x3130000 (irq = 39, base_baud = 0) is a TEGRA_UART

The above block provides assignment information for every UART the Jetson is aware of. Note that in this example (not from your Jetson, so you’d have to find this for your case) ttyS0 (legacy driver) is at address 3100000 (hexadecimal “0x03100000”). This means if I grep for 3100000, and see a device with name convention "ttyTHS#, that this is the same hardware. This lets me narrow down the egrep:

# root@x2:/proc/device-tree# dmesg | egrep '(3100000)'
[    0.000000] earlycon: uart8250 at MMIO32 0x0000000003100000 (options '')
[    0.000000] Kernel command line: root=/dev/mmcblk0p1 rw rootwait console=ttyS0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0 video=tegrafb no_console_suspend=1 earlycon=uart8250,mmio32,0x3100000 nvdumper_reserved=0x2772e0000 gpt 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 root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4
[    0.449723] iommu: Adding device 3100000.serial to group 14
[    0.954046] 3100000.serial: ttyS0 at MMIO 0x3100000 (irq = 36, base_baud = 25500000) is a Tegra

In the kernel command line this is why this driver is running console under ttyS0 (this is for a TX2, not your case):
earlycon=uart8250,mmio32,0x3100000

For my case, in which I only see (correctly) ttyS0 as group tty, things are running as expected. There is no ttyTHS associated with the hardware UART address which is used (in my case) as serial console.

Can you create a file to attach with your dmesg? Then I can run these grep’s and find out more about why two drivers are used for serial console at the same time:
dmesg 2>&1 | tee log_dmesg.txt
(then attach “log_dmesg.txt” to the forum…this can be saved by other users and have grep run on the content just like it is on the local machine even though it is for your Jetson)

You could run the above as well, but it is a lot of detail which can be missed. We have the device tree, and now if we pair it with the full dmesg we can see what’s going on. Incidentally, rather than dmesg, the ideal would be a full serial console boot log. If you can create a full serial console boot log, and not just dmesg, it might add details (but then again, we know serial console is part of the problem, so maybe not).