aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/hisilicon/hns/hns_dsaf_misc.c
diff options
context:
space:
mode:
authorKejian Yan <yankejian@huawei.com>2016-06-03 10:55:18 +0800
committerDavid S. Miller <davem@davemloft.net>2016-06-04 21:32:41 -0400
commit8413b3be4d77dae0d0203cc8b6f2b928dda66e7e (patch)
tree53d1291649623d5e488b9f3b7398440924aa1185 /drivers/net/ethernet/hisilicon/hns/hns_dsaf_misc.c
parentnet: hns: add dsaf misc operation method (diff)
downloadlinux-dev-8413b3be4d77dae0d0203cc8b6f2b928dda66e7e.tar.xz
linux-dev-8413b3be4d77dae0d0203cc8b6f2b928dda66e7e.zip
net: hns: dsaf adds support of acpi
Dsaf needs to get configuration parameter by ACPI, so this patch add support of ACPI. Signed-off-by: Kejian Yan <yankejian@huawei.com> Signed-off-by: Yisen Zhuang <Yisen.Zhuang@huawei.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to '')
-rw-r--r--drivers/net/ethernet/hisilicon/hns/hns_dsaf_misc.c32
1 files changed, 17 insertions, 15 deletions
diff --git a/drivers/net/ethernet/hisilicon/hns/hns_dsaf_misc.c b/drivers/net/ethernet/hisilicon/hns/hns_dsaf_misc.c
index e1c3e0d18ff0..f21177bdfb66 100644
--- a/drivers/net/ethernet/hisilicon/hns/hns_dsaf_misc.c
+++ b/drivers/net/ethernet/hisilicon/hns/hns_dsaf_misc.c
@@ -362,21 +362,23 @@ struct dsaf_misc_op *hns_misc_op_get(struct dsaf_device *dsaf_dev)
if (!misc_op)
return NULL;
- misc_op->cpld_set_led = hns_cpld_set_led;
- misc_op->cpld_reset_led = cpld_led_reset;
- misc_op->cpld_set_led_id = cpld_set_led_id;
-
- misc_op->dsaf_reset = hns_dsaf_rst;
- misc_op->xge_srst = hns_dsaf_xge_srst_by_port;
- misc_op->xge_core_srst = hns_dsaf_xge_core_srst_by_port;
- misc_op->ge_srst = hns_dsaf_ge_srst_by_port;
- misc_op->ppe_srst = hns_ppe_srst_by_port;
- misc_op->ppe_comm_srst = hns_ppe_com_srst;
-
- misc_op->get_phy_if = hns_mac_get_phy_if;
- misc_op->get_sfp_prsnt = hns_mac_get_sfp_prsnt;
-
- misc_op->cfg_serdes_loopback = hns_mac_config_sds_loopback;
+ if (dev_of_node(dsaf_dev->dev)) {
+ misc_op->cpld_set_led = hns_cpld_set_led;
+ misc_op->cpld_reset_led = cpld_led_reset;
+ misc_op->cpld_set_led_id = cpld_set_led_id;
+
+ misc_op->dsaf_reset = hns_dsaf_rst;
+ misc_op->xge_srst = hns_dsaf_xge_srst_by_port;
+ misc_op->xge_core_srst = hns_dsaf_xge_core_srst_by_port;
+ misc_op->ge_srst = hns_dsaf_ge_srst_by_port;
+ misc_op->ppe_srst = hns_ppe_srst_by_port;
+ misc_op->ppe_comm_srst = hns_ppe_com_srst;
+
+ misc_op->get_phy_if = hns_mac_get_phy_if;
+ misc_op->get_sfp_prsnt = hns_mac_get_sfp_prsnt;
+
+ misc_op->cfg_serdes_loopback = hns_mac_config_sds_loopback;
+ }
return (void *)misc_op;
}