Subject: RE: [PATCH net-next 6/7] net: txgbe: support copper NIC with external PHY

From: Jiawen Wu <[email-masked]>
Date: Tue, 25 Jul 2023 10:41:46 +0800

On Monday, July 24, 2023 6:43 PM, Russell King (Oracle) wrote:
> On Mon, Jul 24, 2023 at 06:23:40PM +0800, Jiawen Wu wrote:
> > @@ -22,6 +25,9 @@ static int txgbe_get_link_ksettings(struct net_device *netdev,
> >  {
> >  	struct txgbe *txgbe = netdev_to_txgbe(netdev);
> >
> > +	if (txgbe->wx->media_type == sp_media_copper)
> > +		return phy_ethtool_get_link_ksettings(netdev, cmd);
> 
> Why? If a PHY is attached via phylink, then phylink will automatically
> forward the call below to phylib.

No, there is no phylink implemented for sp_media_copper.

> > +
> >  	return phylink_ethtool_ksettings_get(txgbe->phylink, cmd);
> 
> If you implement it correctly, you also don't need two entirely
> separate paths to configure the MAC/PCS for the results of the PHY's
> negotiation, because phylink gives you a _generic_ set of interfaces
> between whatever is downstream from the MAC and the MAC.

For sp_media_copper, only mii bus is registered for attaching PHY.
Most MAC/PCS configuration is done in firmware, so it is not necessary
to implement phylink as sp_media_fiber.