mirror of
https://github.com/raspberrypi/linux.git
synced 2026-01-04 10:21:00 +00:00
net: ethernet: fs_enet: phylink conversion
fs_enet is a quite old but still used Ethernet driver found on some NXP devices. It has support for 10/100 Mbps ethernet, with half and full duplex. Some variants of it can use RMII, while other integrations are MII-only. Add phylink support, thus removing custom fixed-link hanldling. This also allows removing some internal flags such as the use_rmii flag. Acked-by: Christophe Leroy <christophe.leroy@csgroup.eu> Signed-off-by: Maxime Chevallier <maxime.chevallier@bootlin.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
c614acf6e8
commit
41f5fbffd1
@@ -220,7 +220,8 @@ static void set_multicast_list(struct net_device *dev)
|
||||
set_promiscuous_mode(dev);
|
||||
}
|
||||
|
||||
static void restart(struct net_device *dev)
|
||||
static void restart(struct net_device *dev, phy_interface_t interface,
|
||||
int speed, int duplex)
|
||||
{
|
||||
struct fs_enet_private *fep = netdev_priv(dev);
|
||||
struct fec __iomem *fecp = fep->fec.fecp;
|
||||
@@ -302,13 +303,13 @@ static void restart(struct net_device *dev)
|
||||
* Only set MII/RMII mode - do not touch maximum frame length
|
||||
* configured before.
|
||||
*/
|
||||
FS(fecp, r_cntrl, fpi->use_rmii ?
|
||||
FEC_RCNTRL_RMII_MODE : FEC_RCNTRL_MII_MODE);
|
||||
FS(fecp, r_cntrl, interface == PHY_INTERFACE_MODE_RMII ?
|
||||
FEC_RCNTRL_RMII_MODE : FEC_RCNTRL_MII_MODE);
|
||||
#endif
|
||||
/*
|
||||
* adjust to duplex mode
|
||||
*/
|
||||
if (dev->phydev->duplex == DUPLEX_FULL) {
|
||||
if (duplex == DUPLEX_FULL) {
|
||||
FC(fecp, r_cntrl, FEC_RCNTRL_DRT);
|
||||
FS(fecp, x_cntrl, FEC_TCNTRL_FDEN); /* FD enable */
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user