xref: /dragonfly/sys/dev/netif/ath/ath_hal/ah_devid.h (revision b14ca477c2f404b36ad553a9e4f1b8b18836304e)
1 /*
2  * Copyright (c) 2002-2008 Sam Leffler, Errno Consulting
3  * Copyright (c) 2002-2008 Atheros Communications, Inc.
4  *
5  * Permission to use, copy, modify, and/or distribute this software for any
6  * purpose with or without fee is hereby granted, provided that the above
7  * copyright notice and this permission notice appear in all copies.
8  *
9  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
10  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
15  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16  *
17  * $FreeBSD$
18  */
19 
20 #ifndef _DEV_ATH_DEVID_H_
21 #define _DEV_ATH_DEVID_H_
22 
23 #define ATHEROS_VENDOR_ID     0x168c              /* Atheros PCI vendor ID */
24 /*
25  * NB: all Atheros-based devices should have a PCI vendor ID
26  *     of 0x168c, but some vendors, in their infinite wisdom
27  *     do not follow this so we must handle them specially.
28  */
29 #define   ATHEROS_3COM_VENDOR_ID        0xa727              /* 3Com 3CRPAG175 vendor ID */
30 #define   ATHEROS_3COM2_VENDOR_ID       0x10b7              /* 3Com 3CRDAG675 vendor ID */
31 
32 /* AR5210 (for reference) */
33 #define AR5210_DEFAULT          0x1107          /* No eeprom HW default */
34 #define AR5210_PROD             0x0007          /* Final device ID */
35 #define AR5210_AP               0x0207          /* Early AP11s */
36 
37 /* AR5211 */
38 #define AR5211_DEFAULT          0x1112          /* No eeprom HW default */
39 #define AR5311_DEVID            0x0011          /* Final ar5311 devid */
40 #define AR5211_DEVID            0x0012          /* Final ar5211 devid */
41 #define AR5211_LEGACY           0xff12          /* Original emulation board */
42 #define AR5211_FPGA11B          0xf11b          /* 11b emulation board */
43 
44 /* AR5212 */
45 #define AR5212_DEFAULT          0x1113          /* No eeprom HW default */
46 #define AR5212_DEVID            0x0013          /* Final ar5212 devid */
47 #define AR5212_FPGA             0xf013          /* Emulation board */
48 #define   AR5212_DEVID_IBM    0x1014          /* IBM minipci ID */
49 #define AR5212_AR5312_REV2      0x0052          /* AR5312 WMAC (AP31) */
50 #define AR5212_AR5312_REV7      0x0057          /* AR5312 WMAC (AP30-040) */
51 #define AR5212_AR2313_REV8      0x0058          /* AR2313 WMAC (AP43-030) */
52 #define AR5212_AR2315_REV6      0x0086          /* AR2315 WMAC (AP51-Light) */
53 #define AR5212_AR2315_REV7      0x0087          /* AR2315 WMAC (AP51-Full) */
54 #define AR5212_AR2317_REV1      0x0090          /* AR2317 WMAC (AP61-Light) */
55 #define AR5212_AR2317_REV2      0x0091          /* AR2317 WMAC (AP61-Full) */
56 
57 /* AR5212 compatible devid's also attach to 5212 */
58 #define   AR5212_DEVID_0014   0x0014
59 #define   AR5212_DEVID_0015   0x0015
60 #define   AR5212_DEVID_0016   0x0016
61 #define   AR5212_DEVID_0017   0x0017
62 #define   AR5212_DEVID_0018   0x0018
63 #define   AR5212_DEVID_0019   0x0019
64 #define AR5212_AR2413         0x001a          /* AR2413 aka Griffin-lite */
65 #define AR5212_AR5413                   0x001b          /* Eagle */
66 #define AR5212_AR5424                   0x001c          /* Condor (PCI express) */
67 #define AR5212_AR2417                   0x001d          /* Nala, PCI */
68 #define AR5212_DEVID_FF19     0xff19          /* XXX PCI express */
69 
70 /* AR5213 */
71 #define   AR5213_SREV_1_0               0x0055
72 #define   AR5213_SREV_REG               0x4020
73 
74 /* AR5416 compatible devid's  */
75 #define AR5416_DEVID_PCI      0x0023          /* AR5416 PCI (MB/CB) Owl */
76 #define AR5416_DEVID_PCIE     0x0024          /* AR5418 PCI-E (XB) Owl */
77 #define   AR5416_AR9130_DEVID     0x000b          /* AR9130 SoC WiMAC */
78 #define AR9160_DEVID_PCI      0x0027          /* AR9160 PCI Sowl */
79 #define AR9280_DEVID_PCI      0x0029          /* AR9280 PCI Merlin */
80 #define AR9280_DEVID_PCIE     0x002a          /* AR9220 PCI-E Merlin */
81 #define AR9285_DEVID_PCIE     0x002b          /* AR9285 PCI-E Kite */
82 #define   AR2427_DEVID_PCIE   0x002c              /* AR2427 PCI-E w/ 802.11n bonded out */
83 #define   AR9287_DEVID_PCI    0x002d              /* AR9227 PCI Kiwi */
84 #define   AR9287_DEVID_PCIE   0x002e              /* AR9287 PCI-E Kiwi */
85 
86 /* AR9300 */
87 #define   AR9300_DEVID_AR9380_PCIE      0x0030
88 #define   AR9300_DEVID_EMU_PCIE                   0xabcd
89 #define   AR9300_DEVID_AR9340           0x0031
90 #define   AR9300_DEVID_AR9485_PCIE      0x0032
91 #define   AR9300_DEVID_AR9580_PCIE      0x0033
92 #define   AR9300_DEVID_AR946X_PCIE      0x0034
93 #define   AR9300_DEVID_AR9330           0x0035
94 #define   AR9300_DEVID_QCA9565                    0x0036
95 #define   AR9300_DEVID_AR1111_PCIE      0x0037
96 #define   AR9300_DEVID_QCA955X                    0x0039
97 #define   AR9300_DEVID_QCA953X                    0x003d        /* Honey Bee */
98 
99 #define   AR_SUBVENDOR_ID_NOG 0x0e11              /* No 11G subvendor ID */
100 #define AR_SUBVENDOR_ID_NEW_A 0x7065              /* Update device to new RD */
101 #endif /* _DEV_ATH_DEVID_H */
102