From: Chenbo Xia <chenbo.xia@intel.com>
To: dev@dpdk.org, david.marchand@redhat.com
Subject: [dpdk-dev] [PATCH v2 0/7] Removal of PCI bus ABIs
Date: Sat, 18 Sep 2021 10:24:36 +0800 [thread overview]
Message-ID: <20210918022443.12719-1-chenbo.xia@intel.com> (raw)
In-Reply-To: <20210910022402.26620-1-chenbo.xia@intel.com>
As announced in the deprecation notice, most ABIs in PCI bus will be removed.
As there exist some applications that want to access PCI memory resource,
two new APIs are defined in Patch 1 and corresponding changes are applied
to testpmd in Patch 2.
Patch 3-4 clean up the unnecessary usage of PCI bus header in examples.
Patch 5-6 clean up the unused PCI related structure in kni library and related
tests and examples.
Patch 7 finally removes most of ABIs in PCI bus.
---
v2:
- Add check on call of port_id_pci_reg_write (Xiaoyun)
- Combine two clean-up patches in test and example, and backport (David)
Chenbo Xia (7):
bus/pci: add new memory resource access APIs
app/testpmd: use PCI memory resource access APIs
examples/ethtool: use PCI library API to get PCI address
examples/kni: remove unused PCI bus header
kni: remove unused PCI info from test and example
kni: replace unused variable definition with reserved bytes
bus/pci: remove ABIs in PCI bus
app/test-pmd/config.c | 50 +--
app/test-pmd/testpmd.h | 54 +--
app/test/test_kni.c | 57 ---
app/test/virtual_pmd.c | 2 +-
doc/guides/rel_notes/release_21_11.rst | 8 +
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/pci/bsd/pci.c | 1 -
drivers/bus/pci/linux/pci.c | 1 -
drivers/bus/pci/linux/pci_uio.c | 1 -
drivers/bus/pci/linux/pci_vfio.c | 1 -
drivers/bus/pci/meson.build | 4 +
drivers/bus/pci/pci_common.c | 78 ++++
drivers/bus/pci/pci_common_uio.c | 1 -
drivers/bus/pci/pci_driver.h | 402 ++++++++++++++++++
drivers/bus/pci/pci_params.c | 1 -
drivers/bus/pci/private.h | 3 +-
drivers/bus/pci/rte_bus_pci.h | 387 ++---------------
drivers/bus/pci/version.map | 28 +-
drivers/common/cnxk/roc_platform.h | 2 +-
drivers/common/mlx5/linux/mlx5_common_verbs.c | 2 +-
drivers/common/mlx5/mlx5_common_pci.c | 2 +-
drivers/common/octeontx2/otx2_dev.h | 2 +-
drivers/common/octeontx2/otx2_sec_idev.c | 2 +-
drivers/common/qat/qat_device.h | 2 +-
drivers/common/qat/qat_qp.c | 2 +-
drivers/common/sfc_efx/sfc_efx.h | 2 +-
drivers/compress/mlx5/mlx5_compress.c | 2 +-
drivers/compress/octeontx/otx_zip.h | 2 +-
drivers/compress/qat/qat_comp.c | 2 +-
drivers/crypto/ccp/ccp_dev.h | 2 +-
drivers/crypto/ccp/ccp_pci.h | 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/mlx5/mlx5_crypto.c | 2 +-
drivers/crypto/nitrox/nitrox_device.h | 2 +-
drivers/crypto/octeontx/otx_cryptodev.c | 2 +-
drivers/crypto/octeontx/otx_cryptodev_ops.c | 2 +-
drivers/crypto/octeontx2/otx2_cryptodev.c | 2 +-
drivers/crypto/qat/qat_sym.c | 2 +-
drivers/crypto/qat/qat_sym_pmd.c | 2 +-
drivers/crypto/virtio/virtio_cryptodev.c | 2 +-
drivers/crypto/virtio/virtio_pci.h | 2 +-
drivers/event/dlb2/pf/dlb2_main.h | 2 +-
drivers/event/dlb2/pf/dlb2_pf.c | 2 +-
drivers/event/octeontx/ssovf_probe.c | 2 +-
drivers/event/octeontx/timvf_probe.c | 2 +-
drivers/event/octeontx2/otx2_evdev.c | 2 +-
drivers/mempool/cnxk/cnxk_mempool.c | 2 +-
drivers/mempool/octeontx/octeontx_fpavf.c | 2 +-
drivers/mempool/octeontx2/otx2_mempool.c | 2 +-
drivers/mempool/octeontx2/otx2_mempool.h | 2 +-
drivers/mempool/octeontx2/otx2_mempool_irq.c | 2 +-
drivers/meson.build | 4 +
drivers/net/ark/ark_ethdev.c | 2 +-
drivers/net/avp/avp_ethdev.c | 2 +-
drivers/net/bnx2x/bnx2x.h | 2 +-
drivers/net/bnxt/bnxt.h | 2 +-
drivers/net/bonding/rte_eth_bond_args.c | 2 +-
drivers/net/cxgbe/base/adapter.h | 2 +-
drivers/net/cxgbe/cxgbe_ethdev.c | 2 +-
drivers/net/e1000/em_ethdev.c | 2 +-
drivers/net/e1000/em_rxtx.c | 2 +-
drivers/net/e1000/igb_ethdev.c | 2 +-
drivers/net/e1000/igb_pf.c | 2 +-
drivers/net/ena/ena_ethdev.h | 2 +-
drivers/net/enic/base/vnic_dev.h | 2 +-
drivers/net/enic/enic_ethdev.c | 2 +-
drivers/net/enic/enic_main.c | 2 +-
drivers/net/enic/enic_vf_representor.c | 2 +-
drivers/net/hinic/base/hinic_pmd_hwdev.c | 2 +-
drivers/net/hinic/base/hinic_pmd_hwif.c | 2 +-
drivers/net/hinic/base/hinic_pmd_nicio.c | 2 +-
drivers/net/hinic/hinic_pmd_ethdev.c | 2 +-
drivers/net/hns3/hns3_ethdev.c | 2 +-
drivers/net/hns3/hns3_rxtx.c | 2 +-
drivers/net/i40e/i40e_ethdev.c | 2 +-
drivers/net/i40e/i40e_ethdev_vf.c | 2 +-
drivers/net/i40e/i40e_vf_representor.c | 2 +-
drivers/net/igc/igc_ethdev.c | 2 +-
drivers/net/ionic/ionic.h | 2 +-
drivers/net/ionic/ionic_ethdev.c | 2 +-
drivers/net/ipn3ke/ipn3ke_ethdev.c | 2 +-
drivers/net/ipn3ke/ipn3ke_representor.c | 2 +-
drivers/net/ipn3ke/ipn3ke_tm.c | 2 +-
drivers/net/ixgbe/ixgbe_ethdev.c | 2 +-
drivers/net/ixgbe/ixgbe_ethdev.h | 2 +-
drivers/net/mlx4/mlx4_ethdev.c | 2 +-
drivers/net/mlx5/linux/mlx5_ethdev_os.c | 2 +-
drivers/net/mlx5/linux/mlx5_os.c | 2 +-
drivers/net/mlx5/mlx5.c | 2 +-
drivers/net/mlx5/mlx5_ethdev.c | 2 +-
drivers/net/mlx5/mlx5_txq.c | 2 +-
drivers/net/netvsc/hn_vf.c | 2 +-
drivers/net/octeontx/base/octeontx_pkivf.c | 2 +-
drivers/net/octeontx/base/octeontx_pkovf.c | 2 +-
drivers/net/octeontx2/otx2_ethdev_irq.c | 2 +-
drivers/net/qede/base/bcm_osal.h | 2 +-
drivers/net/sfc/sfc.h | 2 +-
drivers/net/sfc/sfc_ethdev.c | 2 +-
drivers/net/sfc/sfc_sriov.c | 2 +-
drivers/net/thunderx/nicvf_ethdev.c | 2 +-
drivers/net/txgbe/txgbe_ethdev.h | 2 +-
drivers/net/txgbe/txgbe_flow.c | 2 +-
drivers/net/txgbe/txgbe_pf.c | 2 +-
drivers/net/virtio/virtio_pci.h | 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/cnxk_bphy/cnxk_bphy_cgx.c | 2 +-
drivers/raw/cnxk_bphy/cnxk_bphy_irq.c | 2 +-
drivers/raw/cnxk_bphy/cnxk_bphy_irq.h | 2 +-
drivers/raw/ifpga/ifpga_rawdev.c | 2 +-
drivers/raw/ifpga/rte_pmd_ifpga.c | 2 +-
drivers/raw/ioat/idxd_pci.c | 2 +-
drivers/raw/ioat/ioat_rawdev.c | 2 +-
drivers/raw/ntb/ntb.c | 2 +-
drivers/raw/ntb/ntb_hw_intel.c | 2 +-
drivers/raw/octeontx2_dma/otx2_dpi_rawdev.c | 2 +-
drivers/raw/octeontx2_ep/otx2_ep_enqdeq.c | 2 +-
drivers/raw/octeontx2_ep/otx2_ep_rawdev.c | 2 +-
drivers/regex/mlx5/mlx5_regex.c | 2 +-
drivers/regex/mlx5/mlx5_regex_fastpath.c | 2 +-
drivers/vdpa/ifc/base/ifcvf_osdep.h | 2 +-
drivers/vdpa/ifc/ifcvf_vdpa.c | 2 +-
drivers/vdpa/mlx5/mlx5_vdpa.c | 2 +-
examples/ethtool/lib/rte_ethtool.c | 14 +-
examples/ethtool/meson.build | 2 +-
examples/ip_pipeline/kni.c | 16 -
examples/kni/main.c | 1 -
lib/ethdev/ethdev_pci.h | 2 +-
lib/eventdev/eventdev_pmd_pci.h | 2 +-
lib/kni/rte_kni.h | 4 +-
135 files changed, 711 insertions(+), 633 deletions(-)
create mode 100644 drivers/bus/pci/pci_driver.h
--
2.17.1
next prev parent reply other threads:[~2021-09-18 2:39 UTC|newest]
Thread overview: 59+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-09-10 2:23 [dpdk-dev] [PATCH 0/8] " Chenbo Xia
2021-09-10 2:23 ` [dpdk-dev] [PATCH 1/8] bus/pci: add new memory resource access APIs Chenbo Xia
2021-09-13 11:59 ` Kinsella, Ray
2021-09-10 2:23 ` [dpdk-dev] [PATCH 2/8] app/testpmd: use PCI " Chenbo Xia
2021-09-16 6:10 ` Li, Xiaoyun
2021-09-16 6:38 ` Xia, Chenbo
2021-09-10 2:23 ` [dpdk-dev] [PATCH 3/8] examples/ethtool: use PCI library API to get PCI address Chenbo Xia
2021-09-10 2:23 ` [dpdk-dev] [PATCH 4/8] examples/kni: remove unused PCI bus header Chenbo Xia
2021-09-17 15:38 ` Ferruh Yigit
2021-09-10 2:23 ` [dpdk-dev] [PATCH 5/8] test/kni: remove setting of PCI ID and address Chenbo Xia
2021-09-10 7:12 ` David Marchand
2021-09-17 15:38 ` Ferruh Yigit
2021-09-10 2:24 ` [dpdk-dev] [PATCH 6/8] examples/ip_pipeline: " Chenbo Xia
2021-09-10 7:18 ` David Marchand
2021-09-10 8:21 ` Xia, Chenbo
2021-09-17 3:09 ` Xia, Chenbo
2021-09-17 11:55 ` David Marchand
2021-09-17 15:37 ` Ferruh Yigit
2021-09-10 2:24 ` [dpdk-dev] [PATCH 7/8] kni: replace unused variable definition with reserved bytes Chenbo Xia
2021-09-10 2:24 ` [dpdk-dev] [PATCH 8/8] bus/pci: remove ABIs in PCI bus Chenbo Xia
2021-09-13 12:06 ` Kinsella, Ray
2021-09-14 8:15 ` Xu, Rosen
2021-09-18 2:24 ` Chenbo Xia [this message]
2021-09-18 2:24 ` [dpdk-dev] [PATCH v2 1/7] bus/pci: add new memory resource access APIs Chenbo Xia
2021-09-18 2:24 ` [dpdk-dev] [PATCH v2 2/7] app/testpmd: use PCI " Chenbo Xia
2021-09-18 2:44 ` Li, Xiaoyun
2021-09-18 2:24 ` [dpdk-dev] [PATCH v2 3/7] examples/ethtool: use PCI library API to get PCI address Chenbo Xia
2021-09-18 2:24 ` [dpdk-dev] [PATCH v2 4/7] examples/kni: remove unused PCI bus header Chenbo Xia
2021-09-18 2:24 ` [dpdk-dev] [PATCH v2 5/7] kni: remove unused PCI info from test and example Chenbo Xia
2021-09-18 2:24 ` [dpdk-dev] [PATCH v2 6/7] kni: replace unused variable definition with reserved bytes Chenbo Xia
2021-09-18 2:24 ` [dpdk-dev] [PATCH v2 7/7] bus/pci: remove ABIs in PCI bus Chenbo Xia
2021-09-29 7:38 ` [dpdk-dev] [PATCH v2 0/7] Removal of PCI bus ABIs Xia, Chenbo
2021-09-30 8:45 ` David Marchand
2021-10-04 13:37 ` David Marchand
2021-10-04 15:56 ` Harris, James R
2021-10-06 4:25 ` Xia, Chenbo
2021-10-08 6:15 ` Liu, Changpeng
2021-10-08 7:08 ` David Marchand
2021-10-08 7:44 ` Liu, Changpeng
2021-10-11 6:58 ` Xia, Chenbo
2021-10-11 12:55 ` Thomas Monjalon
2021-10-12 0:35 ` Harris, James R
2021-10-12 7:04 ` Thomas Monjalon
2021-10-12 16:59 ` Walker, Benjamin
2021-10-12 18:43 ` Thomas Monjalon
2021-10-12 19:26 ` Walker, Benjamin
2021-10-12 21:50 ` Thomas Monjalon
2021-10-13 17:56 ` Walker, Benjamin
2021-10-13 18:59 ` Thomas Monjalon
2021-10-13 22:48 ` Walker, Benjamin
2021-10-14 6:41 ` Thomas Monjalon
2022-07-11 12:11 ` Thomas Monjalon
2021-10-14 2:21 ` Xia, Chenbo
2021-10-14 6:41 ` Thomas Monjalon
2021-10-14 7:00 ` Xia, Chenbo
2021-10-14 7:07 ` Thomas Monjalon
2021-10-14 8:07 ` Xia, Chenbo
2021-10-14 8:25 ` Thomas Monjalon
2021-10-27 12:03 ` Xia, Chenbo
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=20210918022443.12719-1-chenbo.xia@intel.com \
--to=chenbo.xia@intel.com \
--cc=david.marchand@redhat.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).