[dpdk-dev] [PATCH 5/9] eal: get rid of pmd type

2016-02-09 Thread Jan Viktorin
On Fri, 29 Jan 2016 15:08:32 +0100
David Marchand  wrote:

> Now that we only have vdev drivers, there is no need for a pmd type in
> rte_driver.
> rte_driver is now purely a vdev thing, and could be renamed later
> (then .init would become .probe, .uninit would become .remove).
> 
> Signed-off-by: David Marchand 
> ---
>  drivers/crypto/aesni_mb/rte_aesni_mb_pmd.c |  2 ++
>  drivers/net/af_packet/rte_eth_af_packet.c  |  2 ++
>  drivers/net/bonding/rte_eth_bond_pmd.c |  2 ++
>  drivers/net/mpipe/mpipe_tilegx.c   |  4 
>  drivers/net/null/rte_eth_null.c|  2 ++
>  drivers/net/pcap/rte_eth_pcap.c|  2 ++
>  drivers/net/ring/rte_eth_ring.c|  2 ++
>  drivers/net/szedata2/rte_eth_szedata2.c|  2 ++
>  drivers/net/xenvirt/rte_eth_xenvirt.c  |  2 ++
>  lib/librte_cryptodev/rte_cryptodev.c   | 14 ++
>  lib/librte_cryptodev/rte_cryptodev.h   |  2 ++
>  lib/librte_cryptodev/rte_cryptodev_pmd.h   |  4 
>  lib/librte_eal/common/eal_common_dev.c | 11 ---
>  lib/librte_eal/common/include/rte_dev.h|  4 
>  14 files changed, 52 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/crypto/aesni_mb/rte_aesni_mb_pmd.c 
> b/drivers/crypto/aesni_mb/rte_aesni_mb_pmd.c
> index d8ccf05..94752de 100644
> --- a/drivers/crypto/aesni_mb/rte_aesni_mb_pmd.c
> +++ b/drivers/crypto/aesni_mb/rte_aesni_mb_pmd.c
> @@ -661,7 +661,9 @@ cryptodev_aesni_mb_uninit(const char *name)
>  
>  static struct rte_driver cryptodev_aesni_mb_pmd_drv = {
>   .name = CRYPTODEV_NAME_AESNI_MB_PMD,
> +#ifndef RTE_NEXT_ABI
>   .type = PMD_VDEV,
> +#endif

What about something like:

#ifdef RTE_NEXT_ABI
#define RTE_PMD_SET_TYPE(t)
#else
#define RTE_PMD_SET_TYPE(t) .type = PMD_##t
#endif

and then just:

static struct rte_driver cryptodev_aesni_mb_pmd_drv = {
.name = CRYPTODEV_NAME_AESNI_MB_PMD,
RTE_PMD_SET_TYPE(VDEV),

>   .init = cryptodev_aesni_mb_init,
>   .uninit = cryptodev_aesni_mb_uninit
>  };
> diff --git a/drivers/net/af_packet/rte_eth_af_packet.c 
> b/drivers/net/af_packet/rte_eth_af_packet.c
> index 767f36b..6603462 100644
> --- a/drivers/net/af_packet/rte_eth_af_packet.c
> +++ b/drivers/net/af_packet/rte_eth_af_packet.c
> @@ -838,7 +838,9 @@ exit:
> [snip]
>
>  struct rte_cryptodev *
> +#ifndef RTE_NEXT_ABI

And maybe...

#ifndef RTE_NEXT_ABI
#define RTE_PMD_HAS_TYPE
#endif

#ifdef RTE_PMD_HAS_TYPE

>  rte_cryptodev_pmd_allocate(const char *name, enum pmd_type type, int 
> socket_id)
> +#else
> +rte_cryptodev_pmd_allocate(const char *name, int socket_id)
> +#endif
>  {
>   struct rte_cryptodev *cryptodev;
>   uint8_t dev_id;
> [snip]

Regards
Jan


[dpdk-dev] [PATCH 5/9] eal: get rid of pmd type

2016-01-29 Thread David Marchand
Now that we only have vdev drivers, there is no need for a pmd type in
rte_driver.
rte_driver is now purely a vdev thing, and could be renamed later
(then .init would become .probe, .uninit would become .remove).

Signed-off-by: David Marchand 
---
 drivers/crypto/aesni_mb/rte_aesni_mb_pmd.c |  2 ++
 drivers/net/af_packet/rte_eth_af_packet.c  |  2 ++
 drivers/net/bonding/rte_eth_bond_pmd.c |  2 ++
 drivers/net/mpipe/mpipe_tilegx.c   |  4 
 drivers/net/null/rte_eth_null.c|  2 ++
 drivers/net/pcap/rte_eth_pcap.c|  2 ++
 drivers/net/ring/rte_eth_ring.c|  2 ++
 drivers/net/szedata2/rte_eth_szedata2.c|  2 ++
 drivers/net/xenvirt/rte_eth_xenvirt.c  |  2 ++
 lib/librte_cryptodev/rte_cryptodev.c   | 14 ++
 lib/librte_cryptodev/rte_cryptodev.h   |  2 ++
 lib/librte_cryptodev/rte_cryptodev_pmd.h   |  4 
 lib/librte_eal/common/eal_common_dev.c | 11 ---
 lib/librte_eal/common/include/rte_dev.h|  4 
 14 files changed, 52 insertions(+), 3 deletions(-)

diff --git a/drivers/crypto/aesni_mb/rte_aesni_mb_pmd.c 
b/drivers/crypto/aesni_mb/rte_aesni_mb_pmd.c
index d8ccf05..94752de 100644
--- a/drivers/crypto/aesni_mb/rte_aesni_mb_pmd.c
+++ b/drivers/crypto/aesni_mb/rte_aesni_mb_pmd.c
@@ -661,7 +661,9 @@ cryptodev_aesni_mb_uninit(const char *name)

 static struct rte_driver cryptodev_aesni_mb_pmd_drv = {
.name = CRYPTODEV_NAME_AESNI_MB_PMD,
+#ifndef RTE_NEXT_ABI
.type = PMD_VDEV,
+#endif
.init = cryptodev_aesni_mb_init,
.uninit = cryptodev_aesni_mb_uninit
 };
diff --git a/drivers/net/af_packet/rte_eth_af_packet.c 
b/drivers/net/af_packet/rte_eth_af_packet.c
index 767f36b..6603462 100644
--- a/drivers/net/af_packet/rte_eth_af_packet.c
+++ b/drivers/net/af_packet/rte_eth_af_packet.c
@@ -838,7 +838,9 @@ exit:

 static struct rte_driver pmd_af_packet_drv = {
.name = "eth_af_packet",
+#ifndef RTE_NEXT_ABI
.type = PMD_VDEV,
+#endif
.init = rte_pmd_af_packet_devinit,
 };

diff --git a/drivers/net/bonding/rte_eth_bond_pmd.c 
b/drivers/net/bonding/rte_eth_bond_pmd.c
index b1373c6..d19d745 100644
--- a/drivers/net/bonding/rte_eth_bond_pmd.c
+++ b/drivers/net/bonding/rte_eth_bond_pmd.c
@@ -2493,7 +2493,9 @@ bond_ethdev_configure(struct rte_eth_dev *dev)

 static struct rte_driver bond_drv = {
.name = "eth_bond",
+#ifndef RTE_NEXT_ABI
.type = PMD_VDEV,
+#endif
.init = bond_init,
.uninit = bond_uninit,
 };
diff --git a/drivers/net/mpipe/mpipe_tilegx.c b/drivers/net/mpipe/mpipe_tilegx.c
index 35134ba..3eaf0db 100644
--- a/drivers/net/mpipe/mpipe_tilegx.c
+++ b/drivers/net/mpipe/mpipe_tilegx.c
@@ -1608,13 +1608,17 @@ rte_pmd_mpipe_devinit(const char *ifname,

 static struct rte_driver pmd_mpipe_xgbe_drv = {
.name = "xgbe",
+#ifndef RTE_NEXT_ABI
.type = PMD_VDEV,
+#endif
.init = rte_pmd_mpipe_devinit,
 };

 static struct rte_driver pmd_mpipe_gbe_drv = {
.name = "gbe",
+#ifndef RTE_NEXT_ABI
.type = PMD_VDEV,
+#endif
.init = rte_pmd_mpipe_devinit,
 };

diff --git a/drivers/net/null/rte_eth_null.c b/drivers/net/null/rte_eth_null.c
index 77fc988..f5700bb 100644
--- a/drivers/net/null/rte_eth_null.c
+++ b/drivers/net/null/rte_eth_null.c
@@ -695,7 +695,9 @@ rte_pmd_null_devuninit(const char *name)

 static struct rte_driver pmd_null_drv = {
.name = "eth_null",
+#ifndef RTE_NEXT_ABI
.type = PMD_VDEV,
+#endif
.init = rte_pmd_null_devinit,
.uninit = rte_pmd_null_devuninit,
 };
diff --git a/drivers/net/pcap/rte_eth_pcap.c b/drivers/net/pcap/rte_eth_pcap.c
index f9230eb..9ab22be 100644
--- a/drivers/net/pcap/rte_eth_pcap.c
+++ b/drivers/net/pcap/rte_eth_pcap.c
@@ -1092,7 +1092,9 @@ rte_pmd_pcap_devuninit(const char *name)

 static struct rte_driver pmd_pcap_drv = {
.name = "eth_pcap",
+#ifndef RTE_NEXT_ABI
.type = PMD_VDEV,
+#endif
.init = rte_pmd_pcap_devinit,
.uninit = rte_pmd_pcap_devuninit,
 };
diff --git a/drivers/net/ring/rte_eth_ring.c b/drivers/net/ring/rte_eth_ring.c
index d92b088..9941a1c 100644
--- a/drivers/net/ring/rte_eth_ring.c
+++ b/drivers/net/ring/rte_eth_ring.c
@@ -596,7 +596,9 @@ rte_pmd_ring_devuninit(const char *name)

 static struct rte_driver pmd_ring_drv = {
.name = "eth_ring",
+#ifndef RTE_NEXT_ABI
.type = PMD_VDEV,
+#endif
.init = rte_pmd_ring_devinit,
.uninit = rte_pmd_ring_devuninit,
 };
diff --git a/drivers/net/szedata2/rte_eth_szedata2.c 
b/drivers/net/szedata2/rte_eth_szedata2.c
index 9f86c99..6bbb6b0 100644
--- a/drivers/net/szedata2/rte_eth_szedata2.c
+++ b/drivers/net/szedata2/rte_eth_szedata2.c
@@ -1616,7 +1616,9 @@ rte_pmd_szedata2_devuninit(const char *name)

 static struct rte_driver pmd_szedata2_drv = {
.name = "eth_szedata2",
+#ifndef RTE_NEXT_ABI
.type = PMD_VDEV,
+#endif
.init = rte_pmd_szedata2_devinit,
.uninit = rte_pmd_szedata2_devuninit,
 };