net: hns3: cleanup mac auto-negotiation state query
authorFuyun Liang <liangfuyun1@huawei.com>
Fri, 22 Dec 2017 04:21:49 +0000 (12:21 +0800)
committerDavid S. Miller <davem@davemloft.net>
Wed, 27 Dec 2017 15:41:30 +0000 (10:41 -0500)
When checking whether auto-negotiation is on, driver only needs to
check the value of mac.autoneg(SW) directly, and does not need to
query it from hardware. Because this value is always synchronized
with the auto-negotiation state of hardware.

This patch removes the mac auto-negotiation state query.

Signed-off-by: Fuyun Liang <liangfuyun1@huawei.com>
Signed-off-by: Peng Li <lipeng321@huawei.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c

index d77a6de7fc1b38d393954da7d3a70d5c6e5c3fec..046f4bb1767df58ebaef6f25b3c11f6c2a529a89 100644 (file)
@@ -2137,28 +2137,6 @@ static int hclge_query_mac_an_speed_dup(struct hclge_dev *hdev, int *speed,
        return 0;
 }
 
-static int hclge_query_autoneg_result(struct hclge_dev *hdev)
-{
-       struct hclge_mac *mac = &hdev->hw.mac;
-       struct hclge_query_an_speed_dup_cmd *req;
-       struct hclge_desc desc;
-       int ret;
-
-       req = (struct hclge_query_an_speed_dup_cmd *)desc.data;
-
-       hclge_cmd_setup_basic_desc(&desc, HCLGE_OPC_QUERY_AN_RESULT, true);
-       ret = hclge_cmd_send(&hdev->hw, &desc, 1);
-       if (ret) {
-               dev_err(&hdev->pdev->dev,
-                       "autoneg result query cmd failed %d.\n", ret);
-               return ret;
-       }
-
-       mac->autoneg = hnae_get_bit(req->an_syn_dup_speed, HCLGE_QUERY_AN_B);
-
-       return 0;
-}
-
 static int hclge_set_autoneg_en(struct hclge_dev *hdev, bool enable)
 {
        struct hclge_config_auto_neg_cmd *req;
@@ -2195,8 +2173,6 @@ static int hclge_get_autoneg(struct hnae3_handle *handle)
        struct hclge_vport *vport = hclge_get_vport(handle);
        struct hclge_dev *hdev = vport->back;
 
-       hclge_query_autoneg_result(hdev);
-
        return hdev->hw.mac.autoneg;
 }