aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/message/fusion/mptsas.c
diff options
context:
space:
mode:
authorKashyap, Desai <kashyap.desai@lsi.com>2009-05-29 07:10:57 -0400
committerJames Bottomley <James.Bottomley@HansenPartnership.com>2009-06-09 18:26:20 -0400
commitf0f09d3b3f06900d64971625d6753dea0623ed45 (patch)
tree896237d53275eeb6b4484c2cb747f0b333157c30 /drivers/message/fusion/mptsas.c
parentfd76175a7d3abf4d14df17f5f4c7e68b466b455d (diff)
[SCSI] mpt fusion: config path optimized, completion queue is used
1) Previously we had mutliple #defines to use same values. Now those #defines are optimized. MPT_IOCTL_STATUS_* is removed and MPT_MGMT_STATUS_* are new #defines. 2.) config path is optimized. Instead of wait Queue and timer, using completion Q. 3.) mpt_timer_expired is not used. [jejb: elide patch to eliminate mpt_timer_expired] Signed-off-by: Kashyap Desai <kadesai@lsi.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Diffstat (limited to 'drivers/message/fusion/mptsas.c')
-rw-r--r--drivers/message/fusion/mptsas.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/message/fusion/mptsas.c b/drivers/message/fusion/mptsas.c
index 40dbaaaf49e1..dc23adf9a30f 100644
--- a/drivers/message/fusion/mptsas.c
+++ b/drivers/message/fusion/mptsas.c
@@ -1122,9 +1122,9 @@ static int mptsas_get_linkerrors(struct sas_phy *phy)
1122static int mptsas_mgmt_done(MPT_ADAPTER *ioc, MPT_FRAME_HDR *req, 1122static int mptsas_mgmt_done(MPT_ADAPTER *ioc, MPT_FRAME_HDR *req,
1123 MPT_FRAME_HDR *reply) 1123 MPT_FRAME_HDR *reply)
1124{ 1124{
1125 ioc->sas_mgmt.status |= MPT_SAS_MGMT_STATUS_COMMAND_GOOD; 1125 ioc->sas_mgmt.status |= MPT_MGMT_STATUS_COMMAND_GOOD;
1126 if (reply != NULL) { 1126 if (reply != NULL) {
1127 ioc->sas_mgmt.status |= MPT_SAS_MGMT_STATUS_RF_VALID; 1127 ioc->sas_mgmt.status |= MPT_MGMT_STATUS_RF_VALID;
1128 memcpy(ioc->sas_mgmt.reply, reply, 1128 memcpy(ioc->sas_mgmt.reply, reply,
1129 min(ioc->reply_sz, 4 * reply->u.reply.MsgLength)); 1129 min(ioc->reply_sz, 4 * reply->u.reply.MsgLength));
1130 } 1130 }
@@ -1182,7 +1182,7 @@ static int mptsas_phy_reset(struct sas_phy *phy, int hard_reset)
1182 1182
1183 /* a reply frame is expected */ 1183 /* a reply frame is expected */
1184 if ((ioc->sas_mgmt.status & 1184 if ((ioc->sas_mgmt.status &
1185 MPT_IOCTL_STATUS_RF_VALID) == 0) { 1185 MPT_MGMT_STATUS_RF_VALID) == 0) {
1186 error = -ENXIO; 1186 error = -ENXIO;
1187 goto out_unlock; 1187 goto out_unlock;
1188 } 1188 }
@@ -1359,7 +1359,7 @@ static int mptsas_smp_handler(struct Scsi_Host *shost, struct sas_rphy *rphy,
1359 } 1359 }
1360 mf = NULL; 1360 mf = NULL;
1361 1361
1362 if (ioc->sas_mgmt.status & MPT_IOCTL_STATUS_RF_VALID) { 1362 if (ioc->sas_mgmt.status & MPT_MGMT_STATUS_RF_VALID) {
1363 SmpPassthroughReply_t *smprep; 1363 SmpPassthroughReply_t *smprep;
1364 1364
1365 smprep = (SmpPassthroughReply_t *)ioc->sas_mgmt.reply; 1365 smprep = (SmpPassthroughReply_t *)ioc->sas_mgmt.reply;