ethdev: remove ethdev driver

This removes the now unused struct eth_driver.

Signed-off-by: Jan Blunck <jblunck@infradead.org>
Acked-by: Stephen Hemminger <stephen@networkplumber.org>
This commit is contained in:
Jan Blunck 2017-04-11 17:44:46 +02:00 committed by Thomas Monjalon
parent 26e30bfce2
commit 9dca21fb80
6 changed files with 3 additions and 87 deletions

View File

@ -1165,7 +1165,6 @@ int cxgbe_probe(struct adapter *adapter)
allocate_mac:
pi->eth_dev->device = &adapter->pdev->device;
pi->eth_dev->data->dev_private = pi;
pi->eth_dev->driver = adapter->eth_dev->driver;
pi->eth_dev->dev_ops = adapter->eth_dev->dev_ops;
pi->eth_dev->tx_pkt_burst = adapter->eth_dev->tx_pkt_burst;
pi->eth_dev->rx_pkt_burst = adapter->eth_dev->rx_pkt_burst;

View File

@ -338,7 +338,6 @@ do_eth_dev_ring_create(const char *name,
data->mac_addrs = &internals->address;
eth_dev->data = data;
eth_dev->driver = NULL;
eth_dev->dev_ops = &ops;
data->dev_flags = RTE_ETH_DEV_DETACHABLE;
data->kdrv = RTE_KDRV_NONE;

View File

@ -1651,7 +1651,6 @@ struct rte_eth_dev {
eth_tx_burst_t tx_pkt_burst; /**< Pointer to PMD transmit function. */
eth_tx_prep_t tx_pkt_prepare; /**< Pointer to PMD transmit prepare function. */
struct rte_eth_dev_data *data; /**< Pointer to device data */
const struct eth_driver *driver;/**< Driver for this device */
const struct eth_dev_ops *dev_ops; /**< Functions exported by PMD */
struct rte_device *device; /**< Backing device */
struct rte_intr_handle *intr_handle; /**< Device interrupt handle */
@ -1854,78 +1853,6 @@ int rte_eth_dev_attach(const char *devargs, uint8_t *port_id);
*/
int rte_eth_dev_detach(uint8_t port_id, char *devname);
struct eth_driver;
/**
* @internal
* Initialization function of an Ethernet driver invoked for each matching
* Ethernet PCI device detected during the PCI probing phase.
*
* @param eth_dev
* The *eth_dev* pointer is the address of the *rte_eth_dev* structure
* associated with the matching device and which have been [automatically]
* allocated in the *rte_eth_devices* array.
* The *eth_dev* structure is supplied to the driver initialization function
* with the following fields already initialized:
*
* - *pci_dev*: Holds the pointers to the *rte_pci_device* structure which
* contains the generic PCI information of the matching device.
*
* - *driver*: Holds the pointer to the *eth_driver* structure.
*
* - *dev_private*: Holds a pointer to the device private data structure.
*
* - *mtu*: Contains the default Ethernet maximum frame length (1500).
*
* - *port_id*: Contains the port index of the device (actually the index
* of the *eth_dev* structure in the *rte_eth_devices* array).
*
* @return
* - 0: Success, the device is properly initialized by the driver.
* In particular, the driver MUST have set up the *dev_ops* pointer
* of the *eth_dev* structure.
* - <0: Error code of the device initialization failure.
*/
typedef int (*eth_dev_init_t)(struct rte_eth_dev *eth_dev);
/**
* @internal
* Finalization function of an Ethernet driver invoked for each matching
* Ethernet PCI device detected during the PCI closing phase.
*
* @param eth_dev
* The *eth_dev* pointer is the address of the *rte_eth_dev* structure
* associated with the matching device and which have been [automatically]
* allocated in the *rte_eth_devices* array.
* @return
* - 0: Success, the device is properly finalized by the driver.
* In particular, the driver MUST free the *dev_ops* pointer
* of the *eth_dev* structure.
* - <0: Error code of the device initialization failure.
*/
typedef int (*eth_dev_uninit_t)(struct rte_eth_dev *eth_dev);
/**
* @internal
* The structure associated with a PMD Ethernet driver.
*
* Each Ethernet driver acts as a PCI driver and is represented by a generic
* *eth_driver* structure that holds:
*
* - An *rte_pci_driver* structure (which must be the first field).
*
* - The *eth_dev_init* function invoked for each matching PCI device.
*
* - The *eth_dev_uninit* function invoked for each matching PCI device.
*
* - The size of the private data to allocate for each matching device.
*/
struct eth_driver {
struct rte_pci_driver pci_drv; /**< The PMD is also a PCI driver. */
eth_dev_init_t eth_dev_init; /**< Device init function. */
eth_dev_uninit_t eth_dev_uninit; /**< Device uninit function. */
unsigned int dev_private_size; /**< Size of device private data. */
};
/**
* Convert a numerical speed in Mbps to a bitmap flag that can be used in
* the bitmap link_speeds of the struct rte_eth_conf

View File

@ -84,7 +84,6 @@ rte_eth_dev_pci_allocate(struct rte_pci_device *dev, size_t private_data_size)
}
eth_dev->device = &dev->device;
eth_dev->driver = NULL;
eth_dev->intr_handle = &dev->intr_handle;
rte_eth_copy_pci_info(eth_dev, dev);
return eth_dev;
@ -102,7 +101,6 @@ rte_eth_dev_pci_release(struct rte_eth_dev *eth_dev)
eth_dev->data->dev_private = NULL;
eth_dev->device = NULL;
eth_dev->driver = NULL;
eth_dev->intr_handle = NULL;
}

View File

@ -73,7 +73,6 @@ rte_eth_vdev_allocate(struct rte_vdev_device *dev, size_t private_data_size)
}
eth_dev->device = &dev->device;
eth_dev->driver = NULL;
eth_dev->intr_handle = NULL;
eth_dev->data->kdrv = RTE_KDRV_NONE;

View File

@ -532,7 +532,6 @@ virtual_ethdev_create(const char *name, struct ether_addr *mac_addr,
{
struct rte_pci_device *pci_dev = NULL;
struct rte_eth_dev *eth_dev = NULL;
struct eth_driver *eth_drv = NULL;
struct rte_pci_driver *pci_drv = NULL;
struct rte_pci_id *id_table = NULL;
struct virtual_ethdev_private *dev_private = NULL;
@ -550,10 +549,6 @@ virtual_ethdev_create(const char *name, struct ether_addr *mac_addr,
if (pci_dev == NULL)
goto err;
eth_drv = rte_zmalloc_socket(name, sizeof(*eth_drv), 0, socket_id);
if (eth_drv == NULL)
goto err;
pci_drv = rte_zmalloc_socket(name, sizeof(*pci_drv), 0, socket_id);
if (pci_drv == NULL)
goto err;
@ -594,8 +589,8 @@ virtual_ethdev_create(const char *name, struct ether_addr *mac_addr,
pci_drv->drv_flags &= ~RTE_PCI_DRV_INTR_LSC;
eth_drv->pci_drv = (struct rte_pci_driver)(*pci_drv);
eth_dev->driver = eth_drv;
eth_dev->device = &pci_dev->device;
eth_dev->device->driver = &pci_drv->driver;
eth_dev->data->nb_rx_queues = (uint16_t)1;
eth_dev->data->nb_tx_queues = (uint16_t)1;
@ -622,7 +617,7 @@ virtual_ethdev_create(const char *name, struct ether_addr *mac_addr,
dev_private->dev_ops = virtual_ethdev_default_dev_ops;
eth_dev->dev_ops = &dev_private->dev_ops;
pci_dev->device.driver = &eth_drv->pci_drv.driver;
pci_dev->device.driver = &pci_drv->driver;
eth_dev->device = &pci_dev->device;
eth_dev->rx_pkt_burst = virtual_ethdev_rx_burst_success;
@ -633,7 +628,6 @@ virtual_ethdev_create(const char *name, struct ether_addr *mac_addr,
err:
rte_free(pci_dev);
rte_free(pci_drv);
rte_free(eth_drv);
rte_free(id_table);
rte_free(dev_private);