aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/megaraid/megaraid_sas.h
diff options
context:
space:
mode:
authorSumit Saxena <sumit.saxena@avagotech.com>2016-01-28 10:34:31 -0500
committerMartin K. Petersen <martin.petersen@oracle.com>2016-02-23 21:27:02 -0500
commit52b62ac7c66e1a11eb8b3e3b0212847749af3b2d (patch)
treea27f8415c9a90f9f00a37c2e36ec14985b9bf886 /drivers/scsi/megaraid/megaraid_sas.h
parent308ec459bc1975d9856cfeb3d1cd6461794a3976 (diff)
megaraid_sas: IO throttling support
This patch will add capability in driver to tell firmware that it can throttle IOs in case controller's queue depth is downgraded post OFU (online firmware upgrade). This feature will ensure firmware can be downgraded from higher queue depth to lower queue depth without needing system reboot. Added throttling code in IO path of driver, in case OS tries to send more IOs than post OFU firmware's queue depth. Signed-off-by: Sumit Saxena <sumit.saxena@avagotech.com> Signed-off-by: Kashyap Desai <kashyap.desai@avagotech.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'drivers/scsi/megaraid/megaraid_sas.h')
-rw-r--r--drivers/scsi/megaraid/megaraid_sas.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/scsi/megaraid/megaraid_sas.h b/drivers/scsi/megaraid/megaraid_sas.h
index 2a2f49134491..c8d25a739d38 100644
--- a/drivers/scsi/megaraid/megaraid_sas.h
+++ b/drivers/scsi/megaraid/megaraid_sas.h
@@ -1537,7 +1537,8 @@ union megasas_sgl_frame {
1537typedef union _MFI_CAPABILITIES { 1537typedef union _MFI_CAPABILITIES {
1538 struct { 1538 struct {
1539#if defined(__BIG_ENDIAN_BITFIELD) 1539#if defined(__BIG_ENDIAN_BITFIELD)
1540 u32 reserved:21; 1540 u32 reserved:20;
1541 u32 support_qd_throttling:1;
1541 u32 support_fp_rlbypass:1; 1542 u32 support_fp_rlbypass:1;
1542 u32 support_vfid_in_ioframe:1; 1543 u32 support_vfid_in_ioframe:1;
1543 u32 support_ext_io_size:1; 1544 u32 support_ext_io_size:1;
@@ -1561,7 +1562,8 @@ typedef union _MFI_CAPABILITIES {
1561 u32 support_ext_io_size:1; 1562 u32 support_ext_io_size:1;
1562 u32 support_vfid_in_ioframe:1; 1563 u32 support_vfid_in_ioframe:1;
1563 u32 support_fp_rlbypass:1; 1564 u32 support_fp_rlbypass:1;
1564 u32 reserved:21; 1565 u32 support_qd_throttling:1;
1566 u32 reserved:20;
1565#endif 1567#endif
1566 } mfi_capabilities; 1568 } mfi_capabilities;
1567 __le32 reg; 1569 __le32 reg;