From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by dpdk.org (Postfix) with ESMTP id C4F255F19 for ; Fri, 9 Mar 2018 16:35:37 +0100 (CET) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by orsmga104.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 09 Mar 2018 07:35:36 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.47,446,1515484800"; d="scan'208";a="210253964" Received: from dpdkx8602.sh.intel.com ([10.67.110.200]) by fmsmga006.fm.intel.com with ESMTP; 09 Mar 2018 07:35:35 -0800 From: Rosen Xu To: dev@dpdk.org Cc: declan.doherty@intel.com, shreyansh.jain@nxp.com, tianfei.zhang@intel.com, hao.wu@intel.com, gaetan.rivet@6wind.com Date: Fri, 9 Mar 2018 23:38:59 +0800 Message-Id: <1520609944-120305-1-git-send-email-rosen.xu@intel.com> X-Mailer: git-send-email 1.8.3.1 Subject: [dpdk-dev] [RFC 0/5] Intel FPGA BUS X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 09 Mar 2018 15:35:38 -0000 With Partial Reconfigure(PR) parts of Bitstream, Field Programmable Gate Array(FPGA) not only provides one kinds of accelerator but also provides many types of accelerators at the same time. How DPDK fully support FPGA? - We use Rawdev to provide FPGA PR - DPDK Driver will not bind to PCI Device it will bind to FPGA Partial-Bitstream(AFU,Accelerated Function Unit) - For the new Device scan, driver probe, we involve Intel FPGA Bus Module This patchset is base on v18.02. Rosen Xu (5): Add Intel FPGA BUS Command Parse Code Add Intel FPGA BUS Probe Code Add Intel FPGA BUS Lib Code Add Intel FPGA BUS Rawdev Code Add Intel OPAE Share Code drivers/bus/ifpga/Makefile | 64 + drivers/bus/ifpga/ifpga_bus.c | 573 +++++++ drivers/bus/ifpga/ifpga_common.c | 154 ++ drivers/bus/ifpga/ifpga_common.h | 25 + drivers/bus/ifpga/ifpga_logs.h | 32 + drivers/bus/ifpga/rte_bus_ifpga.h | 141 ++ drivers/bus/ifpga/rte_bus_ifpga_version.map | 8 + drivers/raw/ifpga_rawdev/Makefile | 63 + drivers/raw/ifpga_rawdev/base/Makefile | 54 + drivers/raw/ifpga_rawdev/base/ifpga_api.c | 420 +++++ drivers/raw/ifpga_rawdev/base/ifpga_api.h | 78 + drivers/raw/ifpga_rawdev/base/ifpga_compat.h | 85 + drivers/raw/ifpga_rawdev/base/ifpga_defines.h | 1699 ++++++++++++++++++++ drivers/raw/ifpga_rawdev/base/ifpga_enumerate.c | 808 ++++++++++ drivers/raw/ifpga_rawdev/base/ifpga_enumerate.h | 39 + drivers/raw/ifpga_rawdev/base/ifpga_feature_dev.c | 305 ++++ drivers/raw/ifpga_rawdev/base/ifpga_feature_dev.h | 197 +++ drivers/raw/ifpga_rawdev/base/ifpga_fme.c | 731 +++++++++ drivers/raw/ifpga_rawdev/base/ifpga_fme_dperf.c | 297 ++++ drivers/raw/ifpga_rawdev/base/ifpga_fme_error.c | 399 +++++ drivers/raw/ifpga_rawdev/base/ifpga_fme_iperf.c | 711 ++++++++ drivers/raw/ifpga_rawdev/base/ifpga_fme_pr.c | 364 +++++ drivers/raw/ifpga_rawdev/base/ifpga_hw.h | 145 ++ drivers/raw/ifpga_rawdev/base/ifpga_port.c | 699 ++++++++ drivers/raw/ifpga_rawdev/base/ifpga_port_error.c | 112 ++ drivers/raw/ifpga_rawdev/base/opae_debug.c | 95 ++ drivers/raw/ifpga_rawdev/base/opae_debug.h | 15 + drivers/raw/ifpga_rawdev/base/opae_hw_api.c | 355 ++++ drivers/raw/ifpga_rawdev/base/opae_hw_api.h | 235 +++ drivers/raw/ifpga_rawdev/base/opae_ifpga_hw_api.c | 120 ++ drivers/raw/ifpga_rawdev/base/opae_ifpga_hw_api.h | 253 +++ drivers/raw/ifpga_rawdev/base/opae_osdep.h | 87 + .../ifpga_rawdev/base/osdep_raw/osdep_generic.h | 69 + .../ifpga_rawdev/base/osdep_rte/osdep_generic.h | 41 + drivers/raw/ifpga_rawdev/ifpga_rawdev.c | 472 ++++++ drivers/raw/ifpga_rawdev/ifpga_rawdev.h | 38 + drivers/raw/ifpga_rawdev/ifpga_rawdev_example.c | 99 ++ .../ifpga_rawdev/rte_pmd_ifpga_rawdev_version.map | 4 + lib/librte_eal/common/eal_common_bus.c | 14 +- lib/librte_eal/common/eal_common_options.c | 8 +- lib/librte_eal/common/eal_options.h | 2 + 41 files changed, 10108 insertions(+), 2 deletions(-) create mode 100644 drivers/bus/ifpga/Makefile create mode 100644 drivers/bus/ifpga/ifpga_bus.c create mode 100644 drivers/bus/ifpga/ifpga_common.c create mode 100644 drivers/bus/ifpga/ifpga_common.h create mode 100644 drivers/bus/ifpga/ifpga_logs.h create mode 100644 drivers/bus/ifpga/rte_bus_ifpga.h create mode 100644 drivers/bus/ifpga/rte_bus_ifpga_version.map create mode 100644 drivers/raw/ifpga_rawdev/Makefile create mode 100644 drivers/raw/ifpga_rawdev/base/Makefile create mode 100644 drivers/raw/ifpga_rawdev/base/ifpga_api.c create mode 100644 drivers/raw/ifpga_rawdev/base/ifpga_api.h create mode 100644 drivers/raw/ifpga_rawdev/base/ifpga_compat.h create mode 100644 drivers/raw/ifpga_rawdev/base/ifpga_defines.h create mode 100644 drivers/raw/ifpga_rawdev/base/ifpga_enumerate.c create mode 100644 drivers/raw/ifpga_rawdev/base/ifpga_enumerate.h create mode 100644 drivers/raw/ifpga_rawdev/base/ifpga_feature_dev.c create mode 100644 drivers/raw/ifpga_rawdev/base/ifpga_feature_dev.h create mode 100644 drivers/raw/ifpga_rawdev/base/ifpga_fme.c create mode 100644 drivers/raw/ifpga_rawdev/base/ifpga_fme_dperf.c create mode 100644 drivers/raw/ifpga_rawdev/base/ifpga_fme_error.c create mode 100644 drivers/raw/ifpga_rawdev/base/ifpga_fme_iperf.c create mode 100644 drivers/raw/ifpga_rawdev/base/ifpga_fme_pr.c create mode 100644 drivers/raw/ifpga_rawdev/base/ifpga_hw.h create mode 100644 drivers/raw/ifpga_rawdev/base/ifpga_port.c create mode 100644 drivers/raw/ifpga_rawdev/base/ifpga_port_error.c create mode 100644 drivers/raw/ifpga_rawdev/base/opae_debug.c create mode 100644 drivers/raw/ifpga_rawdev/base/opae_debug.h create mode 100644 drivers/raw/ifpga_rawdev/base/opae_hw_api.c create mode 100644 drivers/raw/ifpga_rawdev/base/opae_hw_api.h create mode 100644 drivers/raw/ifpga_rawdev/base/opae_ifpga_hw_api.c create mode 100644 drivers/raw/ifpga_rawdev/base/opae_ifpga_hw_api.h create mode 100644 drivers/raw/ifpga_rawdev/base/opae_osdep.h create mode 100644 drivers/raw/ifpga_rawdev/base/osdep_raw/osdep_generic.h create mode 100644 drivers/raw/ifpga_rawdev/base/osdep_rte/osdep_generic.h create mode 100644 drivers/raw/ifpga_rawdev/ifpga_rawdev.c create mode 100644 drivers/raw/ifpga_rawdev/ifpga_rawdev.h create mode 100644 drivers/raw/ifpga_rawdev/ifpga_rawdev_example.c create mode 100644 drivers/raw/ifpga_rawdev/rte_pmd_ifpga_rawdev_version.map -- 1.8.3.1