diff mbox series

ACK/cmnt: [SRU][Impish][Pull] Broadcom mpi3mr driver submission request

Message ID c7f7c5c7-36ef-d72d-bae4-5b417276d843@canonical.com
State New
Headers show
Series ACK/cmnt: [SRU][Impish][Pull] Broadcom mpi3mr driver submission request | expand

Commit Message

Kleber Sacilotto de Souza Dec. 14, 2021, 2:57 p.m. UTC
On 03.12.21 01:43, Michael Reed wrote:
> BugLink:  https://launchpad.net/bugs/1933359
>
> SRU Justification:
>
> [Impact]
> Broadcom is coming up with next generation high performance Storage IO and RAID controllers. For details, follow: https://www.spinics.net/lists/linux-scsi/msg147868.html
> This family of controllers is managed by "mpi3mr" Linux device driver(written from scratch). First patchset of the driver is accepted by Linux upstream.
> The driver is available in git branch - 5.14/scsi-staging of Linux SCSI tree: https://git.kernel.org/pub/scm/linux/kernel/git/mkp/scsi.git
> The driver will be part of 5.14 mainline Linux kernel release. Here is the list of commit ids:
>
> [Fixes]
> 9fc4abfe5a5f scsi: mpi3mr: Add event handling debug prints
> 74e1f30a2868 scsi: mpi3mr: Add EEDP DIF DIX support
> 28cbe2f420d3 scsi: mpi3mr: Add support for DSN secure firmware check
> 2f9c4d520aa6 scsi: mpi3mr: Add support for PM suspend and resume
> 44dc724f5eec scsi: mpi3mr: Wait for pending I/O completions upon detection of VD I/O timeout
> 71e80106d059 scsi: mpi3mr: Print pending host I/Os for debugging
> f061178e0762 scsi: mpi3mr: Complete support for soft reset
> 463429f8dd5c scsi: mpi3mr: Add support for threaded ISR
> 392bbeb85b2a scsi: mpi3mr: Hardware workaround for UNMAP commands to NVMe drives
> 82141ddba90a scsi: mpi3mr: Allow certain commands during pci-remove hook
> 0ea177343f1f scsi: mpi3mr: Add change queue depth support
> e844adb1fbdc scsi: mpi3mr: Implement SCSI error handler hooks
> 8f9c6173ca46 scsi: mpi3mr: Add bios_param SCSI host template hook
> ff9561e910fc scsi: mpi3mr: Print IOC info for debugging
> 54dfcffb4191 scsi: mpi3mr: Add support for timestamp sync with firmware
> fb9b04574f14 scsi: mpi3mr: Add support for recovering controller
> e36710dc06e3 scsi: mpi3mr: Additional event handling
> 8e653455547a scsi: mpi3mr: Add support for PCIe device event handling
> 13ef29ea4aa0 scsi: mpi3mr: Add support for device add/remove event handling
> 672ae26c8216 scsi: mpi3mr: Add support for internal watchdog thread
> 023ab2a9b4ed scsi: mpi3mr: Add support for queue command processing
> c9566231cfaf scsi: mpi3mr: Create operational request and reply queue pair
> 824a156633df scsi: mpi3mr: Base driver code
> c4f7ac64616e scsi: mpi3mr: Add mpi30 Rev-R headers and Kconfig

We are missing setting up the Ubuntu config to enable this driver.
Assuming it's enough to have it as a module this can be done when
applying the PR:


>
>
> [Testing]
> Load the driver
> Run IO
>
> [Regression Risk]
> No extra test cases are needed, normal regression test cases such as driver load & running IOs are enough.
>
> [Other Info]
> https://code.launchpad.net/~mreed8855/ubuntu/+source/linux/+git/impish/+ref/mpi3mr_driver_bcom2
>
>
> The following changes since commit b188ba567fc92eebd36f679de7ba1b8c2354839d:
>
>    UBUNTU: Ubuntu-5.13.0-23.23 (2021-11-26 12:14:32 +0100)
>
> are available in the Git repository at:
>
>    https://git.launchpad.net/~mreed8855/ubuntu/+source/linux/+git/impish mpi3mr_driver_bcom2
>
> for you to fetch changes up to 10819371706eec8f7d057f92bfdaaf777dc1ffe2:
>
>    scsi: mpi3mr: Add event handling debug prints (2021-12-02 14:53:03 -0600)

With the config setup accordingly:


Acked-by: Kleber Sacilotto de Souza <kleber.souza@canonical.com>

Thanks

