We are currently working on a custom carrier board with the AGX Orin SOM, utilizing the Marvel 88x3310 Ethernet SFI PHY. but, we are facing an issue where the Ethernet is not detecting, and we are unable to obtain an IP address or establish an Internet connection.
I have attached the updated Device Tree (DT) node code for the 88x3310, and below is the relevant snippet from the dmesg log:
the PHY firmware has been flashed successfully. Please find the flashed logs.
Download Utility Version 3.6 built using MTD API 3.0.1
Read C:\Users\ELMA LAB PC\Desktop\New folder\x33x0fw_0_3_11_0_11832.hdr, file size = 197784
Downloading to flash.
*************************
DOWNlOADING MDIO PORT 0
*************************
Read x3240flashdlslave_0_6_6_0_10673.hdr, file size = 11072
Downloading code to PHY RAM, please wait...
Processing section 0 at offset 0
.......... 5120 bytes
.......... 10240 bytes
.App code started section 0 on port 0.
Download of code to RAM complete. Time = 0 seconds
Slave will now erase/verify flash. This may take up to 30 seconds depending on flash type.
Flash program areas have been erased.
......... 4608 bytes
.......... 9728 bytes
.......... 14848 bytes
.......... 19968 bytes
.......... 25088 bytes
.......... 30208 bytes
.......... 35328 bytes
.......... 40448 bytes
.......... 45568 bytes
.......... 50688 bytes
.......... 55808 bytes
.......... 60928 bytes
.......... 66048 bytes
.......... 71168 bytes
.......... 76288 bytes
.......... 81408 bytes
.......... 86528 bytes
.......... 91648 bytes
.......... 96768 bytes
.......... 101888 bytes
.......... 107008 bytes
.......... 112128 bytes
.......... 117248 bytes
.......... 122368 bytes
.......... 127488 bytes
.......
Telling slave to save 130560 bytes of buffer 0. This can take up to 30 seconds, depends on flash type and size of buffer.
.... 2048 bytes
.......... 7168 bytes
.......... 12288 bytes
.......... 17408 bytes
.......... 22528 bytes
.......... 27648 bytes
.......... 32768 bytes
.......... 37888 bytes
.......... 43008 bytes
.......... 48128 bytes
.......... 53248 bytes
.......... 58368 bytes
.......... 63488 bytes
........
Telling slave to save 67224 bytes of last buffer. This can take up to 30 seconds, depends on flash type and size of buffer.
Time = 10 seconds
Flash type is 0xBF00
Flash programming complete. Verifying image via slave.
Flash image verified. Call mtdRemovePhyDownloadMode() or change strap and reboot to execute new code
Flash image had 1 sections
X3240DownloadUtility.exe: mtdUpdateFlashImage() succeeded.
X3240DownloadUtility.exe: Performing a chip reset to execute downloaded code.
X3240DownloadUtility.exe: Firmware version running is now 0.3.11.0
Press any key to continue . . .
Yes, the Marvell 88x3310 PHY does indeed support 10G. Please refer to the ethtool output below, which indicates support for 10baseT/Half, 10baseT/Full, up to 10000baseT/Full.
We are currently exploring the implementation of a MAC Internal Loopback for a loopback test.
Is there any documentation or guidance available for implementing MAC Internal Loopback to facilitate a loopback test?
I have some internal check with our ethernet team. For this situation, please make sure the link partner is configured for 10G and Auto negotiation happens at 10G first.
Your previous result shows it is running in 1G only.
We are awaiting your response and would appreciate an update. Additionally, we are seeking guidance on performing an Internal MAC Loopback. If there is any documentation or guide available, we would greatly appreciate it.
I have cross-verified the link partner with the AGX Orin EV Kit, and it appears to be the same as ours. When checking the ethtool results on the EV Kit, they seem to match.
EVK ethtool result:
orin@ubuntu:~$ sudo ethtool eth0
[sudo] password for orin:
Settings for eth0:
Supported ports: [ ]
Supported link modes: 100baseT/Half 100baseT/Full
1000baseT/Full
1000baseKX/Full
10000baseT/Full
10000baseKX4/Full
10000baseKR/Full
2500baseT/Full
5000baseT/Full
Supported pause frame use: Symmetric Receive-only
Supports auto-negotiation: Yes
Supported FEC modes: Not reported
Advertised link modes: 100baseT/Half 100baseT/Full
1000baseT/Full
1000baseKX/Full
10000baseT/Full
10000baseKX4/Full
10000baseKR/Full
2500baseT/Full
5000baseT/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: No
Link partner advertised auto-negotiation: Yes
Link partner advertised FEC modes: Not reported
Speed: 1000Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 0
Transceiver: internal
Auto-negotiation: on
MDI-X: Unknown
Supports Wake-on: g
Wake-on: d
Current message level: 0x00000000 (0)
Link detected: yes
Here is the ethtool result for the 88x3310PA on our custom board:
parashuram@ubuntu:~$ sudo ethtool eth1
Settings for eth1:
Supported ports: [ ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
10000baseT/Full
2500baseT/Full
5000baseT/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
10000baseT/Full
2500baseT/Full
5000baseT/Full
Advertised pause frame use: No
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: No
Link partner advertised auto-negotiation: Yes
Link partner advertised FEC modes: Not reported
Speed: 100Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 0
Transceiver: internal
Auto-negotiation: on
MDI-X: on (auto)
Supports Wake-on: d
Wake-on: d
Current message level: 0x00000000 (0)
Link detected: no
The 10G Ethernet is not functioning on our board.
I observed an error in the log, which is mentioned below. Could you please provide some guidance on how to bring up the 10G Ethernet and resolve the issue?
[ 43.155328] mv88x3310 6810000.ethernet:00: Downshift occurred from negotiated speed 1Gbps to actual speed 100Mbps, check cabling!
[ 43.169427] nvethernet 6810000.ethernet: [xpcs_lane_bring_up][470][type:0x4][loga-0x0] Failed to get PCS block lock
I don’t get what you are doing above. Could you explain it?
Why should you care about the issue on Orin AGX devkit?
My point here is please just use 10G connection on your case for now and that is just for debug. We want to see your board status connection with 10G first but not 1G.
You don’t need to care about anything on Orin AGX devkit…
What Orin AGX can achieve has no logical relationship with your board… The PHY, hardware, firmware could be different…