DPDK patches and discussions
 help / color / mirror / Atom feed
From: Shreyansh Jain <shreyansh.jain@nxp.com>
To: <dev@dpdk.org>
Cc: <viktorin@rehivetech.com>, <david.marchand@6wind.com>,
	<thomas.monjalon@6wind.com>, <hemant.agrawal@nxp.com>,
	Shreyansh Jain <shreyansh.jain@nxp.com>
Subject: [dpdk-dev] [PATCH v8 08/25] drivers: convert all pdev drivers as pci drivers
Date: Fri, 26 Aug 2016 19:26:46 +0530	[thread overview]
Message-ID: <1472219823-29486-9-git-send-email-shreyansh.jain@nxp.com> (raw)
In-Reply-To: <1472219823-29486-1-git-send-email-shreyansh.jain@nxp.com>

Simplify crypto and ethdev pci drivers init by using newly introduced
init macros and helpers.
Those drivers then don't need to register as "rte_driver"s anymore.

Exceptions:
- virtio and mlx* use RTE_INIT directly as they have custom initialization
  steps.
- VDEV devices are not modified - they continue to use PMD_REGISTER_DRIVER.

Signed-off-by: David Marchand <david.marchand@6wind.com>
Signed-off-by: Shreyansh Jain <shreyansh.jain@nxp.com>
---
 drivers/crypto/qat/rte_qat_cryptodev.c  | 16 +++---------
 drivers/net/bnx2x/bnx2x_ethdev.c        | 34 +++++-------------------
 drivers/net/bnxt/bnxt_ethdev.c          | 16 +++---------
 drivers/net/cxgbe/cxgbe_ethdev.c        | 24 +++--------------
 drivers/net/e1000/em_ethdev.c           | 16 +++---------
 drivers/net/e1000/igb_ethdev.c          | 39 +++++-----------------------
 drivers/net/ena/ena_ethdev.c            | 17 +++---------
 drivers/net/enic/enic_ethdev.c          | 23 +++--------------
 drivers/net/fm10k/fm10k_ethdev.c        | 23 +++--------------
 drivers/net/i40e/i40e_ethdev.c          | 24 +++--------------
 drivers/net/i40e/i40e_ethdev_vf.c       | 25 +++---------------
 drivers/net/ixgbe/ixgbe_ethdev.c        | 46 +++++----------------------------
 drivers/net/mlx4/mlx4.c                 | 15 +++--------
 drivers/net/mlx5/mlx5.c                 | 14 +++-------
 drivers/net/nfp/nfp_net.c               | 21 +++------------
 drivers/net/qede/qede_ethdev.c          | 40 ++++++----------------------
 drivers/net/szedata2/rte_eth_szedata2.c | 24 +++--------------
 drivers/net/thunderx/nicvf_ethdev.c     | 20 +++-----------
 drivers/net/virtio/virtio_ethdev.c      | 25 +++++-------------
 drivers/net/vmxnet3/vmxnet3_ethdev.c    | 23 +++--------------
 20 files changed, 78 insertions(+), 407 deletions(-)

diff --git a/drivers/crypto/qat/rte_qat_cryptodev.c b/drivers/crypto/qat/rte_qat_cryptodev.c
index 1e9e0ba..b94af59 100644
--- a/drivers/crypto/qat/rte_qat_cryptodev.c
+++ b/drivers/crypto/qat/rte_qat_cryptodev.c
@@ -116,23 +116,13 @@ static struct rte_cryptodev_driver rte_qat_pmd = {
 	.pci_drv = {
 		.id_table = pci_id_qat_map,
 		.drv_flags = RTE_PCI_DRV_NEED_MAPPING,
+		.devinit = rte_cryptodev_pci_probe,
+		.devuninit = rte_cryptodev_pci_remove,
 	},
 	.cryptodev_init = crypto_qat_dev_init,
 	.dev_private_size = sizeof(struct qat_pmd_private),
 };
 
-static int
-rte_qat_pmd_init(const char *name __rte_unused, const char *params __rte_unused)
-{
-	PMD_INIT_FUNC_TRACE();
-	return rte_cryptodev_pmd_driver_register(&rte_qat_pmd, PMD_PDEV);
-}
-
-static struct rte_driver pmd_qat_drv = {
-	.type = PMD_PDEV,
-	.init = rte_qat_pmd_init,
-};
-
-PMD_REGISTER_DRIVER(pmd_qat_drv, CRYPTODEV_NAME_QAT_SYM_PMD);
+DRIVER_REGISTER_PCI(CRYPTODEV_NAME_QAT_SYM_PMD, rte_qat_pmd.pci_drv);
 DRIVER_REGISTER_PCI_TABLE(CRYPTODEV_NAME_QAT_SYM_PMD, pci_id_qat_map);
 
diff --git a/drivers/net/bnx2x/bnx2x_ethdev.c b/drivers/net/bnx2x/bnx2x_ethdev.c
index f3ab355..214b655 100644
--- a/drivers/net/bnx2x/bnx2x_ethdev.c
+++ b/drivers/net/bnx2x/bnx2x_ethdev.c
@@ -621,6 +621,8 @@ static struct eth_driver rte_bnx2x_pmd = {
 		.name = "rte_bnx2x_pmd",
 		.id_table = pci_id_bnx2x_map,
 		.drv_flags = RTE_PCI_DRV_NEED_MAPPING | RTE_PCI_DRV_INTR_LSC,
+		.devinit = rte_eth_dev_pci_probe,
+		.devuninit = rte_eth_dev_pci_remove,
 	},
 	.eth_dev_init = eth_bnx2x_dev_init,
 	.dev_private_size = sizeof(struct bnx2x_softc),
@@ -634,38 +636,14 @@ static struct eth_driver rte_bnx2xvf_pmd = {
 		.name = "rte_bnx2xvf_pmd",
 		.id_table = pci_id_bnx2xvf_map,
 		.drv_flags = RTE_PCI_DRV_NEED_MAPPING,
+		.devinit = rte_eth_dev_pci_probe,
+		.devuninit = rte_eth_dev_pci_remove,
 	},
 	.eth_dev_init = eth_bnx2xvf_dev_init,
 	.dev_private_size = sizeof(struct bnx2x_softc),
 };
 
-static int rte_bnx2x_pmd_init(const char *name __rte_unused, const char *params __rte_unused)
-{
-	PMD_INIT_FUNC_TRACE();
-	rte_eth_driver_register(&rte_bnx2x_pmd);
-
-	return 0;
-}
-
-static int rte_bnx2xvf_pmd_init(const char *name __rte_unused, const char *params __rte_unused)
-{
-	PMD_INIT_FUNC_TRACE();
-	rte_eth_driver_register(&rte_bnx2xvf_pmd);
-
-	return 0;
-}
-
-static struct rte_driver rte_bnx2x_driver = {
-	.type = PMD_PDEV,
-	.init = rte_bnx2x_pmd_init,
-};
-
-static struct rte_driver rte_bnx2xvf_driver = {
-	.type = PMD_PDEV,
-	.init = rte_bnx2xvf_pmd_init,
-};
-
-PMD_REGISTER_DRIVER(rte_bnx2x_driver, bnx2x);
+DRIVER_REGISTER_PCI(bnx2x, rte_bnx2x_pmd.pci_drv);
 DRIVER_REGISTER_PCI_TABLE(bnx2x, pci_id_bnx2x_map);
-PMD_REGISTER_DRIVER(rte_bnx2xvf_driver, bnx2xvf);
+DRIVER_REGISTER_PCI(bnx2xvf, rte_bnx2xvf_pmd.pci_drv);
 DRIVER_REGISTER_PCI_TABLE(bnx2xvf, pci_id_bnx2xvf_map);
diff --git a/drivers/net/bnxt/bnxt_ethdev.c b/drivers/net/bnxt/bnxt_ethdev.c
index 3795fac..28eb8b9 100644
--- a/drivers/net/bnxt/bnxt_ethdev.c
+++ b/drivers/net/bnxt/bnxt_ethdev.c
@@ -1048,23 +1048,13 @@ static struct eth_driver bnxt_rte_pmd = {
 		    .name = "rte_" DRV_MODULE_NAME "_pmd",
 		    .id_table = bnxt_pci_id_map,
 		    .drv_flags = RTE_PCI_DRV_NEED_MAPPING,
+		    .devinit = rte_eth_dev_pci_probe,
+		    .devuninit = rte_eth_dev_pci_remove,
 		    },
 	.eth_dev_init = bnxt_dev_init,
 	.eth_dev_uninit = bnxt_dev_uninit,
 	.dev_private_size = sizeof(struct bnxt),
 };
 
-static int bnxt_rte_pmd_init(const char *name, const char *params __rte_unused)
-{
-	RTE_LOG(INFO, PMD, "bnxt_rte_pmd_init() called for %s\n", name);
-	rte_eth_driver_register(&bnxt_rte_pmd);
-	return 0;
-}
-
-static struct rte_driver bnxt_pmd_drv = {
-	.type = PMD_PDEV,
-	.init = bnxt_rte_pmd_init,
-};
-
-PMD_REGISTER_DRIVER(bnxt_pmd_drv, bnxt);
+DRIVER_REGISTER_PCI(bnxt, bnxt_rte_pmd.pci_drv);
 DRIVER_REGISTER_PCI_TABLE(bnxt, bnxt_pci_id_map);
diff --git a/drivers/net/cxgbe/cxgbe_ethdev.c b/drivers/net/cxgbe/cxgbe_ethdev.c
index 9208a61..431b06d 100644
--- a/drivers/net/cxgbe/cxgbe_ethdev.c
+++ b/drivers/net/cxgbe/cxgbe_ethdev.c
@@ -1042,30 +1042,12 @@ static struct eth_driver rte_cxgbe_pmd = {
 		.name = "rte_cxgbe_pmd",
 		.id_table = cxgb4_pci_tbl,
 		.drv_flags = RTE_PCI_DRV_NEED_MAPPING | RTE_PCI_DRV_INTR_LSC,
+		.devinit = rte_eth_dev_pci_probe,
+		.devuninit = rte_eth_dev_pci_remove,
 	},
 	.eth_dev_init = eth_cxgbe_dev_init,
 	.dev_private_size = sizeof(struct port_info),
 };
 
-/*
- * Driver initialization routine.
- * Invoked once at EAL init time.
- * Register itself as the [Poll Mode] Driver of PCI CXGBE devices.
- */
-static int rte_cxgbe_pmd_init(const char *name __rte_unused,
-			      const char *params __rte_unused)
-{
-	CXGBE_FUNC_TRACE();
-
-	rte_eth_driver_register(&rte_cxgbe_pmd);
-	return 0;
-}
-
-static struct rte_driver rte_cxgbe_driver = {
-	.type = PMD_PDEV,
-	.init = rte_cxgbe_pmd_init,
-};
-
-PMD_REGISTER_DRIVER(rte_cxgbe_driver, cxgb4);
+DRIVER_REGISTER_PCI(cxgb4, rte_cxgbe_pmd.pci_drv);
 DRIVER_REGISTER_PCI_TABLE(cxgb4, cxgb4_pci_tbl);
