Forum Discussion
Auto-Negotiation FAILED with TSEMAC and PHY Marvell 88E1111
I'm trying to check single socket example in a Cyclone III EP3c40.
I've configured in SOPC in both case: as 10/100/1000Mbps Ethernet Only as 1000Mbps Small MAC result was always the same
nios2-terminal: connected to hardware target using JTAG UART on cable
nios2-terminal: "USB-Blaster ", device 1, instance 0
nios2-terminal: (Use the IDE stop button or Ctrl-C to terminate)
=============== Software License Reminder ================
This software project uses an unlicensed version of the NicheStack TCP/IP
Network Stack - Nios II Edition. If you want to ship resulting object
code in your product, you must purchase a license for this software from
Altera. For information go to: "http://www.altera.com/nichestack"
=====================================================
InterNiche Portable TCP/IP, v3.1
Copyright 1996-2007 by InterNiche Technologies. All rights reserved.
prep_tse_mac 0
Your Ethernet MAC address is 00:07:ed:ff:be:f8
Static IP Address is 192.168.10.11
prepped 1 interface, initializing...
SGDMA desc memory cleared
INFO : TSE MAC 0 found at address 0x0c403800
INFO : PHY Marvell 88E1111 found at PHY address 0x01 of MAC Group
INFO : PHY - Automatically mapped to tse_mac_device
INFO : PHY - Restart Auto-Negotiation, checking PHY link...
WARNING : PHY - Auto-Negotiation FAILED
INFO : Applying additional PHY configuration of Marvell 88E1111
MARVELL : Enabling auto crossover
MARVELL : PHY reset
INFO : PHY - Checking link...
INFO : PHY - Link not yet established, restart auto-negotiation...
INFO : PHY - Restart Auto-Negotiation, checking PHY link...
WARNING : PHY - Auto-Negotiation FAILED
WARNING : PHY - Link could not established
ERROR : PHY - Auto-Negotiation not completed! Gigabit = 0, Duplex = Full
OK, x=0, CMD_CONFIG=0x00000000
MAC post-initialization: CMD_CONFIG=0x04000203
RX descriptor chain desc (1 depth) created
IP address of et1 : 192.168.10.11
Created "Inet main" task (Prio: 2)
Created "clock tick" task (Prio: 3)
Simple Socket Server starting up
Socket server created
bind socket server ok
Socket Tx created
listening to UDP port...
Created "simple socket server" task (Prio: 4)
15 Replies
- Altera_Forum
Honored Contributor
The problem could come from the GMII interface. Are you providing the correct clocks in gigabit mode?
Another cause could be bad timing on the GMII signals. Did you set up the constraints on all the signals? I had to use a pll to delay the clock on the transmit side in order to meet the constraints (unfortunately I don't have the kit here, I cn't check what I did). - Altera_Forum
Honored Contributor
Removing auto negotiation in the network card, I've set 100Mbit full-duplex and now it works.
Gigabit is not working when I tried to set the network card to 1gbps full duplex. The link is established in both cases but in Gigabit never a data was received from host. - Altera_Forum
Honored Contributor
auto-negotiation is/was enabled
- Altera_Forum
Honored Contributor
What is strange is that on the other end it says that the interface is active, and even that it received a packet... Is auto-negotiation enabled on the PC?
- Altera_Forum
Honored Contributor
LAN Interface status: connected
Speed: 1Gbps Received:1 Sent:36 uhhmmm It is not easy checking the LAN conector - Altera_Forum
Honored Contributor
Status of LAN is :
State: On Speed: 1Gbps Packet sent: 36 Packet received:1 - Altera_Forum
Honored Contributor
Does the PC say anything about the LAN interface status?
If you can connect an oscilloscope to the LAN connector, you can also check if you see any sync pulses going on the lines. - Altera_Forum
Honored Contributor
there are some things you can check:
-the MDIO communication with the PHY is working correctly? I suppose yes, otherwise it wouldnt recognize your Marvell PHY. -the clock signals you use with both mac and phy are with the correct freq? -your host PC NIC is able to auto-negotiate? maybe it worked with the 10/100, because these ones normally dont use autonegotiation. - I wouldnt use the 1000 Small MAC config. in the TSE, because this way your are telling him only to connect if there is a Gigabit available on the other side, and it is probable that your PC dont have it - Altera_Forum
Honored Contributor
obviously I always connect a board to a host computer using cross crossing ethernet cable
- Altera_Forum
Honored Contributor
But do you connect the two boards together, or do you connect them to a PC?