From: "Stokes, Ian" <ian.stokes@intel.com>
To: "Richardson, Bruce" <bruce.richardson@intel.com>,
"dev@dpdk.org" <dev@dpdk.org>
Cc: "Richardson, Bruce" <bruce.richardson@intel.com>
Subject: RE: [PATCH v5 3/4] drivers: move iavf common folder to iavf net
Date: Tue, 11 Feb 2025 14:12:32 +0000 [thread overview]
Message-ID: <MW6PR11MB8309FCC5041119B326B143C292FD2@MW6PR11MB8309.namprd11.prod.outlook.com> (raw)
In-Reply-To: <20250210164427.1118265-4-bruce.richardson@intel.com>
> The common/iavf driver folder contains the base code for the iavf
> driver, which is also linked against by the ice driver and others.
> However, there is no need for this to be in common, and we can
> move it to the net/intel/iavf as a base code driver. This involves
> updating dependencies that were on common/iavf to net/iavf
>
> Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
> ---
> devtools/libabigail.abignore | 1 +
> doc/guides/rel_notes/release_25_03.rst | 5 ++++-
> drivers/common/iavf/version.map | 13 -------------
> drivers/common/meson.build | 1 -
> .../{common/iavf => net/intel/iavf/base}/README | 0
> .../iavf => net/intel/iavf/base}/iavf_adminq.c | 0
> .../iavf => net/intel/iavf/base}/iavf_adminq.h | 0
> .../iavf => net/intel/iavf/base}/iavf_adminq_cmd.h | 0
> .../iavf => net/intel/iavf/base}/iavf_alloc.h | 0
> .../iavf => net/intel/iavf/base}/iavf_common.c | 0
> .../iavf => net/intel/iavf/base}/iavf_devids.h | 0
> .../iavf => net/intel/iavf/base}/iavf_impl.c | 0
> .../iavf => net/intel/iavf/base}/iavf_osdep.h | 0
> .../iavf => net/intel/iavf/base}/iavf_prototype.h | 0
> .../iavf => net/intel/iavf/base}/iavf_register.h | 0
> .../iavf => net/intel/iavf/base}/iavf_status.h | 0
> .../iavf => net/intel/iavf/base}/iavf_type.h | 0
> .../iavf => net/intel/iavf/base}/meson.build | 0
> .../iavf => net/intel/iavf/base}/virtchnl.h | 0
> .../intel/iavf/base}/virtchnl_inline_ipsec.h | 0
> drivers/net/intel/iavf/meson.build | 13 +++++++++----
> drivers/net/intel/iavf/version.map | 14 ++++++++++++++
> drivers/net/intel/ice/meson.build | 7 +++----
> drivers/net/intel/idpf/meson.build | 2 +-
> 24 files changed, 32 insertions(+), 24 deletions(-)
> delete mode 100644 drivers/common/iavf/version.map
> rename drivers/{common/iavf => net/intel/iavf/base}/README (100%)
> rename drivers/{common/iavf => net/intel/iavf/base}/iavf_adminq.c (100%)
> rename drivers/{common/iavf => net/intel/iavf/base}/iavf_adminq.h (100%)
> rename drivers/{common/iavf => net/intel/iavf/base}/iavf_adminq_cmd.h
> (100%)
> rename drivers/{common/iavf => net/intel/iavf/base}/iavf_alloc.h (100%)
> rename drivers/{common/iavf => net/intel/iavf/base}/iavf_common.c
> (100%)
> rename drivers/{common/iavf => net/intel/iavf/base}/iavf_devids.h (100%)
> rename drivers/{common/iavf => net/intel/iavf/base}/iavf_impl.c (100%)
> rename drivers/{common/iavf => net/intel/iavf/base}/iavf_osdep.h (100%)
> rename drivers/{common/iavf => net/intel/iavf/base}/iavf_prototype.h
> (100%)
> rename drivers/{common/iavf => net/intel/iavf/base}/iavf_register.h (100%)
> rename drivers/{common/iavf => net/intel/iavf/base}/iavf_status.h (100%)
> rename drivers/{common/iavf => net/intel/iavf/base}/iavf_type.h (100%)
> rename drivers/{common/iavf => net/intel/iavf/base}/meson.build (100%)
> rename drivers/{common/iavf => net/intel/iavf/base}/virtchnl.h (100%)
> rename drivers/{common/iavf => net/intel/iavf/base}/virtchnl_inline_ipsec.h
> (100%)
>
> diff --git a/devtools/libabigail.abignore b/devtools/libabigail.abignore
> index b7daca4841..ce501632b3 100644
> --- a/devtools/libabigail.abignore
> +++ b/devtools/libabigail.abignore
> @@ -23,6 +23,7 @@
> ; This is not a libabigail rule (see check-abi.sh).
> ; This is used for driver removal and other special cases like mlx glue libs.
> ;
> +; SKIP_LIBRARY=librte_common_iavf
> ; SKIP_LIBRARY=librte_common_idpf
> ; SKIP_LIBRARY=librte_common_mlx5_glue
> ; SKIP_LIBRARY=librte_net_mlx4_glue
> diff --git a/doc/guides/rel_notes/release_25_03.rst
> b/doc/guides/rel_notes/release_25_03.rst
> index 2338a97e76..d2e8b03107 100644
> --- a/doc/guides/rel_notes/release_25_03.rst
> +++ b/doc/guides/rel_notes/release_25_03.rst
> @@ -182,9 +182,12 @@ API Changes
> ``-Denable_drivers=net/intel/e1000``.
>
> * The driver ``common/idpf`` has been merged into the ``net/intel/idpf``
> driver.
> - This change should have no impact to end applications, but,
> + Similarly, the ``common/iavf`` driver has been merged into the
> ``net/intel/iavf`` driver.
> + These changes should have no impact to end applications, but,
> when specifying the ``idpf`` or ``cpfl`` net drivers to meson via ``-
> Denable_drivers`` option,
> there is no longer any need to also specify the ``common/idpf`` driver.
> + In the same way, when specifying the ``iavf`` or ``ice`` net drivers,
> + there is no need to also specify the ``common/iavf`` driver.
> Note, however, ``net/intel/cpfl`` driver now depends upon the
> ``net/intel/idpf`` driver.
>
>
> diff --git a/drivers/common/iavf/version.map
> b/drivers/common/iavf/version.map
> deleted file mode 100644
> index 6c1427cca4..0000000000
> --- a/drivers/common/iavf/version.map
> +++ /dev/null
> @@ -1,13 +0,0 @@
> -INTERNAL {
> - global:
> -
> - iavf_aq_send_msg_to_pf;
> - iavf_clean_arq_element;
> - iavf_init_adminq;
> - iavf_set_mac_type;
> - iavf_shutdown_adminq;
> - iavf_vf_parse_hw_config;
> - iavf_vf_reset;
> -
> - local: *;
> -};
> diff --git a/drivers/common/meson.build b/drivers/common/meson.build
> index e1e3149d8f..dc096aab0a 100644
> --- a/drivers/common/meson.build
> +++ b/drivers/common/meson.build
> @@ -5,7 +5,6 @@ std_deps = ['eal']
> drivers = [
> 'cpt',
> 'dpaax',
> - 'iavf',
> 'ionic',
> 'mvep',
> 'octeontx',
> diff --git a/drivers/common/iavf/README
> b/drivers/net/intel/iavf/base/README
> similarity index 100%
> rename from drivers/common/iavf/README
> rename to drivers/net/intel/iavf/base/README
> diff --git a/drivers/common/iavf/iavf_adminq.c
> b/drivers/net/intel/iavf/base/iavf_adminq.c
> similarity index 100%
> rename from drivers/common/iavf/iavf_adminq.c
> rename to drivers/net/intel/iavf/base/iavf_adminq.c
> diff --git a/drivers/common/iavf/iavf_adminq.h
> b/drivers/net/intel/iavf/base/iavf_adminq.h
> similarity index 100%
> rename from drivers/common/iavf/iavf_adminq.h
> rename to drivers/net/intel/iavf/base/iavf_adminq.h
> diff --git a/drivers/common/iavf/iavf_adminq_cmd.h
> b/drivers/net/intel/iavf/base/iavf_adminq_cmd.h
> similarity index 100%
> rename from drivers/common/iavf/iavf_adminq_cmd.h
> rename to drivers/net/intel/iavf/base/iavf_adminq_cmd.h
> diff --git a/drivers/common/iavf/iavf_alloc.h
> b/drivers/net/intel/iavf/base/iavf_alloc.h
> similarity index 100%
> rename from drivers/common/iavf/iavf_alloc.h
> rename to drivers/net/intel/iavf/base/iavf_alloc.h
> diff --git a/drivers/common/iavf/iavf_common.c
> b/drivers/net/intel/iavf/base/iavf_common.c
> similarity index 100%
> rename from drivers/common/iavf/iavf_common.c
> rename to drivers/net/intel/iavf/base/iavf_common.c
> diff --git a/drivers/common/iavf/iavf_devids.h
> b/drivers/net/intel/iavf/base/iavf_devids.h
> similarity index 100%
> rename from drivers/common/iavf/iavf_devids.h
> rename to drivers/net/intel/iavf/base/iavf_devids.h
> diff --git a/drivers/common/iavf/iavf_impl.c
> b/drivers/net/intel/iavf/base/iavf_impl.c
> similarity index 100%
> rename from drivers/common/iavf/iavf_impl.c
> rename to drivers/net/intel/iavf/base/iavf_impl.c
> diff --git a/drivers/common/iavf/iavf_osdep.h
> b/drivers/net/intel/iavf/base/iavf_osdep.h
> similarity index 100%
> rename from drivers/common/iavf/iavf_osdep.h
> rename to drivers/net/intel/iavf/base/iavf_osdep.h
> diff --git a/drivers/common/iavf/iavf_prototype.h
> b/drivers/net/intel/iavf/base/iavf_prototype.h
> similarity index 100%
> rename from drivers/common/iavf/iavf_prototype.h
> rename to drivers/net/intel/iavf/base/iavf_prototype.h
> diff --git a/drivers/common/iavf/iavf_register.h
> b/drivers/net/intel/iavf/base/iavf_register.h
> similarity index 100%
> rename from drivers/common/iavf/iavf_register.h
> rename to drivers/net/intel/iavf/base/iavf_register.h
> diff --git a/drivers/common/iavf/iavf_status.h
> b/drivers/net/intel/iavf/base/iavf_status.h
> similarity index 100%
> rename from drivers/common/iavf/iavf_status.h
> rename to drivers/net/intel/iavf/base/iavf_status.h
> diff --git a/drivers/common/iavf/iavf_type.h
> b/drivers/net/intel/iavf/base/iavf_type.h
> similarity index 100%
> rename from drivers/common/iavf/iavf_type.h
> rename to drivers/net/intel/iavf/base/iavf_type.h
> diff --git a/drivers/common/iavf/meson.build
> b/drivers/net/intel/iavf/base/meson.build
> similarity index 100%
> rename from drivers/common/iavf/meson.build
> rename to drivers/net/intel/iavf/base/meson.build
> diff --git a/drivers/common/iavf/virtchnl.h
> b/drivers/net/intel/iavf/base/virtchnl.h
> similarity index 100%
> rename from drivers/common/iavf/virtchnl.h
> rename to drivers/net/intel/iavf/base/virtchnl.h
> diff --git a/drivers/common/iavf/virtchnl_inline_ipsec.h
> b/drivers/net/intel/iavf/base/virtchnl_inline_ipsec.h
> similarity index 100%
> rename from drivers/common/iavf/virtchnl_inline_ipsec.h
> rename to drivers/net/intel/iavf/base/virtchnl_inline_ipsec.h
> diff --git a/drivers/net/intel/iavf/meson.build
> b/drivers/net/intel/iavf/meson.build
> index d9b605f55a..c823d618e3 100644
> --- a/drivers/net/intel/iavf/meson.build
> +++ b/drivers/net/intel/iavf/meson.build
> @@ -7,9 +7,13 @@ endif
>
> testpmd_sources = files('iavf_testpmd.c')
>
> -deps += ['common_iavf', 'security', 'cryptodev']
> +deps += ['security', 'cryptodev']
>
> sources = files(
> + 'base/iavf_adminq.c',
> + 'base/iavf_common.c',
> + 'base/iavf_impl.c',
> +
> 'iavf_ethdev.c',
> 'iavf_rxtx.c',
> 'iavf_vchnl.c',
> @@ -20,8 +24,9 @@ sources = files(
> 'iavf_ipsec_crypto.c',
> 'iavf_fsub.c',
> )
> +includes += include_directories('base')
>
> -if arch_subdir == 'x86' and is_variable('static_rte_common_iavf')
> +if arch_subdir == 'x86'
> sources += files('iavf_rxtx_vec_sse.c')
>
> if is_windows and cc.get_id() != 'clang'
> @@ -30,7 +35,7 @@ if arch_subdir == 'x86' and
> is_variable('static_rte_common_iavf')
>
> iavf_avx2_lib = static_library('iavf_avx2_lib',
> 'iavf_rxtx_vec_avx2.c',
> - dependencies: [static_rte_ethdev, static_rte_common_iavf],
> + dependencies: [static_rte_ethdev],
> include_directories: includes,
> c_args: [cflags, '-mavx2'])
> objs += iavf_avx2_lib.extract_objects('iavf_rxtx_vec_avx2.c')
> @@ -43,7 +48,7 @@ if arch_subdir == 'x86' and
> is_variable('static_rte_common_iavf')
> endif
> iavf_avx512_lib = static_library('iavf_avx512_lib',
> 'iavf_rxtx_vec_avx512.c',
> - dependencies: [static_rte_ethdev, static_rte_common_iavf],
> + dependencies: [static_rte_ethdev],
> include_directories: includes,
> c_args: avx512_args)
> objs += iavf_avx512_lib.extract_objects('iavf_rxtx_vec_avx512.c')
> diff --git a/drivers/net/intel/iavf/version.map
> b/drivers/net/intel/iavf/version.map
> index 98de64cca2..d18dea64dd 100644
> --- a/drivers/net/intel/iavf/version.map
> +++ b/drivers/net/intel/iavf/version.map
> @@ -17,3 +17,17 @@ EXPERIMENTAL {
> # added in 21.11
> rte_pmd_ifd_dynflag_proto_xtr_ipsec_crypto_said_mask;
> };
> +
> +INTERNAL {
> + global:
> +
> + iavf_aq_send_msg_to_pf;
> + iavf_clean_arq_element;
> + iavf_init_adminq;
> + iavf_set_mac_type;
> + iavf_shutdown_adminq;
> + iavf_vf_parse_hw_config;
> + iavf_vf_reset;
> +
> + local: *;
> +};
> diff --git a/drivers/net/intel/ice/meson.build
> b/drivers/net/intel/ice/meson.build
> index beaf21e176..5faf887386 100644
> --- a/drivers/net/intel/ice/meson.build
> +++ b/drivers/net/intel/ice/meson.build
> @@ -18,7 +18,7 @@ sources = files(
>
> testpmd_sources = files('ice_testpmd.c')
>
> -deps += ['hash', 'net', 'common_iavf']
> +deps += ['hash', 'net', 'net_iavf']
> includes += include_directories('base')
>
> if arch_subdir == 'x86'
> @@ -30,7 +30,7 @@ if arch_subdir == 'x86'
>
> ice_avx2_lib = static_library('ice_avx2_lib',
> 'ice_rxtx_vec_avx2.c',
> - dependencies: [static_rte_ethdev, static_rte_kvargs, static_rte_hash],
> + dependencies: [static_rte_ethdev, static_rte_hash],
> include_directories: includes,
> c_args: [cflags, '-mavx2'])
> objs += ice_avx2_lib.extract_objects('ice_rxtx_vec_avx2.c')
> @@ -43,8 +43,7 @@ if arch_subdir == 'x86'
> endif
> ice_avx512_lib = static_library('ice_avx512_lib',
> 'ice_rxtx_vec_avx512.c',
> - dependencies: [static_rte_ethdev,
> - static_rte_kvargs, static_rte_hash],
> + dependencies: [static_rte_ethdev, static_rte_hash],
> include_directories: includes,
> c_args: avx512_args)
> objs += ice_avx512_lib.extract_objects('ice_rxtx_vec_avx512.c')
> diff --git a/drivers/net/intel/idpf/meson.build
> b/drivers/net/intel/idpf/meson.build
> index 87bc39f76e..d69254484b 100644
> --- a/drivers/net/intel/idpf/meson.build
> +++ b/drivers/net/intel/idpf/meson.build
> @@ -7,7 +7,7 @@ if is_windows
> subdir_done()
> endif
>
> -includes += include_directories('../../../common/iavf')
> +includes += include_directories('../iavf/base')
>
> sources = files(
> 'idpf_common_device.c',
> --
> 2.43.0
Patch looks good to me Bruce.
Acked-by: Ian Stokes <ian.stokes@intel.com>
next prev parent reply other threads:[~2025-02-11 14:12 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-01-28 16:36 [PATCH 0/4] remove common iavf and idpf drivers Bruce Richardson
2025-01-28 16:36 ` [PATCH 1/4] drivers: merge common and net " Bruce Richardson
2025-01-28 16:36 ` [PATCH 2/4] net/idpf: re-enable unused variable warnings Bruce Richardson
2025-01-28 16:36 ` [PATCH 3/4] drivers: move iavf common folder to iavf net Bruce Richardson
2025-01-28 16:36 ` [PATCH 4/4] net/intel: allow building ice driver without iavf Bruce Richardson
2025-01-30 12:48 ` [PATCH v2 0/4] remove common iavf and idpf drivers Bruce Richardson
2025-01-30 12:48 ` [PATCH v2 1/4] drivers: merge common and net " Bruce Richardson
2025-01-30 12:48 ` [PATCH v2 2/4] net/idpf: re-enable unused variable warnings Bruce Richardson
2025-01-30 12:48 ` [PATCH v2 3/4] drivers: move iavf common folder to iavf net Bruce Richardson
2025-01-30 12:48 ` [PATCH v2 4/4] net/intel: allow building ice driver without iavf Bruce Richardson
2025-01-30 13:55 ` [PATCH v2 0/4] remove common iavf and idpf drivers David Marchand
2025-01-30 14:28 ` Bruce Richardson
2025-01-30 15:12 ` [PATCH v3 " Bruce Richardson
2025-01-30 15:12 ` [PATCH v3 1/4] drivers: merge common and net " Bruce Richardson
2025-02-03 8:36 ` Shetty, Praveen
2025-01-30 15:12 ` [PATCH v3 2/4] net/idpf: re-enable unused variable warnings Bruce Richardson
2025-02-03 8:35 ` Shetty, Praveen
2025-01-30 15:12 ` [PATCH v3 3/4] drivers: move iavf common folder to iavf net Bruce Richardson
2025-01-30 15:12 ` [PATCH v3 4/4] net/intel: allow building ice driver without iavf Bruce Richardson
2025-02-05 10:09 ` [PATCH v3 0/4] remove common iavf and idpf drivers David Marchand
2025-02-05 11:55 ` [PATCH v4 " Bruce Richardson
2025-02-05 11:55 ` [PATCH v4 1/4] drivers: merge common and net " Bruce Richardson
2025-02-05 11:55 ` [PATCH v4 2/4] net/idpf: re-enable unused variable warnings Bruce Richardson
2025-02-05 11:55 ` [PATCH v4 3/4] drivers: move iavf common folder to iavf net Bruce Richardson
2025-02-05 11:55 ` [PATCH v4 4/4] net/intel: allow building ice driver without iavf Bruce Richardson
2025-02-10 16:44 ` [PATCH v5 0/4] remove common iavf and idpf drivers Bruce Richardson
2025-02-10 16:44 ` [PATCH v5 1/4] drivers: merge common and net " Bruce Richardson
2025-02-10 16:44 ` [PATCH v5 2/4] net/idpf: re-enable unused variable warnings Bruce Richardson
2025-02-10 16:44 ` [PATCH v5 3/4] drivers: move iavf common folder to iavf net Bruce Richardson
2025-02-11 14:12 ` Stokes, Ian [this message]
2025-02-10 16:44 ` [PATCH v5 4/4] net/intel: allow building ice driver without iavf Bruce Richardson
2025-02-11 14:13 ` Stokes, Ian
2025-02-11 15:53 ` [PATCH v5 0/4] remove common iavf and idpf drivers Bruce Richardson
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=MW6PR11MB8309FCC5041119B326B143C292FD2@MW6PR11MB8309.namprd11.prod.outlook.com \
--to=ian.stokes@intel.com \
--cc=bruce.richardson@intel.com \
--cc=dev@dpdk.org \
/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).