Hi,I am currently using the r38.4 version of the BSP package and have found that mgbe is no longer available. The following error appears in the dmesg log
root@tegra-ubuntu:/home/tj_software# dmesg |grep nvethernet
[ 11.131711] nvethernet a808a10000.ethernet: Adding to iommu group 46
[ 11.136442] nvethernet a808a10000.ethernet: Virtualization is not enabled
[ 11.136450] nvethernet a808a10000.ethernet: failed to read skip mac reset flag, default 0
[ 11.136452] nvethernet a808a10000.ethernet: failed to read MDIO address
[ 11.136456] nvethernet a808a10000.ethernet: Failed to read nvida,pause_frames, so setting to default support as disable
[ 11.136458] nvethernet a808a10000.ethernet: Failed to read nvida,disable-rx-checksum, so setting to default - rx checksum offload enabled
[ 11.136461] nvethernet a808a10000.ethernet: setting to default DMA bit mask
[ 11.136650] nvethernet a808a10000.ethernet: failed to parse PHY DT
[ 11.136667] nvethernet a808a10000.ethernet: failed to parse DT
[ 11.154736] nvethernet a808b10000.ethernet: Adding to iommu group 47
[ 11.156567] nvethernet a808b10000.ethernet: Virtualization is not enabled
[ 11.156571] nvethernet a808b10000.ethernet: failed to read skip mac reset flag, default 0
[ 11.156573] nvethernet a808b10000.ethernet: failed to read MDIO address
[ 11.156576] nvethernet a808b10000.ethernet: Failed to read nvida,pause_frames, so setting to default support as disable
[ 11.156577] nvethernet a808b10000.ethernet: Failed to read nvida,disable-rx-checksum, so setting to default - rx checksum offload enabled
[ 11.156578] nvethernet a808b10000.ethernet: setting to default DMA bit mask
[ 11.156627] nvethernet a808b10000.ethernet: failed to parse PHY DT
[ 11.156643] nvethernet a808b10000.ethernet: failed to parse DT
[ 11.163642] nvethernet a808d10000.ethernet: Adding to iommu group 48
[ 11.165623] nvethernet a808d10000.ethernet: Virtualization is not enabled
[ 11.165627] nvethernet a808d10000.ethernet: failed to read skip mac reset flag, default 0
[ 11.165629] nvethernet a808d10000.ethernet: failed to read MDIO address
[ 11.165639] nvethernet a808d10000.ethernet: Failed to read nvida,pause_frames, so setting to default support as disable
[ 11.165642] nvethernet a808d10000.ethernet: Failed to read nvida,disable-rx-checksum, so setting to default - rx checksum offload enabled
[ 11.165645] nvethernet a808d10000.ethernet: setting to default DMA bit mask
[ 11.165699] nvethernet a808d10000.ethernet: failed to parse PHY DT
[ 11.169290] nvethernet a808d10000.ethernet: failed to parse DT
[ 11.212100] nvethernet a808e10000.ethernet: Adding to iommu group 50
[ 11.213964] nvethernet a808e10000.ethernet: Virtualization is not enabled
[ 11.219590] nvethernet a808e10000.ethernet: failed to read skip mac reset flag, default 0
[ 11.219592] nvethernet a808e10000.ethernet: failed to read MDIO address
[ 11.219596] nvethernet a808e10000.ethernet: Failed to read nvida,pause_frames, so setting to default support as disable
[ 11.219600] nvethernet a808e10000.ethernet: Failed to read nvida,disable-rx-checksum, so setting to default - rx checksum offload enabled
[ 11.219604] nvethernet a808e10000.ethernet: setting to default DMA bit mask
[ 11.222718] nvethernet a808e10000.ethernet: failed to parse PHY DT
[ 11.222720] nvethernet a808e10000.ethernet: failed to parse DT
root@tegra-ubuntu:/home/tj_software# ifconfig |grep mgbe
root@tegra-ubuntu:/home/tj_software#
On my Thor
lsmod|grep nvethernet
nvethernet 2928640 1 tegra_capture_coe
nvpps 28672 2 mttcan,nvethernet
If absent
sudo modprobe nvethernet
sudo ethtool mgbe0_0
hi,whitesscott
i have that , I noticed that it might be because I commented out nvpps in the device tree, as I thought it wasn’t being used. I’ll try enabling it.I’m not sure if they are related.
root@tegra-ubuntu:/home/tj_software# lsmod |grep nvethernet
nvethernet 2961408 1 tegra_capture_coe
nvpps 28672 2 mttcan,nvethernet
root@tegra-ubuntu:/home/tj_software#
source/nvidia-oot/Documentation/devicetree/bindings/nvpps/nvpps.txt
Nvpps is a Linux Kernel mode driver to support Time domain correlation feature on
Nvidia Tegra SOCs
sudo dmesg | grep nvpps
[ 8.153013] nvpps c230000.nvpps: nvpps_probe
[ 8.168607] nvpps c230000.nvpps: primary-emac : ethernet@a808a10000
[ 8.174915] nvpps c230000.nvpps: ts-capture-interval set to 1000ms
[ 8.186344] nvpps c230000.nvpps: PPS GPIO not provided in DT, only Timer mode available
[ 8.200663] nvpps c230000.nvpps: Initial operating mode selected as TIMER
[ 8.219712] nvpps c230000.nvpps: nvpps cdev(499:0)
[ 8.230006] nvpps nvpps0: Using Lock threshold value(in ns) : 20000
[ 8.236290] nvpps c230000.nvpps: tsc_res_ns(1)
Hi,whitesscott
It seems it’s not the reason. I have enabled it now, but mgbe is still not available.Have you also updated to version 7.1? Is everything working fine on your side?
root@tegra-ubuntu:/# dmesg |grep nvpps
[ 11.406728] nvpps c230000.nvpps: nvpps_probe
[ 11.419433] nvpps c230000.nvpps: primary-emac : ethernet@a808a10000
[ 11.430957] nvpps c230000.nvpps: ts-capture-interval set to 1000ms
[ 11.443191] nvpps c230000.nvpps: PPS GPIO not provided in DT, only Timer mode available
[ 11.464046] nvpps c230000.nvpps: Initial operating mode selected as TIMER
[ 11.481970] nvpps c230000.nvpps: nvpps cdev(498:0)
[ 11.491660] nvpps nvpps0: Using Lock threshold value(in ns) : 20000
[ 11.523114] nvpps c230000.nvpps: tsc_res_ns(1)
root@tegra-ubuntu:/# ifconfig |grep mgbe
root@tegra-ubuntu:/#
root@tegra-ubuntu:/#
root@tegra-ubuntu:/#
I edited /etc/apt/sources.list.d/nvidia-l4t-apt-source.list. changed 38.2 to 38.4 apt update && apt upgrade and things are functional.
See if the device is up?
sudo ethtool mgbe0_0
sudo nmcli device show
IF=mbge0_0 # set to your device number
sudo ip link set "$IF" down
sleep 1
sudo ip link set "$IF" up
I didn’t upgrade directly. Right now, none of the ports are showing up.
root@tegra-ubuntu:/# IF=mbge0_0 # set to your device number
sudo ip link set "$IF" down
sleep 1
sudo ip link set "$IF" up
Cannot find device "mbge0_0"
Cannot find device "mbge0_0"
root@tegra-ubuntu:/# sudo ethtool mgbe0_0
netlink error: no device matches name (offset 24)
netlink error: No such device
netlink error: no device matches name (offset 24)
netlink error: No such device
netlink error: no device matches name (offset 24)
netlink error: No such device
netlink error: no device matches name (offset 24)
netlink error: No such device
netlink error: no device matches name (offset 24)
netlink error: No such device
netlink error: no device matches name (offset 24)
netlink error: No such device
netlink error: no device matches name (offset 24)
netlink error: No such device
No data available
root@tegra-ubuntu:/#
ip -br link
ls -l /sys/class/net
ls -d /sys/bus/platform/devices/*ethernet* 2>/dev/null
ls -d /sys/bus/platform/devices/*a808* 2>/dev/null
sudo modprobe -r nvethernet
sudo modprobe nvethernet
Sorry. I transposed a letter in mgbe0_0 above.
hi,whitesscott
it doesn’t matter . even with the correct spelling of mgbe0_0, the device can’t be found .
sudo apt search nvidia-l4t-kernel-oot-modules
nvidia-l4t-kernel-oot-modules/stable,now 6.8.12-tegra-38.4.0-20251230160601 arm64 [installed]
NVIDIA OOT Kernel Module Drivers Package
to make sure it’s installed?
what does this show
ip -br link
Hi,whitesscott
root@tegra-ubuntu:/home/tj_software# ip -br link
ls -l /sys/class/net
ls -d /sys/bus/platform/devices/*ethernet* 2>/dev/null
ls -d /sys/bus/platform/devices/*a808* 2>/dev/null
sudo modprobe -r nvethernet
sudo modprobe nvethernet
lo UNKNOWN 00:00:00:00:00:00 <LOOPBACK,UP,LOWER_UP>
can0 DOWN <NOARP,ECHO>
can1 DOWN <NOARP,ECHO>
can2 DOWN <NOARP,ECHO>
can3 DOWN <NOARP,ECHO>
l4tbr0 UP 86:9a:d3:67:3b:6e <BROADCAST,MULTICAST,UP,LOWER_UP>
usb0 UP 62:25:f6:cc:f4:89 <BROADCAST,MULTICAST,UP,LOWER_UP>
usb1 DOWN 62:25:f6:cc:f4:8b <NO-CARRIER,BROADCAST,MULTICAST,UP>
total 0
lrwxrwxrwx 1 root root 0 Jul 11 18:53 can0 -> ../../devices/platform/bus@0/81102f0000.mttcan/net/can0
lrwxrwxrwx 1 root root 0 Jul 11 18:53 can1 -> ../../devices/platform/bus@0/8110300000.mttcan/net/can1
lrwxrwxrwx 1 root root 0 Jul 11 18:53 can2 -> ../../devices/platform/bus@0/8110330000.mttcan/net/can2
lrwxrwxrwx 1 root root 0 Jan 1 1970 can3 -> ../../devices/platform/bus@0/8110340000.mttcan/net/can3
lrwxrwxrwx 1 root root 0 Jul 11 18:53 l4tbr0 -> ../../devices/virtual/net/l4tbr0
lrwxrwxrwx 1 root root 0 Jul 11 18:53 lo -> ../../devices/virtual/net/lo
lrwxrwxrwx 1 root root 0 Jul 11 18:53 usb0 -> ../../devices/platform/bus@0/a808670000.usb/gadget.0/net/usb0
lrwxrwxrwx 1 root root 0 Jul 11 18:53 usb1 -> ../../devices/platform/bus@0/a808670000.usb/gadget.0/net/usb1
/sys/bus/platform/devices/a808a10000.ethernet
/sys/bus/platform/devices/a808b10000.ethernet
/sys/bus/platform/devices/a808d10000.ethernet
/sys/bus/platform/devices/a808e10000.ethernet
/sys/bus/platform/devices/a8082e0000.pinmux
/sys/bus/platform/devices/a808300000.gpio
/sys/bus/platform/devices/a808400000.pcie
/sys/bus/platform/devices/a808420000.pcie
/sys/bus/platform/devices/a808440000.pcie
/sys/bus/platform/devices/a808480000.pcie
/sys/bus/platform/devices/a808670000.usb
/sys/bus/platform/devices/a808680000.padctl
/sys/bus/platform/devices/a808880000.uphy_apmu
/sys/bus/platform/devices/a808a10000.ethernet
/sys/bus/platform/devices/a808b10000.ethernet
/sys/bus/platform/devices/a808d10000.ethernet
/sys/bus/platform/devices/a808e10000.ethernet
modprobe: FATAL: Module nvethernet is in use.
root@tegra-ubuntu:/home/tj_software# ip -br link
hi,whitesscott
I think I found the reason this time. After uninstalling and reloading, I realized the speed was written incorrectly with an extra 0. It seems it was a misunderstanding. I’ll modify the device tree again. Thank you for your help!
root@tegra-ubuntu:/home/tj_software# modprobe nvethernet
[ 246.814770] swphy: unknown speed
[ 246.814803] nvethernet a808a10000.ethernet: failed to parse PHY DT
[ 246.814820] nvethernet a808a10000.ethernet: failed to parse DT
[ 246.819085] nvethernet a808b10000.ethernet: failed to parse PHY DT
[ 246.825371] nvethernet a808b10000.ethernet: failed to parse DT
[ 246.832097] swphy: unknown speed
[ 246.834460] nvethernet a808d10000.ethernet: failed to parse PHY DT
[ 246.849480] nvethernet a808e10000.ethernet: failed to parse PHY DT
[ 246.855760] nvethernet a808e10000.ethernet: failed to parse DT
root@tegra-ubuntu:/home/tj_software#
Good luck.
I was just about to say
sudo dtc -I fs -O dts /sys/firmware/devicetree/base > /tmp/running.dts
grep -n "ethernet" -n /tmp/running.dts
grep returned following for me
1379: ethernet@a808e10000 {
2039: ethernet@a808d10000 {
3030: ethernet@a808b10000 {
7020: ethernet@A808910000 {
7117: ethernet@a808a10000 {
9530: mgbe2 = "/bus@0/ethernet@a808d10000";
9612: mgbe0 = "/bus@0/ethernet@a808a10000";
9895: mgbe3 = "/bus@0/ethernet@a808e10000";
9969: mgbe1 = "/bus@0/ethernet@a808b10000";
Now, it comes back. Thanks again!
1 Like