1 /*-
2  * Copyright (c) 2014 Qualcomm Atheros.
3  * All rights reserved.
4  *
5  * Redistribution and use in source and binary forms, with or without
6  * modification, are permitted provided that the following conditions
7  * are met:
8  * 1. Redistributions of source code must retain the above copyright
9  *    notice, this list of conditions and the following disclaimer,
10  *    without modification.
11  * 2. Redistributions in binary form must reproduce at minimum a disclaimer
12  *    similar to the "NO WARRANTY" disclaimer below ("Disclaimer") and any
13  *    redistribution must be conditioned upon including a substantially
14  *    similar Disclaimer requirement for further binary redistribution.
15  *
16  * NO WARRANTY
17  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
18  * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
19  * LIMITED TO, THE IMPLIED WARRANTIES OF NONINFRINGEMENT, MERCHANTABILITY
20  * AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
21  * THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY,
22  * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
25  * IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
26  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
27  * THE POSSIBILITY OF SUCH DAMAGES.
28  *
29  * $FreeBSD$
30  */
31 
32 static const struct pci_device_id ath_pci_id_table[] = {
33 	{ PCI_VDEVICE(PCI_VENDOR_ID_ATHEROS, 0x0023) }, /* PCI   */
34 	{ PCI_VDEVICE(PCI_VENDOR_ID_ATHEROS, 0x0024) }, /* PCI-E */
35 	{ PCI_VDEVICE(PCI_VENDOR_ID_ATHEROS, 0x0027) }, /* PCI   */
36 	{ PCI_VDEVICE(PCI_VENDOR_ID_ATHEROS, 0x0029) }, /* PCI   */
37 	{ PCI_VDEVICE(PCI_VENDOR_ID_ATHEROS, 0x002A) }, /* PCI-E */
38 
39 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
40 			 0x002A,
41 			 PCI_VENDOR_ID_AZWAVE,
42 			 0x1C71),
43 	  .driver_data = ATH_PCI_D3_L1_WAR },
44 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
45 			 0x002A,
46 			 PCI_VENDOR_ID_FOXCONN,
47 			 0xE01F),
48 	  .driver_data = ATH_PCI_D3_L1_WAR },
49 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
50 			 0x002A,
51 			 0x11AD, /* LITEON */
52 			 0x6632),
53 	  .driver_data = ATH_PCI_D3_L1_WAR },
54 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
55 			 0x002A,
56 			 0x11AD, /* LITEON */
57 			 0x6642),
58 	  .driver_data = ATH_PCI_D3_L1_WAR },
59 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
60 			 0x002A,
61 			 PCI_VENDOR_ID_QMI,
62 			 0x0306),
63 	  .driver_data = ATH_PCI_D3_L1_WAR },
64 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
65 			 0x002A,
66 			 0x185F, /* WNC */
67 			 0x309D),
68 	  .driver_data = ATH_PCI_D3_L1_WAR },
69 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
70 			 0x002A,
71 			 0x10CF, /* Fujitsu */
72 			 0x147C),
73 	  .driver_data = ATH_PCI_D3_L1_WAR },
74 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
75 			 0x002A,
76 			 0x10CF, /* Fujitsu */
77 			 0x147D),
78 	  .driver_data = ATH_PCI_D3_L1_WAR },
79 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
80 			 0x002A,
81 			 0x10CF, /* Fujitsu */
82 			 0x1536),
83 	  .driver_data = ATH_PCI_D3_L1_WAR },
84 
85 	/* AR9285 card for Asus */
86 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
87 			 0x002B,
88 			 PCI_VENDOR_ID_AZWAVE,
89 			 0x2C37),
90 	  .driver_data = ATH_PCI_BT_ANT_DIV },
91 
92 	{ PCI_VDEVICE(PCI_VENDOR_ID_ATHEROS, 0x002B) }, /* PCI-E */
93 	{ PCI_VDEVICE(PCI_VENDOR_ID_ATHEROS, 0x002C) }, /* PCI-E 802.11n bonded out */
94 	{ PCI_VDEVICE(PCI_VENDOR_ID_ATHEROS, 0x002D) }, /* PCI   */
95 	{ PCI_VDEVICE(PCI_VENDOR_ID_ATHEROS, 0x002E) }, /* PCI-E */
96 
97 	/* Killer Wireless (3x3) */
98 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
99 			 0x0030,
100 			 0x1A56,
101 			 0x2000),
102 	  .driver_data = ATH_PCI_KILLER },
103 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
104 			 0x0030,
105 			 0x1A56,
106 			 0x2001),
107 	  .driver_data = ATH_PCI_KILLER },
108 
109 	{ PCI_VDEVICE(PCI_VENDOR_ID_ATHEROS, 0x0030) }, /* PCI-E  AR9300 */
110 
111 	/* PCI-E CUS198 */
112 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
113 			 0x0032,
114 			 PCI_VENDOR_ID_AZWAVE,
115 			 0x2086),
116 	  .driver_data = ATH_PCI_CUS198 | ATH_PCI_BT_ANT_DIV },
117 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
118 			 0x0032,
119 			 PCI_VENDOR_ID_AZWAVE,
120 			 0x1237),
121 	  .driver_data = ATH_PCI_CUS198 | ATH_PCI_BT_ANT_DIV },
122 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
123 			 0x0032,
124 			 PCI_VENDOR_ID_AZWAVE,
125 			 0x2126),
126 	  .driver_data = ATH_PCI_CUS198 | ATH_PCI_BT_ANT_DIV },
127 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
128 			 0x0032,
129 			 PCI_VENDOR_ID_AZWAVE,
130 			 0x126A),
131 	  .driver_data = ATH_PCI_CUS198 | ATH_PCI_BT_ANT_DIV },
132 
133 	/* PCI-E CUS230 */
134 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
135 			 0x0032,
136 			 PCI_VENDOR_ID_AZWAVE,
137 			 0x2152),
138 	  .driver_data = ATH_PCI_CUS230 | ATH_PCI_BT_ANT_DIV },
139 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
140 			 0x0032,
141 			 PCI_VENDOR_ID_FOXCONN,
142 			 0xE075),
143 	  .driver_data = ATH_PCI_CUS230 | ATH_PCI_BT_ANT_DIV },
144 
145 	/* WB225 */
146 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
147 			 0x0032,
148 			 PCI_VENDOR_ID_ATHEROS,
149 			 0x3119),
150 	  .driver_data = ATH_PCI_BT_ANT_DIV },
151 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
152 			 0x0032,
153 			 PCI_VENDOR_ID_ATHEROS,
154 			 0x3122),
155 	  .driver_data = ATH_PCI_BT_ANT_DIV },
156 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
157 			 0x0032,
158 			 0x185F, /* WNC */
159 			 0x3119),
160 	  .driver_data = ATH_PCI_BT_ANT_DIV },
161 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
162 			 0x0032,
163 			 0x185F, /* WNC */
164 			 0x3027),
165 	  .driver_data = ATH_PCI_BT_ANT_DIV },
166 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
167 			 0x0032,
168 			 PCI_VENDOR_ID_SAMSUNG,
169 			 0x4105),
170 	  .driver_data = ATH_PCI_BT_ANT_DIV },
171 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
172 			 0x0032,
173 			 PCI_VENDOR_ID_SAMSUNG,
174 			 0x4106),
175 	  .driver_data = ATH_PCI_BT_ANT_DIV },
176 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
177 			 0x0032,
178 			 PCI_VENDOR_ID_SAMSUNG,
179 			 0x410D),
180 	  .driver_data = ATH_PCI_BT_ANT_DIV },
181 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
182 			 0x0032,
183 			 PCI_VENDOR_ID_SAMSUNG,
184 			 0x410E),
185 	  .driver_data = ATH_PCI_BT_ANT_DIV },
186 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
187 			 0x0032,
188 			 PCI_VENDOR_ID_SAMSUNG,
189 			 0x410F),
190 	  .driver_data = ATH_PCI_BT_ANT_DIV },
191 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
192 			 0x0032,
193 			 PCI_VENDOR_ID_SAMSUNG,
194 			 0xC706),
195 	  .driver_data = ATH_PCI_BT_ANT_DIV },
196 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
197 			 0x0032,
198 			 PCI_VENDOR_ID_SAMSUNG,
199 			 0xC680),
200 	  .driver_data = ATH_PCI_BT_ANT_DIV },
201 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
202 			 0x0032,
203 			 PCI_VENDOR_ID_SAMSUNG,
204 			 0xC708),
205 	  .driver_data = ATH_PCI_BT_ANT_DIV },
206 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
207 			 0x0032,
208 			 PCI_VENDOR_ID_LENOVO,
209 			 0x3218),
210 	  .driver_data = ATH_PCI_BT_ANT_DIV },
211 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
212 			 0x0032,
213 			 PCI_VENDOR_ID_LENOVO,
214 			 0x3219),
215 	  .driver_data = ATH_PCI_BT_ANT_DIV },
216 
217 	/* AR9485 cards with PLL power-save disabled by default. */
218 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
219 			 0x0032,
220 			 PCI_VENDOR_ID_AZWAVE,
221 			 0x2C97),
222 	  .driver_data = ATH_PCI_NO_PLL_PWRSAVE },
223 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
224 			 0x0032,
225 			 PCI_VENDOR_ID_AZWAVE,
226 			 0x2100),
227 	  .driver_data = ATH_PCI_NO_PLL_PWRSAVE },
228 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
229 			 0x0032,
230 			 0x1C56, /* ASKEY */
231 			 0x4001),
232 	  .driver_data = ATH_PCI_NO_PLL_PWRSAVE },
233 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
234 			 0x0032,
235 			 0x11AD, /* LITEON */
236 			 0x6627),
237 	  .driver_data = ATH_PCI_NO_PLL_PWRSAVE },
238 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
239 			 0x0032,
240 			 0x11AD, /* LITEON */
241 			 0x6628),
242 	  .driver_data = ATH_PCI_NO_PLL_PWRSAVE },
243 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
244 			 0x0032,
245 			 PCI_VENDOR_ID_FOXCONN,
246 			 0xE04E),
247 	  .driver_data = ATH_PCI_NO_PLL_PWRSAVE },
248 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
249 			 0x0032,
250 			 PCI_VENDOR_ID_FOXCONN,
251 			 0xE04F),
252 	  .driver_data = ATH_PCI_NO_PLL_PWRSAVE },
253 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
254 			 0x0032,
255 			 0x144F, /* ASKEY */
256 			 0x7197),
257 	  .driver_data = ATH_PCI_NO_PLL_PWRSAVE },
258 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
259 			 0x0032,
260 			 0x1B9A, /* XAVI */
261 			 0x2000),
262 	  .driver_data = ATH_PCI_NO_PLL_PWRSAVE },
263 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
264 			 0x0032,
265 			 0x1B9A, /* XAVI */
266 			 0x2001),
267 	  .driver_data = ATH_PCI_NO_PLL_PWRSAVE },
268 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
269 			 0x0032,
270 			 PCI_VENDOR_ID_AZWAVE,
271 			 0x1186),
272 	  .driver_data = ATH_PCI_NO_PLL_PWRSAVE },
273 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
274 			 0x0032,
275 			 PCI_VENDOR_ID_AZWAVE,
276 			 0x1F86),
277 	  .driver_data = ATH_PCI_NO_PLL_PWRSAVE },
278 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
279 			 0x0032,
280 			 PCI_VENDOR_ID_AZWAVE,
281 			 0x1195),
282 	  .driver_data = ATH_PCI_NO_PLL_PWRSAVE },
283 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
284 			 0x0032,
285 			 PCI_VENDOR_ID_AZWAVE,
286 			 0x1F95),
287 	  .driver_data = ATH_PCI_NO_PLL_PWRSAVE },
288 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
289 			 0x0032,
290 			 0x1B9A, /* XAVI */
291 			 0x1C00),
292 	  .driver_data = ATH_PCI_NO_PLL_PWRSAVE },
293 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
294 			 0x0032,
295 			 0x1B9A, /* XAVI */
296 			 0x1C01),
297 	  .driver_data = ATH_PCI_NO_PLL_PWRSAVE },
298 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
299 			 0x0032,
300 			 PCI_VENDOR_ID_ASUSTEK,
301 			 0x850D),
302 	  .driver_data = ATH_PCI_NO_PLL_PWRSAVE },
303 
304 	{ PCI_VDEVICE(PCI_VENDOR_ID_ATHEROS, 0x0032) }, /* PCI-E  AR9485 */
305 	{ PCI_VDEVICE(PCI_VENDOR_ID_ATHEROS, 0x0033) }, /* PCI-E  AR9580 */
306 
307 	/* PCI-E CUS217 */
308 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
309 			 0x0034,
310 			 PCI_VENDOR_ID_AZWAVE,
311 			 0x2116),
312 	  .driver_data = ATH_PCI_CUS217 },
313 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
314 			 0x0034,
315 			 0x11AD, /* LITEON */
316 			 0x6661),
317 	  .driver_data = ATH_PCI_CUS217 },
318 
319 	/* AR9462 with WoW support */
320 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
321 			 0x0034,
322 			 PCI_VENDOR_ID_ATHEROS,
323 			 0x3117),
324 	  .driver_data = ATH_PCI_WOW },
325 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
326 			 0x0034,
327 			 PCI_VENDOR_ID_LENOVO,
328 			 0x3214),
329 	  .driver_data = ATH_PCI_WOW },
330 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
331 			 0x0034,
332 			 PCI_VENDOR_ID_ATTANSIC,
333 			 0x0091),
334 	  .driver_data = ATH_PCI_WOW },
335 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
336 			 0x0034,
337 			 PCI_VENDOR_ID_AZWAVE,
338 			 0x2110),
339 	  .driver_data = ATH_PCI_WOW },
340 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
341 			 0x0034,
342 			 PCI_VENDOR_ID_ASUSTEK,
343 			 0x850E),
344 	  .driver_data = ATH_PCI_WOW },
345 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
346 			 0x0034,
347 			 0x11AD, /* LITEON */
348 			 0x6631),
349 	  .driver_data = ATH_PCI_WOW },
350 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
351 			 0x0034,
352 			 0x11AD, /* LITEON */
353 			 0x6641),
354 	  .driver_data = ATH_PCI_WOW },
355 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
356 			 0x0034,
357 			 PCI_VENDOR_ID_HP,
358 			 0x1864),
359 	  .driver_data = ATH_PCI_WOW },
360 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
361 			 0x0034,
362 			 0x14CD, /* USI */
363 			 0x0063),
364 	  .driver_data = ATH_PCI_WOW },
365 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
366 			 0x0034,
367 			 0x14CD, /* USI */
368 			 0x0064),
369 	  .driver_data = ATH_PCI_WOW },
370 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
371 			 0x0034,
372 			 0x10CF, /* Fujitsu */
373 			 0x1783),
374 	  .driver_data = ATH_PCI_WOW },
375 
376 	/* Killer Wireless (2x2) */
377 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
378 			 0x0030,
379 			 0x1A56,
380 			 0x2003),
381 	  .driver_data = ATH_PCI_KILLER },
382 
383 	{ PCI_VDEVICE(PCI_VENDOR_ID_ATHEROS, 0x0034) }, /* PCI-E  AR9462 */
384 	{ PCI_VDEVICE(PCI_VENDOR_ID_ATHEROS, 0x0037) }, /* PCI-E  AR1111/AR9485 */
385 
386 	/* CUS252 */
387 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
388 			 0x0036,
389 			 PCI_VENDOR_ID_ATHEROS,
390 			 0x3028),
391 	  .driver_data = ATH_PCI_CUS252 |
392 			 ATH_PCI_AR9565_2ANT |
393 			 ATH_PCI_BT_ANT_DIV },
394 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
395 			 0x0036,
396 			 PCI_VENDOR_ID_AZWAVE,
397 			 0x2176),
398 	  .driver_data = ATH_PCI_CUS252 |
399 			 ATH_PCI_AR9565_2ANT |
400 			 ATH_PCI_BT_ANT_DIV },
401 
402 	/* WB335 1-ANT */
403 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
404 			 0x0036,
405 			 PCI_VENDOR_ID_FOXCONN,
406 			 0xE068),
407 	  .driver_data = ATH_PCI_AR9565_1ANT },
408 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
409 			 0x0036,
410 			 0x185F, /* WNC */
411 			 0xA119),
412 	  .driver_data = ATH_PCI_AR9565_1ANT },
413 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
414 			 0x0036,
415 			 0x11AD, /* LITEON */
416 			 0x0632),
417 	  .driver_data = ATH_PCI_AR9565_1ANT },
418 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
419 			 0x0036,
420 			 0x11AD, /* LITEON */
421 			 0x06B2),
422 	  .driver_data = ATH_PCI_AR9565_1ANT },
423 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
424 			 0x0036,
425 			 0x11AD, /* LITEON */
426 			 0x0842),
427 	  .driver_data = ATH_PCI_AR9565_1ANT },
428 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
429 			 0x0036,
430 			 0x11AD, /* LITEON */
431 			 0x6671),
432 	  .driver_data = ATH_PCI_AR9565_1ANT },
433 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
434 			 0x0036,
435 			 0x1B9A, /* XAVI */
436 			 0x2811),
437 	  .driver_data = ATH_PCI_AR9565_1ANT },
438 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
439 			 0x0036,
440 			 0x1B9A, /* XAVI */
441 			 0x2812),
442 	  .driver_data = ATH_PCI_AR9565_1ANT },
443 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
444 			 0x0036,
445 			 0x1B9A, /* XAVI */
446 			 0x28A1),
447 	  .driver_data = ATH_PCI_AR9565_1ANT },
448 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
449 			 0x0036,
450 			 PCI_VENDOR_ID_AZWAVE,
451 			 0x218A),
452 	  .driver_data = ATH_PCI_AR9565_1ANT },
453 
454 	/* WB335 1-ANT / Antenna Diversity */
455 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
456 			 0x0036,
457 			 PCI_VENDOR_ID_ATHEROS,
458 			 0x3025),
459 	  .driver_data = ATH_PCI_AR9565_1ANT | ATH_PCI_BT_ANT_DIV },
460 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
461 			 0x0036,
462 			 PCI_VENDOR_ID_ATHEROS,
463 			 0x3026),
464 	  .driver_data = ATH_PCI_AR9565_1ANT | ATH_PCI_BT_ANT_DIV },
465 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
466 			 0x0036,
467 			 PCI_VENDOR_ID_ATHEROS,
468 			 0x302B),
469 	  .driver_data = ATH_PCI_AR9565_1ANT | ATH_PCI_BT_ANT_DIV },
470 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
471 			 0x0036,
472 			 PCI_VENDOR_ID_FOXCONN,
473 			 0xE069),
474 	  .driver_data = ATH_PCI_AR9565_1ANT | ATH_PCI_BT_ANT_DIV },
475 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
476 			 0x0036,
477 			 0x185F, /* WNC */
478 			 0x3028),
479 	  .driver_data = ATH_PCI_AR9565_1ANT | ATH_PCI_BT_ANT_DIV },
480 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
481 			 0x0036,
482 			 0x11AD, /* LITEON */
483 			 0x0622),
484 	  .driver_data = ATH_PCI_AR9565_1ANT | ATH_PCI_BT_ANT_DIV },
485 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
486 			 0x0036,
487 			 0x11AD, /* LITEON */
488 			 0x0672),
489 	  .driver_data = ATH_PCI_AR9565_1ANT | ATH_PCI_BT_ANT_DIV },
490 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
491 			 0x0036,
492 			 0x11AD, /* LITEON */
493 			 0x0662),
494 	  .driver_data = ATH_PCI_AR9565_1ANT | ATH_PCI_BT_ANT_DIV },
495 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
496 			 0x0036,
497 			 0x11AD, /* LITEON */
498 			 0x06A2),
499 	  .driver_data = ATH_PCI_AR9565_1ANT | ATH_PCI_BT_ANT_DIV },
500 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
501 			 0x0036,
502 			 0x11AD, /* LITEON */
503 			 0x0682),
504 	  .driver_data = ATH_PCI_AR9565_1ANT | ATH_PCI_BT_ANT_DIV },
505 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
506 			 0x0036,
507 			 PCI_VENDOR_ID_AZWAVE,
508 			 0x213A),
509 	  .driver_data = ATH_PCI_AR9565_1ANT | ATH_PCI_BT_ANT_DIV },
510 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
511 			 0x0036,
512 			 PCI_VENDOR_ID_HP,
513 			 0x18E3),
514 	  .driver_data = ATH_PCI_AR9565_1ANT | ATH_PCI_BT_ANT_DIV },
515 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
516 			 0x0036,
517 			 PCI_VENDOR_ID_HP,
518 			 0x217F),
519 	  .driver_data = ATH_PCI_AR9565_1ANT | ATH_PCI_BT_ANT_DIV },
520 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
521 			 0x0036,
522 			 PCI_VENDOR_ID_HP,
523 			 0x2005),
524 	  .driver_data = ATH_PCI_AR9565_1ANT | ATH_PCI_BT_ANT_DIV },
525 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
526 			 0x0036,
527 			 PCI_VENDOR_ID_DELL,
528 			 0x020C),
529 	  .driver_data = ATH_PCI_AR9565_1ANT | ATH_PCI_BT_ANT_DIV },
530 
531 	/* WB335 2-ANT / Antenna-Diversity */
532 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
533 			 0x0036,
534 			 PCI_VENDOR_ID_SAMSUNG,
535 			 0x411A),
536 	  .driver_data = ATH_PCI_AR9565_2ANT | ATH_PCI_BT_ANT_DIV },
537 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
538 			 0x0036,
539 			 PCI_VENDOR_ID_SAMSUNG,
540 			 0x411B),
541 	  .driver_data = ATH_PCI_AR9565_2ANT | ATH_PCI_BT_ANT_DIV },
542 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
543 			 0x0036,
544 			 PCI_VENDOR_ID_SAMSUNG,
545 			 0x411C),
546 	  .driver_data = ATH_PCI_AR9565_2ANT | ATH_PCI_BT_ANT_DIV },
547 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
548 			 0x0036,
549 			 PCI_VENDOR_ID_SAMSUNG,
550 			 0x411D),
551 	  .driver_data = ATH_PCI_AR9565_2ANT | ATH_PCI_BT_ANT_DIV },
552 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
553 			 0x0036,
554 			 PCI_VENDOR_ID_SAMSUNG,
555 			 0x411E),
556 	  .driver_data = ATH_PCI_AR9565_2ANT | ATH_PCI_BT_ANT_DIV },
557 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
558 			 0x0036,
559 			 PCI_VENDOR_ID_ATHEROS,
560 			 0x3027),
561 	  .driver_data = ATH_PCI_AR9565_2ANT | ATH_PCI_BT_ANT_DIV },
562 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
563 			 0x0036,
564 			 PCI_VENDOR_ID_ATHEROS,
565 			 0x302C),
566 	  .driver_data = ATH_PCI_AR9565_2ANT | ATH_PCI_BT_ANT_DIV },
567 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
568 			 0x0036,
569 			 0x11AD, /* LITEON */
570 			 0x0642),
571 	  .driver_data = ATH_PCI_AR9565_2ANT | ATH_PCI_BT_ANT_DIV },
572 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
573 			 0x0036,
574 			 0x11AD, /* LITEON */
575 			 0x0652),
576 	  .driver_data = ATH_PCI_AR9565_2ANT | ATH_PCI_BT_ANT_DIV },
577 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
578 			 0x0036,
579 			 0x11AD, /* LITEON */
580 			 0x0612),
581 	  .driver_data = ATH_PCI_AR9565_2ANT | ATH_PCI_BT_ANT_DIV },
582 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
583 			 0x0036,
584 			 0x11AD, /* LITEON */
585 			 0x0832),
586 	  .driver_data = ATH_PCI_AR9565_2ANT | ATH_PCI_BT_ANT_DIV },
587 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
588 			 0x0036,
589 			 0x11AD, /* LITEON */
590 			 0x0692),
591 	  .driver_data = ATH_PCI_AR9565_2ANT | ATH_PCI_BT_ANT_DIV },
592 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
593 			 0x0036,
594 			 PCI_VENDOR_ID_AZWAVE,
595 			 0x2130),
596 	  .driver_data = ATH_PCI_AR9565_2ANT | ATH_PCI_BT_ANT_DIV },
597 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
598 			 0x0036,
599 			 PCI_VENDOR_ID_AZWAVE,
600 			 0x213B),
601 	  .driver_data = ATH_PCI_AR9565_2ANT | ATH_PCI_BT_ANT_DIV },
602 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
603 			 0x0036,
604 			 PCI_VENDOR_ID_AZWAVE,
605 			 0x2182),
606 	  .driver_data = ATH_PCI_AR9565_2ANT | ATH_PCI_BT_ANT_DIV },
607 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
608 			 0x0036,
609 			 0x144F, /* ASKEY */
610 			 0x7202),
611 	  .driver_data = ATH_PCI_AR9565_2ANT | ATH_PCI_BT_ANT_DIV },
612 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
613 			 0x0036,
614 			 0x1B9A, /* XAVI */
615 			 0x2810),
616 	  .driver_data = ATH_PCI_AR9565_2ANT | ATH_PCI_BT_ANT_DIV },
617 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
618 			 0x0036,
619 			 0x1B9A, /* XAVI */
620 			 0x28A2),
621 	  .driver_data = ATH_PCI_AR9565_2ANT | ATH_PCI_BT_ANT_DIV },
622 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
623 			 0x0036,
624 			 0x185F, /* WNC */
625 			 0x3027),
626 	  .driver_data = ATH_PCI_AR9565_2ANT | ATH_PCI_BT_ANT_DIV },
627 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
628 			 0x0036,
629 			 0x185F, /* WNC */
630 			 0xA120),
631 	  .driver_data = ATH_PCI_AR9565_2ANT | ATH_PCI_BT_ANT_DIV },
632 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
633 			 0x0036,
634 			 PCI_VENDOR_ID_FOXCONN,
635 			 0xE07F),
636 	  .driver_data = ATH_PCI_AR9565_2ANT | ATH_PCI_BT_ANT_DIV },
637 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
638 			 0x0036,
639 			 PCI_VENDOR_ID_FOXCONN,
640 			 0xE081),
641 	  .driver_data = ATH_PCI_AR9565_2ANT | ATH_PCI_BT_ANT_DIV },
642 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
643 			 0x0036,
644 			 PCI_VENDOR_ID_LENOVO,
645 			 0x3026),
646 	  .driver_data = ATH_PCI_AR9565_2ANT | ATH_PCI_BT_ANT_DIV },
647 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
648 			 0x0036,
649 			 PCI_VENDOR_ID_LENOVO,
650 			 0x4026),
651 	  .driver_data = ATH_PCI_AR9565_2ANT | ATH_PCI_BT_ANT_DIV },
652 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
653 			 0x0036,
654 			 PCI_VENDOR_ID_ASUSTEK,
655 			 0x85F2),
656 	  .driver_data = ATH_PCI_AR9565_2ANT | ATH_PCI_BT_ANT_DIV },
657 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_ATHEROS,
658 			 0x0036,
659 			 PCI_VENDOR_ID_DELL,
660 			 0x020E),
661 	  .driver_data = ATH_PCI_AR9565_2ANT | ATH_PCI_BT_ANT_DIV },
662 
663 	/* PCI-E AR9565 (WB335) */
664 	{ PCI_VDEVICE(PCI_VENDOR_ID_ATHEROS, 0x0036),
665 	  .driver_data = ATH_PCI_BT_ANT_DIV },
666 
667 	{ 0 }
668 };
669 
670