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: releng/12.0/sys/dev/ath/ath_hal/ar9002/ar9285an.h 326695 2017-12-08 15:57:29Z pfg $
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