提交 dbd880c2 编写于 作者: G Guangbin Huang 提交者: Yang Yingliang

net: hns3: optimize parameter of hclge_set_phy_loopback() function

driver inclusion
category: bugfix
bugzilla: NA
CVE: NA

This patch deletes the parameter phydev of hclge_set_phy_loopback()
function for optimization, as it can be gotten by hdev->hw.mac.phydev.

The variable phydev should be checked whether null pointer before use.
Signed-off-by: NGuangbin Huang <huangguangbin2@huawei.com>
Reviewed-by: NYonglong Liu <liuyonglong@huawei.com>
Reviewed-by: NPeng Li <lipeng321@huawei.com>
Reviewed-by: NZhong Zhaohui <zhongzhaohui@huawei.com>
Signed-off-by: NYang Yingliang <yangyingliang@huawei.com>
上级 19949f3c
...@@ -6733,11 +6733,14 @@ static int hclge_disable_phy_loopback(struct hclge_dev *hdev, ...@@ -6733,11 +6733,14 @@ static int hclge_disable_phy_loopback(struct hclge_dev *hdev,
return ret; return ret;
} }
static int hclge_set_phy_loopback(struct hclge_dev *hdev, static int hclge_set_phy_loopback(struct hclge_dev *hdev, bool en)
struct phy_device *phydev, bool en)
{ {
struct phy_device *phydev = hdev->hw.mac.phydev;
int ret; int ret;
if (!phydev)
return -ENOTSUPP;
if (en) if (en)
ret = hclge_enable_phy_loopback(hdev, phydev); ret = hclge_enable_phy_loopback(hdev, phydev);
else else
...@@ -6783,7 +6786,6 @@ static int hclge_set_loopback(struct hnae3_handle *handle, ...@@ -6783,7 +6786,6 @@ static int hclge_set_loopback(struct hnae3_handle *handle,
enum hnae3_loop loop_mode, bool en) enum hnae3_loop loop_mode, bool en)
{ {
struct hclge_vport *vport = hclge_get_vport(handle); struct hclge_vport *vport = hclge_get_vport(handle);
struct phy_device *phydev = handle->netdev->phydev;
struct hnae3_knic_private_info *kinfo; struct hnae3_knic_private_info *kinfo;
struct hclge_dev *hdev = vport->back; struct hclge_dev *hdev = vport->back;
int i, ret; int i, ret;
...@@ -6811,8 +6813,7 @@ static int hclge_set_loopback(struct hnae3_handle *handle, ...@@ -6811,8 +6813,7 @@ static int hclge_set_loopback(struct hnae3_handle *handle,
ret = hclge_set_serdes_loopback(hdev, en, loop_mode); ret = hclge_set_serdes_loopback(hdev, en, loop_mode);
break; break;
case HNAE3_LOOP_PHY: case HNAE3_LOOP_PHY:
if (phydev) ret = hclge_set_phy_loopback(hdev, en);
ret = hclge_set_phy_loopback(hdev, phydev, en);
break; break;
default: default:
ret = -ENOTSUPP; ret = -ENOTSUPP;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册