| /linux/drivers/net/ethernet/wangxun/libwx/ |
| H A D | wx_ptp.c | 34 static u64 wx_ptp_timecounter_cyc2time(struct wx *wx, u64 timestamp) in wx_ptp_timecounter_cyc2time() argument 40 seq = read_seqbegin(&wx->hw_tc_lock); in wx_ptp_timecounter_cyc2time() 41 ns = timecounter_cyc2time(&wx->hw_tc, timestamp); in wx_ptp_timecounter_cyc2time() 42 } while (read_seqretry(&wx->hw_tc_lock, seq)); in wx_ptp_timecounter_cyc2time() 47 static u64 wx_ptp_readtime(struct wx *wx, struct ptp_system_timestamp *sts) in wx_ptp_readtime() argument 51 timeh1 = rd32ptp(wx, WX_TSC_1588_SYSTIMH); in wx_ptp_readtime() 53 timel = rd32ptp(wx, WX_TSC_1588_SYSTIML); in wx_ptp_readtime() 55 timeh2 = rd32ptp(wx, WX_TSC_1588_SYSTIMH); in wx_ptp_readtime() 59 timel = rd32ptp(wx, WX_TSC_1588_SYSTIML); in wx_ptp_readtime() 67 struct wx *wx = container_of(ptp, struct wx, ptp_caps); in wx_ptp_adjfine() local [all …]
|
| H A D | wx_hw.c | 19 struct wx *wx = bus->priv; in wx_phy_read_reg_mdi() local 27 wr32(wx, WX_MSCA, command); in wx_phy_read_reg_mdi() 30 if (wx->mac.type == wx_mac_em) in wx_phy_read_reg_mdi() 32 wr32(wx, WX_MSCC, command); in wx_phy_read_reg_mdi() 36 100000, false, wx, WX_MSCC); in wx_phy_read_reg_mdi() 38 wx_err(wx, "Mdio read c22 command did not complete.\n"); in wx_phy_read_reg_mdi() 42 return (u16)rd32(wx, WX_MSCC); in wx_phy_read_reg_mdi() 48 struct wx *wx = bus->priv; in wx_phy_write_reg_mdi() local 56 wr32(wx, WX_MSCA, command); in wx_phy_write_reg_mdi() 59 if (wx->mac.type == wx_mac_em) in wx_phy_write_reg_mdi() [all …]
|
| H A D | wx_vf_common.c | 17 struct wx *wx = pci_get_drvdata(pdev); in wxvf_suspend() local 19 netif_device_detach(wx->netdev); in wxvf_suspend() 20 wx_clear_interrupt_scheme(wx); in wxvf_suspend() 36 struct wx *wx = pci_get_drvdata(pdev); in wxvf_resume() local 39 wx_init_interrupt_scheme(wx); in wxvf_resume() 40 netif_device_attach(wx->netdev); in wxvf_resume() 48 struct wx *wx = pci_get_drvdata(pdev); in wxvf_remove() local 51 cancel_work_sync(&wx->service_task); in wxvf_remove() 52 netdev = wx->netdev; in wxvf_remove() 54 kfree(wx->vfinfo); in wxvf_remove() [all …]
|
| H A D | wx_sriov.c | 15 struct wx *wx = pci_get_drvdata(pdev); in wx_vf_configuration() local 19 eth_zero_addr(wx->vfinfo[vfn].vf_mac_addr); in wx_vf_configuration() 22 static int wx_alloc_vf_macvlans(struct wx *wx, u8 num_vfs) in wx_alloc_vf_macvlans() argument 28 INIT_LIST_HEAD(&wx->vf_mvs.mvlist); in wx_alloc_vf_macvlans() 30 num_vf_macvlans = wx->mac.num_rar_entries - in wx_alloc_vf_macvlans() 42 list_add(&mv_list[i].mvlist, &wx->vf_mvs.mvlist); in wx_alloc_vf_macvlans() 44 wx->mv_list = mv_list; in wx_alloc_vf_macvlans() 49 static void wx_sriov_clear_data(struct wx *wx) in wx_sriov_clear_data() argument 52 wx->num_vfs = 0; in wx_sriov_clear_data() 55 kfree(wx->vfinfo); in wx_sriov_clear_data() [all …]
|
| H A D | wx_hw.h | 14 void wx_intr_enable(struct wx *wx, u64 qmask); 15 void wx_irq_disable(struct wx *wx); 16 int wx_check_flash_load(struct wx *wx, u32 check_bit); 17 void wx_control_hw(struct wx *wx, bool drv); 18 int wx_mng_present(struct wx *wx); 19 int wx_host_interface_command(struct wx *wx, u32 *buffer, 21 int wx_set_pps(struct wx *wx, bool enable, u64 nsec, u64 cycles); 22 int wx_read_ee_hostif(struct wx *wx, u16 offset, u16 *data); 23 int wx_read_ee_hostif_buffer(struct wx *wx, 25 void wx_init_eeprom_params(struct wx *wx); [all …]
|
| H A D | wx_mbx.c | 15 static int wx_obtain_mbx_lock_pf(struct wx *wx, u16 vf) in wx_obtain_mbx_lock_pf() argument 22 wr32(wx, WX_PXMAILBOX(vf), WX_PXMAILBOX_PFU); in wx_obtain_mbx_lock_pf() 25 mailbox = rd32(wx, WX_PXMAILBOX(vf)); in wx_obtain_mbx_lock_pf() 31 wx_err(wx, "Failed to obtain mailbox lock for PF%d", vf); in wx_obtain_mbx_lock_pf() 36 static int wx_check_for_bit_pf(struct wx *wx, u32 mask, int index) in wx_check_for_bit_pf() argument 38 u32 mbvficr = rd32(wx, WX_MBVFICR(index)); in wx_check_for_bit_pf() 42 wr32(wx, WX_MBVFICR(index), mask); in wx_check_for_bit_pf() 54 int wx_check_for_ack_pf(struct wx *wx, u16 vf) in wx_check_for_ack_pf() argument 58 return wx_check_for_bit_pf(wx, in wx_check_for_ack_pf() 71 int wx_check_for_msg_pf(struct wx *wx, u16 vf) in wx_check_for_msg_pf() argument [all …]
|
| H A D | wx_vf.c | 12 static void wx_virt_clr_reg(struct wx *wx) in wx_virt_clr_reg() argument 22 wr32m(wx, WX_VXRXDCTL(i), in wx_virt_clr_reg() 26 rd32(wx, WX_VXSTATUS); in wx_virt_clr_reg() 35 void wx_init_hw_vf(struct wx *wx) in wx_init_hw_vf() argument 37 wx_get_mac_addr_vf(wx, wx->mac.addr); in wx_init_hw_vf() 41 static int wx_mbx_write_and_read_reply(struct wx *wx, u32 *req_buf, in wx_mbx_write_and_read_reply() argument 46 ret = wx_write_posted_mbx(wx, req_buf, size); in wx_mbx_write_and_read_reply() 50 return wx_read_posted_mbx(wx, resp_buf, size); in wx_mbx_write_and_read_reply() 62 int wx_reset_hw_vf(struct wx *wx) in wx_reset_hw_vf() argument 64 struct wx_mbx_info *mbx = &wx->mbx; in wx_reset_hw_vf() [all …]
|
| H A D | wx_ethtool.c | 21 .sizeof_stat = sizeof(((struct wx *)0)->m), \ 22 .stat_offset = offsetof(struct wx, m) } 77 struct wx *wx = netdev_priv(netdev); in wx_get_sset_count() local 82 if (test_bit(WX_FLAG_FDIR_CAPABLE, wx->flags)) in wx_get_sset_count() 84 if (test_bit(WX_FLAG_RSC_CAPABLE, wx->flags)) in wx_get_sset_count() 95 struct wx *wx = netdev_priv(netdev); in wx_get_strings() local 103 if (test_bit(WX_FLAG_FDIR_CAPABLE, wx->flags)) { in wx_get_strings() 107 if (test_bit(WX_FLAG_RSC_CAPABLE, wx->flags)) { in wx_get_strings() 127 struct wx *wx = netdev_priv(netdev); in wx_get_ethtool_stats() local 133 wx_update_stats(wx); in wx_get_ethtool_stats() [all …]
|
| H A D | wx_vf_lib.c | 15 struct wx *wx = q_vector->wx; in wx_write_eitr_vf() local 26 wr32(wx, WX_VXITR(v_idx), itr_reg); in wx_write_eitr_vf() 29 static void wx_set_ivar_vf(struct wx *wx, s8 direction, u8 queue, in wx_set_ivar_vf() argument 37 ivar = rd32(wx, WX_VXIVAR_MISC); in wx_set_ivar_vf() 40 wr32(wx, WX_VXIVAR_MISC, ivar); in wx_set_ivar_vf() 45 ivar = rd32(wx, WX_VXIVAR(queue >> 1)); in wx_set_ivar_vf() 48 wr32(wx, WX_VXIVAR(queue >> 1), ivar); in wx_set_ivar_vf() 52 void wx_configure_msix_vf(struct wx *wx) in wx_configure_msix_vf() argument 56 wx->eims_enable_mask = 0; in wx_configure_msix_vf() 57 for (v_idx = 0; v_idx < wx->num_q_vectors; v_idx++) { in wx_configure_msix_vf() [all …]
|
| H A D | wx_lib.h | 15 void wx_napi_enable_all(struct wx *wx); 16 void wx_napi_disable_all(struct wx *wx); 17 void wx_reset_interrupt_capability(struct wx *wx); 18 void wx_clear_interrupt_scheme(struct wx *wx); 19 int wx_init_interrupt_scheme(struct wx *wx); 21 void wx_free_irq(struct wx *wx); 22 int wx_setup_isb_resources(struct wx *wx); 23 void wx_free_isb_resources(struct wx *wx); 24 u32 wx_misc_isb(struct wx *wx, enum wx_isb_idx idx); 26 void wx_configure_vectors(struct wx *wx); [all …]
|
| H A D | wx_lib.c | 399 struct wx *wx = rx_ring->q_vector->wx; in wx_is_non_eop() local 409 if (test_bit(WX_FLAG_RSC_ENABLED, wx->flags)) { in wx_is_non_eop() 590 ethertype = ring->q_vector->wx->tpid[idx]; in wx_rx_vlan() 637 struct wx *wx = netdev_priv(rx_ring->netdev); in wx_process_skb_fields() local 639 if (test_bit(WX_FLAG_RSC_CAPABLE, wx->flags)) in wx_process_skb_fields() 645 if (unlikely(test_bit(WX_FLAG_RX_HWTSTAMP_ENABLED, wx->flags)) && in wx_process_skb_fields() 647 wx_ptp_rx_hwtstamp(rx_ring->q_vector->wx, skb); in wx_process_skb_fields() 754 unsigned int budget = q_vector->wx->tx_work_limit; in wx_clean_tx_irq() 756 struct wx *wx = netdev_priv(tx_ring->netdev); in wx_clean_tx_irq() local 803 if (unlikely(test_bit(WX_STATE_PTP_TX_IN_PROGRESS, wx->state)) && in wx_clean_tx_irq() [all …]
|
| H A D | wx_mbx.h | 85 int wx_write_mbx_pf(struct wx *wx, u32 *msg, u16 size, u16 vf); 86 int wx_read_mbx_pf(struct wx *wx, u32 *msg, u16 size, u16 vf); 87 int wx_check_for_rst_pf(struct wx *wx, u16 mbx_id); 88 int wx_check_for_msg_pf(struct wx *wx, u16 mbx_id); 89 int wx_check_for_ack_pf(struct wx *wx, u16 mbx_id); 91 int wx_read_posted_mbx(struct wx *wx, u32 *msg, u16 size); 92 int wx_write_posted_mbx(struct wx *wx, u32 *msg, u16 size); 93 int wx_check_for_rst_vf(struct wx *wx); 94 int wx_check_for_msg_vf(struct wx *wx); 95 int wx_read_mbx_vf(struct wx *wx, u32 *msg, u16 size); [all …]
|
| H A D | wx_vf.h | 112 void wx_init_hw_vf(struct wx *wx); 113 int wx_reset_hw_vf(struct wx *wx); 114 void wx_get_mac_addr_vf(struct wx *wx, u8 *mac_addr); 115 void wx_stop_adapter_vf(struct wx *wx); 116 int wx_get_fw_version_vf(struct wx *wx); 117 int wx_set_rar_vf(struct wx *wx, u32 index, u8 *addr, u32 enable_addr); 118 int wx_update_mc_addr_list_vf(struct wx *wx, struct net_device *netdev); 119 int wx_set_uc_addr_vf(struct wx *wx, u32 index, u8 *addr); 120 int wx_rlpml_set_vf(struct wx *wx, u16 max_size); 121 int wx_negotiate_api_version(struct wx *wx, int api); [all …]
|
| /linux/drivers/net/ethernet/wangxun/ngbe/ |
| H A D | ngbe_main.c | 53 static void ngbe_init_type_code(struct wx *wx) in ngbe_init_type_code() argument 58 wx->mac.type = wx_mac_em; in ngbe_init_type_code() 59 type_mask = (u16)(wx->subsystem_device_id & NGBE_OEM_MASK); in ngbe_init_type_code() 60 ncsi_mask = wx->subsystem_device_id & NGBE_NCSI_MASK; in ngbe_init_type_code() 61 wol_mask = wx->subsystem_device_id & NGBE_WOL_MASK; in ngbe_init_type_code() 63 val = rd32(wx, WX_CFG_PORT_ST); in ngbe_init_type_code() 64 wx->mac_type = (val & BIT(7)) >> 7 ? in ngbe_init_type_code() 68 wx->wol_hw_supported = (wol_mask == NGBE_WOL_SUP) ? 1 : 0; in ngbe_init_type_code() 69 wx->ncsi_enabled = (ncsi_mask == NGBE_NCSI_MASK || in ngbe_init_type_code() 77 wx->gpio_ctrl = 1; in ngbe_init_type_code() [all …]
|
| H A D | ngbe_mdio.c | 18 struct wx *wx = bus->priv; in ngbe_phy_read_reg_internal() local 22 return (u16)rd32(wx, NGBE_PHY_CONFIG(regnum)); in ngbe_phy_read_reg_internal() 27 struct wx *wx = bus->priv; in ngbe_phy_write_reg_internal() local 30 wr32(wx, NGBE_PHY_CONFIG(regnum), value); in ngbe_phy_write_reg_internal() 36 struct wx *wx = bus->priv; in ngbe_phy_read_reg_c22() local 39 if (wx->mac_type == em_mac_type_mdi) in ngbe_phy_read_reg_c22() 50 struct wx *wx = bus->priv; in ngbe_phy_write_reg_c22() local 53 if (wx->mac_type == em_mac_type_mdi) in ngbe_phy_write_reg_c22() 69 struct wx *wx = phylink_to_wx(config); in ngbe_mac_link_down() local 71 wx->speed = SPEED_UNKNOWN; in ngbe_mac_link_down() [all …]
|
| H A D | ngbe_hw.c | 13 int ngbe_eeprom_chksum_hostif(struct wx *wx) in ngbe_eeprom_chksum_hostif() argument 28 status = wx_host_interface_command(wx, (u32 *)&buffer, sizeof(buffer), in ngbe_eeprom_chksum_hostif() 33 tmp = rd32a(wx, WX_MNG_MBOX, 1); in ngbe_eeprom_chksum_hostif() 39 static int ngbe_reset_misc(struct wx *wx) in ngbe_reset_misc() argument 41 wx_reset_misc(wx); in ngbe_reset_misc() 42 if (wx->gpio_ctrl) { in ngbe_reset_misc() 44 wr32(wx, NGBE_GPIO_DDR, 0x1); in ngbe_reset_misc() 45 ngbe_sfp_modules_txrx_powerctl(wx, false); in ngbe_reset_misc() 50 void ngbe_sfp_modules_txrx_powerctl(struct wx *wx, bool swi) in ngbe_sfp_modules_txrx_powerctl() argument 53 wr32(wx, NGBE_GPIO_DR, swi ? 0 : NGBE_GPIO_DR_0); in ngbe_sfp_modules_txrx_powerctl() [all …]
|
| H A D | ngbe_ethtool.c | 18 struct wx *wx = netdev_priv(netdev); in ngbe_get_wol() local 20 if (!wx->wol_hw_supported) in ngbe_get_wol() 24 if (wx->wol & WX_PSR_WKUP_CTL_MAG) in ngbe_get_wol() 31 struct wx *wx = netdev_priv(netdev); in ngbe_set_wol() local 32 struct pci_dev *pdev = wx->pdev; in ngbe_set_wol() 34 if (!wx->wol_hw_supported) in ngbe_set_wol() 37 wx->wol = 0; in ngbe_set_wol() 39 wx->wol = WX_PSR_WKUP_CTL_MAG; in ngbe_set_wol() 40 netdev->ethtool->wol_enabled = !!(wx->wol); in ngbe_set_wol() 41 wr32(wx, WX_PSR_WKUP_CTL, wx->wol); in ngbe_set_wol() [all …]
|
| /linux/drivers/net/ethernet/wangxun/txgbe/ |
| H A D | txgbe_main.c | 54 static void txgbe_check_minimum_link(struct wx *wx) in txgbe_check_minimum_link() argument 58 pdev = wx->pdev; in txgbe_check_minimum_link() 71 static int txgbe_enumerate_functions(struct wx *wx) in txgbe_enumerate_functions() argument 73 struct pci_dev *entry, *pdev = wx->pdev; in txgbe_enumerate_functions() 92 static void txgbe_module_detection_subtask(struct wx *wx) in txgbe_module_detection_subtask() argument 96 if (!test_bit(WX_FLAG_NEED_MODULE_RESET, wx->flags)) in txgbe_module_detection_subtask() 102 err = txgbe_identify_module(wx); in txgbe_module_detection_subtask() 106 clear_bit(WX_FLAG_NEED_MODULE_RESET, wx->flags); in txgbe_module_detection_subtask() 109 static void txgbe_link_config_subtask(struct wx *wx) in txgbe_link_config_subtask() argument 113 if (!test_bit(WX_FLAG_NEED_LINK_CONFIG, wx->flags)) in txgbe_link_config_subtask() [all …]
|
| H A D | txgbe_hw.c | 23 int txgbe_disable_sec_tx_path(struct wx *wx) in txgbe_disable_sec_tx_path() argument 27 wr32m(wx, WX_TSC_CTL, WX_TSC_CTL_TX_DIS, WX_TSC_CTL_TX_DIS); in txgbe_disable_sec_tx_path() 29 1000, 20000, false, wx, WX_TSC_ST); in txgbe_disable_sec_tx_path() 38 void txgbe_enable_sec_tx_path(struct wx *wx) in txgbe_enable_sec_tx_path() argument 40 wr32m(wx, WX_TSC_CTL, WX_TSC_CTL_TX_DIS, 0); in txgbe_enable_sec_tx_path() 41 WX_WRITE_FLUSH(wx); in txgbe_enable_sec_tx_path() 51 static void txgbe_init_thermal_sensor_thresh(struct wx *wx) in txgbe_init_thermal_sensor_thresh() argument 53 struct wx_thermal_sensor_data *data = &wx->mac.sensor; in txgbe_init_thermal_sensor_thresh() 58 if (wx->bus.func) in txgbe_init_thermal_sensor_thresh() 61 wr32(wx, TXGBE_TS_CTL, TXGBE_TS_CTL_EVAL_MD); in txgbe_init_thermal_sensor_thresh() [all …]
|
| H A D | txgbe_phy.c | 30 struct pci_dev *pdev = txgbe->wx->pdev; in txgbe_swnodes_register() 90 struct wx *wx = bus->priv; in txgbe_pcs_read() local 99 wr32(wx, TXGBE_XPCS_IDA_ADDR, offset); in txgbe_pcs_read() 102 val = rd32(wx, TXGBE_XPCS_IDA_DATA); in txgbe_pcs_read() 109 struct wx *wx = bus->priv; in txgbe_pcs_write() local 118 wr32(wx, TXGBE_XPCS_IDA_ADDR, offset); in txgbe_pcs_write() 121 wr32(wx, TXGBE_XPCS_IDA_DATA, val); in txgbe_pcs_write() 131 struct wx *wx; in txgbe_mdio_pcs_init() local 134 wx = txgbe->wx; in txgbe_mdio_pcs_init() 135 pdev = wx->pdev; in txgbe_mdio_pcs_init() [all …]
|
| H A D | txgbe_aml.c | 18 void txgbe_gpio_init_aml(struct wx *wx) in txgbe_gpio_init_aml() argument 22 if (wx->mac.type == wx_mac_aml40) in txgbe_gpio_init_aml() 27 wr32(wx, WX_GPIO_INTTYPE_LEVEL, mod_rst); in txgbe_gpio_init_aml() 28 wr32(wx, WX_GPIO_INTEN, mod_rst); in txgbe_gpio_init_aml() 30 status = rd32(wx, WX_GPIO_INTSTATUS); in txgbe_gpio_init_aml() 33 wr32(wx, WX_GPIO_EOI, BIT(i)); in txgbe_gpio_init_aml() 40 struct wx *wx = txgbe->wx; in txgbe_gpio_irq_handler_aml() local 43 if (wx->mac.type == wx_mac_aml40) in txgbe_gpio_irq_handler_aml() 48 wr32(wx, WX_GPIO_INTMASK, 0xFF); in txgbe_gpio_irq_handler_aml() 49 status = rd32(wx, WX_GPIO_INTSTATUS); in txgbe_gpio_irq_handler_aml() [all …]
|
| H A D | txgbe_fdir.c | 158 static int txgbe_fdir_check_cmd_complete(struct wx *wx) in txgbe_fdir_check_cmd_complete() argument 165 wx, TXGBE_RDB_FDIR_CMD); in txgbe_fdir_check_cmd_complete() 177 static int txgbe_fdir_add_signature_filter(struct wx *wx, in txgbe_fdir_add_signature_filter() argument 200 wx_err(wx, "Error on flow type input\n"); in txgbe_fdir_add_signature_filter() 213 wr32(wx, TXGBE_RDB_FDIR_HASH, fdirhashcmd); in txgbe_fdir_add_signature_filter() 214 wr32(wx, TXGBE_RDB_FDIR_CMD, fdircmd); in txgbe_fdir_add_signature_filter() 216 wx_dbg(wx, "Tx Queue=%x hash=%x\n", queue, (u32)fdirhashcmd); in txgbe_fdir_add_signature_filter() 218 err = txgbe_fdir_check_cmd_complete(wx); in txgbe_fdir_add_signature_filter() 220 wx_err(wx, "Flow Director command did not complete!\n"); in txgbe_fdir_add_signature_filter() 303 txgbe_fdir_add_signature_filter(q_vector->wx, input, common, in txgbe_atr() [all …]
|
| H A D | txgbe_irq.c | 22 void txgbe_irq_enable(struct wx *wx, bool queues) in txgbe_irq_enable() argument 26 if (wx->mac.type != wx_mac_sp) { in txgbe_irq_enable() 28 txgbe_gpio_init_aml(wx); in txgbe_irq_enable() 31 wr32(wx, WX_PX_MISC_IEN, misc_ien); in txgbe_irq_enable() 34 wx_intr_enable(wx, TXGBE_INTR_MISC(wx)); in txgbe_irq_enable() 36 wx_intr_enable(wx, TXGBE_INTR_QALL(wx)); in txgbe_irq_enable() 45 int txgbe_request_queue_irqs(struct wx *wx) in txgbe_request_queue_irqs() argument 47 struct net_device *netdev = wx->netdev; in txgbe_request_queue_irqs() 50 if (!wx->pdev->msix_enabled) in txgbe_request_queue_irqs() 53 for (vector = 0; vector < wx->num_q_vectors; vector++) { in txgbe_request_queue_irqs() [all …]
|
| /linux/drivers/net/ethernet/wangxun/txgbevf/ |
| H A D | txgbevf_main.c | 49 static void txgbevf_set_num_queues(struct wx *wx) in txgbevf_set_num_queues() argument 56 wx->num_rx_queues = 1; in txgbevf_set_num_queues() 57 wx->num_tx_queues = 1; in txgbevf_set_num_queues() 59 spin_lock_bh(&wx->mbx.mbx_lock); in txgbevf_set_num_queues() 61 ret = wx_get_queues_vf(wx, &num_tcs, &def_q); in txgbevf_set_num_queues() 62 spin_unlock_bh(&wx->mbx.mbx_lock); in txgbevf_set_num_queues() 69 wx->num_rx_queues = num_tcs; in txgbevf_set_num_queues() 72 queue = min_t(u16, wx->mac.max_rx_queues, wx->mac.max_tx_queues); in txgbevf_set_num_queues() 75 if (wx->vfinfo->vf_api >= wx_mbox_api_13) { in txgbevf_set_num_queues() 76 wx->num_rx_queues = rss; in txgbevf_set_num_queues() [all …]
|
| /linux/drivers/net/ethernet/wangxun/ngbevf/ |
| H A D | ngbevf_main.c | 53 static void ngbevf_set_num_queues(struct wx *wx) in ngbevf_set_num_queues() argument 56 wx->num_rx_queues = 1; in ngbevf_set_num_queues() 57 wx->num_tx_queues = 1; in ngbevf_set_num_queues() 60 static int ngbevf_sw_init(struct wx *wx) in ngbevf_sw_init() argument 62 struct net_device *netdev = wx->netdev; in ngbevf_sw_init() 63 struct pci_dev *pdev = wx->pdev; in ngbevf_sw_init() 67 err = wx_sw_init(wx); in ngbevf_sw_init() 72 err = wx_init_mbx_params_vf(wx); in ngbevf_sw_init() 77 wx->mac.type = wx_mac_em; in ngbevf_sw_init() 78 wx->mac.max_msix_vectors = NGBEVF_MAX_MSIX_VECTORS; in ngbevf_sw_init() [all …]
|