Go to the documentation of this file.
45 #ifndef MPT2SAS_BASE_H_INCLUDED
46 #define MPT2SAS_BASE_H_INCLUDED
57 #include <scsi/scsi.h>
69 #define MPT2SAS_DRIVER_NAME "mpt2sas"
71 #define MPT2SAS_DESCRIPTION "LSI MPT Fusion SAS 2.0 Device Driver"
72 #define MPT2SAS_DRIVER_VERSION "14.100.00.00"
73 #define MPT2SAS_MAJOR_VERSION 14
74 #define MPT2SAS_MINOR_VERSION 100
75 #define MPT2SAS_BUILD_VERSION 00
76 #define MPT2SAS_RELEASE_VERSION 00
81 #ifdef CONFIG_SCSI_MPT2SAS_MAX_SGE
82 #if CONFIG_SCSI_MPT2SAS_MAX_SGE < 16
83 #define MPT2SAS_SG_DEPTH 16
84 #elif CONFIG_SCSI_MPT2SAS_MAX_SGE > 128
85 #define MPT2SAS_SG_DEPTH 128
87 #define MPT2SAS_SG_DEPTH CONFIG_SCSI_MPT2SAS_MAX_SGE
90 #define MPT2SAS_SG_DEPTH 128
97 #define MPT2SAS_SATA_QUEUE_DEPTH 32
98 #define MPT2SAS_SAS_QUEUE_DEPTH 254
99 #define MPT2SAS_RAID_QUEUE_DEPTH 128
101 #define MPT_NAME_LENGTH 32
102 #define MPT_STRING_LENGTH 64
104 #define MPT_MAX_CALLBACKS 16
110 #define INTERNAL_CMDS_COUNT 10
112 #define MPI2_HIM_MASK 0xFFFFFFFF
114 #define MPT2SAS_INVALID_DEVICE_HANDLE 0xFFFF
120 #define MPT2_IOC_PRE_RESET 1
121 #define MPT2_IOC_AFTER_RESET 2
122 #define MPT2_IOC_DONE_RESET 3
127 #define MPT2SAS_FMT "%s: "
128 #define MPT2SAS_INFO_FMT KERN_INFO MPT2SAS_FMT
129 #define MPT2SAS_NOTE_FMT KERN_NOTICE MPT2SAS_FMT
130 #define MPT2SAS_WARN_FMT KERN_WARNING MPT2SAS_FMT
131 #define MPT2SAS_ERR_FMT KERN_ERR MPT2SAS_FMT
136 #define MPT2SAS_DELL_BRANDING_SIZE 32
138 #define MPT2SAS_DELL_6GBPS_SAS_HBA_BRANDING "Dell 6Gbps SAS HBA"
139 #define MPT2SAS_DELL_PERC_H200_ADAPTER_BRANDING "Dell PERC H200 Adapter"
140 #define MPT2SAS_DELL_PERC_H200_INTEGRATED_BRANDING "Dell PERC H200 Integrated"
141 #define MPT2SAS_DELL_PERC_H200_MODULAR_BRANDING "Dell PERC H200 Modular"
142 #define MPT2SAS_DELL_PERC_H200_EMBEDDED_BRANDING "Dell PERC H200 Embedded"
143 #define MPT2SAS_DELL_PERC_H200_BRANDING "Dell PERC H200"
144 #define MPT2SAS_DELL_6GBPS_SAS_BRANDING "Dell 6Gbps SAS"
149 #define MPT2SAS_DELL_6GBPS_SAS_HBA_SSDID 0x1F1C
150 #define MPT2SAS_DELL_PERC_H200_ADAPTER_SSDID 0x1F1D
151 #define MPT2SAS_DELL_PERC_H200_INTEGRATED_SSDID 0x1F1E
152 #define MPT2SAS_DELL_PERC_H200_MODULAR_SSDID 0x1F1F
153 #define MPT2SAS_DELL_PERC_H200_EMBEDDED_SSDID 0x1F20
154 #define MPT2SAS_DELL_PERC_H200_SSDID 0x1F21
155 #define MPT2SAS_DELL_6GBPS_SAS_SSDID 0x1F22
160 #define MPT2SAS_INTEL_RMS25JB080_BRANDING \
161 "Intel(R) Integrated RAID Module RMS25JB080"
162 #define MPT2SAS_INTEL_RMS25JB040_BRANDING \
163 "Intel(R) Integrated RAID Module RMS25JB040"
164 #define MPT2SAS_INTEL_RMS25KB080_BRANDING \
165 "Intel(R) Integrated RAID Module RMS25KB080"
166 #define MPT2SAS_INTEL_RMS25KB040_BRANDING \
167 "Intel(R) Integrated RAID Module RMS25KB040"
168 #define MPT2SAS_INTEL_RMS2LL080_BRANDING \
169 "Intel Integrated RAID Module RMS2LL080"
170 #define MPT2SAS_INTEL_RMS2LL040_BRANDING \
171 "Intel Integrated RAID Module RMS2LL040"
172 #define MPT2SAS_INTEL_RS25GB008_BRANDING \
173 "Intel(R) RAID Controller RS25GB008"
174 #define MPT2SAS_INTEL_SSD910_BRANDING \
175 "Intel(R) SSD 910 Series"
179 #define MPT2SAS_INTEL_RMS25JB080_SSDID 0x3516
180 #define MPT2SAS_INTEL_RMS25JB040_SSDID 0x3517
181 #define MPT2SAS_INTEL_RMS25KB080_SSDID 0x3518
182 #define MPT2SAS_INTEL_RMS25KB040_SSDID 0x3519
183 #define MPT2SAS_INTEL_RMS2LL080_SSDID 0x350E
184 #define MPT2SAS_INTEL_RMS2LL040_SSDID 0x350F
185 #define MPT2SAS_INTEL_RS25GB008_SSDID 0x3000
186 #define MPT2SAS_INTEL_SSD910_SSDID 0x3700
191 #define MPT2SAS_HP_3PAR_SSVID 0x1590
192 #define MPT2SAS_HP_2_4_INTERNAL_BRANDING "HP H220 Host Bus Adapter"
193 #define MPT2SAS_HP_2_4_EXTERNAL_BRANDING "HP H221 Host Bus Adapter"
194 #define MPT2SAS_HP_1_4_INTERNAL_1_4_EXTERNAL_BRANDING "HP H222 Host Bus Adapter"
195 #define MPT2SAS_HP_EMBEDDED_2_4_INTERNAL_BRANDING "HP H220i Host Bus Adapter"
196 #define MPT2SAS_HP_DAUGHTER_2_4_INTERNAL_BRANDING "HP H210i Host Bus Adapter"
201 #define MPT2SAS_HP_2_4_INTERNAL_SSDID 0x0041
202 #define MPT2SAS_HP_2_4_EXTERNAL_SSDID 0x0042
203 #define MPT2SAS_HP_1_4_INTERNAL_1_4_EXTERNAL_SSDID 0x0043
204 #define MPT2SAS_HP_EMBEDDED_2_4_INTERNAL_SSDID 0x0044
205 #define MPT2SAS_HP_DAUGHTER_2_4_INTERNAL_SSDID 0x0046
211 #define MPT2_WARPDRIVE_LOGENTRY (0x8002)
212 #define MPT2_WARPDRIVE_LC_SSDT (0x41)
213 #define MPT2_WARPDRIVE_LC_SSDLW (0x43)
214 #define MPT2_WARPDRIVE_LC_SSDLF (0x44)
215 #define MPT2_WARPDRIVE_LC_BRMF (0x4D)
220 #define MPT_TARGET_FLAGS_RAID_COMPONENT 0x01
221 #define MPT_TARGET_FLAGS_VOLUME 0x02
222 #define MPT_TARGET_FLAGS_DELETED 0x04
250 #define MPT_DEVICE_FLAGS_INIT 0x01
251 #define MPT_DEVICE_TLR_ON 0x02
264 #define MFG10_OEM_ID_INVALID (0x00000000)
265 #define MFG10_OEM_ID_DELL (0x00000001)
266 #define MFG10_OEM_ID_FSC (0x00000002)
267 #define MFG10_OEM_ID_SUN (0x00000003)
268 #define MFG10_OEM_ID_IBM (0x00000004)
271 #define MFG10_GF0_OCE_DISABLED (0x00000001)
272 #define MFG10_GF0_R1E_DRIVE_COUNT (0x00000002)
273 #define MFG10_GF0_R10_DISPLAY (0x00000004)
274 #define MFG10_GF0_SSD_DATA_SCRUB_DISABLE (0x00000008)
275 #define MFG10_GF0_SINGLE_DRIVE_R0 (0x00000010)
294 #define MFG_PAGE10_HIDE_SSDS_MASK (0x00000003)
295 #define MFG_PAGE10_HIDE_ALL_DISKS (0x00)
296 #define MFG_PAGE10_EXPOSE_ALL_DISKS (0x01)
297 #define MFG_PAGE10_HIDE_IF_VOL_PRESENT (0x02)
309 #define MPT2_CMD_NOT_USED 0x8000
310 #define MPT2_CMD_COMPLETE 0x0001
311 #define MPT2_CMD_PENDING 0x0002
312 #define MPT2_CMD_REPLY_VALID 0x0004
313 #define MPT2_CMD_RESET 0x0008
395 #define MPT_MAX_WARPDRIVE_PDS 8
1036 u8 msix_index,
u32 reply);
1143 u8 bits_to_regsiter);
1151 u64 sas_address_parent);
1162 u8 msix_index,
u32 reply);