TX2 not able connect with Ethernet cable after installing linux image

@ssabuwala

You could try fully flashing the TX2 modules that do not have ethernet with bootloader, dtb etc.

Use:
sudo ./flash.sh -r jetson-tx2 mmcblk0p1

In place of:
sudo ./flash.sh -r -k APP jetson-tx2 mmcblk0p1

This will still flash your cloned rootfs (system.img) and will flash all other components. If there is a discrepancy between other partition’s versions and the rootfs, you could loose eth0 as a result.

Ok, got it can you please provide which file i need to use instead of this Tegra186_Linux_R32.4.4_aarch64.tbz2.

When your sdkmanager flash your board, it already downloaded several Linux_for_Tegra for each release. The default path is under ~/. You can check if there is any “nvidia” folder there. Also, please do not use VM.

Ok, got the version Thanks.
will check using this.

1 Like

Hi @ssabuwala,

As per discussion on another thread. Let’s us this to follow up your issue.

My first question is, why do you still prepare the driver package and rel32.5.1 rootfs from the website but not the one prepared by sdkmanager? Is there any problem in the sdkm?

And the second question is, how many tx2 are in use to reproduce this issue? Are you using the same device to clone out and copy it back and ethernet is dead? Or there are 2 jetson tx2 and you clone out from A device and copy to B device?

I am using custom image because it get less time to install all the software according to my requirement.
I have total 5 tx2 and out of 5 only 2 are working.
I have installed all the software in the one tx2 and using Ubuntu 18.04.5 LTS and create the image file and install this image file to another tx2.

We tried to reproduce your issue with our tx2 device but we don’t have ethernet problem.

Could you help check if you don’t use custom image but directly clone out and copy it back, will you hit this error?

Actually, there is one user who has same ethernet error on jetson xavier. But his case is not related to clone image. His case is due to device tree is being replaced. I believe your dtb is being replaced too but the reason is not clear.

Hi @WayneWWW, how I check the device tree is being replaced or not?

You can check /proc/device-tree on your device before and after doing the cloning.

There would be lots of nodes. To be more precisely, you can check those under /proc/device-tree/ether_qos@2490000. This node is for the ethernet connection.

The most important thing I want to find out is why the dtb gets changed. Thus, I would suggest you to follow our request and check below first.

Could you help check if you don’t use custom image but directly clone out and copy it back, will you hit this error?

clone out and copy it back means I need to use SDK manager and once all the software installs then I will create a new image and install it back to the same TX2 and check will face the same issue or not right?

Yes, if you have multiple tx2, you can try it on differentTX2 too. I mean clone from TX2 A to TX2 B.

And just the pure image from sdkmanager without any customization.

Hi @WayneWWW ,
I have check using SDK Manager at that time details of /proc/device-tree/ether_qos@2490000

and eth0 is working.
after install custom image at that time details of /proc/device-tree/ether_qos@2490000

and eth0 is not working.

Could you share 2 dmesg when eth0 is not working and when eth0 is working?

Are you sure the /proc/device-tree result for “working eth0” is really from pure jetpack4.5.1 TX2? Your result is different from mine.

eth0 is working dmesg logs
dmesg-116-eth0-working.log (59.7 KB)
eth0 is not working dmesg logs
dmesg-116-eth0-not-working.log (62.0 KB)

Again, please do reply all my questions here.

Are you sure the /proc/device-tree result for “working eth0” is really from pure jetpack4.5.1 TX2? Your result is different from mine.

A pure jetpack4.5.1 means just flash it with sdkmanager, boot up and then dump log. Do not try anything that would change the device tree. For example, running jetson-IO or the apt-get upgrade.

Just make it clearly to you to understand. I already knew why the ethernet cannot work from your dmesg.
It is due to one property is missing from the device tree. That is why there is below line from dmesg.

[ 1.128006] eqos 2490000.ether_qos: invalid settings : rx-frames must be enabled along with use_riwt in DT
[ 1.137678] Coalescing parameters incorrect
[ 1.143017] eqos: probe of 2490000.ether_qos failed with error -22

What I cannot understand is why this thing happens after doing cloning and we cannot reproduce this issue on our side. Also, in your “working eth0” dts screenshot, that property is also missing. Thus, if that is really your dts result, your eth0 would not work either.

What we should check now is whether our software version is really aligned to pure jetpack4.5.1 and no other change is done.

There is one point that I would like to check. Is your test still on 2 different Jetson TX2 or you are doing this on single TX2?

I guess the cause of this issue is you are mixing up 2 different version of software release.

For example, one device has jetpack4.5.1 and another one is jetpack4.4.1. You clone the jetpack4.5.1 kernel to the 4.4.1 but the other components are still 4.4.1. Then, the device tree has property missing and then crash the ethernet.

Hello bro how can we let the Jetpack 4.4.1 's device update to Jetpack 4.5.1 before flush?as your mean is first just need update the device to jetpack4.5.1 then can been flush right?