-
diff --git a/drivers/net/e1000/em_ethdev.c b/drivers/net/e1000/em_ethdev.c
index ad104ed..1281c8b 100644
--- a/drivers/net/e1000/em_ethdev.c
+++ b/drivers/net/e1000/em_ethdev.c
@@ -395,6 +395,8 @@ static struct eth_driver rte_em_pmd = {
 		.id_table = pci_id_em_map,
 		.drv_flags = RTE_PCI_DRV_NEED_MAPPING | RTE_PCI_DRV_INTR_LSC |
 			RTE_PCI_DRV_DETACHABLE,
+		.devinit = rte_eth_dev_pci_probe,
+		.devuninit = rte_eth_dev_pci_remove,
 	},
 	.eth_dev_init = eth_em_dev_init,
 	.eth_dev_uninit = eth_em_dev_uninit,
@@ -402,13 +404,6 @@ static struct eth_driver rte_em_pmd = {
 };
 
 static int
-rte_em_pmd_init(const char *name __rte_unused, const char *params __rte_unused)
-{
-	rte_eth_driver_register(&rte_em_pmd);
-	return 0;
-}
-
-static int
 em_hw_init(struct e1000_hw *hw)
 {
 	int diag;
@@ -1799,10 +1794,5 @@ eth_em_set_mc_addr_list(struct rte_eth_dev *dev,
 	return 0;
 }
 
-struct rte_driver em_pmd_drv = {
-	.type = PMD_PDEV,
-	.init = rte_em_pmd_init,
-};
-
-PMD_REGISTER_DRIVER(em_pmd_drv, em);
+DRIVER_REGISTER_PCI(em, rte_em_pmd.pci_drv);
 DRIVER_REGISTER_PCI_TABLE(em, pci_id_em_map);
diff --git a/drivers/net/e1000/igb_ethdev.c b/drivers/net/e1000/igb_ethdev.c
index 4e9e6a3..395477e 100644
--- a/drivers/net/e1000/igb_ethdev.c
+++ b/drivers/net/e1000/igb_ethdev.c
@@ -1082,6 +1082,8 @@ static struct eth_driver rte_igb_pmd = {
 		.id_table = pci_id_igb_map,
 		.drv_flags = RTE_PCI_DRV_NEED_MAPPING | RTE_PCI_DRV_INTR_LSC |
 			RTE_PCI_DRV_DETACHABLE,
+		.devinit = rte_eth_dev_pci_probe,
+		.devuninit = rte_eth_dev_pci_remove,
 	},
 	.eth_dev_init = eth_igb_dev_init,
 	.eth_dev_uninit = eth_igb_dev_uninit,
@@ -1096,19 +1098,14 @@ static struct eth_driver rte_igbvf_pmd = {
 		.name = "rte_igbvf_pmd",
 		.id_table = pci_id_igbvf_map,
 		.drv_flags = RTE_PCI_DRV_NEED_MAPPING | RTE_PCI_DRV_DETACHABLE,
+		.devinit = rte_eth_dev_pci_probe,
+		.devuninit = rte_eth_dev_pci_remove,
 	},
 	.eth_dev_init = eth_igbvf_dev_init,
 	.eth_dev_uninit = eth_igbvf_dev_uninit,
 	.dev_private_size = sizeof(struct e1000_adapter),
 };
 
-static int
-rte_igb_pmd_init(const char *name __rte_unused, const char *params __rte_unused)
-{
-	rte_eth_driver_register(&rte_igb_pmd);
-	return 0;
-}
-
 static void
 igb_vmdq_vlan_hw_filter_enable(struct rte_eth_dev *dev)
 {
@@ -1120,20 +1117,6 @@ igb_vmdq_vlan_hw_filter_enable(struct rte_eth_dev *dev)
 	E1000_WRITE_REG(hw, E1000_RCTL, rctl);
 }
 
-/*
- * VF Driver initialization routine.
- * Invoked one at EAL init time.
- * Register itself as the [Virtual Poll Mode] Driver of PCI IGB devices.
- */
-static int
-rte_igbvf_pmd_init(const char *name __rte_unused, const char *params __rte_unused)
-{
-	PMD_INIT_FUNC_TRACE();
-
-	rte_eth_driver_register(&rte_igbvf_pmd);
-	return 0;
-}
-
 static int
 igb_check_mq_mode(struct rte_eth_dev *dev)
 {
@@ -5084,16 +5067,6 @@ eth_igb_set_eeprom(struct rte_eth_dev *dev,
 	return nvm->ops.write(hw,  first, length, data);
 }
 
-static struct rte_driver pmd_igb_drv = {
-	.type = PMD_PDEV,
-	.init = rte_igb_pmd_init,
-};
-
-static struct rte_driver pmd_igbvf_drv = {
-	.type = PMD_PDEV,
-	.init = rte_igbvf_pmd_init,
-};
-
 static int
 eth_igb_rx_queue_intr_disable(struct rte_eth_dev *dev, uint16_t queue_id)
 {
@@ -5255,7 +5228,7 @@ eth_igb_configure_msix_intr(struct rte_eth_dev *dev)
 	E1000_WRITE_FLUSH(hw);
 }
 
-PMD_REGISTER_DRIVER(pmd_igb_drv, igb);
+DRIVER_REGISTER_PCI(igb, rte_igb_pmd.pci_drv);
 DRIVER_REGISTER_PCI_TABLE(igb, pci_id_igb_map);
-PMD_REGISTER_DRIVER(pmd_igbvf_drv, igbvf);
+DRIVER_REGISTER_PCI(igbvf, rte_igbvf_pmd.pci_drv);
 DRIVER_REGISTER_PCI_TABLE(igbvf, pci_id_igbvf_map);
diff --git a/drivers/net/ena/ena_ethdev.c b/drivers/net/ena/ena_ethdev.c
index 9418d50..ee906d4 100644
--- a/drivers/net/ena/ena_ethdev.c
+++ b/drivers/net/ena/ena_ethdev.c
@@ -1689,23 +1689,12 @@ static struct eth_driver rte_ena_pmd = {
 		.name = "rte_ena_pmd",
 		.id_table = pci_id_ena_map,
 		.drv_flags = RTE_PCI_DRV_NEED_MAPPING,
+		.devinit = rte_eth_dev_pci_probe,
+		.devuninit = rte_eth_dev_pci_remove,
 	},
 	.eth_dev_init = eth_ena_dev_init,
 	.dev_private_size = sizeof(struct ena_adapter),
 };
 
-static int
-rte_ena_pmd_init(const char *name __rte_unused,
-		 const char *params __rte_unused)
-{
-	rte_eth_driver_register(&rte_ena_pmd);
-	return 0;
-};
-
-struct rte_driver ena_pmd_drv = {
-	.type = PMD_PDEV,
-	.init = rte_ena_pmd_init,
-};
-
-PMD_REGISTER_DRIVER(ena_pmd_drv, ena);
+DRIVER_REGISTER_PCI(ena, rte_ena_pmd.pci_drv);
 DRIVER_REGISTER_PCI_TABLE(ena, pci_id_ena_map);
diff --git a/drivers/net/enic/enic_ethdev.c b/drivers/net/enic/enic_ethdev.c
index 47b07c9..59812d0 100644
--- a/drivers/net/enic/enic_ethdev.c
+++ b/drivers/net/enic/enic_ethdev.c
@@ -616,29 +616,12 @@ static struct eth_driver rte_enic_pmd = {
 		.name = "rte_enic_pmd",
 		.id_table = pci_id_enic_map,
 		.drv_flags = RTE_PCI_DRV_NEED_MAPPING,
+		.devinit = rte_eth_dev_pci_probe,
+		.devuninit = rte_eth_dev_pci_remove,
 	},
 	.eth_dev_init = eth_enicpmd_dev_init,
 	.dev_private_size = sizeof(struct enic),
 };
 
-/* Driver initialization routine.
- * Invoked once at EAL init time.
- * Register as the [Poll Mode] Driver of Cisco ENIC device.
- */
-static int
-rte_enic_pmd_init(__rte_unused const char *name,
-	 __rte_unused const char *params)
-{
-	ENICPMD_FUNC_TRACE();
-
-	rte_eth_driver_register(&rte_enic_pmd);
-	return 0;
-}
-
-static struct rte_driver rte_enic_driver = {
-	.type = PMD_PDEV,
-	.init = rte_enic_pmd_init,
-};
-
-PMD_REGISTER_DRIVER(rte_enic_driver, enic);
+DRIVER_REGISTER_PCI(enic, rte_enic_pmd.pci_drv);
 DRIVER_REGISTER_PCI_TABLE(enic, pci_id_enic_map);
diff --git a/drivers/net/fm10k/fm10k_ethdev.c b/drivers/net/fm10k/fm10k_ethdev.c
index 01f4a72..26cdc10 100644
--- a/drivers/net/fm10k/fm10k_ethdev.c
+++ b/drivers/net/fm10k/fm10k_ethdev.c
@@ -3059,30 +3059,13 @@ static struct eth_driver rte_pmd_fm10k = {
 		.id_table = pci_id_fm10k_map,
 		.drv_flags = RTE_PCI_DRV_NEED_MAPPING | RTE_PCI_DRV_INTR_LSC |
 			RTE_PCI_DRV_DETACHABLE,
+		.devinit = rte_eth_dev_pci_probe,
+		.devuninit = rte_eth_dev_pci_remove,
 	},
 	.eth_dev_init = eth_fm10k_dev_init,
 	.eth_dev_uninit = eth_fm10k_dev_uninit,
 	.dev_private_size = sizeof(struct fm10k_adapter),
 };
 
-/*
- * Driver initialization routine.
- * Invoked once at EAL init time.
- * Register itself as the [Poll Mode] Driver of PCI FM10K devices.
- */
-static int
-rte_pmd_fm10k_init(__rte_unused const char *name,
-	__rte_unused const char *params)
-{
-	PMD_INIT_FUNC_TRACE();
-	rte_eth_driver_register(&rte_pmd_fm10k);
-	return 0;
-}
-
-static struct rte_driver rte_fm10k_driver = {
-	.type = PMD_PDEV,
-	.init = rte_pmd_fm10k_init,
-};
-
-PMD_REGISTER_DRIVER(rte_fm10k_driver, fm10k);
+DRIVER_REGISTER_PCI(fm10k, rte_pmd_fm10k.pci_drv);
 DRIVER_REGISTER_PCI_TABLE(fm10k, pci_id_fm10k_map);
diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c
index d0aeb70..dacaaea 100644
--- a/drivers/net/i40e/i40e_ethdev.c
+++ b/drivers/net/i40e/i40e_ethdev.c
@@ -667,6 +667,8 @@ static struct eth_driver rte_i40e_pmd = {
 		.id_table = pci_id_i40e_map,
 		.drv_flags = RTE_PCI_DRV_NEED_MAPPING | RTE_PCI_DRV_INTR_LSC |
 			RTE_PCI_DRV_DETACHABLE,
+		.devinit = rte_eth_dev_pci_probe,
+		.devuninit = rte_eth_dev_pci_remove,
 	},
 	.eth_dev_init = eth_i40e_dev_init,
 	.eth_dev_uninit = eth_i40e_dev_uninit,
@@ -701,27 +703,7 @@ rte_i40e_dev_atomic_write_link_status(struct rte_eth_dev *dev,
 	return 0;
 }
 
-/*
- * Driver initialization routine.
- * Invoked once at EAL init time.
- * Register itself as the [Poll Mode] Driver of PCI IXGBE devices.
- */
-static int
-rte_i40e_pmd_init(const char *name __rte_unused,
-		  const char *params __rte_unused)
-{
-	PMD_INIT_FUNC_TRACE();
-	rte_eth_driver_register(&rte_i40e_pmd);
-
-	return 0;
-}
-
-static struct rte_driver rte_i40e_driver = {
-	.type = PMD_PDEV,
-	.init = rte_i40e_pmd_init,
-};
-
-PMD_REGISTER_DRIVER(rte_i40e_driver, i40e);
+DRIVER_REGISTER_PCI(i40e, rte_i40e_pmd.pci_drv);
 DRIVER_REGISTER_PCI_TABLE(i40e, pci_id_i40e_map);
 
 /*
diff --git a/drivers/net/i40e/i40e_ethdev_vf.c b/drivers/net/i40e/i40e_ethdev_vf.c
index a616ae0..4a745f9 100644
--- a/drivers/net/i40e/i40e_ethdev_vf.c
+++ b/drivers/net/i40e/i40e_ethdev_vf.c
@@ -1557,34 +1557,15 @@ static struct eth_driver rte_i40evf_pmd = {
 		.name = "rte_i40evf_pmd",
 		.id_table = pci_id_i40evf_map,
 		.drv_flags = RTE_PCI_DRV_NEED_MAPPING | RTE_PCI_DRV_DETACHABLE,
+		.devinit = rte_eth_dev_pci_probe,
+		.devuninit = rte_eth_dev_pci_remove,
 	},
 	.eth_dev_init = i40evf_dev_init,
 	.eth_dev_uninit = i40evf_dev_uninit,
 	.dev_private_size = sizeof(struct i40e_adapter),
 };
 
-/*
- * VF Driver initialization routine.
- * Invoked one at EAL init time.
- * Register itself as the [Virtual Poll Mode] Driver of PCI Fortville devices.
- */
-static int
-rte_i40evf_pmd_init(const char *name __rte_unused,
-		    const char *params __rte_unused)
-{
-	PMD_INIT_FUNC_TRACE();
-
-	rte_eth_driver_register(&rte_i40evf_pmd);
-
-	return 0;
-}
-
-static struct rte_driver rte_i40evf_driver = {
-	.type = PMD_PDEV,
-	.init = rte_i40evf_pmd_init,
-};
-
-PMD_REGISTER_DRIVER(rte_i40evf_driver, i40evf);
+DRIVER_REGISTER_PCI(i40evf, rte_i40evf_pmd.pci_drv);
 DRIVER_REGISTER_PCI_TABLE(i40evf, pci_id_i40evf_map);
 
 static int
diff --git a/drivers/net/ixgbe/ixgbe_ethdev.c b/drivers/net/ixgbe/ixgbe_ethdev.c
index fb618ef..d2f46bc 100644
--- a/drivers/net/ixgbe/ixgbe_ethdev.c
+++ b/drivers/net/ixgbe/ixgbe_ethdev.c
@@ -1566,6 +1566,8 @@ static struct eth_driver rte_ixgbe_pmd = {
 		.id_table = pci_id_ixgbe_map,
 		.drv_flags = RTE_PCI_DRV_NEED_MAPPING | RTE_PCI_DRV_INTR_LSC |
 			RTE_PCI_DRV_DETACHABLE,
+		.devinit = rte_eth_dev_pci_probe,
+		.devuninit = rte_eth_dev_pci_remove,
 	},
 	.eth_dev_init = eth_ixgbe_dev_init,
 	.eth_dev_uninit = eth_ixgbe_dev_uninit,
@@ -1580,40 +1582,14 @@ static struct eth_driver rte_ixgbevf_pmd = {
 		.name = "rte_ixgbevf_pmd",
 		.id_table = pci_id_ixgbevf_map,
 		.drv_flags = RTE_PCI_DRV_NEED_MAPPING | RTE_PCI_DRV_DETACHABLE,
+		.devinit = rte_eth_dev_pci_probe,
+		.devuninit = rte_eth_dev_pci_remove,
 	},
 	.eth_dev_init = eth_ixgbevf_dev_init,
 	.eth_dev_uninit = eth_ixgbevf_dev_uninit,
 	.dev_private_size = sizeof(struct ixgbe_adapter),
 };
 
