From patchwork Mon Mar 9 10:29:43 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Xu Yilun X-Patchwork-Id: 11426669 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 68EE314E3 for ; Mon, 9 Mar 2020 10:31:58 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 496CD20873 for ; Mon, 9 Mar 2020 10:31:58 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1725962AbgCIKb6 (ORCPT ); Mon, 9 Mar 2020 06:31:58 -0400 Received: from mga01.intel.com ([192.55.52.88]:46791 "EHLO mga01.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725956AbgCIKb5 (ORCPT ); Mon, 9 Mar 2020 06:31:57 -0400 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by fmsmga101.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 09 Mar 2020 03:31:57 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.70,532,1574150400"; d="scan'208";a="288655000" Received: from yilunxu-optiplex-7050.sh.intel.com ([10.239.159.141]) by FMSMGA003.fm.intel.com with ESMTP; 09 Mar 2020 03:31:56 -0700 From: Xu Yilun To: mdf@kernel.org, linux-fpga@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Xu Yilun Subject: [PATCH 0/7] Add interrupt support to FPGA DFL drivers Date: Mon, 9 Mar 2020 18:29:43 +0800 Message-Id: <1583749790-10837-1-git-send-email-yilun.xu@intel.com> X-Mailer: git-send-email 2.7.4 Sender: linux-fpga-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-fpga@vger.kernel.org This patchset add interrupt support to FPGA DFL drivers. With these patches, DFL driver will parse and assign interrupt resources for enumerated feature devices and their sub features. This patchset also introduces a set of APIs for user to monitor DFL interrupts. Three sub features (DFL FME error, DFL AFU error and user interrupt) drivers now support these APIs. Patch #1: DFL framework change. Accept interrupt info input from DFL bus driver, and add interrupt parsing and assignment for feature sub devices. Patch #2: DFL pci driver change, add interrupt info on DFL enumeration. Patch #3: DFL framework change. Add helper functions for feature sub device drivers to handle interrupt and notify users. Patch #4: Add interrupt support for AFU error reporting sub feature. Patch #5: Add interrupt support for FME global error reporting sub feature. Patch #6: Add interrupt support for a new sub feature, to handle user interrupts implemented in AFU. Patch #7: Documentation for DFL interrupt handling. Xu Yilun (7): fpga: dfl: parse interrupt info for feature devices on enumeration fpga: dfl: pci: add irq info for feature devices enumeration fpga: dfl: introduce interrupt trigger setting API fpga: dfl: afu: add interrupt support for error reporting fpga: dfl: fme: add interrupt support for global error reporting fpga: dfl: afu: add user interrupt support Documentation: fpga: dfl: add descriptions for interrupt related interfaces. Documentation/fpga/dfl.rst | 17 +++ drivers/fpga/dfl-afu-error.c | 69 +++++++++++++ drivers/fpga/dfl-afu-main.c | 83 +++++++++++++++ drivers/fpga/dfl-fme-error.c | 71 +++++++++++++ drivers/fpga/dfl-fme-main.c | 6 ++ drivers/fpga/dfl-pci.c | 66 +++++++++++- drivers/fpga/dfl.c | 233 +++++++++++++++++++++++++++++++++++++++++- drivers/fpga/dfl.h | 51 +++++++++ include/uapi/linux/fpga-dfl.h | 89 ++++++++++++++++ 9 files changed, 676 insertions(+), 9 deletions(-)