[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <436ddf50-93d6-f15a-e9f6-bf8e43b63fec@huawei.com>
Date: Fri, 23 Jun 2017 11:57:56 +0800
From: Yunsheng Lin <linyunsheng@...wei.com>
To: Andrew Lunn <andrew@...n.ch>
CC: <davem@...emloft.net>, <f.fainelli@...il.com>,
<huangdaode@...ilicon.com>, <xuwei5@...ilicon.com>,
<liguozhu@...ilicon.com>, <Yisen.Zhuang@...wei.com>,
<gabriele.paoloni@...wei.com>, <john.garry@...wei.com>,
<linuxarm@...wei.com>, <salil.mehta@...wei.com>,
<lipeng321@...wei.com>, <tremyfr@...il.com>,
<netdev@...r.kernel.org>, <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH NET 1/2] net: phy: Add phy loopback support in net phy
framework
Hi, Andrew
On 2017/6/23 11:16, Andrew Lunn wrote:
>> +int genphy_loopback(struct phy_device *phydev, bool enable)
>> +{
>> + int value;
>> +
>> + if (enable) {
>> + value = phy_read(phydev, MII_BMCR);
>> + phy_write(phydev, MII_BMCR, value | BMCR_LOOPBACK);
>> + } else {
>> + value = phy_read(phydev, MII_BMCR);
>> + phy_write(phydev, MII_BMCR, value & ~BMCR_LOOPBACK);
>> + }
>
> You should add error checking here. Both phy_read and phy_write can
> return an error. Also, do the read and write once.
Thanks for pointing out, will do that next vesion.
>
>> +
>> + return 0;
>> +}
>> +EXPORT_SYMBOL(genphy_loopback);
>> +
>> +static int gen10g_loopback(struct phy_device *phydev, bool enable)
>> +{
>> + return 0;
>> +}
>
> This is pointless. The core code in phy.c should first check if the
> function exists before calling it. So not having a 10g method is fine.
>
will remove it next vesion.
Best Regards
Yunsheng Lin
Powered by blists - more mailing lists