Messages in this thread | | | Subject | Re: [PATCH] net: phy: Add DP83825I to the DP83822 driver | From | Dan Murphy <> | Date | Tue, 19 Mar 2019 14:53:17 -0500 |
| |
Florian
Thanks for the quick review
On 3/19/19 1:55 PM, Florian Fainelli wrote: > On 3/19/19 11:32 AM, Dan Murphy wrote: >> Add the DP83825I ethernet PHY to the DP83822 driver. >> These devices share the same WoL register bits and addresses. >> >> The phy_driver init was made into a macro as there may be future >> devices appended to this driver that will share the register space. >> >> http://www.ti.com/lit/gpn/dp83825i >> >> Signed-off-by: Dan Murphy <dmurphy@ti.com> > > Looks good, just a few nitpits below: > >> --- >> drivers/net/phy/dp83822.c | 36 ++++++++++++++++++++++-------------- >> 1 file changed, 22 insertions(+), 14 deletions(-) >> >> diff --git a/drivers/net/phy/dp83822.c b/drivers/net/phy/dp83822.c >> index bbd8c22067f3..02dc05b86326 100644 >> --- a/drivers/net/phy/dp83822.c >> +++ b/drivers/net/phy/dp83822.c >> @@ -15,6 +15,8 @@ >> #include <linux/netdevice.h> >> >> #define DP83822_PHY_ID 0x2000a240 >> +#define DP83825I_PHY_ID 0x2000a150 >> + >> #define DP83822_DEVADDR 0x1f >> >> #define MII_DP83822_PHYSCR 0x11 >> @@ -304,26 +306,32 @@ static int dp83822_resume(struct phy_device *phydev) >> return 0; >> } >> >> +#define DP83822_PHY_DRIVER(_id, _name) \ >> + { \ >> + .phy_id = _id, \ > > I would put the _id argument between parenthesis to guarantee evaluation > order in case you need to do smart things about the ID in the future. > >> + .phy_id_mask = 0xfffffff0, \ > > You can replace those two lines with PHY_ID_MATCH_MODEL() >
Ack to both above. I will replace this with the macro. I assume I don't have to wrap _id in additional parenthesis when using the macro.
>> + .name = _name, \ > > Likewise >
Ack to adding parenthesis around the _name
>> + .features = PHY_BASIC_FEATURES, \ >> + \ > > Looks like you have an extra newline here. >
Ack
> With that fixed: > > Reviewed-by: Florian Fainelli <f.fainelli@gmail.com> > >> + .soft_reset = dp83822_phy_reset, \ >> + .config_init = dp83822_config_init, \ >> + .get_wol = dp83822_get_wol, \ >> + .set_wol = dp83822_set_wol, \ >> + .ack_interrupt = dp83822_ack_interrupt, \ >> + .config_intr = dp83822_config_intr, \ >> + .suspend = dp83822_suspend, \ >> + .resume = dp83822_resume, \ >> + } >> + >> static struct phy_driver dp83822_driver[] = { >> - { >> - .phy_id = DP83822_PHY_ID, >> - .phy_id_mask = 0xfffffff0, >> - .name = "TI DP83822", >> - .features = PHY_BASIC_FEATURES, >> - .config_init = dp83822_config_init, >> - .soft_reset = dp83822_phy_reset, >> - .get_wol = dp83822_get_wol, >> - .set_wol = dp83822_set_wol, >> - .ack_interrupt = dp83822_ack_interrupt, >> - .config_intr = dp83822_config_intr, >> - .suspend = dp83822_suspend, >> - .resume = dp83822_resume, >> - }, >> + DP83822_PHY_DRIVER(DP83822_PHY_ID, "TI DP83822"), >> + DP83822_PHY_DRIVER(DP83825I_PHY_ID, "TI DP83825I"), >> }; >> module_phy_driver(dp83822_driver); >> >> static struct mdio_device_id __maybe_unused dp83822_tbl[] = { >> { DP83822_PHY_ID, 0xfffffff0 }, >> + { DP83825I_PHY_ID, 0xfffffff0 }, >> { }, >> }; >> MODULE_DEVICE_TABLE(mdio, dp83822_tbl); >> > >
-- ------------------ Dan Murphy
| |