diff options
Diffstat (limited to 'drivers')
| -rw-r--r-- | drivers/scsi/megaraid/megaraid_sas.c | 12 | ||||
| -rw-r--r-- | drivers/scsi/megaraid/megaraid_sas.h | 7 |
2 files changed, 12 insertions, 7 deletions
diff --git a/drivers/scsi/megaraid/megaraid_sas.c b/drivers/scsi/megaraid/megaraid_sas.c index c730bb145436..e21f638c00af 100644 --- a/drivers/scsi/megaraid/megaraid_sas.c +++ b/drivers/scsi/megaraid/megaraid_sas.c | |||
| @@ -10,7 +10,7 @@ | |||
| 10 | * 2 of the License, or (at your option) any later version. | 10 | * 2 of the License, or (at your option) any later version. |
| 11 | * | 11 | * |
| 12 | * FILE : megaraid_sas.c | 12 | * FILE : megaraid_sas.c |
| 13 | * Version : v00.00.03.01 | 13 | * Version : v00.00.03.05 |
| 14 | * | 14 | * |
| 15 | * Authors: | 15 | * Authors: |
| 16 | * Sreenivas Bagalkote <Sreenivas.Bagalkote@lsil.com> | 16 | * Sreenivas Bagalkote <Sreenivas.Bagalkote@lsil.com> |
| @@ -347,6 +347,7 @@ megasas_issue_polled(struct megasas_instance *instance, struct megasas_cmd *cmd) | |||
| 347 | * @cmd: Command to be issued | 347 | * @cmd: Command to be issued |
| 348 | * | 348 | * |
| 349 | * This function waits on an event for the command to be returned from ISR. | 349 | * This function waits on an event for the command to be returned from ISR. |
| 350 | * Max wait time is MEGASAS_INTERNAL_CMD_WAIT_TIME secs | ||
| 350 | * Used to issue ioctl commands. | 351 | * Used to issue ioctl commands. |
| 351 | */ | 352 | */ |
| 352 | static int | 353 | static int |
| @@ -357,7 +358,8 @@ megasas_issue_blocked_cmd(struct megasas_instance *instance, | |||
| 357 | 358 | ||
| 358 | instance->instancet->fire_cmd(cmd->frame_phys_addr ,0,instance->reg_set); | 359 | instance->instancet->fire_cmd(cmd->frame_phys_addr ,0,instance->reg_set); |
| 359 | 360 | ||
| 360 | wait_event(instance->int_cmd_wait_q, (cmd->cmd_status != ENODATA)); | 361 | wait_event_timeout(instance->int_cmd_wait_q, (cmd->cmd_status != ENODATA), |
| 362 | MEGASAS_INTERNAL_CMD_WAIT_TIME*HZ); | ||
| 361 | 363 | ||
| 362 | return 0; | 364 | return 0; |
| 363 | } | 365 | } |
| @@ -369,7 +371,8 @@ megasas_issue_blocked_cmd(struct megasas_instance *instance, | |||
| 369 | * | 371 | * |
| 370 | * MFI firmware can abort previously issued AEN comamnd (automatic event | 372 | * MFI firmware can abort previously issued AEN comamnd (automatic event |
| 371 | * notification). The megasas_issue_blocked_abort_cmd() issues such abort | 373 | * notification). The megasas_issue_blocked_abort_cmd() issues such abort |
| 372 | * cmd and blocks till it is completed. | 374 | * cmd and waits for return status. |
| 375 | * Max wait time is MEGASAS_INTERNAL_CMD_WAIT_TIME secs | ||
| 373 | */ | 376 | */ |
| 374 | static int | 377 | static int |
| 375 | megasas_issue_blocked_abort_cmd(struct megasas_instance *instance, | 378 | megasas_issue_blocked_abort_cmd(struct megasas_instance *instance, |
| @@ -403,7 +406,8 @@ megasas_issue_blocked_abort_cmd(struct megasas_instance *instance, | |||
| 403 | /* | 406 | /* |
| 404 | * Wait for this cmd to complete | 407 | * Wait for this cmd to complete |
| 405 | */ | 408 | */ |
| 406 | wait_event(instance->abort_cmd_wait_q, (cmd->cmd_status != 0xFF)); | 409 | wait_event_timeout(instance->abort_cmd_wait_q, (cmd->cmd_status != 0xFF), |
| 410 | MEGASAS_INTERNAL_CMD_WAIT_TIME*HZ); | ||
| 407 | 411 | ||
| 408 | megasas_return_cmd(instance, cmd); | 412 | megasas_return_cmd(instance, cmd); |
| 409 | return 0; | 413 | return 0; |
diff --git a/drivers/scsi/megaraid/megaraid_sas.h b/drivers/scsi/megaraid/megaraid_sas.h index c79e55aa9166..55eddcf8eb15 100644 --- a/drivers/scsi/megaraid/megaraid_sas.h +++ b/drivers/scsi/megaraid/megaraid_sas.h | |||
| @@ -18,9 +18,9 @@ | |||
| 18 | /** | 18 | /** |
| 19 | * MegaRAID SAS Driver meta data | 19 | * MegaRAID SAS Driver meta data |
| 20 | */ | 20 | */ |
| 21 | #define MEGASAS_VERSION "00.00.03.01" | 21 | #define MEGASAS_VERSION "00.00.03.05" |
| 22 | #define MEGASAS_RELDATE "May 14, 2006" | 22 | #define MEGASAS_RELDATE "Oct 02, 2006" |
| 23 | #define MEGASAS_EXT_VERSION "Sun May 14 22:49:52 PDT 2006" | 23 | #define MEGASAS_EXT_VERSION "Mon Oct 02 11:21:32 PDT 2006" |
| 24 | 24 | ||
| 25 | /* | 25 | /* |
| 26 | * Device IDs | 26 | * Device IDs |
| @@ -547,6 +547,7 @@ struct megasas_ctrl_info { | |||
| 547 | * every MEGASAS_RESET_NOTICE_INTERVAL seconds | 547 | * every MEGASAS_RESET_NOTICE_INTERVAL seconds |
| 548 | */ | 548 | */ |
| 549 | #define MEGASAS_RESET_WAIT_TIME 180 | 549 | #define MEGASAS_RESET_WAIT_TIME 180 |
| 550 | #define MEGASAS_INTERNAL_CMD_WAIT_TIME 180 | ||
| 550 | #define MEGASAS_RESET_NOTICE_INTERVAL 5 | 551 | #define MEGASAS_RESET_NOTICE_INTERVAL 5 |
| 551 | 552 | ||
| 552 | #define MEGASAS_IOCTL_CMD 0 | 553 | #define MEGASAS_IOCTL_CMD 0 |
