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 CECC4A3201 for ; Mon, 21 Oct 2019 08:36:31 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 81864F3E; Mon, 21 Oct 2019 08:36:30 +0200 (CEST) Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by dpdk.org (Postfix) with ESMTP id DFA71F04 for ; Mon, 21 Oct 2019 08:36:28 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga104.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 20 Oct 2019 23:36:27 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.67,322,1566889200"; d="scan'208";a="209378128" Received: from dpdk-dipei.sh.intel.com ([10.67.110.224]) by fmsmga001.fm.intel.com with ESMTP; 20 Oct 2019 23:36:26 -0700 From: Andy Pei To: dev@dpdk.org Cc: rosen.xu@intel.com, tianfei.zhang@intel.com, andy.pei@intel.com, xiaolong.ye@intel.com, qi.z.zhang@intel.com Date: Mon, 21 Oct 2019 14:23:02 +0800 Message-Id: <1571639001-106193-1-git-send-email-andy.pei@intel.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1571037064-382519-2-git-send-email-andy.pei@intel.com> References: <1571037064-382519-2-git-send-email-andy.pei@intel.com> Subject: [dpdk-dev] [PATCH v10 00/19] add PCIe AER disable and IRQ support for ipn3ke 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" This patch set adds PCIe AER disable and FPGA interrupt support for ipn3ke. It also provides a small rework for port bonding between FPGA line side port and I40e PF port. What is the PCI Express AER(Advanced Error Reporting)? Advanced Error Reporting capability is implemented with a PCI Express advanced error reporting extended capability structure providing more robust error reporting. It's also one of PCI Express error reporting paradigms. AER is supported by most of PCIe devices. In PAC N3000 card, some uncertainty errors will cause FPGA reload, such as temperature is higher than threshold. From Software point of view, FPGA reload means FPGA unplug and plug. For avoiding system crash we need to clear AER register before these errors occur. Currently PAC N3000 card FME and AFU all provide interrupts, in ifpga rawdev driver, we implement a FME interrupt function to notify errors reported by FME. Besides this, OPAE share code also provide a common AFU interrupt API for users to register their own interrupt functions. Andy Pei (2): net/i40e: i40e support ipn3ke FPGA port bonding raw/ifpga: add lightweight fpga image support Rosen Xu (3): raw/ifpga: add SEU error handler raw/ifpga: add PCIe BDF devices tree scan net/ipn3ke: remove configuration for i40e port bonding Tianfei zhang (14): raw/ifpga/base: add irq support raw/ifpga/base: clear pending bit raw/ifpga/base: add SEU error support raw/ifpga/base: add device tree support raw/ifpga/base: align the send buffer for SPI raw/ifpga/base: add sensor support raw/ifpga/base: introducing sensor APIs raw/ifpga/base: update SEU register definition raw/ifpga/base: add secure support raw/ifpga/base: configure FEC mode raw/ifpga/base: clean fme errors raw/ifpga/base: add new API get board info raw/ifpga/base: add multiple cards support raw/ifpga: introducing new irq API config/common_base | 4 +- config/common_linux | 6 + drivers/meson.build | 7 +- drivers/net/i40e/base/i40e_type.h | 3 + drivers/net/i40e/i40e_ethdev.c | 6 + drivers/net/i40e/rte_pmd_i40e.c | 21 + drivers/net/i40e/rte_pmd_i40e.h | 18 + drivers/net/i40e/rte_pmd_i40e_version.map | 8 +- drivers/net/ipn3ke/Makefile | 2 + drivers/net/ipn3ke/ipn3ke_ethdev.c | 289 +------- drivers/net/ipn3ke/ipn3ke_representor.c | 8 +- drivers/net/ipn3ke/meson.build | 2 +- drivers/raw/ifpga/base/ifpga_api.c | 21 + drivers/raw/ifpga/base/ifpga_defines.h | 75 +- drivers/raw/ifpga/base/ifpga_feature_dev.c | 59 ++ drivers/raw/ifpga/base/ifpga_feature_dev.h | 3 + drivers/raw/ifpga/base/ifpga_fme.c | 166 ++++- drivers/raw/ifpga/base/ifpga_fme_error.c | 74 +- drivers/raw/ifpga/base/ifpga_hw.h | 2 +- drivers/raw/ifpga/base/ifpga_port.c | 18 + drivers/raw/ifpga/base/ifpga_port_error.c | 19 + drivers/raw/ifpga/base/opae_debug.c | 3 + drivers/raw/ifpga/base/opae_hw_api.c | 137 ++++ drivers/raw/ifpga/base/opae_hw_api.h | 26 + drivers/raw/ifpga/base/opae_i2c.c | 44 +- drivers/raw/ifpga/base/opae_i2c.h | 3 +- drivers/raw/ifpga/base/opae_ifpga_hw_api.h | 2 + drivers/raw/ifpga/base/opae_intel_max10.c | 599 +++++++++++++++- drivers/raw/ifpga/base/opae_intel_max10.h | 157 ++++- drivers/raw/ifpga/base/opae_osdep.h | 7 +- drivers/raw/ifpga/base/opae_spi.c | 5 - drivers/raw/ifpga/base/opae_spi.h | 26 +- drivers/raw/ifpga/base/opae_spi_transaction.c | 84 ++- drivers/raw/ifpga/ifpga_rawdev.c | 903 ++++++++++++++++++++++++- drivers/raw/ifpga/ifpga_rawdev.h | 30 + drivers/raw/ifpga/meson.build | 6 + drivers/raw/ifpga/rte_rawdev_ifpga_version.map | 3 + mk/rte.app.mk | 2 +- 38 files changed, 2421 insertions(+), 427 deletions(-) -- 1.8.3.1