From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 09A8CA09EF for ; Wed, 13 Jan 2021 03:03:43 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id F1181140D54; Wed, 13 Jan 2021 03:03:42 +0100 (CET) Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by mails.dpdk.org (Postfix) with ESMTP id BCA6E140D45; Wed, 13 Jan 2021 03:03:39 +0100 (CET) IronPort-SDR: mbCl8/tRy9qoB59RsDesHPzbWvl3UY8DId2uN33kI5Sms8nIqQVJRx+UX6CtvHgYY2+qiQSh1R qhTYBzKK1uZA== X-IronPort-AV: E=McAfee;i="6000,8403,9862"; a="165223342" X-IronPort-AV: E=Sophos;i="5.79,343,1602572400"; d="scan'208";a="165223342" Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Jan 2021 18:03:38 -0800 IronPort-SDR: 8vObmw/hM4AwEjmbBqTJhyVn02y9qMbCyKl7qUKrkXlBx5n3rC4j6A8eryq6w095v9tqOz1Pa7 aOsTBckhgoIA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.79,343,1602572400"; d="scan'208";a="348659451" Received: from unknown (HELO sh_lab5_1.sh.intel.com) ([10.238.175.190]) by orsmga003.jf.intel.com with ESMTP; 12 Jan 2021 18:03:36 -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, 12 Jan 2021 21:03:47 -0500 Message-Id: <1610503431-25538-1-git-send-email-wei.huang@intel.com> X-Mailer: git-send-email 1.8.3.1 Subject: [dpdk-stable] [PATCH v10 0/4] raw/ifpga: add extra OPAE APIs X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org Sender: "stable" 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. Main changes from v9: - Add ifpga.rst to sample_app_ug/index.rst 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 MAINTAINERS | 1 + doc/guides/sample_app_ug/ifpga.rst | 433 +++++ doc/guides/sample_app_ug/index.rst | 1 + 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 | 435 +++++ 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 | 48 + drivers/raw/ifpga/base/opae_intel_max10.h | 44 + drivers/raw/ifpga/ifpga_opae_api.c | 1800 ++++++++++++++++++++ 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 | 19 + 28 files changed, 5763 insertions(+), 4 deletions(-) create mode 100644 doc/guides/sample_app_ug/ifpga.rst 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