ar9300template_wasp_2.h revision 250007
1227825Stheraven/*
2227825Stheraven * Copyright (c) 2013 Qualcomm Atheros, Inc.
3227825Stheraven *
4227825Stheraven * Permission to use, copy, modify, and/or distribute this software for any
5227825Stheraven * purpose with or without fee is hereby granted, provided that the above
6227825Stheraven * copyright notice and this permission notice appear in all copies.
7227825Stheraven *
8227825Stheraven * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
9227825Stheraven * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
10227825Stheraven * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
11227825Stheraven * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
12227825Stheraven * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
13227825Stheraven * OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
14227825Stheraven * PERFORMANCE OF THIS SOFTWARE.
15227825Stheraven */
16227825Stheraven
17227825Stheraven/*
18227825Stheraven * READ THIS NOTICE!
19227825Stheraven *
20300770Sdim * Values defined in this file may only be changed under exceptional circumstances.
21227825Stheraven *
22227825Stheraven * Please ask Fiona Cain before making any changes.
23227825Stheraven */
24232924Stheraven
25232924Stheraven#ifndef __ar9300template_wasp_2_h__
26227825Stheraven#define __ar9300template_wasp_2_h__
27227825Stheravenstatic ar9300_eeprom_t ar9300_template_wasp_2=
28227825Stheraven{
29227825Stheraven
30227825Stheraven	2, //  eepromVersion;
31227825Stheraven
32227825Stheraven    ar9300_eeprom_template_wasp_2, //  templateVersion;
33227825Stheraven
34227825Stheraven	{0x00,0x03,0x7f,0x0,0x0,0x0}, //mac_addr[6];
35227825Stheraven
36232924Stheraven    //static  A_UINT8   custData[OSPREY_CUSTOMER_DATA_SIZE]=
37227825Stheraven
38227825Stheraven	{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
39227825Stheraven
40227825Stheraven    //static OSPREY_BASE_EEP_HEADER baseEepHeader=
41227825Stheraven
42227825Stheraven	{
43232924Stheraven		    {0,0x1f},	//   regDmn[2]; //Does this need to be outside of this structure, if it gets written after calibration
44232924Stheraven		    0x33,	//   txrxMask;  //4 bits tx and 4 bits rx
45227825Stheraven		    {AR9300_OPFLAGS_11G | AR9300_OPFLAGS_11A, 3},	//   opCapFlags;
46227825Stheraven		    0,		//   rfSilent;
47227825Stheraven		    0,		//   blueToothOptions;
48227825Stheraven		    0,		//   deviceCap;
49227825Stheraven		    4,		//   deviceType; // takes lower byte in eeprom location
50227825Stheraven		    OSPREY_PWR_TABLE_OFFSET,	//    pwrTableOffset; // offset in dB to be added to beginning of pdadc table in calibration
51227825Stheraven			{0,0},	//   params_for_tuning_caps[2];  //placeholder, get more details from Don
52227825Stheraven            0x0c,     //featureEnable; //bit0 - enable tx temp comp
53227825Stheraven                             //bit1 - enable tx volt comp
54227825Stheraven                             //bit2 - enable fastClock - default to 1
55232924Stheraven                             //bit3 - enable doubling - default to 1
56227825Stheraven 							 //bit4 - enable internal regulator - default to 0
57227825Stheraven    		0,       //miscConfiguration: bit0 - turn down drivestrength
58227825Stheraven			3,		// eepromWriteEnableGpio
59227825Stheraven			0,		// wlanDisableGpio
60227825Stheraven			8,		// wlanLedGpio
61227825Stheraven			0xff,		// rxBandSelectGpio
62232924Stheraven			0,			// txrxgain
63232924Stheraven            0,		//   swreg
64227825Stheraven	},
65227825Stheraven
66227825Stheraven
67227825Stheraven	//static OSPREY_MODAL_EEP_HEADER modalHeader2G=
68227825Stheraven	{
69227825Stheraven
70227825Stheraven		    0x220,			//  antCtrlCommon;                         // 4   idle, t1, t2, b (4 bits per setting)
71227825Stheraven		    0x88888,		//  antCtrlCommon2;                        // 4    ra1l1, ra2l1, ra1l2, ra2l2, ra12
72227825Stheraven		    {0x150,0x150,0x150},	//  antCtrlChain[OSPREY_MAX_CHAINS];       // 6   idle, t, r, rx1, rx12, b (2 bits each)
73227825Stheraven		    {0,0,0},			//   xatten1DB[OSPREY_MAX_CHAINS];           // 3  //xatten1_db for merlin (0xa20c/b20c 5:0)
74232924Stheraven		    {0,0,0},			//   xatten1Margin[OSPREY_MAX_CHAINS];          // 3  //xatten1_margin for merlin (0xa20c/b20c 16:12
75227825Stheraven			36,				//    tempSlope;
76227825Stheraven			0,				//    voltSlope;
77227825Stheraven		    {0,0,0,0,0}, // spurChans[OSPREY_EEPROM_MODAL_SPURS];  // spur channels in usual fbin coding format
78227825Stheraven		    {-1,0,0},			//    noiseFloorThreshCh[OSPREY_MAX_CHAINS]; // 3    //Check if the register is per chain
79227825Stheraven            {0, 0, 0, 0, 0, 0,0,0,0,0,0},               // reserved
80227825Stheraven            0,                                          // quick drop
81232924Stheraven		    0,				//   xpaBiasLvl;                            // 1
82232924Stheraven		    0x0e,			//   txFrameToDataStart;                    // 1
83227825Stheraven		    0x0e,			//   txFrameToPaOn;                         // 1
84227825Stheraven		    3,				//   txClip;                                     // 4 bits tx_clip, 4 bits dac_scale_cck
85227825Stheraven		    0,				//    antennaGain;                           // 1
86227825Stheraven		    0x2c,			//   switchSettling;                        // 1
87227825Stheraven		    -30,			//    adcDesiredSize;                        // 1
88227825Stheraven		    0,				//   txEndToXpaOff;                         // 1
89227825Stheraven		    0x2,			//   txEndToRxOn;                           // 1
90227825Stheraven		    0xe,			//   txFrameToXpaOn;                        // 1
91227825Stheraven		    28,				//   thresh62;                              // 1
92227825Stheraven			0x0c80C080,		//	 papdRateMaskHt20						// 4
93232924Stheraven  			0x0080C080,		//	 papdRateMaskHt40
94227825Stheraven		    0,				//   switchcomspdt;                         // 2
95227825Stheraven			0,				// bit: 0,1:chain0, 2,3:chain1, 4,5:chain2
96227825Stheraven			0,				//  rf_gain_cap
97227825Stheraven			0,				//  tx_gain_cap
98227825Stheraven			{0,0,0,0,0}    //futureModal[5];
99227825Stheraven	},
100227825Stheraven
101227825Stheraven	{
102232924Stheraven		0,									//   ant_div_control
103232924Stheraven			{0,0},					// base_ext1
104232924Stheraven			0,						// misc_enable
105227825Stheraven			{0,0,0,0,0,0,0,0},		// temp slop extension
106232924Stheraven		0,									// quick drop low
107227825Stheraven		0,									// quick drop high
108232924Stheraven	},
109232924Stheraven
110232924Stheraven	//static A_UINT8 calFreqPier2G[OSPREY_NUM_2G_CAL_PIERS]=
111232924Stheraven	{
112227825Stheraven		FREQ2FBIN(2412, 1),
113227825Stheraven		FREQ2FBIN(2437, 1),
114232924Stheraven		FREQ2FBIN(2472, 1)
115227825Stheraven	},
116227825Stheraven
117227825Stheraven	//static OSP_CAL_DATA_PER_FREQ_OP_LOOP calPierData2G[OSPREY_MAX_CHAINS][OSPREY_NUM_2G_CAL_PIERS]=
118227825Stheraven
119227825Stheraven	{	{{0,0,0,0,0,0},  {0,0,0,0,0,0},  {0,0,0,0,0,0}},
120227825Stheraven		{{0,0,0,0,0,0},  {0,0,0,0,0,0},  {0,0,0,0,0,0}},
121232924Stheraven		{{0,0,0,0,0,0},  {0,0,0,0,0,0},  {0,0,0,0,0,0}},
122232924Stheraven	},
123232924Stheraven
124227825Stheraven	//A_UINT8 calTarget_freqbin_Cck[OSPREY_NUM_2G_CCK_TARGET_POWERS];
125288943Sdim
126288943Sdim	{
127232924Stheraven		FREQ2FBIN(2412, 1),
128232924Stheraven		FREQ2FBIN(2484, 1)
129232924Stheraven	},
130227825Stheraven
131227825Stheraven	//static CAL_TARGET_POWER_LEG calTarget_freqbin_2G[OSPREY_NUM_2G_20_TARGET_POWERS]
132227825Stheraven	{
133227825Stheraven		FREQ2FBIN(2412, 1),
134232924Stheraven		FREQ2FBIN(2437, 1),
135227825Stheraven		FREQ2FBIN(2472, 1)
136232924Stheraven	},
137227825Stheraven
138227825Stheraven	//static   OSP_CAL_TARGET_POWER_HT  calTarget_freqbin_2GHT20[OSPREY_NUM_2G_20_TARGET_POWERS]
139227825Stheraven	{
140227825Stheraven		FREQ2FBIN(2412, 1),
141232924Stheraven		FREQ2FBIN(2437, 1),
142227825Stheraven		FREQ2FBIN(2472, 1)
143232924Stheraven	},
144227825Stheraven
145232924Stheraven	//static   OSP_CAL_TARGET_POWER_HT  calTarget_freqbin_2GHT40[OSPREY_NUM_2G_40_TARGET_POWERS]
146227825Stheraven	{
147227825Stheraven		FREQ2FBIN(2412, 1),
148232924Stheraven		FREQ2FBIN(2437, 1),
149227825Stheraven		FREQ2FBIN(2472, 1)
150232924Stheraven	},
151227825Stheraven
152288943Sdim	//static CAL_TARGET_POWER_LEG calTargetPowerCck[OSPREY_NUM_2G_CCK_TARGET_POWERS]=
153288943Sdim	{
154232924Stheraven		//1L-5L,5S,11L,11S
155232924Stheraven        {{36,36,36,36}},
156227825Stheraven	 	{{36,36,36,36}}
157227825Stheraven	 },
158227825Stheraven
159232924Stheraven	//static CAL_TARGET_POWER_LEG calTargetPower2G[OSPREY_NUM_2G_20_TARGET_POWERS]=
160232924Stheraven	{
161232924Stheraven        //6-24,36,48,54
162227825Stheraven		{{32,32,28,24}},
163288943Sdim		{{32,32,28,24}},
164288943Sdim		{{32,32,28,24}},
165227825Stheraven	},
166227825Stheraven
167227825Stheraven	//static   OSP_CAL_TARGET_POWER_HT  calTargetPower2GHT20[OSPREY_NUM_2G_20_TARGET_POWERS]=
168227825Stheraven	{
169232924Stheraven        //0_8_16,1-3_9-11_17-19,
170227825Stheraven        //      4,5,6,7,12,13,14,15,20,21,22,23
171232924Stheraven		{{32,32,32,32,28,20,32,32,28,20,32,32,28,20}},
172227825Stheraven		{{32,32,32,32,28,20,32,32,28,20,32,32,28,20}},
173232924Stheraven		{{32,32,32,32,28,20,32,32,28,20,32,32,28,20}},
174227825Stheraven	},
175227825Stheraven
176227825Stheraven	//static    OSP_CAL_TARGET_POWER_HT  calTargetPower2GHT40[OSPREY_NUM_2G_40_TARGET_POWERS]=
177227825Stheraven	{
178232924Stheraven        //0_8_16,1-3_9-11_17-19,
179227825Stheraven        //      4,5,6,7,12,13,14,15,20,21,22,23
180232924Stheraven		{{32,32,32,32,28,20,32,32,28,20,32,32,28,20}},
181227825Stheraven		{{32,32,32,32,28,20,32,32,28,20,32,32,28,20}},
182232924Stheraven		{{32,32,32,32,28,20,32,32,28,20,32,32,28,20}},
183227825Stheraven	},
184227825Stheraven
185227825Stheraven//static    A_UINT8            ctlIndex_2G[OSPREY_NUM_CTLS_2G]=
186227825Stheraven
187232924Stheraven	{
188232924Stheraven
189232924Stheraven		    0x11,
190227825Stheraven    		0x12,
191232924Stheraven    		0x15,
192227825Stheraven    		0x17,
193232924Stheraven    		0x41,
194232924Stheraven    		0x42,
195227825Stheraven   			0x45,
196232924Stheraven    		0x47,
197232924Stheraven   			0x31,
198227825Stheraven    		0x32,
199227825Stheraven    		0x35,
200232924Stheraven    		0x37
201227825Stheraven
202227825Stheraven    },
203227825Stheraven
204227825Stheraven//A_UINT8   ctl_freqbin_2G[OSPREY_NUM_CTLS_2G][OSPREY_NUM_BAND_EDGES_2G];
205227825Stheraven
206227825Stheraven	{
207232924Stheraven		{FREQ2FBIN(2412, 1),
208232924Stheraven		 FREQ2FBIN(2417, 1),
209232924Stheraven		 FREQ2FBIN(2457, 1),
210227825Stheraven		 FREQ2FBIN(2462, 1)},
211288943Sdim
212288943Sdim		{FREQ2FBIN(2412, 1),
213232924Stheraven		 FREQ2FBIN(2417, 1),
214232924Stheraven		 FREQ2FBIN(2462, 1),
215232924Stheraven		 0xFF},
216227825Stheraven
217227825Stheraven		{FREQ2FBIN(2412, 1),
218227825Stheraven		 FREQ2FBIN(2417, 1),
219227825Stheraven		 FREQ2FBIN(2462, 1),
220232924Stheraven		 0xFF},
221227825Stheraven
222232924Stheraven		{FREQ2FBIN(2422, 1),
223227825Stheraven		 FREQ2FBIN(2427, 1),
224227825Stheraven		 FREQ2FBIN(2447, 1),
225227825Stheraven		 FREQ2FBIN(2452, 1)},
226227825Stheraven
227232924Stheraven		{/*Data[4].ctlEdges[0].bChannel*/FREQ2FBIN(2412, 1),
228227825Stheraven		/*Data[4].ctlEdges[1].bChannel*/FREQ2FBIN(2417, 1),
229232924Stheraven		/*Data[4].ctlEdges[2].bChannel*/FREQ2FBIN(2472, 1),
230227825Stheraven		/*Data[4].ctlEdges[3].bChannel*/FREQ2FBIN(2484, 1)},
231232924Stheraven
232227825Stheraven		{/*Data[5].ctlEdges[0].bChannel*/FREQ2FBIN(2412, 1),
233227825Stheraven		 /*Data[5].ctlEdges[1].bChannel*/FREQ2FBIN(2417, 1),
234232924Stheraven		 /*Data[5].ctlEdges[2].bChannel*/FREQ2FBIN(2472, 1),
235227825Stheraven		 0},
236232924Stheraven
237227825Stheraven		{/*Data[6].ctlEdges[0].bChannel*/FREQ2FBIN(2412, 1),
238288943Sdim		 /*Data[6].ctlEdges[1].bChannel*/FREQ2FBIN(2417, 1),
239288943Sdim		 FREQ2FBIN(2472, 1),
240232924Stheraven		 0},
241232924Stheraven
242227825Stheraven		{/*Data[7].ctlEdges[0].bChannel*/FREQ2FBIN(2422, 1),
243227825Stheraven		 /*Data[7].ctlEdges[1].bChannel*/FREQ2FBIN(2427, 1),
244227825Stheraven		 /*Data[7].ctlEdges[2].bChannel*/FREQ2FBIN(2447, 1),
245232924Stheraven		 /*Data[7].ctlEdges[3].bChannel*/FREQ2FBIN(2462, 1)},
246232924Stheraven
247232924Stheraven		{/*Data[8].ctlEdges[0].bChannel*/FREQ2FBIN(2412, 1),
248227825Stheraven		 /*Data[8].ctlEdges[1].bChannel*/FREQ2FBIN(2417, 1),
249288943Sdim		 /*Data[8].ctlEdges[2].bChannel*/FREQ2FBIN(2472, 1),
250288943Sdim		 0},
251227825Stheraven
252227825Stheraven		{/*Data[9].ctlEdges[0].bChannel*/FREQ2FBIN(2412, 1),
253227825Stheraven		 /*Data[9].ctlEdges[1].bChannel*/FREQ2FBIN(2417, 1),
254227825Stheraven		 /*Data[9].ctlEdges[2].bChannel*/FREQ2FBIN(2472, 1),
255232924Stheraven		 0},
256227825Stheraven
257232924Stheraven		{/*Data[10].ctlEdges[0].bChannel*/FREQ2FBIN(2412, 1),
258227825Stheraven		 /*Data[10].ctlEdges[1].bChannel*/FREQ2FBIN(2417, 1),
259232924Stheraven		 /*Data[10].ctlEdges[2].bChannel*/FREQ2FBIN(2472, 1),
260227825Stheraven		 0},
261227825Stheraven
262227825Stheraven		{/*Data[11].ctlEdges[0].bChannel*/FREQ2FBIN(2422, 1),
263227825Stheraven		 /*Data[11].ctlEdges[1].bChannel*/FREQ2FBIN(2427, 1),
264232924Stheraven		 /*Data[11].ctlEdges[2].bChannel*/FREQ2FBIN(2447, 1),
265227825Stheraven		 /*Data[11].ctlEdges[3].bChannel*/FREQ2FBIN(2462, 1)}
266232924Stheraven	},
267227825Stheraven
268232924Stheraven
269227825Stheraven//OSP_CAL_CTL_DATA_2G   ctlPowerData_2G[OSPREY_NUM_CTLS_2G];
270227825Stheraven
271227825Stheraven#if AH_BYTE_ORDER == AH_BIG_ENDIAN
272227825Stheraven    {
273232924Stheraven
274232924Stheraven	    {{{0, 60}, {1, 60}, {0, 60}, {0, 60}}},
275232924Stheraven	    {{{0, 60}, {1, 60}, {0, 60}, {0, 60}}},
276227825Stheraven	    {{{1, 60}, {0, 60}, {0, 60}, {1, 60}}},
277232924Stheraven
278227825Stheraven	    {{{1, 60}, {0, 60}, {0, 60}, {0, 60}}},
279232924Stheraven	    {{{0, 60}, {1, 60}, {0, 60}, {0, 60}}},
280232924Stheraven	    {{{0, 60}, {1, 60}, {0, 60}, {0, 60}}},
281227825Stheraven
282232924Stheraven	    {{{0, 60}, {1, 60}, {1, 60}, {0, 60}}},
283232924Stheraven	    {{{0, 60}, {1, 60}, {0, 60}, {0, 60}}},
284227825Stheraven	    {{{0, 60}, {1, 60}, {0, 60}, {0, 60}}},
285227825Stheraven
286232924Stheraven	    {{{0, 60}, {1, 60}, {0, 60}, {0, 60}}},
287227825Stheraven	    {{{0, 60}, {1, 60}, {1, 60}, {1, 60}}},
288227825Stheraven	    {{{0, 60}, {1, 60}, {1, 60}, {1, 60}}},
289227825Stheraven
290227825Stheraven    },
291227825Stheraven#else
292227825Stheraven	{
293232924Stheraven	    {{{60, 0}, {60, 1}, {60, 0}, {60, 0}}},
294232924Stheraven	    {{{60, 0}, {60, 1}, {60, 0}, {60, 0}}},
295232924Stheraven	    {{{60, 1}, {60, 0}, {60, 0}, {60, 1}}},
296227825Stheraven
297288943Sdim	    {{{60, 1}, {60, 0}, {60, 0}, {60, 0}}},
298288943Sdim	    {{{60, 0}, {60, 1}, {60, 0}, {60, 0}}},
299232924Stheraven	    {{{60, 0}, {60, 1}, {60, 0}, {60, 0}}},
300232924Stheraven
301232924Stheraven	    {{{60, 0}, {60, 1}, {60, 1}, {60, 0}}},
302227825Stheraven	    {{{60, 0}, {60, 1}, {60, 0}, {60, 0}}},
303227825Stheraven	    {{{60, 0}, {60, 1}, {60, 0}, {60, 0}}},
304227825Stheraven
305227825Stheraven	    {{{60, 0}, {60, 1}, {60, 0}, {60, 0}}},
306232924Stheraven	    {{{60, 0}, {60, 1}, {60, 1}, {60, 1}}},
307227825Stheraven	    {{{60, 0}, {60, 1}, {60, 1}, {60, 1}}},
308232924Stheraven	},
309227825Stheraven#endif
310227825Stheraven
311227825Stheraven//static    OSPREY_MODAL_EEP_HEADER   modalHeader5G=
312227825Stheraven
313232924Stheraven	{
314227825Stheraven
315232924Stheraven		    0x440,			//  antCtrlCommon;                         // 4   idle, t1, t2, b (4 bits per setting)
316227825Stheraven		    0x11111,		//  antCtrlCommon2;                        // 4    ra1l1, ra2l1, ra1l2, ra2l2, ra12
317232924Stheraven		    {0x000,0x000,0x000},	//  antCtrlChain[OSPREY_MAX_CHAINS];       // 6   idle, t, r, rx1, rx12, b (2 bits each)
318227825Stheraven		    {0,0,0},			//   xatten1DB[OSPREY_MAX_CHAINS];           // 3  //xatten1_db for merlin (0xa20c/b20c 5:0)
319227825Stheraven		    {0,0,0},			//   xatten1Margin[OSPREY_MAX_CHAINS];          // 3  //xatten1_margin for merlin (0xa20c/b20c 16:12
320232924Stheraven			68,				//    tempSlope;
321227825Stheraven			0,				//    voltSlope;
322232924Stheraven		    {0,0,0,0,0}, // spurChans[OSPREY_EEPROM_MODAL_SPURS];  // spur channels in usual fbin coding format
323227825Stheraven		    {-1,0,0},			//    noiseFloorThreshCh[OSPREY_MAX_CHAINS]; // 3    //Check if the register is per chain
324288943Sdim			{0, 0, 0, 0, 0, 0,0,0,0,0,0},				// reserved
325288943Sdim			0,											// quick drop
326232924Stheraven		    0,				//   xpaBiasLvl;                            // 1
327232924Stheraven		    0x0e,			//   txFrameToDataStart;                    // 1
328227825Stheraven		    0x0e,			//   txFrameToPaOn;                         // 1
329227825Stheraven		    3,				//   txClip;                                     // 4 bits tx_clip, 4 bits dac_scale_cck
330227825Stheraven		    0,				//    antennaGain;                           // 1
331232924Stheraven		    0x2d,			//   switchSettling;                        // 1
332232924Stheraven		    -30,			//    adcDesiredSize;                        // 1
333232924Stheraven		    0,				//   txEndToXpaOff;                         // 1
334227825Stheraven		    0x2,			//   txEndToRxOn;                           // 1
335288943Sdim		    0xe,			//   txFrameToXpaOn;                        // 1
336288943Sdim		    28,				//   thresh62;                              // 1
337227825Stheraven  			0x0cf0e0e0,		//	 papdRateMaskHt20						// 4
338227825Stheraven  			0x6cf0e0e0,		//	 papdRateMaskHt40						// 4
339227825Stheraven		    0,				//   switchcomspdt;                         // 2
340227825Stheraven			0,				// bit: 0,1:chain0, 2,3:chain1, 4,5:chain2
341232924Stheraven			0,				//  rf_gain_cap
342227825Stheraven			0,				//  tx_gain_cap
343232924Stheraven			{0,0,0,0,0}    //futureModal[5];
344227825Stheraven	},
345232924Stheraven
346227825Stheraven	{			// base_ext2
347227825Stheraven		0,
348227825Stheraven		0,
349227825Stheraven		{0,0,0},
350232924Stheraven		{0,0,0},
351227825Stheraven		{0,0,0},
352232924Stheraven		{0,0,0}
353227825Stheraven	},
354232924Stheraven
355227825Stheraven//static    A_UINT8            calFreqPier5G[OSPREY_NUM_5G_CAL_PIERS]=
356227825Stheraven	{
357227825Stheraven		    //pPiers[0] =
358227825Stheraven		    FREQ2FBIN(5180, 0),
359232924Stheraven		    //pPiers[1] =
360232924Stheraven		    FREQ2FBIN(5220, 0),
361232924Stheraven		    //pPiers[2] =
362227825Stheraven		    FREQ2FBIN(5320, 0),
363232924Stheraven		    //pPiers[3] =
364227825Stheraven		    FREQ2FBIN(5400, 0),
365232924Stheraven		    //pPiers[4] =
366232924Stheraven		    FREQ2FBIN(5500, 0),
367227825Stheraven		    //pPiers[5] =
368232924Stheraven		    FREQ2FBIN(5600, 0),
369232924Stheraven		    //pPiers[6] =
370227825Stheraven		    FREQ2FBIN(5725, 0),
371227825Stheraven    		//pPiers[7] =
372232924Stheraven    		FREQ2FBIN(5825, 0)
373227825Stheraven	},
374227825Stheraven
375227825Stheraven//static    OSP_CAL_DATA_PER_FREQ_OP_LOOP calPierData5G[OSPREY_MAX_CHAINS][OSPREY_NUM_5G_CAL_PIERS]=
376227825Stheraven
377227825Stheraven	{
378227825Stheraven		{{0,0,0,0,0},  {0,0,0,0,0},  {0,0,0,0,0},  {0,0,0,0,0},  {0,0,0,0,0},  {0,0,0,0,0},    {0,0,0,0,0},  {0,0,0,0,0}},
379232924Stheraven		{{0,0,0,0,0},  {0,0,0,0,0},  {0,0,0,0,0},  {0,0,0,0,0},  {0,0,0,0,0},  {0,0,0,0,0},    {0,0,0,0,0},  {0,0,0,0,0}},
380232924Stheraven		{{0,0,0,0,0},  {0,0,0,0,0},  {0,0,0,0,0},  {0,0,0,0,0},  {0,0,0,0,0},  {0,0,0,0,0},    {0,0,0,0,0},  {0,0,0,0,0}},
381232924Stheraven
382227825Stheraven	},
383288943Sdim
384288943Sdim//static    CAL_TARGET_POWER_LEG calTarget_freqbin_5G[OSPREY_NUM_5G_20_TARGET_POWERS]=
385232924Stheraven
386232924Stheraven	{
387232924Stheraven			FREQ2FBIN(5180, 0),
388227825Stheraven			FREQ2FBIN(5220, 0),
389227825Stheraven			FREQ2FBIN(5320, 0),
390227825Stheraven			FREQ2FBIN(5400, 0),
391227825Stheraven			FREQ2FBIN(5500, 0),
392232924Stheraven			FREQ2FBIN(5600, 0),
393227825Stheraven			FREQ2FBIN(5725, 0),
394232924Stheraven			FREQ2FBIN(5825, 0)
395227825Stheraven	},
396227825Stheraven
397227825Stheraven//static    OSP_CAL_TARGET_POWER_HT  calTargetPower5GHT20[OSPREY_NUM_5G_20_TARGET_POWERS]=
398227825Stheraven
399232924Stheraven	{
400227825Stheraven			FREQ2FBIN(5180, 0),
401232924Stheraven			FREQ2FBIN(5240, 0),
402227825Stheraven			FREQ2FBIN(5320, 0),
403232924Stheraven			FREQ2FBIN(5500, 0),
404227825Stheraven			FREQ2FBIN(5700, 0),
405227825Stheraven			FREQ2FBIN(5745, 0),
406232924Stheraven			FREQ2FBIN(5725, 0),
407227825Stheraven			FREQ2FBIN(5825, 0)
408232924Stheraven	},
409227825Stheraven
410288943Sdim//static    OSP_CAL_TARGET_POWER_HT  calTargetPower5GHT40[OSPREY_NUM_5G_40_TARGET_POWERS]=
411288943Sdim
412232924Stheraven	{
413232924Stheraven			FREQ2FBIN(5180, 0),
414227825Stheraven			FREQ2FBIN(5240, 0),
415227825Stheraven			FREQ2FBIN(5320, 0),
416227825Stheraven			FREQ2FBIN(5500, 0),
417232924Stheraven			FREQ2FBIN(5700, 0),
418232924Stheraven			FREQ2FBIN(5745, 0),
419232924Stheraven			FREQ2FBIN(5725, 0),
420227825Stheraven			FREQ2FBIN(5825, 0)
421288943Sdim	},
422288943Sdim
423227825Stheraven
424227825Stheraven//static    CAL_TARGET_POWER_LEG calTargetPower5G[OSPREY_NUM_5G_20_TARGET_POWERS]=
425227825Stheraven
426227825Stheraven
427232924Stheraven	{
428227825Stheraven        //6-24,36,48,54
429232924Stheraven	    {{20,20,20,10}},
430227825Stheraven	    {{20,20,20,10}},
431232924Stheraven	    {{20,20,20,10}},
432227825Stheraven	    {{20,20,20,10}},
433227825Stheraven	    {{20,20,20,10}},
434227825Stheraven	    {{20,20,20,10}},
435227825Stheraven	    {{20,20,20,10}},
436232924Stheraven	    {{20,20,20,10}},
437227825Stheraven	},
438232924Stheraven
439227825Stheraven//static    OSP_CAL_TARGET_POWER_HT  calTargetPower5GHT20[OSPREY_NUM_5G_20_TARGET_POWERS]=
440232924Stheraven
441227825Stheraven	{
442227825Stheraven        //0_8_16,1-3_9-11_17-19,
443227825Stheraven        //      4,5,6,7,12,13,14,15,20,21,22,23
444227825Stheraven	    {{20,20,10,10,0,0,10,10,0,0,10,10,0,0}},
445227825Stheraven	    {{20,20,10,10,0,0,10,10,0,0,10,10,0,0}},
446227825Stheraven	    {{20,20,10,10,0,0,10,10,0,0,10,10,0,0}},
447232924Stheraven	    {{20,20,10,10,0,0,10,10,0,0,10,10,0,0}},
448261272Sdim	    {{20,20,10,10,0,0,10,10,0,0,10,10,0,0}},
449227825Stheraven	    {{20,20,10,10,0,0,10,10,0,0,10,10,0,0}},
450232924Stheraven	    {{20,20,10,10,0,0,10,10,0,0,10,10,0,0}},
451227825Stheraven	    {{20,20,10,10,0,0,10,10,0,0,10,10,0,0}},
452227825Stheraven	},
453227825Stheraven
454227825Stheraven//static    OSP_CAL_TARGET_POWER_HT  calTargetPower5GHT40[OSPREY_NUM_5G_40_TARGET_POWERS]=
455232924Stheraven	{
456227825Stheraven        //0_8_16,1-3_9-11_17-19,
457227825Stheraven        //      4,5,6,7,12,13,14,15,20,21,22,23
458227825Stheraven	    {{20,20,10,10,0,0,10,10,0,0,10,10,0,0}},
459227825Stheraven	    {{20,20,10,10,0,0,10,10,0,0,10,10,0,0}},
460227825Stheraven	    {{20,20,10,10,0,0,10,10,0,0,10,10,0,0}},
461232924Stheraven	    {{20,20,10,10,0,0,10,10,0,0,10,10,0,0}},
462232924Stheraven	    {{20,20,10,10,0,0,10,10,0,0,10,10,0,0}},
463232924Stheraven	    {{20,20,10,10,0,0,10,10,0,0,10,10,0,0}},
464227825Stheraven	    {{20,20,10,10,0,0,10,10,0,0,10,10,0,0}},
465227825Stheraven	    {{20,20,10,10,0,0,10,10,0,0,10,10,0,0}},
466227825Stheraven	},
467227825Stheraven
468227825Stheraven//static    A_UINT8            ctlIndex_5G[OSPREY_NUM_CTLS_5G]=
469227825Stheraven
470227825Stheraven	{
471227825Stheraven		    //pCtlIndex[0] =
472227825Stheraven		    0x10,
473232924Stheraven		    //pCtlIndex[1] =
474232924Stheraven		    0x16,
475232924Stheraven		    //pCtlIndex[2] =
476227825Stheraven		    0x18,
477227825Stheraven		    //pCtlIndex[3] =
478227825Stheraven		    0x40,
479232924Stheraven		    //pCtlIndex[4] =
480227825Stheraven		    0x46,
481227825Stheraven		    //pCtlIndex[5] =
482232924Stheraven		    0x48,
483227825Stheraven		    //pCtlIndex[6] =
484227825Stheraven		    0x30,
485232924Stheraven		    //pCtlIndex[7] =
486227825Stheraven		    0x36,
487227825Stheraven    		//pCtlIndex[8] =
488227825Stheraven    		0x38
489227825Stheraven	},
490227825Stheraven
491232924Stheraven//    A_UINT8   ctl_freqbin_5G[OSPREY_NUM_CTLS_5G][OSPREY_NUM_BAND_EDGES_5G];
492227825Stheraven
493232924Stheraven	{
494227825Stheraven	    {/* Data[0].ctlEdges[0].bChannel*/FREQ2FBIN(5180, 0),
495227825Stheraven	    /* Data[0].ctlEdges[1].bChannel*/FREQ2FBIN(5260, 0),
496227825Stheraven	    /* Data[0].ctlEdges[2].bChannel*/FREQ2FBIN(5280, 0),
497227825Stheraven	    /* Data[0].ctlEdges[3].bChannel*/FREQ2FBIN(5500, 0),
498227825Stheraven	    /* Data[0].ctlEdges[4].bChannel*/FREQ2FBIN(5600, 0),
499227825Stheraven	    /* Data[0].ctlEdges[5].bChannel*/FREQ2FBIN(5700, 0),
500227825Stheraven	    /* Data[0].ctlEdges[6].bChannel*/FREQ2FBIN(5745, 0),
501227825Stheraven	    /* Data[0].ctlEdges[7].bChannel*/FREQ2FBIN(5825, 0)},
502227825Stheraven
503227825Stheraven	    {/* Data[1].ctlEdges[0].bChannel*/FREQ2FBIN(5180, 0),
504227825Stheraven	    /* Data[1].ctlEdges[1].bChannel*/FREQ2FBIN(5260, 0),
505227825Stheraven	    /* Data[1].ctlEdges[2].bChannel*/FREQ2FBIN(5280, 0),
506227825Stheraven	    /* Data[1].ctlEdges[3].bChannel*/FREQ2FBIN(5500, 0),
507232924Stheraven	    /* Data[1].ctlEdges[4].bChannel*/FREQ2FBIN(5520, 0),
508227825Stheraven	    /* Data[1].ctlEdges[5].bChannel*/FREQ2FBIN(5700, 0),
509227825Stheraven	    /* Data[1].ctlEdges[6].bChannel*/FREQ2FBIN(5745, 0),
510227825Stheraven	    /* Data[1].ctlEdges[7].bChannel*/FREQ2FBIN(5825, 0)},
511227825Stheraven
512232924Stheraven	    {/* Data[2].ctlEdges[0].bChannel*/FREQ2FBIN(5190, 0),
513232924Stheraven	    /* Data[2].ctlEdges[1].bChannel*/FREQ2FBIN(5230, 0),
514227825Stheraven	    /* Data[2].ctlEdges[2].bChannel*/FREQ2FBIN(5270, 0),
515227825Stheraven	    /* Data[2].ctlEdges[3].bChannel*/FREQ2FBIN(5310, 0),
516227825Stheraven	    /* Data[2].ctlEdges[4].bChannel*/FREQ2FBIN(5510, 0),
517232924Stheraven	    /* Data[2].ctlEdges[5].bChannel*/FREQ2FBIN(5550, 0),
518232924Stheraven	    /* Data[2].ctlEdges[6].bChannel*/FREQ2FBIN(5670, 0),
519227825Stheraven	    /* Data[2].ctlEdges[7].bChannel*/FREQ2FBIN(5755, 0)},
520227825Stheraven
521227825Stheraven	    {/* Data[3].ctlEdges[0].bChannel*/FREQ2FBIN(5180, 0),
522227825Stheraven	    /* Data[3].ctlEdges[1].bChannel*/FREQ2FBIN(5200, 0),
523227825Stheraven	    /* Data[3].ctlEdges[2].bChannel*/FREQ2FBIN(5260, 0),
524227825Stheraven	    /* Data[3].ctlEdges[3].bChannel*/FREQ2FBIN(5320, 0),
525227825Stheraven	    /* Data[3].ctlEdges[4].bChannel*/FREQ2FBIN(5500, 0),
526227825Stheraven	    /* Data[3].ctlEdges[5].bChannel*/FREQ2FBIN(5700, 0),
527227825Stheraven	    /* Data[3].ctlEdges[6].bChannel*/0xFF,
528227825Stheraven	    /* Data[3].ctlEdges[7].bChannel*/0xFF},
529227825Stheraven
530227825Stheraven	    {/* Data[4].ctlEdges[0].bChannel*/FREQ2FBIN(5180, 0),
531232924Stheraven	    /* Data[4].ctlEdges[1].bChannel*/FREQ2FBIN(5260, 0),
532227825Stheraven	    /* Data[4].ctlEdges[2].bChannel*/FREQ2FBIN(5500, 0),
533232924Stheraven	    /* Data[4].ctlEdges[3].bChannel*/FREQ2FBIN(5700, 0),
534227825Stheraven	    /* Data[4].ctlEdges[4].bChannel*/0xFF,
535227825Stheraven	    /* Data[4].ctlEdges[5].bChannel*/0xFF,
536227825Stheraven	    /* Data[4].ctlEdges[6].bChannel*/0xFF,
537227825Stheraven	    /* Data[4].ctlEdges[7].bChannel*/0xFF},
538227825Stheraven
539227825Stheraven	    {/* Data[5].ctlEdges[0].bChannel*/FREQ2FBIN(5190, 0),
540227825Stheraven	    /* Data[5].ctlEdges[1].bChannel*/FREQ2FBIN(5270, 0),
541227825Stheraven	    /* Data[5].ctlEdges[2].bChannel*/FREQ2FBIN(5310, 0),
542227825Stheraven	    /* Data[5].ctlEdges[3].bChannel*/FREQ2FBIN(5510, 0),
543227825Stheraven	    /* Data[5].ctlEdges[4].bChannel*/FREQ2FBIN(5590, 0),
544227825Stheraven	    /* Data[5].ctlEdges[5].bChannel*/FREQ2FBIN(5670, 0),
545227825Stheraven	    /* Data[5].ctlEdges[6].bChannel*/0xFF,
546232924Stheraven	    /* Data[5].ctlEdges[7].bChannel*/0xFF},
547232924Stheraven
548232924Stheraven	    {/* Data[6].ctlEdges[0].bChannel*/FREQ2FBIN(5180, 0),
549232924Stheraven	    /* Data[6].ctlEdges[1].bChannel*/FREQ2FBIN(5200, 0),
550227825Stheraven	    /* Data[6].ctlEdges[2].bChannel*/FREQ2FBIN(5220, 0),
551227825Stheraven	    /* Data[6].ctlEdges[3].bChannel*/FREQ2FBIN(5260, 0),
552300770Sdim	    /* Data[6].ctlEdges[4].bChannel*/FREQ2FBIN(5500, 0),
553227825Stheraven	    /* Data[6].ctlEdges[5].bChannel*/FREQ2FBIN(5600, 0),
554232924Stheraven	    /* Data[6].ctlEdges[6].bChannel*/FREQ2FBIN(5700, 0),
555227825Stheraven	    /* Data[6].ctlEdges[7].bChannel*/FREQ2FBIN(5745, 0)},
556227825Stheraven
557227825Stheraven	    {/* Data[7].ctlEdges[0].bChannel*/FREQ2FBIN(5180, 0),
558227825Stheraven	    /* Data[7].ctlEdges[1].bChannel*/FREQ2FBIN(5260, 0),
559227825Stheraven	    /* Data[7].ctlEdges[2].bChannel*/FREQ2FBIN(5320, 0),
560227825Stheraven	    /* Data[7].ctlEdges[3].bChannel*/FREQ2FBIN(5500, 0),
561227825Stheraven	    /* Data[7].ctlEdges[4].bChannel*/FREQ2FBIN(5560, 0),
562232924Stheraven	    /* Data[7].ctlEdges[5].bChannel*/FREQ2FBIN(5700, 0),
563232924Stheraven	    /* Data[7].ctlEdges[6].bChannel*/FREQ2FBIN(5745, 0),
564232924Stheraven	    /* Data[7].ctlEdges[7].bChannel*/FREQ2FBIN(5825, 0)},
565232924Stheraven
566232924Stheraven	    {/* Data[8].ctlEdges[0].bChannel*/FREQ2FBIN(5190, 0),
567227825Stheraven	    /* Data[8].ctlEdges[1].bChannel*/FREQ2FBIN(5230, 0),
568227825Stheraven	    /* Data[8].ctlEdges[2].bChannel*/FREQ2FBIN(5270, 0),
569227825Stheraven	    /* Data[8].ctlEdges[3].bChannel*/FREQ2FBIN(5510, 0),
570227825Stheraven	    /* Data[8].ctlEdges[4].bChannel*/FREQ2FBIN(5550, 0),
571227825Stheraven	    /* Data[8].ctlEdges[5].bChannel*/FREQ2FBIN(5670, 0),
572232924Stheraven	    /* Data[8].ctlEdges[6].bChannel*/FREQ2FBIN(5755, 0),
573232924Stheraven	    /* Data[8].ctlEdges[7].bChannel*/FREQ2FBIN(5795, 0)}
574232924Stheraven	},
575232924Stheraven
576227825Stheraven//static    OSP_CAL_CTL_DATA_5G   ctlData_5G[OSPREY_NUM_CTLS_5G]=
577227825Stheraven
578227825Stheraven#if AH_BYTE_ORDER == AH_BIG_ENDIAN
579300770Sdim	{
580227825Stheraven	    {{{1, 60},
581232924Stheraven	      {1, 60},
582227825Stheraven	      {1, 60},
583227825Stheraven	      {1, 60},
584227825Stheraven	      {1, 60},
585288943Sdim	      {1, 60},
586227825Stheraven	      {1, 60},
587227825Stheraven	      {0, 60}}},
588227825Stheraven
589288943Sdim	    {{{1, 60},
590232924Stheraven	      {1, 60},
591232924Stheraven	      {1, 60},
592232924Stheraven	      {1, 60},
593227825Stheraven	      {1, 60},
594227825Stheraven	      {1, 60},
595227825Stheraven	      {1, 60},
596227825Stheraven	      {0, 60}}},
597227825Stheraven
598227825Stheraven	    {{{0, 60},
599232924Stheraven	      {1, 60},
600232924Stheraven	      {0, 60},
601232924Stheraven	      {1, 60},
602227825Stheraven	      {1, 60},
603227825Stheraven	      {1, 60},
604227825Stheraven	      {1, 60},
605227825Stheraven	      {1, 60}}},
606227825Stheraven
607232924Stheraven	    {{{0, 60},
608232924Stheraven	      {1, 60},
609232924Stheraven	      {1, 60},
610227825Stheraven	      {0, 60},
611227825Stheraven	      {1, 60},
612227825Stheraven	      {0, 60},
613227825Stheraven	      {0, 60},
614227825Stheraven	      {0, 60}}},
615227825Stheraven
616288943Sdim	    {{{1, 60},
617227825Stheraven	      {1, 60},
618227825Stheraven	      {1, 60},
619232924Stheraven	      {0, 60},
620232924Stheraven	      {0, 60},
621227825Stheraven	      {0, 60},
622227825Stheraven	      {0, 60},
623232924Stheraven	      {0, 60}}},
624232924Stheraven
625227825Stheraven	    {{{1, 60},
626232924Stheraven	      {1, 60},
627227825Stheraven	      {1, 60},
628227825Stheraven	      {1, 60},
629227825Stheraven	      {1, 60},
630227825Stheraven	      {0, 60},
631227825Stheraven	      {0, 60},
632232924Stheraven	      {0, 60}}},
633232924Stheraven
634227825Stheraven	    {{{1, 60},
635227825Stheraven	      {1, 60},
636227825Stheraven	      {1, 60},
637227825Stheraven	      {1, 60},
638227825Stheraven	      {1, 60},
639227825Stheraven	      {1, 60},
640227825Stheraven	      {1, 60},
641232924Stheraven	      {1, 60}}},
642227825Stheraven
643232924Stheraven	    {{{1, 60},
644227825Stheraven	      {1, 60},
645227825Stheraven	      {0, 60},
646227825Stheraven	      {1, 60},
647227825Stheraven	      {1, 60},
648227825Stheraven	      {1, 60},
649227825Stheraven	      {1, 60},
650227825Stheraven	      {0, 60}}},
651227825Stheraven
652227825Stheraven	    {{{1, 60},
653227825Stheraven	      {0, 60},
654227825Stheraven	      {1, 60},
655227825Stheraven	      {1, 60},
656227825Stheraven	      {1, 60},
657227825Stheraven	      {1, 60},
658227825Stheraven	      {0, 60},
659227825Stheraven	      {1, 60}}},
660227825Stheraven	}
661227825Stheraven#else
662227825Stheraven	{
663227825Stheraven	    {{{60, 1},
664227825Stheraven	      {60, 1},
665227825Stheraven	      {60, 1},
666227825Stheraven	      {60, 1},
667227825Stheraven	      {60, 1},
668227825Stheraven	      {60, 1},
669227825Stheraven	      {60, 1},
670227825Stheraven	      {60, 0}}},
671227825Stheraven
672227825Stheraven	    {{{60, 1},
673227825Stheraven	      {60, 1},
674227825Stheraven	      {60, 1},
675227825Stheraven	      {60, 1},
676227825Stheraven	      {60, 1},
677227825Stheraven	      {60, 1},
678232924Stheraven	      {60, 1},
679232924Stheraven	      {60, 0}}},
680232924Stheraven
681227825Stheraven	    {{{60, 0},
682227825Stheraven	      {60, 1},
683227825Stheraven	      {60, 0},
684227825Stheraven	      {60, 1},
685227825Stheraven	      {60, 1},
686227825Stheraven	      {60, 1},
687227825Stheraven	      {60, 1},
688227825Stheraven	      {60, 1}}},
689227825Stheraven
690227825Stheraven	    {{{60, 0},
691232924Stheraven	      {60, 1},
692227825Stheraven	      {60, 1},
693232924Stheraven	      {60, 0},
694227825Stheraven	      {60, 1},
695227825Stheraven	      {60, 0},
696227825Stheraven	      {60, 0},
697227825Stheraven	      {60, 0}}},
698227825Stheraven
699227825Stheraven	    {{{60, 1},
700232924Stheraven	      {60, 1},
701232924Stheraven	      {60, 1},
702232924Stheraven	      {60, 0},
703232924Stheraven	      {60, 0},
704227825Stheraven	      {60, 0},
705227825Stheraven	      {60, 0},
706232924Stheraven	      {60, 0}}},
707232924Stheraven
708227825Stheraven	    {{{60, 1},
709227825Stheraven	      {60, 1},
710232924Stheraven	      {60, 1},
711232924Stheraven	      {60, 1},
712232924Stheraven	      {60, 1},
713232924Stheraven	      {60, 0},
714227825Stheraven	      {60, 0},
715227825Stheraven	      {60, 0}}},
716232924Stheraven
717232924Stheraven	    {{{60, 1},
718227825Stheraven	      {60, 1},
719227825Stheraven	      {60, 1},
720227825Stheraven	      {60, 1},
721227825Stheraven	      {60, 1},
722232924Stheraven	      {60, 1},
723261272Sdim	      {60, 1},
724232924Stheraven	      {60, 1}}},
725227825Stheraven
726232924Stheraven	    {{{60, 1},
727227825Stheraven	      {60, 1},
728227825Stheraven	      {60, 0},
729227825Stheraven	      {60, 1},
730227825Stheraven	      {60, 1},
731232924Stheraven	      {60, 1},
732227825Stheraven	      {60, 1},
733227825Stheraven	      {60, 0}}},
734227825Stheraven
735227825Stheraven	    {{{60, 1},
736227825Stheraven	      {60, 0},
737232924Stheraven	      {60, 1},
738232924Stheraven	      {60, 1},
739232924Stheraven	      {60, 1},
740227825Stheraven	      {60, 1},
741227825Stheraven	      {60, 0},
742227825Stheraven	      {60, 1}}},
743227825Stheraven	}
744227825Stheraven#endif
745227825Stheraven};
746227825Stheraven
747227825Stheraven#endif
748227825Stheraven