Message ID | 20191001060811.24291-3-o.rempel@pengutronix.de |
---|---|
State | Changes Requested |
Delegated to: | David Miller |
Headers | show |
Series | net: phy: at803x: add ar9331 support | expand |
On 01.10.2019 08:08, Oleksij Rempel wrote: > Mostly this hardware can work with generic PHY driver, but this change > is needed to provided interrupt handling support. > Tested with dsa ar9331-switch driver. > > Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de> > --- > drivers/net/phy/at803x.c | 11 +++++++++++ > 1 file changed, 11 insertions(+) > > diff --git a/drivers/net/phy/at803x.c b/drivers/net/phy/at803x.c > index 7895dbe600ac..42492f83c8d7 100644 > --- a/drivers/net/phy/at803x.c > +++ b/drivers/net/phy/at803x.c > @@ -53,6 +53,7 @@ > #define AT803X_DEBUG_REG_5 0x05 > #define AT803X_DEBUG_TX_CLK_DLY_EN BIT(8) > > +#define ATH9331_PHY_ID 0x004dd041 > #define ATH8030_PHY_ID 0x004dd076 > #define ATH8031_PHY_ID 0x004dd074 > #define ATH8035_PHY_ID 0x004dd072 > @@ -403,6 +404,16 @@ static struct phy_driver at803x_driver[] = { > .aneg_done = at803x_aneg_done, > .ack_interrupt = &at803x_ack_interrupt, > .config_intr = &at803x_config_intr, > +}, { > + /* ATHEROS AR9331 */ > + PHY_ID_MATCH_EXACT(ATH9331_PHY_ID), > + .name = "Atheros AR9331 built-in PHY", > + .config_init = at803x_config_init, > + .suspend = at803x_suspend, > + .resume = at803x_resume, > + /* PHY_BASIC_FEATURES */ > + .ack_interrupt = &at803x_ack_interrupt, > + .config_intr = &at803x_config_intr, > } }; > > module_phy_driver(at803x_driver); > Reviewed-by: Heiner Kallweit <hkallweit1@gmail.com>
diff --git a/drivers/net/phy/at803x.c b/drivers/net/phy/at803x.c index 7895dbe600ac..42492f83c8d7 100644 --- a/drivers/net/phy/at803x.c +++ b/drivers/net/phy/at803x.c @@ -53,6 +53,7 @@ #define AT803X_DEBUG_REG_5 0x05 #define AT803X_DEBUG_TX_CLK_DLY_EN BIT(8) +#define ATH9331_PHY_ID 0x004dd041 #define ATH8030_PHY_ID 0x004dd076 #define ATH8031_PHY_ID 0x004dd074 #define ATH8035_PHY_ID 0x004dd072 @@ -403,6 +404,16 @@ static struct phy_driver at803x_driver[] = { .aneg_done = at803x_aneg_done, .ack_interrupt = &at803x_ack_interrupt, .config_intr = &at803x_config_intr, +}, { + /* ATHEROS AR9331 */ + PHY_ID_MATCH_EXACT(ATH9331_PHY_ID), + .name = "Atheros AR9331 built-in PHY", + .config_init = at803x_config_init, + .suspend = at803x_suspend, + .resume = at803x_resume, + /* PHY_BASIC_FEATURES */ + .ack_interrupt = &at803x_ack_interrupt, + .config_intr = &at803x_config_intr, } }; module_phy_driver(at803x_driver);
Mostly this hardware can work with generic PHY driver, but this change is needed to provided interrupt handling support. Tested with dsa ar9331-switch driver. Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de> --- drivers/net/phy/at803x.c | 11 +++++++++++ 1 file changed, 11 insertions(+)