Jetson AGX Orin Platform Adaptation and Bring-Up — NVIDIA Jetson Linux Developer Guide
我参考此链接和论坛里的一些帖子后,仍然没能成功启用RGMII,串口打印:nvethernet 2310000.ethernet: ether_open: failed to initialize MAC HW core with reason -1,请帮忙看看,不胜感激!
flash日志:
flash_1-1.4_0_20261014-171408.log (53.8 KB)
串口日志:
serial.txt (349.5 KB)
修改的文件:
tegra234-mb1-bct-pinmux-p3701-0000-a04.dtsi.txt (63.6 KB)
tegra234-base-overlay.dtsi.txt (18.2 KB)
p3737-0000-p3701-0000.conf.txt (4.9 KB)
其他信息:
orin+定制底板
Jetson:R39.2.1
抱歉,报错的原因是pinmux没有按照文档修改完。现在的问题是:ip link show eth1 始终都是link down
serial.txt (96.3 KB)
tegra234-mb1-bct-pinmux-p3701-0000-a04.dtsi.txt (63.6 KB)
或许这个信息会有用:
busybox devmem 0x02434070: 0x00000458
busybox devmem 0x02434078: 0x00000400
busybox devmem 0x02445058: 0x00002400
busybox devmem 0x02445018: 0x00002400
busybox devmem 0x02445010: 0x00002400
busybox devmem 0x02445008: 0x00002400
busybox devmem 0x02445000: 0x00002400
busybox devmem 0x02445068: 0x00002400
busybox devmem 0x02445040: 0x00002458
busybox devmem 0x02445030: 0x00002458
busybox devmem 0x02445028: 0x00002458
busybox devmem 0x02445020: 0x00002458
busybox devmem 0x02445070: 0x00002458
busybox devmem 0x02445060: 0x00002458
busybox devmem 0x02445038: 0x00002440
busybox devmem 0x02445048: 0x00002400
busybox devmem 0x02445050: 0x00002000
what PHY are you using here? Does it has a vendor driver to use?
phy是YT8521SH-CA,内核里有驱动并且已经启用了。drivers/net/phy/motorcomm.c
but you didn’t assign to use that in your DT… as I already told in another thread. Please check with PHY vendor how to write their device tree… otherwise MDIO bus won’t know which driver to use..
这种类型的phy不需要指定,据我了解,Linux 的 PHY 子系统有一个自动扫描机制,在 mdio 总线注册时,内核会去读取总线上每个地址对应的 PHY 芯片内部的两个 ID 寄存器。这意味着,只要硬件正常,MDIO 通信正常,内核扫描到它的 ID 是 0x0000011a,就会自动绑定这个驱动。
Then let’s check if it got correctly bind first.
/sys/bus/mdio_bus/devices/
Check the nodes under this one first.
I really doubt that because the log directly tells that it fails to get your mdio address…
And I don’t see you configured that in your kernel DT.
->[ 13.185882] nvethernet 2310000.ethernet: failed to read MDIO address
感谢WayneWWW的回复!我们的硬件同事找出一个硬件问题,现在可以成功link up,这说明软件配置是正确的,只要严格遵照开发指南的步骤,不要节外生枝。这一点也分享给其他可能看到这个帖子的人。
但还有一个问题,目前虽然可以link,也能与主机互相ping通,但是只能协商到100M,串口有些日志比较可疑,
chip@tegra-ubuntu:~$ ethtool [ 3259.404930] YT8521 Gigabit Ethernet 2310000.ethernet:00: Master/Slave resolution failed, maybe conflicting manual settings?
[ 3259.440350] nvethernet 2310000.ethernet eth1: Failed to set speed
chip@tegra-ubuntu:~$ sudo ethtool eth1
Settings for eth1:
Supported ports: [ TP MII ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supported pause frame use: Symmetric Receive-only
Supports auto-negotiation: Yes
Supported FEC modes: Not reported
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Advertised pause frame use: No
Advertised auto-negotiation: Yes
Advertised FEC modes: Not reported
Speed: Unknown!
Duplex: Unknown! (255)
Auto-negotiation: on
Port: Twisted Pair
PHYAD: 0
Transceiver: external
MDI-X: Unknown
Supports Wake-on: d
Wake-on: d
Current message level: 0x00000000 (0)
Link detected: no
我还可以检查哪些地方?
能請你把你build出來的dtb用dtc tool轉回dts之後附上來嗎? 現在看來你一開始附上的 tegra234-base-overlay.dtsi.txt 並不是完整的DT.
What is the ethernet component on the other side?
抱歉我英文不好,如果你是想问网线另一端接的设备是什么,那就是电脑。电脑这一侧我已经排查过、包括网线都没问题。
請問你電腦那一端的ethtool看到的內容是什麼?
chip@chip-seek:~/orin/Linux_for_Tegra/source$ ethtool enp3s0
Settings for enp3s0:
Supported ports: [ TP MII ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supported pause frame use: Symmetric Receive-only
Supports auto-negotiation: Yes
Supported FEC modes: Not reported
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Advertised pause frame use: Symmetric Receive-only
Advertised auto-negotiation: Yes
Advertised FEC modes: Not reported
Link partner advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Link partner advertised pause frame use: Symmetric Receive-only
Link partner advertised auto-negotiation: Yes
Link partner advertised FEC modes: Not reported
Speed: 1000Mb/s
Duplex: Full
Auto-negotiation: on
master-slave cfg: preferred slave
master-slave status: slave
Port: Twisted Pair
PHYAD: 0
Transceiver: external
MDI-X: Unknown
netlink error: Operation not permitted
Link detected: yes
如上,我试过ethtool -s eth1 speed 1000 duplex full autoneg off关闭自动协商,强制千兆,但link上依然是百兆。
請問你有試過在其中一端跑類似以下的設定嗎?
sudo ethtool -s eth0 master-slave forced-slave
YT8521 Gigabit Ethernet 2310000.ethernet:00: Master/Slave resolution failed, maybe conflicting manual settings?
這一段是phy driver印出來的. 建議可以去確認一下為什麼會走到這一段
设备这边:
chip@tegra-ubuntu:~$ sudo ethtool -s eth1 master-slave forced-slave
netlink error: master/slave configuration not supported by device (offset 36)
netlink error: Operation not supported
电脑端执行后,没有变化,speed依然是百兆。
我上一条回复的ethtool enp3s0内容贴错了,那不是与orin连接时的信息。正确的信息如下:
chip@chip-seek:~/orin/Linux_for_Tegra/source$ ethtool enp3s0
Settings for enp3s0:
Supported ports: [ TP MII ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supported pause frame use: Symmetric Receive-only
Supports auto-negotiation: Yes
Supported FEC modes: Not reported
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Advertised pause frame use: Symmetric Receive-only
Advertised auto-negotiation: Yes
Advertised FEC modes: Not reported
Link partner advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Link partner advertised pause frame use: Symmetric Receive-only
Link partner advertised auto-negotiation: Yes
Link partner advertised FEC modes: Not reported
Speed: 100Mb/s
Duplex: Full
Auto-negotiation: on
master-slave cfg: preferred slave
master-slave status: slave
Port: Twisted Pair
PHYAD: 0
Transceiver: external
MDI-X: Unknown
netlink error: Operation not permitted
Link detected: yes
好的,我会去看下驱动源码,谢谢~
kayccc
October 28, 2026, 7:04am
20
Is this still an issue to support? Any result can be shared?