Lines Matching defs:dsaf_dev

103 		ret = mac_cb->dsaf_dev->misc_op->get_sfp_prsnt(mac_cb,
178 mac_cb->dsaf_dev->ae_dev.name,
198 if (mac_cb->dsaf_dev->dsaf_mode <= DSAF_MODE_ENABLE) {
202 mac_cb->dsaf_dev->ae_dev.name,
206 } else if (mac_cb->dsaf_dev->dsaf_mode < DSAF_MODE_MAX) {
210 mac_cb->dsaf_dev->ae_dev.name,
216 mac_cb->dsaf_dev->ae_dev.name, mac_cb->mac_id);
220 if (vmid >= mac_cb->dsaf_dev->rcb_common[0]->max_vfn) {
222 mac_cb->dsaf_dev->ae_dev.name, mac_cb->mac_id, vmid);
226 q_num_per_vf = mac_cb->dsaf_dev->rcb_common[0]->max_q_per_vf;
227 vf_num_per_port = mac_cb->dsaf_dev->rcb_common[0]->max_vfn;
232 switch (mac_cb->dsaf_dev->dsaf_mode) {
255 mac_cb->dsaf_dev->ae_dev.name, mac_cb->mac_id);
276 struct dsaf_device *dsaf_dev = mac_cb->dsaf_dev;
281 if (!HNS_DSAF_IS_DEBUG(dsaf_dev)) {
293 ret = hns_dsaf_del_mac_entry(dsaf_dev,
301 ret = hns_dsaf_set_mac_uc_entry(dsaf_dev, &mac_entry);
317 struct dsaf_device *dsaf_dev = mac_cb->dsaf_dev;
321 if (HNS_DSAF_IS_DEBUG(dsaf_dev))
331 return hns_dsaf_set_mac_uc_entry(dsaf_dev, &mac_entry);
337 struct dsaf_device *dsaf_dev = mac_cb->dsaf_dev;
341 if (HNS_DSAF_IS_DEBUG(dsaf_dev))
351 return hns_dsaf_rm_mac_addr(dsaf_dev, &mac_entry);
358 struct dsaf_device *dsaf_dev = mac_cb->dsaf_dev;
361 if (!HNS_DSAF_IS_DEBUG(dsaf_dev) && addr) {
368 ret = hns_dsaf_del_mac_mc_port(dsaf_dev, &mac_entry);
370 ret = hns_dsaf_add_mac_mc_port(dsaf_dev, &mac_entry);
372 dev_err(dsaf_dev->dev,
374 mac_cb->dsaf_dev->ae_dev.name,
385 struct dsaf_device *dsaf_dev = mac_cb->dsaf_dev;
392 return hns_dsaf_clr_mac_mc_port(dsaf_dev, mac_cb->mac_id, port_num);
417 struct dsaf_device *dsaf_dev = mac_cb->dsaf_dev;
424 if (!HNS_DSAF_IS_DEBUG(dsaf_dev)) {
431 ret = hns_dsaf_del_mac_mc_port(dsaf_dev, &mac_entry);
433 ret = hns_dsaf_add_mac_mc_port(dsaf_dev, &mac_entry);
450 struct dsaf_device *dsaf_dev = mac_cb->dsaf_dev;
460 if (!HNS_DSAF_IS_DEBUG(dsaf_dev)) {
470 ret = hns_dsaf_del_mac_mc_port(dsaf_dev, &mac_entry);
472 ret = hns_dsaf_add_mac_mc_port(dsaf_dev, &mac_entry);
492 bool is_ver1 = AE_IS_VER1(mac_cb->dsaf_dev->dsaf_ver);
569 mac_cb->dsaf_dev->misc_op->cpld_reset_led(mac_cb);
638 bool is_ver1 = AE_IS_VER1(mac_cb->dsaf_dev->dsaf_ver);
997 hns_mac_get_vaddr(struct dsaf_device *dsaf_dev,
1000 u8 __iomem *base = dsaf_dev->io_base;
1007 return dsaf_dev->ppe_base + 0x1000;
1012 * @dsaf_dev: dsa fabric device struct pointer
1017 hns_mac_get_cfg(struct dsaf_device *dsaf_dev, struct hns_mac_cb *mac_cb)
1022 mac_cb->dsaf_dev = dsaf_dev;
1023 mac_cb->dev = dsaf_dev->dev;
1025 mac_cb->sys_ctl_vaddr = dsaf_dev->sc_base;
1026 mac_cb->serdes_vaddr = dsaf_dev->sds_base;
1032 if (!HNS_DSAF_IS_DEBUG(dsaf_dev))
1037 mac_cb->phy_if = dsaf_dev->misc_op->get_phy_if(mac_cb);
1041 dev_err(dsaf_dev->dev,
1052 mac_cb->dsaf_dev->misc_op->cpld_reset_led(mac_cb);
1053 mac_cb->vaddr = hns_mac_get_vaddr(dsaf_dev, mac_cb, mac_mode_idx);
1058 static int hns_mac_get_max_port_num(struct dsaf_device *dsaf_dev)
1060 if (HNS_DSAF_IS_DEBUG(dsaf_dev))
1082 * @dsaf_dev: dsa fabric device struct pointer
1085 int hns_mac_init(struct dsaf_device *dsaf_dev)
1090 int max_port_num = hns_mac_get_max_port_num(dsaf_dev);
1094 device_for_each_child_node(dsaf_dev->dev, child) {
1098 dev_err(dsaf_dev->dev,
1104 dev_err(dsaf_dev->dev,
1108 mac_cb = devm_kzalloc(dsaf_dev->dev, sizeof(*mac_cb),
1116 dsaf_dev->mac_cb[port_id] = mac_cb;
1125 mac_cb = devm_kzalloc(dsaf_dev->dev, sizeof(*mac_cb),
1131 dsaf_dev->mac_cb[port_id] = mac_cb;
1137 mac_cb = dsaf_dev->mac_cb[port_id];
1141 ret = hns_mac_get_cfg(dsaf_dev, mac_cb);
1153 void hns_mac_uninit(struct dsaf_device *dsaf_dev)
1156 int max_port_num = hns_mac_get_max_port_num(dsaf_dev);
1159 if (!dsaf_dev->mac_cb[i])
1162 dsaf_dev->misc_op->cpld_reset_led(dsaf_dev->mac_cb[i]);
1163 hns_mac_remove_phydev(dsaf_dev->mac_cb[i]);
1164 dsaf_dev->mac_cb[i] = NULL;
1215 hns_dsaf_set_promisc_tcam(mac_cb->dsaf_dev, mac_cb->mac_id, !!en);
1248 mac_cb->dsaf_dev->misc_op->cpld_set_led(mac_cb, (int)mac_cb->link,
1258 return mac_cb->dsaf_dev->misc_op->cpld_set_led_id(mac_cb, status);