Lines Matching refs:nn
29 struct nfp_net *nn; member
61 static void nfp_netvf_get_mac_addr(struct nfp_net *nn) in nfp_netvf_get_mac_addr() argument
65 put_unaligned_be32(nn_readl(nn, NFP_NET_CFG_MACADDR + 0), &mac_addr[0]); in nfp_netvf_get_mac_addr()
66 put_unaligned_be16(nn_readw(nn, NFP_NET_CFG_MACADDR + 6), &mac_addr[4]); in nfp_netvf_get_mac_addr()
69 eth_hw_addr_random(nn->dp.netdev); in nfp_netvf_get_mac_addr()
73 eth_hw_addr_set(nn->dp.netdev, mac_addr); in nfp_netvf_get_mac_addr()
74 ether_addr_copy(nn->dp.netdev->perm_addr, mac_addr); in nfp_netvf_get_mac_addr()
89 struct nfp_net *nn; in nfp_netvf_pci_probe() local
191 nn = nfp_net_alloc(pdev, dev_info, ctrl_bar, true, in nfp_netvf_pci_probe()
193 if (IS_ERR(nn)) { in nfp_netvf_pci_probe()
194 err = PTR_ERR(nn); in nfp_netvf_pci_probe()
197 vf->nn = nn; in nfp_netvf_pci_probe()
199 nn->dp.is_vf = 1; in nfp_netvf_pci_probe()
200 nn->stride_tx = stride; in nfp_netvf_pci_probe()
201 nn->stride_rx = stride; in nfp_netvf_pci_probe()
221 nn_err(nn, "Failed to map resource %d\n", tx_bar_no); in nfp_netvf_pci_probe()
227 nn->tx_bar = vf->q_bar + (tx_bar_off - bar_off); in nfp_netvf_pci_probe()
229 nn->rx_bar = vf->q_bar + (rx_bar_off - bar_off); in nfp_netvf_pci_probe()
235 nn->tx_bar = ioremap(map_addr, tx_bar_sz); in nfp_netvf_pci_probe()
236 if (!nn->tx_bar) { in nfp_netvf_pci_probe()
237 nn_err(nn, "Failed to map resource %d\n", tx_bar_no); in nfp_netvf_pci_probe()
244 nn->rx_bar = ioremap(map_addr, rx_bar_sz); in nfp_netvf_pci_probe()
245 if (!nn->rx_bar) { in nfp_netvf_pci_probe()
246 nn_err(nn, "Failed to map resource %d\n", rx_bar_no); in nfp_netvf_pci_probe()
252 nfp_netvf_get_mac_addr(nn); in nfp_netvf_pci_probe()
257 nn->dp.num_r_vecs); in nfp_netvf_pci_probe()
259 nn_warn(nn, "Unable to allocate MSI-X Vectors. Exiting\n"); in nfp_netvf_pci_probe()
263 nfp_net_irqs_assign(nn, vf->irq_entries, num_irqs); in nfp_netvf_pci_probe()
265 err = nfp_net_init(nn); in nfp_netvf_pci_probe()
269 nfp_net_info(nn); in nfp_netvf_pci_probe()
271 nfp_net_debugfs_vnic_add(nn, vf->ddir); in nfp_netvf_pci_probe()
279 iounmap(nn->rx_bar); in nfp_netvf_pci_probe()
282 iounmap(nn->tx_bar); in nfp_netvf_pci_probe()
286 nfp_net_free(nn); in nfp_netvf_pci_probe()
302 struct nfp_net *nn; in nfp_netvf_pci_remove() local
308 nn = vf->nn; in nfp_netvf_pci_remove()
313 nfp_net_debugfs_dir_clean(&nn->debugfs_dir); in nfp_netvf_pci_remove()
316 nfp_net_clean(nn); in nfp_netvf_pci_remove()
321 iounmap(nn->rx_bar); in nfp_netvf_pci_remove()
322 iounmap(nn->tx_bar); in nfp_netvf_pci_remove()
326 iounmap(nn->dp.ctrl_bar); in nfp_netvf_pci_remove()
328 nfp_net_free(nn); in nfp_netvf_pci_remove()