aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/megaraid/megaraid_sas.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/scsi/megaraid/megaraid_sas.h')
-rw-r--r--drivers/scsi/megaraid/megaraid_sas.h22
1 files changed, 17 insertions, 5 deletions
diff --git a/drivers/scsi/megaraid/megaraid_sas.h b/drivers/scsi/megaraid/megaraid_sas.h
index 3531a14222a7..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
@@ -50,6 +50,7 @@
50#define MFI_STATE_WAIT_HANDSHAKE 0x60000000 50#define MFI_STATE_WAIT_HANDSHAKE 0x60000000
51#define MFI_STATE_FW_INIT_2 0x70000000 51#define MFI_STATE_FW_INIT_2 0x70000000
52#define MFI_STATE_DEVICE_SCAN 0x80000000 52#define MFI_STATE_DEVICE_SCAN 0x80000000
53#define MFI_STATE_BOOT_MESSAGE_PENDING 0x90000000
53#define MFI_STATE_FLUSH_CACHE 0xA0000000 54#define MFI_STATE_FLUSH_CACHE 0xA0000000
54#define MFI_STATE_READY 0xB0000000 55#define MFI_STATE_READY 0xB0000000
55#define MFI_STATE_OPERATIONAL 0xC0000000 56#define MFI_STATE_OPERATIONAL 0xC0000000
@@ -64,12 +65,18 @@
64 * READY : Move from OPERATIONAL to READY state; discard queue info 65 * READY : Move from OPERATIONAL to READY state; discard queue info
65 * MFIMODE : Discard (possible) low MFA posted in 64-bit mode (??) 66 * MFIMODE : Discard (possible) low MFA posted in 64-bit mode (??)
66 * CLR_HANDSHAKE: FW is waiting for HANDSHAKE from BIOS or Driver 67 * CLR_HANDSHAKE: FW is waiting for HANDSHAKE from BIOS or Driver
68 * HOTPLUG : Resume from Hotplug
69 * MFI_STOP_ADP : Send signal to FW to stop processing
67 */ 70 */
68#define MFI_INIT_ABORT 0x00000000 71#define MFI_INIT_ABORT 0x00000001
69#define MFI_INIT_READY 0x00000002 72#define MFI_INIT_READY 0x00000002
70#define MFI_INIT_MFIMODE 0x00000004 73#define MFI_INIT_MFIMODE 0x00000004
71#define MFI_INIT_CLEAR_HANDSHAKE 0x00000008 74#define MFI_INIT_CLEAR_HANDSHAKE 0x00000008
72#define MFI_RESET_FLAGS MFI_INIT_READY|MFI_INIT_MFIMODE 75#define MFI_INIT_HOTPLUG 0x00000010
76#define MFI_STOP_ADP 0x00000020
77#define MFI_RESET_FLAGS MFI_INIT_READY| \
78 MFI_INIT_MFIMODE| \
79 MFI_INIT_ABORT
73 80
74/** 81/**
75 * MFI frame flags 82 * MFI frame flags
@@ -530,6 +537,8 @@ struct megasas_ctrl_info {
530#define MEGASAS_MAX_LUN 8 537#define MEGASAS_MAX_LUN 8
531#define MEGASAS_MAX_LD 64 538#define MEGASAS_MAX_LD 64
532 539
540#define MEGASAS_DBG_LVL 1
541
533/* 542/*
534 * When SCSI mid-layer calls driver's reset routine, driver waits for 543 * When SCSI mid-layer calls driver's reset routine, driver waits for
535 * MEGASAS_RESET_WAIT_TIME seconds for all outstanding IO to complete. Note 544 * MEGASAS_RESET_WAIT_TIME seconds for all outstanding IO to complete. Note
@@ -538,6 +547,7 @@ struct megasas_ctrl_info {
538 * every MEGASAS_RESET_NOTICE_INTERVAL seconds 547 * every MEGASAS_RESET_NOTICE_INTERVAL seconds
539 */ 548 */
540#define MEGASAS_RESET_WAIT_TIME 180 549#define MEGASAS_RESET_WAIT_TIME 180
550#define MEGASAS_INTERNAL_CMD_WAIT_TIME 180
541#define MEGASAS_RESET_NOTICE_INTERVAL 5 551#define MEGASAS_RESET_NOTICE_INTERVAL 5
542 552
543#define MEGASAS_IOCTL_CMD 0 553#define MEGASAS_IOCTL_CMD 0
@@ -1042,6 +1052,7 @@ struct megasas_evt_detail {
1042 void (*fire_cmd)(dma_addr_t ,u32 ,struct megasas_register_set __iomem *); 1052 void (*fire_cmd)(dma_addr_t ,u32 ,struct megasas_register_set __iomem *);
1043 1053
1044 void (*enable_intr)(struct megasas_register_set __iomem *) ; 1054 void (*enable_intr)(struct megasas_register_set __iomem *) ;
1055 void (*disable_intr)(struct megasas_register_set __iomem *);
1045 1056
1046 int (*clear_intr)(struct megasas_register_set __iomem *); 1057 int (*clear_intr)(struct megasas_register_set __iomem *);
1047 1058
@@ -1092,6 +1103,7 @@ struct megasas_instance {
1092 u32 hw_crit_error; 1103 u32 hw_crit_error;
1093 1104
1094 struct megasas_instance_template *instancet; 1105 struct megasas_instance_template *instancet;
1106 struct tasklet_struct isr_tasklet;
1095}; 1107};
1096 1108
1097#define MEGASAS_IS_LOGICAL(scp) \ 1109#define MEGASAS_IS_LOGICAL(scp) \