Lines Matching refs:handle
25 static struct hns_mac_cb *hns_get_mac_cb(struct hnae_handle *handle) in hns_get_mac_cb() argument
27 struct hnae_vf_cb *vf_cb = hns_ae_get_vf_cb(handle); in hns_get_mac_cb()
56 static struct hns_ppe_cb *hns_get_ppe_cb(struct hnae_handle *handle) in hns_get_ppe_cb() argument
61 struct hnae_vf_cb *vf_cb = hns_ae_get_vf_cb(handle); in hns_get_ppe_cb()
186 static void hns_ae_put_handle(struct hnae_handle *handle) in hns_ae_put_handle() argument
188 struct hnae_vf_cb *vf_cb = hns_ae_get_vf_cb(handle); in hns_ae_put_handle()
195 for (i = 0; i < handle->q_num; i++) in hns_ae_put_handle()
196 hns_ae_get_ring_pair(handle->qs[i])->used_by_vf = 0; in hns_ae_put_handle()
199 static void hns_ae_ring_enable_all(struct hnae_handle *handle, int val) in hns_ae_ring_enable_all() argument
201 int q_num = handle->q_num; in hns_ae_ring_enable_all()
205 hns_rcb_ring_enable_hw(handle->qs[i], val); in hns_ae_ring_enable_all()
218 struct hnae_vf_cb *vf_cb = hns_ae_get_vf_cb(q->handle); in hns_ae_fini_queue()
224 static int hns_ae_set_mac_address(struct hnae_handle *handle, void *p) in hns_ae_set_mac_address() argument
227 struct hns_mac_cb *mac_cb = hns_get_mac_cb(handle); in hns_ae_set_mac_address()
230 dev_err(handle->owner_dev, "is not valid ether addr !\n"); in hns_ae_set_mac_address()
234 ret = hns_mac_change_vf_addr(mac_cb, handle->vf_id, p); in hns_ae_set_mac_address()
236 dev_err(handle->owner_dev, in hns_ae_set_mac_address()
244 static int hns_ae_set_multicast_one(struct hnae_handle *handle, void *addr) in hns_ae_set_multicast_one() argument
248 struct hns_mac_cb *mac_cb = hns_get_mac_cb(handle); in hns_ae_set_multicast_one()
257 dev_err(handle->owner_dev, in hns_ae_set_multicast_one()
266 dev_err(handle->owner_dev, in hns_ae_set_multicast_one()
273 static int hns_ae_set_mtu(struct hnae_handle *handle, int new_mtu) in hns_ae_set_mtu() argument
275 struct hns_mac_cb *mac_cb = hns_get_mac_cb(handle); in hns_ae_set_mtu()
280 static int hns_ae_start(struct hnae_handle *handle) in hns_ae_start() argument
283 struct hns_mac_cb *mac_cb = hns_get_mac_cb(handle); in hns_ae_start()
289 hns_ae_ring_enable_all(handle, 1); in hns_ae_start()
297 void hns_ae_stop(struct hnae_handle *handle) in hns_ae_stop() argument
299 struct hns_mac_cb *mac_cb = hns_get_mac_cb(handle); in hns_ae_stop()
302 hns_rcb_wait_fbd_clean(handle->qs, handle->q_num, RCB_INT_FLAG_TX); in hns_ae_stop()
310 hns_ae_ring_enable_all(handle, 0); in hns_ae_stop()
315 static void hns_ae_reset(struct hnae_handle *handle) in hns_ae_reset() argument
317 struct hnae_vf_cb *vf_cb = hns_ae_get_vf_cb(handle); in hns_ae_reset()
346 static int hns_ae_get_link_status(struct hnae_handle *handle) in hns_ae_get_link_status() argument
349 struct hns_mac_cb *mac_cb = hns_get_mac_cb(handle); in hns_ae_get_link_status()
356 static int hns_ae_get_mac_info(struct hnae_handle *handle, in hns_ae_get_mac_info() argument
359 struct hns_mac_cb *mac_cb = hns_get_mac_cb(handle); in hns_ae_get_mac_info()
364 static void hns_ae_adjust_link(struct hnae_handle *handle, int speed, in hns_ae_adjust_link() argument
367 struct hns_mac_cb *mac_cb = hns_get_mac_cb(handle); in hns_ae_adjust_link()
378 static void hns_ae_get_pauseparam(struct hnae_handle *handle, in hns_ae_get_pauseparam() argument
381 assert(handle); in hns_ae_get_pauseparam()
383 hns_mac_get_autoneg(hns_get_mac_cb(handle), auto_neg); in hns_ae_get_pauseparam()
385 hns_mac_get_pauseparam(hns_get_mac_cb(handle), rx_en, tx_en); in hns_ae_get_pauseparam()
388 static int hns_ae_set_autoneg(struct hnae_handle *handle, u8 enable) in hns_ae_set_autoneg() argument
390 assert(handle); in hns_ae_set_autoneg()
392 return hns_mac_set_autoneg(hns_get_mac_cb(handle), enable); in hns_ae_set_autoneg()
395 static void hns_ae_set_promisc_mode(struct hnae_handle *handle, u32 en) in hns_ae_set_promisc_mode() argument
397 hns_dsaf_set_promisc_mode(hns_ae_get_dsaf_dev(handle->dev), en); in hns_ae_set_promisc_mode()
400 static int hns_ae_get_autoneg(struct hnae_handle *handle) in hns_ae_get_autoneg() argument
404 assert(handle); in hns_ae_get_autoneg()
406 hns_mac_get_autoneg(hns_get_mac_cb(handle), &auto_neg); in hns_ae_get_autoneg()
411 static int hns_ae_set_pauseparam(struct hnae_handle *handle, in hns_ae_set_pauseparam() argument
414 struct hns_mac_cb *mac_cb = hns_get_mac_cb(handle); in hns_ae_set_pauseparam()
424 static void hns_ae_get_coalesce_usecs(struct hnae_handle *handle, in hns_ae_get_coalesce_usecs() argument
429 port = hns_ae_map_eport_to_dport(handle->eport_id); in hns_ae_get_coalesce_usecs()
432 hns_ae_get_dsaf_dev(handle->dev), in hns_ae_get_coalesce_usecs()
435 hns_ae_get_dsaf_dev(handle->dev), in hns_ae_get_coalesce_usecs()
439 static void hns_ae_get_rx_max_coalesced_frames(struct hnae_handle *handle, in hns_ae_get_rx_max_coalesced_frames() argument
444 assert(handle); in hns_ae_get_rx_max_coalesced_frames()
446 port = hns_ae_map_eport_to_dport(handle->eport_id); in hns_ae_get_rx_max_coalesced_frames()
449 hns_ae_get_dsaf_dev(handle->dev), port); in hns_ae_get_rx_max_coalesced_frames()
451 hns_ae_get_dsaf_dev(handle->dev), port); in hns_ae_get_rx_max_coalesced_frames()
454 static void hns_ae_set_coalesce_usecs(struct hnae_handle *handle, in hns_ae_set_coalesce_usecs() argument
459 assert(handle); in hns_ae_set_coalesce_usecs()
461 port = hns_ae_map_eport_to_dport(handle->eport_id); in hns_ae_set_coalesce_usecs()
463 hns_rcb_set_coalesce_usecs(hns_ae_get_dsaf_dev(handle->dev), in hns_ae_set_coalesce_usecs()
467 static int hns_ae_set_coalesce_frames(struct hnae_handle *handle, in hns_ae_set_coalesce_frames() argument
473 assert(handle); in hns_ae_set_coalesce_frames()
475 port = hns_ae_map_eport_to_dport(handle->eport_id); in hns_ae_set_coalesce_frames()
477 ret = hns_rcb_set_coalesced_frames(hns_ae_get_dsaf_dev(handle->dev), in hns_ae_set_coalesce_frames()
482 void hns_ae_update_stats(struct hnae_handle *handle, in hns_ae_update_stats() argument
491 struct hnae_vf_cb *vf_cb = hns_ae_get_vf_cb(handle); in hns_ae_update_stats()
496 dsaf_dev = hns_ae_get_dsaf_dev(handle->dev); in hns_ae_update_stats()
500 ppe_cb = hns_get_ppe_cb(handle); in hns_ae_update_stats()
501 mac_cb = hns_get_mac_cb(handle); in hns_ae_update_stats()
503 for (idx = 0; idx < handle->q_num; idx++) { in hns_ae_update_stats()
504 queue = handle->qs[idx]; in hns_ae_update_stats()
565 void hns_ae_get_stats(struct hnae_handle *handle, u64 *data) in hns_ae_get_stats() argument
573 if (!handle || !data) { in hns_ae_get_stats()
578 vf_cb = hns_ae_get_vf_cb(handle); in hns_ae_get_stats()
579 mac_cb = hns_get_mac_cb(handle); in hns_ae_get_stats()
580 ppe_cb = hns_get_ppe_cb(handle); in hns_ae_get_stats()
582 for (idx = 0; idx < handle->q_num; idx++) { in hns_ae_get_stats()
583 hns_rcb_get_stats(handle->qs[idx], p); in hns_ae_get_stats()
597 void hns_ae_get_strings(struct hnae_handle *handle, in hns_ae_get_strings() argument
607 assert(handle); in hns_ae_get_strings()
609 vf_cb = hns_ae_get_vf_cb(handle); in hns_ae_get_strings()
611 mac_cb = hns_get_mac_cb(handle); in hns_ae_get_strings()
612 ppe_cb = hns_get_ppe_cb(handle); in hns_ae_get_strings()
614 for (idx = 0; idx < handle->q_num; idx++) { in hns_ae_get_strings()
629 int hns_ae_get_sset_count(struct hnae_handle *handle, int stringset) in hns_ae_get_sset_count() argument
634 assert(handle); in hns_ae_get_sset_count()
636 mac_cb = hns_get_mac_cb(handle); in hns_ae_get_sset_count()
638 sset_count += hns_rcb_get_ring_sset_count(stringset) * handle->q_num; in hns_ae_get_sset_count()
648 static int hns_ae_config_loopback(struct hnae_handle *handle, in hns_ae_config_loopback() argument
652 struct hnae_vf_cb *vf_cb = hns_ae_get_vf_cb(handle); in hns_ae_config_loopback()
667 void hns_ae_update_led_status(struct hnae_handle *handle) in hns_ae_update_led_status() argument
671 assert(handle); in hns_ae_update_led_status()
672 mac_cb = hns_get_mac_cb(handle); in hns_ae_update_led_status()
678 int hns_ae_cpld_set_led_id(struct hnae_handle *handle, in hns_ae_cpld_set_led_id() argument
683 assert(handle); in hns_ae_cpld_set_led_id()
685 mac_cb = hns_get_mac_cb(handle); in hns_ae_cpld_set_led_id()
690 void hns_ae_get_regs(struct hnae_handle *handle, void *data) in hns_ae_get_regs() argument
695 struct hnae_vf_cb *vf_cb = hns_ae_get_vf_cb(handle); in hns_ae_get_regs()
696 struct hns_ppe_cb *ppe_cb = hns_get_ppe_cb(handle); in hns_ae_get_regs()
705 for (i = 0; i < handle->q_num; i++) { in hns_ae_get_regs()
706 hns_rcb_get_ring_regs(handle->qs[i], p); in hns_ae_get_regs()
717 int hns_ae_get_regs_len(struct hnae_handle *handle) in hns_ae_get_regs_len() argument
720 struct hnae_vf_cb *vf_cb = hns_ae_get_vf_cb(handle); in hns_ae_get_regs_len()
724 total_num += hns_rcb_get_ring_regs_count() * handle->q_num; in hns_ae_get_regs_len()