| 129 | } |
| 130 | |
| 131 | void txgbe_pf_host_uninit(struct rte_eth_dev *eth_dev) |
| 132 | { |
| 133 | struct txgbe_vf_info **vfinfo; |
| 134 | uint16_t vf_num; |
| 135 | int ret; |
| 136 | |
| 137 | PMD_INIT_FUNC_TRACE(); |
| 138 | |
| 139 | RTE_ETH_DEV_SRIOV(eth_dev).active = 0; |
| 140 | RTE_ETH_DEV_SRIOV(eth_dev).nb_q_per_pool = 0; |
| 141 | RTE_ETH_DEV_SRIOV(eth_dev).def_vmdq_idx = 0; |
| 142 | RTE_ETH_DEV_SRIOV(eth_dev).def_pool_q_idx = 0; |
| 143 | |
| 144 | vf_num = dev_num_vf(eth_dev); |
| 145 | if (vf_num == 0) |
| 146 | return; |
| 147 | |
| 148 | vfinfo = TXGBE_DEV_VFDATA(eth_dev); |
| 149 | if (*vfinfo == NULL) |
| 150 | return; |
| 151 | |
| 152 | ret = rte_eth_switch_domain_free((*vfinfo)->switch_domain_id); |
| 153 | if (ret) |
| 154 | PMD_INIT_LOG(WARNING, "failed to free switch domain: %d", ret); |
| 155 | |
| 156 | rte_free(*vfinfo); |
| 157 | *vfinfo = NULL; |
| 158 | } |
| 159 | |
| 160 | static void |
| 161 | txgbe_add_tx_flow_control_drop_filter(struct rte_eth_dev *eth_dev) |
no test coverage detected