aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/message/fusion/mptbase.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/message/fusion/mptbase.c')
-rw-r--r--drivers/message/fusion/mptbase.c54
1 files changed, 36 insertions, 18 deletions
diff --git a/drivers/message/fusion/mptbase.c b/drivers/message/fusion/mptbase.c
index 10def27c1af5..a3f9275ebe58 100644
--- a/drivers/message/fusion/mptbase.c
+++ b/drivers/message/fusion/mptbase.c
@@ -436,8 +436,6 @@ mpt_base_reply(MPT_ADAPTER *ioc, MPT_FRAME_HDR *mf, MPT_FRAME_HDR *reply)
436 */ 436 */
437 if (pEvReply->MsgFlags & MPI_MSGFLAGS_CONTINUATION_REPLY) { 437 if (pEvReply->MsgFlags & MPI_MSGFLAGS_CONTINUATION_REPLY) {
438 freereq = 0; 438 freereq = 0;
439 devtverboseprintk((MYIOC_s_WARN_FMT "EVENT_NOTIFICATION reply %p does not return Request frame\n",
440 ioc->name, pEvReply));
441 } else { 439 } else {
442 devtverboseprintk((MYIOC_s_WARN_FMT "EVENT_NOTIFICATION reply %p returns Request frame\n", 440 devtverboseprintk((MYIOC_s_WARN_FMT "EVENT_NOTIFICATION reply %p returns Request frame\n",
443 ioc->name, pEvReply)); 441 ioc->name, pEvReply));
@@ -5030,19 +5028,18 @@ SendEventAck(MPT_ADAPTER *ioc, EventNotificationReply_t *evnp)
5030 EventAck_t *pAck; 5028 EventAck_t *pAck;
5031 5029
5032 if ((pAck = (EventAck_t *) mpt_get_msg_frame(mpt_base_index, ioc)) == NULL) { 5030 if ((pAck = (EventAck_t *) mpt_get_msg_frame(mpt_base_index, ioc)) == NULL) {
5033 printk(MYIOC_s_WARN_FMT "Unable to allocate event ACK " 5031 dfailprintk((MYIOC_s_WARN_FMT "%s, no msg frames!!\n",
5034 "request frame for Event=%x EventContext=%x EventData=%x!\n", 5032 ioc->name,__FUNCTION__));
5035 ioc->name, evnp->Event, le32_to_cpu(evnp->EventContext),
5036 le32_to_cpu(evnp->Data[0]));
5037 return -1; 5033 return -1;
5038 } 5034 }
5039 memset(pAck, 0, sizeof(*pAck));
5040 5035
5041 dprintk((MYIOC_s_INFO_FMT "Sending EventAck\n", ioc->name)); 5036 devtverboseprintk((MYIOC_s_INFO_FMT "Sending EventAck\n", ioc->name));
5042 5037
5043 pAck->Function = MPI_FUNCTION_EVENT_ACK; 5038 pAck->Function = MPI_FUNCTION_EVENT_ACK;
5044 pAck->ChainOffset = 0; 5039 pAck->ChainOffset = 0;
5040 pAck->Reserved[0] = pAck->Reserved[1] = 0;
5045 pAck->MsgFlags = 0; 5041 pAck->MsgFlags = 0;
5042 pAck->Reserved1[0] = pAck->Reserved1[1] = pAck->Reserved1[2] = 0;
5046 pAck->Event = evnp->Event; 5043 pAck->Event = evnp->Event;
5047 pAck->EventContext = evnp->EventContext; 5044 pAck->EventContext = evnp->EventContext;
5048 5045
@@ -5704,9 +5701,9 @@ EventDescriptionStr(u8 event, u32 evData0, char *evStr)
5704 break; 5701 break;
5705 case MPI_EVENT_EVENT_CHANGE: 5702 case MPI_EVENT_EVENT_CHANGE:
5706 if (evData0) 5703 if (evData0)
5707 ds = "Events(ON) Change"; 5704 ds = "Events ON";
5708 else 5705 else
5709 ds = "Events(OFF) Change"; 5706 ds = "Events OFF";
5710 break; 5707 break;
5711 case MPI_EVENT_INTEGRATED_RAID: 5708 case MPI_EVENT_INTEGRATED_RAID:
5712 { 5709 {
@@ -5777,8 +5774,27 @@ EventDescriptionStr(u8 event, u32 evData0, char *evStr)
5777 break; 5774 break;
5778 case MPI_EVENT_SAS_DEV_STAT_RC_NO_PERSIST_ADDED: 5775 case MPI_EVENT_SAS_DEV_STAT_RC_NO_PERSIST_ADDED:
5779 snprintf(evStr, EVENT_DESCR_STR_SZ, 5776 snprintf(evStr, EVENT_DESCR_STR_SZ,
5780 "SAS Device Status Change: No Persistancy " 5777 "SAS Device Status Change: No Persistancy: id=%d", id);
5781 "Added: id=%d", id); 5778 break;
5779 case MPI_EVENT_SAS_DEV_STAT_RC_INTERNAL_DEVICE_RESET:
5780 snprintf(evStr, EVENT_DESCR_STR_SZ,
5781 "SAS Device Status Change: Internal Device Reset : id=%d", id);
5782 break;
5783 case MPI_EVENT_SAS_DEV_STAT_RC_TASK_ABORT_INTERNAL:
5784 snprintf(evStr, EVENT_DESCR_STR_SZ,
5785 "SAS Device Status Change: Internal Task Abort : id=%d", id);
5786 break;
5787 case MPI_EVENT_SAS_DEV_STAT_RC_ABORT_TASK_SET_INTERNAL:
5788 snprintf(evStr, EVENT_DESCR_STR_SZ,
5789 "SAS Device Status Change: Internal Abort Task Set : id=%d", id);
5790 break;
5791 case MPI_EVENT_SAS_DEV_STAT_RC_CLEAR_TASK_SET_INTERNAL:
5792 snprintf(evStr, EVENT_DESCR_STR_SZ,
5793 "SAS Device Status Change: Internal Clear Task Set : id=%d", id);
5794 break;
5795 case MPI_EVENT_SAS_DEV_STAT_RC_QUERY_TASK_INTERNAL:
5796 snprintf(evStr, EVENT_DESCR_STR_SZ,
5797 "SAS Device Status Change: Internal Query Task : id=%d", id);
5782 break; 5798 break;
5783 default: 5799 default:
5784 snprintf(evStr, EVENT_DESCR_STR_SZ, 5800 snprintf(evStr, EVENT_DESCR_STR_SZ,
@@ -6034,7 +6050,7 @@ ProcessEventNotification(MPT_ADAPTER *ioc, EventNotificationReply_t *pEventReply
6034 * @ioc: Pointer to MPT_ADAPTER structure 6050 * @ioc: Pointer to MPT_ADAPTER structure
6035 * @log_info: U32 LogInfo reply word from the IOC 6051 * @log_info: U32 LogInfo reply word from the IOC
6036 * 6052 *
6037 * Refer to lsi/fc_log.h. 6053 * Refer to lsi/mpi_log_fc.h.
6038 */ 6054 */
6039static void 6055static void
6040mpt_fc_log_info(MPT_ADAPTER *ioc, u32 log_info) 6056mpt_fc_log_info(MPT_ADAPTER *ioc, u32 log_info)
@@ -6131,8 +6147,10 @@ mpt_spi_log_info(MPT_ADAPTER *ioc, u32 log_info)
6131 "Invalid SAS Address", /* 01h */ 6147 "Invalid SAS Address", /* 01h */
6132 NULL, /* 02h */ 6148 NULL, /* 02h */
6133 "Invalid Page", /* 03h */ 6149 "Invalid Page", /* 03h */
6134 NULL, /* 04h */ 6150 "Diag Message Error", /* 04h */
6135 "Task Terminated" /* 05h */ 6151 "Task Terminated", /* 05h */
6152 "Enclosure Management", /* 06h */
6153 "Target Mode" /* 07h */
6136 }; 6154 };
6137 static char *pl_code_str[] = { 6155 static char *pl_code_str[] = {
6138 NULL, /* 00h */ 6156 NULL, /* 00h */
@@ -6158,7 +6176,7 @@ mpt_spi_log_info(MPT_ADAPTER *ioc, u32 log_info)
6158 "IO Executed", /* 14h */ 6176 "IO Executed", /* 14h */
6159 "Persistant Reservation Out Not Affiliation Owner", /* 15h */ 6177 "Persistant Reservation Out Not Affiliation Owner", /* 15h */
6160 "Open Transmit DMA Abort", /* 16h */ 6178 "Open Transmit DMA Abort", /* 16h */
6161 NULL, /* 17h */ 6179 "IO Device Missing Delay Retry", /* 17h */
6162 NULL, /* 18h */ 6180 NULL, /* 18h */
6163 NULL, /* 19h */ 6181 NULL, /* 19h */
6164 NULL, /* 1Ah */ 6182 NULL, /* 1Ah */
@@ -6238,7 +6256,7 @@ static void
6238mpt_sp_ioc_info(MPT_ADAPTER *ioc, u32 ioc_status, MPT_FRAME_HDR *mf) 6256mpt_sp_ioc_info(MPT_ADAPTER *ioc, u32 ioc_status, MPT_FRAME_HDR *mf)
6239{ 6257{
6240 u32 status = ioc_status & MPI_IOCSTATUS_MASK; 6258 u32 status = ioc_status & MPI_IOCSTATUS_MASK;
6241 char *desc = ""; 6259 char *desc = NULL;
6242 6260
6243 switch (status) { 6261 switch (status) {
6244 case MPI_IOCSTATUS_INVALID_FUNCTION: /* 0x0001 */ 6262 case MPI_IOCSTATUS_INVALID_FUNCTION: /* 0x0001 */
@@ -6348,7 +6366,7 @@ mpt_sp_ioc_info(MPT_ADAPTER *ioc, u32 ioc_status, MPT_FRAME_HDR *mf)
6348 desc = "Others"; 6366 desc = "Others";
6349 break; 6367 break;
6350 } 6368 }
6351 if (desc != "") 6369 if (desc != NULL)
6352 printk(MYIOC_s_INFO_FMT "IOCStatus(0x%04x): %s\n", ioc->name, status, desc); 6370 printk(MYIOC_s_INFO_FMT "IOCStatus(0x%04x): %s\n", ioc->name, status, desc);
6353} 6371}
6354 6372