Re: [PATCH v4 2/2] net: phy: adin: implement Energy Detect Powerdown mode via phy-tunable

From: Florian Fainelli
Date: Sun Sep 15 2019 - 11:11:52 EST




On 9/14/2019 8:29 AM, Andrew Lunn wrote:
> On Thu, Sep 12, 2019 at 07:28:12PM +0300, Alexandru Ardelean wrote:
>
>> +static int adin_set_edpd(struct phy_device *phydev, u16 tx_interval)
>> +{
>> + u16 val;
>> +
>> + if (tx_interval == ETHTOOL_PHY_EDPD_DISABLE)
>> + return phy_clear_bits(phydev, ADIN1300_PHY_CTRL_STATUS2,
>> + (ADIN1300_NRG_PD_EN | ADIN1300_NRG_PD_TX_EN));
>> +
>> + val = ADIN1300_NRG_PD_EN;
>> +
>> + switch (tx_interval) {
>> + case 1000: /* 1 second */
>> + /* fallthrough */
>> + case ETHTOOL_PHY_EDPD_DFLT_TX_MSECS:
>> + val |= ADIN1300_NRG_PD_TX_EN;
>> + /* fallthrough */
>> + case ETHTOOL_PHY_EDPD_NO_TX:
>> + break;
>> + default:
>> + return -EINVAL;
>> + }
>> +
>> + return phy_modify(phydev, ADIN1300_PHY_CTRL_STATUS2,
>> + (ADIN1300_NRG_PD_EN | ADIN1300_NRG_PD_TX_EN),
>> + val);
>> +}
>> +
>
>>
>> + rc = adin_set_edpd(phydev, 1);
>> + if (rc < 0)
>> + return rc;
>
> Hi Alexandru
>
> Shouldn't this be adin_set_edpd(phydev, 1000);

That does sound like the intended use, or use
ETHTOOL_PHY_EDPD_DFLT_TX_MSECS, with that fixed:

Reviewed-by: Florian Fainelli <f.fainelli@xxxxxxxxx>
--
Florian