aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/cxgbi
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2011-10-28 19:44:18 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2011-10-28 19:44:18 -0400
commitec7ae517537ae5c7b0b2cd7f562dfa3e7a05b954 (patch)
treee6b0c64a51a7c0aa0efd09d4f7a80872e3b1657a /drivers/scsi/cxgbi
parent97d2eb13a019ec09cc1a7ea2d3705c0b117b3c0d (diff)
parent590134fa78fbdbe5fea78c7ae0b2c3364bc9572f (diff)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (204 commits) [SCSI] qla4xxx: export address/port of connection (fix udev disk names) [SCSI] ipr: Fix BUG on adapter dump timeout [SCSI] megaraid_sas: Fix instance access in megasas_reset_timer [SCSI] hpsa: change confusing message to be more clear [SCSI] iscsi class: fix vlan configuration [SCSI] qla4xxx: fix data alignment and use nl helpers [SCSI] iscsi class: fix link local mispelling [SCSI] iscsi class: Replace iscsi_get_next_target_id with IDA [SCSI] aacraid: use lower snprintf() limit [SCSI] lpfc 8.3.27: Change driver version to 8.3.27 [SCSI] lpfc 8.3.27: T10 additions for SLI4 [SCSI] lpfc 8.3.27: Fix queue allocation failure recovery [SCSI] lpfc 8.3.27: Change algorithm for getting physical port name [SCSI] lpfc 8.3.27: Changed worst case mailbox timeout [SCSI] lpfc 8.3.27: Miscellanous logic and interface fixes [SCSI] megaraid_sas: Changelog and version update [SCSI] megaraid_sas: Add driver workaround for PERC5/1068 kdump kernel panic [SCSI] megaraid_sas: Add multiple MSI-X vector/multiple reply queue support [SCSI] megaraid_sas: Add support for MegaRAID 9360/9380 12GB/s controllers [SCSI] megaraid_sas: Clear FUSION_IN_RESET before enabling interrupts ...
Diffstat (limited to 'drivers/scsi/cxgbi')
-rw-r--r--drivers/scsi/cxgbi/cxgb3i/cxgb3i.c20
-rw-r--r--drivers/scsi/cxgbi/cxgb4i/cxgb4i.c20
-rw-r--r--drivers/scsi/cxgbi/libcxgbi.c56
-rw-r--r--drivers/scsi/cxgbi/libcxgbi.h1
4 files changed, 59 insertions, 38 deletions
diff --git a/drivers/scsi/cxgbi/cxgb3i/cxgb3i.c b/drivers/scsi/cxgbi/cxgb3i/cxgb3i.c
index 1242c7c04a01..000294a9df80 100644
--- a/drivers/scsi/cxgbi/cxgb3i/cxgb3i.c
+++ b/drivers/scsi/cxgbi/cxgb3i/cxgb3i.c
@@ -105,25 +105,7 @@ static struct iscsi_transport cxgb3i_iscsi_transport = {
105 .caps = CAP_RECOVERY_L0 | CAP_MULTI_R2T | CAP_HDRDGST 105 .caps = CAP_RECOVERY_L0 | CAP_MULTI_R2T | CAP_HDRDGST
106 | CAP_DATADGST | CAP_DIGEST_OFFLOAD | 106 | CAP_DATADGST | CAP_DIGEST_OFFLOAD |
107 CAP_PADDING_OFFLOAD | CAP_TEXT_NEGO, 107 CAP_PADDING_OFFLOAD | CAP_TEXT_NEGO,
108 .param_mask = ISCSI_MAX_RECV_DLENGTH | ISCSI_MAX_XMIT_DLENGTH | 108 .attr_is_visible = cxgbi_attr_is_visible,
109 ISCSI_HDRDGST_EN | ISCSI_DATADGST_EN |
110 ISCSI_INITIAL_R2T_EN | ISCSI_MAX_R2T |
111 ISCSI_IMM_DATA_EN | ISCSI_FIRST_BURST |
112 ISCSI_MAX_BURST | ISCSI_PDU_INORDER_EN |
113 ISCSI_DATASEQ_INORDER_EN | ISCSI_ERL |
114 ISCSI_CONN_PORT | ISCSI_CONN_ADDRESS |
115 ISCSI_EXP_STATSN | ISCSI_PERSISTENT_PORT |
116 ISCSI_PERSISTENT_ADDRESS |
117 ISCSI_TARGET_NAME | ISCSI_TPGT |
118 ISCSI_USERNAME | ISCSI_PASSWORD |
119 ISCSI_USERNAME_IN | ISCSI_PASSWORD_IN |
120 ISCSI_FAST_ABORT | ISCSI_ABORT_TMO |
121 ISCSI_LU_RESET_TMO | ISCSI_TGT_RESET_TMO |
122 ISCSI_PING_TMO | ISCSI_RECV_TMO |
123 ISCSI_IFACE_NAME | ISCSI_INITIATOR_NAME,
124 .host_param_mask = ISCSI_HOST_HWADDRESS | ISCSI_HOST_IPADDRESS |
125 ISCSI_HOST_INITIATOR_NAME |
126 ISCSI_HOST_NETDEV_NAME,
127 .get_host_param = cxgbi_get_host_param, 109 .get_host_param = cxgbi_get_host_param,
128 .set_host_param = cxgbi_set_host_param, 110 .set_host_param = cxgbi_set_host_param,
129 /* session management */ 111 /* session management */
diff --git a/drivers/scsi/cxgbi/cxgb4i/cxgb4i.c b/drivers/scsi/cxgbi/cxgb4i/cxgb4i.c
index 31c79bde6976..ac7a9b1e3e23 100644
--- a/drivers/scsi/cxgbi/cxgb4i/cxgb4i.c
+++ b/drivers/scsi/cxgbi/cxgb4i/cxgb4i.c
@@ -106,25 +106,7 @@ static struct iscsi_transport cxgb4i_iscsi_transport = {
106 .caps = CAP_RECOVERY_L0 | CAP_MULTI_R2T | CAP_HDRDGST | 106 .caps = CAP_RECOVERY_L0 | CAP_MULTI_R2T | CAP_HDRDGST |
107 CAP_DATADGST | CAP_DIGEST_OFFLOAD | 107 CAP_DATADGST | CAP_DIGEST_OFFLOAD |
108 CAP_PADDING_OFFLOAD | CAP_TEXT_NEGO, 108 CAP_PADDING_OFFLOAD | CAP_TEXT_NEGO,
109 .param_mask = ISCSI_MAX_RECV_DLENGTH | ISCSI_MAX_XMIT_DLENGTH | 109 .attr_is_visible = cxgbi_attr_is_visible,
110 ISCSI_HDRDGST_EN | ISCSI_DATADGST_EN |
111 ISCSI_INITIAL_R2T_EN | ISCSI_MAX_R2T |
112 ISCSI_IMM_DATA_EN | ISCSI_FIRST_BURST |
113 ISCSI_MAX_BURST | ISCSI_PDU_INORDER_EN |
114 ISCSI_DATASEQ_INORDER_EN | ISCSI_ERL |
115 ISCSI_CONN_PORT | ISCSI_CONN_ADDRESS |
116 ISCSI_EXP_STATSN | ISCSI_PERSISTENT_PORT |
117 ISCSI_PERSISTENT_ADDRESS |
118 ISCSI_TARGET_NAME | ISCSI_TPGT |
119 ISCSI_USERNAME | ISCSI_PASSWORD |
120 ISCSI_USERNAME_IN | ISCSI_PASSWORD_IN |
121 ISCSI_FAST_ABORT | ISCSI_ABORT_TMO |
122 ISCSI_LU_RESET_TMO | ISCSI_TGT_RESET_TMO |
123 ISCSI_PING_TMO | ISCSI_RECV_TMO |
124 ISCSI_IFACE_NAME | ISCSI_INITIATOR_NAME,
125 .host_param_mask = ISCSI_HOST_HWADDRESS | ISCSI_HOST_IPADDRESS |
126 ISCSI_HOST_INITIATOR_NAME |
127 ISCSI_HOST_NETDEV_NAME,
128 .get_host_param = cxgbi_get_host_param, 110 .get_host_param = cxgbi_get_host_param,
129 .set_host_param = cxgbi_set_host_param, 111 .set_host_param = cxgbi_set_host_param,
130 /* session management */ 112 /* session management */
diff --git a/drivers/scsi/cxgbi/libcxgbi.c b/drivers/scsi/cxgbi/libcxgbi.c
index 1c1329bc77c7..c363a4b260fd 100644
--- a/drivers/scsi/cxgbi/libcxgbi.c
+++ b/drivers/scsi/cxgbi/libcxgbi.c
@@ -2568,6 +2568,62 @@ void cxgbi_iscsi_cleanup(struct iscsi_transport *itp,
2568} 2568}
2569EXPORT_SYMBOL_GPL(cxgbi_iscsi_cleanup); 2569EXPORT_SYMBOL_GPL(cxgbi_iscsi_cleanup);
2570 2570
2571mode_t cxgbi_attr_is_visible(int param_type, int param)
2572{
2573 switch (param_type) {
2574 case ISCSI_HOST_PARAM:
2575 switch (param) {
2576 case ISCSI_HOST_PARAM_NETDEV_NAME:
2577 case ISCSI_HOST_PARAM_HWADDRESS:
2578 case ISCSI_HOST_PARAM_IPADDRESS:
2579 case ISCSI_HOST_PARAM_INITIATOR_NAME:
2580 return S_IRUGO;
2581 default:
2582 return 0;
2583 }
2584 case ISCSI_PARAM:
2585 switch (param) {
2586 case ISCSI_PARAM_MAX_RECV_DLENGTH:
2587 case ISCSI_PARAM_MAX_XMIT_DLENGTH:
2588 case ISCSI_PARAM_HDRDGST_EN:
2589 case ISCSI_PARAM_DATADGST_EN:
2590 case ISCSI_PARAM_CONN_ADDRESS:
2591 case ISCSI_PARAM_CONN_PORT:
2592 case ISCSI_PARAM_EXP_STATSN:
2593 case ISCSI_PARAM_PERSISTENT_ADDRESS:
2594 case ISCSI_PARAM_PERSISTENT_PORT:
2595 case ISCSI_PARAM_PING_TMO:
2596 case ISCSI_PARAM_RECV_TMO:
2597 case ISCSI_PARAM_INITIAL_R2T_EN:
2598 case ISCSI_PARAM_MAX_R2T:
2599 case ISCSI_PARAM_IMM_DATA_EN:
2600 case ISCSI_PARAM_FIRST_BURST:
2601 case ISCSI_PARAM_MAX_BURST:
2602 case ISCSI_PARAM_PDU_INORDER_EN:
2603 case ISCSI_PARAM_DATASEQ_INORDER_EN:
2604 case ISCSI_PARAM_ERL:
2605 case ISCSI_PARAM_TARGET_NAME:
2606 case ISCSI_PARAM_TPGT:
2607 case ISCSI_PARAM_USERNAME:
2608 case ISCSI_PARAM_PASSWORD:
2609 case ISCSI_PARAM_USERNAME_IN:
2610 case ISCSI_PARAM_PASSWORD_IN:
2611 case ISCSI_PARAM_FAST_ABORT:
2612 case ISCSI_PARAM_ABORT_TMO:
2613 case ISCSI_PARAM_LU_RESET_TMO:
2614 case ISCSI_PARAM_TGT_RESET_TMO:
2615 case ISCSI_PARAM_IFACE_NAME:
2616 case ISCSI_PARAM_INITIATOR_NAME:
2617 return S_IRUGO;
2618 default:
2619 return 0;
2620 }
2621 }
2622
2623 return 0;
2624}
2625EXPORT_SYMBOL_GPL(cxgbi_attr_is_visible);
2626
2571static int __init libcxgbi_init_module(void) 2627static int __init libcxgbi_init_module(void)
2572{ 2628{
2573 sw_tag_idx_bits = (__ilog2_u32(ISCSI_ITT_MASK)) + 1; 2629 sw_tag_idx_bits = (__ilog2_u32(ISCSI_ITT_MASK)) + 1;
diff --git a/drivers/scsi/cxgbi/libcxgbi.h b/drivers/scsi/cxgbi/libcxgbi.h
index 3a25b1187c10..20c88279c7a6 100644
--- a/drivers/scsi/cxgbi/libcxgbi.h
+++ b/drivers/scsi/cxgbi/libcxgbi.h
@@ -709,6 +709,7 @@ int cxgbi_conn_xmit_pdu(struct iscsi_task *);
709 709
710void cxgbi_cleanup_task(struct iscsi_task *task); 710void cxgbi_cleanup_task(struct iscsi_task *task);
711 711
712mode_t cxgbi_attr_is_visible(int param_type, int param);
712void cxgbi_get_conn_stats(struct iscsi_cls_conn *, struct iscsi_stats *); 713void cxgbi_get_conn_stats(struct iscsi_cls_conn *, struct iscsi_stats *);
713int cxgbi_set_conn_param(struct iscsi_cls_conn *, 714int cxgbi_set_conn_param(struct iscsi_cls_conn *,
714 enum iscsi_param, char *, int); 715 enum iscsi_param, char *, int);