-/*
- * Driver initialization routine.
- * Invoked once at EAL init time.
- * Register itself as the [Poll Mode] Driver of PCI IXGBE devices.
- */
-static int
-rte_ixgbe_pmd_init(const char *name __rte_unused, const char *params __rte_unused)
-{
-	PMD_INIT_FUNC_TRACE();
-
-	rte_eth_driver_register(&rte_ixgbe_pmd);
-	return 0;
-}
-
-/*
- * VF Driver initialization routine.
- * Invoked one at EAL init time.
- * Register itself as the [Virtual Poll Mode] Driver of PCI niantic devices.
- */
-static int
-rte_ixgbevf_pmd_init(const char *name __rte_unused, const char *param __rte_unused)
-{
-	PMD_INIT_FUNC_TRACE();
-
-	rte_eth_driver_register(&rte_ixgbevf_pmd);
-	return 0;
-}
-
 static int
 ixgbe_vlan_filter_set(struct rte_eth_dev *dev, uint16_t vlan_id, int on)
 {
@@ -7409,17 +7385,7 @@ ixgbevf_dev_interrupt_handler(__rte_unused struct rte_intr_handle *handle,
 	ixgbevf_dev_interrupt_action(dev);
 }
 
-static struct rte_driver rte_ixgbe_driver = {
-	.type = PMD_PDEV,
-	.init = rte_ixgbe_pmd_init,
-};
-
-static struct rte_driver rte_ixgbevf_driver = {
-	.type = PMD_PDEV,
-	.init = rte_ixgbevf_pmd_init,
-};
-
-PMD_REGISTER_DRIVER(rte_ixgbe_driver, ixgbe);
+DRIVER_REGISTER_PCI(ixgbe, rte_ixgbe_pmd.pci_drv);
 DRIVER_REGISTER_PCI_TABLE(ixgbe, pci_id_ixgbe_map);
-PMD_REGISTER_DRIVER(rte_ixgbevf_driver, ixgbevf);
+DRIVER_REGISTER_PCI(ixgbevf, rte_ixgbevf_pmd.pci_drv);
 DRIVER_REGISTER_PCI_TABLE(ixgbevf, pci_id_ixgbevf_map);
diff --git a/drivers/net/mlx4/mlx4.c b/drivers/net/mlx4/mlx4.c
index 304c846..2bed4de 100644
--- a/drivers/net/mlx4/mlx4.c
+++ b/drivers/net/mlx4/mlx4.c
@@ -5922,12 +5922,10 @@ static struct eth_driver mlx4_driver = {
 /**
  * Driver initialization routine.
  */
-static int
-rte_mlx4_pmd_init(const char *name, const char *args)
+RTE_INIT(rte_mlx4_pmd_init);
+static void
+rte_mlx4_pmd_init(void)
 {
-	(void)name;
-	(void)args;
-
 	RTE_BUILD_BUG_ON(sizeof(wr_id_t) != sizeof(uint64_t));
 	/*
 	 * RDMAV_HUGEPAGES_SAFE tells ibv_fork_init() we intend to use
@@ -5938,13 +5936,6 @@ rte_mlx4_pmd_init(const char *name, const char *args)
 	setenv("RDMAV_HUGEPAGES_SAFE", "1", 1);
 	ibv_fork_init();
 	rte_eal_pci_register(&mlx4_driver.pci_drv);
-	return 0;
 }
 
-static struct rte_driver rte_mlx4_driver = {
-	.type = PMD_PDEV,
-	.init = rte_mlx4_pmd_init,
-};
-
-PMD_REGISTER_DRIVER(rte_mlx4_driver, mlx4);
 DRIVER_REGISTER_PCI_TABLE(mlx4, mlx4_pci_id_map);
diff --git a/drivers/net/mlx5/mlx5.c b/drivers/net/mlx5/mlx5.c
index d96a9af..3658769 100644
--- a/drivers/net/mlx5/mlx5.c
+++ b/drivers/net/mlx5/mlx5.c
@@ -739,11 +739,10 @@ static struct eth_driver mlx5_driver = {
 /**
  * Driver initialization routine.
  */
-static int
-rte_mlx5_pmd_init(const char *name, const char *args)
+RTE_INIT(rte_mlx5_pmd_init);
+static void
+rte_mlx5_pmd_init(void)
 {
-	(void)name;
-	(void)args;
 	/*
 	 * RDMAV_HUGEPAGES_SAFE tells ibv_fork_init() we intend to use
 	 * huge pages. Calling ibv_fork_init() during init allows
@@ -753,13 +752,6 @@ rte_mlx5_pmd_init(const char *name, const char *args)
 	setenv("RDMAV_HUGEPAGES_SAFE", "1", 1);
 	ibv_fork_init();
 	rte_eal_pci_register(&mlx5_driver.pci_drv);
-	return 0;
 }
 
-static struct rte_driver rte_mlx5_driver = {
-	.type = PMD_PDEV,
-	.init = rte_mlx5_pmd_init,
-};
-
-PMD_REGISTER_DRIVER(rte_mlx5_driver, mlx5);
 DRIVER_REGISTER_PCI_TABLE(mlx5, mlx5_pci_id_map);
diff --git a/drivers/net/nfp/nfp_net.c b/drivers/net/nfp/nfp_net.c
index 99a258a..cbaf219 100644
--- a/drivers/net/nfp/nfp_net.c
+++ b/drivers/net/nfp/nfp_net.c
@@ -2464,29 +2464,14 @@ static struct eth_driver rte_nfp_net_pmd = {
 		.id_table = pci_id_nfp_net_map,
 		.drv_flags = RTE_PCI_DRV_NEED_MAPPING | RTE_PCI_DRV_INTR_LSC |
 			     RTE_PCI_DRV_DETACHABLE,
+		.devinit = rte_eth_dev_pci_probe,
+		.devuninit = rte_eth_dev_pci_remove,
 	},
 	.eth_dev_init = nfp_net_init,
 	.dev_private_size = sizeof(struct nfp_net_adapter),
 };
 
-static int
-nfp_net_pmd_init(const char *name __rte_unused,
-		 const char *params __rte_unused)
-{
-	PMD_INIT_FUNC_TRACE();
-	PMD_INIT_LOG(INFO, "librte_pmd_nfp_net version %s\n",
-		     NFP_NET_PMD_VERSION);
-
-	rte_eth_driver_register(&rte_nfp_net_pmd);
-	return 0;
-}
-
-static struct rte_driver rte_nfp_net_driver = {
-	.type = PMD_PDEV,
-	.init = nfp_net_pmd_init,
-};
-
-PMD_REGISTER_DRIVER(rte_nfp_net_driver, nfp);
+DRIVER_REGISTER_PCI(nfp, rte_nfp_net_pmd.pci_drv);
 DRIVER_REGISTER_PCI_TABLE(nfp, pci_id_nfp_net_map);
 
 /*
diff --git a/drivers/net/qede/qede_ethdev.c b/drivers/net/qede/qede_ethdev.c
index 82e44b8..a92dd3b 100644
--- a/drivers/net/qede/qede_ethdev.c
+++ b/drivers/net/qede/qede_ethdev.c
@@ -1482,7 +1482,9 @@ static struct eth_driver rte_qedevf_pmd = {
 		    .id_table = pci_id_qedevf_map,
 		    .drv_flags =
 		    RTE_PCI_DRV_NEED_MAPPING | RTE_PCI_DRV_INTR_LSC,
-		    },
+		    .devinit = rte_eth_dev_pci_probe,
+		    .devuninit = rte_eth_dev_pci_remove,
+		   },
 	.eth_dev_init = qedevf_eth_dev_init,
 	.eth_dev_uninit = qedevf_eth_dev_uninit,
 	.dev_private_size = sizeof(struct qede_dev),
@@ -1494,41 +1496,15 @@ static struct eth_driver rte_qede_pmd = {
 		    .id_table = pci_id_qede_map,
 		    .drv_flags =
 		    RTE_PCI_DRV_NEED_MAPPING | RTE_PCI_DRV_INTR_LSC,
-		    },
+		    .devinit = rte_eth_dev_pci_probe,
+		    .devuninit = rte_eth_dev_pci_remove,
+		   },
 	.eth_dev_init = qede_eth_dev_init,
 	.eth_dev_uninit = qede_eth_dev_uninit,
 	.dev_private_size = sizeof(struct qede_dev),
 };
 
-static int
-rte_qedevf_pmd_init(const char *name __rte_unused,
-		    const char *params __rte_unused)
-{
-	rte_eth_driver_register(&rte_qedevf_pmd);
-
-	return 0;
-}
-
-static int
-rte_qede_pmd_init(const char *name __rte_unused,
-		  const char *params __rte_unused)
-{
-	rte_eth_driver_register(&rte_qede_pmd);
-
-	return 0;
-}
-
-static struct rte_driver rte_qedevf_driver = {
-	.type = PMD_PDEV,
-	.init = rte_qede_pmd_init
-};
-
-static struct rte_driver rte_qede_driver = {
-	.type = PMD_PDEV,
-	.init = rte_qedevf_pmd_init
-};
-
-PMD_REGISTER_DRIVER(rte_qede_driver, qede);
+DRIVER_REGISTER_PCI(qede, rte_qede_pmd.pci_drv);
 DRIVER_REGISTER_PCI_TABLE(qede, pci_id_qede_map);
-PMD_REGISTER_DRIVER(rte_qedevf_driver, qedevf);
+DRIVER_REGISTER_PCI(qedevf, rte_qedevf_pmd.pci_drv);
 DRIVER_REGISTER_PCI_TABLE(qedevf, pci_id_qedevf_map);
diff --git a/drivers/net/szedata2/rte_eth_szedata2.c b/drivers/net/szedata2/rte_eth_szedata2.c
index 483d789..6d21024 100644
--- a/drivers/net/szedata2/rte_eth_szedata2.c
+++ b/drivers/net/szedata2/rte_eth_szedata2.c
@@ -1574,31 +1574,13 @@ static struct eth_driver szedata2_eth_driver = {
 	.pci_drv = {
 		.name     = RTE_SZEDATA2_PCI_DRIVER_NAME,
 		.id_table = rte_szedata2_pci_id_table,
+		.devinit = rte_eth_dev_pci_probe,
+		.devuninit = rte_eth_dev_pci_remove,
 	},
 	.eth_dev_init     = rte_szedata2_eth_dev_init,
 	.eth_dev_uninit   = rte_szedata2_eth_dev_uninit,
 	.dev_private_size = sizeof(struct pmd_internals),
 };
 
-static int
-rte_szedata2_init(const char *name __rte_unused,
-		const char *args __rte_unused)
-{
-	rte_eth_driver_register(&szedata2_eth_driver);
-	return 0;
-}
-
-static int
-rte_szedata2_uninit(const char *name __rte_unused)
-{
-	return 0;
-}
-
-static struct rte_driver rte_szedata2_driver = {
-	.type = PMD_PDEV,
-	.init = rte_szedata2_init,
-	.uninit = rte_szedata2_uninit,
-};
-
-PMD_REGISTER_DRIVER(rte_szedata2_driver, RTE_SZEDATA2_DRIVER_NAME);
+DRIVER_REGISTER_PCI(RTE_SZEDATA2_DRIVER_NAME, szedata2_eth_driver.pci_drv);
 DRIVER_REGISTER_PCI_TABLE(RTE_SZEDATA2_DRIVER_NAME, rte_szedata2_pci_id_table);
diff --git a/drivers/net/thunderx/nicvf_ethdev.c b/drivers/net/thunderx/nicvf_ethdev.c
index 4f875c0..ad7d607 100644
--- a/drivers/net/thunderx/nicvf_ethdev.c
+++ b/drivers/net/thunderx/nicvf_ethdev.c
@@ -1762,26 +1762,12 @@ static struct eth_driver rte_nicvf_pmd = {
 		.name = "rte_nicvf_pmd",
 		.id_table = pci_id_nicvf_map,
 		.drv_flags = RTE_PCI_DRV_NEED_MAPPING | RTE_PCI_DRV_INTR_LSC,
+		.devinit = rte_eth_dev_pci_probe,
+		.devuninit = rte_eth_dev_pci_remove,
 	},
 	.eth_dev_init = nicvf_eth_dev_init,
 	.dev_private_size = sizeof(struct nicvf),
 };
 
-static int
-rte_nicvf_pmd_init(const char *name __rte_unused, const char *para __rte_unused)
-{
-	PMD_INIT_FUNC_TRACE();
-	PMD_INIT_LOG(INFO, "librte_pmd_thunderx nicvf version %s",
-			THUNDERX_NICVF_PMD_VERSION);
-
-	rte_eth_driver_register(&rte_nicvf_pmd);
-	return 0;
-}
-
-static struct rte_driver rte_nicvf_driver = {
-	.type = PMD_PDEV,
-	.init = rte_nicvf_pmd_init,
-};
-
-PMD_REGISTER_DRIVER(rte_nicvf_driver, thunderx_nicvf);
+DRIVER_REGISTER_PCI(thunderx_nicvf, rte_nicvf_pmd.pci_drv);
 DRIVER_REGISTER_PCI_TABLE(thunderx_nicvf, pci_id_nicvf_map);
diff --git a/drivers/net/virtio/virtio_ethdev.c b/drivers/net/virtio/virtio_ethdev.c
index 07d6449..5453709 100644
--- a/drivers/net/virtio/virtio_ethdev.c
+++ b/drivers/net/virtio/virtio_ethdev.c
@@ -1307,29 +1307,24 @@ static struct eth_driver rte_virtio_pmd = {
 		.name = "rte_virtio_pmd",
 		.id_table = pci_id_virtio_map,
 		.drv_flags = RTE_PCI_DRV_DETACHABLE,
+		.devinit = rte_eth_dev_pci_probe,
+		.devuninit = rte_eth_dev_pci_remove,
 	},
 	.eth_dev_init = eth_virtio_dev_init,
 	.eth_dev_uninit = eth_virtio_dev_uninit,
 	.dev_private_size = sizeof(struct virtio_hw),
 };
 
-/*
- * Driver initialization routine.
- * Invoked once at EAL init time.
- * Register itself as the [Poll Mode] Driver of PCI virtio devices.
- * Returns 0 on success.
- */
-static int
-rte_virtio_pmd_init(const char *name __rte_unused,
-		    const char *param __rte_unused)
+RTE_INIT(rte_virtio_pmd_init);
+static void
+rte_virtio_pmd_init(void)
 {
 	if (rte_eal_iopl_init() != 0) {
 		PMD_INIT_LOG(ERR, "IOPL call failed - cannot use virtio PMD");
-		return -1;
+		return;
 	}
 
-	rte_eth_driver_register(&rte_virtio_pmd);
-	return 0;
+	rte_eal_pci_register(&rte_virtio_pmd.pci_drv);
 }
 
 /*
@@ -1563,10 +1558,4 @@ __rte_unused uint8_t is_rx)
 	return 0;
 }
 
-static struct rte_driver rte_virtio_driver = {
-	.type = PMD_PDEV,
-	.init = rte_virtio_pmd_init,
-};
-
-PMD_REGISTER_DRIVER(rte_virtio_driver, virtio_net);
 DRIVER_REGISTER_PCI_TABLE(virtio_net, pci_id_virtio_map);
diff --git a/drivers/net/vmxnet3/vmxnet3_ethdev.c b/drivers/net/vmxnet3/vmxnet3_ethdev.c
index 5874215..d732979 100644
--- a/drivers/net/vmxnet3/vmxnet3_ethdev.c
+++ b/drivers/net/vmxnet3/vmxnet3_ethdev.c
@@ -331,26 +331,14 @@ static struct eth_driver rte_vmxnet3_pmd = {
 		.name = "rte_vmxnet3_pmd",
 		.id_table = pci_id_vmxnet3_map,
 		.drv_flags = RTE_PCI_DRV_NEED_MAPPING | RTE_PCI_DRV_DETACHABLE,
+		.devinit = rte_eth_dev_pci_probe,
+		.devuninit = rte_eth_dev_pci_remove,
 	},
 	.eth_dev_init = eth_vmxnet3_dev_init,
 	.eth_dev_uninit = eth_vmxnet3_dev_uninit,
 	.dev_private_size = sizeof(struct vmxnet3_hw),
 };
 
-/*
- * Driver initialization routine.
- * Invoked once at EAL init time.
- * Register itself as the [Poll Mode] Driver of Virtual PCI VMXNET3 devices.
- */
-static int
-rte_vmxnet3_pmd_init(const char *name __rte_unused, const char *param __rte_unused)
-{
-	PMD_INIT_FUNC_TRACE();
-
-	rte_eth_driver_register(&rte_vmxnet3_pmd);
-	return 0;
-}
-
 static int
 vmxnet3_dev_configure(struct rte_eth_dev *dev)
 {
@@ -948,10 +936,5 @@ vmxnet3_process_events(struct vmxnet3_hw *hw)
 }
 #endif
 
-static struct rte_driver rte_vmxnet3_driver = {
-	.type = PMD_PDEV,
-	.init = rte_vmxnet3_pmd_init,
-};
-
-PMD_REGISTER_DRIVER(rte_vmxnet3_driver, vmxnet3);
+DRIVER_REGISTER_PCI(vmxnet3, rte_vmxnet3_pmd.pci_drv);
 DRIVER_REGISTER_PCI_TABLE(vmxnet3, pci_id_vmxnet3_map);
-- 
2.7.4

  parent reply	other threads:[~2016-08-26 13:57 UTC|newest]

Thread overview: 375+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-01-29 14:08 [dpdk-dev] [PATCH 0/9] prepare for rte_device / rte_driver David Marchand
2016-01-29 14:08 ` [dpdk-dev] [PATCH 1/9] pci: no need for dynamic tailq init David Marchand
2016-02-08 10:32   ` viktorin
2016-01-29 14:08 ` [dpdk-dev] [PATCH 2/9] pci: register all pdev as pci drivers David Marchand
2016-02-08 11:03   ` Jan Viktorin
2016-02-09  8:55     ` David Marchand
2016-01-29 14:08 ` [dpdk-dev] [PATCH 3/9] drivers: no more pdev drivers David Marchand
2016-02-09 17:05   ` Jan Viktorin
2016-02-10  8:51     ` David Marchand
2016-02-10  9:27       ` David Marchand
2016-02-10 10:20         ` Jan Viktorin
2016-02-10 11:38           ` David Marchand
2016-02-10 12:29             ` Jan Viktorin
2016-01-29 14:08 ` [dpdk-dev] [PATCH 4/9] eal/linux: move back interrupt thread init before setting affinity David Marchand
2016-02-02  7:02   ` Rahul Lakkireddy
2016-02-02  7:13     ` David Marchand
2016-02-02  7:43       ` Rahul Lakkireddy
2016-01-29 14:08 ` [dpdk-dev] [PATCH 5/9] eal: get rid of pmd type David Marchand
2016-02-09 17:15   ` Jan Viktorin
2016-01-29 14:08 ` [dpdk-dev] [PATCH 6/9] eal: initialize vdevs right next to pci devices David Marchand
2016-02-10 11:05   ` Jan Viktorin
2016-02-10 11:43     ` David Marchand
2016-01-29 14:08 ` [dpdk-dev] [PATCH 7/9] pci: add a helper for device name David Marchand
2016-02-10 11:10   ` Jan Viktorin
2016-02-10 12:04     ` David Marchand
2016-01-29 14:08 ` [dpdk-dev] [PATCH 8/9] pci: add a helper to refresh a device David Marchand
2016-02-10 11:23   ` Jan Viktorin
2016-02-10 12:00     ` David Marchand
2016-02-10 12:20       ` Jan Viktorin
2016-01-29 14:08 ` [dpdk-dev] [PATCH 9/9] eal: relocate hotplug code from ethdev David Marchand
2016-04-20 11:44 ` [dpdk-dev] [PATCH v2 00/17] prepare for rte_device / rte_driver David Marchand
2016-04-20 11:44   ` [dpdk-dev] [PATCH v2 01/17] pci: no need for dynamic tailq init David Marchand
2016-04-20 11:44   ` [dpdk-dev] [PATCH v2 02/17] crypto: no need for a crypto pmd type David Marchand
2016-04-20 11:44   ` [dpdk-dev] [PATCH v2 03/17] drivers: align pci driver definitions David Marchand
2016-04-20 11:44   ` [dpdk-dev] [PATCH v2 04/17] eal: remove duplicate function declaration David Marchand
2016-04-20 11:44   ` [dpdk-dev] [PATCH v2 05/17] eal: introduce init macros David Marchand
2016-04-20 12:33     ` Jan Viktorin
2016-04-20 11:44   ` [dpdk-dev] [PATCH v2 06/17] crypto: export init/uninit common wrappers for pci drivers David Marchand
2016-04-20 11:44   ` [dpdk-dev] [PATCH v2 07/17] ethdev: " David Marchand
2016-04-20 11:44   ` [dpdk-dev] [PATCH v2 08/17] drivers: convert all pdev drivers as " David Marchand
2016-04-20 11:44   ` [dpdk-dev] [PATCH v2 09/17] crypto: get rid of crypto driver register callback David Marchand
2016-04-20 11:44   ` [dpdk-dev] [PATCH v2 10/17] ethdev: get rid of eth " David Marchand
2016-04-20 11:44   ` [dpdk-dev] [PATCH v2 11/17] eal/linux: move back interrupt thread init before setting affinity David Marchand
2016-04-20 11:44   ` [dpdk-dev] [PATCH v2 12/17] pci: add a helper for device name David Marchand
2016-05-04 15:25     ` Bruce Richardson
2016-05-04 16:26       ` Thomas Monjalon
2016-05-04 16:36         ` Bruce Richardson
2016-04-20 11:44   ` [dpdk-dev] [PATCH v2 13/17] pci: add a helper to update a device David Marchand
2016-04-20 11:44   ` [dpdk-dev] [PATCH v2 14/17] ethdev: do not scan all pci devices on attach David Marchand
2016-04-20 11:44   ` [dpdk-dev] [PATCH v2 15/17] eal: add hotplug operations for pci and vdev David Marchand
2016-05-27 10:39     ` Iremonger, Bernard
2016-04-20 11:44   ` [dpdk-dev] [PATCH v2 16/17] ethdev: convert to eal hotplug David Marchand
2016-04-20 11:44   ` [dpdk-dev] [PATCH v2 17/17] ethdev: get rid of device type David Marchand
2016-04-20 12:05   ` [dpdk-dev] [PATCH v2 00/17] prepare for rte_device / rte_driver Bruce Richardson
2016-04-20 12:41     ` Jan Viktorin
2016-04-22 10:18       ` Jan Viktorin
2016-05-06  9:26       ` Declan Doherty
2016-05-06 11:46         ` Jan Viktorin
2016-05-27 10:23   ` Iremonger, Bernard
2016-06-16  6:32     ` Shreyansh Jain
2016-06-16  7:34       ` Thomas Monjalon
2016-06-16  8:23         ` Jan Viktorin
2016-06-16  9:19           ` Thomas Monjalon
2016-06-16 10:45             ` Jan Viktorin
2016-06-16  8:42         ` Shreyansh Jain
2016-06-16 10:48           ` Jan Viktorin
2016-06-16 14:06 ` [dpdk-dev] [PATCH v3 " Shreyansh Jain
2016-06-16 14:06   ` [dpdk-dev] [PATCH v3 01/17] pci: no need for dynamic tailq init Shreyansh Jain
2016-06-16 14:06   ` [dpdk-dev] [PATCH v3 02/17] crypto: no need for a crypto pmd type Shreyansh Jain
2016-06-16 14:06   ` [dpdk-dev] [PATCH v3 03/17] drivers: align pci driver definitions Shreyansh Jain
2016-06-16 14:06   ` [dpdk-dev] [PATCH v3 04/17] eal: remove duplicate function declaration Shreyansh Jain
2016-06-16 14:06   ` [dpdk-dev] [PATCH v3 05/17] eal: introduce init macros Shreyansh Jain
2016-06-16 14:06   ` [dpdk-dev] [PATCH v3 06/17] crypto: export init/uninit common wrappers for pci drivers Shreyansh Jain
2016-06-16 14:06   ` [dpdk-dev] [PATCH v3 07/17] ethdev: " Shreyansh Jain
2016-06-16 14:06   ` [dpdk-dev] [PATCH v3 08/17] drivers: convert all pdev drivers as " Shreyansh Jain
2016-06-16 14:06   ` [dpdk-dev] [PATCH v3 09/17] crypto: get rid of crypto driver register callback Shreyansh Jain
2016-06-16 14:06   ` [dpdk-dev] [PATCH v3 10/17] ethdev: get rid of eth " Shreyansh Jain
2016-06-20  6:16     ` Shreyansh jain
2016-06-16 14:06   ` [dpdk-dev] [PATCH v3 11/17] eal/linux: move back interrupt thread init before setting affinity Shreyansh Jain
2016-06-16 14:06   ` [dpdk-dev] [PATCH v3 12/17] pci: add a helper for device name Shreyansh Jain
2016-06-16 14:06   ` [dpdk-dev] [PATCH v3 13/17] pci: add a helper to update a device Shreyansh Jain
2016-06-16 14:06   ` [dpdk-dev] [PATCH v3 14/17] ethdev: do not scan all pci devices on attach Shreyansh Jain
2016-06-16 14:06   ` [dpdk-dev] [PATCH v3 15/17] eal: add hotplug operations for pci and vdev Shreyansh Jain
2016-06-16 14:06   ` [dpdk-dev] [PATCH v3 16/17] ethdev: convert to eal hotplug Shreyansh Jain
2016-06-16 14:06   ` [dpdk-dev] [PATCH v3 17/17] ethdev: get rid of device type Shreyansh Jain
2016-06-21 12:02 ` [dpdk-dev] [PATCH v4 00/17] prepare for rte_device / rte_driver Shreyansh Jain
2016-06-21 12:02   ` [dpdk-dev] [PATCH v4 01/17] pci: no need for dynamic tailq init Shreyansh Jain
2016-06-21 12:02   ` [dpdk-dev] [PATCH v4 02/17] crypto: no need for a crypto pmd type Shreyansh Jain
2016-06-21 12:02   ` [dpdk-dev] [PATCH v4 03/17] drivers: align pci driver definitions Shreyansh Jain
2016-06-21 12:02   ` [dpdk-dev] [PATCH v4 04/17] eal: remove duplicate function declaration Shreyansh Jain
2016-06-21 12:02   ` [dpdk-dev] [PATCH v4 05/17] eal: introduce init macros Shreyansh Jain
2016-06-21 12:02   ` [dpdk-dev] [PATCH v4 06/17] crypto: export init/uninit common wrappers for pci drivers Shreyansh Jain
2016-06-21 12:02   ` [dpdk-dev] [PATCH v4 07/17] ethdev: " Shreyansh Jain
2016-06-21 12:02   ` [dpdk-dev] [PATCH v4 08/17] drivers: convert all pdev drivers as " Shreyansh Jain
2016-06-21 12:02   ` [dpdk-dev] [PATCH v4 09/17] crypto: get rid of crypto driver register callback Shreyansh Jain
2016-06-21 12:02   ` [dpdk-dev] [PATCH v4 10/17] ethdev: get rid of eth " Shreyansh Jain
2016-06-21 12:02   ` [dpdk-dev] [PATCH v4 11/17] eal/linux: move back interrupt thread init before setting affinity Shreyansh Jain
2016-06-21 12:02   ` [dpdk-dev] [PATCH v4 12/17] pci: add a helper for device name Shreyansh Jain
2016-06-21 12:02   ` [dpdk-dev] [PATCH v4 13/17] pci: add a helper to update a device Shreyansh Jain
2016-06-21 12:02   ` [dpdk-dev] [PATCH v4 14/17] ethdev: do not scan all pci devices on attach Shreyansh Jain
2016-06-21 12:02   ` [dpdk-dev] [PATCH v4 15/17] eal: add hotplug operations for pci and vdev Shreyansh Jain
2016-06-21 12:02   ` [dpdk-dev] [PATCH v4 16/17] ethdev: convert to eal hotplug Shreyansh Jain
2016-06-21 12:02   ` [dpdk-dev] [PATCH v4 17/17] ethdev: get rid of device type Shreyansh Jain
2016-06-21 12:31   ` [dpdk-dev] [PATCH v4 00/17] prepare for rte_device / rte_driver Shreyansh jain
2016-06-22  9:06   ` [dpdk-dev] [PATCH v5 00/17] Prepare " Shreyansh Jain
2016-06-22  9:06     ` [dpdk-dev] [PATCH v5 01/17] pci: no need for dynamic tailq init Shreyansh Jain
2016-06-22  9:06     ` [dpdk-dev] [PATCH v5 02/17] crypto: no need for a crypto pmd type Shreyansh Jain
2016-06-22  9:06     ` [dpdk-dev] [PATCH v5 03/17] drivers: align pci driver definitions Shreyansh Jain
2016-06-22  9:06     ` [dpdk-dev] [PATCH v5 04/17] eal: remove duplicate function declaration Shreyansh Jain
2016-06-22  9:06     ` [dpdk-dev] [PATCH v5 05/17] eal: introduce init macros Shreyansh Jain
2016-06-22  9:06     ` [dpdk-dev] [PATCH v5 06/17] crypto: export init/uninit common wrappers for pci drivers Shreyansh Jain
2016-06-22  9:06     ` [dpdk-dev] [PATCH v5 07/17] ethdev: " Shreyansh Jain
2016-06-22  9:06     ` [dpdk-dev] [PATCH v5 08/17] drivers: convert all pdev drivers as " Shreyansh Jain
2016-06-22  9:06     ` [dpdk-dev] [PATCH v5 09/17] crypto: get rid of crypto driver register callback Shreyansh Jain
2016-06-22 13:27       ` Neil Horman
2016-06-22 13:43         ` Shreyansh jain
2016-06-22 13:44         ` Thomas Monjalon
2016-06-22  9:06     ` [dpdk-dev] [PATCH v5 10/17] ethdev: get rid of eth " Shreyansh Jain
2016-06-22 13:28       ` Neil Horman
2016-06-22 13:44         ` Shreyansh jain
2016-06-22  9:06     ` [dpdk-dev] [PATCH v5 11/17] eal/linux: move back interrupt thread init before setting affinity Shreyansh Jain
2016-06-22  9:06     ` [dpdk-dev] [PATCH v5 12/17] pci: add a helper for device name Shreyansh Jain
2016-06-22  9:06     ` [dpdk-dev] [PATCH v5 13/17] pci: add a helper to update a device Shreyansh Jain
2016-06-22  9:06     ` [dpdk-dev] [PATCH v5 14/17] ethdev: do not scan all pci devices on attach Shreyansh Jain
2016-06-22  9:06     ` [dpdk-dev] [PATCH v5 15/17] eal: add hotplug operations for pci and vdev Shreyansh Jain
2016-06-22  9:06     ` [dpdk-dev] [PATCH v5 16/17] ethdev: convert to eal hotplug Shreyansh Jain
2016-06-22  9:06     ` [dpdk-dev] [PATCH v5 17/17] ethdev: get rid of device type Shreyansh Jain
2016-07-12  6:01   ` [dpdk-dev] [PATCH v6 00/17] Prepare for rte_device / rte_driver Shreyansh Jain
2016-07-12  6:01     ` [dpdk-dev] [PATCH v6 01/17] pci: no need for dynamic tailq init Shreyansh Jain
2016-07-14 17:11       ` viktorin
2016-07-12  6:01     ` [dpdk-dev] [PATCH v6 02/17] crypto: no need for a crypto pmd type Shreyansh Jain
2016-07-14 17:14       ` viktorin
2016-07-12  6:01     ` [dpdk-dev] [PATCH v6 03/17] drivers: align pci driver definitions Shreyansh Jain
2016-07-14 17:12       ` viktorin
2016-07-12  6:01     ` [dpdk-dev] [PATCH v6 04/17] eal: remove duplicate function declaration Shreyansh Jain
2016-07-14 17:13       ` viktorin
2016-07-12  6:01     ` [dpdk-dev] [PATCH v6 05/17] eal: introduce init macros Shreyansh Jain
2016-07-13  9:20       ` Jan Viktorin
2016-07-13 17:34         ` Jan Viktorin
2016-07-14  5:27           ` Shreyansh jain
2016-07-14 15:57             ` Jan Viktorin
2016-07-15 10:48               ` Shreyansh jain
2016-07-15 12:38                 ` Thomas Monjalon
2016-07-28  9:36                 ` Shreyansh Jain
2016-07-30  8:14                   ` Jan Viktorin
2016-08-01 11:00                     ` Shreyansh Jain
2016-07-12  6:01     ` [dpdk-dev] [PATCH v6 06/17] crypto: export init/uninit common wrappers for pci drivers Shreyansh Jain
2016-07-14 17:06       ` viktorin
2016-07-12  6:01     ` [dpdk-dev] [PATCH v6 07/17] ethdev: " Shreyansh Jain
2016-07-14 17:06       ` viktorin
2016-07-12  6:01     ` [dpdk-dev] [PATCH v6 08/17] drivers: convert all pdev drivers as " Shreyansh Jain
2016-07-12  6:01     ` [dpdk-dev] [PATCH v6 09/17] crypto: get rid of crypto driver register callback Shreyansh Jain
2016-07-14 17:10       ` viktorin
2016-07-12  6:01     ` [dpdk-dev] [PATCH v6 10/17] ethdev: get rid of eth " Shreyansh Jain
2016-07-14 17:09       ` viktorin
2016-07-12  6:01     ` [dpdk-dev] [PATCH v6 11/17] eal/linux: move back interrupt thread init before setting affinity Shreyansh Jain
2016-07-14 17:09       ` viktorin
2016-07-12  6:01     ` [dpdk-dev] [PATCH v6 12/17] pci: add a helper for device name Shreyansh Jain
2016-07-14 16:55       ` Jan Viktorin
2016-07-15  9:39         ` Shreyansh jain
2016-07-15  9:56           ` Thomas Monjalon
2016-07-15 11:32             ` Jan Viktorin
2016-07-15  9:56           ` Jan Viktorin
2016-07-15 13:14           ` Shreyansh Jain
2016-07-12  6:01     ` [dpdk-dev] [PATCH v6 13/17] pci: add a helper to update a device Shreyansh Jain
2016-07-14 17:01       ` Jan Viktorin
2016-07-15  9:44         ` Shreyansh jain
2016-07-12  6:01     ` [dpdk-dev] [PATCH v6 14/17] ethdev: do not scan all pci devices on attach Shreyansh Jain
2016-07-12  6:01     ` [dpdk-dev] [PATCH v6 15/17] eal: add hotplug operations for pci and vdev Shreyansh Jain
2016-07-14 16:50       ` Jan Viktorin
2016-07-15  9:52         ` Shreyansh jain
2016-07-12  6:01     ` [dpdk-dev] [PATCH v6 16/17] ethdev: convert to eal hotplug Shreyansh Jain
2016-07-14 16:51       ` Jan Viktorin
2016-07-15 10:36         ` Shreyansh jain
2016-07-15 11:27           ` Jan Viktorin
2016-07-12  6:01     ` [dpdk-dev] [PATCH v6 17/17] ethdev: get rid of device type Shreyansh Jain
2016-07-14 16:33       ` Jan Viktorin
2016-08-01 10:45   ` [dpdk-dev] [PATCH v7 00/17] Prepare for rte_device / rte_driver Shreyansh Jain
2016-08-01 10:45     ` [dpdk-dev] [PATCH v7 01/17] pci: no need for dynamic tailq init Shreyansh Jain
2016-08-01 10:45     ` [dpdk-dev] [PATCH v7 02/17] crypto: no need for a crypto pmd type Shreyansh Jain
2016-08-01 10:45     ` [dpdk-dev] [PATCH v7 03/17] drivers: align pci driver definitions Shreyansh Jain
2016-08-01 10:45     ` [dpdk-dev] [PATCH v7 04/17] eal: remove duplicate function declaration Shreyansh Jain
2016-08-01 10:45     ` [dpdk-dev] [PATCH v7 05/17] eal: introduce init macros Shreyansh Jain
2016-08-01 10:45     ` [dpdk-dev] [PATCH v7 06/17] crypto: export init/uninit common wrappers for pci drivers Shreyansh Jain
2016-08-01 10:45     ` [dpdk-dev] [PATCH v7 07/17] ethdev: " Shreyansh Jain
2016-08-01 10:45     ` [dpdk-dev] [PATCH v7 08/17] drivers: convert all pdev drivers as " Shreyansh Jain
2016-08-01 10:45     ` [dpdk-dev] [PATCH v7 09/17] crypto: get rid of crypto driver register callback Shreyansh Jain
2016-08-01 10:45     ` [dpdk-dev] [PATCH v7 10/17] ethdev: get rid of eth " Shreyansh Jain
2016-08-01 10:45     ` [dpdk-dev] [PATCH v7 11/17] eal/linux: move back interrupt thread init before setting affinity Shreyansh Jain
2016-08-01 10:45     ` [dpdk-dev] [PATCH v7 12/17] pci: add a helper for device name Shreyansh Jain
2016-08-01 10:45     ` [dpdk-dev] [PATCH v7 13/17] pci: add a helper to update a device Shreyansh Jain
2016-08-01 10:45     ` [dpdk-dev] [PATCH v7 14/17] ethdev: do not scan all pci devices on attach Shreyansh Jain
2016-08-01 10:45     ` [dpdk-dev] [PATCH v7 15/17] eal: add hotplug operations for pci and vdev Shreyansh Jain
2016-08-01 10:45     ` [dpdk-dev] [PATCH v7 16/17] ethdev: convert to eal hotplug Shreyansh Jain
2016-08-01 10:45     ` [dpdk-dev] [PATCH v7 17/17] ethdev: get rid of device type Shreyansh Jain
2016-08-01 15:43     ` [dpdk-dev] [PATCH v7 00/17] Prepare for rte_device / rte_driver Jan Viktorin
2016-08-26 13:56   ` [dpdk-dev] [PATCH v8 00/25] Introducing rte_driver/rte_device generalization Shreyansh Jain
2016-08-26 13:56     ` [dpdk-dev] [PATCH v8 01/25] eal: define macro container_of Shreyansh Jain
2016-08-29 16:43       ` Ferruh Yigit
2016-08-30  4:27         ` Shreyansh Jain
2016-08-30 10:30           ` Thomas Monjalon
2016-08-30 11:59             ` Shreyansh Jain
2016-08-30 13:42               ` Thomas Monjalon
2016-08-31  4:26                 ` Shreyansh Jain
2016-08-30  4:31         ` Shreyansh Jain
2016-09-08  5:45         ` Shreyansh Jain
2016-08-26 13:56     ` [dpdk-dev] [PATCH v8 02/25] eal: remove duplicate function declaration Shreyansh Jain
2016-08-26 13:56     ` [dpdk-dev] [PATCH v8 03/25] pci: no need for dynamic tailq init Shreyansh Jain
2016-08-26 13:56     ` [dpdk-dev] [PATCH v8 04/25] crypto: no need for a crypto pmd type Shreyansh Jain
2016-08-26 13:56     ` [dpdk-dev] [PATCH v8 05/25] drivers: align pci driver definitions Shreyansh Jain
2016-08-26 13:56     ` [dpdk-dev] [PATCH v8 06/25] eal: introduce init macros Shreyansh Jain
2016-08-26 13:56     ` [dpdk-dev] [PATCH v8 07/25] driver: init/uninit common wrappers for PCI drivers Shreyansh Jain
2016-08-26 13:56     ` Shreyansh Jain [this message]
2016-08-26 13:56     ` [dpdk-dev] [PATCH v8 09/25] driver: Remove driver register callbacks for crypto/net Shreyansh Jain
2016-08-29 17:20       ` Ferruh Yigit
2016-08-30  4:36         ` Shreyansh Jain
2016-09-08  5:46         ` Shreyansh Jain
2016-08-26 13:56     ` [dpdk-dev] [PATCH v8 10/25] eal/pci: Helpers for device name parsing/update Shreyansh Jain
2016-08-30 16:34       ` Pattan, Reshma
2016-08-31  4:24         ` Shreyansh Jain
2016-09-08  5:48         ` Shreyansh Jain
2016-08-26 13:56     ` [dpdk-dev] [PATCH v8 11/25] ethdev: do not scan all pci devices on attach Shreyansh Jain
2016-08-26 13:56     ` [dpdk-dev] [PATCH v8 12/25] eal: add hotplug operations for pci and vdev Shreyansh Jain
2016-08-26 13:56     ` [dpdk-dev] [PATCH v8 13/25] ethdev: convert to eal hotplug Shreyansh Jain
2016-08-26 13:56     ` [dpdk-dev] [PATCH v8 14/25] ethdev: get rid of device type Shreyansh Jain
2016-08-26 13:56     ` [dpdk-dev] [PATCH v8 15/25] eal: extract vdev infra Shreyansh Jain
2016-08-26 13:56     ` [dpdk-dev] [PATCH v8 16/25] eal: Remove PDEV/VDEV unused code Shreyansh Jain
2016-08-26 13:56     ` [dpdk-dev] [PATCH v8 17/25] drivers: convert PMD_VDEV drivers to use rte_vdev_driver Shreyansh Jain
2016-08-29 16:57       ` Ferruh Yigit
2016-08-30  4:38         ` Shreyansh Jain
2016-09-08  5:49         ` Shreyansh Jain
2016-08-26 13:56     ` [dpdk-dev] [PATCH v8 18/25] eal: move init/uninit to rte_vdev_driver Shreyansh Jain
2016-08-26 13:56     ` [dpdk-dev] [PATCH v8 19/25] eal: remove PMD_DRIVER_REGISTER and unused pmd_types Shreyansh Jain
2016-08-26 13:56     ` [dpdk-dev] [PATCH v8 20/25] eal: rte_pci.h includes rte_dev.h Shreyansh Jain
2016-08-26 13:56     ` [dpdk-dev] [PATCH v8 21/25] eal: rename and move rte_pci_resource Shreyansh Jain
2016-08-26 13:57     ` [dpdk-dev] [PATCH v8 22/25] eal/pci: inherit rte_driver by rte_pci_driver Shreyansh Jain
2016-08-29 16:49       ` Ferruh Yigit
2016-08-30  4:59         ` Shreyansh Jain
2016-09-08  5:51         ` Shreyansh Jain
2016-08-30 15:47       ` Ferruh Yigit
2016-09-01 13:54         ` Shreyansh Jain
2016-08-26 13:57     ` [dpdk-dev] [PATCH v8 23/25] eal: call rte_eal_driver_register Shreyansh Jain
2016-08-26 13:57     ` [dpdk-dev] [PATCH v8 24/25] eal: introduce rte_device Shreyansh Jain
2016-08-26 13:57     ` [dpdk-dev] [PATCH v8 25/25] eal/pci: Create rte_device list and fallback on its members Shreyansh Jain
2016-08-29 16:53       ` Ferruh Yigit
2016-08-30  4:38         ` Shreyansh Jain
2016-09-08  5:55         ` Shreyansh Jain
2016-09-08  8:33           ` Ferruh Yigit
2016-08-30 13:27     ` [dpdk-dev] [PATCH v8 00/25] Introducing rte_driver/rte_device generalization Ferruh Yigit
2016-09-01 12:36       ` Shreyansh Jain
2016-09-08  7:03         ` Shreyansh Jain
2016-09-01 18:29     ` Jan Viktorin
2016-09-02  5:32       ` Shreyansh Jain
2016-09-07 14:07   ` [dpdk-dev] [PATCH v9 " Shreyansh Jain
2016-09-07 14:07     ` [dpdk-dev] [PATCH v9 01/25] eal: define macro container_of Shreyansh Jain
2016-09-08 14:16       ` Ferruh Yigit
2016-09-09  4:19         ` Shreyansh Jain
2016-09-09  8:55           ` Adrien Mazarguil
2016-09-09 10:44             ` Shreyansh Jain
2016-09-07 14:07     ` [dpdk-dev] [PATCH v9 02/25] eal: remove duplicate function declaration Shreyansh Jain
2016-09-07 14:07     ` [dpdk-dev] [PATCH v9 03/25] pci: no need for dynamic tailq init Shreyansh Jain
2016-09-07 14:07     ` [dpdk-dev] [PATCH v9 04/25] crypto: no need for a crypto pmd type Shreyansh Jain
2016-09-07 14:07     ` [dpdk-dev] [PATCH v9 05/25] drivers: align pci driver definitions Shreyansh Jain
2016-09-07 14:07     ` [dpdk-dev] [PATCH v9 06/25] eal: introduce init macros Shreyansh Jain
2016-09-12  7:15       ` David Marchand
2016-09-15  7:28         ` Shreyansh Jain
2016-09-07 14:07     ` [dpdk-dev] [PATCH v9 07/25] driver: init/uninit common wrappers for PCI drivers Shreyansh Jain
2016-09-12  7:16       ` David Marchand
2016-09-12  9:55         ` Thomas Monjalon
2016-09-07 14:08     ` [dpdk-dev] [PATCH v9 08/25] drivers: convert all pdev drivers as pci drivers Shreyansh Jain
2016-09-12  7:16       ` David Marchand
2016-09-16  4:49         ` Shreyansh Jain
2016-09-07 14:08     ` [dpdk-dev] [PATCH v9 09/25] driver: Remove driver register callbacks for crypto/net Shreyansh Jain
2016-09-07 14:08     ` [dpdk-dev] [PATCH v9 10/25] eal/pci: Helpers for device name parsing/update Shreyansh Jain
2016-09-07 14:08     ` [dpdk-dev] [PATCH v9 11/25] ethdev: do not scan all pci devices on attach Shreyansh Jain
2016-09-07 14:08     ` [dpdk-dev] [PATCH v9 12/25] eal: add hotplug operations for pci and vdev Shreyansh Jain
2016-09-07 14:08     ` [dpdk-dev] [PATCH v9 13/25] ethdev: convert to eal hotplug Shreyansh Jain
2016-09-12  7:16       ` David Marchand
2016-09-15  7:29         ` Shreyansh Jain
2016-09-07 14:08     ` [dpdk-dev] [PATCH v9 14/25] ethdev: get rid of device type Shreyansh Jain
2016-09-07 14:08     ` [dpdk-dev] [PATCH v9 15/25] eal: extract vdev infra Shreyansh Jain
2016-09-07 14:08     ` [dpdk-dev] [PATCH v9 16/25] eal: Remove PDEV/VDEV unused code Shreyansh Jain
2016-09-07 14:08     ` [dpdk-dev] [PATCH v9 17/25] drivers: convert PMD_VDEV drivers to use rte_vdev_driver Shreyansh Jain
2016-09-11 11:55       ` Yuanhan Liu
2016-09-12  4:39         ` Shreyansh Jain
2016-09-07 14:08     ` [dpdk-dev] [PATCH v9 18/25] eal: move init/uninit to rte_vdev_driver Shreyansh Jain
2016-09-07 14:08     ` [dpdk-dev] [PATCH v9 19/25] eal: remove PMD_DRIVER_REGISTER and unused pmd_types Shreyansh Jain
2016-09-07 14:08     ` [dpdk-dev] [PATCH v9 20/25] eal: rte_pci.h includes rte_dev.h Shreyansh Jain
2016-09-07 14:08     ` [dpdk-dev] [PATCH v9 21/25] eal: rename and move rte_pci_resource Shreyansh Jain
2016-09-07 14:08     ` [dpdk-dev] [PATCH v9 22/25] eal/pci: inherit rte_driver by rte_pci_driver Shreyansh Jain
2016-09-08 14:25       ` Ferruh Yigit
2016-09-16  4:47         ` Shreyansh Jain
2016-09-07 14:08     ` [dpdk-dev] [PATCH v9 23/25] eal: call rte_eal_driver_register Shreyansh Jain
2016-09-07 14:08     ` [dpdk-dev] [PATCH v9 24/25] eal: introduce rte_device Shreyansh Jain
2016-09-07 14:08     ` [dpdk-dev] [PATCH v9 25/25] eal/pci: Create rte_device list and fallback on its members Shreyansh Jain
2016-09-07 18:40     ` [dpdk-dev] [PATCH v9 00/25] Introducing rte_driver/rte_device generalization Stephen Hemminger
2016-09-08  7:10       ` Shreyansh Jain
2016-09-08 16:49         ` Stephen Hemminger
2016-09-09 11:42           ` Shreyansh Jain
2016-09-09 16:11     ` Declan Doherty
2016-09-13 11:15       ` Shreyansh Jain
2016-09-12  7:32     ` David Marchand
2016-09-16  4:29   ` [dpdk-dev] [PATCH v10 " Shreyansh Jain
2016-09-16  4:29     ` [dpdk-dev] [PATCH v10 01/25] eal: define container macro Shreyansh Jain
2016-09-16  4:29     ` [dpdk-dev] [PATCH v10 02/25] eal: remove duplicate function declaration Shreyansh Jain
2016-09-16 11:42       ` Jan Viktorin
2016-09-16  4:29     ` [dpdk-dev] [PATCH v10 03/25] pci: no need for dynamic tailq init Shreyansh Jain
2016-09-16  4:29     ` [dpdk-dev] [PATCH v10 04/25] eal/pci: replace PCI devinit/devuninit with probe/remove Shreyansh Jain
2016-09-16  4:29     ` [dpdk-dev] [PATCH v10 05/25] crypto: no need for a crypto pmd type Shreyansh Jain
2016-09-16 11:49       ` Jan Viktorin
2016-09-16  4:29     ` [dpdk-dev] [PATCH v10 06/25] drivers: align PCI driver definitions Shreyansh Jain
2016-09-16  4:29     ` [dpdk-dev] [PATCH v10 07/25] eal: introduce PCI device init macros Shreyansh Jain
2016-09-16  4:29     ` [dpdk-dev] [PATCH v10 08/25] driver: init/uninit common wrappers for PCI drivers Shreyansh Jain
2016-09-16  4:29     ` [dpdk-dev] [PATCH v10 09/25] drivers: convert all phy drivers as " Shreyansh Jain
2016-09-16  4:29     ` [dpdk-dev] [PATCH v10 10/25] drivers: remove driver register callbacks for crypto/net Shreyansh Jain
2016-09-16  4:29     ` [dpdk-dev] [PATCH v10 11/25] eal/pci: helpers for device name parsing/update Shreyansh Jain
2016-10-25 15:49       ` Pattan, Reshma
2016-10-26  6:23         ` Shreyansh Jain
2016-10-26  9:12           ` Pattan, Reshma
2016-09-16  4:29     ` [dpdk-dev] [PATCH v10 12/25] ethdev: do not scan all PCI devices on attach Shreyansh Jain
2016-09-16  4:29     ` [dpdk-dev] [PATCH v10 13/25] eal: add hotplug operations for PCI and VDEV Shreyansh Jain
2016-09-16  4:29     ` [dpdk-dev] [PATCH v10 14/25] ethdev: convert to EAL hotplug Shreyansh Jain
2016-09-16  4:29     ` [dpdk-dev] [PATCH v10 15/25] ethdev: get rid of device type Shreyansh Jain
2016-09-16  4:29     ` [dpdk-dev] [PATCH v10 16/25] eal: extract vdev infra Shreyansh Jain
2016-09-16  4:29     ` [dpdk-dev] [PATCH v10 17/25] eal: remove PDEV/VDEV unused code Shreyansh Jain
2016-09-16  4:29     ` [dpdk-dev] [PATCH v10 18/25] drivers: convert VDRV to use RTE VDEV Driver Shreyansh Jain
2016-09-16  4:29     ` [dpdk-dev] [PATCH v10 19/25] eal: remove unused PMD types Shreyansh Jain
2016-09-16  4:29     ` [dpdk-dev] [PATCH v10 20/25] eal: include dev headers in place of PCI headers Shreyansh Jain
2016-09-16  4:29     ` [dpdk-dev] [PATCH v10 21/25] eal: rename and move RTE PCI Resources Shreyansh Jain
2016-09-16  4:29     ` [dpdk-dev] [PATCH v10 22/25] eal/pci: inherit RTE driver in PCI driver Shreyansh Jain
2016-09-16  4:29     ` [dpdk-dev] [PATCH v10 23/25] eal: register EAL drivers explicitly Shreyansh Jain
2016-09-16  4:29     ` [dpdk-dev] [PATCH v10 24/25] eal: introduce generalized RTE device Shreyansh Jain
2016-09-16  4:30     ` [dpdk-dev] [PATCH v10 25/25] eal/pci: create RTE device list and fallback on its members Shreyansh Jain
     [not found]     ` <CALwxeUusnzO9daPnHkkf5QhY6_g67f-9oDzKcrhzXj7X3Lm_kQ@mail.gmail.com>
2016-09-16 14:29       ` [dpdk-dev] [PATCH v10 00/25] Introducing rte_driver/rte_device generalization David Marchand
2016-09-17 18:50       ` Shreyansh Jain
2016-09-20 12:41   ` [dpdk-dev] [PATCH v11 00/24] " Shreyansh Jain
2016-09-20 12:41     ` [dpdk-dev] [PATCH v11 01/24] eal: remove duplicate function declaration Shreyansh Jain
2016-09-20 12:41     ` [dpdk-dev] [PATCH v11 02/24] pci: no need for dynamic tailq init Shreyansh Jain
2016-09-20 12:41     ` [dpdk-dev] [PATCH v11 03/24] eal/pci: replace PCI devinit/devuninit with probe/remove Shreyansh Jain
2016-09-20 12:41     ` [dpdk-dev] [PATCH v11 04/24] crypto: no need for a crypto pmd type Shreyansh Jain
2016-09-20 12:41     ` [dpdk-dev] [PATCH v11 05/24] drivers: align PCI driver definitions Shreyansh Jain
2016-09-20 12:41     ` [dpdk-dev] [PATCH v11 06/24] eal: introduce PCI device init macros Shreyansh Jain
2016-09-20 12:41     ` [dpdk-dev] [PATCH v11 07/24] driver: probe/remove common wrappers for PCI drivers Shreyansh Jain
2016-10-03 14:21       ` Thomas Monjalon
2016-10-04  6:16         ` Shreyansh Jain
2016-09-20 12:41     ` [dpdk-dev] [PATCH v11 08/24] drivers: convert all phy drivers as " Shreyansh Jain
2016-09-20 12:41     ` [dpdk-dev] [PATCH v11 09/24] drivers: remove driver register callbacks for crypto/net Shreyansh Jain
2016-09-20 12:41     ` [dpdk-dev] [PATCH v11 10/24] eal/pci: helpers for device name parsing/update Shreyansh Jain
2016-09-20 12:41     ` [dpdk-dev] [PATCH v11 11/24] ethdev: do not scan all PCI devices on attach Shreyansh Jain
2016-09-20 12:41     ` [dpdk-dev] [PATCH v11 12/24] eal: add hotplug operations for PCI and VDEV Shreyansh Jain
2016-09-20 12:41     ` [dpdk-dev] [PATCH v11 13/24] ethdev: convert to EAL hotplug Shreyansh Jain
2016-09-20 12:41     ` [dpdk-dev] [PATCH v11 14/24] ethdev: get rid of device type Shreyansh Jain
2016-09-20 12:41     ` [dpdk-dev] [PATCH v11 15/24] eal: extract vdev infra Shreyansh Jain
2016-09-20 12:41     ` [dpdk-dev] [PATCH v11 16/24] eal: remove PDEV/VDEV unused code Shreyansh Jain
2016-09-20 12:41     ` [dpdk-dev] [PATCH v11 17/24] drivers: convert VDRV to use RTE VDEV Driver Shreyansh Jain
2016-09-20 12:41     ` [dpdk-dev] [PATCH v11 18/24] eal: remove unused PMD types Shreyansh Jain
2016-09-20 12:41     ` [dpdk-dev] [PATCH v11 19/24] eal: include dev headers in place of PCI headers Shreyansh Jain
2016-09-20 12:41     ` [dpdk-dev] [PATCH v11 20/24] eal: rename and move RTE PCI Resources Shreyansh Jain
2016-09-20 12:41     ` [dpdk-dev] [PATCH v11 21/24] eal/pci: inherit RTE driver in PCI driver Shreyansh Jain
2016-09-20 12:41     ` [dpdk-dev] [PATCH v11 22/24] eal: register EAL drivers explicitly Shreyansh Jain
2016-09-20 12:41     ` [dpdk-dev] [PATCH v11 23/24] eal: introduce generalized RTE device Shreyansh Jain
2016-09-20 12:41     ` [dpdk-dev] [PATCH v11 24/24] eal/pci: create RTE device list and fallback on its members Shreyansh Jain
2016-09-21 19:03     ` [dpdk-dev] [PATCH v11 00/24] Introducing rte_driver/rte_device generalization Matej Vido
2016-09-22  4:25       ` Shreyansh Jain
2016-09-30 10:22     ` David Marchand
2016-10-03 14:28     ` Thomas Monjalon
2016-10-04  6:51       ` Shreyansh Jain
2016-10-04  7:42         ` Thomas Monjalon
2016-10-05 11:57           ` Shreyansh Jain
2016-10-17 13:43             ` Ferruh Yigit
2016-10-17 17:29               ` Shreyansh Jain
2016-10-18  9:23                 ` Ferruh Yigit
2016-10-19 11:13                   ` Shreyansh Jain
2016-10-18 13:04               ` Neil Horman
2016-10-18 13:47                 ` Thomas Monjalon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1472219823-29486-9-git-send-email-shreyansh.jain@nxp.com \
    --to=shreyansh.jain@nxp.com \
    --cc=david.marchand@6wind.com \
    --cc=dev@dpdk.org \
    --cc=hemant.agrawal@nxp.com \
    --cc=thomas.monjalon@6wind.com \
    --cc=viktorin@rehivetech.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).