From: sathyanarayanan.kuppuswamy@linux.intel.com
To: bhelgaas@google.com
Cc: linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org,
ashok.raj@intel.com,
Kuppuswamy Sathyanarayanan
<sathyanarayanan.kuppuswamy@linux.intel.com>
Subject: [PATCH v16 0/9] Add Error Disconnect Recover (EDR) support
Date: Thu, 27 Feb 2020 16:59:42 -0800 [thread overview]
Message-ID: <cover.1582850766.git.sathyanarayanan.kuppuswamy@linux.intel.com> (raw)
From: Kuppuswamy Sathyanarayanan <sathyanarayanan.kuppuswamy@linux.intel.com>
This patchset adds support for following features:
1. Error Disconnect Recover (EDR) support.
2. _OSC based negotiation support for DPC.
You can find EDR spec in the following link.
https://members.pcisig.com/wg/PCI-SIG/document/12614
Changes since v15:
* Splitted Patch # 3 in previous set into multiple patches.
* Refactored EDR driver use pci_dev instead of dpc_dev.
* Added some debug logs to EDR driver.
* Used pci_aer_raw_clear_status() for clearing AER errors in EDR path.
* Addressed other comments from Bjorn.
* Rebased patches on top of Bjorns "PCI/DPC: Move data to struct pci_dev" patch.
Changes since v14:
* Rebased on top of v5.6-rc1
Changes since v13:
* Moved all EDR related code to edr.c
* Addressed Bjorns comments.
Changes since v12:
* Addressed Bjorns comments.
* Added check for CONFIG_PCIE_EDR before requesting DPC control from firmware.
* Removed ff_check parameter from AER APIs.
* Used macros for _OST return status values in DPC driver.
Changes since v11:
* Allowed error recovery to proceed after successful reset_link().
* Used correct ACPI handle for sending EDR status.
* Rebased on top of v5.5-rc5
Changes since v10:
* Added "edr_enabled" member to dpc priv structure, which is used to cache EDR
enabling status based on status of pcie_ports_dpc_native and FF mode.
* Changed type of _DSM argument from Integer to Package in acpi_enable_dpc_port()
function to fix ACPI related boot warnings.
* Rebased on top of v5.5-rc3
Changes since v9:
* Removed caching of pcie_aer_get_firmware_first() in dpc driver.
* Added proper spec reference in git log for patch 5 & 7.
* Added new function parameter "ff_check" to pci_cleanup_aer_uncorrect_error_status(),
pci_aer_clear_fatal_status() and pci_cleanup_aer_error_status_regs() functions.
* Rebased on top of v5.4-rc5
Changes since v8:
* Rebased on top of v5.4-rc1
Changes since v7:
* Updated DSM version number to match the spec.
Changes since v6:
* Modified the order of patches to enable EDR only after all necessary support is added in kernel.
* Addressed Bjorn comments.
Changes since v5:
* Addressed Keith's comments.
* Added additional check for FF mode in pci_aer_init().
* Updated commit history of "PCI/DPC: Add support for DPC recovery on NON_FATAL errors" patch.
Changes since v4:
* Rebased on top of v5.3-rc1
* Fixed lock/unlock issue in edr_handle_event().
* Merged "Update error status after reset_link()" patch into this patchset.
Changes since v3:
* Moved EDR related ACPI functions/definitions to pci-acpi.c
* Modified commit history in few patches to include spec reference.
* Added support to handle DPC triggered by NON_FATAL errors.
* Added edr_lock to protect PCI device receiving duplicate EDR notifications.
* Addressed Bjorn comments.
Changes since v2:
* Split EDR support patch into multiple patches.
* Addressed Bjorn comments.
Changes since v1:
* Rebased on top of v5.1-rc1
Kuppuswamy Sathyanarayanan (9):
PCI/ERR: Update error status after reset_link()
PCI/AER: Move pci_cleanup_aer_error_status_regs() declaration to pci.h
PCI/ERR: Remove service dependency in pcie_do_recovery()
PCI/ERR: Return status of pcie_do_recovery()
PCI/DPC: Cache DPC capabilities in pci_init_capabilities()
PCI/AER: Allow clearing Error Status Register in FF mode
PCI/DPC: Export DPC error recovery functions
PCI/DPC: Add Error Disconnect Recover (EDR) support
PCI/ACPI: Enable EDR support
drivers/acpi/pci_root.c | 16 +++
drivers/pci/pci-acpi.c | 3 +
drivers/pci/pci.h | 16 ++-
drivers/pci/pcie/Kconfig | 10 ++
drivers/pci/pcie/Makefile | 1 +
drivers/pci/pcie/aer.c | 33 +++--
drivers/pci/pcie/dpc.c | 46 ++++---
drivers/pci/pcie/edr.c | 251 ++++++++++++++++++++++++++++++++++++++
drivers/pci/pcie/err.c | 26 ++--
drivers/pci/probe.c | 1 +
include/linux/acpi.h | 6 +-
include/linux/aer.h | 5 -
include/linux/pci-acpi.h | 8 ++
include/linux/pci.h | 1 +
14 files changed, 377 insertions(+), 46 deletions(-)
create mode 100644 drivers/pci/pcie/edr.c
--
2.21.0
next reply other threads:[~2020-02-28 1:03 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-02-28 0:59 sathyanarayanan.kuppuswamy [this message]
2020-02-28 0:59 ` [PATCH v16 1/9] PCI/ERR: Update error status after reset_link() sathyanarayanan.kuppuswamy
2020-02-28 0:59 ` [PATCH v16 2/9] PCI/AER: Move pci_cleanup_aer_error_status_regs() declaration to pci.h sathyanarayanan.kuppuswamy
2020-02-28 0:59 ` [PATCH v16 3/9] PCI/ERR: Remove service dependency in pcie_do_recovery() sathyanarayanan.kuppuswamy
2020-03-03 17:04 ` Bjorn Helgaas
2020-03-03 23:59 ` Kuppuswamy, Sathyanarayanan
2020-02-28 0:59 ` [PATCH v16 4/9] PCI/ERR: Return status of pcie_do_recovery() sathyanarayanan.kuppuswamy
2020-02-28 0:59 ` [PATCH v16 5/9] PCI/DPC: Cache DPC capabilities in pci_init_capabilities() sathyanarayanan.kuppuswamy
2020-03-04 0:47 ` Bjorn Helgaas
2020-03-04 1:01 ` Kuppuswamy, Sathyanarayanan
2020-02-28 0:59 ` [PATCH v16 6/9] PCI/AER: Allow clearing Error Status Register in FF mode sathyanarayanan.kuppuswamy
2020-02-28 0:59 ` [PATCH v16 7/9] PCI/DPC: Export DPC error recovery functions sathyanarayanan.kuppuswamy
2020-03-05 16:37 ` Christoph Hellwig
2020-03-05 17:42 ` Kuppuswamy Sathyanarayanan
2020-03-05 18:59 ` Bjorn Helgaas
2020-03-05 19:22 ` Kuppuswamy Sathyanarayanan
2020-02-28 0:59 ` [PATCH v16 8/9] PCI/DPC: Add Error Disconnect Recover (EDR) support sathyanarayanan.kuppuswamy
2020-02-28 0:59 ` [PATCH v16 9/9] PCI/ACPI: Enable EDR support sathyanarayanan.kuppuswamy
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=cover.1582850766.git.sathyanarayanan.kuppuswamy@linux.intel.com \
--to=sathyanarayanan.kuppuswamy@linux.intel.com \
--cc=ashok.raj@intel.com \
--cc=bhelgaas@google.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.