At present the eal driver registration code is more complicated than it needs to be.
This RFC proposes to simplify the eal driver registration code. Remove the type field from the eal driver structure. Refactor the eal driver registration code to use the name field in the eal driver structure instead of the type field. Modify all PMD's to use the modified eal driver structure. Initialise the name field in the eal driver structure in some PMD's where it is not initialised at present. Bernard Iremonger (18): librte_eal: remove type field from rte_driver structure. af_packet: remove type field from rte_driver structure bnx2x: remove type field and initialise name field in rte_driver structure bonding: remove type field from rte_driver structure cxgbe: remove type field from rte_driver structure e1000: remove type field and initialise name field in rte_driver structures enic: remove type field and initialise name field in rte_driver structure fm10k: remove type field and initialise name field in rte_driver structure i40e: remove type field and initialise name field in rte_driver structures ixgbe: remove type field and initialise name field in rte_driver structure mlx4: remove type field from rte_driver structure mpipe: remove type field and update name in rte_driver structure null: remove type field from rte_driver structure pcap: remove type field from rte_driver structure ring: remove type field from rte_driver structure virtio_ethdev: remove type field and initialise name field in rte_driver structure vmxnet3: remove type field and initialise name field in rte_driver structure xenvirt: remove type field from rte_driver structure drivers/net/af_packet/rte_eth_af_packet.c | 5 ++--- drivers/net/bnx2x/bnx2x_ethdev.c | 5 +++-- drivers/net/bonding/rte_eth_bond_pmd.c | 3 +-- drivers/net/cxgbe/cxgbe_ethdev.c | 4 ++-- drivers/net/e1000/em_ethdev.c | 2 +- drivers/net/e1000/igb_ethdev.c | 4 ++-- drivers/net/enic/enic_ethdev.c | 3 ++- drivers/net/fm10k/fm10k_ethdev.c | 2 +- drivers/net/i40e/i40e_ethdev.c | 2 +- drivers/net/i40e/i40e_ethdev_vf.c | 2 +- drivers/net/ixgbe/ixgbe_ethdev.c | 4 ++-- drivers/net/mlx4/mlx4.c | 4 ++-- drivers/net/mpipe/mpipe_tilegx.c | 7 +++---- drivers/net/null/rte_eth_null.c | 3 +-- drivers/net/pcap/rte_eth_pcap.c | 3 +-- drivers/net/ring/rte_eth_ring.c | 3 +-- drivers/net/virtio/virtio_ethdev.c | 2 +- drivers/net/vmxnet3/vmxnet3_ethdev.c | 2 +- drivers/net/xenvirt/rte_eth_xenvirt.c | 5 ++--- lib/librte_eal/common/eal_common_dev.c | 22 +++++++++++++--------- lib/librte_eal/common/include/rte_dev.h | 11 +---------- 21 files changed, 44 insertions(+), 54 deletions(-) -- 1.9.1