initialization driver checks the IOC
state and if IOC state is in fault state then issue diag reset
for once. if diag reset is success then continue with
HBA initialization else terminate the HBA initialization.
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpt3sas_base.c | 75
step3. So to limit these types of deadlocks driver will process the
SAS DEVICE STATUS CHANGE EVENT events from ISR context instead of
processing this event from worker thread context.
This improvement avoids above deadlock.
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt
old firmware's MaxDevHandle value.
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpt3sas_base.c | 93 +
drivers/scsi/mpt3sas/mpt3sas_base.h | 2 +
2 files changed, 95 insertions(+)
diff --git a/drivers/scsi/mpt3sas/mpt3sas_base.c
b/
ld's IEEE SGL's
whenever it receives any SCSI commands for this SES device.
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpt3sas_base.c | 5 ++
drivers/scsi/mpt3sas/mpt3sas_base.h | 16 +++
drivers/scsi/mpt3sas/mpt3sas_ctl.c | 7 +--
drivers/scsi/mpt
Updated driver version from 29.100.00.00 to 31.100.00.00
which is equivalent to Phase 12 OOB.
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpt3sas_base.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/scsi/mpt3sas/mpt3sas_base.h
b/drivers/scsi/mpt3sas
complete request message frame.
So reinitialize the complete request message frame with 0's
before using it.
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpt3sas_base.c | 2 ++
drivers/scsi/mpt3sas/mpt3sas_ctl.c | 1 +
2 files changed, 3 insertions(+)
diff --git a/drivers/scsi/mp
In future we can utilize this sysfs parameter if any new feature
is added and need to notify the same to applications.
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpt3sas_base.h | 4
drivers/scsi/mpt3sas/mpt3sas_ctl.c | 19 +++
drivers/scsi/mpt3sas/mpt3sas_sc
PCIe Lane margin tool box request requires IEEE sgl's and hence
driver fills the SGL field with IEEE sgl's while issuing the
PCIe Lane margin ioctl request to the HBA firmware.
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpt3sas_ctl.c | 7 ---
1 file changed, 4 insert
nformation and second SGE
contains the IOC information.
Driver has to take care only the 4th case, other three cases are by default
supported by the current driver design.
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpt3sas_ctl.c | 27 +--
1 file changed, 25 i
y ATA PT command is outstanding
then this bandwidth drops to just ~190 rMB/s.
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpt3sas_scsih.c | 7 ++-
1 file changed, 2 insertions(+), 5 deletions(-)
diff --git a/drivers/scsi/mpt3sas/mpt3sas_scsih.c
b/drivers/scsi/mpt3sas/mpt3sas_scsih.c
ind
Updated MPI to 2.6.8 specification and header files to 2.00.54.
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpi/mpi2.h | 5 +++--
drivers/scsi/mpt3sas/mpi/mpi2_cnfg.h | 10 +++--
drivers/scsi/mpt3sas/mpi/mpi2_image.h | 39 +++
drivers/scsi
the device is in the blocked state so that the device will
be visible to Apps. So that Apps can send NVMe Encapsulated IOCTLs
to this drive and make the drive online. This NVMe drive with
DEVICE_BLOCKED access status won't added to the SML, it will be
added only in the driver's
This patch series includes below Enhancements
and Bug fixes.
Suganath Prabu (12):
mpt3sas: Add support for PCIe Lane margin
mpt3sas: memset request frame before reusing
mpt3sas: Gracefully handle online firmware update
mpt3sas: Update MPI headers to 2.6.8 spec
mpt3sas: Enumerate SES of
tries to DMA the data
at 0x- location then HBA will
fault the firmware.
Fix:
Driver will set 63-bit DMA mask to ensure the above address
will not be used.
Cc: # 5.1.20+
Signed-off-by: Suganath Prabu
Reviewed-by: Christoph Hellwig
---
V1 Change: Added tag for stable tree
Although SAS3 & SAS3.5 IT HBA controllers support
64-bit DMA addressing, as per hardware design,
DMA address with all 64-bits set (0x-)
results in a firmware fault.
Fix:
Driver will set 63-bit DMA mask to ensure the above address
will not be used.
Cc:
Signed-off-by: Suga
Although SAS3 & SAS3.5 IT HBA controllers support
64-bit DMA addressing, as per hardware design,
DMA address with all 64-bits set (0x-)
results in a firmware fault.
Fix:
Driver will set 63-bit DMA mask to ensure the above address
will not be used.
Signed-off-by: Suganath P
Acked-by: Suganath Prabu
On Fri, Jun 14, 2019 at 8:12 PM Tomas Henzl wrote:
>
> Use existing macros. No functional change.
>
> Signed-off-by: Tomas Henzl
> ---
> drivers/scsi/mpt3sas/mpt3sas_ctl.c | 210 +
> 1 file changed, 97 inserti
Acked-by: Suganath Prabu
On Fri, Jun 14, 2019 at 8:12 PM Tomas Henzl wrote:
>
> Support is easier with all driver parameters visible in sysfs.
> Also I've replaced a constant with an octal permission.
>
> Signed-off-by: Tomas Henzl
> ---
> drivers/scsi/mp
Acked-by: Suganath Prabu
On Wed, Jun 19, 2019 at 6:34 AM Martin K. Petersen
wrote:
>
>
> > Just few small changes, octal numbers instead of constants etc.
>
> Broadcom folks: Please review!
>
> --
> Martin K. Petersen Oracle Linux Engineering
498.10 usec |
|-|--|--|
|latency | 97.10 usec |689.26 usec |
-
Signed-off-by: Suganath Prabu S
---
drivers/scsi/mpt3sas/mpt3sas_base.c | 144
max_msix_vectors module parameter and
- System booted in non kdump mode.
Reply queues with interrupt coalescing enabled are called "high iops
reply queues" and reply queues with interrupt coalescing disabled are
called "low latency reply queues".
Signed-off-by: Suganath Prabu
. In general, high iops queue and low latency
queue together should fit into 128 reply queue (max reply queue
supported by Aero/Sea).
Signed-off-by: Suganath Prabu S
---
drivers/scsi/mpt3sas/mpt3sas_base.c | 73 -
1 file changed, 62 insertions(+), 11 deletions(-)
diff
Update driver version from 28.100.00.00 to 29.100.00.00
This is equivalent to Phase 10 OOB driver.
Signed-off-by: Suganath Prabu S
---
drivers/scsi/mpt3sas/mpt3sas_base.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/scsi/mpt3sas/mpt3sas_base.h
b/drivers/scsi
Driver will use round robin method for io submission in batches
within the high iops queues when in-flight ios on the target device
is more than 8.
If in-flight ios per SCSI device more than 8, driver will use
high iops queue else driver will use low latency reply queues.
Signed-off-by: Suganath
descriptor and save determined msix index in msix_io
field.
Signed-off-by: Suganath Prabu S
---
drivers/scsi/mpt3sas/mpt3sas_base.c | 42 ++--
drivers/scsi/mpt3sas/mpt3sas_base.h | 1 +
drivers/scsi/mpt3sas/mpt3sas_scsih.c | 1 +
3 files changed, 35 insertions(+), 9
user), current modified changes on ioc page1 won't take effect.
Signed-off-by: Suganath Prabu S
---
drivers/scsi/mpt3sas/mpi/mpi2_cnfg.h | 2 +-
drivers/scsi/mpt3sas/mpt3sas_base.c | 16 ++
drivers/scsi/mpt3sas/mpt3sas_base.h | 5 ++
drivers/scsi/mpt3sas/mpt3sas_config.c
Code refactoring.
In function _base_get_msix_index add scmd as second
argument. This change is required for creating function
pointer in next patch, where we introduce new function to
get the msix index for high iops queues
Signed-off-by: Suganath Prabu S
---
drivers/scsi/mpt3sas
statements
Signed-off-by: Suganath Prabu S
---
drivers/scsi/mpt3sas/mpt3sas_base.c | 38 +---
drivers/scsi/mpt3sas/mpt3sas_base.h | 3 ++
drivers/scsi/mpt3sas/mpt3sas_config.c| 2 +-
drivers/scsi/mpt3sas/mpt3sas_ctl.c | 20 ++---
drivers/scsi
Request Descriptor is an atomic operation,
providing a safe mechanism for multiple processors on the host to
post requests without synchronization. This Atomic Request Descriptor
format is identical to first 32 bits of Default Request Descriptor
and uses only 32 bits
Signed-off-by: Suganath Prabu S
warnings reported by kbuild test robot
v3:
- In patch6, For readability use if statement instead
of ternary operator.
Suganath Prabu S (10):
mpt3sas: function pointers of request descriptor
mpt3sas: Add Atomic RequestDescriptor support on Aero
mpt3sas: Add flag high_iops_queues
mpt3sas: change
From: Suganath Prabu
In this patch series we are adding below two features for
Aero/Sea HBA device. Aero/Sea series HBA is PCI4.0 based controllers.
1. Add Atomic Request descriptor support:
Atomic Request Descriptor is an alternative method for posting
an entry onto a request queue. The
From: Suganath Prabu
Update driver version from 28.100.00.00 to 29.100.00.00
This is equivalent to Phase 10 OOB driver.
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpt3sas_base.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/scsi/mpt3sas
From: Suganath Prabu
Code refactor:
In the IO submission path _base_get_msix_index is called twice,
one while getting the smid; msix index is saved in msix_io filed
in scsiio tracker and anther while posting the request descriptor(RD).
now code refactor is done to determine msix index only
From: Suganath Prabu
1. Introduce module parameter perf_mode for only Aero/Sea
generation HBAs.
2. Update IOC page1 fields according to performance mode.
Below are the performance modes that can be
enabled with module parameter perf_mode.
0: Balanced - Few high iops reply queues will be
From: Suganath Prabu
High iops queues are mapped to non-managed irqs.
Set affinity of non-managed irqs to local numa node.
Low latency queues are mapped to managed irq.
Driver reserves some reply queues (pci_alloc_irq_vectors_affinity and
.pre_vectors interface is used to meet the goal) for max
From: Suganath Prabu
Code refactoring.
In function _base_get_msix_index add scmd as second
argument. This change is required for creating function
pointer in next patch, where we introduce new function to
get the msix index for high iops queues
Signed-off-by: Suganath Prabu
---
drivers/scsi
From: Suganath Prabu
Aero controllers supports balanced performance mode and driver enables
set of high iops and low latency reply queue only if,
- HBA is an AERO controller,
- MSIXs vector supported by the HBA is 128,
- Total CPU count in the system more than high iops queue count
From: Suganath Prabu
Enable interrupt coalescing only on high iops queues when
high iops queues are enabled.
In ioc config page 1, offset 0x14 (ProductSpecific field)
is used to determine interrupt coalescing enabled/disabled on per
reply descriptor post queue group(8) basis.
If 31st bit is
From: Suganath Prabu
If the Aero HBA supports Atomic Request Descriptors, it sets the Atomic
Request Descriptor Capable bit in the IOCCapabilities field of the
IOCFacts Reply message. Driver uses an Atomic Request Descriptor
as an alternative method for posting an entry onto a request queue.
The
From: Suganath Prabu
Driver will use round robin method for io submission in batches
within the high iops queues when in-flight ios on the target device
is more than 8.
If in-flight ios per SCSI device more than 8, driver will use
high iops queue else driver will use low latency reply queues
From: Suganath Prabu
This code refactoring introduces function pointers.
Host uses Request Descriptors of different types for posting an entry
onto a request queue. Based on controller type and capabilities,
host can also use atomic descriptors other than normal
descriptors.
Using function
Update driver version from 28.100.00.00 to 29.100.00.00
This is equivalent to Phase 10 OOB driver.
Signed-off-by: Suganath Prabu S
---
drivers/scsi/mpt3sas/mpt3sas_base.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/scsi/mpt3sas/mpt3sas_base.h
b/drivers/scsi
498.10 usec |
|-|--|--|
|latency | 97.10 usec |689.26 usec |
-
Signed-off-by: Suganath Prabu S
---
drivers/scsi/mpt3sas/mpt3sas_base.c | 144 +++
user), current modified changes on ioc page1 won't take effect.
Signed-off-by: Suganath Prabu S
---
drivers/scsi/mpt3sas/mpi/mpi2_cnfg.h | 2 +-
drivers/scsi/mpt3sas/mpt3sas_base.c | 16
drivers/scsi/mpt3sas/mpt3sas_base.h | 5 +++
drivers/scsi/mpt3sas/mpt3sas_config.c
Code refactoring.
In function _base_get_msix_index add scmd as second
argument. This change is required for creating function
pointer in next patch, where we introduce new function to
get the msix index for high iops queues
Signed-off-by: Suganath Prabu S
---
drivers/scsi/mpt3sas
Driver will use round robin method for io submission in batches
within the high iops queues when in-flight ios on the target device
is more than 8.
If in-flight ios per SCSI device more than 8, driver will use
high iops queue else driver will use low latency reply queues.
Signed-off-by: Suganath
descriptor and save determined msix index in msix_io
field.
Signed-off-by: Suganath Prabu S
---
drivers/scsi/mpt3sas/mpt3sas_base.c | 42
drivers/scsi/mpt3sas/mpt3sas_base.h | 1 +
drivers/scsi/mpt3sas/mpt3sas_scsih.c | 1 +
3 files changed, 35 insertions
. In general, high iops queue and low latency
queue together should fit into 128 reply queue (max reply queue
supported by Aero/Sea)
Signed-off-by: Suganath Prabu S
---
drivers/scsi/mpt3sas/mpt3sas_base.c | 73 +++--
1 file changed, 62 insertions(+), 11 deletions
max_msix_vectors module parameter and
- System booted in non kdump mode.
Reply queues with interrupt coalescing enabled are called "high iops
reply queues" and reply queues with interrupt coalescing disabled are
called "low latency reply queues".
Signed-off-by: Suganath Prabu
Request Descriptor is an atomic operation,
providing a safe mechanism for multiple processors on the host to
post requests without synchronization. This Atomic Request Descriptor
format is identical to first 32 bits of Default Request Descriptor
and uses only 32 bits
Signed-off-by: Suganath Prabu S
statements
Signed-off-by: Suganath Prabu S
---
drivers/scsi/mpt3sas/mpt3sas_base.c | 32 ++--
drivers/scsi/mpt3sas/mpt3sas_base.h | 3 +++
drivers/scsi/mpt3sas/mpt3sas_config.c| 2 +-
drivers/scsi/mpt3sas/mpt3sas_ctl.c | 20
(i.e use low latency reply queue).
If outstanding IOs per scsi device is more than 8 -
Driver should do round robin io submission in batches on high iops queue.
Example: Batches of the 16.
“First 16 IOS submitted to reply queue 0, next 16 IOS submitted to reply
queue 1 etc”.
Suganath Prabu S (10
Thanks Martin.
-Suganath
On Tue, Mar 19, 2019 at 2:47 AM Martin K. Petersen
wrote:
>
>
> Suganath,
>
> > We have seen cpu lock up issue from fields if system has greater (more
> > than 96) logical cpu count. SAS3.0 controller (Invader series)
> > supports at max 96 msix vector and SAS3.5 produc
Hi Martin,
Any update on these patches.
Thanks,
Suganath
On Fri, Feb 15, 2019 at 1:10 PM Suganath Prabu
wrote:
>
> We have seen cpu lock up issue from fields if
> system has greater (more than 96) logical cpu count.
> SAS3.0 controller (Invader series) supports at
> max 96
Hi Vaughan,
NCQ feature is only for SATA.
Enabling / Disabling NCQ through mpt3sas/lsiutil support is only for
SATA drives.
Thanks,
Suganath
On Mon, Feb 25, 2019 at 8:12 AM ca...@uit.com.cn wrote:
>
> Hi Suganath,
>
>[448435.392210] scsi 4:0:0:0: atapi(n), ncq(n), asyn_notify(n),smart(y),
:1 (where X > 1)
This improves performance and also fixes soft lockups.
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpt3sas_base.c | 21 +
drivers/scsi/mpt3sas/mpt3sas_base.h | 5 +
2 files changed, 26 insertions(+)
diff --git a/drivers/scsi/mpt3sas/mpt3sas
s/mpt3sas.ko] undefined!
ERROR: "irq_poll_disable" [drivers/scsi/mpt3sas/mpt3sas.ko] undefined!
ERROR: "irq_poll_complete" [drivers/scsi/mpt3sas/mpt3sas.ko] undefined!
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/Kconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/d
can avoid the CPU lockups and
by equally distributing the interrupts among the enabled MSI-x
interrupts we can avoid performance issues.
Patch 3 & 4 addresses Fix 1 and Fix 2 explained
above, only if cpu count is more than FW supported MSI-x vector.
Patch V1 changeset.
Added patch 3 to add select i
post queues in
_base_process_reply_queue.
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpt3sas_base.c | 14 --
drivers/scsi/mpt3sas/mpt3sas_base.h | 3 +++
2 files changed, 15 insertions(+), 2 deletions(-)
diff --git a/drivers/scsi/mpt3sas/mpt3sas_base.c
b/drivers/scsi
Fixed typo in request_desript_type.
request_desript_type --> request_descript_type.
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpt3sas_base.c | 18 +-
1 file changed, 9 insertions(+), 9 deletions(-)
diff --git a/drivers/scsi/mpt3sas/mpt3sas_base.c
b/drivers/s
Separate out processing of reply descriptor post queue
from _base_interrupt to _base_process_reply_queue.
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpt3sas_base.c | 49 +
1 file changed, 33 insertions(+), 16 deletions(-)
diff --git a/drivers
Updated driver version to 28.100.00.00,
which is equivalent to OOB Ph9
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpt3sas_base.h | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/scsi/mpt3sas/mpt3sas_base.h
b/drivers/scsi/mpt3sas/mpt3sas_base.h
index
mpt3sas0-msix0
450 0 0 0 0 IR-PCI-MSI-edge
mpt3sas0-msix1
We have used the fix only if cpu count is more than FW supported MSI-x vector
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpt3sas_base.c | 78 -
d
:1 (where X > 1)
This improves performance and also fixes soft lockups.
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpt3sas_base.c | 21 +
drivers/scsi/mpt3sas/mpt3sas_base.h | 5 +
2 files changed, 26 insertions(+)
diff --git a/drivers/scsi/mpt3sas/mpt3sas
post queues in
_base_process_reply_queue.
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpt3sas_base.c | 14 --
drivers/scsi/mpt3sas/mpt3sas_base.h | 3 +++
2 files changed, 15 insertions(+), 2 deletions(-)
diff --git a/drivers/scsi/mpt3sas/mpt3sas_base.c
b/drivers/scsi
Separate out processing of reply descriptor post queue
from _base_interrupt to _base_process_reply_queue.
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpt3sas_base.c | 49 +
1 file changed, 33 insertions(+), 16 deletions(-)
diff --git a/drivers
Fixed typo in request_desript_type.
request_desript_type --> request_descript_type.
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpt3sas_base.c | 18 +-
1 file changed, 9 insertions(+), 9 deletions(-)
diff --git a/drivers/scsi/mpt3sas/mpt3sas_base.c
b/drivers/s
Updated driver version to 28.100.00.00,
which is equivalent to OOB Ph9
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpt3sas_base.h | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/scsi/mpt3sas/mpt3sas_base.h
b/drivers/scsi/mpt3sas/mpt3sas_base.h
index
mpt3sas0-msix0
450 0 0 0 0 IR-PCI-MSI-edge
mpt3sas0-msix1
We have used the fix only if cpu count is more than FW supported MSI-x vector
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpt3sas_base.c | 78 -
d
can avoid the CPU lockups and
by equally distributing the interrupts among the enabled MSI-x
interrupts we can avoid performance issues.
Patch 3 & 4 addresses Fix 1 and Fix 2 explained
above only if cpu count is more than FW supported MSI-x vector.
Suganath Prabu S (6):
mpt3sas: Fix typo in re
Updated driver version to 27.102.00.00 from 27.101.00.00.
Signed-off-by: Suganath Prabu S
---
drivers/scsi/mpt3sas/mpt3sas_base.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/scsi/mpt3sas/mpt3sas_base.h
b/drivers/scsi/mpt3sas/mpt3sas_base.h
index db12c1b
Add Atlas PCIe Switch Management Port device PNPID,
Vendor Id: 0x1000
device Id: 0x00B2
This device is based on MPI 2.6 spec and it exposes one
SES device to accept management commands for the PCIe switch.
Signed-off-by: Suganath Prabu S
---
drivers/scsi/mpt3sas/mpt3sas_base.h | 3
MPI Endpoint is a PCIe switch based on MPI2,
Renaming device ID macro from
MPI2_MFGPAGE_DEVID_SAS2308_MPI_EP
to MPI2_MFGPAGE_DEVID_SWITCH_MPI_EP
Signed-off-by: Suganath Prabu S
---
drivers/scsi/mpt3sas/mpi/mpi2_cnfg.h | 2 +-
drivers/scsi/mpt3sas/mpt3sas_scsih.c | 6 +++---
2 files changed, 4
MPI2.6 and it exposes
one SES device to accept management commands.
Suganath Prabu S (4):
mpt3sas: Rename mpi endpoint device ID macro.
mpt3sas: Add support for NVMe Switch Adapter
mpt3sas: Add support for ATLAS PCIe switch.
mpt3sas: Update driver version to 27.102.00.00
drivers/scsi
Added device ID for NVMe Switch Adapter (Ambrosia).
VID: 0x1000
DID: 0x02B1
Signed-off-by: Suganath Prabu S
---
drivers/scsi/mpt3sas/mpi/mpi2_cnfg.h | 1 +
drivers/scsi/mpt3sas/mpt3sas_scsih.c | 4
2 files changed, 5 insertions(+)
diff --git a/drivers/scsi/mpt3sas/mpi/mpi2_cnfg.h
b
Hi Gustavo,
This patch may not apply smoothly over 4.21/scsi-queue.
Our previous patch for Aero had some changes in this switch case.
Can you resend this patch with latest code base ?
Thanks,
Suganath prabu
On Thu, Dec 20, 2018 at 5:37 AM Gustavo A. R. Silva
wrote:
>
> Hi,
>
> F
Update driver version from 27.100.00.00 to 27.101.00.00.
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpt3sas_base.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/scsi/mpt3sas/mpt3sas_base.h
b/drivers/scsi/mpt3sas/mpt3sas_base.h
index 3a294b9
Use ioc->base_readl to restrict the readl retries to only
Aero controllers.
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpt3sas_base.c | 39 +++--
1 file changed, 20 insertions(+), 19 deletions(-)
diff --git a/drivers/scsi/mpt3sas/mpt3sas_base.c
base_readl_aero for Aero IOC and base_readl for
gen35 and other controllers.
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpt3sas_base.c | 30 ++
drivers/scsi/mpt3sas/mpt3sas_base.h | 2 ++
2 files changed, 32 insertions(+)
diff --git a/drivers/scsi/mpt3sas
for maximum three times, if read
returns zero.
Suganath Prabu (4):
mpt3sas: Introduce flag for aero based controllers.
mpt3sas: Add separate function for aero doorbell reads.
mpt3sas: Replace readl with ioc->base_readl.
mpt3sas: Update driver version to 27.101.00.00.
drivers/scsi/mpt3
Adding flag "is_aero_ioc" to differentiate aero based controllers
from other gen35 controllers.
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpt3sas_base.h | 1 +
drivers/scsi/mpt3sas/mpt3sas_scsih.c | 14 --
2 files changed, 9 insertions(+), 6 deletions(-)
di
No functional change. Doing code refactor of function
mpt3sas_wait_for_ioc() for better readability.
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpt3sas_base.c | 20 +---
1 file changed, 9 insertions(+), 11 deletions(-)
diff --git a/drivers/scsi/mpt3sas
If EEDPTagMode field in manufacturing page11 is set then
unset it. This is needed to fix a hardware bug only
in SAS3/SAS2 cards. So, skipping EEDPTagMode changes
in Manufacturing page11 for SAS 3.5 controllers.
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpt3sas_base.c | 2 +-
1 file
time.
Once sas_remove_host() is called before removing the target drives then
driver can just clean up the resources allocated for target devices and
no need to call sas_port_delete_phy(), sas_port_delete() API's as these
API's internally called from sas_remove_host().
Signed-off-by:
s which are issued to the
target drives (where write cache is enabled) during driver unload time
is failed with DID_NO_CONNECT status.
Now modified the driver to allow SYNC CACHE and START STOP commands
to IOC, even when remove_host flag is set.
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3s
Modify driver version to 27.100.00.00
(which is equivalent to PH8 OOB driver)
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpt3sas_base.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/scsi/mpt3sas/mpt3sas_base.h
b/drivers/scsi/mpt3sas/mpt3sas_base.h
"mpt3sas_base_pci_device_is_available" and
made inline
V2 Change Set:
Replaced mpt3sas_base_pci_device_is_unplugged with
pci_device_is_present.
V1 Chnage Set:
In Patch 0001 - unlock mutex, if active reset is in progress.
Suganath Prabu (8):
mpt3sas: Added new #define variable IOC_OPERATIONAL_WAIT_COUNT
Added new #define variable IOC_OPERATIONAL_WAIT_COUNT and
it replaces hard coded value '10' in all the places where driver is
waiting for the IOC to become operational.
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpt3sas_base.c | 4 ++--
drivers/scsi/mpt3sas/mpt3
ring page11.
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpt3sas_config.c | 4
1 file changed, 4 deletions(-)
diff --git a/drivers/scsi/mpt3sas/mpt3sas_config.c
b/drivers/scsi/mpt3sas/mpt3sas_config.c
index 257b66f..8516713 100644
--- a/drivers/scsi/mpt3sas/mpt3sas_config.c
+++ b/dri
No functional changes. This section of code "wait for IOC to be
operational" is used in many places across the driver. Factor
this code out into a new mpt3sas_wait_for_ioc().
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpt3sas_base.c | 73 +++---
Any update on this ?
In V6, I have posted has only defect fixes (Other than HBA Hot-Plug
Surprise remove support).
We are reworking and incorporating the suggestions from Bjorn.
And after covering tests, we ll post Hot-Plug Surprise removal patches.
Thanks,
Suganath Prabu
On Tue, Oct 23, 2018 at
Updating MPI headers to the latest version 2.6.7 to
add support to the driver to detect the new 3816
and 3916 chip based controllers.
Separate out firmware image data from mpi2_ioc.h
to new file mpi2_image.h
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpi/mpi2.h | 17
Add support for Aero/Sea controllers and
add warning for configurable secure type IOC.
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpt3sas_scsih.c | 30 --
1 file changed, 28 insertions(+), 2 deletions(-)
diff --git a/drivers/scsi/mpt3sas/mpt3sas_scsih.c
1) Updated MPI headers to the latest version 2.6.7.
2) Added support for Aero/Sea controllers.
V1 changes:
In Patch 2,
ioc->name is populated later, so fixing ioc->name
before using it in ioc_warn.
Enable Warning message only for aero configurable
controllers.
Suganath Prabu (2):
m
Add support for Aero/Sea controllers and
add warning for configurable secure type IOC.
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpt3sas_scsih.c | 26 ++
1 file changed, 26 insertions(+)
diff --git a/drivers/scsi/mpt3sas/mpt3sas_scsih.c
b/drivers/scsi
Updating MPI headers to the latest version 2.6.7 to
add support to the driver to detect the new 3816
and 3916 chip based controllers.
Separate out firmware image data from mpi2_ioc.h
to new file mpi2_image.h
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpi/mpi2.h | 17
1) Updated MPI headers to the latest version 2.6.7.
2) Added support for Aero/Sea controllers.
Suganath Prabu (2):
mpt3sas: Update MPI headers to support Aero controllers.
mpt3sas: Add support to Aero PCI IDs.
drivers/scsi/mpt3sas/mpi/mpi2.h | 17 +-
drivers/scsi/mpt3sas/mpi
Updating MPI headers to the latest version 2.6.7 to
add support to the driver to detect the new 3816
and 3916 chip based controllers.
Separate out firmware image data from mpi2_ioc.h
to new file mpi2_image.h
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpi/mpi2.h | 17
Add support for Aero/Sea controllers and
add warning for configurable secure type IOC.
Signed-off-by: Suganath Prabu
---
drivers/scsi/mpt3sas/mpt3sas_base.h | 1 +
drivers/scsi/mpt3sas/mpt3sas_scsih.c | 26 ++
2 files changed, 27 insertions(+)
diff --git a/drivers
Updating MPI headers to the latest version 2.6.7 to
add support to the driver to detect new 3816
and 3916 chip based controllers.
Seperate out firmware image data from mpi2_ioc.h
to new file mpi2_image.h
Suganath Prabu (2):
mpt3sas: Update MPI headers to support Aero controllers.
mpt3sas
1 - 100 of 364 matches
Mail list logo