xref: /dflybsd-src/sys/dev/netif/bwn/siba/sibareg.h (revision 36537afdf393c6b7cadc37738706ed6fe8402758)
1cab56aceSImre Vadasz /*-
2cab56aceSImre Vadasz  * Copyright (c) 2007 Bruce M. Simpson.
3cab56aceSImre Vadasz  * All rights reserved.
4cab56aceSImre Vadasz  *
5cab56aceSImre Vadasz  * Redistribution and use in source and binary forms, with or without
6cab56aceSImre Vadasz  * modification, are permitted provided that the following conditions
7cab56aceSImre Vadasz  * are met:
8cab56aceSImre Vadasz  * 1. Redistributions of source code must retain the above copyright
9cab56aceSImre Vadasz  *    notice, this list of conditions and the following disclaimer.
10cab56aceSImre Vadasz  * 2. Redistributions in binary form must reproduce the above copyright
11cab56aceSImre Vadasz  *    notice, this list of conditions and the following disclaimer in the
12cab56aceSImre Vadasz  *    documentation and/or other materials provided with the distribution.
13cab56aceSImre Vadasz  *
14cab56aceSImre Vadasz  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
15cab56aceSImre Vadasz  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16cab56aceSImre Vadasz  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
17cab56aceSImre Vadasz  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
18cab56aceSImre Vadasz  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19cab56aceSImre Vadasz  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20cab56aceSImre Vadasz  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21cab56aceSImre Vadasz  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22cab56aceSImre Vadasz  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23cab56aceSImre Vadasz  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24cab56aceSImre Vadasz  * SUCH DAMAGE.
25cab56aceSImre Vadasz  *
267872accfSImre Vadász  * $FreeBSD: head/sys/dev/siba/sibareg.h 299541 2016-05-12 16:14:16Z adrian $
27cab56aceSImre Vadasz  */
28cab56aceSImre Vadasz 
29cab56aceSImre Vadasz /*
30cab56aceSImre Vadasz  * TODO: sprom
31cab56aceSImre Vadasz  * TODO: implement dma translation bits (if needed for system bus)
32cab56aceSImre Vadasz  */
33cab56aceSImre Vadasz 
34cab56aceSImre Vadasz #ifndef _SIBA_SIBAREG_H_
35cab56aceSImre Vadasz #define	_SIBA_SIBAREG_H_
36cab56aceSImre Vadasz 
37cab56aceSImre Vadasz #define	PCI_DEVICE_ID_BCM4401		0x4401
38cab56aceSImre Vadasz #define	PCI_DEVICE_ID_BCM4401B0		0x4402
39cab56aceSImre Vadasz #define	PCI_DEVICE_ID_BCM4401B1		0x170c
40cab56aceSImre Vadasz #define	SIBA_PCIR_BAR			PCIR_BAR(0)
41cab56aceSImre Vadasz #define	SIBA_CCID_BCM4710		0x4710
42cab56aceSImre Vadasz #define	SIBA_CCID_BCM4704		0x4704
43cab56aceSImre Vadasz #define	SIBA_CCID_SENTRY5		0x5365
44cab56aceSImre Vadasz 
45cab56aceSImre Vadasz /*
46cab56aceSImre Vadasz  * ChipCommon registers.
47cab56aceSImre Vadasz  */
48cab56aceSImre Vadasz #define	SIBA_CC_CHIPID			0x0000
49cab56aceSImre Vadasz #define	SIBA_CC_IDMASK			0x0000ffff
50cab56aceSImre Vadasz #define	SIBA_CC_ID(id)			(id & SIBA_CC_IDMASK)
51cab56aceSImre Vadasz #define	SIBA_CC_REVMASK			0x000f0000
52cab56aceSImre Vadasz #define	SIBA_CC_REVSHIFT		16
53cab56aceSImre Vadasz #define	SIBA_CC_REV(id)							\
54cab56aceSImre Vadasz 	((id & SIBA_CC_REVMASK) >> SIBA_CC_REVSHIFT)
55cab56aceSImre Vadasz #define	SIBA_CC_PKGMASK			0x00F00000
56cab56aceSImre Vadasz #define	SIBA_CC_PKGSHIFT		20
57cab56aceSImre Vadasz #define	SIBA_CC_PKG(id)							\
58cab56aceSImre Vadasz 	((id & SIBA_CC_PKGMASK) >> SIBA_CC_PKGSHIFT)
59cab56aceSImre Vadasz #define	SIBA_CC_NCORESMASK		0x0F000000
60cab56aceSImre Vadasz #define	SIBA_CC_NCORESSHIFT		24
61cab56aceSImre Vadasz #define	SIBA_CC_NCORES(id)						\
62cab56aceSImre Vadasz 	((id & SIBA_CC_NCORESMASK) >> SIBA_CC_NCORESSHIFT)
63cab56aceSImre Vadasz #define	SIBA_CC_CAPS			0x0004
64cab56aceSImre Vadasz #define	SIBA_CC_CAPS_PWCTL		0x00040000
65cab56aceSImre Vadasz #define	SIBA_CC_CAPS_PMU		0x10000000	/* PMU (rev >= 20) */
66cab56aceSImre Vadasz #define	SIBA_CC_CHIPCTL			0x0028		/* rev >= 11 */
67cab56aceSImre Vadasz #define	SIBA_CC_CHIPSTAT		0x002C		/* rev >= 11 */
68cab56aceSImre Vadasz #define	SIBA_CC_BCAST_ADDR		0x0050		/* Broadcast Address */
69cab56aceSImre Vadasz #define	SIBA_CC_BCAST_DATA		0x0054		/* Broadcast Data */
70cab56aceSImre Vadasz #define	SIBA_CC_PLLONDELAY		0x00B0		/* Rev >= 4 only */
71cab56aceSImre Vadasz #define	SIBA_CC_FREFSELDELAY		0x00B4		/* Rev >= 4 only */
72cab56aceSImre Vadasz #define	SIBA_CC_CLKSLOW			0x00b8		/* 6 <= Rev <= 9 only */
73cab56aceSImre Vadasz #define	SIBA_CC_CLKSLOW_SRC		0x00000007
74cab56aceSImre Vadasz #define	SIBA_CC_CLKSLOW_SRC_CRYSTAL	0x00000001
75cab56aceSImre Vadasz #define	SIBA_CC_CLKSLOW_FSLOW		0x00000800
76cab56aceSImre Vadasz #define	SIBA_CC_CLKSLOW_IPLL		0x00001000
77cab56aceSImre Vadasz #define	SIBA_CC_CLKSLOW_ENXTAL		0x00002000
78cab56aceSImre Vadasz #define	SIBA_CC_CLKSYSCTL		0x00C0		/* Rev >= 3 only */
79cab56aceSImre Vadasz #define	SIBA_CC_CLKCTLSTATUS		0x01e0
80cab56aceSImre Vadasz #define	SIBA_CC_CLKCTLSTATUS_HT		0x00010000
81cab56aceSImre Vadasz #define	SIBA_CC_UART0			0x0300		/* offset of UART0 */
82cab56aceSImre Vadasz #define	SIBA_CC_UART1			0x0400		/* offset of UART1 */
83cab56aceSImre Vadasz #define	SIBA_CC_PMUCTL			0x0600		/* PMU control */
847872accfSImre Vadász #define	SIBA_CC_PMUCTL_PLL_UPD		0x00000400
85cab56aceSImre Vadasz #define	SIBA_CC_PMUCTL_ILP		0xffff0000	/* mask */
86cab56aceSImre Vadasz #define	SIBA_CC_PMUCTL_NOILP		0x00000200
87cab56aceSImre Vadasz #define	SIBA_CC_PMUCTL_XF		0x0000007c	/* crystal freq */
88cab56aceSImre Vadasz #define	SIBA_CC_PMUCTL_XF_VAL(id)	((id & 0x0000007c) >> 2)
89cab56aceSImre Vadasz #define	SIBA_CC_PMUCAPS			0x0604
90cab56aceSImre Vadasz #define	SIBA_CC_PMUCAPS_REV		0x000000ff
91cab56aceSImre Vadasz #define	SIBA_CC_PMU_MINRES		0x0618
92cab56aceSImre Vadasz #define	SIBA_CC_PMU_MAXRES		0x061c
93cab56aceSImre Vadasz #define	SIBA_CC_PMU_TABSEL		0x0620
94cab56aceSImre Vadasz #define	SIBA_CC_PMU_DEPMSK		0x0624
95cab56aceSImre Vadasz #define	SIBA_CC_PMU_UPDNTM		0x0628
967872accfSImre Vadász #define	SIBA_CC_CHIPCTL_ADDR		0x0650
977872accfSImre Vadász #define	SIBA_CC_CHIPCTL_DATA		0x0654
98cab56aceSImre Vadasz #define	SIBA_CC_REGCTL_ADDR		0x0658
99cab56aceSImre Vadasz #define	SIBA_CC_REGCTL_DATA		0x065c
100cab56aceSImre Vadasz #define	SIBA_CC_PLLCTL_ADDR		0x0660
101cab56aceSImre Vadasz #define	SIBA_CC_PLLCTL_DATA		0x0664
102cab56aceSImre Vadasz 
103cab56aceSImre Vadasz #define	SIBA_CC_PMU0_PLL0		0
104cab56aceSImre Vadasz #define	SIBA_CC_PMU0_PLL0_PDIV_MSK	0x00000001
105cab56aceSImre Vadasz #define	SIBA_CC_PMU0_PLL0_PDIV_FREQ	25000
106cab56aceSImre Vadasz #define	SIBA_CC_PMU0_PLL1		1
107cab56aceSImre Vadasz #define	SIBA_CC_PMU0_PLL1_IMSK		0xf0000000
108cab56aceSImre Vadasz #define	SIBA_CC_PMU0_PLL1_FMSK		0x0fffff00
109cab56aceSImre Vadasz #define	SIBA_CC_PMU0_PLL1_STOPMOD	0x00000040
110cab56aceSImre Vadasz #define	SIBA_CC_PMU0_PLL2		2
111cab56aceSImre Vadasz #define	SIBA_CC_PMU0_PLL2_IMSKHI	0x0000000f
112cab56aceSImre Vadasz #define	SIBA_CC_PMU1_PLL0		0
113cab56aceSImre Vadasz #define	SIBA_CC_PMU1_PLL0_P1DIV		0x00f00000
114cab56aceSImre Vadasz #define	SIBA_CC_PMU1_PLL0_P2DIV		0x0f000000
1157872accfSImre Vadász #define	SIBA_CC_PMU1_PLL1		1
116cab56aceSImre Vadasz #define	SIBA_CC_PMU1_PLL2		2
117cab56aceSImre Vadasz #define	SIBA_CC_PMU1_PLL2_NDIVMODE	0x000e0000
118cab56aceSImre Vadasz #define	SIBA_CC_PMU1_PLL2_NDIVINT	0x1ff00000
119cab56aceSImre Vadasz #define	SIBA_CC_PMU1_PLL3		3
120cab56aceSImre Vadasz #define	SIBA_CC_PMU1_PLL3_NDIVFRAC	0x00ffffff
1217872accfSImre Vadász #define	SIBA_CC_PMU1_PLL4		4
122cab56aceSImre Vadasz #define	SIBA_CC_PMU1_PLL5		5
123cab56aceSImre Vadasz #define	SIBA_CC_PMU1_PLL5_CLKDRV	0xffffff00
124cab56aceSImre Vadasz 
125cab56aceSImre Vadasz #define	SIBA_CC_PMU0_DEFAULT_XTALFREQ	20000
126cab56aceSImre Vadasz #define	SIBA_CC_PMU1_DEFAULT_FREQ	15360
127cab56aceSImre Vadasz 
128cab56aceSImre Vadasz #define	SIBA_CC_PMU1_PLLTAB_ENTRY					\
129cab56aceSImre Vadasz {									\
130cab56aceSImre Vadasz 	{ 12000,  1, 3, 22,  0x9, 0xffffef },				\
131cab56aceSImre Vadasz 	{ 13000,  2, 1,  6,  0xb, 0x483483 },				\
132cab56aceSImre Vadasz 	{ 14400,  3, 1, 10,  0xa, 0x1c71c7 },				\
133cab56aceSImre Vadasz 	{ 15360,  4, 1,  5,  0xb, 0x755555 },				\
134cab56aceSImre Vadasz 	{ 16200,  5, 1, 10,  0x5, 0x6e9e06 },				\
135cab56aceSImre Vadasz 	{ 16800,  6, 1, 10,  0x5, 0x3cf3cf },				\
136cab56aceSImre Vadasz 	{ 19200,  7, 1,  9,  0x5, 0x17b425 },				\
137cab56aceSImre Vadasz 	{ 19800,  8, 1, 11,  0x4, 0xa57eb },				\
138cab56aceSImre Vadasz 	{ 20000,  9, 1, 11,  0x4, 0 },					\
139cab56aceSImre Vadasz 	{ 24000, 10, 3, 11,  0xa, 0 },					\
140cab56aceSImre Vadasz 	{ 25000, 11, 5, 16,  0xb, 0 },					\
141cab56aceSImre Vadasz 	{ 26000, 12, 1,  2, 0x10, 0xec4ec4 },				\
142cab56aceSImre Vadasz 	{ 30000, 13, 3,  8,  0xb, 0 },					\
143cab56aceSImre Vadasz 	{ 38400, 14, 1,  5,  0x4, 0x955555 },				\
144cab56aceSImre Vadasz 	{ 40000, 15, 1,  2,  0xb, 0 }					\
145cab56aceSImre Vadasz }
146cab56aceSImre Vadasz 
147cab56aceSImre Vadasz #define	SIBA_CC_PMU0_PLLTAB_ENTRY					\
148cab56aceSImre Vadasz {									\
149cab56aceSImre Vadasz 	{ 12000,  1, 73, 349525, }, { 13000,  2, 67, 725937, },		\
150cab56aceSImre Vadasz 	{ 14400,  3, 61, 116508, }, { 15360,  4, 57, 305834, },		\
151cab56aceSImre Vadasz 	{ 16200,  5, 54, 336579, }, { 16800,  6, 52, 399457, },		\
152cab56aceSImre Vadasz 	{ 19200,  7, 45, 873813, }, { 19800,  8, 44, 466033, },		\
153cab56aceSImre Vadasz 	{ 20000,  9, 44, 0,      }, { 25000, 10, 70, 419430, },		\
154cab56aceSImre Vadasz 	{ 26000, 11, 67, 725937, }, { 30000, 12, 58, 699050, },		\
155cab56aceSImre Vadasz 	{ 38400, 13, 45, 873813, }, { 40000, 14, 45, 0,      },		\
156cab56aceSImre Vadasz }
157cab56aceSImre Vadasz 
158cab56aceSImre Vadasz #define	SIBA_CC_PMU_4312_PA_REF		2
159cab56aceSImre Vadasz #define	SIBA_CC_PMU_4325_BURST		1
160cab56aceSImre Vadasz #define	SIBA_CC_PMU_4325_CLBURST	3
161cab56aceSImre Vadasz #define	SIBA_CC_PMU_4325_LN		10
162cab56aceSImre Vadasz #define	SIBA_CC_PMU_4325_CRYSTAL	13
163cab56aceSImre Vadasz #define	SIBA_CC_PMU_4325_RX_PWR		15
164cab56aceSImre Vadasz #define	SIBA_CC_PMU_4325_TX_PWR		16
165cab56aceSImre Vadasz #define	SIBA_CC_PMU_4325_LOGEN_PWR	18
166cab56aceSImre Vadasz #define	SIBA_CC_PMU_4325_AFE_PWR	19
167cab56aceSImre Vadasz #define	SIBA_CC_PMU_4325_BBPLL_PWR	20
168cab56aceSImre Vadasz #define	SIBA_CC_PMU_4325_HT		21
169cab56aceSImre Vadasz #define	SIBA_CC_PMU_4328_EXT_SWITCH_PWM	0
170cab56aceSImre Vadasz #define	SIBA_CC_PMU_4328_BB_SWITCH_PWM	1
171cab56aceSImre Vadasz #define	SIBA_CC_PMU_4328_BB_SWITCH_BURST	2
172cab56aceSImre Vadasz #define	SIBA_CC_PMU_4328_BB_EXT_SWITCH_BURST	3
173cab56aceSImre Vadasz #define	SIBA_CC_PMU_4328_ILP_REQUEST	4
174cab56aceSImre Vadasz #define	SIBA_CC_PMU_4328_RADSWITCH_PWM	5	/* radio switch */
175cab56aceSImre Vadasz #define	SIBA_CC_PMU_4328_RADSWITCH_BURST	6
176cab56aceSImre Vadasz #define	SIBA_CC_PMU_4328_ROM_SWITCH	7
177cab56aceSImre Vadasz #define	SIBA_CC_PMU_4328_PA_REF		8
178cab56aceSImre Vadasz #define	SIBA_CC_PMU_4328_RADIO		9
179cab56aceSImre Vadasz #define	SIBA_CC_PMU_4328_AFE		10
180cab56aceSImre Vadasz #define	SIBA_CC_PMU_4328_PLL		11
181cab56aceSImre Vadasz #define	SIBA_CC_PMU_4328_BG_FILTBYP	12
182cab56aceSImre Vadasz #define	SIBA_CC_PMU_4328_TX_FILTBYP	13
183cab56aceSImre Vadasz #define	SIBA_CC_PMU_4328_RX_FILTBYP	14
184cab56aceSImre Vadasz #define	SIBA_CC_PMU_4328_CRYSTAL_PU	15
185cab56aceSImre Vadasz #define	SIBA_CC_PMU_4328_CRYSTAL_EN	16
186cab56aceSImre Vadasz #define	SIBA_CC_PMU_4328_BB_PLL_FILTBYP	17
187cab56aceSImre Vadasz #define	SIBA_CC_PMU_4328_RF_PLL_FILTBYP	18
188cab56aceSImre Vadasz #define	SIBA_CC_PMU_4328_BB_PLL_PU	19
189cab56aceSImre Vadasz #define	SIBA_CC_PMU_5354_PA_REF		8
190cab56aceSImre Vadasz #define	SIBA_CC_PMU_5354_BB_PLL_PU	19
191cab56aceSImre Vadasz 
192cab56aceSImre Vadasz #define	SIBA_CC_PMU_4325_RES_UPDOWN					\
193cab56aceSImre Vadasz {									\
194cab56aceSImre Vadasz 	{ SIBA_CC_PMU_4325_CRYSTAL, 0x1501 }				\
195cab56aceSImre Vadasz }
196cab56aceSImre Vadasz 
197cab56aceSImre Vadasz #define	SIBA_CC_PMU_4325_RES_DEPEND					\
198cab56aceSImre Vadasz {									\
199cab56aceSImre Vadasz 	{ SIBA_CC_PMU_4325_HT, SIBA_CC_PMU_DEP_ADD,			\
200cab56aceSImre Vadasz 	  ((1 << SIBA_CC_PMU_4325_RX_PWR) |				\
201cab56aceSImre Vadasz 	   (1 << SIBA_CC_PMU_4325_TX_PWR) |				\
202cab56aceSImre Vadasz 	   (1 << SIBA_CC_PMU_4325_LOGEN_PWR) |				\
203cab56aceSImre Vadasz 	   (1 << SIBA_CC_PMU_4325_AFE_PWR)) }				\
204cab56aceSImre Vadasz }
205cab56aceSImre Vadasz 
206cab56aceSImre Vadasz #define	SIBA_CC_PMU_4328_RES_UPDOWN					\
207cab56aceSImre Vadasz {									\
208cab56aceSImre Vadasz 	{ SIBA_CC_PMU_4328_EXT_SWITCH_PWM, 0x0101 },			\
209cab56aceSImre Vadasz 	{ SIBA_CC_PMU_4328_BB_SWITCH_PWM, 0x1f01 },			\
210cab56aceSImre Vadasz 	{ SIBA_CC_PMU_4328_BB_SWITCH_BURST, 0x010f },			\
211cab56aceSImre Vadasz 	{ SIBA_CC_PMU_4328_BB_EXT_SWITCH_BURST, 0x0101 },		\
212cab56aceSImre Vadasz 	{ SIBA_CC_PMU_4328_ILP_REQUEST, 0x0202 },			\
213cab56aceSImre Vadasz 	{ SIBA_CC_PMU_4328_RADSWITCH_PWM, 0x0f01 },			\
214cab56aceSImre Vadasz 	{ SIBA_CC_PMU_4328_RADSWITCH_BURST, 0x0f01 },			\
215cab56aceSImre Vadasz 	{ SIBA_CC_PMU_4328_ROM_SWITCH, 0x0101 },			\
216cab56aceSImre Vadasz 	{ SIBA_CC_PMU_4328_PA_REF, 0x0f01 },				\
217cab56aceSImre Vadasz 	{ SIBA_CC_PMU_4328_RADIO, 0x0f01 },				\
218cab56aceSImre Vadasz 	{ SIBA_CC_PMU_4328_AFE, 0x0f01 },				\
219cab56aceSImre Vadasz 	{ SIBA_CC_PMU_4328_PLL, 0x0f01 },				\
220cab56aceSImre Vadasz 	{ SIBA_CC_PMU_4328_BG_FILTBYP, 0x0101 },			\
221cab56aceSImre Vadasz 	{ SIBA_CC_PMU_4328_TX_FILTBYP, 0x0101 },			\
222cab56aceSImre Vadasz 	{ SIBA_CC_PMU_4328_RX_FILTBYP, 0x0101 },			\
223cab56aceSImre Vadasz 	{ SIBA_CC_PMU_4328_CRYSTAL_PU, 0x0101 },			\
224cab56aceSImre Vadasz 	{ SIBA_CC_PMU_4328_CRYSTAL_EN, 0xa001 },			\
225cab56aceSImre Vadasz 	{ SIBA_CC_PMU_4328_BB_PLL_FILTBYP, 0x0101 },			\
226cab56aceSImre Vadasz 	{ SIBA_CC_PMU_4328_RF_PLL_FILTBYP, 0x0101 },			\
227cab56aceSImre Vadasz 	{ SIBA_CC_PMU_4328_BB_PLL_PU, 0x0701 },				\
228cab56aceSImre Vadasz }
229cab56aceSImre Vadasz 
230cab56aceSImre Vadasz #define	SIBA_CC_PMU_4328_RES_DEPEND					\
231cab56aceSImre Vadasz {									\
232cab56aceSImre Vadasz 	{ SIBA_CC_PMU_4328_ILP_REQUEST, SIBA_CC_PMU_DEP_SET,		\
233cab56aceSImre Vadasz 	  ((1 << SIBA_CC_PMU_4328_EXT_SWITCH_PWM) |			\
234cab56aceSImre Vadasz 	   (1 << SIBA_CC_PMU_4328_BB_SWITCH_PWM)) },			\
235cab56aceSImre Vadasz }
236cab56aceSImre Vadasz 
237cab56aceSImre Vadasz #define	SIBA_CC_CHST_4325_PMUTOP_2B	0x00000200
238cab56aceSImre Vadasz 
239cab56aceSImre Vadasz #define	SIBA_BAR0			0x80
240cab56aceSImre Vadasz #define	SIBA_IRQMASK			0x94
241cab56aceSImre Vadasz #define	SIBA_GPIO_IN			0xb0
242cab56aceSImre Vadasz #define	SIBA_GPIO_OUT			0xb4
243cab56aceSImre Vadasz #define	SIBA_GPIO_OUT_EN		0xb8
244cab56aceSImre Vadasz #define	SIBA_GPIO_CRYSTAL		0x40
245cab56aceSImre Vadasz #define	SIBA_GPIO_PLL			0x80
246cab56aceSImre Vadasz 
247cab56aceSImre Vadasz #define	SIBA_REGWIN(x)							\
248cab56aceSImre Vadasz 	(SIBA_ENUM_START + ((x) * SIBA_CORE_LEN))
249cab56aceSImre Vadasz #define	SIBA_CORE_LEN		0x00001000	/* Size of cfg per core */
250cab56aceSImre Vadasz #define	SIBA_CFG_END		0x00010000	/* Upper bound of cfg space */
251cab56aceSImre Vadasz #define	SIBA_MAX_CORES		(SIBA_CFG_END/SIBA_CORE_LEN)	/* #max cores */
252cab56aceSImre Vadasz #define	SIBA_ENUM_START			0x18000000U
253cab56aceSImre Vadasz #define	SIBA_ENUM_END			0x18010000U
254cab56aceSImre Vadasz 
255cab56aceSImre Vadasz #define	SIBA_DMA_TRANSLATION_MASK	0xc0000000
256cab56aceSImre Vadasz 
257cab56aceSImre Vadasz #define	SIBA_PCI_DMA			0x40000000U
258cab56aceSImre Vadasz #define	SIBA_TPS			0x0f18
259cab56aceSImre Vadasz #define	SIBA_TPS_BPFLAG			0x0000003f
260cab56aceSImre Vadasz #define	SIBA_IAS			0x0f90     /* Initiator Agent State */
261cab56aceSImre Vadasz #define	SIBA_IAS_INBAND_ERR		0x00020000
262cab56aceSImre Vadasz #define	SIBA_IAS_TIMEOUT		0x00040000
263cab56aceSImre Vadasz #define	SIBA_INTR_MASK			0x0f94
264cab56aceSImre Vadasz #define	SIBA_TGSLOW			0x0f98
265cab56aceSImre Vadasz #define	SIBA_TGSLOW_RESET		0x00000001	/* target state low */
266cab56aceSImre Vadasz #define	SIBA_TGSLOW_REJECT_22		0x00000002
267cab56aceSImre Vadasz #define	SIBA_TGSLOW_REJECT_23		0x00000004
268cab56aceSImre Vadasz #define	SIBA_TGSLOW_CLOCK		0x00010000
269cab56aceSImre Vadasz #define	SIBA_TGSLOW_FGC			0x00020000
270cab56aceSImre Vadasz #define	SIBA_TGSHIGH			0x0f9c
271cab56aceSImre Vadasz #define	SIBA_TGSHIGH_SERR		0x00000001
272cab56aceSImre Vadasz #define	SIBA_TGSHIGH_BUSY		0x00000004
273cab56aceSImre Vadasz #define	SIBA_TGSHIGH_DMA64		0x10000000
274cab56aceSImre Vadasz #define	SIBA_IMCFGLO			0x0fa8
275cab56aceSImre Vadasz #define	SIBA_IMCFGLO_SERTO		0x00000007
276cab56aceSImre Vadasz #define	SIBA_IMCFGLO_REQTO		0x00000070
277cab56aceSImre Vadasz #define	SIBA_IDLOW			0x0ff8
278cab56aceSImre Vadasz #define	SIBA_IDLOW_SSBREV		0xf0000000
279cab56aceSImre Vadasz #define	SIBA_IDLOW_SSBREV_22		0x00000000
280cab56aceSImre Vadasz #define	SIBA_IDLOW_SSBREV_23		0x10000000
281cab56aceSImre Vadasz #define	SIBA_IDLOW_SSBREV_24		0x40000000
282cab56aceSImre Vadasz #define	SIBA_IDLOW_SSBREV_25		0x50000000
283cab56aceSImre Vadasz #define	SIBA_IDLOW_SSBREV_26		0x60000000
284cab56aceSImre Vadasz #define	SIBA_IDLOW_SSBREV_27		0x70000000
285cab56aceSImre Vadasz #define	SIBA_IDHIGH			0x0ffc
286cab56aceSImre Vadasz #define	SIBA_IDHIGH_CORECODEMASK	0x00008FF0 /* Core Code */
287cab56aceSImre Vadasz #define	SIBA_IDHIGH_CORECODE_SHIFT	4
288cab56aceSImre Vadasz #define	SIBA_IDHIGH_CORECODE(id)					\
289cab56aceSImre Vadasz 	((id & SIBA_IDHIGH_CORECODEMASK) >> SIBA_IDHIGH_CORECODE_SHIFT)
290cab56aceSImre Vadasz /* Revision Code (low part) */
291cab56aceSImre Vadasz #define	SIBA_IDHIGH_REVLO		0x0000000f
292cab56aceSImre Vadasz /* Revision Code (high part) */
293cab56aceSImre Vadasz #define	SIBA_IDHIGH_REVHI		0x00007000
294cab56aceSImre Vadasz #define	SIBA_IDHIGH_REVHI_SHIFT	8
295cab56aceSImre Vadasz #define	SIBA_IDHIGH_REV(id)						\
296cab56aceSImre Vadasz 	((id & SIBA_IDHIGH_REVLO) | ((id & SIBA_IDHIGH_REVHI) >>	\
297cab56aceSImre Vadasz 	    SIBA_IDHIGH_REVHI_SHIFT))
298cab56aceSImre Vadasz #define	SIBA_IDHIGH_VENDORMASK		0xFFFF0000 /* Vendor Code */
299cab56aceSImre Vadasz #define	SIBA_IDHIGH_VENDOR_SHIFT	16
300cab56aceSImre Vadasz #define	SIBA_IDHIGH_VENDOR(id)						\
301cab56aceSImre Vadasz 	((id & SIBA_IDHIGH_VENDORMASK) >> SIBA_IDHIGH_VENDOR_SHIFT)
302cab56aceSImre Vadasz 
303cab56aceSImre Vadasz #define	SIBA_SPROMSIZE_R123		64
304cab56aceSImre Vadasz #define	SIBA_SPROMSIZE_R4		220
305cab56aceSImre Vadasz #define	SIBA_SPROM_BASE			0x1000
306cab56aceSImre Vadasz #define	SIBA_SPROM_REV_CRC		0xff00
3077872accfSImre Vadász 
308cab56aceSImre Vadasz #define	SIBA_SPROM1_MAC_80211BG		0x1048
309cab56aceSImre Vadasz #define	SIBA_SPROM1_MAC_ETH		0x104e
310cab56aceSImre Vadasz #define	SIBA_SPROM1_MAC_80211A		0x1054
311cab56aceSImre Vadasz #define	SIBA_SPROM1_ETHPHY		0x105a
312cab56aceSImre Vadasz #define	SIBA_SPROM1_ETHPHY_MII_ETH0	0x001f
313cab56aceSImre Vadasz #define	SIBA_SPROM1_ETHPHY_MII_ETH1	0x03e0
314cab56aceSImre Vadasz #define	SIBA_SPROM1_ETHPHY_MDIO_ETH0	(1 << 14)
315cab56aceSImre Vadasz #define	SIBA_SPROM1_ETHPHY_MDIO_ETH1	(1 << 15)
316cab56aceSImre Vadasz #define	SIBA_SPROM1_BOARDINFO		0x105c
317cab56aceSImre Vadasz #define	SIBA_SPROM1_BOARDINFO_BREV	0x00ff
318cab56aceSImre Vadasz #define	SIBA_SPROM1_BOARDINFO_CCODE	0x0f00
319cab56aceSImre Vadasz #define	SIBA_SPROM1_BOARDINFO_ANTBG	0x3000
320cab56aceSImre Vadasz #define	SIBA_SPROM1_BOARDINFO_ANTA	0xc000
321cab56aceSImre Vadasz #define	SIBA_SPROM1_PA0B0		0x105e
322cab56aceSImre Vadasz #define	SIBA_SPROM1_PA0B1		0x1060
323cab56aceSImre Vadasz #define	SIBA_SPROM1_PA0B2		0x1062
324cab56aceSImre Vadasz #define	SIBA_SPROM1_GPIOA		0x1064
325cab56aceSImre Vadasz #define	SIBA_SPROM1_GPIOA_P0		0x00ff
326cab56aceSImre Vadasz #define	SIBA_SPROM1_GPIOA_P1		0xff00
327cab56aceSImre Vadasz #define	SIBA_SPROM1_GPIOB		0x1066
328cab56aceSImre Vadasz #define	SIBA_SPROM1_GPIOB_P2		0x00ff
329cab56aceSImre Vadasz #define	SIBA_SPROM1_GPIOB_P3		0xff00
330cab56aceSImre Vadasz #define	SIBA_SPROM1_MAXPWR		0x1068
331cab56aceSImre Vadasz #define	SIBA_SPROM1_MAXPWR_BG		0x00ff
332cab56aceSImre Vadasz #define	SIBA_SPROM1_MAXPWR_A		0xff00
333cab56aceSImre Vadasz #define	SIBA_SPROM1_PA1B0		0x106a
334cab56aceSImre Vadasz #define	SIBA_SPROM1_PA1B1		0x106c
335cab56aceSImre Vadasz #define	SIBA_SPROM1_PA1B2		0x106e
336cab56aceSImre Vadasz #define	SIBA_SPROM1_TSSI		0x1070
337cab56aceSImre Vadasz #define	SIBA_SPROM1_TSSI_BG		0x00ff
338cab56aceSImre Vadasz #define	SIBA_SPROM1_TSSI_A		0xff00
339cab56aceSImre Vadasz #define	SIBA_SPROM1_BFLOW		0x1072
340cab56aceSImre Vadasz #define	SIBA_SPROM1_AGAIN		0x1074
341cab56aceSImre Vadasz #define	SIBA_SPROM1_AGAIN_BG		0x00ff
342cab56aceSImre Vadasz #define	SIBA_SPROM1_AGAIN_A		0xff00
3437872accfSImre Vadász 
344cab56aceSImre Vadasz #define	SIBA_SPROM2_BFHIGH		0x1038
3457872accfSImre Vadász 
346cab56aceSImre Vadasz #define	SIBA_SPROM3_MAC_80211BG		0x104a
3477872accfSImre Vadász 
348cab56aceSImre Vadasz #define	SIBA_SPROM4_MAC_80211BG		0x104c
349cab56aceSImre Vadasz #define	SIBA_SPROM4_ETHPHY		0x105a
350cab56aceSImre Vadasz #define	SIBA_SPROM4_ETHPHY_ET0A		0x001f
351cab56aceSImre Vadasz #define	SIBA_SPROM4_ETHPHY_ET1A		0x03e0
352cab56aceSImre Vadasz #define	SIBA_SPROM4_CCODE		0x1052
353cab56aceSImre Vadasz #define	SIBA_SPROM4_ANTAVAIL		0x105d
354cab56aceSImre Vadasz #define	SIBA_SPROM4_ANTAVAIL_A		0x00ff
355cab56aceSImre Vadasz #define	SIBA_SPROM4_ANTAVAIL_BG		0xff00
356cab56aceSImre Vadasz #define	SIBA_SPROM4_BFLOW		0x1044
357cab56aceSImre Vadasz #define	SIBA_SPROM4_AGAIN01		0x105e
358cab56aceSImre Vadasz #define	SIBA_SPROM4_AGAIN0		0x00ff
359cab56aceSImre Vadasz #define	SIBA_SPROM4_AGAIN1		0xff00
360cab56aceSImre Vadasz #define	SIBA_SPROM4_AGAIN23		0x1060
361cab56aceSImre Vadasz #define	SIBA_SPROM4_AGAIN2		0x00ff
362cab56aceSImre Vadasz #define	SIBA_SPROM4_AGAIN3		0xff00
3637872accfSImre Vadász #define	SIBA_SPROM4_TXPID2G01		0x0062
3647872accfSImre Vadász #define	 SIBA_SPROM4_TXPID2G0		0x00ff
3657872accfSImre Vadász #define	 SIBA_SPROM4_TXPID2G1		0xff00
3667872accfSImre Vadász #define	SIBA_SPROM4_TXPID2G23		0x0064
3677872accfSImre Vadász #define	 SIBA_SPROM4_TXPID2G2		0x00ff
3687872accfSImre Vadász #define	 SIBA_SPROM4_TXPID2G3		0xff00
3697872accfSImre Vadász #define	SIBA_SPROM4_TXPID5G01		0x0066
3707872accfSImre Vadász #define	 SIBA_SPROM4_TXPID5G0		0x00ff
3717872accfSImre Vadász #define	 SIBA_SPROM4_TXPID5G1		0xff00
3727872accfSImre Vadász #define	SIBA_SPROM4_TXPID5G23		0x0068
3737872accfSImre Vadász #define	 SIBA_SPROM4_TXPID5G2		0x00ff
3747872accfSImre Vadász #define	 SIBA_SPROM4_TXPID5G3		0xff00
3757872accfSImre Vadász #define	SIBA_SPROM4_TXPID5GL01		0x006a
3767872accfSImre Vadász #define	 SIBA_SPROM4_TXPID5GL0		0x00ff
3777872accfSImre Vadász #define	 SIBA_SPROM4_TXPID5GL1		0xff00
3787872accfSImre Vadász #define	SIBA_SPROM4_TXPID5GL23		0x006c
3797872accfSImre Vadász #define	 SIBA_SPROM4_TXPID5GL2		0x00ff
3807872accfSImre Vadász #define	 SIBA_SPROM4_TXPID5GL3		0xff00
3817872accfSImre Vadász #define	SIBA_SPROM4_TXPID5GH01		0x006e
3827872accfSImre Vadász #define	 SIBA_SPROM4_TXPID5GH0		0x00ff
3837872accfSImre Vadász #define	 SIBA_SPROM4_TXPID5GH1		0xff00
3847872accfSImre Vadász #define	SIBA_SPROM4_TXPID5GH23		0x0070
3857872accfSImre Vadász #define	 SIBA_SPROM4_TXPID5GH2		0x00ff
3867872accfSImre Vadász #define	 SIBA_SPROM4_TXPID5GH3		0xff00
387cab56aceSImre Vadasz #define	SIBA_SPROM4_BFHIGH		0x1046
388cab56aceSImre Vadasz #define	SIBA_SPROM4_MAXP_BG		0x1080
389cab56aceSImre Vadasz #define	SIBA_SPROM4_MAXP_BG_MASK	0x00ff
390cab56aceSImre Vadasz #define	SIBA_SPROM4_TSSI_BG		0xff00
391cab56aceSImre Vadasz #define	SIBA_SPROM4_MAXP_A		0x108a
392cab56aceSImre Vadasz #define	SIBA_SPROM4_MAXP_A_MASK		0x00ff
393cab56aceSImre Vadasz #define	SIBA_SPROM4_TSSI_A		0xff00
394cab56aceSImre Vadasz #define	SIBA_SPROM4_GPIOA		0x1056
395cab56aceSImre Vadasz #define	SIBA_SPROM4_GPIOA_P0		0x00ff
396cab56aceSImre Vadasz #define	SIBA_SPROM4_GPIOA_P1		0xff00
397cab56aceSImre Vadasz #define	SIBA_SPROM4_GPIOB		0x1058
398cab56aceSImre Vadasz #define	SIBA_SPROM4_GPIOB_P2		0x00ff
399cab56aceSImre Vadasz #define	SIBA_SPROM4_GPIOB_P3		0xff00
4007872accfSImre Vadász 
4017872accfSImre Vadász /* The following four blocks share the same structure */
402*36537afdSadrian #define	SIBA_SPROM4_PWR_INFO_CORE0	0x1080
403*36537afdSadrian #define	SIBA_SPROM4_PWR_INFO_CORE1	0x10AE
404*36537afdSadrian #define	SIBA_SPROM4_PWR_INFO_CORE2	0x10DC
405*36537afdSadrian #define	SIBA_SPROM4_PWR_INFO_CORE3	0x110A
4067872accfSImre Vadász 
4077872accfSImre Vadász #define	SIBA_SPROM4_2G_MAXP_ITSSI	0x00    /* 2 GHz ITSSI and 2 GHz Max Power */
4087872accfSImre Vadász #define	 SIBA_SPROM4_2G_MAXP		0x00FF
4097872accfSImre Vadász #define	 SIBA_SPROM4_2G_ITSSI		0xFF00
4107872accfSImre Vadász #define	 SIBA_SPROM4_2G_ITSSI_SHIFT	8
4117872accfSImre Vadász #define	SIBA_SPROM4_2G_PA_0		0x02    /* 2 GHz power amp */
4127872accfSImre Vadász #define	SIBA_SPROM4_2G_PA_1		0x04
4137872accfSImre Vadász #define	SIBA_SPROM4_2G_PA_2		0x06
4147872accfSImre Vadász #define	SIBA_SPROM4_2G_PA_3		0x08
4157872accfSImre Vadász #define	SIBA_SPROM4_5G_MAXP_ITSSI	0x0A    /* 5 GHz ITSSI and 5.3 GHz Max Power */
4167872accfSImre Vadász #define	 SIBA_SPROM4_5G_MAXP		0x00FF
4177872accfSImre Vadász #define	 SIBA_SPROM4_5G_ITSSI		0xFF00
4187872accfSImre Vadász #define	 SIBA_SPROM4_5G_ITSSI_SHIFT	8
4197872accfSImre Vadász #define	SIBA_SPROM4_5GHL_MAXP		0x0C    /* 5.2 GHz and 5.8 GHz Max Power */
4207872accfSImre Vadász #define	 SIBA_SPROM4_5GH_MAXP		0x00FF
4217872accfSImre Vadász #define	 SIBA_SPROM4_5GL_MAXP		0xFF00
4227872accfSImre Vadász #define	 SIBA_SPROM4_5GL_MAXP_SHIFT	8
4237872accfSImre Vadász #define	SIBA_SPROM4_5G_PA_0		0x0E    /* 5.3 GHz power amp */
4247872accfSImre Vadász #define	SIBA_SPROM4_5G_PA_1		0x10
4257872accfSImre Vadász #define	SIBA_SPROM4_5G_PA_2		0x12
4267872accfSImre Vadász #define	SIBA_SPROM4_5G_PA_3		0x14
4277872accfSImre Vadász #define	SIBA_SPROM4_5GL_PA_0		0x16    /* 5.2 GHz power amp */
4287872accfSImre Vadász #define	SIBA_SPROM4_5GL_PA_1		0x18
4297872accfSImre Vadász #define	SIBA_SPROM4_5GL_PA_2		0x1A
4307872accfSImre Vadász #define	SIBA_SPROM4_5GL_PA_3		0x1C
4317872accfSImre Vadász #define	SIBA_SPROM4_5GH_PA_0		0x1E    /* 5.8 GHz power amp */
4327872accfSImre Vadász #define	SIBA_SPROM4_5GH_PA_1		0x20
4337872accfSImre Vadász #define	SIBA_SPROM4_5GH_PA_2		0x22
4347872accfSImre Vadász #define	SIBA_SPROM4_5GH_PA_3		0x24
4357872accfSImre Vadász 
436cab56aceSImre Vadasz #define	SIBA_SPROM5_BFLOW		0x104a
437cab56aceSImre Vadasz #define	SIBA_SPROM5_BFHIGH		0x104c
438cab56aceSImre Vadasz #define	SIBA_SPROM5_MAC_80211BG		0x1052
439cab56aceSImre Vadasz #define	SIBA_SPROM5_CCODE		0x1044
440cab56aceSImre Vadasz #define	SIBA_SPROM5_GPIOA		0x1076
441cab56aceSImre Vadasz #define	SIBA_SPROM5_GPIOA_P0		0x00ff
442cab56aceSImre Vadasz #define	SIBA_SPROM5_GPIOA_P1		0xff00
443cab56aceSImre Vadasz #define	SIBA_SPROM5_GPIOB		0x1078
444cab56aceSImre Vadasz #define	SIBA_SPROM5_GPIOB_P2		0x00ff
445cab56aceSImre Vadasz #define	SIBA_SPROM5_GPIOB_P3		0xff00
4467872accfSImre Vadász 
447cab56aceSImre Vadasz #define	SIBA_SPROM8_BFLOW		0x1084
448cab56aceSImre Vadasz #define	SIBA_SPROM8_BFHIGH		0x1086
449cab56aceSImre Vadasz #define	SIBA_SPROM8_BFL2LO		0x1088
450cab56aceSImre Vadasz #define	SIBA_SPROM8_BFL2HI		0x108a
451cab56aceSImre Vadasz #define	SIBA_SPROM8_MAC_80211BG		0x108c
452cab56aceSImre Vadasz #define	SIBA_SPROM8_CCODE		0x1092
453cab56aceSImre Vadasz #define	SIBA_SPROM8_ANTAVAIL		0x109c
454cab56aceSImre Vadasz #define	SIBA_SPROM8_ANTAVAIL_A		0xff00
455cab56aceSImre Vadasz #define	SIBA_SPROM8_ANTAVAIL_BG		0x00ff
456cab56aceSImre Vadasz #define	SIBA_SPROM8_AGAIN01		0x109e
457cab56aceSImre Vadasz #define	SIBA_SPROM8_AGAIN0		0x00ff
458cab56aceSImre Vadasz #define	SIBA_SPROM8_AGAIN1		0xff00
459cab56aceSImre Vadasz #define	SIBA_SPROM8_GPIOA		0x1096
460cab56aceSImre Vadasz #define	SIBA_SPROM8_GPIOA_P0		0x00ff
461cab56aceSImre Vadasz #define	SIBA_SPROM8_GPIOA_P1		0xff00
462cab56aceSImre Vadasz #define	SIBA_SPROM8_GPIOB		0x1098
463cab56aceSImre Vadasz #define	SIBA_SPROM8_GPIOB_P2		0x00ff
464cab56aceSImre Vadasz #define	SIBA_SPROM8_GPIOB_P3		0xff00
465cab56aceSImre Vadasz #define	SIBA_SPROM8_AGAIN23		0x10a0
466cab56aceSImre Vadasz #define	SIBA_SPROM8_AGAIN2		0x00ff
467cab56aceSImre Vadasz #define	SIBA_SPROM8_AGAIN3		0xff00
468cab56aceSImre Vadasz #define	SIBA_SPROM8_RSSIPARM2G		0x10a4
469cab56aceSImre Vadasz #define	SIBA_SPROM8_RSSISMF2G		0x000f
470cab56aceSImre Vadasz #define	SIBA_SPROM8_RSSISMC2G		0x00f0
471cab56aceSImre Vadasz #define	SIBA_SPROM8_RSSISAV2G		0x0700	/* BITMASK */
472cab56aceSImre Vadasz #define	SIBA_SPROM8_BXA2G		0x1800	/* BITMASK */
473cab56aceSImre Vadasz #define	SIBA_SPROM8_RSSIPARM5G		0x10a6
474cab56aceSImre Vadasz #define	SIBA_SPROM8_RSSISMF5G		0x000f
475cab56aceSImre Vadasz #define	SIBA_SPROM8_RSSISMC5G		0x00f0
476cab56aceSImre Vadasz #define	SIBA_SPROM8_RSSISAV5G		0x0700	/* BITMASK */
477cab56aceSImre Vadasz #define	SIBA_SPROM8_BXA5G		0x1800	/* BITMASK */
478cab56aceSImre Vadasz #define	SIBA_SPROM8_TRI25G		0x10a8
479cab56aceSImre Vadasz #define	SIBA_SPROM8_TRI2G		0x00ff
480cab56aceSImre Vadasz #define	SIBA_SPROM8_TRI5G		0xff00
481cab56aceSImre Vadasz #define	SIBA_SPROM8_TRI5GHL		0x10aa
482cab56aceSImre Vadasz #define	SIBA_SPROM8_TRI5GL		0x00ff
483cab56aceSImre Vadasz #define	SIBA_SPROM8_TRI5GH		0xff00
484cab56aceSImre Vadasz #define	SIBA_SPROM8_RXPO		0x10ac
485cab56aceSImre Vadasz #define	SIBA_SPROM8_RXPO2G		0x00ff
486cab56aceSImre Vadasz #define	SIBA_SPROM8_RXPO5G		0xff00
4877872accfSImre Vadász 
4887872accfSImre Vadász /* The FEM blocks share the same structure */
489*36537afdSadrian #define	SIBA_SPROM8_FEM2G		0x10ae
490*36537afdSadrian #define	SIBA_SPROM8_FEM5G		0x10b0
4917872accfSImre Vadász #define	 SSB_SROM8_FEM_TSSIPOS		0x0001
4927872accfSImre Vadász #define	 SSB_SROM8_FEM_EXTPA_GAIN	0x0006
4937872accfSImre Vadász #define	 SSB_SROM8_FEM_PDET_RANGE	0x00F8
4947872accfSImre Vadász #define	 SSB_SROM8_FEM_TR_ISO		0x0700
4957872accfSImre Vadász #define	 SSB_SROM8_FEM_ANTSWLUT		0xF800
4967872accfSImre Vadász 
497cab56aceSImre Vadasz #define	SIBA_SPROM8_MAXP_BG		0x10c0
498cab56aceSImre Vadasz #define	SIBA_SPROM8_MAXP_BG_MASK	0x00ff
499cab56aceSImre Vadasz #define	SIBA_SPROM8_TSSI_BG		0xff00
500cab56aceSImre Vadasz #define	SIBA_SPROM8_PA0B0		0x10c2
501cab56aceSImre Vadasz #define	SIBA_SPROM8_PA0B1		0x10c4
502cab56aceSImre Vadasz #define	SIBA_SPROM8_PA0B2		0x10c6
503cab56aceSImre Vadasz #define	SIBA_SPROM8_MAXP_A		0x10c8
504cab56aceSImre Vadasz #define	SIBA_SPROM8_MAXP_A_MASK		0x00ff
505cab56aceSImre Vadasz #define	SIBA_SPROM8_TSSI_A		0xff00
506cab56aceSImre Vadasz #define	SIBA_SPROM8_MAXP_AHL		0x10ca
507cab56aceSImre Vadasz #define	SIBA_SPROM8_MAXP_AH_MASK	0x00ff
508cab56aceSImre Vadasz #define	SIBA_SPROM8_MAXP_AL_MASK	0xff00
509cab56aceSImre Vadasz #define	SIBA_SPROM8_PA1B0		0x10cc
510cab56aceSImre Vadasz #define	SIBA_SPROM8_PA1B1		0x10ce
511cab56aceSImre Vadasz #define	SIBA_SPROM8_PA1B2		0x10d0
512cab56aceSImre Vadasz #define	SIBA_SPROM8_PA1LOB0		0x10d2
513cab56aceSImre Vadasz #define	SIBA_SPROM8_PA1LOB1		0x10d4
514cab56aceSImre Vadasz #define	SIBA_SPROM8_PA1LOB2		0x10d6
515cab56aceSImre Vadasz #define	SIBA_SPROM8_PA1HIB0		0x10d8
516cab56aceSImre Vadasz #define	SIBA_SPROM8_PA1HIB1		0x10da
517cab56aceSImre Vadasz #define	SIBA_SPROM8_PA1HIB2		0x10dc
518cab56aceSImre Vadasz #define	SIBA_SPROM8_CCK2GPO		0x1140
519cab56aceSImre Vadasz #define	SIBA_SPROM8_OFDM2GPO		0x1142
520cab56aceSImre Vadasz #define	SIBA_SPROM8_OFDM5GPO		0x1146
521cab56aceSImre Vadasz #define	SIBA_SPROM8_OFDM5GLPO		0x114a
522cab56aceSImre Vadasz #define	SIBA_SPROM8_OFDM5GHPO		0x114e
523*36537afdSadrian #define	SIBA_SPROM8_CDDPO		0x1192
524*36537afdSadrian #define	SIBA_SPROM8_STBCPO		0x1194
525*36537afdSadrian #define	SIBA_SPROM8_BW40PO		0x1196
526*36537afdSadrian #define	SIBA_SPROM8_BWDUPPO		0x1198
5277872accfSImre Vadász 
5287872accfSImre Vadász /* There are 4 blocks with power info sharing the same layout */
529*36537afdSadrian #define	SIBA_SROM8_PWR_INFO_CORE0	0x10C0
530*36537afdSadrian #define	SIBA_SROM8_PWR_INFO_CORE1	0x10E0
531*36537afdSadrian #define	SIBA_SROM8_PWR_INFO_CORE2	0x1100
532*36537afdSadrian #define	SIBA_SROM8_PWR_INFO_CORE3	0x1120
5337872accfSImre Vadász 
5347872accfSImre Vadász #define	SIBA_SROM8_2G_MAXP_ITSSI	0x00
5357872accfSImre Vadász #define	 SIBA_SPROM8_2G_MAXP		0x00FF
5367872accfSImre Vadász #define	 SIBA_SPROM8_2G_ITSSI		0xFF00
5377872accfSImre Vadász #define	 SIBA_SPROM8_2G_ITSSI_SHIFT	8
5387872accfSImre Vadász #define	SIBA_SROM8_2G_PA_0		0x02    /* 2GHz power amp settings */
5397872accfSImre Vadász #define	SIBA_SROM8_2G_PA_1		0x04
5407872accfSImre Vadász #define	SIBA_SROM8_2G_PA_2		0x06
5417872accfSImre Vadász #define	SIBA_SROM8_5G_MAXP_ITSSI	0x08    /* 5GHz ITSSI and 5.3GHz Max Power */
5427872accfSImre Vadász #define	 SIBA_SPROM8_5G_MAXP		0x00FF
5437872accfSImre Vadász #define	 SIBA_SPROM8_5G_ITSSI		0xFF00
5447872accfSImre Vadász #define	 SIBA_SPROM8_5G_ITSSI_SHIFT	8
5457872accfSImre Vadász #define	SIBA_SPROM8_5GHL_MAXP		0x0A    /* 5.2GHz and 5.8GHz Max Power */
5467872accfSImre Vadász #define	 SIBA_SPROM8_5GH_MAXP		0x00FF
5477872accfSImre Vadász #define	 SIBA_SPROM8_5GL_MAXP		0xFF00
5487872accfSImre Vadász #define	 SIBA_SPROM8_5GL_MAXP_SHIFT	8
5497872accfSImre Vadász #define	SIBA_SROM8_5G_PA_0		0x0C    /* 5.3GHz power amp settings */
5507872accfSImre Vadász #define	SIBA_SROM8_5G_PA_1		0x0E
5517872accfSImre Vadász #define	SIBA_SROM8_5G_PA_2		0x10
5527872accfSImre Vadász #define	SIBA_SROM8_5GL_PA_0		0x12    /* 5.2GHz power amp settings */
5537872accfSImre Vadász #define	SIBA_SROM8_5GL_PA_1		0x14
5547872accfSImre Vadász #define	SIBA_SROM8_5GL_PA_2		0x16
5557872accfSImre Vadász #define	SIBA_SROM8_5GH_PA_0		0x18    /* 5.8GHz power amp settings */
5567872accfSImre Vadász #define	SIBA_SROM8_5GH_PA_1		0x1A
5577872accfSImre Vadász #define	SIBA_SROM8_5GH_PA_2		0x1C
558cab56aceSImre Vadasz 
559cab56aceSImre Vadasz #define	SIBA_BOARDVENDOR_DELL		0x1028
560cab56aceSImre Vadasz #define	SIBA_BOARDVENDOR_BCM		0x14e4
561cab56aceSImre Vadasz #define	SIBA_BOARD_BCM4309G		0x0421
562cab56aceSImre Vadasz #define	SIBA_BOARD_MP4318		0x044a
563cab56aceSImre Vadasz #define	SIBA_BOARD_BU4306		0x0416
564cab56aceSImre Vadasz #define	SIBA_BOARD_BU4309		0x040a
5657872accfSImre Vadász #define	SIBA_BOARD_BCM4321		0x046d
566cab56aceSImre Vadasz 
567cab56aceSImre Vadasz #define	SIBA_PCICORE_BCAST_ADDR		SIBA_CC_BCAST_ADDR
568cab56aceSImre Vadasz #define	SIBA_PCICORE_BCAST_DATA		SIBA_CC_BCAST_DATA
569cab56aceSImre Vadasz #define	SIBA_PCICORE_SBTOPCI0		0x0100
570cab56aceSImre Vadasz #define	SIBA_PCICORE_SBTOPCI1		0x0104
571cab56aceSImre Vadasz #define	SIBA_PCICORE_SBTOPCI2		0x0108
572cab56aceSImre Vadasz #define	SIBA_PCICORE_MDIO_CTL		0x0128
573cab56aceSImre Vadasz #define	SIBA_PCICORE_MDIO_DATA		0x012c
574cab56aceSImre Vadasz #define	SIBA_PCICORE_SBTOPCI_PREF	0x00000004
575cab56aceSImre Vadasz #define	SIBA_PCICORE_SBTOPCI_BURST	0x00000008
576cab56aceSImre Vadasz #define	SIBA_PCICORE_SBTOPCI_MRM	0x00000020
577cab56aceSImre Vadasz 
578cab56aceSImre Vadasz #define	SIBA_CHIPPACK_BCM4712S     1       /* Small 200pin 4712 */
579cab56aceSImre Vadasz 
580cab56aceSImre Vadasz #endif /* _SIBA_SIBAREG_H_ */
581