On Fri, Mar 23, 2018 at 09:11:10PM +0100, Alexandre Belloni wrote: > Add Microsemi Ocelot internal PHY ids. For now, simply use the genphy > functions but more features are available. > > Cc: Raju Lakkaraju <Raju.Lakkaraju@xxxxxxxxxxxxx> > Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxx> > --- > drivers/net/phy/mscc.c | 15 +++++++++++++++ > 1 file changed, 15 insertions(+) > > diff --git a/drivers/net/phy/mscc.c b/drivers/net/phy/mscc.c > index 650c2667d523..e1ab3acd1cdb 100644 > --- a/drivers/net/phy/mscc.c > +++ b/drivers/net/phy/mscc.c > @@ -91,6 +91,7 @@ enum rgmii_rx_clock_delay { > #define SECURE_ON_PASSWD_LEN_4 0x4000 > > /* Microsemi PHY ID's */ > +#define PHY_ID_OCELOT 0x00070540 > #define PHY_ID_VSC8530 0x00070560 > #define PHY_ID_VSC8531 0x00070570 > #define PHY_ID_VSC8540 0x00070760 > @@ -658,6 +659,19 @@ static int vsc85xx_probe(struct phy_device *phydev) > > /* Microsemi VSC85xx PHYs */ > static struct phy_driver vsc85xx_driver[] = { > +{ > + .phy_id = PHY_ID_OCELOT, > + .name = "Microsemi OCELOT", > + .phy_id_mask = 0xfffffff0, > + .features = PHY_GBIT_FEATURES, No interrupt support? In fact, the only advantage i see this brings over the generic driver is that the name Microsemi OCELOT is printed. Andrew > + .soft_reset = &genphy_soft_reset, > + .config_init = &genphy_config_init, > + .config_aneg = &genphy_config_aneg, > + .aneg_done = &genphy_aneg_done, > + .read_status = &genphy_read_status, > + .suspend = &genphy_suspend, > + .resume = &genphy_resume, > +},