From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id EB64BA09FF; Wed, 30 Dec 2020 02:54:15 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id CD6032C7A; Wed, 30 Dec 2020 02:54:13 +0100 (CET) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by dpdk.org (Postfix) with ESMTP id 13D552A66; Wed, 30 Dec 2020 02:54:10 +0100 (CET) IronPort-SDR: +YZ42ydj9/8C3OEAeh5CVZ1lDWBOHYlcubx3cYQbgImJCXr4Q+UwxFv1/q92QbavLOZKSmim+i i5659IioGbuQ== X-IronPort-AV: E=McAfee;i="6000,8403,9849"; a="176712119" X-IronPort-AV: E=Sophos;i="5.78,459,1599548400"; d="scan'208";a="176712119" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 29 Dec 2020 17:54:08 -0800 IronPort-SDR: j0WREqI/HsC3gYbrMC4lR7YNFtSbrlciqwCQgu/DdAq5/Gj2Y1e7WD4Qq3wPzN9e6VUlCBRMpB PrbuOcEur8RA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.78,459,1599548400"; d="scan'208";a="460317208" Received: from unknown (HELO localhost.localdomain.sh.intel.com) ([10.238.175.190]) by fmsmga001.fm.intel.com with ESMTP; 29 Dec 2020 17:54:07 -0800 From: Wei Huang To: dev@dpdk.org, rosen.xu@intel.com, qi.z.zhang@intel.com Cc: stable@dpdk.org, tianfei.zhang@intel.com, Wei Huang Date: Tue, 29 Dec 2020 20:54:11 -0500 Message-Id: <1609293255-2781-1-git-send-email-wei.huang@intel.com> X-Mailer: git-send-email 1.8.3.1 Subject: [dpdk-dev] [PATCH v1 0/4] raw/ifpga: add extra OPAE APIs 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: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Cyborg is part of OpenStack, it needs some OPAE APIs to manage devices with Intel FPGA. The first three patches implement extra APIs to meet Cyborg requirement. The last patch add an example to show how to use these APIs. Wei Huang (4): raw/ifpga: add fpga rsu function raw/ifpga: add fpga property get function raw/ifpga: add opae API for Cyborg examples/ifpga: add example for opae ifpga API drivers/raw/ifpga/base/ifpga_api.c | 34 + drivers/raw/ifpga/base/ifpga_defines.h | 1 + drivers/raw/ifpga/base/ifpga_feature_dev.c | 21 + drivers/raw/ifpga/base/ifpga_feature_dev.h | 1 + drivers/raw/ifpga/base/ifpga_fme.c | 36 +- drivers/raw/ifpga/base/ifpga_fme_rsu.c | 437 +++++ drivers/raw/ifpga/base/ifpga_hw.h | 1 + drivers/raw/ifpga/base/ifpga_sec_mgr.c | 639 +++++++ drivers/raw/ifpga/base/ifpga_sec_mgr.h | 89 + drivers/raw/ifpga/base/meson.build | 2 + drivers/raw/ifpga/base/opae_hw_api.c | 77 + drivers/raw/ifpga/base/opae_hw_api.h | 13 + drivers/raw/ifpga/base/opae_ifpga_hw_api.h | 1 + drivers/raw/ifpga/base/opae_intel_max10.c | 51 + drivers/raw/ifpga/base/opae_intel_max10.h | 44 + drivers/raw/ifpga/ifpga_opae_api.c | 1801 ++++++++++++++++++++ drivers/raw/ifpga/ifpga_opae_api.h | 245 +++ drivers/raw/ifpga/ifpga_rawdev.c | 352 ++++ drivers/raw/ifpga/ifpga_rawdev.h | 50 +- drivers/raw/ifpga/meson.build | 4 +- examples/ifpga/Makefile | 45 + examples/ifpga/commands.c | 1321 ++++++++++++++ examples/ifpga/commands.h | 16 + examples/ifpga/main.c | 38 + examples/ifpga/meson.build | 13 + examples/meson.build | 2 +- 26 files changed, 5329 insertions(+), 5 deletions(-) create mode 100644 drivers/raw/ifpga/base/ifpga_fme_rsu.c create mode 100644 drivers/raw/ifpga/base/ifpga_sec_mgr.c create mode 100644 drivers/raw/ifpga/base/ifpga_sec_mgr.h create mode 100644 drivers/raw/ifpga/ifpga_opae_api.c create mode 100644 drivers/raw/ifpga/ifpga_opae_api.h create mode 100644 examples/ifpga/Makefile create mode 100644 examples/ifpga/commands.c create mode 100644 examples/ifpga/commands.h create mode 100644 examples/ifpga/main.c create mode 100644 examples/ifpga/meson.build -- 2.29.2