>
> ----------------------------------------------------------------
> Kashyap Desai (24):
>        scsi: mpi3mr: Add mpi30 Rev-R headers and Kconfig
>        scsi: mpi3mr: Base driver code
>        scsi: mpi3mr: Create operational request and reply queue pair
>        scsi: mpi3mr: Add support for queue command processing
>        scsi: mpi3mr: Add support for internal watchdog thread
>        scsi: mpi3mr: Add support for device add/remove event handling
>        scsi: mpi3mr: Add support for PCIe device event handling
>        scsi: mpi3mr: Additional event handling
>        scsi: mpi3mr: Add support for recovering controller
>        scsi: mpi3mr: Add support for timestamp sync with firmware
>        scsi: mpi3mr: Print IOC info for debugging
>        scsi: mpi3mr: Add bios_param SCSI host template hook
>        scsi: mpi3mr: Implement SCSI error handler hooks
>        scsi: mpi3mr: Add change queue depth support
>        scsi: mpi3mr: Allow certain commands during pci-remove hook
>        scsi: mpi3mr: Hardware workaround for UNMAP commands to NVMe drives
>        scsi: mpi3mr: Add support for threaded ISR
>        scsi: mpi3mr: Complete support for soft reset
>        scsi: mpi3mr: Print pending host I/Os for debugging
>        scsi: mpi3mr: Wait for pending I/O completions upon detection of VD I/O timeout
>        scsi: mpi3mr: Add support for PM suspend and resume
>        scsi: mpi3mr: Add support for DSN secure firmware check
>        scsi: mpi3mr: Add EEDP DIF DIX support
>        scsi: mpi3mr: Add event handling debug prints
>
>   drivers/scsi/Kconfig                      |    1 +
>   drivers/scsi/Makefile                     |    1 +
>   drivers/scsi/mpi3mr/Kconfig               |    7 +
>   drivers/scsi/mpi3mr/Makefile              |    4 +
>   drivers/scsi/mpi3mr/mpi/mpi30_cnfg.h      | 1880 +++++++++++++
>   drivers/scsi/mpi3mr/mpi/mpi30_image.h     |  216 ++
>   drivers/scsi/mpi3mr/mpi/mpi30_init.h      |  159 ++
>   drivers/scsi/mpi3mr/mpi/mpi30_ioc.h       | 1004 +++++++
>   drivers/scsi/mpi3mr/mpi/mpi30_sas.h       |   33 +
>   drivers/scsi/mpi3mr/mpi/mpi30_transport.h |  463 ++++
>   drivers/scsi/mpi3mr/mpi3mr.h              |  900 +++++++
>   drivers/scsi/mpi3mr/mpi3mr_debug.h        |   60 +
>   drivers/scsi/mpi3mr/mpi3mr_fw.c           | 3956 ++++++++++++++++++++++++++++
>   drivers/scsi/mpi3mr/mpi3mr_os.c           | 4054 +++++++++++++++++++++++++++++
>   14 files changed, 12738 insertions(+)
>   create mode 100644 drivers/scsi/mpi3mr/Kconfig
>   create mode 100644 drivers/scsi/mpi3mr/Makefile
>   create mode 100644 drivers/scsi/mpi3mr/mpi/mpi30_cnfg.h
>   create mode 100644 drivers/scsi/mpi3mr/mpi/mpi30_image.h
>   create mode 100644 drivers/scsi/mpi3mr/mpi/mpi30_init.h
>   create mode 100644 drivers/scsi/mpi3mr/mpi/mpi30_ioc.h
>   create mode 100644 drivers/scsi/mpi3mr/mpi/mpi30_sas.h
>   create mode 100644 drivers/scsi/mpi3mr/mpi/mpi30_transport.h
>   create mode 100644 drivers/scsi/mpi3mr/mpi3mr.h
>   create mode 100644 drivers/scsi/mpi3mr/mpi3mr_debug.h
>   create mode 100644 drivers/scsi/mpi3mr/mpi3mr_fw.c
>   create mode 100644 drivers/scsi/mpi3mr/mpi3mr_os.c
>
diff mbox series

Patch

--- a/debian.master/config/config.common.ubuntu
+++ b/debian.master/config/config.common.ubuntu
@@ -9133,6 +9133,7 @@  CONFIG_SCSI_LOWLEVEL_PCMCIA=y
  CONFIG_SCSI_LPFC=m
  # CONFIG_SCSI_LPFC_DEBUG_FS is not set
  CONFIG_SCSI_MOD=y
+CONFIG_SCSI_MPI3MR=m
  CONFIG_SCSI_MPT2SAS=m
  CONFIG_SCSI_MPT2SAS_MAX_SGE=128
  CONFIG_SCSI_MPT3SAS=m