Jetson ORIN: RGMII can't send data

Hello,
I need to use orin’s RGMII interface in our custom board which attached a 88Q2112 phy.
according to “Adaptation and Bringup for Jetson AGX Orin” deployment guide, I configured the pinmux link this


and configured the device tree link this

the eqos interface can bringup now, and the rx direction ( 88q2112->orin ) of this interface is good, but the tx direction is bad. do i need to do any other configuration?

the kernel log and interface status as follow:
dmesg.log (66.2 KB)

What is your method to update pinmux?

  1. copy dts files generated by pinmux excel to /bootloader/t186ref/BCT
  2. update /jetson-agx-orin-devkit.conf file with PINMUX_CONFIG=“”
  3. ./flash.sh -r -k A_MB1_BCT jetson-agx-orin-devkit mmcblk0p1
  4. ./flash.sh -r -k B_MB1_BCT jetson-agx-orin-devkit mmcblk0p1
    is that right?

Hi,

Could you directly try full flash but not only flash one partition? BTW, I don’t actually know what was updated in your pinmux. Maybe you should share the dts file here.

ok, i’ll try it.
here is my pinmux dts files
cargo-acu-mb1-bct-pinmux.dtsi (64.6 KB)
cargo-acu-mb1-bct-gpio-default.dtsi (3.9 KB)
cargo-acu-mb1-bct-padvoltage-default.dtsi (1.3 KB)

Hi, i reflash the orin module with ./flash jetson-agx-orin-devkit mmcblk0p1. but the problem remains

Your pinmux dts does not match the content of adaptation guide, how about you check it again?

ok, i checked it, and change tx pin’s pull config from pull up to pull none. and reflash whole partition again. but the problem remains

Could you also attach the full dts converted back from dtb?

ok, I attached the kernel dts file below.
tegra234-p3701-0000-p3737-0000-cargo.dts (592.5 KB)

Hi,

I just read your log again. But I have something that I am not sure. Why is your eth0 under usb device? Is this another interface you are using?

[ 6.664735] asix 1-3:1.0 eth0: register ‘asix’ at usb-3610000.xhci-3, ASIX AX88772B USB 2.0 Ethernet, 00:0e:c6:3d:31:74

yes, i’m using an usb2eth converter as another network interface

there is one more question that needs to be described:
when using ethtool to read the EQOS interface after power on,it’s speed is 10Mb/s and duplex is half. when i using phytool read any of registers of 88Q2112, the ethtool’s status change to 1000Mb/s & full duplex.
屏幕截图 2022-06-29 111123
屏幕截图 2022-06-29 111250

Hi,

I had some discussion with our ethernet driver team.

  1. Your link is not up in above dmesg.

  2. Linux kernel drivers does not have support for 88Q2112/88Q2122 PHYs because of licensing issues. Thus, you need to contact Marvell to provide the driver and build it to configure the mdio.

  3. After configure it, you can add “Fixed-link” to your device tree and let the application from (1) to send data.

ok, I got it, thanks for your help, one more question:

  1. can I add the 88Q2112’s init code to “marvell,reg-init” property of dts;
  2. should I remove “mdio” node when I add “fixed-link” node to “ethernet@02310000”

Hi, the EQOS interface working fine when I add fixed-link node to “ethernet@23100000” in dts

2 Likes

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.