5 * Common Development and Distribution License (the "License").
6 * You may not use this file except in compliance with the License.
7 *
8 * You can obtain a copy of the license at
9 * http://www.opensource.org/licenses/cddl1.txt.
10 * See the License for the specific language governing permissions
11 * and limitations under the License.
12 *
13 * When distributing Covered Code, include this CDDL HEADER in each
14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 * If applicable, add the following below this CDDL HEADER, with the
16 * fields enclosed by brackets "[]" replaced with your own identifying
17 * information: Portions Copyright [yyyy] [name of copyright owner]
18 *
19 * CDDL HEADER END
20 */
21
22 /*
23 * Copyright (c) 2004-2012 Emulex. All rights reserved.
24 * Use is subject to license terms.
25 */
26
27 #ifndef _EMLXS_ADAPTERS_H
28 #define _EMLXS_ADAPTERS_H
29
30 #ifdef __cplusplus
31 extern "C" {
32 #endif
33
34 /* Unique id for each adapter model */
35 typedef enum emlxs_adapter
36 {
37 UNKNOWN_ADAPTER = 0,
38
39 /* DragonFly (1) */
40 LP8000S, /* SBUS */
41 LP8000, /* Generic Single Channel */
42 LP8000DC, /* Generic Dual Channel */
43
44 /* Centaur (4) */
83 LP21002, /* Generic Dual Channel */
84
85 /* Saturn (33) */
86 LPe12000, /* Generic Single Channel */
87 LPe12002, /* Generic Dual Channel */
88 LPe12000_O, /* Oracle branded */
89 LPe12002_O, /* Oracle branded */
90 LPem12002_O, /* Oracle branded */
91 LPem12002E_O, /* Oracle branded */
92 LPe12000_SP, /* Spare */
93 LPe12002_SP, /* Spare */
94
95 /* BE2 (41) */
96 OCe10101, /* Generic Single Channel */
97 OCe10102, /* Generic Dual Channel */
98
99 /* BE3 (43) */
100 OCe11101, /* Generic Single Channel */
101 OCe11102, /* Generic Dual Channel */
102
103 /* Lancer FC (45) */
104 LPe16000, /* Generic Single Channel FC */
105 LPe1600X, /* Generic Multi Channel FC */
106 LPem16002_FC_O, /* Oracle branded */
107 LPe16002_FC_O, /* Oracle branded */
108 LPe16002_FC_SP1, /* Oracle excluded - Spare */
109 LPe16002_FC_SP2, /* Oracle excluded - Spare */
110
111 /* Lancer FCoE (51) */
112 OCe15100, /* Generic Single Channel FCOE */
113 OCe1510X, /* Generic Multi Channel FCOE */
114 LPem16002_FE_O, /* Oracle branded */
115 LPe16002_FE_O, /* Oracle branded */
116 LPe16002_FE_SP1, /* Oracle excluded - Spare */
117 LPe16002_FE_SP2, /* Oracle excluded - Spare */
118
119 /* BE4 (57) */
120 OCe12104 /* 4-Port 2xNIC +2xFCoE */
121
122 } emlxs_adapter_t;
123
124
125 #define PCI_VENDOR_ID_EMULEX 0x10df
126
127 /* Subsystem Vendor IDs */
128 #define PCI_SSVID_EMULEX 0x10df
129 #define PCI_SSVID_HP 0x103c
130 #define PCI_SSVID_IBM 0x1014
131 #define PCI_SSVID_FUJITSU 0x1734
132 #define PCI_SSVID_CISCO 0x1137
133 #define PCI_SSVID_HITACHI 0x1054
134
135
136 /* PCI_DEVICE_IDs & PCI_SSDIDs */
137 /* F800: Dragonfly */
138 #define PCI_DEVICE_ID_DRAGONFLY 0xf800
139 #define PCI_SSDID_LP8000 0xf800
140 #define PCI_SSDID_LP8000DC 0xf800 /* Identified by VPD PN */
141
142 /* F085: Dragonfly SBUS */
143 #define PCI_DEVICE_ID_DRAGONFLY_SBUS 0xf085 /* Identified by "lpfs" */
144 #define PCI_SSDID_LP8000S 0xf085
145
146
147 /* F900: Centaur */
148 #define PCI_DEVICE_ID_CENTAUR 0xf900
149 #define PCI_SSDID_LP9002L 0xf900
150 #define PCI_SSDID_LP9002DC 0xf900 /* Identified by VPD PN */
151 #define PCI_SSDID_LP9002C 0xf900 /* Identified by VPD PN */
152 #define PCI_SSDID_LP9402DC 0xf900 /* Identified by VPD PN */
153
239 #define PCI_SSDID_LPe12002_O 0xfc42
240 #define PCI_SSDID_LPem12002_O 0xfc4e
241 #define PCI_SSDID_LPem12002E_O 0xfc43
242
243
244 /* 0704: BE2 (TigerShark) */
245 #define PCI_DEVICE_ID_BE2 0x0704
246 #define PCI_SSDID_OCe10101 0x0704
247 #define PCI_SSDID_OCe10102 0x0704 /* Identified by cache_line */
248
249
250 /* 0714: BE3 (TomCat) */
251 #define PCI_DEVICE_ID_BE3 0x0714
252 #define PCI_SSDID_OCe11101 0x0714
253 #define PCI_SSDID_OCe11102 0x0714 /* Identified by cache_line */
254
255 /* 0724: BE4 (Skyhawk) */
256 #define PCI_DEVICE_ID_BE4 0x0724
257 #define PCI_SSDID_OCe12104 0xEF81
258
259 /* E200: Lancer FC */
260 #define PCI_DEVICE_ID_LANCER_FC 0xE200
261 #define PCI_SSDID_LPe16000 0xE200
262 #define PCI_SSDID_LPe1600X 0xE200 /* Identified by cache_line */
263 #define PCI_SSDID_LPem16002_FC_O 0xE20C
264 #define PCI_SSDID_LPe16002_FC_O 0xE20E
265 #define PCI_SSDID_LPe16002_FC_SP1 0xE217
266 #define PCI_SSDID_LPe16002_FC_SP2 0xE219
267
268 /* E260: Lancer FCoE */
269 #define PCI_DEVICE_ID_LANCER_FE 0xE260
270 #define PCI_SSDID_OCe15100 0xE260
271 #define PCI_SSDID_OCe1510X 0xE260 /* Identified by cache_line */
272 #define PCI_SSDID_LPem16002_FE_O 0xE20C
273 #define PCI_SSDID_LPe16002_FE_O 0xE20E
274 #define PCI_SSDID_LPe16002_FE_SP1 0xE217
275 #define PCI_SSDID_LPe16002_FE_SP2 0xE219
276
277
278
279 /* JEDEC codes */
280 #define FIREFLY_JEDEC_ID 0x1ACC
281 #define SUPERFLY_JEDEC_ID 0x0020
282 #define DRAGONFLY_JEDEC_ID 0x0021
283 #define DRAGONFLY_V2_JEDEC_ID 0x0025
284 #define CENTAUR_2G_JEDEC_ID 0x0026
285 #define CENTAUR_1G_JEDEC_ID 0x0028
286 #define HELIOS_4G_JEDEC_ID 0x0364
287 #define ZEPHYR_4G_JEDEC_ID 0x0577
288 #define NEPTUNE_4G_JEDEC_ID 0x0510
289 #define SATURN_8G_JEDEC_ID 0x1004
290 #define PROTEUS_8G_JEDEC_ID 0x2634
291 #define JEDEC_ID_MASK 0x0FFFF000
292 #define JEDEC_ID_SHIFT 12
293 #define FC_JEDEC_ID(id) ((id & JEDEC_ID_MASK) >> JEDEC_ID_SHIFT)
294
295
296 typedef struct emlxs_model
297 {
298 emlxs_adapter_t id;
299 uint16_t device_id;
300 uint16_t ssdid;
301
302 char model[32];
303 char model_desc[80];
304 char manufacturer[80];
305 uint32_t flags;
306
307 /* flags */
308 #define EMLXS_INTX_SUPPORTED 0x00000001
309 #define EMLXS_MSI_SUPPORTED 0x00000002
310 #define EMLXS_MSIX_SUPPORTED 0x00000004
311 #define EMLXS_E2E_SUPPORTED 0x00000010 /* End-to-end authentication */
312 #define EMLXS_ORACLE_BRANDED 0x10000000
313 #define EMLXS_ORACLE_EXCLUDED 0x20000000
314 #define EMLXS_NOT_SUPPORTED 0x80000000
315
316 uint32_t chip;
317
318 /* chip */
319 #define EMLXS_UNKNOWN_CHIP 0x00000000
320 #define EMLXS_DRAGONFLY_CHIP 0x00000001
321 #define EMLXS_CENTAUR_CHIP 0x00000002
322 #define EMLXS_PEGASUS_CHIP 0x00000004
323 #define EMLXS_THOR_CHIP 0x00000008
324 #define EMLXS_HELIOS_CHIP 0x00000010
325 #define EMLXS_ZEPHYR_CHIP 0x00000020
326 #define EMLXS_NEPTUNE_CHIP 0x00000040
327 #define EMLXS_SATURN_CHIP 0x00000080
328 #define EMLXS_PROTEUS_CHIP 0x00000100
329 #define EMLXS_BE2_CHIP 0x00000200
330 #define EMLXS_BE3_CHIP 0x00000400
331 #define EMLXS_BE4_CHIP 0x00000800
1623 },
1624
1625 /* Lancer FC DC (Oracle Excluded - Spare 2) */
1626 {
1627 LPe16002_FC_SP2,
1628 PCI_DEVICE_ID_LANCER_FC,
1629 PCI_SSDID_LPe16002_FC_SP2,
1630 "LPe16002",
1631 "Emulex LightPulse LPe16002 16Gb 2-port FC HBA",
1632 "Emulex",
1633 EMLXS_ORACLE_EXCLUDED | EMLXS_INTX_SUPPORTED |
1634 EMLXS_MSI_SUPPORTED | EMLXS_MSIX_SUPPORTED |
1635 EMLXS_E2E_SUPPORTED,
1636 EMLXS_LANCER_CHIP,
1637 FW_NOT_PROVIDED,
1638 EMLXS_INTR_NO_LIMIT,
1639 EMLXS_SLI4_MASK,
1640 EMLXS_MULTI_CHANNEL,
1641 NULL_PROG_TYPES,
1642 },
1643
1644 /* Lancer FCOE (Generic) */
1645 {
1646 OCe15100,
1647 PCI_DEVICE_ID_LANCER_FE,
1648 PCI_SSDID_OCe15100,
1649 "OCe15100",
1650 "Emulex OneConnect OCe15100 10Gb 1-port FCoE HBA",
1651 "Emulex",
1652 EMLXS_INTX_SUPPORTED | EMLXS_MSI_SUPPORTED |
1653 EMLXS_MSIX_SUPPORTED | EMLXS_E2E_SUPPORTED,
1654 EMLXS_LANCER_CHIP,
1655 FW_NOT_PROVIDED,
1656 EMLXS_INTR_NO_LIMIT,
1657 EMLXS_SLI4_MASK,
1658 EMLXS_SINGLE_CHANNEL,
1659 NULL_PROG_TYPES,
1660 },
1661
1662 /* Lancer FCOE (Generic Multi-Channel) */
|
5 * Common Development and Distribution License (the "License").
6 * You may not use this file except in compliance with the License.
7 *
8 * You can obtain a copy of the license at
9 * http://www.opensource.org/licenses/cddl1.txt.
10 * See the License for the specific language governing permissions
11 * and limitations under the License.
12 *
13 * When distributing Covered Code, include this CDDL HEADER in each
14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 * If applicable, add the following below this CDDL HEADER, with the
16 * fields enclosed by brackets "[]" replaced with your own identifying
17 * information: Portions Copyright [yyyy] [name of copyright owner]
18 *
19 * CDDL HEADER END
20 */
21
22 /*
23 * Copyright (c) 2004-2012 Emulex. All rights reserved.
24 * Use is subject to license terms.
25 * Copyright 2018 OmniOS Community Edition (OmniOSce) Association.
26 */
27
28 #ifndef _EMLXS_ADAPTERS_H
29 #define _EMLXS_ADAPTERS_H
30
31 #ifdef __cplusplus
32 extern "C" {
33 #endif
34
35 /* Unique id for each adapter model */
36 typedef enum emlxs_adapter
37 {
38 UNKNOWN_ADAPTER = 0,
39
40 /* DragonFly (1) */
41 LP8000S, /* SBUS */
42 LP8000, /* Generic Single Channel */
43 LP8000DC, /* Generic Dual Channel */
44
45 /* Centaur (4) */
84 LP21002, /* Generic Dual Channel */
85
86 /* Saturn (33) */
87 LPe12000, /* Generic Single Channel */
88 LPe12002, /* Generic Dual Channel */
89 LPe12000_O, /* Oracle branded */
90 LPe12002_O, /* Oracle branded */
91 LPem12002_O, /* Oracle branded */
92 LPem12002E_O, /* Oracle branded */
93 LPe12000_SP, /* Spare */
94 LPe12002_SP, /* Spare */
95
96 /* BE2 (41) */
97 OCe10101, /* Generic Single Channel */
98 OCe10102, /* Generic Dual Channel */
99
100 /* BE3 (43) */
101 OCe11101, /* Generic Single Channel */
102 OCe11102, /* Generic Dual Channel */
103
104 /* Lancer FC Gen5 HBAs (45) */
105 LPe16000, /* Generic Single Channel FC */
106 LPe1600X, /* Generic Multi Channel FC */
107 LPem16002_FC_O, /* Oracle branded */
108 LPe16002_FC_O, /* Oracle branded */
109 LPe16002_FC_SP1, /* Oracle excluded - Spare */
110 LPe16002_FC_SP2, /* Oracle excluded - Spare */
111
112 /* Lancer FC Gen6 HBAs */
113 LPe31000_M6_L, /* Single port 16Gb, Lenovo-branded */
114 LPe32000, /* Generic Single Channel FC */
115 LPe3200X, /* Generic Multi Channel FC */
116
117 /* Celerity 16 FC Gen5 */
118 CelerityFC161E,
119 CelerityFC162E,
120 CelerityFC164E,
121
122 /* Celerity 16 FC Gen6 */
123 CelerityFC162P,
124 CelerityFC164P,
125 CelerityFC321E,
126 CelerityFC322E,
127
128 /* Lancer FCoE */
129 OCe15100, /* Generic Single Channel FCOE */
130 OCe1510X, /* Generic Multi Channel FCOE */
131 LPem16002_FE_O, /* Oracle branded */
132 LPe16002_FE_O, /* Oracle branded */
133 LPe16002_FE_SP1, /* Oracle excluded - Spare */
134 LPe16002_FE_SP2, /* Oracle excluded - Spare */
135
136 /* BE4 (57) */
137 OCe12104 /* 4-Port 2xNIC +2xFCoE */
138
139 } emlxs_adapter_t;
140
141
142 #define PCI_VENDOR_ID_EMULEX 0x10df
143 #define PCI_VENDOR_ID_ATTO 0x117c
144
145 /* Subsystem Vendor IDs */
146 #define PCI_SSVID_EMULEX 0x10df
147 #define PCI_SSVID_HP 0x103c
148 #define PCI_SSVID_IBM 0x1014
149 #define PCI_SSVID_FUJITSU 0x1734
150 #define PCI_SSVID_CISCO 0x1137
151 #define PCI_SSVID_HITACHI 0x1054
152 #define PCI_SSVID_ATTO 0x117c
153
154
155 /* PCI_DEVICE_IDs & PCI_SSDIDs */
156 /* F800: Dragonfly */
157 #define PCI_DEVICE_ID_DRAGONFLY 0xf800
158 #define PCI_SSDID_LP8000 0xf800
159 #define PCI_SSDID_LP8000DC 0xf800 /* Identified by VPD PN */
160
161 /* F085: Dragonfly SBUS */
162 #define PCI_DEVICE_ID_DRAGONFLY_SBUS 0xf085 /* Identified by "lpfs" */
163 #define PCI_SSDID_LP8000S 0xf085
164
165
166 /* F900: Centaur */
167 #define PCI_DEVICE_ID_CENTAUR 0xf900
168 #define PCI_SSDID_LP9002L 0xf900
169 #define PCI_SSDID_LP9002DC 0xf900 /* Identified by VPD PN */
170 #define PCI_SSDID_LP9002C 0xf900 /* Identified by VPD PN */
171 #define PCI_SSDID_LP9402DC 0xf900 /* Identified by VPD PN */
172
258 #define PCI_SSDID_LPe12002_O 0xfc42
259 #define PCI_SSDID_LPem12002_O 0xfc4e
260 #define PCI_SSDID_LPem12002E_O 0xfc43
261
262
263 /* 0704: BE2 (TigerShark) */
264 #define PCI_DEVICE_ID_BE2 0x0704
265 #define PCI_SSDID_OCe10101 0x0704
266 #define PCI_SSDID_OCe10102 0x0704 /* Identified by cache_line */
267
268
269 /* 0714: BE3 (TomCat) */
270 #define PCI_DEVICE_ID_BE3 0x0714
271 #define PCI_SSDID_OCe11101 0x0714
272 #define PCI_SSDID_OCe11102 0x0714 /* Identified by cache_line */
273
274 /* 0724: BE4 (Skyhawk) */
275 #define PCI_DEVICE_ID_BE4 0x0724
276 #define PCI_SSDID_OCe12104 0xEF81
277
278 /* E200: Lancer FC Gen5 */
279 #define PCI_DEVICE_ID_LANCER_FC 0xE200
280 #define PCI_SSDID_LPe16000 0xE200
281 #define PCI_SSDID_LPe1600X 0xE200 /* Identified by cache_line */
282 #define PCI_SSDID_LPem16002_FC_O 0xE20C
283 #define PCI_SSDID_LPe16002_FC_O 0xE20E
284 #define PCI_SSDID_LPe16002_FC_SP1 0xE217
285 #define PCI_SSDID_LPe16002_FC_SP2 0xE219
286
287 /* E300: Lancer FC Gen6 */
288 #define PCI_DEVICE_ID_LANCER_G6_FC 0xE300
289 #define PCI_SSDID_LPe31000_M6_L 0xE333
290 #define PCI_SSDID_LPe32000 0xE300
291 #define PCI_SSDID_LPe3200X 0xE300
292
293 /* E260: Lancer FCoE */
294 #define PCI_DEVICE_ID_LANCER_FE 0xE260
295 #define PCI_SSDID_OCe15100 0xE260
296 #define PCI_SSDID_OCe1510X 0xE260 /* Identified by cache_line */
297 #define PCI_SSDID_LPem16002_FE_O 0xE20C
298 #define PCI_SSDID_LPe16002_FE_O 0xE20E
299 #define PCI_SSDID_LPe16002_FE_SP1 0xE217
300 #define PCI_SSDID_LPe16002_FE_SP2 0xE219
301
302 /* 0063: ATTO Celerity 16 FC Gen5 */
303 #define PCI_DEVICE_ID_CLRTY_FC_161E 0x0063
304 #define PCI_DEVICE_ID_CLRTY_FC_162E 0x0064
305 #define PCI_DEVICE_ID_CLRTY_FC_164E 0x0065
306 #define PCI_SSDID_CLRTY_FC_161E 0x0063
307 #define PCI_SSDID_CLRTY_FC_162E 0x0064
308 #define PCI_SSDID_CLRTY_FC_164E 0x0065
309
310 /* 0094 ATTO Celerity 16 FC Gen6 */
311 #define PCI_DEVICE_ID_CLRTY_FC_G6 0x0094
312 #define PCI_SSDID_CLRTY_FC_162P 0x0094
313 #define PCI_SSDID_CLRTY_FC_164P 0x00A1
314 #define PCI_SSDID_CLRTY_FC_321E 0x00A2
315 #define PCI_SSDID_CLRTY_FC_322E 0x00A3
316
317
318 /* JEDEC codes */
319 #define FIREFLY_JEDEC_ID 0x1ACC
320 #define SUPERFLY_JEDEC_ID 0x0020
321 #define DRAGONFLY_JEDEC_ID 0x0021
322 #define DRAGONFLY_V2_JEDEC_ID 0x0025
323 #define CENTAUR_2G_JEDEC_ID 0x0026
324 #define CENTAUR_1G_JEDEC_ID 0x0028
325 #define HELIOS_4G_JEDEC_ID 0x0364
326 #define ZEPHYR_4G_JEDEC_ID 0x0577
327 #define NEPTUNE_4G_JEDEC_ID 0x0510
328 #define SATURN_8G_JEDEC_ID 0x1004
329 #define PROTEUS_8G_JEDEC_ID 0x2634
330 #define JEDEC_ID_MASK 0x0FFFF000
331 #define JEDEC_ID_SHIFT 12
332 #define FC_JEDEC_ID(id) ((id & JEDEC_ID_MASK) >> JEDEC_ID_SHIFT)
333
334
335 typedef struct emlxs_model
336 {
337 emlxs_adapter_t id;
338 uint16_t device_id;
339 uint16_t ssdid;
340
341 char model[32];
342 char model_desc[80];
343 char manufacturer[80];
344 uint32_t flags;
345
346 /* flags */
347 #define EMLXS_INTX_SUPPORTED 0x00000001
348 #define EMLXS_MSI_SUPPORTED 0x00000002
349 #define EMLXS_MSIX_SUPPORTED 0x00000004
350 #define EMLXS_E2E_SUPPORTED 0x00000010 /* End-to-end authentication */
351 #define EMLXS_FC_GEN6 0x00000020
352 #define EMLXS_GPIO_LEDS 0x00000040
353 #define EMLXS_ORACLE_BRANDED 0x10000000
354 #define EMLXS_ORACLE_EXCLUDED 0x20000000
355 #define EMLXS_NOT_SUPPORTED 0x80000000
356
357 uint32_t chip;
358
359 /* chip */
360 #define EMLXS_UNKNOWN_CHIP 0x00000000
361 #define EMLXS_DRAGONFLY_CHIP 0x00000001
362 #define EMLXS_CENTAUR_CHIP 0x00000002
363 #define EMLXS_PEGASUS_CHIP 0x00000004
364 #define EMLXS_THOR_CHIP 0x00000008
365 #define EMLXS_HELIOS_CHIP 0x00000010
366 #define EMLXS_ZEPHYR_CHIP 0x00000020
367 #define EMLXS_NEPTUNE_CHIP 0x00000040
368 #define EMLXS_SATURN_CHIP 0x00000080
369 #define EMLXS_PROTEUS_CHIP 0x00000100
370 #define EMLXS_BE2_CHIP 0x00000200
371 #define EMLXS_BE3_CHIP 0x00000400
372 #define EMLXS_BE4_CHIP 0x00000800
1664 },
1665
1666 /* Lancer FC DC (Oracle Excluded - Spare 2) */
1667 {
1668 LPe16002_FC_SP2,
1669 PCI_DEVICE_ID_LANCER_FC,
1670 PCI_SSDID_LPe16002_FC_SP2,
1671 "LPe16002",
1672 "Emulex LightPulse LPe16002 16Gb 2-port FC HBA",
1673 "Emulex",
1674 EMLXS_ORACLE_EXCLUDED | EMLXS_INTX_SUPPORTED |
1675 EMLXS_MSI_SUPPORTED | EMLXS_MSIX_SUPPORTED |
1676 EMLXS_E2E_SUPPORTED,
1677 EMLXS_LANCER_CHIP,
1678 FW_NOT_PROVIDED,
1679 EMLXS_INTR_NO_LIMIT,
1680 EMLXS_SLI4_MASK,
1681 EMLXS_MULTI_CHANNEL,
1682 NULL_PROG_TYPES,
1683 },
1684
1685 /* Lancer Gen6 16Gb FC Single-port, Lenovo-branded */
1686 {
1687 LPe31000_M6_L,
1688 PCI_DEVICE_ID_LANCER_G6_FC,
1689 PCI_SSDID_LPe31000_M6_L,
1690 "LPe31000",
1691 "PCI_SSDID_LPe31000_M6_L",
1692 "Emulex",
1693 EMLXS_INTX_SUPPORTED |
1694 EMLXS_MSI_SUPPORTED | EMLXS_MSIX_SUPPORTED |
1695 EMLXS_E2E_SUPPORTED | EMLXS_FC_GEN6,
1696 EMLXS_LANCER_CHIP,
1697 FW_NOT_PROVIDED,
1698 EMLXS_INTR_NO_LIMIT,
1699 EMLXS_SLI4_MASK,
1700 EMLXS_SINGLE_CHANNEL,
1701 NULL_PROG_TYPES,
1702 },
1703
1704 /* Lancer Gen6 FC (Generic) */
1705 {
1706 LPe32000,
1707 PCI_DEVICE_ID_LANCER_G6_FC,
1708 PCI_SSDID_LPe32000,
1709 "LPe32000",
1710 "Emulex LightPulse LPe32000 32Gb 1-port FC HBA",
1711 "Emulex",
1712 EMLXS_INTX_SUPPORTED |
1713 EMLXS_MSI_SUPPORTED | EMLXS_MSIX_SUPPORTED |
1714 EMLXS_E2E_SUPPORTED | EMLXS_FC_GEN6,
1715 EMLXS_LANCER_CHIP,
1716 FW_NOT_PROVIDED,
1717 EMLXS_INTR_NO_LIMIT,
1718 EMLXS_SLI4_MASK,
1719 EMLXS_SINGLE_CHANNEL,
1720 NULL_PROG_TYPES,
1721 },
1722
1723 /* Lancer Gen6 FC (Generic Multi-Channel) */
1724 /* !! Must always follow the single channel entry in list */
1725 {
1726 LPe3200X,
1727 PCI_DEVICE_ID_LANCER_G6_FC,
1728 PCI_SSDID_LPe3200X,
1729 "LPe32000",
1730 "Emulex LightPulse LPe32000 32Gb Multi-port FC HBA",
1731 "Emulex",
1732 EMLXS_INTX_SUPPORTED |
1733 EMLXS_MSI_SUPPORTED | EMLXS_MSIX_SUPPORTED |
1734 EMLXS_E2E_SUPPORTED | EMLXS_FC_GEN6,
1735 EMLXS_LANCER_CHIP,
1736 FW_NOT_PROVIDED,
1737 EMLXS_INTR_NO_LIMIT,
1738 EMLXS_SLI4_MASK,
1739 EMLXS_MULTI_CHANNEL,
1740 NULL_PROG_TYPES,
1741 },
1742
1743 /* ATTO Celerity 161E */
1744 {
1745 CelerityFC161E,
1746 PCI_DEVICE_ID_CLRTY_FC_161E,
1747 PCI_SSDID_CLRTY_FC_161E,
1748 "Celerity FC 161E",
1749 "ATTO Celerity 161E Single-Channel FC HBA",
1750 "ATTO Technology",
1751 EMLXS_INTX_SUPPORTED |
1752 EMLXS_MSI_SUPPORTED | EMLXS_MSIX_SUPPORTED |
1753 EMLXS_E2E_SUPPORTED | EMLXS_GPIO_LEDS,
1754 EMLXS_LANCER_CHIP,
1755 FW_NOT_PROVIDED,
1756 EMLXS_INTR_NO_LIMIT,
1757 EMLXS_SLI4_MASK,
1758 EMLXS_SINGLE_CHANNEL,
1759 NULL_PROG_TYPES,
1760 },
1761
1762 /* ATTO Celerity 162E */
1763 {
1764 CelerityFC162E,
1765 PCI_DEVICE_ID_CLRTY_FC_162E,
1766 PCI_SSDID_CLRTY_FC_162E,
1767 "Celerity FC 162E",
1768 "ATTO Celerity 162E Dual-Channel FC HBA",
1769 "ATTO Technology",
1770 EMLXS_INTX_SUPPORTED |
1771 EMLXS_MSI_SUPPORTED | EMLXS_MSIX_SUPPORTED |
1772 EMLXS_E2E_SUPPORTED | EMLXS_GPIO_LEDS,
1773 EMLXS_LANCER_CHIP,
1774 FW_NOT_PROVIDED,
1775 EMLXS_INTR_NO_LIMIT,
1776 EMLXS_SLI4_MASK,
1777 EMLXS_SINGLE_CHANNEL,
1778 NULL_PROG_TYPES,
1779 },
1780
1781 /* ATTO Celerity 164E */
1782 {
1783 CelerityFC164E,
1784 PCI_DEVICE_ID_CLRTY_FC_164E,
1785 PCI_SSDID_CLRTY_FC_164E,
1786 "Celerity FC 164E",
1787 "ATTO Celerity 164E Quad-Channel FC HBA",
1788 "ATTO Technology",
1789 EMLXS_INTX_SUPPORTED |
1790 EMLXS_MSI_SUPPORTED | EMLXS_MSIX_SUPPORTED |
1791 EMLXS_E2E_SUPPORTED | EMLXS_GPIO_LEDS,
1792 EMLXS_LANCER_CHIP,
1793 FW_NOT_PROVIDED,
1794 EMLXS_INTR_NO_LIMIT,
1795 EMLXS_SLI4_MASK,
1796 EMLXS_SINGLE_CHANNEL,
1797 NULL_PROG_TYPES,
1798 },
1799
1800 /* ATTO Celerity 162P */
1801 {
1802 CelerityFC162P,
1803 PCI_DEVICE_ID_CLRTY_FC_G6,
1804 PCI_SSDID_CLRTY_FC_162P,
1805 "Celerity FC 162P",
1806 "ATTO Celerity 162P Dual-Channel FC HBA",
1807 "ATTO Technology",
1808 EMLXS_INTX_SUPPORTED |
1809 EMLXS_MSI_SUPPORTED | EMLXS_MSIX_SUPPORTED |
1810 EMLXS_E2E_SUPPORTED | EMLXS_FC_GEN6,
1811 EMLXS_LANCER_CHIP,
1812 FW_NOT_PROVIDED,
1813 EMLXS_INTR_NO_LIMIT,
1814 EMLXS_SLI4_MASK,
1815 EMLXS_SINGLE_CHANNEL,
1816 NULL_PROG_TYPES,
1817 },
1818
1819 /* ATTO Celerity 164P */
1820 {
1821 CelerityFC164P,
1822 PCI_DEVICE_ID_CLRTY_FC_G6,
1823 PCI_SSDID_CLRTY_FC_164P,
1824 "Celerity FC 164P",
1825 "ATTO Celerity 164P Quad-Channel FC HBA",
1826 "ATTO Technology",
1827 EMLXS_INTX_SUPPORTED |
1828 EMLXS_MSI_SUPPORTED | EMLXS_MSIX_SUPPORTED |
1829 EMLXS_E2E_SUPPORTED | EMLXS_FC_GEN6,
1830 EMLXS_LANCER_CHIP,
1831 FW_NOT_PROVIDED,
1832 EMLXS_INTR_NO_LIMIT,
1833 EMLXS_SLI4_MASK,
1834 EMLXS_SINGLE_CHANNEL,
1835 NULL_PROG_TYPES,
1836 },
1837
1838 /* ATTO Celerity 321E */
1839 {
1840 CelerityFC321E,
1841 PCI_DEVICE_ID_CLRTY_FC_G6,
1842 PCI_SSDID_CLRTY_FC_321E,
1843 "Celerity FC 321E",
1844 "ATTO Celerity 321E Single-Channel FC HBA",
1845 "ATTO Technology",
1846 EMLXS_INTX_SUPPORTED |
1847 EMLXS_MSI_SUPPORTED | EMLXS_MSIX_SUPPORTED |
1848 EMLXS_E2E_SUPPORTED | EMLXS_FC_GEN6,
1849 EMLXS_LANCER_CHIP,
1850 FW_NOT_PROVIDED,
1851 EMLXS_INTR_NO_LIMIT,
1852 EMLXS_SLI4_MASK,
1853 EMLXS_SINGLE_CHANNEL,
1854 NULL_PROG_TYPES,
1855 },
1856
1857 /* ATTO Celerity 322E */
1858 {
1859 CelerityFC322E,
1860 PCI_DEVICE_ID_CLRTY_FC_G6,
1861 PCI_SSDID_CLRTY_FC_322E,
1862 "Celerity FC 322E",
1863 "ATTO Celerity 322E Dual-Channel FC HBA",
1864 "ATTO Technology",
1865 EMLXS_INTX_SUPPORTED |
1866 EMLXS_MSI_SUPPORTED | EMLXS_MSIX_SUPPORTED |
1867 EMLXS_E2E_SUPPORTED | EMLXS_FC_GEN6,
1868 EMLXS_LANCER_CHIP,
1869 FW_NOT_PROVIDED,
1870 EMLXS_INTR_NO_LIMIT,
1871 EMLXS_SLI4_MASK,
1872 EMLXS_SINGLE_CHANNEL,
1873 NULL_PROG_TYPES,
1874 },
1875
1876 /* Lancer FCOE (Generic) */
1877 {
1878 OCe15100,
1879 PCI_DEVICE_ID_LANCER_FE,
1880 PCI_SSDID_OCe15100,
1881 "OCe15100",
1882 "Emulex OneConnect OCe15100 10Gb 1-port FCoE HBA",
1883 "Emulex",
1884 EMLXS_INTX_SUPPORTED | EMLXS_MSI_SUPPORTED |
1885 EMLXS_MSIX_SUPPORTED | EMLXS_E2E_SUPPORTED,
1886 EMLXS_LANCER_CHIP,
1887 FW_NOT_PROVIDED,
1888 EMLXS_INTR_NO_LIMIT,
1889 EMLXS_SLI4_MASK,
1890 EMLXS_SINGLE_CHANNEL,
1891 NULL_PROG_TYPES,
1892 },
1893
1894 /* Lancer FCOE (Generic Multi-Channel) */
|