diff options
author | James Smart <James.Smart@Emulex.Com> | 2006-12-02 13:34:16 -0500 |
---|---|---|
committer | James Bottomley <jejb@mulgrave.il.steeleye.com> | 2006-12-03 10:29:18 -0500 |
commit | a4bc3379fbc368597024104727fdf14ced483c14 (patch) | |
tree | ed16c3eb403754d7fb9e8928ecc5a286f10a12d3 /drivers/scsi/lpfc/lpfc_attr.c | |
parent | 2fb9bd8b9cbe9a8d70bf5f43a9ee6a4fa565ed5a (diff) |
[SCSI] lpfc 8.1.11 : Fix lpfc_multi_ring_support
It was not accounted for in the fast/slow rings.
Genericize the implementation and control it via sysfs
Signed-off-by: James Smart <James.Smart@emulex.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Diffstat (limited to 'drivers/scsi/lpfc/lpfc_attr.c')
-rw-r--r-- | drivers/scsi/lpfc/lpfc_attr.c | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/drivers/scsi/lpfc/lpfc_attr.c b/drivers/scsi/lpfc/lpfc_attr.c index 2a4e02e7a392..f05ef3011307 100644 --- a/drivers/scsi/lpfc/lpfc_attr.c +++ b/drivers/scsi/lpfc/lpfc_attr.c | |||
@@ -802,7 +802,6 @@ static CLASS_DEVICE_ATTR(lpfc_devloss_tmo, S_IRUGO | S_IWUSR, | |||
802 | # LOG_MBOX 0x4 Mailbox events | 802 | # LOG_MBOX 0x4 Mailbox events |
803 | # LOG_INIT 0x8 Initialization events | 803 | # LOG_INIT 0x8 Initialization events |
804 | # LOG_LINK_EVENT 0x10 Link events | 804 | # LOG_LINK_EVENT 0x10 Link events |
805 | # LOG_IP 0x20 IP traffic history | ||
806 | # LOG_FCP 0x40 FCP traffic history | 805 | # LOG_FCP 0x40 FCP traffic history |
807 | # LOG_NODE 0x80 Node table events | 806 | # LOG_NODE 0x80 Node table events |
808 | # LOG_MISC 0x400 Miscellaneous events | 807 | # LOG_MISC 0x400 Miscellaneous events |
@@ -916,6 +915,22 @@ LPFC_ATTR_R(multi_ring_support, 1, 1, 2, "Determines number of primary " | |||
916 | "SLI rings to spread IOCB entries across"); | 915 | "SLI rings to spread IOCB entries across"); |
917 | 916 | ||
918 | /* | 917 | /* |
918 | # lpfc_multi_ring_rctl: If lpfc_multi_ring_support is enabled, this | ||
919 | # identifies what rctl value to configure the additional ring for. | ||
920 | # Value range is [1,0xff]. Default value is 4 (Unsolicated Data). | ||
921 | */ | ||
922 | LPFC_ATTR_R(multi_ring_rctl, FC_UNSOL_DATA, 1, | ||
923 | 255, "Identifies RCTL for additional ring configuration"); | ||
924 | |||
925 | /* | ||
926 | # lpfc_multi_ring_type: If lpfc_multi_ring_support is enabled, this | ||
927 | # identifies what type value to configure the additional ring for. | ||
928 | # Value range is [1,0xff]. Default value is 5 (LLC/SNAP). | ||
929 | */ | ||
930 | LPFC_ATTR_R(multi_ring_type, FC_LLC_SNAP, 1, | ||
931 | 255, "Identifies TYPE for additional ring configuration"); | ||
932 | |||
933 | /* | ||
919 | # lpfc_fdmi_on: controls FDMI support. | 934 | # lpfc_fdmi_on: controls FDMI support. |
920 | # 0 = no FDMI support | 935 | # 0 = no FDMI support |
921 | # 1 = support FDMI without attribute of hostname | 936 | # 1 = support FDMI without attribute of hostname |
@@ -974,6 +989,8 @@ struct class_device_attribute *lpfc_host_attrs[] = { | |||
974 | &class_device_attr_lpfc_cr_delay, | 989 | &class_device_attr_lpfc_cr_delay, |
975 | &class_device_attr_lpfc_cr_count, | 990 | &class_device_attr_lpfc_cr_count, |
976 | &class_device_attr_lpfc_multi_ring_support, | 991 | &class_device_attr_lpfc_multi_ring_support, |
992 | &class_device_attr_lpfc_multi_ring_rctl, | ||
993 | &class_device_attr_lpfc_multi_ring_type, | ||
977 | &class_device_attr_lpfc_fdmi_on, | 994 | &class_device_attr_lpfc_fdmi_on, |
978 | &class_device_attr_lpfc_max_luns, | 995 | &class_device_attr_lpfc_max_luns, |
979 | &class_device_attr_nport_evt_cnt, | 996 | &class_device_attr_nport_evt_cnt, |
@@ -1771,6 +1788,8 @@ lpfc_get_cfgparam(struct lpfc_hba *phba) | |||
1771 | lpfc_cr_delay_init(phba, lpfc_cr_delay); | 1788 | lpfc_cr_delay_init(phba, lpfc_cr_delay); |
1772 | lpfc_cr_count_init(phba, lpfc_cr_count); | 1789 | lpfc_cr_count_init(phba, lpfc_cr_count); |
1773 | lpfc_multi_ring_support_init(phba, lpfc_multi_ring_support); | 1790 | lpfc_multi_ring_support_init(phba, lpfc_multi_ring_support); |
1791 | lpfc_multi_ring_rctl_init(phba, lpfc_multi_ring_rctl); | ||
1792 | lpfc_multi_ring_type_init(phba, lpfc_multi_ring_type); | ||
1774 | lpfc_lun_queue_depth_init(phba, lpfc_lun_queue_depth); | 1793 | lpfc_lun_queue_depth_init(phba, lpfc_lun_queue_depth); |
1775 | lpfc_fcp_class_init(phba, lpfc_fcp_class); | 1794 | lpfc_fcp_class_init(phba, lpfc_fcp_class); |
1776 | lpfc_use_adisc_init(phba, lpfc_use_adisc); | 1795 | lpfc_use_adisc_init(phba, lpfc_use_adisc); |