We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

Showing results for 
Search instead for 
Did you mean: 
Registered: ‎09-03-2015

SGMII IP wrong speed negotiated

Hello guys,

we are trying to establish a phy-less connection between 1G/2.5G PCS/PMA SGMII IP Core and a Broadcom Swtich.

-> The SGMII Core is configured in Phy Mode

-> Auto-negotiation is enabled

-> IP is connected to PS (Zynq Ultrascale+)


Over MDIO we make sure, auto-neg is enabled:

The value of Register 0 is 0x1140


To set the advertised speed, we write down the value 0xD801 over MDIO to Register 4.

The should be 1Gb/s and full Duplex.


Unfortunately, the acutal negotiated speed is only 10M and Half Duplex. The Value of Register 4 is automatically set back to 0xD001.

It seems that the IP doesn't accept BITS[11:10] to be set to the value "10" = 1Gb/s.


What could be the reason for that?

Restarting Auto-negotiation by setting Bit 9 in Register 0 doesn't change anything.


The Link Partner (Broadcom Switch) is able to handle 1Gb/s. We have proved it on an external Phy. 

Also our SGMII IP is able to work with 1Gb/s if we connet it to the external phy and set it to MAC Mode.


Any help would be very appreciated.


Thank you

0 Kudos
3 Replies
Registered: ‎08-25-2009

Re: SGMII IP wrong speed negotiated

Hi @astei87 ,

First, I am not sure if SGMII PHY mode is what you should use. SGMII PHY mode is supposed to be used when connecting to a BASE-T PHY with GMII interface. Does your broadcome switch has GMII or SGMII? The MAC to MAC connection can be supported by using "fixed-link". Are you using Linux or baremetal driver?


"Don't forget to reply, kudo and accept as solution."
Xilinx Employee
Xilinx Employee
Registered: ‎05-01-2013

回复: SGMII IP wrong speed negotiated

1. You set IP as SGMII mode

2. You write Reg4 via MDIO

3. Then you read Reg4 and the write value fails to work?


Have you tried writing any other register via MDIO? Like Reg0

When you read it back, the write behavior is successful?

Registered: ‎09-03-2015

回复: SGMII IP wrong speed negotiated

thx for your comment.

@nanz :

The Switch has a SGMII Interface. So My IP is configured also as SGMII.

I have tried to set the IP also in MAC mode but in that case i see a "Remote fault Encoding" in the status vector.

In Phy Mode this bit is not set. In both modes i have a valid Link.

Maybe i don't understand the difference between MAC mode and Phy mode? I thought its only for the auto-negotiation. In Phy Mode the IP sets the speed. And in MAC mode the IP will accept the speed according to the target from the Partner.


@guozhenp :

I will give you the answers by tomorrow. The colleague, who wirtes the mdio driver is still on vacation.


Thank you

0 Kudos