1 /* SPDX-License-Identifier: GPL-2.0+ */
2 // Copyright (c) 2016-2017 Hisilicon Limited.
3 
4 #ifndef __HCLGE_MDIO_H
5 #define __HCLGE_MDIO_H
6 
7 #include "hnae3.h"
8 
9 struct hclge_dev;
10 
11 int hclge_mac_mdio_config(struct hclge_dev *hdev);
12 int hclge_mac_connect_phy(struct hnae3_handle *handle);
13 void hclge_mac_disconnect_phy(struct hnae3_handle *handle);
14 void hclge_mac_start_phy(struct hclge_dev *hdev);
15 void hclge_mac_stop_phy(struct hclge_dev *hdev);
16 u16 hclge_read_phy_reg(struct hclge_dev *hdev, u16 reg_addr);
17 int hclge_write_phy_reg(struct hclge_dev *hdev, u16 reg_addr, u16 val);
18 
19 #endif
20