Lines Matching refs:fbn
13 int __fbnic_open(struct fbnic_net *fbn) in __fbnic_open() argument
15 struct fbnic_dev *fbd = fbn->fbd; in __fbnic_open()
18 err = fbnic_alloc_napi_vectors(fbn); in __fbnic_open()
22 err = fbnic_alloc_resources(fbn); in __fbnic_open()
26 err = fbnic_set_netif_queues(fbn); in __fbnic_open()
39 err = fbnic_time_start(fbn); in __fbnic_open()
52 fbnic_rss_reinit(fbd, fbn); in __fbnic_open()
56 fbnic_time_stop(fbn); in __fbnic_open()
58 fbnic_fw_xmit_ownership_msg(fbn->fbd, false); in __fbnic_open()
60 fbnic_free_resources(fbn); in __fbnic_open()
62 fbnic_free_napi_vectors(fbn); in __fbnic_open()
68 struct fbnic_net *fbn = netdev_priv(netdev); in fbnic_open() local
71 fbnic_napi_name_irqs(fbn->fbd); in fbnic_open()
73 err = __fbnic_open(fbn); in fbnic_open()
75 fbnic_up(fbn); in fbnic_open()
82 struct fbnic_net *fbn = netdev_priv(netdev); in fbnic_stop() local
84 fbnic_down(fbn); in fbnic_stop()
85 fbnic_pcs_irq_disable(fbn->fbd); in fbnic_stop()
87 fbnic_time_stop(fbn); in fbnic_stop()
88 fbnic_fw_xmit_ownership_msg(fbn->fbd, false); in fbnic_stop()
90 fbnic_reset_netif_queues(fbn); in fbnic_stop()
91 fbnic_free_resources(fbn); in fbnic_stop()
92 fbnic_free_napi_vectors(fbn); in fbnic_stop()
99 struct fbnic_net *fbn = netdev_priv(netdev); in fbnic_uc_sync() local
105 avail_addr = __fbnic_uc_sync(fbn->fbd, addr); in fbnic_uc_sync()
117 struct fbnic_net *fbn = netdev_priv(netdev); in fbnic_uc_unsync() local
118 struct fbnic_dev *fbd = fbn->fbd; in fbnic_uc_unsync()
140 struct fbnic_net *fbn = netdev_priv(netdev); in fbnic_mc_sync() local
146 avail_addr = __fbnic_mc_sync(fbn->fbd, addr); in fbnic_mc_sync()
158 struct fbnic_net *fbn = netdev_priv(netdev); in fbnic_mc_unsync() local
159 struct fbnic_dev *fbd = fbn->fbd; in fbnic_mc_unsync()
181 struct fbnic_net *fbn = netdev_priv(netdev); in __fbnic_set_rx_mode() local
183 struct fbnic_dev *fbd = fbn->fbd; in __fbnic_set_rx_mode()
299 struct fbnic_net *fbn = netdev_priv(netdev); in fbnic_clear_rx_mode() local
300 struct fbnic_dev *fbd = fbn->fbd; in fbnic_clear_rx_mode()
328 struct fbnic_net *fbn = netdev_priv(netdev); in fbnic_hwtstamp_get() local
330 *config = fbn->hwtstamp_config; in fbnic_hwtstamp_get()
339 struct fbnic_net *fbn = netdev_priv(netdev); in fbnic_hwtstamp_set() local
345 if (!kernel_hwtstamp_config_changed(config, &fbn->hwtstamp_config)) in fbnic_hwtstamp_set()
381 old_rx_filter = fbn->hwtstamp_config.rx_filter; in fbnic_hwtstamp_set()
382 memcpy(&fbn->hwtstamp_config, config, sizeof(*config)); in fbnic_hwtstamp_set()
384 if (old_rx_filter != config->rx_filter && netif_running(fbn->netdev)) { in fbnic_hwtstamp_set()
385 fbnic_rss_reinit(fbn->fbd, fbn); in fbnic_hwtstamp_set()
386 fbnic_write_rules(fbn->fbd); in fbnic_hwtstamp_set()
408 struct fbnic_net *fbn = netdev_priv(dev); in fbnic_get_stats64() local
412 stats = &fbn->tx_stats; in fbnic_get_stats64()
422 for (i = 0; i < fbn->num_tx_queues; i++) { in fbnic_get_stats64()
423 struct fbnic_ring *txr = fbn->tx[i]; in fbnic_get_stats64()
441 stats = &fbn->rx_stats; in fbnic_get_stats64()
451 for (i = 0; i < fbn->num_rx_queues; i++) { in fbnic_get_stats64()
452 struct fbnic_ring *rxr = fbn->rx[i]; in fbnic_get_stats64()
487 struct fbnic_net *fbn = netdev_priv(dev); in fbnic_get_queue_stats_rx() local
488 struct fbnic_ring *rxr = fbn->rx[idx]; in fbnic_get_queue_stats_rx()
510 struct fbnic_net *fbn = netdev_priv(dev); in fbnic_get_queue_stats_tx() local
511 struct fbnic_ring *txr = fbn->tx[idx]; in fbnic_get_queue_stats_tx()
534 struct fbnic_net *fbn = netdev_priv(dev); in fbnic_get_base_stats() local
536 tx->bytes = fbn->tx_stats.bytes; in fbnic_get_base_stats()
537 tx->packets = fbn->tx_stats.packets; in fbnic_get_base_stats()
539 rx->bytes = fbn->rx_stats.bytes; in fbnic_get_base_stats()
540 rx->packets = fbn->rx_stats.packets; in fbnic_get_base_stats()
549 void fbnic_reset_queues(struct fbnic_net *fbn, in fbnic_reset_queues() argument
552 struct fbnic_dev *fbd = fbn->fbd; in fbnic_reset_queues()
558 fbn->num_tx_queues = tx; in fbnic_reset_queues()
561 fbn->num_rx_queues = rx; in fbnic_reset_queues()
563 fbn->num_napi = max(tx, rx); in fbnic_reset_queues()
575 struct fbnic_net *fbn = netdev_priv(fbd->netdev); in fbnic_netdev_free() local
577 if (fbn->phylink) in fbnic_netdev_free()
578 phylink_destroy(fbn->phylink); in fbnic_netdev_free()
596 struct fbnic_net *fbn; in fbnic_netdev_alloc() local
599 netdev = alloc_etherdev_mq(sizeof(*fbn), FBNIC_MAX_RXQS); in fbnic_netdev_alloc()
611 fbn = netdev_priv(netdev); in fbnic_netdev_alloc()
613 fbn->netdev = netdev; in fbnic_netdev_alloc()
614 fbn->fbd = fbd; in fbnic_netdev_alloc()
616 fbn->txq_size = FBNIC_TXQ_SIZE_DEFAULT; in fbnic_netdev_alloc()
617 fbn->hpq_size = FBNIC_HPQ_SIZE_DEFAULT; in fbnic_netdev_alloc()
618 fbn->ppq_size = FBNIC_PPQ_SIZE_DEFAULT; in fbnic_netdev_alloc()
619 fbn->rcq_size = FBNIC_RCQ_SIZE_DEFAULT; in fbnic_netdev_alloc()
625 fbnic_reset_queues(fbn, default_queues, default_queues); in fbnic_netdev_alloc()
627 fbnic_reset_indir_tbl(fbn); in fbnic_netdev_alloc()
628 fbnic_rss_key_fill(fbn->rss_key); in fbnic_netdev_alloc()
629 fbnic_rss_init_en_mask(fbn); in fbnic_netdev_alloc()
649 fbn->fec = FBNIC_FEC_AUTO | FBNIC_FEC_RS; in fbnic_netdev_alloc()
650 fbn->link_mode = FBNIC_LINK_AUTO | FBNIC_LINK_50R2; in fbnic_netdev_alloc()
685 struct fbnic_net *fbn = netdev_priv(netdev); in fbnic_netdev_register() local
686 struct fbnic_dev *fbd = fbn->fbd; in fbnic_netdev_register()