linux-pci.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Stuart Hayes <stuart.w.hayes@gmail.com>
To: Bjorn Helgaas <bhelgaas@google.com>,
	linux-pci@vger.kernel.org,
	Dan Williams <dan.j.williams@intel.com>
Cc: Keith Busch <kbusch@kernel.org>,
	kw@linux.com, mariusz.tkaczyk@linux.intel.com,
	helgaas@kernel.org, lukas@wunner.de, pavel@ucw.cz,
	linux-cxl@vger.kernel.org, martin.petersen@oracle.com,
	James.Bottomley@hansenpartnership.com,
	Arnd Bergmann <arnd@arndb.de>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Stuart Hayes <stuart.w.hayes@gmail.com>
Subject: [RFC PATCH v2 0/3] Add PCIe enclosure management support
Date: Wed,  2 Feb 2022 11:59:10 -0600	[thread overview]
Message-ID: <cover.1643822289.git.stuart.w.hayes@gmail.com> (raw)

This patch set adds support for two PCIe enclosure management methods,
"Native PCIe Enclosure Management" (defined in the PCI Express Base Spec)
and "_DSM Definitions for PCIe SSD Status LED" (defined in the PCI
Firmware Spec). The latter is very similar to the former, but uses a _DSM
interface (which can be provided by firmware) rather than a PCIe
extended capability.  Each provides a way to control up to ten indicator
states (such as locate, fault, etc.)

There are three patches in the set:

(1) Expands the existing enclosure driver to support more
indicators.

(2) Adds an auxiliary driver "pcie_em" that can attach to auxiliary
devices created by the drivers of any devices that can support PCIe
enclosure management (nvme, pcieport, and cxl).  It will register an
enclosure device with one component for each device with an enclosure
management interface.

(3) Modifies the nvme driver to create an auxiliary device to which the
pcie_em driver can attach.

These patches do not modify the cxl or pcieport drivers to add support,
though the driver was designed to make it easy to do so.
---
v2:  fixed compile error related to switch default in enclosure.c
     added documentation of added sysfs attributes
---

Stuart Hayes (3):
  Add support for seven more indicators in enclosure driver
  Add PCIe enclosure management auxiliary driver
  Register auxiliary device for PCIe enclosure management

 .../ABI/testing/sysfs-class-enclosure         |  14 +
 drivers/misc/enclosure.c                      | 191 ++++---
 drivers/nvme/host/pci.c                       |  11 +
 drivers/pci/pcie/Kconfig                      |   8 +
 drivers/pci/pcie/Makefile                     |   1 +
 drivers/pci/pcie/pcie_em.c                    | 473 ++++++++++++++++++
 include/linux/enclosure.h                     |  22 +
 include/linux/pcie_em.h                       |  97 ++++
 include/uapi/linux/pci_regs.h                 |  11 +-
 9 files changed, 749 insertions(+), 79 deletions(-)
 create mode 100644 Documentation/ABI/testing/sysfs-class-enclosure
 create mode 100644 drivers/pci/pcie/pcie_em.c
 create mode 100644 include/linux/pcie_em.h

-- 
2.31.1


             reply	other threads:[~2022-02-02 17:59 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-02-02 17:59 Stuart Hayes [this message]
2022-02-02 17:59 ` [RFC PATCH v2 1/3] Add support for seven more indicators in enclosure driver Stuart Hayes
2022-02-02 23:55   ` Bjorn Helgaas
2022-02-02 17:59 ` [RFC PATCH v2 2/3] Add PCIe enclosure management auxiliary driver Stuart Hayes
2022-02-03  0:58   ` Bjorn Helgaas
2022-02-02 17:59 ` [RFC PATCH v2 3/3] Register auxiliary device for PCIe enclosure management Stuart Hayes
2022-02-10 11:52 ` [RFC PATCH v2 0/3] Add PCIe enclosure management support Mariusz Tkaczyk

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.1643822289.git.stuart.w.hayes@gmail.com \
    --to=stuart.w.hayes@gmail.com \
    --cc=James.Bottomley@hansenpartnership.com \
    --cc=arnd@arndb.de \
    --cc=bhelgaas@google.com \
    --cc=dan.j.williams@intel.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=helgaas@kernel.org \
    --cc=kbusch@kernel.org \
    --cc=kw@linux.com \
    --cc=linux-cxl@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=lukas@wunner.de \
    --cc=mariusz.tkaczyk@linux.intel.com \
    --cc=martin.petersen@oracle.com \
    --cc=pavel@ucw.cz \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).