Message ID | 1564708727-164887-1-git-send-email-rosen.xu@intel.com (mailing list archive) |
---|---|
Headers |
Return-Path: <dev-bounces@dpdk.org> X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id F009D1C1BD; Fri, 2 Aug 2019 03:18:00 +0200 (CEST) Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by dpdk.org (Postfix) with ESMTP id 78A091C1C6 for <dev@dpdk.org>; Fri, 2 Aug 2019 03:17:59 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga102.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 01 Aug 2019 18:17:58 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.64,336,1559545200"; d="scan'208";a="167087358" Received: from dpdk-rosen-02.sh.intel.com ([10.67.111.116]) by orsmga008.jf.intel.com with ESMTP; 01 Aug 2019 18:17:56 -0700 From: Rosen Xu <rosen.xu@intel.com> To: dev@dpdk.org Cc: ferruh.yigit@intel.com, tianfei.zhang@intel.com, rosen.xu@intel.com, andy.pei@intel.com, david.lomartire@intel.com, qi.z.zhang@intel.com, xiaolong.ye@intel.com Date: Fri, 2 Aug 2019 09:18:35 +0800 Message-Id: <1564708727-164887-1-git-send-email-rosen.xu@intel.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1564556752-19257-2-git-send-email-rosen.xu@intel.com> References: <1564556752-19257-2-git-send-email-rosen.xu@intel.com> Subject: [dpdk-dev] [PATCH v2 00/12] 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 <dev.dpdk.org> List-Unsubscribe: <https://mails.dpdk.org/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://mails.dpdk.org/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <https://mails.dpdk.org/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> Errors-To: dev-bounces@dpdk.org Sender: "dev" <dev-bounces@dpdk.org> |
Series |
Add PCIe AER disable and IRQ support for ipn3ke
|
|
Message
Xu, Rosen
Aug. 2, 2019, 1:18 a.m. UTC
This patch set adds PCIe AER disable and IRQ support for ipn3ke. Disable PCIe AER is very useful when FPGA reload. IRQ is used very widely in interrupt process. For ipn3ke is connect to CPU with PCIe switch, driver needs to scan all PCIe devices of ipn3ke, it also can get all i40e of card, so ipn3ke driver doesn't need to take some configuration of i40e. v2 updates: =========== - Add AUX feature support Rosen Xu (3): net/i40e: i40e support ipn3ke FPGA port bonding raw/ifpga_rawdev: add PCIe BDF devices tree scan net/ipn3ke: remove configuration for i40e port bonding Tianfei Zhang (2): raw/ifpga_rawdev/base: align the send buffer for SPI raw/ifpga_rawdev/base: introducing sensor APIs Tianfei zhang (7): raw/ifpga_rawdev/base: add irq support raw/ifpga_rawdev/base: clear pending bit raw/ifpga_rawdev/base: add SEU error support raw/ifpga_rawdev/base: add device tree support raw/ifpga_rawdev/base: add sensor support raw/ifpga_rawdev/base: update SEU register definition raw/ifpga_rawdev: add SEU error handler drivers/net/i40e/base/i40e_type.h | 3 + drivers/net/i40e/i40e_ethdev.c | 34 +- drivers/net/i40e/rte_pmd_i40e.h | 4 + drivers/net/ipn3ke/Makefile | 2 + drivers/net/ipn3ke/ipn3ke_ethdev.c | 289 +------- drivers/net/ipn3ke/ipn3ke_representor.c | 7 +- drivers/raw/ifpga_rawdev/base/ifpga_api.c | 10 + drivers/raw/ifpga_rawdev/base/ifpga_defines.h | 18 +- drivers/raw/ifpga_rawdev/base/ifpga_feature_dev.c | 61 ++ drivers/raw/ifpga_rawdev/base/ifpga_feature_dev.h | 3 + drivers/raw/ifpga_rawdev/base/ifpga_fme.c | 21 + drivers/raw/ifpga_rawdev/base/ifpga_fme_error.c | 69 +- drivers/raw/ifpga_rawdev/base/ifpga_port.c | 20 + drivers/raw/ifpga_rawdev/base/ifpga_port_error.c | 21 + drivers/raw/ifpga_rawdev/base/opae_hw_api.c | 115 +++ drivers/raw/ifpga_rawdev/base/opae_hw_api.h | 16 + drivers/raw/ifpga_rawdev/base/opae_ifpga_hw_api.h | 2 + drivers/raw/ifpga_rawdev/base/opae_intel_max10.c | 462 ++++++++++++ drivers/raw/ifpga_rawdev/base/opae_intel_max10.h | 66 ++ drivers/raw/ifpga_rawdev/base/opae_osdep.h | 7 +- .../raw/ifpga_rawdev/base/opae_spi_transaction.c | 40 +- drivers/raw/ifpga_rawdev/ifpga_rawdev.c | 795 ++++++++++++++++++++- drivers/raw/ifpga_rawdev/ifpga_rawdev.h | 16 + mk/rte.app.mk | 2 +- 24 files changed, 1805 insertions(+), 278 deletions(-)
Comments
> -----Original Message----- > From: dev <dev-bounces@dpdk.org> On Behalf Of Rosen Xu > Sent: Friday, August 2, 2019 6:49 AM > To: dev@dpdk.org > Cc: ferruh.yigit@intel.com; tianfei.zhang@intel.com; rosen.xu@intel.com; > andy.pei@intel.com; david.lomartire@intel.com; qi.z.zhang@intel.com; > xiaolong.ye@intel.com > Subject: [dpdk-dev] [PATCH v2 00/12] Add PCIe AER disable and IRQ support > for ipn3ke > > This patch set adds PCIe AER disable and IRQ support for ipn3ke. > Disable PCIe AER is very useful when FPGA reload. IRQ is used very widely in > interrupt process. Shouldn't it better to have common code in PCI subsystem to disable PCIe AER etc, So that other drivers can be used in future. > > For ipn3ke is connect to CPU with PCIe switch, driver needs to scan all PCIe Do we need a special PCIe switch for this? Or Generic PCIe switch would do? > devices of ipn3ke, it also can get all i40e of card, so ipn3ke driver doesn't > need to take some configuration of i40e. Is communication between i40e and ipn3ke proprietary scheme? Who is the PCIe bus master here? Ipn3ke or i40e?
Hi, > -----Original Message----- > From: Jerin Jacob Kollanukkaran [mailto:jerinj@marvell.com] > Sent: Friday, August 02, 2019 12:15 > To: Xu, Rosen <rosen.xu@intel.com>; dev@dpdk.org > Cc: Yigit, Ferruh <ferruh.yigit@intel.com>; Zhang, Tianfei > <tianfei.zhang@intel.com>; Pei, Andy <andy.pei@intel.com>; Lomartire, > David <david.lomartire@intel.com>; Zhang, Qi Z <qi.z.zhang@intel.com>; Ye, > Xiaolong <xiaolong.ye@intel.com> > Subject: RE: [dpdk-dev] [PATCH v2 00/12] Add PCIe AER disable and IRQ > support for ipn3ke > > > -----Original Message----- > > From: dev <dev-bounces@dpdk.org> On Behalf Of Rosen Xu > > Sent: Friday, August 2, 2019 6:49 AM > > To: dev@dpdk.org > > Cc: ferruh.yigit@intel.com; tianfei.zhang@intel.com; > > rosen.xu@intel.com; andy.pei@intel.com; david.lomartire@intel.com; > > qi.z.zhang@intel.com; xiaolong.ye@intel.com > > Subject: [dpdk-dev] [PATCH v2 00/12] Add PCIe AER disable and IRQ > > support for ipn3ke > > > > This patch set adds PCIe AER disable and IRQ support for ipn3ke. > > Disable PCIe AER is very useful when FPGA reload. IRQ is used very > > widely in interrupt process. > > Shouldn't it better to have common code in PCI subsystem to disable PCIe > AER etc, So that other drivers can be used in future. That's a good proposal. But there's something special in IPN3KE. In IPN3KE, one Intel A10 FPGA and two I40e are connected to CPU with PCIe switch chip, there are some errors when PCIe switch chip bonding to VFIO, in our design, we access PCIe configure space with pread/pwrite. For AER disable, we need access PCIe switch chip configuration space. > > > > For ipn3ke is connect to CPU with PCIe switch, driver needs to scan > > all PCIe > > Do we need a special PCIe switch for this? Or Generic PCIe switch would do? It's hardware specific. > > devices of ipn3ke, it also can get all i40e of card, so ipn3ke driver > > doesn't need to take some configuration of i40e. > > Is communication between i40e and ipn3ke proprietary scheme? Yes. > Who is the PCIe bus master here? Ipn3ke or i40e? From DPDK point of view, there are 3 PCIe devices in DPDK one Intel A10 FPGA and two I40e. No master. > >