drivers: copy PCI device info to ethdev data
Use new function rte_eth_copy_pci_info. Copy device info for the following pdevs: bnx2x cxgbe e1000 enic fm10k i40e ixgbe mlx4 mlx5 virtio vmxnet3 Signed-off-by: Bernard Iremonger <bernard.iremonger@intel.com> Acked-by: Bruce Richardson <bruce.richardson@intel.com>
This commit is contained in:
parent
494adb7f63
commit
eeefe73f0a
@ -419,6 +419,9 @@ bnx2x_common_dev_init(struct rte_eth_dev *eth_dev, int is_vf)
|
||||
|
||||
eth_dev->dev_ops = is_vf ? &bnx2xvf_eth_dev_ops : &bnx2x_eth_dev_ops;
|
||||
pci_dev = eth_dev->pci_dev;
|
||||
|
||||
rte_eth_copy_pci_info(eth_dev, pci_dev);
|
||||
|
||||
sc = eth_dev->data->dev_private;
|
||||
sc->pcie_bus = pci_dev->addr.bus;
|
||||
sc->pcie_device = pci_dev->addr.devid;
|
||||
|
@ -801,6 +801,9 @@ static int eth_cxgbe_dev_init(struct rte_eth_dev *eth_dev)
|
||||
return 0;
|
||||
|
||||
pci_dev = eth_dev->pci_dev;
|
||||
|
||||
rte_eth_copy_pci_info(eth_dev, pci_dev);
|
||||
|
||||
snprintf(name, sizeof(name), "cxgbeadapter%d", eth_dev->data->port_id);
|
||||
adapter = rte_zmalloc(name, sizeof(*adapter), 0);
|
||||
if (!adapter)
|
||||
|
@ -243,6 +243,9 @@ eth_em_dev_init(struct rte_eth_dev *eth_dev)
|
||||
E1000_DEV_PRIVATE_TO_VFTA(eth_dev->data->dev_private);
|
||||
|
||||
pci_dev = eth_dev->pci_dev;
|
||||
|
||||
rte_eth_copy_pci_info(eth_dev, pci_dev);
|
||||
|
||||
eth_dev->dev_ops = ð_em_ops;
|
||||
eth_dev->rx_pkt_burst = (eth_rx_burst_t)ð_em_recv_pkts;
|
||||
eth_dev->tx_pkt_burst = (eth_tx_burst_t)ð_em_xmit_pkts;
|
||||
|
@ -637,6 +637,9 @@ eth_igb_dev_init(struct rte_eth_dev *eth_dev)
|
||||
uint32_t ctrl_ext;
|
||||
|
||||
pci_dev = eth_dev->pci_dev;
|
||||
|
||||
rte_eth_copy_pci_info(eth_dev, pci_dev);
|
||||
|
||||
eth_dev->dev_ops = ð_igb_ops;
|
||||
eth_dev->rx_pkt_burst = ð_igb_recv_pkts;
|
||||
eth_dev->tx_pkt_burst = ð_igb_xmit_pkts;
|
||||
@ -845,6 +848,8 @@ eth_igbvf_dev_init(struct rte_eth_dev *eth_dev)
|
||||
|
||||
pci_dev = eth_dev->pci_dev;
|
||||
|
||||
rte_eth_copy_pci_info(eth_dev, pci_dev);
|
||||
|
||||
hw->device_id = pci_dev->id.device_id;
|
||||
hw->vendor_id = pci_dev->id.vendor_id;
|
||||
hw->hw_addr = (void *)pci_dev->mem_resource[0].addr;
|
||||
|
@ -603,6 +603,7 @@ static int eth_enicpmd_dev_init(struct rte_eth_dev *eth_dev)
|
||||
eth_dev->tx_pkt_burst = &enicpmd_xmit_pkts;
|
||||
|
||||
pdev = eth_dev->pci_dev;
|
||||
rte_eth_copy_pci_info(eth_dev, pdev);
|
||||
enic->pdev = pdev;
|
||||
addr = &pdev->addr;
|
||||
|
||||
|
@ -2510,6 +2510,8 @@ eth_fm10k_dev_init(struct rte_eth_dev *dev)
|
||||
if (rte_eal_process_type() != RTE_PROC_PRIMARY)
|
||||
return 0;
|
||||
|
||||
rte_eth_copy_pci_info(dev, dev->pci_dev);
|
||||
|
||||
macvlan = FM10K_DEV_PRIVATE_TO_MACVLAN(dev->data->dev_private);
|
||||
memset(macvlan, 0, sizeof(*macvlan));
|
||||
/* Vendor and Device ID need to be set before init of shared code */
|
||||
|
@ -570,6 +570,9 @@ eth_i40e_dev_init(struct rte_eth_dev *dev)
|
||||
return 0;
|
||||
}
|
||||
pci_dev = dev->pci_dev;
|
||||
|
||||
rte_eth_copy_pci_info(dev, pci_dev);
|
||||
|
||||
pf->adapter = I40E_DEV_PRIVATE_TO_ADAPTER(dev->data->dev_private);
|
||||
pf->adapter->eth_dev = dev;
|
||||
pf->dev_data = dev->data;
|
||||
|
@ -1288,6 +1288,8 @@ i40evf_dev_init(struct rte_eth_dev *eth_dev)
|
||||
return 0;
|
||||
}
|
||||
|
||||
rte_eth_copy_pci_info(eth_dev, eth_dev->pci_dev);
|
||||
|
||||
hw->vendor_id = eth_dev->pci_dev->id.vendor_id;
|
||||
hw->device_id = eth_dev->pci_dev->id.device_id;
|
||||
hw->subsystem_vendor_id = eth_dev->pci_dev->id.subsystem_vendor_id;
|
||||
|
@ -983,6 +983,8 @@ eth_ixgbe_dev_init(struct rte_eth_dev *eth_dev)
|
||||
}
|
||||
pci_dev = eth_dev->pci_dev;
|
||||
|
||||
rte_eth_copy_pci_info(eth_dev, pci_dev);
|
||||
|
||||
/* Vendor and Device ID need to be set before init of shared code */
|
||||
hw->device_id = pci_dev->id.device_id;
|
||||
hw->vendor_id = pci_dev->id.vendor_id;
|
||||
@ -1251,6 +1253,8 @@ eth_ixgbevf_dev_init(struct rte_eth_dev *eth_dev)
|
||||
|
||||
pci_dev = eth_dev->pci_dev;
|
||||
|
||||
rte_eth_copy_pci_info(eth_dev, pci_dev);
|
||||
|
||||
hw->device_id = pci_dev->id.device_id;
|
||||
hw->vendor_id = pci_dev->id.vendor_id;
|
||||
hw->hw_addr = (void *)pci_dev->mem_resource[0].addr;
|
||||
|
@ -5138,6 +5138,9 @@ mlx4_pci_devinit(struct rte_pci_driver *pci_drv, struct rte_pci_device *pci_dev)
|
||||
|
||||
eth_dev->data->dev_private = priv;
|
||||
eth_dev->pci_dev = pci_dev;
|
||||
|
||||
rte_eth_copy_pci_info(eth_dev, pci_dev);
|
||||
|
||||
eth_dev->driver = &mlx4_driver;
|
||||
eth_dev->data->rx_mbuf_alloc_failed = 0;
|
||||
eth_dev->data->mtu = ETHER_MTU;
|
||||
|
@ -450,6 +450,9 @@ mlx5_pci_devinit(struct rte_pci_driver *pci_drv, struct rte_pci_device *pci_dev)
|
||||
|
||||
eth_dev->data->dev_private = priv;
|
||||
eth_dev->pci_dev = pci_dev;
|
||||
|
||||
rte_eth_copy_pci_info(eth_dev, pci_dev);
|
||||
|
||||
eth_dev->driver = &mlx5_driver;
|
||||
eth_dev->data->rx_mbuf_alloc_failed = 0;
|
||||
eth_dev->data->mtu = ETHER_MTU;
|
||||
|
@ -1288,6 +1288,9 @@ eth_virtio_dev_init(struct rte_eth_dev *eth_dev)
|
||||
}
|
||||
|
||||
pci_dev = eth_dev->pci_dev;
|
||||
|
||||
rte_eth_copy_pci_info(eth_dev, pci_dev);
|
||||
|
||||
if (virtio_resource_init(pci_dev) < 0)
|
||||
return -1;
|
||||
|
||||
|
@ -235,6 +235,8 @@ eth_vmxnet3_dev_init(struct rte_eth_dev *eth_dev)
|
||||
if (rte_eal_process_type() != RTE_PROC_PRIMARY)
|
||||
return 0;
|
||||
|
||||
rte_eth_copy_pci_info(eth_dev, pci_dev);
|
||||
|
||||
/* Vendor and Device ID need to be set before init of shared code */
|
||||
hw->device_id = pci_dev->id.device_id;
|
||||
hw->vendor_id = pci_dev->id.vendor_id;
|
||||
|
Loading…
Reference in New Issue
Block a user