diff options
Diffstat (limited to 'drivers/message')
-rw-r--r-- | drivers/message/fusion/lsi/mpi_log_fc.h | 4 | ||||
-rw-r--r-- | drivers/message/fusion/lsi/mpi_log_sas.h | 14 | ||||
-rw-r--r-- | drivers/message/fusion/mptbase.c | 28 | ||||
-rw-r--r-- | drivers/message/fusion/mptbase.h | 4 | ||||
-rw-r--r-- | drivers/message/fusion/mptctl.c | 4 | ||||
-rw-r--r-- | drivers/message/fusion/mptsas.c | 12 | ||||
-rw-r--r-- | drivers/message/fusion/mptscsih.c | 13 | ||||
-rw-r--r-- | drivers/message/fusion/mptspi.c | 22 | ||||
-rw-r--r-- | drivers/message/i2o/README | 2 | ||||
-rw-r--r-- | drivers/message/i2o/README.ioctl | 2 | ||||
-rw-r--r-- | drivers/message/i2o/device.c | 8 | ||||
-rw-r--r-- | drivers/message/i2o/i2o_block.c | 5 | ||||
-rw-r--r-- | drivers/message/i2o/i2o_block.h | 2 | ||||
-rw-r--r-- | drivers/message/i2o/i2o_scsi.c | 6 |
14 files changed, 70 insertions, 56 deletions
diff --git a/drivers/message/fusion/lsi/mpi_log_fc.h b/drivers/message/fusion/lsi/mpi_log_fc.h index face6e7acc72..03be8b217709 100644 --- a/drivers/message/fusion/lsi/mpi_log_fc.h +++ b/drivers/message/fusion/lsi/mpi_log_fc.h | |||
@@ -38,8 +38,8 @@ typedef enum _MpiIocLogInfoFc | |||
38 | { | 38 | { |
39 | MPI_IOCLOGINFO_FC_INIT_BASE = 0x20000000, | 39 | MPI_IOCLOGINFO_FC_INIT_BASE = 0x20000000, |
40 | MPI_IOCLOGINFO_FC_INIT_ERROR_OUT_OF_ORDER_FRAME = 0x20000001, /* received an out of order frame - unsupported */ | 40 | MPI_IOCLOGINFO_FC_INIT_ERROR_OUT_OF_ORDER_FRAME = 0x20000001, /* received an out of order frame - unsupported */ |
41 | MPI_IOCLOGINFO_FC_INIT_ERROR_BAD_START_OF_FRAME = 0x20000002, /* Bad Rx Frame, bad start of frame primative */ | 41 | MPI_IOCLOGINFO_FC_INIT_ERROR_BAD_START_OF_FRAME = 0x20000002, /* Bad Rx Frame, bad start of frame primitive */ |
42 | MPI_IOCLOGINFO_FC_INIT_ERROR_BAD_END_OF_FRAME = 0x20000003, /* Bad Rx Frame, bad end of frame primative */ | 42 | MPI_IOCLOGINFO_FC_INIT_ERROR_BAD_END_OF_FRAME = 0x20000003, /* Bad Rx Frame, bad end of frame primitive */ |
43 | MPI_IOCLOGINFO_FC_INIT_ERROR_OVER_RUN = 0x20000004, /* Bad Rx Frame, overrun */ | 43 | MPI_IOCLOGINFO_FC_INIT_ERROR_OVER_RUN = 0x20000004, /* Bad Rx Frame, overrun */ |
44 | MPI_IOCLOGINFO_FC_INIT_ERROR_RX_OTHER = 0x20000005, /* Other errors caught by IOC which require retries */ | 44 | MPI_IOCLOGINFO_FC_INIT_ERROR_RX_OTHER = 0x20000005, /* Other errors caught by IOC which require retries */ |
45 | MPI_IOCLOGINFO_FC_INIT_ERROR_SUBPROC_DEAD = 0x20000006, /* Main processor could not initialize sub-processor */ | 45 | MPI_IOCLOGINFO_FC_INIT_ERROR_SUBPROC_DEAD = 0x20000006, /* Main processor could not initialize sub-processor */ |
diff --git a/drivers/message/fusion/lsi/mpi_log_sas.h b/drivers/message/fusion/lsi/mpi_log_sas.h index 8b04810df469..f62960b5d527 100644 --- a/drivers/message/fusion/lsi/mpi_log_sas.h +++ b/drivers/message/fusion/lsi/mpi_log_sas.h | |||
@@ -56,9 +56,9 @@ | |||
56 | #define IOP_LOGINFO_CODE_FWUPLOAD_NO_FLASH_AVAILABLE (0x0003E000) /* Tried to upload from flash, but there is none */ | 56 | #define IOP_LOGINFO_CODE_FWUPLOAD_NO_FLASH_AVAILABLE (0x0003E000) /* Tried to upload from flash, but there is none */ |
57 | #define IOP_LOGINFO_CODE_FWUPLOAD_UNKNOWN_IMAGE_TYPE (0x0003E001) /* ImageType field contents were invalid */ | 57 | #define IOP_LOGINFO_CODE_FWUPLOAD_UNKNOWN_IMAGE_TYPE (0x0003E001) /* ImageType field contents were invalid */ |
58 | #define IOP_LOGINFO_CODE_FWUPLOAD_WRONG_IMAGE_SIZE (0x0003E002) /* ImageSize field in TCSGE was bad/offset in MfgPg 4 was wrong */ | 58 | #define IOP_LOGINFO_CODE_FWUPLOAD_WRONG_IMAGE_SIZE (0x0003E002) /* ImageSize field in TCSGE was bad/offset in MfgPg 4 was wrong */ |
59 | #define IOP_LOGINFO_CODE_FWUPLOAD_ENTIRE_FLASH_UPLOAD_FAILED (0x0003E003) /* Error occured while attempting to upload the entire flash */ | 59 | #define IOP_LOGINFO_CODE_FWUPLOAD_ENTIRE_FLASH_UPLOAD_FAILED (0x0003E003) /* Error occurred while attempting to upload the entire flash */ |
60 | #define IOP_LOGINFO_CODE_FWUPLOAD_REGION_UPLOAD_FAILED (0x0003E004) /* Error occured while attempting to upload single flash region */ | 60 | #define IOP_LOGINFO_CODE_FWUPLOAD_REGION_UPLOAD_FAILED (0x0003E004) /* Error occurred while attempting to upload single flash region */ |
61 | #define IOP_LOGINFO_CODE_FWUPLOAD_DMA_FAILURE (0x0003E005) /* Problem occured while DMAing FW to host memory */ | 61 | #define IOP_LOGINFO_CODE_FWUPLOAD_DMA_FAILURE (0x0003E005) /* Problem occurred while DMAing FW to host memory */ |
62 | 62 | ||
63 | #define IOP_LOGINFO_CODE_DIAG_MSG_ERROR (0x00040000) /* Error handling diag msg - or'd with diag status */ | 63 | #define IOP_LOGINFO_CODE_DIAG_MSG_ERROR (0x00040000) /* Error handling diag msg - or'd with diag status */ |
64 | 64 | ||
@@ -187,8 +187,8 @@ | |||
187 | #define PL_LOGINFO_SUB_CODE_BREAK_ON_INCOMPLETE_BREAK_RCVD (0x00005000) | 187 | #define PL_LOGINFO_SUB_CODE_BREAK_ON_INCOMPLETE_BREAK_RCVD (0x00005000) |
188 | 188 | ||
189 | #define PL_LOGINFO_CODE_ENCL_MGMT_SMP_FRAME_FAILURE (0x00200000) /* Can't get SMP Frame */ | 189 | #define PL_LOGINFO_CODE_ENCL_MGMT_SMP_FRAME_FAILURE (0x00200000) /* Can't get SMP Frame */ |
190 | #define PL_LOGINFO_CODE_ENCL_MGMT_SMP_READ_ERROR (0x00200010) /* Error occured on SMP Read */ | 190 | #define PL_LOGINFO_CODE_ENCL_MGMT_SMP_READ_ERROR (0x00200010) /* Error occurred on SMP Read */ |
191 | #define PL_LOGINFO_CODE_ENCL_MGMT_SMP_WRITE_ERROR (0x00200020) /* Error occured on SMP Write */ | 191 | #define PL_LOGINFO_CODE_ENCL_MGMT_SMP_WRITE_ERROR (0x00200020) /* Error occurred on SMP Write */ |
192 | #define PL_LOGINFO_CODE_ENCL_MGMT_NOT_SUPPORTED_ON_ENCL (0x00200040) /* Encl Mgmt services not available for this WWID */ | 192 | #define PL_LOGINFO_CODE_ENCL_MGMT_NOT_SUPPORTED_ON_ENCL (0x00200040) /* Encl Mgmt services not available for this WWID */ |
193 | #define PL_LOGINFO_CODE_ENCL_MGMT_ADDR_MODE_NOT_SUPPORTED (0x00200050) /* Address Mode not suppored */ | 193 | #define PL_LOGINFO_CODE_ENCL_MGMT_ADDR_MODE_NOT_SUPPORTED (0x00200050) /* Address Mode not suppored */ |
194 | #define PL_LOGINFO_CODE_ENCL_MGMT_BAD_SLOT_NUM (0x00200060) /* Invalid Slot Number in SEP Msg */ | 194 | #define PL_LOGINFO_CODE_ENCL_MGMT_BAD_SLOT_NUM (0x00200060) /* Invalid Slot Number in SEP Msg */ |
@@ -207,8 +207,8 @@ | |||
207 | #define PL_LOGINFO_DA_SEP_RECEIVED_NACK_FROM_SLAVE (0x00200103) /* SEP NACK'd, it is busy */ | 207 | #define PL_LOGINFO_DA_SEP_RECEIVED_NACK_FROM_SLAVE (0x00200103) /* SEP NACK'd, it is busy */ |
208 | #define PL_LOGINFO_DA_SEP_DID_NOT_RECEIVE_ACK (0x00200104) /* SEP didn't rcv. ACK (Last Rcvd Bit = 1) */ | 208 | #define PL_LOGINFO_DA_SEP_DID_NOT_RECEIVE_ACK (0x00200104) /* SEP didn't rcv. ACK (Last Rcvd Bit = 1) */ |
209 | #define PL_LOGINFO_DA_SEP_BAD_STATUS_HDR_CHKSUM (0x00200105) /* SEP stopped or sent bad chksum in Hdr */ | 209 | #define PL_LOGINFO_DA_SEP_BAD_STATUS_HDR_CHKSUM (0x00200105) /* SEP stopped or sent bad chksum in Hdr */ |
210 | #define PL_LOGINFO_DA_SEP_STOP_ON_DATA (0x00200106) /* SEP stopped while transfering data */ | 210 | #define PL_LOGINFO_DA_SEP_STOP_ON_DATA (0x00200106) /* SEP stopped while transferring data */ |
211 | #define PL_LOGINFO_DA_SEP_STOP_ON_SENSE_DATA (0x00200107) /* SEP stopped while transfering sense data */ | 211 | #define PL_LOGINFO_DA_SEP_STOP_ON_SENSE_DATA (0x00200107) /* SEP stopped while transferring sense data */ |
212 | #define PL_LOGINFO_DA_SEP_UNSUPPORTED_SCSI_STATUS_1 (0x00200108) /* SEP returned unknown scsi status */ | 212 | #define PL_LOGINFO_DA_SEP_UNSUPPORTED_SCSI_STATUS_1 (0x00200108) /* SEP returned unknown scsi status */ |
213 | #define PL_LOGINFO_DA_SEP_UNSUPPORTED_SCSI_STATUS_2 (0x00200109) /* SEP returned unknown scsi status */ | 213 | #define PL_LOGINFO_DA_SEP_UNSUPPORTED_SCSI_STATUS_2 (0x00200109) /* SEP returned unknown scsi status */ |
214 | #define PL_LOGINFO_DA_SEP_CHKSUM_ERROR_AFTER_STOP (0x0020010A) /* SEP returned bad chksum after STOP */ | 214 | #define PL_LOGINFO_DA_SEP_CHKSUM_ERROR_AFTER_STOP (0x0020010A) /* SEP returned bad chksum after STOP */ |
diff --git a/drivers/message/fusion/mptbase.c b/drivers/message/fusion/mptbase.c index ec8080c98081..7956a10f9488 100644 --- a/drivers/message/fusion/mptbase.c +++ b/drivers/message/fusion/mptbase.c | |||
@@ -83,19 +83,18 @@ MODULE_VERSION(my_VERSION); | |||
83 | 83 | ||
84 | static int mpt_msi_enable_spi; | 84 | static int mpt_msi_enable_spi; |
85 | module_param(mpt_msi_enable_spi, int, 0); | 85 | module_param(mpt_msi_enable_spi, int, 0); |
86 | MODULE_PARM_DESC(mpt_msi_enable_spi, " Enable MSI Support for SPI \ | 86 | MODULE_PARM_DESC(mpt_msi_enable_spi, |
87 | controllers (default=0)"); | 87 | " Enable MSI Support for SPI controllers (default=0)"); |
88 | 88 | ||
89 | static int mpt_msi_enable_fc; | 89 | static int mpt_msi_enable_fc; |
90 | module_param(mpt_msi_enable_fc, int, 0); | 90 | module_param(mpt_msi_enable_fc, int, 0); |
91 | MODULE_PARM_DESC(mpt_msi_enable_fc, " Enable MSI Support for FC \ | 91 | MODULE_PARM_DESC(mpt_msi_enable_fc, |
92 | controllers (default=0)"); | 92 | " Enable MSI Support for FC controllers (default=0)"); |
93 | 93 | ||
94 | static int mpt_msi_enable_sas; | 94 | static int mpt_msi_enable_sas; |
95 | module_param(mpt_msi_enable_sas, int, 0); | 95 | module_param(mpt_msi_enable_sas, int, 0); |
96 | MODULE_PARM_DESC(mpt_msi_enable_sas, " Enable MSI Support for SAS \ | 96 | MODULE_PARM_DESC(mpt_msi_enable_sas, |
97 | controllers (default=0)"); | 97 | " Enable MSI Support for SAS controllers (default=0)"); |
98 | |||
99 | 98 | ||
100 | static int mpt_channel_mapping; | 99 | static int mpt_channel_mapping; |
101 | module_param(mpt_channel_mapping, int, 0); | 100 | module_param(mpt_channel_mapping, int, 0); |
@@ -105,15 +104,14 @@ static int mpt_debug_level; | |||
105 | static int mpt_set_debug_level(const char *val, struct kernel_param *kp); | 104 | static int mpt_set_debug_level(const char *val, struct kernel_param *kp); |
106 | module_param_call(mpt_debug_level, mpt_set_debug_level, param_get_int, | 105 | module_param_call(mpt_debug_level, mpt_set_debug_level, param_get_int, |
107 | &mpt_debug_level, 0600); | 106 | &mpt_debug_level, 0600); |
108 | MODULE_PARM_DESC(mpt_debug_level, " debug level - refer to mptdebug.h \ | 107 | MODULE_PARM_DESC(mpt_debug_level, |
109 | - (default=0)"); | 108 | " debug level - refer to mptdebug.h - (default=0)"); |
110 | 109 | ||
111 | int mpt_fwfault_debug; | 110 | int mpt_fwfault_debug; |
112 | EXPORT_SYMBOL(mpt_fwfault_debug); | 111 | EXPORT_SYMBOL(mpt_fwfault_debug); |
113 | module_param(mpt_fwfault_debug, int, 0600); | 112 | module_param(mpt_fwfault_debug, int, 0600); |
114 | MODULE_PARM_DESC(mpt_fwfault_debug, "Enable detection of Firmware fault" | 113 | MODULE_PARM_DESC(mpt_fwfault_debug, |
115 | " and halt Firmware on fault - (default=0)"); | 114 | "Enable detection of Firmware fault and halt Firmware on fault - (default=0)"); |
116 | |||
117 | 115 | ||
118 | static char MptCallbacksName[MPT_MAX_PROTOCOL_DRIVERS][50]; | 116 | static char MptCallbacksName[MPT_MAX_PROTOCOL_DRIVERS][50]; |
119 | 117 | ||
@@ -3435,7 +3433,7 @@ SendPortEnable(MPT_ADAPTER *ioc, int portnum, int sleepFlag) | |||
3435 | * If memory has already been allocated, the same (cached) value | 3433 | * If memory has already been allocated, the same (cached) value |
3436 | * is returned. | 3434 | * is returned. |
3437 | * | 3435 | * |
3438 | * Return 0 if successfull, or non-zero for failure | 3436 | * Return 0 if successful, or non-zero for failure |
3439 | **/ | 3437 | **/ |
3440 | int | 3438 | int |
3441 | mpt_alloc_fw_memory(MPT_ADAPTER *ioc, int size) | 3439 | mpt_alloc_fw_memory(MPT_ADAPTER *ioc, int size) |
@@ -6932,7 +6930,7 @@ EXPORT_SYMBOL(mpt_halt_firmware); | |||
6932 | * Message Unit Reset - instructs the IOC to reset the Reply Post and | 6930 | * Message Unit Reset - instructs the IOC to reset the Reply Post and |
6933 | * Free FIFO's. All the Message Frames on Reply Free FIFO are discarded. | 6931 | * Free FIFO's. All the Message Frames on Reply Free FIFO are discarded. |
6934 | * All posted buffers are freed, and event notification is turned off. | 6932 | * All posted buffers are freed, and event notification is turned off. |
6935 | * IOC doesnt reply to any outstanding request. This will transfer IOC | 6933 | * IOC doesn't reply to any outstanding request. This will transfer IOC |
6936 | * to READY state. | 6934 | * to READY state. |
6937 | **/ | 6935 | **/ |
6938 | int | 6936 | int |
@@ -7905,7 +7903,7 @@ mpt_spi_log_info(MPT_ADAPTER *ioc, u32 log_info) | |||
7905 | "Owner", /* 15h */ | 7903 | "Owner", /* 15h */ |
7906 | "Open Transmit DMA Abort", /* 16h */ | 7904 | "Open Transmit DMA Abort", /* 16h */ |
7907 | "IO Device Missing Delay Retry", /* 17h */ | 7905 | "IO Device Missing Delay Retry", /* 17h */ |
7908 | "IO Cancelled Due to Recieve Error", /* 18h */ | 7906 | "IO Cancelled Due to Receive Error", /* 18h */ |
7909 | NULL, /* 19h */ | 7907 | NULL, /* 19h */ |
7910 | NULL, /* 1Ah */ | 7908 | NULL, /* 1Ah */ |
7911 | NULL, /* 1Bh */ | 7909 | NULL, /* 1Bh */ |
diff --git a/drivers/message/fusion/mptbase.h b/drivers/message/fusion/mptbase.h index 1735c84ff757..fe902338539b 100644 --- a/drivers/message/fusion/mptbase.h +++ b/drivers/message/fusion/mptbase.h | |||
@@ -76,8 +76,8 @@ | |||
76 | #define COPYRIGHT "Copyright (c) 1999-2008 " MODULEAUTHOR | 76 | #define COPYRIGHT "Copyright (c) 1999-2008 " MODULEAUTHOR |
77 | #endif | 77 | #endif |
78 | 78 | ||
79 | #define MPT_LINUX_VERSION_COMMON "3.04.18" | 79 | #define MPT_LINUX_VERSION_COMMON "3.04.19" |
80 | #define MPT_LINUX_PACKAGE_NAME "@(#)mptlinux-3.04.18" | 80 | #define MPT_LINUX_PACKAGE_NAME "@(#)mptlinux-3.04.19" |
81 | #define WHAT_MAGIC_STRING "@" "(" "#" ")" | 81 | #define WHAT_MAGIC_STRING "@" "(" "#" ")" |
82 | 82 | ||
83 | #define show_mptmod_ver(s,ver) \ | 83 | #define show_mptmod_ver(s,ver) \ |
diff --git a/drivers/message/fusion/mptctl.c b/drivers/message/fusion/mptctl.c index 878bda0cce70..6e6e16aab9da 100644 --- a/drivers/message/fusion/mptctl.c +++ b/drivers/message/fusion/mptctl.c | |||
@@ -985,7 +985,7 @@ retry_wait: | |||
985 | ReplyMsg = (pFWDownloadReply_t)iocp->ioctl_cmds.reply; | 985 | ReplyMsg = (pFWDownloadReply_t)iocp->ioctl_cmds.reply; |
986 | iocstat = le16_to_cpu(ReplyMsg->IOCStatus) & MPI_IOCSTATUS_MASK; | 986 | iocstat = le16_to_cpu(ReplyMsg->IOCStatus) & MPI_IOCSTATUS_MASK; |
987 | if (iocstat == MPI_IOCSTATUS_SUCCESS) { | 987 | if (iocstat == MPI_IOCSTATUS_SUCCESS) { |
988 | printk(MYIOC_s_INFO_FMT "F/W update successfull!\n", iocp->name); | 988 | printk(MYIOC_s_INFO_FMT "F/W update successful!\n", iocp->name); |
989 | return 0; | 989 | return 0; |
990 | } else if (iocstat == MPI_IOCSTATUS_INVALID_FUNCTION) { | 990 | } else if (iocstat == MPI_IOCSTATUS_INVALID_FUNCTION) { |
991 | printk(MYIOC_s_WARN_FMT "Hmmm... F/W download not supported!?!\n", | 991 | printk(MYIOC_s_WARN_FMT "Hmmm... F/W download not supported!?!\n", |
@@ -2407,7 +2407,7 @@ done_free_mem: | |||
2407 | } | 2407 | } |
2408 | 2408 | ||
2409 | /* mf is null if command issued successfully | 2409 | /* mf is null if command issued successfully |
2410 | * otherwise, failure occured after mf acquired. | 2410 | * otherwise, failure occurred after mf acquired. |
2411 | */ | 2411 | */ |
2412 | if (mf) | 2412 | if (mf) |
2413 | mpt_free_msg_frame(ioc, mf); | 2413 | mpt_free_msg_frame(ioc, mf); |
diff --git a/drivers/message/fusion/mptsas.c b/drivers/message/fusion/mptsas.c index f5a14afad2cd..7596aecd5072 100644 --- a/drivers/message/fusion/mptsas.c +++ b/drivers/message/fusion/mptsas.c | |||
@@ -307,7 +307,7 @@ mptsas_requeue_fw_event(MPT_ADAPTER *ioc, struct fw_event_work *fw_event, | |||
307 | spin_unlock_irqrestore(&ioc->fw_event_lock, flags); | 307 | spin_unlock_irqrestore(&ioc->fw_event_lock, flags); |
308 | } | 308 | } |
309 | 309 | ||
310 | /* free memory assoicated to a sas firmware event */ | 310 | /* free memory associated to a sas firmware event */ |
311 | static void | 311 | static void |
312 | mptsas_free_fw_event(MPT_ADAPTER *ioc, struct fw_event_work *fw_event) | 312 | mptsas_free_fw_event(MPT_ADAPTER *ioc, struct fw_event_work *fw_event) |
313 | { | 313 | { |
@@ -1094,7 +1094,7 @@ mptsas_block_io_starget(struct scsi_target *starget) | |||
1094 | /** | 1094 | /** |
1095 | * mptsas_target_reset_queue | 1095 | * mptsas_target_reset_queue |
1096 | * | 1096 | * |
1097 | * Receive request for TARGET_RESET after recieving an firmware | 1097 | * Receive request for TARGET_RESET after receiving an firmware |
1098 | * event NOT_RESPONDING_EVENT, then put command in link list | 1098 | * event NOT_RESPONDING_EVENT, then put command in link list |
1099 | * and queue if task_queue already in use. | 1099 | * and queue if task_queue already in use. |
1100 | * | 1100 | * |
@@ -1403,7 +1403,7 @@ mptsas_sas_enclosure_pg0(MPT_ADAPTER *ioc, struct mptsas_enclosure *enclosure, | |||
1403 | /** | 1403 | /** |
1404 | * mptsas_add_end_device - report a new end device to sas transport layer | 1404 | * mptsas_add_end_device - report a new end device to sas transport layer |
1405 | * @ioc: Pointer to MPT_ADAPTER structure | 1405 | * @ioc: Pointer to MPT_ADAPTER structure |
1406 | * @phy_info: decribes attached device | 1406 | * @phy_info: describes attached device |
1407 | * | 1407 | * |
1408 | * return (0) success (1) failure | 1408 | * return (0) success (1) failure |
1409 | * | 1409 | * |
@@ -1481,7 +1481,7 @@ mptsas_add_end_device(MPT_ADAPTER *ioc, struct mptsas_phyinfo *phy_info) | |||
1481 | /** | 1481 | /** |
1482 | * mptsas_del_end_device - report a deleted end device to sas transport layer | 1482 | * mptsas_del_end_device - report a deleted end device to sas transport layer |
1483 | * @ioc: Pointer to MPT_ADAPTER structure | 1483 | * @ioc: Pointer to MPT_ADAPTER structure |
1484 | * @phy_info: decribes attached device | 1484 | * @phy_info: describes attached device |
1485 | * | 1485 | * |
1486 | **/ | 1486 | **/ |
1487 | static void | 1487 | static void |
@@ -5012,7 +5012,6 @@ mptsas_event_process(MPT_ADAPTER *ioc, EventNotificationReply_t *reply) | |||
5012 | (ioc_stat & MPI_IOCSTATUS_FLAG_LOG_INFO_AVAILABLE)) { | 5012 | (ioc_stat & MPI_IOCSTATUS_FLAG_LOG_INFO_AVAILABLE)) { |
5013 | VirtTarget *vtarget = NULL; | 5013 | VirtTarget *vtarget = NULL; |
5014 | u8 id, channel; | 5014 | u8 id, channel; |
5015 | u32 log_info = le32_to_cpu(reply->IOCLogInfo); | ||
5016 | 5015 | ||
5017 | id = sas_event_data->TargetID; | 5016 | id = sas_event_data->TargetID; |
5018 | channel = sas_event_data->Bus; | 5017 | channel = sas_event_data->Bus; |
@@ -5023,7 +5022,8 @@ mptsas_event_process(MPT_ADAPTER *ioc, EventNotificationReply_t *reply) | |||
5023 | "LogInfo (0x%x) available for " | 5022 | "LogInfo (0x%x) available for " |
5024 | "INTERNAL_DEVICE_RESET" | 5023 | "INTERNAL_DEVICE_RESET" |
5025 | "fw_id %d fw_channel %d\n", ioc->name, | 5024 | "fw_id %d fw_channel %d\n", ioc->name, |
5026 | log_info, id, channel)); | 5025 | le32_to_cpu(reply->IOCLogInfo), |
5026 | id, channel)); | ||
5027 | if (vtarget->raidVolume) { | 5027 | if (vtarget->raidVolume) { |
5028 | devtprintk(ioc, printk(MYIOC_s_DEBUG_FMT | 5028 | devtprintk(ioc, printk(MYIOC_s_DEBUG_FMT |
5029 | "Skipping Raid Volume for inDMD\n", | 5029 | "Skipping Raid Volume for inDMD\n", |
diff --git a/drivers/message/fusion/mptscsih.c b/drivers/message/fusion/mptscsih.c index 0d9b82a44540..a1d4ee6671be 100644 --- a/drivers/message/fusion/mptscsih.c +++ b/drivers/message/fusion/mptscsih.c | |||
@@ -1415,11 +1415,8 @@ mptscsih_qcmd(struct scsi_cmnd *SCpnt, void (*done)(struct scsi_cmnd *)) | |||
1415 | dmfprintk(ioc, printk(MYIOC_s_DEBUG_FMT "qcmd: SCpnt=%p, done()=%p\n", | 1415 | dmfprintk(ioc, printk(MYIOC_s_DEBUG_FMT "qcmd: SCpnt=%p, done()=%p\n", |
1416 | ioc->name, SCpnt, done)); | 1416 | ioc->name, SCpnt, done)); |
1417 | 1417 | ||
1418 | if (ioc->taskmgmt_quiesce_io) { | 1418 | if (ioc->taskmgmt_quiesce_io) |
1419 | dtmprintk(ioc, printk(MYIOC_s_WARN_FMT "qcmd: SCpnt=%p timeout + 60HZ\n", | ||
1420 | ioc->name, SCpnt)); | ||
1421 | return SCSI_MLQUEUE_HOST_BUSY; | 1419 | return SCSI_MLQUEUE_HOST_BUSY; |
1422 | } | ||
1423 | 1420 | ||
1424 | /* | 1421 | /* |
1425 | * Put together a MPT SCSI request... | 1422 | * Put together a MPT SCSI request... |
@@ -1773,7 +1770,6 @@ mptscsih_abort(struct scsi_cmnd * SCpnt) | |||
1773 | int scpnt_idx; | 1770 | int scpnt_idx; |
1774 | int retval; | 1771 | int retval; |
1775 | VirtDevice *vdevice; | 1772 | VirtDevice *vdevice; |
1776 | ulong sn = SCpnt->serial_number; | ||
1777 | MPT_ADAPTER *ioc; | 1773 | MPT_ADAPTER *ioc; |
1778 | 1774 | ||
1779 | /* If we can't locate our host adapter structure, return FAILED status. | 1775 | /* If we can't locate our host adapter structure, return FAILED status. |
@@ -1859,8 +1855,7 @@ mptscsih_abort(struct scsi_cmnd * SCpnt) | |||
1859 | vdevice->vtarget->id, vdevice->lun, | 1855 | vdevice->vtarget->id, vdevice->lun, |
1860 | ctx2abort, mptscsih_get_tm_timeout(ioc)); | 1856 | ctx2abort, mptscsih_get_tm_timeout(ioc)); |
1861 | 1857 | ||
1862 | if (SCPNT_TO_LOOKUP_IDX(ioc, SCpnt) == scpnt_idx && | 1858 | if (SCPNT_TO_LOOKUP_IDX(ioc, SCpnt) == scpnt_idx) { |
1863 | SCpnt->serial_number == sn) { | ||
1864 | dtmprintk(ioc, printk(MYIOC_s_DEBUG_FMT | 1859 | dtmprintk(ioc, printk(MYIOC_s_DEBUG_FMT |
1865 | "task abort: command still in active list! (sc=%p)\n", | 1860 | "task abort: command still in active list! (sc=%p)\n", |
1866 | ioc->name, SCpnt)); | 1861 | ioc->name, SCpnt)); |
@@ -1873,9 +1868,9 @@ mptscsih_abort(struct scsi_cmnd * SCpnt) | |||
1873 | } | 1868 | } |
1874 | 1869 | ||
1875 | out: | 1870 | out: |
1876 | printk(MYIOC_s_INFO_FMT "task abort: %s (rv=%04x) (sc=%p) (sn=%ld)\n", | 1871 | printk(MYIOC_s_INFO_FMT "task abort: %s (rv=%04x) (sc=%p)\n", |
1877 | ioc->name, ((retval == SUCCESS) ? "SUCCESS" : "FAILED"), retval, | 1872 | ioc->name, ((retval == SUCCESS) ? "SUCCESS" : "FAILED"), retval, |
1878 | SCpnt, SCpnt->serial_number); | 1873 | SCpnt); |
1879 | 1874 | ||
1880 | return retval; | 1875 | return retval; |
1881 | } | 1876 | } |
diff --git a/drivers/message/fusion/mptspi.c b/drivers/message/fusion/mptspi.c index 6d9568d2ec59..8f61ba6aac23 100644 --- a/drivers/message/fusion/mptspi.c +++ b/drivers/message/fusion/mptspi.c | |||
@@ -867,6 +867,10 @@ static int mptspi_write_spi_device_pg1(struct scsi_target *starget, | |||
867 | struct _x_config_parms cfg; | 867 | struct _x_config_parms cfg; |
868 | struct _CONFIG_PAGE_HEADER hdr; | 868 | struct _CONFIG_PAGE_HEADER hdr; |
869 | int err = -EBUSY; | 869 | int err = -EBUSY; |
870 | u32 nego_parms; | ||
871 | u32 period; | ||
872 | struct scsi_device *sdev; | ||
873 | int i; | ||
870 | 874 | ||
871 | /* don't allow updating nego parameters on RAID devices */ | 875 | /* don't allow updating nego parameters on RAID devices */ |
872 | if (starget->channel == 0 && | 876 | if (starget->channel == 0 && |
@@ -904,6 +908,24 @@ static int mptspi_write_spi_device_pg1(struct scsi_target *starget, | |||
904 | pg1->Header.PageNumber = hdr.PageNumber; | 908 | pg1->Header.PageNumber = hdr.PageNumber; |
905 | pg1->Header.PageType = hdr.PageType; | 909 | pg1->Header.PageType = hdr.PageType; |
906 | 910 | ||
911 | nego_parms = le32_to_cpu(pg1->RequestedParameters); | ||
912 | period = (nego_parms & MPI_SCSIDEVPAGE1_RP_MIN_SYNC_PERIOD_MASK) >> | ||
913 | MPI_SCSIDEVPAGE1_RP_SHIFT_MIN_SYNC_PERIOD; | ||
914 | if (period == 8) { | ||
915 | /* Turn on inline data padding for TAPE when running U320 */ | ||
916 | for (i = 0 ; i < 16; i++) { | ||
917 | sdev = scsi_device_lookup_by_target(starget, i); | ||
918 | if (sdev && sdev->type == TYPE_TAPE) { | ||
919 | sdev_printk(KERN_DEBUG, sdev, MYIOC_s_FMT | ||
920 | "IDP:ON\n", ioc->name); | ||
921 | nego_parms |= MPI_SCSIDEVPAGE1_RP_IDP; | ||
922 | pg1->RequestedParameters = | ||
923 | cpu_to_le32(nego_parms); | ||
924 | break; | ||
925 | } | ||
926 | } | ||
927 | } | ||
928 | |||
907 | mptspi_print_write_nego(hd, starget, le32_to_cpu(pg1->RequestedParameters)); | 929 | mptspi_print_write_nego(hd, starget, le32_to_cpu(pg1->RequestedParameters)); |
908 | 930 | ||
909 | if (mpt_config(ioc, &cfg)) { | 931 | if (mpt_config(ioc, &cfg)) { |
diff --git a/drivers/message/i2o/README b/drivers/message/i2o/README index 911fc3021e3b..f072a8eb3041 100644 --- a/drivers/message/i2o/README +++ b/drivers/message/i2o/README | |||
@@ -53,7 +53,7 @@ Symbios Logic (Now LSI) | |||
53 | BoxHill Corporation | 53 | BoxHill Corporation |
54 | Loan of initial FibreChannel disk array used for development work. | 54 | Loan of initial FibreChannel disk array used for development work. |
55 | 55 | ||
56 | European Comission | 56 | European Commission |
57 | Funding the work done by the University of Helsinki | 57 | Funding the work done by the University of Helsinki |
58 | 58 | ||
59 | SysKonnect | 59 | SysKonnect |
diff --git a/drivers/message/i2o/README.ioctl b/drivers/message/i2o/README.ioctl index 65c0c47aeb79..5fb195af43e2 100644 --- a/drivers/message/i2o/README.ioctl +++ b/drivers/message/i2o/README.ioctl | |||
@@ -110,7 +110,7 @@ V. Getting Logical Configuration Table | |||
110 | ENOBUFS Buffer not large enough. If this occurs, the required | 110 | ENOBUFS Buffer not large enough. If this occurs, the required |
111 | buffer length is written into *(lct->reslen) | 111 | buffer length is written into *(lct->reslen) |
112 | 112 | ||
113 | VI. Settting Parameters | 113 | VI. Setting Parameters |
114 | 114 | ||
115 | SYNOPSIS | 115 | SYNOPSIS |
116 | 116 | ||
diff --git a/drivers/message/i2o/device.c b/drivers/message/i2o/device.c index 0ee4264f5db7..4547db99f7da 100644 --- a/drivers/message/i2o/device.c +++ b/drivers/message/i2o/device.c | |||
@@ -65,7 +65,7 @@ int i2o_device_claim(struct i2o_device *dev) | |||
65 | 65 | ||
66 | rc = i2o_device_issue_claim(dev, I2O_CMD_UTIL_CLAIM, I2O_CLAIM_PRIMARY); | 66 | rc = i2o_device_issue_claim(dev, I2O_CMD_UTIL_CLAIM, I2O_CLAIM_PRIMARY); |
67 | if (!rc) | 67 | if (!rc) |
68 | pr_debug("i2o: claim of device %d succeded\n", | 68 | pr_debug("i2o: claim of device %d succeeded\n", |
69 | dev->lct_data.tid); | 69 | dev->lct_data.tid); |
70 | else | 70 | else |
71 | pr_debug("i2o: claim of device %d failed %d\n", | 71 | pr_debug("i2o: claim of device %d failed %d\n", |
@@ -110,7 +110,7 @@ int i2o_device_claim_release(struct i2o_device *dev) | |||
110 | } | 110 | } |
111 | 111 | ||
112 | if (!rc) | 112 | if (!rc) |
113 | pr_debug("i2o: claim release of device %d succeded\n", | 113 | pr_debug("i2o: claim release of device %d succeeded\n", |
114 | dev->lct_data.tid); | 114 | dev->lct_data.tid); |
115 | else | 115 | else |
116 | pr_debug("i2o: claim release of device %d failed %d\n", | 116 | pr_debug("i2o: claim release of device %d failed %d\n", |
@@ -248,7 +248,7 @@ static int i2o_device_add(struct i2o_controller *c, i2o_lct_entry *entry) | |||
248 | goto unreg_dev; | 248 | goto unreg_dev; |
249 | } | 249 | } |
250 | 250 | ||
251 | /* create user entries refering to this device */ | 251 | /* create user entries referring to this device */ |
252 | list_for_each_entry(tmp, &c->devices, list) | 252 | list_for_each_entry(tmp, &c->devices, list) |
253 | if ((tmp->lct_data.user_tid == i2o_dev->lct_data.tid) | 253 | if ((tmp->lct_data.user_tid == i2o_dev->lct_data.tid) |
254 | && (tmp != i2o_dev)) { | 254 | && (tmp != i2o_dev)) { |
@@ -267,7 +267,7 @@ static int i2o_device_add(struct i2o_controller *c, i2o_lct_entry *entry) | |||
267 | goto rmlink1; | 267 | goto rmlink1; |
268 | } | 268 | } |
269 | 269 | ||
270 | /* create parent entries refering to this device */ | 270 | /* create parent entries referring to this device */ |
271 | list_for_each_entry(tmp, &c->devices, list) | 271 | list_for_each_entry(tmp, &c->devices, list) |
272 | if ((tmp->lct_data.parent_tid == i2o_dev->lct_data.tid) | 272 | if ((tmp->lct_data.parent_tid == i2o_dev->lct_data.tid) |
273 | && (tmp != i2o_dev)) { | 273 | && (tmp != i2o_dev)) { |
diff --git a/drivers/message/i2o/i2o_block.c b/drivers/message/i2o/i2o_block.c index 47ec5bc0ed21..4796bbf0ae4e 100644 --- a/drivers/message/i2o/i2o_block.c +++ b/drivers/message/i2o/i2o_block.c | |||
@@ -610,7 +610,7 @@ static int i2o_block_release(struct gendisk *disk, fmode_t mode) | |||
610 | 610 | ||
611 | /* | 611 | /* |
612 | * This is to deail with the case of an application | 612 | * This is to deail with the case of an application |
613 | * opening a device and then the device dissapears while | 613 | * opening a device and then the device disappears while |
614 | * it's in use, and then the application tries to release | 614 | * it's in use, and then the application tries to release |
615 | * it. ex: Unmounting a deleted RAID volume at reboot. | 615 | * it. ex: Unmounting a deleted RAID volume at reboot. |
616 | * If we send messages, it will just cause FAILs since | 616 | * If we send messages, it will just cause FAILs since |
@@ -717,7 +717,7 @@ static unsigned int i2o_block_check_events(struct gendisk *disk, | |||
717 | 717 | ||
718 | /** | 718 | /** |
719 | * i2o_block_transfer - Transfer a request to/from the I2O controller | 719 | * i2o_block_transfer - Transfer a request to/from the I2O controller |
720 | * @req: the request which should be transfered | 720 | * @req: the request which should be transferred |
721 | * | 721 | * |
722 | * This function converts the request into a I2O message. The necessary | 722 | * This function converts the request into a I2O message. The necessary |
723 | * DMA buffers are allocated and after everything is setup post the message | 723 | * DMA buffers are allocated and after everything is setup post the message |
@@ -1000,7 +1000,6 @@ static struct i2o_block_device *i2o_block_device_alloc(void) | |||
1000 | gd->major = I2O_MAJOR; | 1000 | gd->major = I2O_MAJOR; |
1001 | gd->queue = queue; | 1001 | gd->queue = queue; |
1002 | gd->fops = &i2o_block_fops; | 1002 | gd->fops = &i2o_block_fops; |
1003 | gd->events = DISK_EVENT_MEDIA_CHANGE; | ||
1004 | gd->private_data = dev; | 1003 | gd->private_data = dev; |
1005 | 1004 | ||
1006 | dev->gd = gd; | 1005 | dev->gd = gd; |
diff --git a/drivers/message/i2o/i2o_block.h b/drivers/message/i2o/i2o_block.h index 67f921b4419b..cf8873cbca3f 100644 --- a/drivers/message/i2o/i2o_block.h +++ b/drivers/message/i2o/i2o_block.h | |||
@@ -73,7 +73,7 @@ struct i2o_block_device { | |||
73 | struct i2o_device *i2o_dev; /* pointer to I2O device */ | 73 | struct i2o_device *i2o_dev; /* pointer to I2O device */ |
74 | struct gendisk *gd; | 74 | struct gendisk *gd; |
75 | spinlock_t lock; /* queue lock */ | 75 | spinlock_t lock; /* queue lock */ |
76 | struct list_head open_queue; /* list of transfered, but unfinished | 76 | struct list_head open_queue; /* list of transferred, but unfinished |
77 | requests */ | 77 | requests */ |
78 | unsigned int open_queue_depth; /* number of requests in the queue */ | 78 | unsigned int open_queue_depth; /* number of requests in the queue */ |
79 | 79 | ||
diff --git a/drivers/message/i2o/i2o_scsi.c b/drivers/message/i2o/i2o_scsi.c index 97bdf82ec905..74fbe56321ff 100644 --- a/drivers/message/i2o/i2o_scsi.c +++ b/drivers/message/i2o/i2o_scsi.c | |||
@@ -204,7 +204,7 @@ static int i2o_scsi_remove(struct device *dev) | |||
204 | * i2o_scsi_probe - verify if dev is a I2O SCSI device and install it | 204 | * i2o_scsi_probe - verify if dev is a I2O SCSI device and install it |
205 | * @dev: device to verify if it is a I2O SCSI device | 205 | * @dev: device to verify if it is a I2O SCSI device |
206 | * | 206 | * |
207 | * Retrieve channel, id and lun for I2O device. If everthing goes well | 207 | * Retrieve channel, id and lun for I2O device. If everything goes well |
208 | * register the I2O device as SCSI device on the I2O SCSI controller. | 208 | * register the I2O device as SCSI device on the I2O SCSI controller. |
209 | * | 209 | * |
210 | * Returns 0 on success or negative error code on failure. | 210 | * Returns 0 on success or negative error code on failure. |
@@ -361,7 +361,7 @@ static int i2o_scsi_reply(struct i2o_controller *c, u32 m, | |||
361 | */ | 361 | */ |
362 | error = le32_to_cpu(msg->body[0]); | 362 | error = le32_to_cpu(msg->body[0]); |
363 | 363 | ||
364 | osm_debug("Completed %ld\n", cmd->serial_number); | 364 | osm_debug("Completed %0x%p\n", cmd); |
365 | 365 | ||
366 | cmd->result = error & 0xff; | 366 | cmd->result = error & 0xff; |
367 | /* | 367 | /* |
@@ -678,7 +678,7 @@ static int i2o_scsi_queuecommand_lck(struct scsi_cmnd *SCpnt, | |||
678 | /* Queue the message */ | 678 | /* Queue the message */ |
679 | i2o_msg_post(c, msg); | 679 | i2o_msg_post(c, msg); |
680 | 680 | ||
681 | osm_debug("Issued %ld\n", SCpnt->serial_number); | 681 | osm_debug("Issued %0x%p\n", SCpnt); |
682 | 682 | ||
683 | return 0; | 683 | return 0; |
684 | 684 | ||