xref: /freebsd/sys/dev/ath/ath_hal/ar9002/ar9285an.h (revision cddbc3b40812213ff00041f79174cac0be360a2a)
1 /*-
2  * SPDX-License-Identifier: ISC
3  *
4  * Copyright (c) 2008-2009 Sam Leffler, Errno Consulting
5  * Copyright (c) 2008 Atheros Communications, Inc.
6  *
7  * Permission to use, copy, modify, and/or distribute this software for any
8  * purpose with or without fee is hereby granted, provided that the above
9  * copyright notice and this permission notice appear in all copies.
10  *
11  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
12  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
13  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
14  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
15  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
16  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
17  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
18  *
19  * $FreeBSD$
20  */
21 
22 #ifndef	__AR9285_AN_H__
23 #define	__AR9285_AN_H__
24 
25 /* AR9285 Analog register definitions */
26 
27 #define	AR9285_AN_RF2G1		0x7820
28 
29 #define	AR9285_AN_RF2G1_ENPACAL      0x00000800
30 #define	AR9285_AN_RF2G1_ENPACAL_S    11
31 #define	AR9285_AN_RF2G1_PDPADRV1     0x02000000
32 #define	AR9285_AN_RF2G1_PDPADRV1_S   25
33 #define	AR9285_AN_RF2G1_PDPADRV2     0x01000000
34 #define	AR9285_AN_RF2G1_PDPADRV2_S   24
35 #define	AR9285_AN_RF2G1_PDPAOUT      0x00800000
36 #define	AR9285_AN_RF2G1_PDPAOUT_S    23
37 
38 #define	AR9285_AN_RF2G2		0x7824
39 
40 #define	AR9285_AN_RF2G2_OFFCAL       0x00001000
41 #define	AR9285_AN_RF2G2_OFFCAL_S     12
42 
43 #define	AR9285_AN_RF2G3		0x7828
44 
45 #define	AR9285_AN_RF2G3_PDVCCOMP	0x02000000
46 #define	AR9285_AN_RF2G3_PDVCCOMP_S	25
47 #define	AR9285_AN_RF2G3_OB_0	0x00E00000
48 #define	AR9285_AN_RF2G3_OB_0_S	21
49 #define	AR9285_AN_RF2G3_OB_1	0x001C0000
50 #define	AR9285_AN_RF2G3_OB_1_S	18
51 #define	AR9285_AN_RF2G3_OB_2	0x00038000
52 #define	AR9285_AN_RF2G3_OB_2_S	15
53 #define	AR9285_AN_RF2G3_OB_3	0x00007000
54 #define	AR9285_AN_RF2G3_OB_3_S	12
55 #define	AR9285_AN_RF2G3_OB_4	0x00000E00
56 #define	AR9285_AN_RF2G3_OB_4_S	9
57 #define	AR9285_AN_RF2G3_DB1_0	0x000001C0
58 #define	AR9285_AN_RF2G3_DB1_0_S	6
59 #define	AR9285_AN_RF2G3_DB1_1	0x00000038
60 #define	AR9285_AN_RF2G3_DB1_1_S	3
61 #define	AR9285_AN_RF2G3_DB1_2	0x00000007
62 #define	AR9285_AN_RF2G3_DB1_2_S	0
63 
64 #define	AR9285_AN_RF2G4		0x782C
65 
66 #define	AR9285_AN_RF2G4_DB1_3	0xE0000000
67 #define	AR9285_AN_RF2G4_DB1_3_S	29
68 #define	AR9285_AN_RF2G4_DB1_4	0x1C000000
69 #define	AR9285_AN_RF2G4_DB1_4_S	26
70 
71 #define	AR9285_AN_RF2G4_DB2_0	0x03800000
72 #define	AR9285_AN_RF2G4_DB2_0_S	23
73 #define	AR9285_AN_RF2G4_DB2_1	0x00700000
74 #define	AR9285_AN_RF2G4_DB2_1_S	20
75 #define	AR9285_AN_RF2G4_DB2_2	0x000E0000
76 #define	AR9285_AN_RF2G4_DB2_2_S	17
77 #define	AR9285_AN_RF2G4_DB2_3	0x0001C000
78 #define	AR9285_AN_RF2G4_DB2_3_S	14
79 #define	AR9285_AN_RF2G4_DB2_4	0x00003800
80 #define	AR9285_AN_RF2G4_DB2_4_S	11
81 
82 #define	AR9285_AN_RF2G6		0x7834
83 
84 #define	AR9285_AN_RF2G6_CCOMP	0x00007800
85 #define	AR9285_AN_RF2G6_CCOMP_S	11
86 #define	AR9285_AN_RF2G6_OFFS	0x03f00000
87 #define	AR9285_AN_RF2G6_OFFS_S	20
88 
89 #define	AR9285_AN_RF2G7		0x7838
90 
91 #define	AR9285_AN_RF2G7_PWDDB	0x00000002
92 #define	AR9285_AN_RF2G7_PWDDB_S	1
93 #define	AR9285_AN_RF2G7_PADRVGN2TAB0	0xE0000000
94 #define	AR9285_AN_RF2G7_PADRVGN2TAB0_S	29
95 
96 #define	AR9285_AN_RF2G8		0x783C
97 
98 #define	AR9285_AN_RF2G8_PADRVGN2TAB0	0x0001C000
99 #define	AR9285_AN_RF2G8_PADRVGN2TAB0_S	14
100 
101 #define	AR9285_AN_RF2G9		0x7840
102 
103 #define	AR9285_AN_RXTXBB1	0x7854
104 
105 #define	AR9285_AN_RXTXBB1_PDRXTXBB1    0x00000020
106 #define	AR9285_AN_RXTXBB1_PDRXTXBB1_S  5
107 #define	AR9285_AN_RXTXBB1_PDV2I        0x00000080
108 #define	AR9285_AN_RXTXBB1_PDV2I_S      7
109 #define	AR9285_AN_RXTXBB1_PDDACIF      0x00000100
110 #define	AR9285_AN_RXTXBB1_PDDACIF_S    8
111 #define	AR9285_AN_RXTXBB1_SPARE9       0x00000001
112 #define	AR9285_AN_RXTXBB1_SPARE9_S     0
113 
114 #define	AR9285_AN_TOP2		0x7868
115 
116 #define	AR9285_AN_TOP3		0x786c
117 
118 #define	AR9285_AN_TOP3_XPABIAS_LVL      0x0000000C
119 #define	AR9285_AN_TOP3_XPABIAS_LVL_S    2
120 #define	AR9285_AN_TOP3_PWDDAC		0x00800000
121 #define	AR9285_AN_TOP3_PWDDAC_S		23
122 
123 #define	AR9285_AN_TOP4		0x7870
124 #define	AR9285_AN_TOP4_DEFAULT	0x10142c00
125 
126 #endif	/* __AR9285_AN_H__ */
127