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 AF882A0A00 for ; Wed, 30 Dec 2020 07:26:20 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 9210BC8E0; Wed, 30 Dec 2020 07:26:19 +0100 (CET) Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by dpdk.org (Postfix) with ESMTP id 3F01A2C7A; Wed, 30 Dec 2020 07:26:15 +0100 (CET) IronPort-SDR: 9k/F7g8Q6V4zQ2LThIEV6pDSDNIN5UDPdkgMsGLJ5H+pgcUHrnkLn/8uWH0XGVBgQ4ALov7Mus B3pZi6Ndt+zw== X-IronPort-AV: E=McAfee;i="6000,8403,9849"; a="195071220" X-IronPort-AV: E=Sophos;i="5.78,460,1599548400"; d="scan'208";a="195071220" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 29 Dec 2020 22:26:13 -0800 IronPort-SDR: 80MRhdh5GUq7MFctJNthDqEWN35X3Upr8L7lTDE3HlaH8tDGrl+Z1AtqQGIGqgVNP393cW4f3F rwlOrkXO89BA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.78,460,1599548400"; d="scan'208";a="460372016" Received: from sh_lab5_1.sh.intel.com ([10.238.175.190]) by fmsmga001.fm.intel.com with ESMTP; 29 Dec 2020 22:26:11 -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: Wed, 30 Dec 2020 01:26:21 -0500 Message-Id: <1609309585-9130-1-git-send-email-wei.huang@intel.com> X-Mailer: git-send-email 1.8.3.1 Subject: [dpdk-stable] [PATCH v3 0/4] raw/ifpga: add extra OPAE APIs X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.15 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 v2: - Fix coding style issue 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 | 436 +++++ 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, 5328 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