Additionally, could you address my question with respect to what the usb0 and rdnis0 interfaces are for from my ifconfig?
@DaneLLL Any thoughts on the above?
We try another phone and it also works on Xavier/r32.3.1. usb1 is present.
[ 959.036225] usb 2-4: new SuperSpeed USB device number 2 using tegra-xusb [ 959.059996] usb 2-4: New USB device found, idVendor=18d1, idProduct=4ee1 [ 959.060011] usb 2-4: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 959.060060] usb 2-4: Product: Pixel 2 [ 959.060066] usb 2-4: Manufacturer: Google [ 959.060073] usb 2-4: SerialNumber: HT79E1A00831 [ 967.703769] usb 2-4: USB disconnect, device number 2 [ 968.044016] usb 2-4: new SuperSpeed USB device number 3 using tegra-xusb [ 968.069220] usb 2-4: New USB device found, idVendor=18d1, idProduct=4ee3 [ 968.069249] usb 2-4: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 968.069255] usb 2-4: Product: Pixel 2 [ 968.069261] usb 2-4: Manufacturer: Google [ 968.069266] usb 2-4: SerialNumber: HT79E1A00831 [ 968.131494] rndis_host 2-4:1.0 usb1: register 'rndis_host' at usb-3610000.xhci-4, RNDIS device, ea:11:41:c8:3f:c3 [ 968.134591] usbcore: registered new interface driver rndis_host
We are checking your query about usb0 and rndis0. Will update.
Do you have any insight as to why it works for your phones but not mine? Do you have any suggestions on how to further debug why my setup doesn’t work? As I mentioned, I am able to get it to work out of the box with my x86 Ubuntu machine with the same phone setup.
We have tried OnePlus 7 and Google Pixel 2. Don’t observe the issue. May see if other users who have Samsung phones can share experience.
Unfortunately I don’t have any other android phones on hand to test. However, could it be that the outdated kernel that l4t is based on is the cause? I’m assuming cdc_ether and rdnis_host is not loading for my phone because it doesn’t have updated logic to detect that the usb identifiers for my phone is one that these drivers should handle? The kernel version on my computer is 4.15.0-99. Is there a way to just update the cdc_ether, rndis_host, and cdc_acm part of the kernel? Or maybe spoofing the usb identifier to trick these kernel modules to activate?
Since we don’t have the phone, may see if other users have it and can share experience.
I appreciate the help but there’s not a single employee in Nvidia that owns a Samsung phone? What about the other parts of my question about the outdated kernel potentially being the cause? Can you suggest other things to try? To be honest I find it a little unreasonable that Nvidia is expecting the community to pick up support for such a deeply technical issue with the Jetson boards for a basic feature with a device from literally the most popular smartphone manufacturer in the world. And especially since it works out of the box with standard Ubuntu.
It looks to be enumerated as usb0
[ 63.199626] rndis_host 2-1:1.0 usb0: register 'rndis_host' at usb-0000:00:14.0-1, RNDIS device, 2a:2a:69:30:22:78
Please try sudo dhclient usb0.
That is the output from my x86 machine where the feature works, not the Jetson. The Jetson does not load the rdnis_host module at all, and as I mentioned, even with the phone not plugged in there is already a usb0 so usb0 can’t be the phone.
$ sudo apt-get install linux-image-generic-hwe-18.04
I have seen that before, and I am not a linux expert, but isn’t that package developed by Ubuntu for vanilla Ubuntu? Since the Jetson boards are running on a modified Linux 4 Tegra distribution/kernel, do we need something different to update those specific kernel modules?
I tried it and it says unsupported platform:
x@xavier:~$ sudo apt-get install linux-image-generic-hwe-18.04 Reading package lists... Done Building dependency tree Reading state information... Done The following packages were automatically installed and are no longer required: efibootmgr libfwup1 Use 'sudo apt autoremove' to remove them. The following additional packages will be installed: linux-image-5.3.0-53-generic linux-modules-5.3.0-53-generic linux-modules-extra-5.3.0-53-generic Suggested packages: fdutils linux-hwe-doc-5.3.0 | linux-hwe-source-5.3.0 linux-hwe-tools linux-headers-5.3.0-53-generic The following NEW packages will be installed: linux-image-5.3.0-53-generic linux-image-generic-hwe-18.04 linux-modules-5.3.0-53-generic linux-modules-extra-5.3.0-53-generic 0 upgraded, 4 newly installed, 0 to remove and 0 not upgraded. 1 not fully installed or removed. Need to get 62.4 MB of archives. After this operation, 301 MB of additional disk space will be used. Do you want to continue? [Y/n] y Get:1 http://ports.ubuntu.com/ubuntu-ports bionic-updates/main arm64 linux-modules-5.3.0-53-generic arm64 5.3.0-53.47~18.04.1 [13.7 MB] Get:2 http://ports.ubuntu.com/ubuntu-ports bionic-updates/main arm64 linux-image-5.3.0-53-generic arm64 5.3.0-53.47~18.04.1 [9,872 kB] Get:3 http://ports.ubuntu.com/ubuntu-ports bionic-updates/main arm64 linux-modules-extra-5.3.0-53-generic arm64 5.3.0-53.47~18.04.1 [38.8 MB] Get:4 http://ports.ubuntu.com/ubuntu-ports bionic-updates/main arm64 linux-image-generic-hwe-18.04 arm64 22.214.171.124.110 [2,700 B] Fetched 62.4 MB in 7s (9,311 kB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package linux-modules-5.3.0-53-generic. (Reading database ... 182405 files and directories currently installed.) Preparing to unpack .../linux-modules-5.3.0-53-generic_5.3.0-53.47~18.04.1_arm64.deb ... Unpacking linux-modules-5.3.0-53-generic (5.3.0-53.47~18.04.1) ... Selecting previously unselected package linux-image-5.3.0-53-generic. Preparing to unpack .../linux-image-5.3.0-53-generic_5.3.0-53.47~18.04.1_arm64.deb ... Unpacking linux-image-5.3.0-53-generic (5.3.0-53.47~18.04.1) ... Selecting previously unselected package linux-modules-extra-5.3.0-53-generic. Preparing to unpack .../linux-modules-extra-5.3.0-53-generic_5.3.0-53.47~18.04.1_arm64.deb ... Unpacking linux-modules-extra-5.3.0-53-generic (5.3.0-53.47~18.04.1) ... Selecting previously unselected package linux-image-generic-hwe-18.04. Preparing to unpack .../linux-image-generic-hwe-18.04_126.96.36.199.110_arm64.deb ... Unpacking linux-image-generic-hwe-18.04 (188.8.131.52.110) ... Setting up linux-modules-5.3.0-53-generic (5.3.0-53.47~18.04.1) ... Setting up linux-image-5.3.0-53-generic (5.3.0-53.47~18.04.1) ... I: /vmlinuz is now a symlink to boot/vmlinuz-5.3.0-53-generic I: /initrd.img is now a symlink to boot/initrd.img-5.3.0-53-generic Setting up flash-kernel (3.98ubuntu11~18.04.1) ... flash-kernel: deferring update (trigger activated) Setting up linux-modules-extra-5.3.0-53-generic (5.3.0-53.47~18.04.1) ... Setting up linux-image-generic-hwe-18.04 (184.108.40.206.110) ... Processing triggers for linux-image-5.3.0-53-generic (5.3.0-53.47~18.04.1) ... /etc/kernel/postinst.d/dkms: * dkms: running auto installation service for kernel 5.3.0-53-generic Error! Your kernel headers for kernel 5.3.0-53-generic cannot be found. Please install the linux-headers-5.3.0-53-generic package, or use the --kernelsourcedir option to tell DKMS where it's located Error! Your kernel headers for kernel 5.3.0-53-generic cannot be found. Please install the linux-headers-5.3.0-53-generic package, or use the --kernelsourcedir option to tell DKMS where it's located ...done. /etc/kernel/postinst.d/initramfs-tools: update-initramfs: Generating /boot/initrd.img-5.3.0-53-generic Warning: root device /dev/root does not exist Warning: couldn't identify filesystem type for fsck hook, ignoring. I: The initramfs will attempt to resume from /dev/zram7 I: (UUID=a36fbb7a-e246-40f9-a606-6057f715ea1d) I: Set the RESUME variable to override this. /sbin/ldconfig.real: Warning: ignoring configuration file that cannot be opened: /etc/ld.so.conf.d/aarch64-linux-gnu_EGL.conf: No such file or directory /sbin/ldconfig.real: Warning: ignoring configuration file that cannot be opened: /etc/ld.so.conf.d/aarch64-linux-gnu_GL.conf: No such file or directory flash-kernel: deferring update (trigger activated) /etc/kernel/postinst.d/zz-flash-kernel: flash-kernel: deferring update (trigger activated) Processing triggers for flash-kernel (3.98ubuntu11~18.04.1) ... Unsupported platform. dpkg: error processing package flash-kernel (--configure): installed flash-kernel package post-installation script subprocess returned error exit status 1 Errors were encountered while processing: flash-kernel E: Sub-process /usr/bin/dpkg returned an error code (1)
The issue looks to be that certain phones are not listed as USB modem, and do not trigger cdc_ether.
Please check if this works:
Would you mind sharing exactly what I should try? I’m lost here since my phone does not show up at all as a network interface so I’m not sure how I can change the mac address of it. I think this is because rndis_host is not being loaded because it doesn’t recognize the USB device as a tether that needs it?
You may try to enable USB debug mode as suggested in
Not sure but name of network interface might be ztbto4tsm2.
That doesn’t make sense. My understanding is that cdc_ether/rndis_host is not even detecting the USB device as a viable candidate for setting it up as a network interface so it doesn’t load in and doesn’t convert the USB device as a network interface. I already have USB debugging mode enabled and as I mentioned above, ztbto4tsm2 is the network interface created by my VPN and is not associated with the phone. Is there an engineer that works on the kernel side of l4t that I could get in touch with?
Please apply the patch and try again.