mbox series

[00/15] mpi3mr: Added Support for SAS Transport

Message ID 20220729131627.15019-1-sreekanth.reddy@broadcom.com (mailing list archive)
Headers show
Series mpi3mr: Added Support for SAS Transport | expand

Message

Sreekanth Reddy July 29, 2022, 1:16 p.m. UTC
- Enhanced the driver to support SAS transport layer and
 expose SAS controller PHYs, ports, attached expander, expander PHYs,
 expander ports and SAS/SATA end devices to the kernel through
 SAS transport class.
- The driver also provides call back handlers for get_linkerrors,
 get_enclosure_identifier, get_bay_identifier, phy_reset, phy_enable,
 set_phy_speed and smp_handler to the kernel as defined by the
 SAS transport layer.
- The SAS transport layer support is enabled only when the
 controller multipath capability is not enabled.
- The NVMe devices, VDs, vSES and PCIe Managed SES devices
 are not exposed through SAS transport.

Sreekanth Reddy (15):
  mpi3mr: Add config and transport related debug flags
  mpi3mr: Add framework to issue cnfg requests
  mpi3mr: Added helper functions to retrieve cnfg pages
  mpi3mr: Enable Enclosure device add event
  mpi3mr: Add framework to add phys to STL
  mpi3mr: Add helper functions to retrieve device objects
  mpi3mr: Add helper functions to manage device's port
  mpi3mr: Enable STL on HBAs where multipath is disabled
  mpi3mr: Add expander devices to STL
  mpi3mr: Get target object based on rphy
  mpi3mr: Add SAS SATA end devices to STL
  mpi3mr: Add framework to issue MPT transport cmds
  mpi3mr: Support sas transport class callbacks
  mpi3mr: Refresh sas ports during soft reset
  mpi3mr: Block IOs while refreshing target dev objects

 drivers/scsi/mpi3mr/Makefile           |    1 +
 drivers/scsi/mpi3mr/mpi3mr.h           |  240 +-
 drivers/scsi/mpi3mr/mpi3mr_debug.h     |   27 +
 drivers/scsi/mpi3mr/mpi3mr_fw.c        |  898 ++++++-
 drivers/scsi/mpi3mr/mpi3mr_os.c        |  443 +++-
 drivers/scsi/mpi3mr/mpi3mr_transport.c | 3316 ++++++++++++++++++++++++
 6 files changed, 4873 insertions(+), 52 deletions(-)
 create mode 100644 drivers/scsi/mpi3mr/mpi3mr_transport.c