Show a cover letter.

GET /api/covers/99250/?format=api
HTTP 200 OK
Allow: GET, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 99250,
    "url": "http://patches.dpdk.org/api/covers/99250/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/cover/20210918022443.12719-1-chenbo.xia@intel.com/",
    "project": {
        "id": 1,
        "url": "http://patches.dpdk.org/api/projects/1/?format=api",
        "name": "DPDK",
        "link_name": "dpdk",
        "list_id": "dev.dpdk.org",
        "list_email": "dev@dpdk.org",
        "web_url": "http://core.dpdk.org",
        "scm_url": "git://dpdk.org/dpdk",
        "webscm_url": "http://git.dpdk.org/dpdk",
        "list_archive_url": "https://inbox.dpdk.org/dev",
        "list_archive_url_format": "https://inbox.dpdk.org/dev/{}",
        "commit_url_format": ""
    },
    "msgid": "<20210918022443.12719-1-chenbo.xia@intel.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20210918022443.12719-1-chenbo.xia@intel.com",
    "date": "2021-09-18T02:24:36",
    "name": "[v2,0/7] Removal of PCI bus ABIs",
    "submitter": {
        "id": 1276,
        "url": "http://patches.dpdk.org/api/people/1276/?format=api",
        "name": "Chenbo Xia",
        "email": "chenbo.xia@intel.com"
    },
    "mbox": "http://patches.dpdk.org/project/dpdk/cover/20210918022443.12719-1-chenbo.xia@intel.com/mbox/",
    "series": [
        {
            "id": 19029,
            "url": "http://patches.dpdk.org/api/series/19029/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=19029",
            "date": "2021-09-18T02:24:36",
            "name": "Removal of PCI bus ABIs",
            "version": 2,
            "mbox": "http://patches.dpdk.org/series/19029/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/covers/99250/comments/",
    "headers": {
        "Return-Path": "<dev-bounces@dpdk.org>",
        "X-Original-To": "patchwork@inbox.dpdk.org",
        "Delivered-To": "patchwork@inbox.dpdk.org",
        "Received": [
            "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id AF834A0C47;\n\tSat, 18 Sep 2021 04:39:04 +0200 (CEST)",
            "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 8B3594014E;\n\tSat, 18 Sep 2021 04:39:04 +0200 (CEST)",
            "from mga02.intel.com (mga02.intel.com [134.134.136.20])\n by mails.dpdk.org (Postfix) with ESMTP id A110D4003D\n for <dev@dpdk.org>; Sat, 18 Sep 2021 04:39:02 +0200 (CEST)",
            "from fmsmga003.fm.intel.com ([10.253.24.29])\n by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 17 Sep 2021 19:39:01 -0700",
            "from npg-dpdk-virtio-xiachenbo-nw.sh.intel.com ([10.67.119.53])\n by FMSMGA003.fm.intel.com with ESMTP; 17 Sep 2021 19:39:00 -0700"
        ],
        "X-IronPort-AV": [
            "E=McAfee;i=\"6200,9189,10110\"; a=\"210144923\"",
            "E=Sophos;i=\"5.85,303,1624345200\"; d=\"scan'208\";a=\"210144923\"",
            "E=Sophos;i=\"5.85,303,1624345200\"; d=\"scan'208\";a=\"546751600\""
        ],
        "X-ExtLoop1": "1",
        "From": "Chenbo Xia <chenbo.xia@intel.com>",
        "To": "dev@dpdk.org,\n\tdavid.marchand@redhat.com",
        "Date": "Sat, 18 Sep 2021 10:24:36 +0800",
        "Message-Id": "<20210918022443.12719-1-chenbo.xia@intel.com>",
        "X-Mailer": "git-send-email 2.17.1",
        "In-Reply-To": "<20210910022402.26620-1-chenbo.xia@intel.com>",
        "References": "<20210910022402.26620-1-chenbo.xia@intel.com>",
        "Subject": "[dpdk-dev] [PATCH v2 0/7] Removal of PCI bus ABIs",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.29",
        "Precedence": "list",
        "List-Id": "DPDK patches and discussions <dev.dpdk.org>",
        "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>",
        "List-Archive": "<http://mails.dpdk.org/archives/dev/>",
        "List-Post": "<mailto:dev@dpdk.org>",
        "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
        "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dev-bounces@dpdk.org",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>"
    },
    "content": "As announced in the deprecation notice, most ABIs in PCI bus will be removed.\n\nAs there exist some applications that want to access PCI memory resource,\ntwo new APIs are defined in Patch 1 and corresponding changes are applied\nto testpmd in Patch 2.\n\nPatch 3-4 clean up the unnecessary usage of PCI bus header in examples.\n\nPatch 5-6 clean up the unused PCI related structure in kni library and related\ntests and examples.\n\nPatch 7 finally removes most of ABIs in PCI bus.\n\n---\nv2: \n - Add check on call of port_id_pci_reg_write (Xiaoyun)\n - Combine two clean-up patches in test and example, and backport (David)\n\nChenbo Xia (7):\n  bus/pci: add new memory resource access APIs\n  app/testpmd: use PCI memory resource access APIs\n  examples/ethtool: use PCI library API to get PCI address\n  examples/kni: remove unused PCI bus header\n  kni: remove unused PCI info from test and example\n  kni: replace unused variable definition with reserved bytes\n  bus/pci: remove ABIs in PCI bus\n\n app/test-pmd/config.c                         |  50 +--\n app/test-pmd/testpmd.h                        |  54 +--\n app/test/test_kni.c                           |  57 ---\n app/test/virtual_pmd.c                        |   2 +-\n doc/guides/rel_notes/release_21_11.rst        |   8 +\n drivers/baseband/acc100/rte_acc100_pmd.c      |   2 +-\n .../fpga_5gnr_fec/rte_fpga_5gnr_fec.c         |   2 +-\n drivers/baseband/fpga_lte_fec/fpga_lte_fec.c  |   2 +-\n drivers/bus/pci/bsd/pci.c                     |   1 -\n drivers/bus/pci/linux/pci.c                   |   1 -\n drivers/bus/pci/linux/pci_uio.c               |   1 -\n drivers/bus/pci/linux/pci_vfio.c              |   1 -\n drivers/bus/pci/meson.build                   |   4 +\n drivers/bus/pci/pci_common.c                  |  78 ++++\n drivers/bus/pci/pci_common_uio.c              |   1 -\n drivers/bus/pci/pci_driver.h                  | 402 ++++++++++++++++++\n drivers/bus/pci/pci_params.c                  |   1 -\n drivers/bus/pci/private.h                     |   3 +-\n drivers/bus/pci/rte_bus_pci.h                 | 387 ++---------------\n drivers/bus/pci/version.map                   |  28 +-\n drivers/common/cnxk/roc_platform.h            |   2 +-\n drivers/common/mlx5/linux/mlx5_common_verbs.c |   2 +-\n drivers/common/mlx5/mlx5_common_pci.c         |   2 +-\n drivers/common/octeontx2/otx2_dev.h           |   2 +-\n drivers/common/octeontx2/otx2_sec_idev.c      |   2 +-\n drivers/common/qat/qat_device.h               |   2 +-\n drivers/common/qat/qat_qp.c                   |   2 +-\n drivers/common/sfc_efx/sfc_efx.h              |   2 +-\n drivers/compress/mlx5/mlx5_compress.c         |   2 +-\n drivers/compress/octeontx/otx_zip.h           |   2 +-\n drivers/compress/qat/qat_comp.c               |   2 +-\n drivers/crypto/ccp/ccp_dev.h                  |   2 +-\n drivers/crypto/ccp/ccp_pci.h                  |   2 +-\n drivers/crypto/ccp/rte_ccp_pmd.c              |   2 +-\n drivers/crypto/cnxk/cn10k_cryptodev.c         |   2 +-\n drivers/crypto/cnxk/cn9k_cryptodev.c          |   2 +-\n drivers/crypto/mlx5/mlx5_crypto.c             |   2 +-\n drivers/crypto/nitrox/nitrox_device.h         |   2 +-\n drivers/crypto/octeontx/otx_cryptodev.c       |   2 +-\n drivers/crypto/octeontx/otx_cryptodev_ops.c   |   2 +-\n drivers/crypto/octeontx2/otx2_cryptodev.c     |   2 +-\n drivers/crypto/qat/qat_sym.c                  |   2 +-\n drivers/crypto/qat/qat_sym_pmd.c              |   2 +-\n drivers/crypto/virtio/virtio_cryptodev.c      |   2 +-\n drivers/crypto/virtio/virtio_pci.h            |   2 +-\n drivers/event/dlb2/pf/dlb2_main.h             |   2 +-\n drivers/event/dlb2/pf/dlb2_pf.c               |   2 +-\n drivers/event/octeontx/ssovf_probe.c          |   2 +-\n drivers/event/octeontx/timvf_probe.c          |   2 +-\n drivers/event/octeontx2/otx2_evdev.c          |   2 +-\n drivers/mempool/cnxk/cnxk_mempool.c           |   2 +-\n drivers/mempool/octeontx/octeontx_fpavf.c     |   2 +-\n drivers/mempool/octeontx2/otx2_mempool.c      |   2 +-\n drivers/mempool/octeontx2/otx2_mempool.h      |   2 +-\n drivers/mempool/octeontx2/otx2_mempool_irq.c  |   2 +-\n drivers/meson.build                           |   4 +\n drivers/net/ark/ark_ethdev.c                  |   2 +-\n drivers/net/avp/avp_ethdev.c                  |   2 +-\n drivers/net/bnx2x/bnx2x.h                     |   2 +-\n drivers/net/bnxt/bnxt.h                       |   2 +-\n drivers/net/bonding/rte_eth_bond_args.c       |   2 +-\n drivers/net/cxgbe/base/adapter.h              |   2 +-\n drivers/net/cxgbe/cxgbe_ethdev.c              |   2 +-\n drivers/net/e1000/em_ethdev.c                 |   2 +-\n drivers/net/e1000/em_rxtx.c                   |   2 +-\n drivers/net/e1000/igb_ethdev.c                |   2 +-\n drivers/net/e1000/igb_pf.c                    |   2 +-\n drivers/net/ena/ena_ethdev.h                  |   2 +-\n drivers/net/enic/base/vnic_dev.h              |   2 +-\n drivers/net/enic/enic_ethdev.c                |   2 +-\n drivers/net/enic/enic_main.c                  |   2 +-\n drivers/net/enic/enic_vf_representor.c        |   2 +-\n drivers/net/hinic/base/hinic_pmd_hwdev.c      |   2 +-\n drivers/net/hinic/base/hinic_pmd_hwif.c       |   2 +-\n drivers/net/hinic/base/hinic_pmd_nicio.c      |   2 +-\n drivers/net/hinic/hinic_pmd_ethdev.c          |   2 +-\n drivers/net/hns3/hns3_ethdev.c                |   2 +-\n drivers/net/hns3/hns3_rxtx.c                  |   2 +-\n drivers/net/i40e/i40e_ethdev.c                |   2 +-\n drivers/net/i40e/i40e_ethdev_vf.c             |   2 +-\n drivers/net/i40e/i40e_vf_representor.c        |   2 +-\n drivers/net/igc/igc_ethdev.c                  |   2 +-\n drivers/net/ionic/ionic.h                     |   2 +-\n drivers/net/ionic/ionic_ethdev.c              |   2 +-\n drivers/net/ipn3ke/ipn3ke_ethdev.c            |   2 +-\n drivers/net/ipn3ke/ipn3ke_representor.c       |   2 +-\n drivers/net/ipn3ke/ipn3ke_tm.c                |   2 +-\n drivers/net/ixgbe/ixgbe_ethdev.c              |   2 +-\n drivers/net/ixgbe/ixgbe_ethdev.h              |   2 +-\n drivers/net/mlx4/mlx4_ethdev.c                |   2 +-\n drivers/net/mlx5/linux/mlx5_ethdev_os.c       |   2 +-\n drivers/net/mlx5/linux/mlx5_os.c              |   2 +-\n drivers/net/mlx5/mlx5.c                       |   2 +-\n drivers/net/mlx5/mlx5_ethdev.c                |   2 +-\n drivers/net/mlx5/mlx5_txq.c                   |   2 +-\n drivers/net/netvsc/hn_vf.c                    |   2 +-\n drivers/net/octeontx/base/octeontx_pkivf.c    |   2 +-\n drivers/net/octeontx/base/octeontx_pkovf.c    |   2 +-\n drivers/net/octeontx2/otx2_ethdev_irq.c       |   2 +-\n drivers/net/qede/base/bcm_osal.h              |   2 +-\n drivers/net/sfc/sfc.h                         |   2 +-\n drivers/net/sfc/sfc_ethdev.c                  |   2 +-\n drivers/net/sfc/sfc_sriov.c                   |   2 +-\n drivers/net/thunderx/nicvf_ethdev.c           |   2 +-\n drivers/net/txgbe/txgbe_ethdev.h              |   2 +-\n drivers/net/txgbe/txgbe_flow.c                |   2 +-\n drivers/net/txgbe/txgbe_pf.c                  |   2 +-\n drivers/net/virtio/virtio_pci.h               |   2 +-\n drivers/net/virtio/virtio_pci_ethdev.c        |   2 +-\n drivers/net/vmxnet3/vmxnet3_ethdev.c          |   2 +-\n drivers/raw/cnxk_bphy/cnxk_bphy.c             |   2 +-\n drivers/raw/cnxk_bphy/cnxk_bphy_cgx.c         |   2 +-\n drivers/raw/cnxk_bphy/cnxk_bphy_irq.c         |   2 +-\n drivers/raw/cnxk_bphy/cnxk_bphy_irq.h         |   2 +-\n drivers/raw/ifpga/ifpga_rawdev.c              |   2 +-\n drivers/raw/ifpga/rte_pmd_ifpga.c             |   2 +-\n drivers/raw/ioat/idxd_pci.c                   |   2 +-\n drivers/raw/ioat/ioat_rawdev.c                |   2 +-\n drivers/raw/ntb/ntb.c                         |   2 +-\n drivers/raw/ntb/ntb_hw_intel.c                |   2 +-\n drivers/raw/octeontx2_dma/otx2_dpi_rawdev.c   |   2 +-\n drivers/raw/octeontx2_ep/otx2_ep_enqdeq.c     |   2 +-\n drivers/raw/octeontx2_ep/otx2_ep_rawdev.c     |   2 +-\n drivers/regex/mlx5/mlx5_regex.c               |   2 +-\n drivers/regex/mlx5/mlx5_regex_fastpath.c      |   2 +-\n drivers/vdpa/ifc/base/ifcvf_osdep.h           |   2 +-\n drivers/vdpa/ifc/ifcvf_vdpa.c                 |   2 +-\n drivers/vdpa/mlx5/mlx5_vdpa.c                 |   2 +-\n examples/ethtool/lib/rte_ethtool.c            |  14 +-\n examples/ethtool/meson.build                  |   2 +-\n examples/ip_pipeline/kni.c                    |  16 -\n examples/kni/main.c                           |   1 -\n lib/ethdev/ethdev_pci.h                       |   2 +-\n lib/eventdev/eventdev_pmd_pci.h               |   2 +-\n lib/kni/rte_kni.h                             |   4 +-\n 135 files changed, 711 insertions(+), 633 deletions(-)\n create mode 100644 drivers/bus/pci/pci_driver.h"
}