[dpdk-dev] [PATCH v3 10/17] ethdev: get rid of eth driver register callback

Shreyansh jain shreyansh.jain at nxp.com
Mon Jun 20 08:16:26 CEST 2016


On Thursday 16 June 2016 07:36 PM, Shreyansh Jain wrote:
> From: David Marchand <david.marchand at 6wind.com>
> 
> Now that all pdev are pci drivers, we don't need to register ethdev drivers
> through a dedicated channel.
> 
> Signed-off-by: David Marchand <david.marchand at 6wind.com>
> ---
>  lib/librte_ether/rte_ethdev.c          | 22 ----------------------
>  lib/librte_ether/rte_ethdev.h          | 12 ------------
>  lib/librte_ether/rte_ether_version.map |  1 -
>  3 files changed, 35 deletions(-)
> 
> diff --git a/lib/librte_ether/rte_ethdev.c b/lib/librte_ether/rte_ethdev.c
> index d05eada..7258062 100644
> --- a/lib/librte_ether/rte_ethdev.c
> +++ b/lib/librte_ether/rte_ethdev.c
> @@ -334,28 +334,6 @@ rte_eth_dev_pci_remove(struct rte_pci_device *pci_dev)
>  	return 0;
>  }
>  
> -/**
> - * Register an Ethernet [Poll Mode] driver.
> - *
> - * Function invoked by the initialization function of an Ethernet driver
> - * to simultaneously register itself as a PCI driver and as an Ethernet
> - * Poll Mode Driver.
> - * Invokes the rte_eal_pci_register() function to register the *pci_drv*
> - * structure embedded in the *eth_drv* structure, after having stored the
> - * address of the rte_eth_dev_init() function in the *devinit* field of
> - * the *pci_drv* structure.
> - * During the PCI probing phase, the rte_eth_dev_init() function is
> - * invoked for each PCI [Ethernet device] matching the embedded PCI
> - * identifiers provided by the driver.
> - */
> -void
> -rte_eth_driver_register(struct eth_driver *eth_drv)
> -{
> -	eth_drv->pci_drv.devinit = rte_eth_dev_pci_probe;
> -	eth_drv->pci_drv.devuninit = rte_eth_dev_pci_remove;
> -	rte_eal_pci_register(&eth_drv->pci_drv);
> -}
> -

Self review (as I rebased this series):

With this applied on master (3901ed99), it would cause issues with qede driver. qede driver uses the rte_eth_driver_register() function.
I will update it (qede driver) and post another version.

>  int
>  rte_eth_dev_is_valid_port(uint8_t port_id)
>  {
> diff --git a/lib/librte_ether/rte_ethdev.h b/lib/librte_ether/rte_ethdev.h
> index 6deafa2..64d889e 100644
> --- a/lib/librte_ether/rte_ethdev.h
> +++ b/lib/librte_ether/rte_ethdev.h
> @@ -1842,18 +1842,6 @@ struct eth_driver {
>  };
>  
>  /**
> - * @internal
> - * A function invoked by the initialization function of an Ethernet driver
> - * to simultaneously register itself as a PCI driver and as an Ethernet
> - * Poll Mode Driver (PMD).
> - *
> - * @param eth_drv
> - *   The pointer to the *eth_driver* structure associated with
> - *   the Ethernet driver.
> - */
> -void rte_eth_driver_register(struct eth_driver *eth_drv);
> -
> -/**
>   * 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
>   *
> diff --git a/lib/librte_ether/rte_ether_version.map b/lib/librte_ether/rte_ether_version.map
> index 31017d4..d457b21 100644
> --- a/lib/librte_ether/rte_ether_version.map
> +++ b/lib/librte_ether/rte_ether_version.map
> @@ -80,7 +80,6 @@ DPDK_2.2 {
>  	rte_eth_dev_vlan_filter;
>  	rte_eth_dev_wd_timeout_store;
>  	rte_eth_dma_zone_reserve;
> -	rte_eth_driver_register;
>  	rte_eth_led_off;
>  	rte_eth_led_on;
>  	rte_eth_link;
> 

-
Shreyansh


More information about the dev mailing list