sfc: Implement auto-negotiation
Add infrastructure for auto-negotiation of speed, duplex and flow control. When using 10Xpress, auto-negotiate flow control. While we're at it, clean up the code to warn when partner is not 10GBASE-T capable. Signed-off-by: Ben Hutchings <bhutchings@solarflare.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
177dfcd80f
commit
04cc8cacb0
@@ -31,8 +31,8 @@ static void falcon_reconfigure_gmac(struct efx_nic *efx)
|
||||
efx_oword_t reg;
|
||||
|
||||
/* Configuration register 1 */
|
||||
tx_fc = (efx->flow_control & EFX_FC_TX) || !efx->link_fd;
|
||||
rx_fc = !!(efx->flow_control & EFX_FC_RX);
|
||||
tx_fc = (efx->link_fc & EFX_FC_TX) || !efx->link_fd;
|
||||
rx_fc = !!(efx->link_fc & EFX_FC_RX);
|
||||
loopback = (efx->loopback_mode == LOOPBACK_GMAC);
|
||||
bytemode = (efx->link_speed == 1000);
|
||||
|
||||
|
Reference in New Issue
Block a user