Link: https://<email address hidden>
Cc: <email address hidden>
Reviewed-by: Hannes Reinecke <email address hidden>
Reviewed-by: Tomas Henzl <email address hidden>
Reviewed-by: Himanshu Madhani <email address hidden>
Signed-off-by: Kashyap Desai <email address hidden>
Signed-off-by: Martin K. Petersen <email address hidden>
(cherry picked from commit 74e1f30a28680978fa9ddfb5360d0cc644cd348e)
Signed-off-by: Michael Reed <email address hidden>
ca8a234...
by
Kashyap Desai <email address hidden>
scsi: mpi3mr: Add support for DSN secure firmware check
Read PCI_EXT_CAP_ID_DSN to query security status.
The driver will throw a warning message when a non-secure type controller
is detected. The purpose of this interface is to avoid interacting with any
firmware which is not secured/signed by Broadcom. Any tampering on
firmware component will be detected by hardware and it will be communicated
to the driver to avoid any further interaction with that component.
Link: https://<email address hidden>
Cc: <email address hidden>
Reviewed-by: Tomas Henzl <email address hidden>
Reviewed-by: Hannes Reinecke <email address hidden>
Reviewed-by: Himanshu Madhani <email address hidden>
Signed-off-by: Kashyap Desai <email address hidden>
Signed-off-by: Martin K. Petersen <email address hidden>
(cherry picked from commit 71e80106d0599171581e81ec4979a3f4906f983b)
Signed-off-by: Michael Reed <email address hidden>
64fadcf...
by
Kashyap Desai <email address hidden>
scsi: mpi3mr: Complete support for soft reset
Unlock the host diagnostic register, write the specific reset type to that
and wait for reset acknowledgment from the controller. If the reset is not
successful retry for the predefined number of times
Link: https://<email address hidden>
Cc: <email address hidden>
Reviewed-by: Hannes Reinecke <email address hidden>
Reviewed-by: Tomas Henzl <email address hidden>
Reviewed-by: Himanshu Madhani <email address hidden>
Signed-off-by: Kashyap Desai <email address hidden>
Signed-off-by: Martin K. Petersen <email address hidden>
(cherry picked from commit f061178e076210a549a546f3879ed51a61fcf938)
Signed-off-by: Michael Reed <email address hidden>
47bf624...
by
Kashyap Desai <email address hidden>
scsi: mpi3mr: Add support for threaded ISR
Register driver for threaded interrupts.
By default the driver will attempt I/O completion from interrupt context
(primary handler). Since the driver tracks per reply queue outstanding
I/Os, it will schedule threaded ISR if there are any outstanding I/Os
expected on that particular reply queue.
Threaded ISR (secondary handler) will loop for I/O completion as long as
there are outstanding I/Os (speculative method using same per reply queue
outstanding counter) or it has completed some X amount of commands
(something like budget).
Link: https://<email address hidden>
Cc: <email address hidden>
Reviewed-by: Hannes Reinecke <email address hidden>
Reviewed-by: Tomas Henzl <email address hidden>
Reviewed-by: Himanshu Madhani <email address hidden>
Signed-off-by: Kashyap Desai <email address hidden>
Signed-off-by: Martin K. Petersen <email address hidden>
(cherry picked from commit 463429f8dd5c94aae4b0948c56e67eb21cb6964e)
Signed-off-by: Michael Reed <email address hidden>
43bbd59...
by
Kashyap Desai <email address hidden>
scsi: mpi3mr: Hardware workaround for UNMAP commands to NVMe drives
The controller hardware can not handle certain UNMAP commands for NVMe
drives. Add support in the driver for checking those commands and handle
them appropriately.
Link: https://<email address hidden>
Cc: <email address hidden>
Reviewed-by: Hannes Reinecke <email address hidden>
Reviewed-by: Tomas Henzl <email address hidden>
Reviewed-by: Himanshu Madhani <email address hidden>
Signed-off-by: Kashyap Desai <email address hidden>
Signed-off-by: Martin K. Petersen <email address hidden>
(cherry picked from commit 392bbeb85b2a6f80e3036dfccdf55a1d076bba2c)
Signed-off-by: Michael Reed <email address hidden>
f0e31d0...
by
Kashyap Desai <email address hidden>
scsi: mpi3mr: Allow certain commands during pci-remove hook
Instead of driver returning DID_NO_CONNECT during driver unload allow SSU
and Sync Cache commands to be sent to the controller to flush any cached
data from the drive.