Acked-by: Abhinandan Gujjar <abhinandan.guj...@intel.com>
> -----Original Message-----
> From: David Marchand <david.march...@redhat.com>
> Sent: Monday, September 5, 2022 2:09 PM
> To: dev@dpdk.org
> Cc: tho...@monjalon.net; Richardson, Bruce <bruce.richard...@intel.com>;
> Jayatheerthan, Jay <jay.jayatheert...@intel.com>; Ajit Khaparde
> <ajit.khapa...@broadcom.com>; Chautru, Nicolas
> <nicolas.chau...@intel.com>; Parav Pandit <pa...@nvidia.com>; Xueming Li
> <xuemi...@nvidia.com>; Hemant Agrawal <hemant.agra...@nxp.com>;
> Sachin Saxena <sachin.sax...@oss.nxp.com>; Stephen Hemminger
> <sthem...@microsoft.com>; Long Li <lon...@microsoft.com>; Zhang, Roy Fan
> <roy.fan.zh...@intel.com>; Sunila Sahu <ss...@marvell.com>; Ashish Gupta
> <ashish.gu...@marvell.com>; Raveendra Padasalagi
> <raveendra.padasal...@broadcom.com>; Vikas Gupta
> <vikas.gu...@broadcom.com>; Chandubabu Namburu <cha...@amd.com>;
> Ankur Dwivedi <adwiv...@marvell.com>; Anoob Joseph
> <ano...@marvell.com>; Tejasree Kondoj <ktejas...@marvell.com>;
> Gagandeep Singh <g.si...@nxp.com>; Laatz, Kevin <kevin.la...@intel.com>;
> McDaniel, Timothy <timothy.mcdan...@intel.com>; Jerin Jacob
> <jer...@marvell.com>; Elena Agostini <eagost...@nvidia.com>; Loftus, Ciara
> <ciara.lof...@intel.com>; Zhang, Qi Z <qi.z.zh...@intel.com>; Shepard Siegel
> <shepard.sie...@atomicrules.com>; Ed Czeck <ed.cz...@atomicrules.com>;
> John Miller <john.mil...@atomicrules.com>; Webster, Steven
> <steven.webs...@windriver.com>; Peters, Matt <matt.pet...@windriver.com>;
> Rasesh Mody <rm...@marvell.com>; Shahed Shaikh <shsha...@marvell.com>;
> Somnath Kotur <somnath.ko...@broadcom.com>; Rahul Lakkireddy
> <rahul.lakkire...@chelsio.com>; Su, Simei <simei...@intel.com>; Wu,
> Wenjun1 <wenjun1...@intel.com>; Marcin Wojtas <m...@semihalf.com>;
> Michal Krawczyk <m...@semihalf.com>; Shai Brandes <shaib...@amazon.com>;
> Evgeny Schemeilin <evge...@amazon.com>; Igor Chauskin
> <igo...@amazon.com>; Daley, John <johnd...@cisco.com>; Hyong Youb Kim
> <hyon...@cisco.com>; Gaetan Rivet <gr...@u256.net>; Wang, Xiao W
> <xiao.w.w...@intel.com>; Zhang, Yuying <yuying.zh...@intel.com>; Xing,
> Beilei <beilei.x...@intel.com>; Wu, Jingjing <jingjing...@intel.com>; Yang,
> Qiming <qiming.y...@intel.com>; Matan Azrad <ma...@nvidia.com>;
> Viacheslav Ovsiienko <viachesl...@nvidia.com>; Chaoyong He
> <chaoyong...@corigine.com>; Niklas Soderlund
> <niklas.soderl...@corigine.com>; Harman Kalra <hka...@marvell.com>;
> Devendra Singh Rawat <dsinghra...@marvell.com>; Andrew Rybchenko
> <andrew.rybche...@oktetlabs.ru>; Maciej Czekaj <mcze...@marvell.com>;
> Maxime Coquelin <maxime.coque...@redhat.com>; Xia, Chenbo
> <chenbo....@intel.com>; Jochen Behrens <jbehr...@vmware.com>; Jakub
> Palider <jpali...@marvell.com>; Tomasz Duszynski <tduszyn...@marvell.com>;
> Ori Kam <or...@nvidia.com>; Akhil Goyal <gak...@marvell.com>; Chengwen
> Feng <fengcheng...@huawei.com>; Ray Kinsella <m...@ashroe.eu>; Ferruh
> Yigit <ferruh.yi...@xilinx.com>; Gujjar, Abhinandan S
> <abhinandan.guj...@intel.com>; Matz, Olivier <olivier.m...@6wind.com>;
> Pattan, Reshma <reshma.pat...@intel.com>
> Subject: [PATCH v5 23/27] dev: hide driver object
>
> Make rte_driver opaque for non internal users.
> This will make extending this object possible without breaking the ABI.
>
> Introduce a new driver header and move rte_driver definition.
> Update drivers and library to use the internal header.
>
> Some applications may have been dereferencing rte_driver objects, mark
> this object's accessors as stable.
>
> Signed-off-by: David Marchand <david.march...@redhat.com>
> Acked-by: Bruce Richardson <bruce.richard...@intel.com>
> Acked-by: Jay Jayatheerthan <jay.jayatheert...@intel.com>
> Acked-by: Ajit Khaparde <ajit.khapa...@broadcom.com>
> ---
> Changes since RFC v2:
> - updated release notes,
> - marked accessors as stable,
>
> ---
> doc/guides/rel_notes/release_22_11.rst | 2 ++
> drivers/baseband/acc100/rte_acc100_pmd.c | 2 +-
> .../fpga_5gnr_fec/rte_fpga_5gnr_fec.c | 2 +-
> drivers/baseband/fpga_lte_fec/fpga_lte_fec.c | 2 +-
> drivers/bus/auxiliary/auxiliary_params.c | 2 +-
> drivers/bus/auxiliary/bus_auxiliary_driver.h | 2 +-
> drivers/bus/dpaa/bus_dpaa_driver.h | 2 +-
> drivers/bus/fslmc/bus_fslmc_driver.h | 2 +-
> drivers/bus/fslmc/fslmc_vfio.c | 2 +-
> drivers/bus/fslmc/portal/dpaa2_hw_dpbp.c | 2 +-
> drivers/bus/fslmc/portal/dpaa2_hw_dpci.c | 2 +-
> drivers/bus/fslmc/portal/dpaa2_hw_dpio.c | 2 +-
> drivers/bus/fslmc/portal/dpaa2_hw_dprc.c | 2 +-
> drivers/bus/pci/bus_pci_driver.h | 2 +-
> drivers/bus/pci/pci_params.c | 2 +-
> drivers/bus/vdev/bus_vdev_driver.h | 2 +-
> drivers/bus/vdev/vdev.c | 2 +-
> drivers/bus/vdev/vdev_params.c | 2 +-
> drivers/bus/vmbus/bus_vmbus_driver.h | 2 +-
> drivers/common/qat/dev/qat_dev_gen4.c | 2 +-
> drivers/common/qat/qat_qp.c | 2 +-
> drivers/compress/zlib/zlib_pmd_ops.c | 2 +-
> drivers/crypto/bcmfs/bcmfs_qp.c | 2 +-
> drivers/crypto/bcmfs/bcmfs_sym_pmd.c | 2 +-
> drivers/crypto/ccp/rte_ccp_pmd.c | 2 +-
> drivers/crypto/cnxk/cn10k_cryptodev.c | 2 +-
> drivers/crypto/cnxk/cn9k_cryptodev.c | 2 +-
> drivers/crypto/dpaa2_sec/dpaa2_sec_dpseci.c | 2 +-
> drivers/crypto/dpaa_sec/dpaa_sec.c | 2 +-
> drivers/crypto/scheduler/scheduler_pmd_ops.c | 2 +-
> drivers/dma/idxd/idxd_bus.c | 1 +
> drivers/event/dlb2/dlb2.c | 2 +-
> drivers/event/dlb2/pf/dlb2_pf.c | 2 +-
> drivers/event/dpaa/dpaa_eventdev.c | 2 +-
> drivers/event/dpaa2/dpaa2_eventdev.c | 2 +-
> drivers/event/dpaa2/dpaa2_hw_dpcon.c | 2 +-
> drivers/event/octeontx/ssovf_evdev.c | 2 +-
> drivers/event/skeleton/skeleton_eventdev.c | 2 +-
> drivers/gpu/cuda/cuda.c | 2 +-
> drivers/mempool/dpaa2/dpaa2_hw_mempool.c | 2 +-
> drivers/net/af_xdp/rte_eth_af_xdp.c | 2 +-
> drivers/net/ark/ark_global.h | 2 +-
> drivers/net/avp/avp_ethdev.c | 2 +-
> drivers/net/axgbe/axgbe_common.h | 2 +-
> drivers/net/bnx2x/bnx2x_ethdev.c | 2 +-
> drivers/net/bnxt/bnxt_ethdev.c | 2 +-
> drivers/net/bnxt/rte_pmd_bnxt.c | 2 +-
> drivers/net/cxgbe/base/t4_hw.c | 2 +-
> drivers/net/cxgbe/cxgbe_ethdev.c | 2 +-
> drivers/net/cxgbe/cxgbe_main.c | 2 +-
> drivers/net/cxgbe/sge.c | 2 +-
> drivers/net/dpaa2/base/dpaa2_hw_dpni.c | 2 +-
> drivers/net/dpaa2/dpaa2_ethdev.c | 2 +-
> drivers/net/dpaa2/dpaa2_recycle.c | 2 +-
> drivers/net/dpaa2/dpaa2_rxtx.c | 2 +-
> drivers/net/dpaa2/dpaa2_sparser.c | 2 +-
> drivers/net/e1000/em_ethdev.c | 2 +-
> drivers/net/e1000/igb_ethdev.c | 2 +-
> drivers/net/e1000/igb_flow.c | 2 +-
> drivers/net/ena/ena_ethdev.h | 2 +-
> drivers/net/enic/enic_ethdev.c | 2 +-
> drivers/net/enic/enic_vf_representor.c | 2 +-
> drivers/net/failsafe/failsafe_private.h | 2 +-
> drivers/net/fm10k/fm10k_ethdev.c | 2 +-
> drivers/net/i40e/i40e_ethdev.c | 2 +-
> drivers/net/iavf/iavf_ethdev.c | 2 +-
> drivers/net/iavf/iavf_vchnl.c | 2 +-
> drivers/net/ice/ice_dcf.c | 2 +-
> drivers/net/ice/ice_dcf_ethdev.c | 2 +-
> drivers/net/ixgbe/ixgbe_ethdev.c | 2 +-
> drivers/net/ixgbe/ixgbe_flow.c | 2 +-
> drivers/net/mlx4/mlx4.c | 2 +-
> drivers/net/netvsc/hn_ethdev.c | 2 +-
> drivers/net/netvsc/hn_nvs.c | 2 +-
> drivers/net/netvsc/hn_rndis.c | 2 +-
> drivers/net/netvsc/hn_rxtx.c | 2 +-
> drivers/net/nfp/nfp_common.c | 2 +-
> drivers/net/nfp/nfp_ethdev.c | 2 +-
> drivers/net/octeontx/octeontx_ethdev.c | 2 +-
> drivers/net/qede/qede_ethdev.h | 2 +-
> drivers/net/sfc/sfc_ethdev.c | 2 +-
> drivers/net/sfc/sfc_sw_stats.c | 2 +-
> drivers/net/sfc/sfc_sw_stats.h | 2 +-
> drivers/net/thunderx/nicvf_ethdev.c | 2 +-
> drivers/net/vdev_netvsc/vdev_netvsc.c | 2 +-
> drivers/net/virtio/virtio_ethdev.c | 2 +-
> drivers/net/virtio/virtio_pci_ethdev.c | 2 +-
> drivers/net/vmxnet3/vmxnet3_ethdev.c | 2 +-
> drivers/raw/cnxk_bphy/cnxk_bphy.c | 2 +-
> drivers/raw/skeleton/skeleton_rawdev.c | 2 +-
> drivers/raw/skeleton/skeleton_rawdev_test.c | 2 +-
> drivers/regex/mlx5/mlx5_regex_control.c | 2 +-
> lib/compressdev/rte_compressdev.c | 2 +-
> lib/compressdev/rte_compressdev_pmd.c | 2 +-
> lib/compressdev/rte_compressdev_pmd.h | 1 +
> lib/cryptodev/cryptodev_pmd.c | 2 +-
> lib/cryptodev/cryptodev_pmd.h | 1 +
> lib/cryptodev/rte_cryptodev.c | 2 +-
> lib/dmadev/rte_dmadev_pmd.h | 2 +-
> lib/eal/common/eal_common_dev.c | 2 +-
> lib/eal/include/dev_driver.h | 28 +++++++++++++++++++
> lib/eal/include/meson.build | 1 +
> lib/eal/include/rte_dev.h | 15 ++--------
> lib/eal/version.map | 4 +--
> lib/ethdev/ethdev_driver.h | 1 +
> lib/eventdev/eventdev_pmd.h | 2 +-
> lib/eventdev/rte_event_crypto_adapter.c | 2 +-
> lib/eventdev/rte_event_eth_rx_adapter.c | 2 +-
> lib/eventdev/rte_eventdev.c | 2 +-
> lib/gpudev/gpudev_driver.h | 2 +-
> lib/mempool/rte_mempool_ops.c | 2 +-
> lib/pcapng/rte_pcapng.c | 2 +-
> lib/rawdev/rte_rawdev.c | 2 +-
> lib/rawdev/rte_rawdev_pmd.h | 2 +-
> lib/security/rte_security.c | 2 +-
> 115 files changed, 144 insertions(+), 122 deletions(-)
> create mode 100644 lib/eal/include/dev_driver.h
>
> diff --git a/doc/guides/rel_notes/release_22_11.rst
> b/doc/guides/rel_notes/release_22_11.rst
> index 36df0ccf93..4e20345b7a 100644
> --- a/doc/guides/rel_notes/release_22_11.rst
> +++ b/doc/guides/rel_notes/release_22_11.rst
> @@ -98,6 +98,8 @@ API Changes
> ``vdev``, ``vmbus`` buses has been marked as an internal API.
> External users may still register their driver using the associated driver
> headers (see ``enable_driver_sdk`` meson option).
> + The ``rte_driver`` object is now opaque and must be manipulated through
> added
> + accessors.
>
> * raw/ifgpa: The function ``rte_pmd_ifpga_get_pci_bus`` has been removed.
>
> diff --git a/drivers/baseband/acc100/rte_acc100_pmd.c
> b/drivers/baseband/acc100/rte_acc100_pmd.c
> index 801e8920df..e2d9409185 100644
> --- a/drivers/baseband/acc100/rte_acc100_pmd.c
> +++ b/drivers/baseband/acc100/rte_acc100_pmd.c
> @@ -6,7 +6,7 @@
>
> #include <rte_common.h>
> #include <rte_log.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_malloc.h>
> #include <rte_mempool.h>
> #include <rte_byteorder.h>
> diff --git a/drivers/baseband/fpga_5gnr_fec/rte_fpga_5gnr_fec.c
> b/drivers/baseband/fpga_5gnr_fec/rte_fpga_5gnr_fec.c
> index c1d877c87f..51dd090c1b 100644
> --- a/drivers/baseband/fpga_5gnr_fec/rte_fpga_5gnr_fec.c
> +++ b/drivers/baseband/fpga_5gnr_fec/rte_fpga_5gnr_fec.c
> @@ -6,7 +6,7 @@
>
> #include <rte_common.h>
> #include <rte_log.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_malloc.h>
> #include <rte_mempool.h>
> #include <rte_errno.h>
> diff --git a/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
> b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
> index f16814e241..036579e3ec 100644
> --- a/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
> +++ b/drivers/baseband/fpga_lte_fec/fpga_lte_fec.c
> @@ -6,7 +6,7 @@
>
> #include <rte_common.h>
> #include <rte_log.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_malloc.h>
> #include <rte_mempool.h>
> #include <rte_errno.h>
> diff --git a/drivers/bus/auxiliary/auxiliary_params.c
> b/drivers/bus/auxiliary/auxiliary_params.c
> index a889e392c6..e4c7ee0c3b 100644
> --- a/drivers/bus/auxiliary/auxiliary_params.c
> +++ b/drivers/bus/auxiliary/auxiliary_params.c
> @@ -5,7 +5,7 @@
> #include <string.h>
>
> #include <bus_driver.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_errno.h>
> #include <rte_kvargs.h>
>
> diff --git a/drivers/bus/auxiliary/bus_auxiliary_driver.h
> b/drivers/bus/auxiliary/bus_auxiliary_driver.h
> index 1c2d2c04af..58fb7c7f69 100644
> --- a/drivers/bus/auxiliary/bus_auxiliary_driver.h
> +++ b/drivers/bus/auxiliary/bus_auxiliary_driver.h
> @@ -25,7 +25,7 @@ extern "C" {
> #include <rte_compat.h>
> #include <rte_debug.h>
> #include <rte_interrupts.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_kvargs.h>
>
> #define RTE_BUS_AUXILIARY_NAME "auxiliary"
> diff --git a/drivers/bus/dpaa/bus_dpaa_driver.h
> b/drivers/bus/dpaa/bus_dpaa_driver.h
> index cf66fc0c53..26a83b2cdf 100644
> --- a/drivers/bus/dpaa/bus_dpaa_driver.h
> +++ b/drivers/bus/dpaa/bus_dpaa_driver.h
> @@ -7,7 +7,7 @@
> #define BUS_DPAA_DRIVER_H
>
> #include <rte_compat.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_mbuf_dyn.h>
> #include <rte_mempool.h>
>
> diff --git a/drivers/bus/fslmc/bus_fslmc_driver.h
> b/drivers/bus/fslmc/bus_fslmc_driver.h
> index 798ddebf3a..7ac5fe6ff1 100644
> --- a/drivers/bus/fslmc/bus_fslmc_driver.h
> +++ b/drivers/bus/fslmc/bus_fslmc_driver.h
> @@ -29,7 +29,7 @@ extern "C" {
> #include <rte_compat.h>
> #include <rte_debug.h>
> #include <rte_interrupts.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_tailq.h>
> #include <rte_devargs.h>
> #include <rte_mbuf.h>
> diff --git a/drivers/bus/fslmc/fslmc_vfio.c b/drivers/bus/fslmc/fslmc_vfio.c
> index 8604e43947..5966776a85 100644
> --- a/drivers/bus/fslmc/fslmc_vfio.c
> +++ b/drivers/bus/fslmc/fslmc_vfio.c
> @@ -28,7 +28,7 @@
> #include <rte_string_fns.h>
> #include <rte_cycles.h>
> #include <rte_kvargs.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_eal_memconfig.h>
>
> #include "private.h"
> diff --git a/drivers/bus/fslmc/portal/dpaa2_hw_dpbp.c
> b/drivers/bus/fslmc/portal/dpaa2_hw_dpbp.c
> index cfe4280f87..d7f6e45b7d 100644
> --- a/drivers/bus/fslmc/portal/dpaa2_hw_dpbp.c
> +++ b/drivers/bus/fslmc/portal/dpaa2_hw_dpbp.c
> @@ -18,7 +18,7 @@
> #include <rte_string_fns.h>
> #include <rte_cycles.h>
> #include <rte_kvargs.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <ethdev_driver.h>
> #include <rte_mbuf_pool_ops.h>
>
> diff --git a/drivers/bus/fslmc/portal/dpaa2_hw_dpci.c
> b/drivers/bus/fslmc/portal/dpaa2_hw_dpci.c
> index b7d81b518c..07256ed7ec 100644
> --- a/drivers/bus/fslmc/portal/dpaa2_hw_dpci.c
> +++ b/drivers/bus/fslmc/portal/dpaa2_hw_dpci.c
> @@ -17,7 +17,7 @@
> #include <rte_string_fns.h>
> #include <rte_cycles.h>
> #include <rte_kvargs.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <ethdev_driver.h>
>
> #include <fslmc_logs.h>
> diff --git a/drivers/bus/fslmc/portal/dpaa2_hw_dpio.c
> b/drivers/bus/fslmc/portal/dpaa2_hw_dpio.c
> index 071b0d297d..4aec7b2cd8 100644
> --- a/drivers/bus/fslmc/portal/dpaa2_hw_dpio.c
> +++ b/drivers/bus/fslmc/portal/dpaa2_hw_dpio.c
> @@ -30,7 +30,7 @@
> #include <rte_string_fns.h>
> #include <rte_cycles.h>
> #include <rte_kvargs.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
>
> #include <fslmc_logs.h>
> #include <bus_fslmc_driver.h>
> diff --git a/drivers/bus/fslmc/portal/dpaa2_hw_dprc.c
> b/drivers/bus/fslmc/portal/dpaa2_hw_dprc.c
> index 223e34bcba..65e2d799c3 100644
> --- a/drivers/bus/fslmc/portal/dpaa2_hw_dprc.c
> +++ b/drivers/bus/fslmc/portal/dpaa2_hw_dprc.c
> @@ -10,7 +10,7 @@
> #include <errno.h>
>
> #include <rte_malloc.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
>
> #include "private.h"
> #include <fslmc_logs.h>
> diff --git a/drivers/bus/pci/bus_pci_driver.h
> b/drivers/bus/pci/bus_pci_driver.h
> index b5c7dee617..0f2f9b5101 100644
> --- a/drivers/bus/pci/bus_pci_driver.h
> +++ b/drivers/bus/pci/bus_pci_driver.h
> @@ -11,7 +11,7 @@ extern "C" {
> #endif
>
> #include <rte_bus_pci.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_compat.h>
>
> /** Pathname of PCI devices directory. */
> diff --git a/drivers/bus/pci/pci_params.c b/drivers/bus/pci/pci_params.c
> index 39d702a418..d24cc201b8 100644
> --- a/drivers/bus/pci/pci_params.c
> +++ b/drivers/bus/pci/pci_params.c
> @@ -6,7 +6,7 @@
>
> #include <bus_driver.h>
> #include <rte_bus_pci.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_errno.h>
> #include <rte_kvargs.h>
> #include <rte_devargs.h>
> diff --git a/drivers/bus/vdev/bus_vdev_driver.h
> b/drivers/bus/vdev/bus_vdev_driver.h
> index 36748cdfae..bc7e30d7c6 100644
> --- a/drivers/bus/vdev/bus_vdev_driver.h
> +++ b/drivers/bus/vdev/bus_vdev_driver.h
> @@ -11,7 +11,7 @@ extern "C" {
>
> #include <rte_bus_vdev.h>
> #include <rte_compat.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_devargs.h>
>
> struct rte_vdev_device {
> diff --git a/drivers/bus/vdev/vdev.c b/drivers/bus/vdev/vdev.c
> index 809a8bb08f..b176b658fc 100644
> --- a/drivers/bus/vdev/vdev.c
> +++ b/drivers/bus/vdev/vdev.c
> @@ -11,7 +11,7 @@
> #include <sys/queue.h>
>
> #include <rte_eal.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <bus_driver.h>
> #include <rte_common.h>
> #include <rte_devargs.h>
> diff --git a/drivers/bus/vdev/vdev_params.c b/drivers/bus/vdev/vdev_params.c
> index 2c72614776..2d10a1e8ad 100644
> --- a/drivers/bus/vdev/vdev_params.c
> +++ b/drivers/bus/vdev/vdev_params.c
> @@ -4,7 +4,7 @@
>
> #include <string.h>
>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_kvargs.h>
> #include <rte_errno.h>
>
> diff --git a/drivers/bus/vmbus/bus_vmbus_driver.h
> b/drivers/bus/vmbus/bus_vmbus_driver.h
> index 3424e791c9..e2475a642d 100644
> --- a/drivers/bus/vmbus/bus_vmbus_driver.h
> +++ b/drivers/bus/vmbus/bus_vmbus_driver.h
> @@ -12,7 +12,7 @@ extern "C" {
>
> #include <rte_bus_vmbus.h>
> #include <rte_compat.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
>
> struct vmbus_channel;
> struct vmbus_mon_page;
> diff --git a/drivers/common/qat/dev/qat_dev_gen4.c
> b/drivers/common/qat/dev/qat_dev_gen4.c
> index 7ffde5f4c8..85d6ddfcf4 100644
> --- a/drivers/common/qat/dev/qat_dev_gen4.c
> +++ b/drivers/common/qat/dev/qat_dev_gen4.c
> @@ -2,7 +2,7 @@
> * Copyright(c) 2021 Intel Corporation
> */
>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_pci.h>
>
> #include "qat_device.h"
> diff --git a/drivers/common/qat/qat_qp.c b/drivers/common/qat/qat_qp.c
> index 5916e745e2..9cbd19a481 100644
> --- a/drivers/common/qat/qat_qp.c
> +++ b/drivers/common/qat/qat_qp.c
> @@ -4,7 +4,7 @@
>
> #include <rte_common.h>
> #include <rte_cycles.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_malloc.h>
> #include <rte_memzone.h>
> #include <rte_pci.h>
> diff --git a/drivers/compress/zlib/zlib_pmd_ops.c
> b/drivers/compress/zlib/zlib_pmd_ops.c
> index 7d657d81bc..445a3baa67 100644
> --- a/drivers/compress/zlib/zlib_pmd_ops.c
> +++ b/drivers/compress/zlib/zlib_pmd_ops.c
> @@ -4,7 +4,7 @@
>
> #include <string.h>
>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_common.h>
> #include <rte_malloc.h>
>
> diff --git a/drivers/crypto/bcmfs/bcmfs_qp.c
> b/drivers/crypto/bcmfs/bcmfs_qp.c
> index 61d457f4e0..d1ede5e990 100644
> --- a/drivers/crypto/bcmfs/bcmfs_qp.c
> +++ b/drivers/crypto/bcmfs/bcmfs_qp.c
> @@ -8,7 +8,7 @@
> #include <rte_atomic.h>
> #include <rte_bitmap.h>
> #include <rte_common.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_malloc.h>
> #include <rte_memzone.h>
> #include <rte_prefetch.h>
> diff --git a/drivers/crypto/bcmfs/bcmfs_sym_pmd.c
> b/drivers/crypto/bcmfs/bcmfs_sym_pmd.c
> index bc7fb67218..78272d616c 100644
> --- a/drivers/crypto/bcmfs/bcmfs_sym_pmd.c
> +++ b/drivers/crypto/bcmfs/bcmfs_sym_pmd.c
> @@ -4,7 +4,7 @@
> */
>
> #include <rte_common.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_errno.h>
> #include <rte_malloc.h>
> #include <cryptodev_pmd.h>
> diff --git a/drivers/crypto/ccp/rte_ccp_pmd.c
> b/drivers/crypto/ccp/rte_ccp_pmd.c
> index 6c3e45e333..013f3be1e6 100644
> --- a/drivers/crypto/ccp/rte_ccp_pmd.c
> +++ b/drivers/crypto/ccp/rte_ccp_pmd.c
> @@ -9,7 +9,7 @@
> #include <rte_cryptodev.h>
> #include <cryptodev_pmd.h>
> #include <rte_pci.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_malloc.h>
>
> #include "ccp_crypto.h"
> diff --git a/drivers/crypto/cnxk/cn10k_cryptodev.c
> b/drivers/crypto/cnxk/cn10k_cryptodev.c
> index 3fd9f3c426..db11ac7444 100644
> --- a/drivers/crypto/cnxk/cn10k_cryptodev.c
> +++ b/drivers/crypto/cnxk/cn10k_cryptodev.c
> @@ -7,7 +7,7 @@
> #include <rte_crypto.h>
> #include <rte_cryptodev.h>
> #include <cryptodev_pmd.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_pci.h>
>
> #include "cn10k_cryptodev.h"
> diff --git a/drivers/crypto/cnxk/cn9k_cryptodev.c
> b/drivers/crypto/cnxk/cn9k_cryptodev.c
> index bd425f95ff..4cfc1f2150 100644
> --- a/drivers/crypto/cnxk/cn9k_cryptodev.c
> +++ b/drivers/crypto/cnxk/cn9k_cryptodev.c
> @@ -7,7 +7,7 @@
> #include <rte_crypto.h>
> #include <rte_cryptodev.h>
> #include <cryptodev_pmd.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_pci.h>
>
> #include "cn9k_cryptodev.h"
> diff --git a/drivers/crypto/dpaa2_sec/dpaa2_sec_dpseci.c
> b/drivers/crypto/dpaa2_sec/dpaa2_sec_dpseci.c
> index 0cce861899..3b13578de0 100644
> --- a/drivers/crypto/dpaa2_sec/dpaa2_sec_dpseci.c
> +++ b/drivers/crypto/dpaa2_sec/dpaa2_sec_dpseci.c
> @@ -17,7 +17,7 @@
> #include <rte_string_fns.h>
> #include <rte_cycles.h>
> #include <rte_kvargs.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <cryptodev_pmd.h>
> #include <rte_common.h>
> #include <bus_fslmc_driver.h>
> diff --git a/drivers/crypto/dpaa_sec/dpaa_sec.c
> b/drivers/crypto/dpaa_sec/dpaa_sec.c
> index 7e554cb2b1..c6bd785262 100644
> --- a/drivers/crypto/dpaa_sec/dpaa_sec.c
> +++ b/drivers/crypto/dpaa_sec/dpaa_sec.c
> @@ -19,7 +19,7 @@
> #include <rte_security_driver.h>
> #endif
> #include <rte_cycles.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_io.h>
> #include <rte_ip.h>
> #include <rte_kvargs.h>
> diff --git a/drivers/crypto/scheduler/scheduler_pmd_ops.c
> b/drivers/crypto/scheduler/scheduler_pmd_ops.c
> index 83ae6b6be9..11b559e025 100644
> --- a/drivers/crypto/scheduler/scheduler_pmd_ops.c
> +++ b/drivers/crypto/scheduler/scheduler_pmd_ops.c
> @@ -5,7 +5,7 @@
>
> #include <rte_common.h>
> #include <rte_malloc.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_cryptodev.h>
> #include <cryptodev_pmd.h>
> #include <rte_reorder.h>
> diff --git a/drivers/dma/idxd/idxd_bus.c b/drivers/dma/idxd/idxd_bus.c
> index e30dcfc281..9b7b16c6e3 100644
> --- a/drivers/dma/idxd/idxd_bus.c
> +++ b/drivers/dma/idxd/idxd_bus.c
> @@ -9,6 +9,7 @@
> #include <libgen.h>
>
> #include <bus_driver.h>
> +#include <dev_driver.h>
> #include <rte_devargs.h>
> #include <rte_eal.h>
> #include <rte_log.h>
> diff --git a/drivers/event/dlb2/dlb2.c b/drivers/event/dlb2/dlb2.c
> index 5a443acff8..759578378f 100644
> --- a/drivers/event/dlb2/dlb2.c
> +++ b/drivers/event/dlb2/dlb2.c
> @@ -17,7 +17,7 @@
> #include <rte_config.h>
> #include <rte_cycles.h>
> #include <rte_debug.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_errno.h>
> #include <rte_eventdev.h>
> #include <eventdev_pmd.h>
> diff --git a/drivers/event/dlb2/pf/dlb2_pf.c b/drivers/event/dlb2/pf/dlb2_pf.c
> index 9f8c6cd8b8..71ac141b66 100644
> --- a/drivers/event/dlb2/pf/dlb2_pf.c
> +++ b/drivers/event/dlb2/pf/dlb2_pf.c
> @@ -15,7 +15,7 @@
>
> #include <rte_debug.h>
> #include <rte_log.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_devargs.h>
> #include <rte_mbuf.h>
> #include <rte_ring.h>
> diff --git a/drivers/event/dpaa/dpaa_eventdev.c
> b/drivers/event/dpaa/dpaa_eventdev.c
> index aa403f9e06..8e470584ea 100644
> --- a/drivers/event/dpaa/dpaa_eventdev.c
> +++ b/drivers/event/dpaa/dpaa_eventdev.c
> @@ -14,7 +14,7 @@
> #include <rte_byteorder.h>
> #include <rte_common.h>
> #include <rte_debug.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_eal.h>
> #include <rte_lcore.h>
> #include <rte_log.h>
> diff --git a/drivers/event/dpaa2/dpaa2_eventdev.c
> b/drivers/event/dpaa2/dpaa2_eventdev.c
> index 08df6e223a..1001297cda 100644
> --- a/drivers/event/dpaa2/dpaa2_eventdev.c
> +++ b/drivers/event/dpaa2/dpaa2_eventdev.c
> @@ -14,7 +14,7 @@
> #include <rte_byteorder.h>
> #include <rte_common.h>
> #include <rte_debug.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_eal.h>
> #include <bus_fslmc_driver.h>
> #include <rte_lcore.h>
> diff --git a/drivers/event/dpaa2/dpaa2_hw_dpcon.c
> b/drivers/event/dpaa2/dpaa2_hw_dpcon.c
> index 3882a9cf1d..a68d3ac154 100644
> --- a/drivers/event/dpaa2/dpaa2_hw_dpcon.c
> +++ b/drivers/event/dpaa2/dpaa2_hw_dpcon.c
> @@ -17,7 +17,7 @@
> #include <rte_string_fns.h>
> #include <rte_cycles.h>
> #include <rte_kvargs.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <ethdev_driver.h>
>
> #include <bus_fslmc_driver.h>
> diff --git a/drivers/event/octeontx/ssovf_evdev.c
> b/drivers/event/octeontx/ssovf_evdev.c
> index fe157c59d5..99fa326ad5 100644
> --- a/drivers/event/octeontx/ssovf_evdev.c
> +++ b/drivers/event/octeontx/ssovf_evdev.c
> @@ -7,7 +7,7 @@
> #include <rte_common.h>
> #include <cryptodev_pmd.h>
> #include <rte_debug.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_eal.h>
> #include <ethdev_driver.h>
> #include <rte_event_eth_rx_adapter.h>
> diff --git a/drivers/event/skeleton/skeleton_eventdev.c
> b/drivers/event/skeleton/skeleton_eventdev.c
> index 6bd8fec6d4..8513b9a013 100644
> --- a/drivers/event/skeleton/skeleton_eventdev.c
> +++ b/drivers/event/skeleton/skeleton_eventdev.c
> @@ -12,7 +12,7 @@
> #include <rte_byteorder.h>
> #include <rte_common.h>
> #include <rte_debug.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_eal.h>
> #include <rte_log.h>
> #include <rte_malloc.h>
> diff --git a/drivers/gpu/cuda/cuda.c b/drivers/gpu/cuda/cuda.c
> index 2be7b8d2df..a552aabeb8 100644
> --- a/drivers/gpu/cuda/cuda.c
> +++ b/drivers/gpu/cuda/cuda.c
> @@ -8,7 +8,7 @@
> #include <rte_pci.h>
> #include <bus_pci_driver.h>
> #include <rte_byteorder.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
>
> #include <gpudev_driver.h>
>
> diff --git a/drivers/mempool/dpaa2/dpaa2_hw_mempool.c
> b/drivers/mempool/dpaa2/dpaa2_hw_mempool.c
> index 56c629c681..84371d5d1a 100644
> --- a/drivers/mempool/dpaa2/dpaa2_hw_mempool.c
> +++ b/drivers/mempool/dpaa2/dpaa2_hw_mempool.c
> @@ -20,7 +20,7 @@
> #include <rte_string_fns.h>
> #include <rte_cycles.h>
> #include <rte_kvargs.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include "rte_dpaa2_mempool.h"
>
> #include "fslmc_vfio.h"
> diff --git a/drivers/net/af_xdp/rte_eth_af_xdp.c
> b/drivers/net/af_xdp/rte_eth_af_xdp.c
> index fd7be47311..9957de2314 100644
> --- a/drivers/net/af_xdp/rte_eth_af_xdp.c
> +++ b/drivers/net/af_xdp/rte_eth_af_xdp.c
> @@ -24,7 +24,7 @@
> #include <rte_string_fns.h>
> #include <rte_branch_prediction.h>
> #include <rte_common.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_eal.h>
> #include <rte_ether.h>
> #include <rte_lcore.h>
> diff --git a/drivers/net/ark/ark_global.h b/drivers/net/ark/ark_global.h
> index 748db590c1..71d0b53e03 100644
> --- a/drivers/net/ark/ark_global.h
> +++ b/drivers/net/ark/ark_global.h
> @@ -15,7 +15,7 @@
> #include <rte_string_fns.h>
> #include <rte_cycles.h>
> #include <rte_kvargs.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_version.h>
>
> #include "ark_pktdir.h"
> diff --git a/drivers/net/avp/avp_ethdev.c b/drivers/net/avp/avp_ethdev.c
> index 7c0cb666fb..b2a08f5635 100644
> --- a/drivers/net/avp/avp_ethdev.c
> +++ b/drivers/net/avp/avp_ethdev.c
> @@ -22,7 +22,7 @@
> #include <rte_cycles.h>
> #include <rte_spinlock.h>
> #include <rte_byteorder.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_memory.h>
> #include <rte_eal.h>
> #include <rte_io.h>
> diff --git a/drivers/net/axgbe/axgbe_common.h
> b/drivers/net/axgbe/axgbe_common.h
> index b9ebf64fb8..a5d11c5832 100644
> --- a/drivers/net/axgbe/axgbe_common.h
> +++ b/drivers/net/axgbe/axgbe_common.h
> @@ -33,7 +33,7 @@
> #include <rte_memzone.h>
> #include <rte_ether.h>
> #include <rte_ethdev.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_errno.h>
> #include <ethdev_pci.h>
> #include <rte_common.h>
> diff --git a/drivers/net/bnx2x/bnx2x_ethdev.c
> b/drivers/net/bnx2x/bnx2x_ethdev.c
> index f36ad30e17..4448cf2de2 100644
> --- a/drivers/net/bnx2x/bnx2x_ethdev.c
> +++ b/drivers/net/bnx2x/bnx2x_ethdev.c
> @@ -9,7 +9,7 @@
> #include "bnx2x_rxtx.h"
>
> #include <rte_string_fns.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <ethdev_pci.h>
> #include <rte_alarm.h>
>
> diff --git a/drivers/net/bnxt/bnxt_ethdev.c b/drivers/net/bnxt/bnxt_ethdev.c
> index e275d3a53f..1460dce2ab 100644
> --- a/drivers/net/bnxt/bnxt_ethdev.c
> +++ b/drivers/net/bnxt/bnxt_ethdev.c
> @@ -6,7 +6,7 @@
> #include <inttypes.h>
> #include <stdbool.h>
>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <ethdev_driver.h>
> #include <ethdev_pci.h>
> #include <rte_malloc.h>
> diff --git a/drivers/net/bnxt/rte_pmd_bnxt.c
> b/drivers/net/bnxt/rte_pmd_bnxt.c
> index 77ecbef04c..fd1506ddd4 100644
> --- a/drivers/net/bnxt/rte_pmd_bnxt.c
> +++ b/drivers/net/bnxt/rte_pmd_bnxt.c
> @@ -7,7 +7,7 @@
> #include <stdbool.h>
> #include <unistd.h>
>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <ethdev_driver.h>
> #include <rte_malloc.h>
> #include <rte_cycles.h>
> diff --git a/drivers/net/cxgbe/base/t4_hw.c b/drivers/net/cxgbe/base/t4_hw.c
> index 384080e6d3..bed755f5d9 100644
> --- a/drivers/net/cxgbe/base/t4_hw.c
> +++ b/drivers/net/cxgbe/base/t4_hw.c
> @@ -18,7 +18,7 @@
> #include <ethdev_driver.h>
> #include <rte_malloc.h>
> #include <rte_random.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_byteorder.h>
>
> #include "common.h"
> diff --git a/drivers/net/cxgbe/cxgbe_ethdev.c
> b/drivers/net/cxgbe/cxgbe_ethdev.c
> index fd71a50a58..45bbeaef0c 100644
> --- a/drivers/net/cxgbe/cxgbe_ethdev.c
> +++ b/drivers/net/cxgbe/cxgbe_ethdev.c
> @@ -31,7 +31,7 @@
> #include <ethdev_pci.h>
> #include <rte_malloc.h>
> #include <rte_random.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
>
> #include "cxgbe.h"
> #include "cxgbe_pfvf.h"
> diff --git a/drivers/net/cxgbe/cxgbe_main.c b/drivers/net/cxgbe/cxgbe_main.c
> index 3c02c98b3d..f8dd833032 100644
> --- a/drivers/net/cxgbe/cxgbe_main.c
> +++ b/drivers/net/cxgbe/cxgbe_main.c
> @@ -31,7 +31,7 @@
> #include <ethdev_driver.h>
> #include <ethdev_pci.h>
> #include <rte_random.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_kvargs.h>
>
> #include "base/common.h"
> diff --git a/drivers/net/cxgbe/sge.c b/drivers/net/cxgbe/sge.c
> index 5d91355c9a..5b13cb5c94 100644
> --- a/drivers/net/cxgbe/sge.c
> +++ b/drivers/net/cxgbe/sge.c
> @@ -30,7 +30,7 @@
> #include <ethdev_driver.h>
> #include <rte_malloc.h>
> #include <rte_random.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
>
> #include "base/common.h"
> #include "base/t4_regs.h"
> diff --git a/drivers/net/dpaa2/base/dpaa2_hw_dpni.c
> b/drivers/net/dpaa2/base/dpaa2_hw_dpni.c
> index 9509f6e8a3..4d33b51fea 100644
> --- a/drivers/net/dpaa2/base/dpaa2_hw_dpni.c
> +++ b/drivers/net/dpaa2/base/dpaa2_hw_dpni.c
> @@ -15,7 +15,7 @@
> #include <rte_string_fns.h>
> #include <rte_cycles.h>
> #include <rte_kvargs.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
>
> #include <dpaa2_pmd_logs.h>
> #include <dpaa2_hw_pvt.h>
> diff --git a/drivers/net/dpaa2/dpaa2_ethdev.c
> b/drivers/net/dpaa2/dpaa2_ethdev.c
> index f876f4790c..37a8b43114 100644
> --- a/drivers/net/dpaa2/dpaa2_ethdev.c
> +++ b/drivers/net/dpaa2/dpaa2_ethdev.c
> @@ -15,7 +15,7 @@
> #include <rte_string_fns.h>
> #include <rte_cycles.h>
> #include <rte_kvargs.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <bus_fslmc_driver.h>
> #include <rte_flow_driver.h>
> #include "rte_dpaa2_mempool.h"
> diff --git a/drivers/net/dpaa2/dpaa2_recycle.c
> b/drivers/net/dpaa2/dpaa2_recycle.c
> index 932570c6e0..fbfdf360d1 100644
> --- a/drivers/net/dpaa2/dpaa2_recycle.c
> +++ b/drivers/net/dpaa2/dpaa2_recycle.c
> @@ -14,7 +14,7 @@
> #include <rte_string_fns.h>
> #include <rte_cycles.h>
> #include <rte_kvargs.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <bus_fslmc_driver.h>
> #include <rte_flow_driver.h>
>
> diff --git a/drivers/net/dpaa2/dpaa2_rxtx.c b/drivers/net/dpaa2/dpaa2_rxtx.c
> index 7b9c528d13..9436a95ac8 100644
> --- a/drivers/net/dpaa2/dpaa2_rxtx.c
> +++ b/drivers/net/dpaa2/dpaa2_rxtx.c
> @@ -13,7 +13,7 @@
> #include <rte_malloc.h>
> #include <rte_memcpy.h>
> #include <rte_string_fns.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_hexdump.h>
>
> #include <bus_fslmc_driver.h>
> diff --git a/drivers/net/dpaa2/dpaa2_sparser.c
> b/drivers/net/dpaa2/dpaa2_sparser.c
> index ba0d500f74..63463c4fbf 100644
> --- a/drivers/net/dpaa2/dpaa2_sparser.c
> +++ b/drivers/net/dpaa2/dpaa2_sparser.c
> @@ -7,7 +7,7 @@
> #include <rte_malloc.h>
> #include <rte_memcpy.h>
> #include <rte_string_fns.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
>
> #include <fslmc_logs.h>
> #include <fslmc_vfio.h>
> diff --git a/drivers/net/e1000/em_ethdev.c b/drivers/net/e1000/em_ethdev.c
> index 409de50083..8ee9be12ad 100644
> --- a/drivers/net/e1000/em_ethdev.c
> +++ b/drivers/net/e1000/em_ethdev.c
> @@ -20,7 +20,7 @@
> #include <rte_memory.h>
> #include <rte_eal.h>
> #include <rte_malloc.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
>
> #include "e1000_logs.h"
> #include "base/e1000_api.h"
> diff --git a/drivers/net/e1000/igb_ethdev.c b/drivers/net/e1000/igb_ethdev.c
> index 43979992d3..d6bcc5bf58 100644
> --- a/drivers/net/e1000/igb_ethdev.c
> +++ b/drivers/net/e1000/igb_ethdev.c
> @@ -22,7 +22,7 @@
> #include <rte_memory.h>
> #include <rte_eal.h>
> #include <rte_malloc.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
>
> #include "e1000_logs.h"
> #include "base/e1000_api.h"
> diff --git a/drivers/net/e1000/igb_flow.c b/drivers/net/e1000/igb_flow.c
> index e46697b6a1..b775310651 100644
> --- a/drivers/net/e1000/igb_flow.c
> +++ b/drivers/net/e1000/igb_flow.c
> @@ -21,7 +21,7 @@
> #include <rte_eal.h>
> #include <rte_atomic.h>
> #include <rte_malloc.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_flow.h>
> #include <rte_flow_driver.h>
>
> diff --git a/drivers/net/ena/ena_ethdev.h b/drivers/net/ena/ena_ethdev.h
> index 4709675af8..4d27fba585 100644
> --- a/drivers/net/ena/ena_ethdev.h
> +++ b/drivers/net/ena/ena_ethdev.h
> @@ -14,7 +14,7 @@
> #include <rte_pci.h>
> #include <bus_pci_driver.h>
> #include <rte_timer.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_net.h>
>
> #include "ena_com.h"
> diff --git a/drivers/net/enic/enic_ethdev.c b/drivers/net/enic/enic_ethdev.c
> index 998436e5e8..cdf0915591 100644
> --- a/drivers/net/enic/enic_ethdev.c
> +++ b/drivers/net/enic/enic_ethdev.c
> @@ -6,7 +6,7 @@
> #include <stdio.h>
> #include <stdint.h>
>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_pci.h>
> #include <bus_pci_driver.h>
> #include <ethdev_driver.h>
> diff --git a/drivers/net/enic/enic_vf_representor.c
> b/drivers/net/enic/enic_vf_representor.c
> index 7312c411bd..46f85964e9 100644
> --- a/drivers/net/enic/enic_vf_representor.c
> +++ b/drivers/net/enic/enic_vf_representor.c
> @@ -7,7 +7,7 @@
>
> #include <bus_pci_driver.h>
> #include <rte_common.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <ethdev_driver.h>
> #include <ethdev_pci.h>
> #include <rte_flow_driver.h>
> diff --git a/drivers/net/failsafe/failsafe_private.h
> b/drivers/net/failsafe/failsafe_private.h
> index a80f5e2caf..53a451c1b1 100644
> --- a/drivers/net/failsafe/failsafe_private.h
> +++ b/drivers/net/failsafe/failsafe_private.h
> @@ -11,7 +11,7 @@
> #include <pthread.h>
>
> #include <rte_atomic.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <ethdev_driver.h>
> #include <rte_devargs.h>
> #include <rte_flow.h>
> diff --git a/drivers/net/fm10k/fm10k_ethdev.c
> b/drivers/net/fm10k/fm10k_ethdev.c
> index 8bbd8b445d..7adb20bff9 100644
> --- a/drivers/net/fm10k/fm10k_ethdev.c
> +++ b/drivers/net/fm10k/fm10k_ethdev.c
> @@ -7,7 +7,7 @@
> #include <rte_malloc.h>
> #include <rte_memzone.h>
> #include <rte_string_fns.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_spinlock.h>
> #include <rte_kvargs.h>
> #include <rte_vect.h>
> diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c
> index 7bdc453ec1..67111ac251 100644
> --- a/drivers/net/i40e/i40e_ethdev.c
> +++ b/drivers/net/i40e/i40e_ethdev.c
> @@ -23,7 +23,7 @@
> #include <rte_malloc.h>
> #include <rte_memcpy.h>
> #include <rte_alarm.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_tailq.h>
> #include <rte_hash_crc.h>
> #include <rte_bitmap.h>
> diff --git a/drivers/net/iavf/iavf_ethdev.c b/drivers/net/iavf/iavf_ethdev.c
> index 506fcff6e3..ef2ab06475 100644
> --- a/drivers/net/iavf/iavf_ethdev.c
> +++ b/drivers/net/iavf/iavf_ethdev.c
> @@ -24,7 +24,7 @@
> #include <ethdev_pci.h>
> #include <rte_malloc.h>
> #include <rte_memzone.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
>
> #include "iavf.h"
> #include "iavf_rxtx.h"
> diff --git a/drivers/net/iavf/iavf_vchnl.c b/drivers/net/iavf/iavf_vchnl.c
> index 21bd1e2193..15f695682d 100644
> --- a/drivers/net/iavf/iavf_vchnl.c
> +++ b/drivers/net/iavf/iavf_vchnl.c
> @@ -19,7 +19,7 @@
> #include <rte_ether.h>
> #include <ethdev_driver.h>
> #include <ethdev_pci.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
>
> #include "iavf.h"
> #include "iavf_rxtx.h"
> diff --git a/drivers/net/ice/ice_dcf.c b/drivers/net/ice/ice_dcf.c
> index 885d58c0f4..1c3d22ae0f 100644
> --- a/drivers/net/ice/ice_dcf.c
> +++ b/drivers/net/ice/ice_dcf.c
> @@ -21,7 +21,7 @@
> #include <ethdev_pci.h>
> #include <rte_malloc.h>
> #include <rte_memzone.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
>
> #include "ice_dcf.h"
> #include "ice_rxtx.h"
> diff --git a/drivers/net/ice/ice_dcf_ethdev.c
> b/drivers/net/ice/ice_dcf_ethdev.c
> index 0da267db1f..dee712af98 100644
> --- a/drivers/net/ice/ice_dcf_ethdev.c
> +++ b/drivers/net/ice/ice_dcf_ethdev.c
> @@ -18,7 +18,7 @@
> #include <rte_kvargs.h>
> #include <rte_malloc.h>
> #include <rte_memzone.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
>
> #include <iavf_devids.h>
>
> diff --git a/drivers/net/ixgbe/ixgbe_ethdev.c
> b/drivers/net/ixgbe/ixgbe_ethdev.c
> index 552e41692c..04c9ce78a2 100644
> --- a/drivers/net/ixgbe/ixgbe_ethdev.c
> +++ b/drivers/net/ixgbe/ixgbe_ethdev.c
> @@ -30,7 +30,7 @@
> #include <ethdev_pci.h>
> #include <rte_malloc.h>
> #include <rte_random.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_hash_crc.h>
> #ifdef RTE_LIB_SECURITY
> #include <rte_security_driver.h>
> diff --git a/drivers/net/ixgbe/ixgbe_flow.c b/drivers/net/ixgbe/ixgbe_flow.c
> index 368342872a..67373a7b78 100644
> --- a/drivers/net/ixgbe/ixgbe_flow.c
> +++ b/drivers/net/ixgbe/ixgbe_flow.c
> @@ -27,7 +27,7 @@
> #include <ethdev_driver.h>
> #include <rte_malloc.h>
> #include <rte_random.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_hash_crc.h>
> #include <rte_flow.h>
> #include <rte_flow_driver.h>
> diff --git a/drivers/net/mlx4/mlx4.c b/drivers/net/mlx4/mlx4.c
> index 910b76a92c..7e7e1824ef 100644
> --- a/drivers/net/mlx4/mlx4.c
> +++ b/drivers/net/mlx4/mlx4.c
> @@ -31,7 +31,7 @@
> #endif
>
> #include <rte_common.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_errno.h>
> #include <ethdev_driver.h>
> #include <ethdev_pci.h>
> diff --git a/drivers/net/netvsc/hn_ethdev.c b/drivers/net/netvsc/hn_ethdev.c
> index ccc06bdda6..d0bbc0a4c0 100644
> --- a/drivers/net/netvsc/hn_ethdev.c
> +++ b/drivers/net/netvsc/hn_ethdev.c
> @@ -30,7 +30,7 @@
> #include <rte_errno.h>
> #include <rte_memory.h>
> #include <rte_eal.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <bus_driver.h>
> #include <bus_vmbus_driver.h>
> #include <rte_alarm.h>
> diff --git a/drivers/net/netvsc/hn_nvs.c b/drivers/net/netvsc/hn_nvs.c
> index 817fb06dfb..7db82af9f3 100644
> --- a/drivers/net/netvsc/hn_nvs.c
> +++ b/drivers/net/netvsc/hn_nvs.c
> @@ -28,7 +28,7 @@
> #include <rte_cycles.h>
> #include <rte_memory.h>
> #include <rte_eal.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <bus_vmbus_driver.h>
>
> #include "hn_logs.h"
> diff --git a/drivers/net/netvsc/hn_rndis.c b/drivers/net/netvsc/hn_rndis.c
> index 20f75a17b0..e6f1f28768 100644
> --- a/drivers/net/netvsc/hn_rndis.c
> +++ b/drivers/net/netvsc/hn_rndis.c
> @@ -26,7 +26,7 @@
> #include <rte_cycles.h>
> #include <rte_memory.h>
> #include <rte_eal.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <bus_vmbus_driver.h>
>
> #include "hn_logs.h"
> diff --git a/drivers/net/netvsc/hn_rxtx.c b/drivers/net/netvsc/hn_rxtx.c
> index 61cf374224..bc6f60c64a 100644
> --- a/drivers/net/netvsc/hn_rxtx.c
> +++ b/drivers/net/netvsc/hn_rxtx.c
> @@ -25,7 +25,7 @@
> #include <rte_errno.h>
> #include <rte_memory.h>
> #include <rte_eal.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_net.h>
> #include <bus_vmbus_driver.h>
> #include <rte_spinlock.h>
> diff --git a/drivers/net/nfp/nfp_common.c b/drivers/net/nfp/nfp_common.c
> index 0e55f0c792..eaafe11fb9 100644
> --- a/drivers/net/nfp/nfp_common.c
> +++ b/drivers/net/nfp/nfp_common.c
> @@ -19,7 +19,7 @@
> #include <rte_debug.h>
> #include <ethdev_driver.h>
> #include <ethdev_pci.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_ether.h>
> #include <rte_malloc.h>
> #include <rte_memzone.h>
> diff --git a/drivers/net/nfp/nfp_ethdev.c b/drivers/net/nfp/nfp_ethdev.c
> index 5cdd34e588..47359501bc 100644
> --- a/drivers/net/nfp/nfp_ethdev.c
> +++ b/drivers/net/nfp/nfp_ethdev.c
> @@ -16,7 +16,7 @@
> #include <rte_common.h>
> #include <ethdev_driver.h>
> #include <ethdev_pci.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_ether.h>
> #include <rte_malloc.h>
> #include <rte_memzone.h>
> diff --git a/drivers/net/octeontx/octeontx_ethdev.c
> b/drivers/net/octeontx/octeontx_ethdev.c
> index 9ada22e2ff..0eee191566 100644
> --- a/drivers/net/octeontx/octeontx_ethdev.c
> +++ b/drivers/net/octeontx/octeontx_ethdev.c
> @@ -15,7 +15,7 @@
> #include <bus_vdev_driver.h>
> #include <rte_cycles.h>
> #include <rte_debug.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_devargs.h>
> #include <rte_kvargs.h>
> #include <rte_malloc.h>
> diff --git a/drivers/net/qede/qede_ethdev.h b/drivers/net/qede/qede_ethdev.h
> index a38b701183..b781bcdcfd 100644
> --- a/drivers/net/qede/qede_ethdev.h
> +++ b/drivers/net/qede/qede_ethdev.h
> @@ -13,7 +13,7 @@
> #include <rte_ether.h>
> #include <ethdev_driver.h>
> #include <ethdev_pci.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_ip.h>
>
> /* ecore includes */
> diff --git a/drivers/net/sfc/sfc_ethdev.c b/drivers/net/sfc/sfc_ethdev.c
> index 506c62a726..2ec743ebce 100644
> --- a/drivers/net/sfc/sfc_ethdev.c
> +++ b/drivers/net/sfc/sfc_ethdev.c
> @@ -7,7 +7,7 @@
> * for Solarflare) and Solarflare Communications, Inc.
> */
>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <ethdev_driver.h>
> #include <ethdev_pci.h>
> #include <rte_pci.h>
> diff --git a/drivers/net/sfc/sfc_sw_stats.c b/drivers/net/sfc/sfc_sw_stats.c
> index 81f5aa3cc4..3ae5023b6f 100644
> --- a/drivers/net/sfc/sfc_sw_stats.c
> +++ b/drivers/net/sfc/sfc_sw_stats.c
> @@ -2,7 +2,7 @@
> *
> * Copyright(c) 2021 Xilinx, Inc.
> */
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_bitmap.h>
>
> #include "sfc.h"
> diff --git a/drivers/net/sfc/sfc_sw_stats.h b/drivers/net/sfc/sfc_sw_stats.h
> index 1abded8018..d9738e5214 100644
> --- a/drivers/net/sfc/sfc_sw_stats.h
> +++ b/drivers/net/sfc/sfc_sw_stats.h
> @@ -5,7 +5,7 @@
> #ifndef _SFC_SW_STATS_H
> #define _SFC_SW_STATS_H
>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
>
> #include "sfc.h"
>
> diff --git a/drivers/net/thunderx/nicvf_ethdev.c
> b/drivers/net/thunderx/nicvf_ethdev.c
> index 28183ec740..9f57cb1a20 100644
> --- a/drivers/net/thunderx/nicvf_ethdev.c
> +++ b/drivers/net/thunderx/nicvf_ethdev.c
> @@ -20,7 +20,7 @@
> #include <rte_common.h>
> #include <rte_cycles.h>
> #include <rte_debug.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_eal.h>
> #include <rte_ether.h>
> #include <ethdev_driver.h>
> diff --git a/drivers/net/vdev_netvsc/vdev_netvsc.c
> b/drivers/net/vdev_netvsc/vdev_netvsc.c
> index dc90569df1..c3e045d892 100644
> --- a/drivers/net/vdev_netvsc/vdev_netvsc.c
> +++ b/drivers/net/vdev_netvsc/vdev_netvsc.c
> @@ -27,7 +27,7 @@
> #include <bus_driver.h>
> #include <bus_vdev_driver.h>
> #include <rte_common.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_errno.h>
> #include <rte_ethdev.h>
> #include <rte_ether.h>
> diff --git a/drivers/net/virtio/virtio_ethdev.c
> b/drivers/net/virtio/virtio_ethdev.c
> index d180162abd..edf3becd32 100644
> --- a/drivers/net/virtio/virtio_ethdev.c
> +++ b/drivers/net/virtio/virtio_ethdev.c
> @@ -24,7 +24,7 @@
> #include <rte_memory.h>
> #include <rte_eal_paging.h>
> #include <rte_eal.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_cycles.h>
> #include <rte_kvargs.h>
>
> diff --git a/drivers/net/virtio/virtio_pci_ethdev.c
> b/drivers/net/virtio/virtio_pci_ethdev.c
> index 2b9e35cef5..abc63b0935 100644
> --- a/drivers/net/virtio/virtio_pci_ethdev.c
> +++ b/drivers/net/virtio/virtio_pci_ethdev.c
> @@ -16,7 +16,7 @@
>
> #include <rte_memory.h>
> #include <rte_eal.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_kvargs.h>
>
> #include "virtio.h"
> diff --git a/drivers/net/vmxnet3/vmxnet3_ethdev.c
> b/drivers/net/vmxnet3/vmxnet3_ethdev.c
> index 101b1cb500..fd946dec5c 100644
> --- a/drivers/net/vmxnet3/vmxnet3_ethdev.c
> +++ b/drivers/net/vmxnet3/vmxnet3_ethdev.c
> @@ -30,7 +30,7 @@
> #include <ethdev_pci.h>
> #include <rte_string_fns.h>
> #include <rte_malloc.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
>
> #include "base/vmxnet3_defs.h"
>
> diff --git a/drivers/raw/cnxk_bphy/cnxk_bphy.c
> b/drivers/raw/cnxk_bphy/cnxk_bphy.c
> index db029cbf34..909fb8faab 100644
> --- a/drivers/raw/cnxk_bphy/cnxk_bphy.c
> +++ b/drivers/raw/cnxk_bphy/cnxk_bphy.c
> @@ -3,7 +3,7 @@
> */
> #include <bus_pci_driver.h>
> #include <rte_common.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_eal.h>
> #include <rte_lcore.h>
> #include <rte_pci.h>
> diff --git a/drivers/raw/skeleton/skeleton_rawdev.c
> b/drivers/raw/skeleton/skeleton_rawdev.c
> index 6831cc8d20..5dd5bbb652 100644
> --- a/drivers/raw/skeleton/skeleton_rawdev.c
> +++ b/drivers/raw/skeleton/skeleton_rawdev.c
> @@ -13,7 +13,7 @@
> #include <rte_byteorder.h>
> #include <rte_common.h>
> #include <rte_debug.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_eal.h>
> #include <rte_kvargs.h>
> #include <rte_log.h>
> diff --git a/drivers/raw/skeleton/skeleton_rawdev_test.c
> b/drivers/raw/skeleton/skeleton_rawdev_test.c
> index fc257c5f44..8ef7a6b127 100644
> --- a/drivers/raw/skeleton/skeleton_rawdev_test.c
> +++ b/drivers/raw/skeleton/skeleton_rawdev_test.c
> @@ -6,7 +6,7 @@
> #include <rte_mbuf.h>
> #include <rte_malloc.h>
> #include <rte_memcpy.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_rawdev.h>
> #include <bus_vdev_driver.h>
> #include <rte_test.h>
> diff --git a/drivers/regex/mlx5/mlx5_regex_control.c
> b/drivers/regex/mlx5/mlx5_regex_control.c
> index 6ab62a12fc..92cf5f495e 100644
> --- a/drivers/regex/mlx5/mlx5_regex_control.c
> +++ b/drivers/regex/mlx5/mlx5_regex_control.c
> @@ -11,7 +11,7 @@
> #include <rte_regexdev.h>
> #include <rte_regexdev_core.h>
> #include <rte_regexdev_driver.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
>
> #include <mlx5_common.h>
> #include <mlx5_glue.h>
> diff --git a/lib/compressdev/rte_compressdev.c
> b/lib/compressdev/rte_compressdev.c
> index e997bd01ed..cf2c20a704 100644
> --- a/lib/compressdev/rte_compressdev.c
> +++ b/lib/compressdev/rte_compressdev.c
> @@ -8,7 +8,7 @@
>
> #include <rte_string_fns.h>
> #include <rte_malloc.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_eal.h>
> #include <rte_memzone.h>
>
> diff --git a/lib/compressdev/rte_compressdev_pmd.c
> b/lib/compressdev/rte_compressdev_pmd.c
> index 9bfae077db..41f1415bea 100644
> --- a/lib/compressdev/rte_compressdev_pmd.c
> +++ b/lib/compressdev/rte_compressdev_pmd.c
> @@ -5,7 +5,7 @@
> #include <rte_string_fns.h>
> #include <rte_malloc.h>
> #include <rte_kvargs.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_eal.h>
>
> #include "rte_compressdev_internal.h"
> diff --git a/lib/compressdev/rte_compressdev_pmd.h
> b/lib/compressdev/rte_compressdev_pmd.h
> index 9fabc399c5..72e52f876f 100644
> --- a/lib/compressdev/rte_compressdev_pmd.h
> +++ b/lib/compressdev/rte_compressdev_pmd.h
> @@ -19,6 +19,7 @@ extern "C" {
>
> #include <string.h>
>
> +#include <dev_driver.h>
>
> #include "rte_compressdev.h"
> #include "rte_compressdev_internal.h"
> diff --git a/lib/cryptodev/cryptodev_pmd.c b/lib/cryptodev/cryptodev_pmd.c
> index 75d0075b86..f07b92dfd7 100644
> --- a/lib/cryptodev/cryptodev_pmd.c
> +++ b/lib/cryptodev/cryptodev_pmd.c
> @@ -4,7 +4,7 @@
>
> #include <sys/queue.h>
>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_errno.h>
> #include <rte_string_fns.h>
> #include <rte_malloc.h>
> diff --git a/lib/cryptodev/cryptodev_pmd.h b/lib/cryptodev/cryptodev_pmd.h
> index 3dcc3cb7ed..96d7e225b0 100644
> --- a/lib/cryptodev/cryptodev_pmd.h
> +++ b/lib/cryptodev/cryptodev_pmd.h
> @@ -19,6 +19,7 @@ extern "C" {
>
> #include <string.h>
>
> +#include <dev_driver.h>
> #include <rte_malloc.h>
> #include <rte_log.h>
> #include <rte_common.h>
> diff --git a/lib/cryptodev/rte_cryptodev.c b/lib/cryptodev/rte_cryptodev.c
> index 6250302f3b..29c9c55131 100644
> --- a/lib/cryptodev/rte_cryptodev.c
> +++ b/lib/cryptodev/rte_cryptodev.c
> @@ -13,7 +13,7 @@
>
> #include <rte_log.h>
> #include <rte_debug.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_memory.h>
> #include <rte_memcpy.h>
> #include <rte_memzone.h>
> diff --git a/lib/dmadev/rte_dmadev_pmd.h b/lib/dmadev/rte_dmadev_pmd.h
> index 82ab7a8cc7..acd7f71cd1 100644
> --- a/lib/dmadev/rte_dmadev_pmd.h
> +++ b/lib/dmadev/rte_dmadev_pmd.h
> @@ -14,7 +14,7 @@
> * by any application.
> */
>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
>
> #include "rte_dmadev.h"
>
> diff --git a/lib/eal/common/eal_common_dev.c
> b/lib/eal/common/eal_common_dev.c
> index 16c5aef1d8..98f3c78795 100644
> --- a/lib/eal/common/eal_common_dev.c
> +++ b/lib/eal/common/eal_common_dev.c
> @@ -9,7 +9,7 @@
>
> #include <bus_driver.h>
> #include <rte_class.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_devargs.h>
> #include <rte_errno.h>
> #include <rte_log.h>
> diff --git a/lib/eal/include/dev_driver.h b/lib/eal/include/dev_driver.h
> new file mode 100644
> index 0000000000..015188abd5
> --- /dev/null
> +++ b/lib/eal/include/dev_driver.h
> @@ -0,0 +1,28 @@
> +/* SPDX-License-Identifier: BSD-3-Clause
> + * Copyright (c) 2022 Red Hat, Inc.
> + */
> +
> +#ifndef DEV_DRIVER_H
> +#define DEV_DRIVER_H
> +
> +#ifdef __cplusplus
> +extern "C" {
> +#endif
> +
> +#include <rte_common.h>
> +#include <rte_dev.h>
> +
> +/**
> + * A structure describing a device driver.
> + */
> +struct rte_driver {
> + RTE_TAILQ_ENTRY(rte_driver) next; /**< Next in list. */
> + const char *name; /**< Driver name. */
> + const char *alias; /**< Driver alias. */
> +};
> +
> +#ifdef __cplusplus
> +}
> +#endif
> +
> +#endif /* DEV_DRIVER_H */
> diff --git a/lib/eal/include/meson.build b/lib/eal/include/meson.build
> index 77d8621a51..cfcd40aaed 100644
> --- a/lib/eal/include/meson.build
> +++ b/lib/eal/include/meson.build
> @@ -57,6 +57,7 @@ headers += files(
>
> driver_sdk_headers = files(
> 'bus_driver.h',
> + 'dev_driver.h',
> )
>
> # special case install the generic headers, since they go in a subdir
> diff --git a/lib/eal/include/rte_dev.h b/lib/eal/include/rte_dev.h
> index ddea163cca..7214f5d7fb 100644
> --- a/lib/eal/include/rte_dev.h
> +++ b/lib/eal/include/rte_dev.h
> @@ -24,6 +24,8 @@ extern "C" {
> #include <rte_compat.h>
> #include <rte_log.h>
>
> +struct rte_driver;
> +
> /**
> * The device event type.
> */
> @@ -67,27 +69,14 @@ struct rte_mem_resource {
> void *addr; /**< Virtual address, NULL when not mapped. */
> };
>
> -/**
> - * A structure describing a device driver.
> - */
> -struct rte_driver {
> - RTE_TAILQ_ENTRY(rte_driver) next; /**< Next in list. */
> - const char *name; /**< Driver name. */
> - const char *alias; /**< Driver alias. */
> -};
> -
> /**
> * Retrieve a driver name.
> *
> - * @warning
> - * @b EXPERIMENTAL: this API may change without prior notice
> - *
> * @param driver
> * A pointer to a driver structure.
> * @return
> * A pointer to the driver name string.
> */
> -__rte_experimental
> const char *
> rte_driver_name(const struct rte_driver *driver);
>
> diff --git a/lib/eal/version.map b/lib/eal/version.map
> index d10fd89458..8b53a1d258 100644
> --- a/lib/eal/version.map
> +++ b/lib/eal/version.map
> @@ -37,6 +37,7 @@ DPDK_23 {
> rte_devargs_parsef;
> rte_devargs_remove;
> rte_devargs_type_count;
> + rte_driver_name;
> rte_dump_physmem_layout;
> rte_dump_stack;
> rte_dump_tailq;
> @@ -423,9 +424,6 @@ EXPERIMENTAL {
> rte_thread_self;
> rte_thread_set_affinity_by_id;
> rte_thread_set_priority;
> -
> - # added in 22.11
> - rte_driver_name;
> };
>
> INTERNAL {
> diff --git a/lib/ethdev/ethdev_driver.h b/lib/ethdev/ethdev_driver.h
> index 5101868ea7..47a55a419e 100644
> --- a/lib/ethdev/ethdev_driver.h
> +++ b/lib/ethdev/ethdev_driver.h
> @@ -19,6 +19,7 @@ extern "C" {
> *
> */
>
> +#include <dev_driver.h>
> #include <rte_ethdev.h>
>
> /**
> diff --git a/lib/eventdev/eventdev_pmd.h b/lib/eventdev/eventdev_pmd.h
> index 69402668d8..def6cd0876 100644
> --- a/lib/eventdev/eventdev_pmd.h
> +++ b/lib/eventdev/eventdev_pmd.h
> @@ -22,7 +22,7 @@ extern "C" {
> #include <rte_common.h>
> #include <rte_compat.h>
> #include <rte_config.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_log.h>
> #include <rte_malloc.h>
> #include <rte_mbuf.h>
> diff --git a/lib/eventdev/rte_event_crypto_adapter.c
> b/lib/eventdev/rte_event_crypto_adapter.c
> index 4938b4ee07..a8ef5bac06 100644
> --- a/lib/eventdev/rte_event_crypto_adapter.c
> +++ b/lib/eventdev/rte_event_crypto_adapter.c
> @@ -6,7 +6,7 @@
> #include <string.h>
> #include <stdbool.h>
> #include <rte_common.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_errno.h>
> #include <rte_cryptodev.h>
> #include <cryptodev_pmd.h>
> diff --git a/lib/eventdev/rte_event_eth_rx_adapter.c
> b/lib/eventdev/rte_event_eth_rx_adapter.c
> index 8e81cf774d..29515401bd 100644
> --- a/lib/eventdev/rte_event_eth_rx_adapter.c
> +++ b/lib/eventdev/rte_event_eth_rx_adapter.c
> @@ -9,7 +9,7 @@
>
> #include <rte_cycles.h>
> #include <rte_common.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_errno.h>
> #include <ethdev_driver.h>
> #include <rte_log.h>
> diff --git a/lib/eventdev/rte_eventdev.c b/lib/eventdev/rte_eventdev.c
> index 79b905e9fc..bbb027aa0c 100644
> --- a/lib/eventdev/rte_eventdev.c
> +++ b/lib/eventdev/rte_eventdev.c
> @@ -12,7 +12,7 @@
>
> #include <rte_string_fns.h>
> #include <rte_log.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_memzone.h>
> #include <rte_eal.h>
> #include <rte_common.h>
> diff --git a/lib/gpudev/gpudev_driver.h b/lib/gpudev/gpudev_driver.h
> index 0e55b00bfe..23972b3dbd 100644
> --- a/lib/gpudev/gpudev_driver.h
> +++ b/lib/gpudev/gpudev_driver.h
> @@ -14,7 +14,7 @@
> #include <stdint.h>
> #include <sys/queue.h>
>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
>
> #include "rte_gpudev.h"
>
> diff --git a/lib/mempool/rte_mempool_ops.c
> b/lib/mempool/rte_mempool_ops.c
> index ac32c4bb72..3b43edc548 100644
> --- a/lib/mempool/rte_mempool_ops.c
> +++ b/lib/mempool/rte_mempool_ops.c
> @@ -9,7 +9,7 @@
> #include <rte_string_fns.h>
> #include <rte_mempool.h>
> #include <rte_errno.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
>
> #include "rte_mempool_trace.h"
>
> diff --git a/lib/pcapng/rte_pcapng.c b/lib/pcapng/rte_pcapng.c
> index 72aabd4dd0..af2b814251 100644
> --- a/lib/pcapng/rte_pcapng.c
> +++ b/lib/pcapng/rte_pcapng.c
> @@ -14,7 +14,7 @@
> #include <bus_driver.h>
> #include <rte_common.h>
> #include <rte_cycles.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_errno.h>
> #include <rte_ethdev.h>
> #include <rte_ether.h>
> diff --git a/lib/rawdev/rte_rawdev.c b/lib/rawdev/rte_rawdev.c
> index e157d65332..569e836560 100644
> --- a/lib/rawdev/rte_rawdev.c
> +++ b/lib/rawdev/rte_rawdev.c
> @@ -12,7 +12,7 @@
>
> #include <rte_string_fns.h>
> #include <rte_log.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_common.h>
> #include <rte_malloc.h>
> #include <rte_telemetry.h>
> diff --git a/lib/rawdev/rte_rawdev_pmd.h b/lib/rawdev/rte_rawdev_pmd.h
> index 3b7be57d3e..a51944c8ff 100644
> --- a/lib/rawdev/rte_rawdev_pmd.h
> +++ b/lib/rawdev/rte_rawdev_pmd.h
> @@ -19,7 +19,7 @@ extern "C" {
>
> #include <string.h>
>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_malloc.h>
> #include <rte_log.h>
> #include <rte_common.h>
> diff --git a/lib/security/rte_security.c b/lib/security/rte_security.c
> index 1a2a408f0e..94160f4177 100644
> --- a/lib/security/rte_security.c
> +++ b/lib/security/rte_security.c
> @@ -5,7 +5,7 @@
> */
>
> #include <rte_cryptodev.h>
> -#include <rte_dev.h>
> +#include <dev_driver.h>
> #include <rte_telemetry.h>
> #include "rte_security.h"
> #include "rte_security_driver.h"
> --
> 2.37.2