The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/contrib/dev/ath/ath_hal/ar9300/ar9300template_osprey_k31.h

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 /*
    2  * Copyright (c) 2013 Qualcomm Atheros, Inc.
    3  *
    4  * Permission to use, copy, modify, and/or distribute this software for any
    5  * purpose with or without fee is hereby granted, provided that the above
    6  * copyright notice and this permission notice appear in all copies.
    7  *
    8  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
    9  * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
   10  * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
   11  * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
   12  * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
   13  * OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
   14  * PERFORMANCE OF THIS SOFTWARE.
   15  */
   16 
   17 /*
   18  * READ THIS NOTICE!
   19  *
   20  * Values defined in this file may only be changed under exceptional circumstances.
   21  *
   22  * Please ask Fiona Cain before making any changes.
   23  */
   24 
   25 #ifndef __ar9300templateOsprey_k31_h__
   26 #define __ar9300templateOsprey_k31_h__
   27 
   28 /* Ensure that AH_BYTE_ORDER is defined */
   29 #ifndef AH_BYTE_ORDER
   30 #error AH_BYTE_ORDER needs to be defined!
   31 #endif
   32 
   33 static ar9300_eeprom_t ar9300_template_osprey_k31=
   34 {
   35 
   36         2, //  eepromVersion;
   37 
   38     ar9300_eeprom_template_osprey_k31, //  templateVersion;
   39 
   40         //NC, Mac Address Colon from HB116
   41     {0,3,0x7f,41,22,0xb4}, //macAddr[6];
   42 
   43     //static  A_UINT8   custData[OSPREY_CUSTOMER_DATA_SIZE]=
   44 
   45         //NC, No Serial Number
   46         {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
   47 
   48     //static OSPREY_BASE_EEP_HEADER baseEepHeader=
   49 
   50         {
   51                     {0,0x1f},   //   regDmn[2]; //Does this need to be outside of this structure, if it gets written after calibration
   52                     0x33,       //   txrxMask;  //4 bits tx and 4 bits rx
   53                     {AR9300_OPFLAGS_11G | AR9300_OPFLAGS_11A, 0},       //   opCapFlags;
   54                     0,          //   rfSilent;
   55                     0,          //   blueToothOptions;
   56                     0,          //   deviceCap;
   57                     5,          //   deviceType; // takes lower byte in eeprom location
   58                     OSPREY_PWR_TABLE_OFFSET,    //    pwrTableOffset; // offset in dB to be added to beginning of pdadc table in calibration
   59                         {0,0},  //   params_for_tuning_caps[2];  //placeholder, get more details from Don
   60             0x1d,     //featureEnable; //bit0 - enable tx temp comp 
   61                              //bit1 - enable tx volt comp
   62                              //bit2 - enable fastClock - default to 1
   63                              //bit3 - enable doubling - default to 1
   64                                                          //bit4 - enable internal regulator - default to 0
   65                 0,       //miscConfiguration: bit0 - turn down drivestrength
   66                         6,              // eepromWriteEnableGpio
   67                         0,              // wlanDisableGpio
   68                         8,              // wlanLedGpio
   69                         0xff,           // rxBandSelectGpio
   70                         10,                     // txrxgain
   71             0x709142fe,         //   swreg
   72         },
   73 
   74 
   75         //static OSPREY_MODAL_EEP_HEADER modalHeader2G=
   76         {
   77 
   78                     0x110,                      //  antCtrlCommon;                         // 4   idle, t1, t2, b (4 bits per setting)
   79                     0xeeeee,            //  antCtrlCommon2;                        // 4    ra1l1, ra2l1, ra1l2, ra2l2, ra12
   80                     {0x150,0x150,0x150},        //  antCtrlChain[OSPREY_MAX_CHAINS];       // 6   idle, t, r, rx1, rx12, b (2 bits each)
   81                     {0,0,0},                    //   xatten1DB[OSPREY_MAX_CHAINS];           // 3  //xatten1_db for merlin (0xa20c/b20c 5:0)
   82                     {0,0,0},                    //   xatten1Margin[OSPREY_MAX_CHAINS];          // 3  //xatten1_margin for merlin (0xa20c/b20c 16:12
   83                         25,                             //    tempSlope;
   84                         0,                              //    voltSlope;
   85                     {0xa4,0,0,0,0}, // spurChans[OSPREY_EEPROM_MODAL_SPURS];  // spur channels in usual fbin coding format
   86                     {-1,0,0},                   //    noiseFloorThreshCh[OSPREY_MAX_CHAINS]; // 3    //Check if the register is per chain
   87             {0, 0, 0, 0, 0, 0,0,0,0,0,0},               // reserved
   88             0,                                          // quick drop  
   89                     0xf,                                //   xpaBiasLvl;                            // 1
   90                     0x0e,                       //   txFrameToDataStart;                    // 1
   91                     0x0e,                       //   txFrameToPaOn;                         // 1
   92                     3,                          //   txClip;                                     // 4 bits tx_clip, 4 bits dac_scale_cck
   93                     0,                          //    antennaGain;                           // 1
   94                     0x2c,                       //   switchSettling;                        // 1
   95                     -30,                        //    adcDesiredSize;                        // 1
   96                     0,                          //   txEndToXpaOff;                         // 1
   97                     0x2,                        //   txEndToRxOn;                           // 1
   98                     0xe,                        //   txFrameToXpaOn;                        // 1
   99                     28,                         //   thresh62;                              // 1
  100                         0x0c80C080,             //       papdRateMaskHt20                                               // 4
  101                         0x0080C080,             //       papdRateMaskHt40       
  102                     0,                          //   switchcomspdt;                         // 2
  103                         0,                              // bit: 0,1:chain0, 2,3:chain1, 4,5:chain2
  104                         0,                              //  rf_gain_cap
  105                         0,                              //  tx_gain_cap
  106                         {0,0,0,0,0}    //futureModal[5];
  107         },
  108 
  109         {
  110                 0,                                                                      //   ant_div_control
  111                         {0,0},                                  // base_ext1
  112                         0,                                              // misc_enable
  113                         {0,0,0,0,0,0,0,0},              // temp slop extension
  114         0,                                  // quick drop low
  115         0,                                  // quick drop high
  116     },
  117 
  118 
  119         //static A_UINT8 calFreqPier2G[OSPREY_NUM_2G_CAL_PIERS]=
  120         {
  121                 FREQ2FBIN(2412, 1),
  122                 FREQ2FBIN(2437, 1),
  123                 FREQ2FBIN(2462, 1)
  124         },
  125 
  126         //static OSP_CAL_DATA_PER_FREQ_OP_LOOP calPierData2G[OSPREY_MAX_CHAINS][OSPREY_NUM_2G_CAL_PIERS]=
  127 
  128         {       {{235,0,148,150,162,0},  {235,0,147,150,163,0},  {235,0,147,150,163,0}},
  129                 {{232,0,147,148,162,0},  {233,0,147,148,163,0},  {234,0,147,148,163,0}},
  130                 {{0,0,0,136,162,0},  {0,0,0,136,163,0},  {0,0,0,136,163,0}},
  131         },
  132 
  133         //A_UINT8 calTarget_freqbin_Cck[OSPREY_NUM_2G_CCK_TARGET_POWERS];
  134 
  135         {
  136                 FREQ2FBIN(2412, 1),
  137                 FREQ2FBIN(2472, 1)
  138         },
  139 
  140         //static CAL_TARGET_POWER_LEG calTarget_freqbin_2G[OSPREY_NUM_2G_20_TARGET_POWERS]
  141         {
  142                 FREQ2FBIN(2412, 1),
  143                 FREQ2FBIN(2437, 1),
  144                 FREQ2FBIN(2472, 1)
  145         },
  146 
  147         //static   OSP_CAL_TARGET_POWER_HT  calTarget_freqbin_2GHT20[OSPREY_NUM_2G_20_TARGET_POWERS]
  148         {
  149                 FREQ2FBIN(2412, 1),
  150                 FREQ2FBIN(2437, 1),
  151                 FREQ2FBIN(2472, 1)
  152         },
  153 
  154         //static   OSP_CAL_TARGET_POWER_HT  calTarget_freqbin_2GHT40[OSPREY_NUM_2G_40_TARGET_POWERS]
  155         {
  156                 FREQ2FBIN(2412, 1),
  157                 FREQ2FBIN(2437, 1),
  158                 FREQ2FBIN(2472, 1)
  159         },
  160 
  161         //static CAL_TARGET_POWER_LEG calTargetPowerCck[OSPREY_NUM_2G_CCK_TARGET_POWERS]=
  162         {
  163                 //1L-5L,5S,11L,11S
  164         {{34,34,34,34}},
  165                 {{34,34,34,34}}
  166          },
  167 
  168         //static CAL_TARGET_POWER_LEG calTargetPower2G[OSPREY_NUM_2G_20_TARGET_POWERS]=
  169         {
  170         //6-24,36,48,54
  171                 {{34,34,32,32}},
  172                 {{34,34,32,32}},
  173                 {{34,34,32,32}},
  174         },
  175 
  176         //static   OSP_CAL_TARGET_POWER_HT  calTargetPower2GHT20[OSPREY_NUM_2G_20_TARGET_POWERS]=
  177         {
  178         //0_8_16,1-3_9-11_17-19,
  179         //      4,5,6,7,12,13,14,15,20,21,22,23
  180                 {{32,32,32,32,32,30,32,32,30,28,0,0,0,0}},
  181                 {{32,32,32,32,32,30,32,32,30,28,0,0,0,0}},
  182                 {{32,32,32,32,32,30,32,32,30,28,0,0,0,0}},
  183         },
  184 
  185         //static    OSP_CAL_TARGET_POWER_HT  calTargetPower2GHT40[OSPREY_NUM_2G_40_TARGET_POWERS]=
  186         {
  187         //0_8_16,1-3_9-11_17-19,
  188         //      4,5,6,7,12,13,14,15,20,21,22,23
  189                 {{30,30,30,30,30,28,30,30,28,26,0,0,0,0}},
  190                 {{30,30,30,30,30,28,30,30,28,26,0,0,0,0}},
  191                 {{30,30,30,30,30,28,30,30,28,26,0,0,0,0}},
  192         },
  193 
  194 //static    A_UINT8            ctlIndex_2G[OSPREY_NUM_CTLS_2G]=
  195 
  196         {
  197 
  198                     0x11,
  199                 0x12,
  200                 0x15,
  201                 0x17,
  202                 0x41,
  203                 0x42,
  204                         0x45,
  205                 0x47,
  206                         0x31,
  207                 0x32,
  208                 0x35,
  209                 0x37
  210 
  211     },
  212 
  213 //A_UINT8   ctl_freqbin_2G[OSPREY_NUM_CTLS_2G][OSPREY_NUM_BAND_EDGES_2G];
  214 
  215         {
  216                 {FREQ2FBIN(2412, 1),
  217                  FREQ2FBIN(2417, 1),
  218                  FREQ2FBIN(2457, 1),
  219                  FREQ2FBIN(2462, 1)},
  220 
  221                 {FREQ2FBIN(2412, 1),
  222                  FREQ2FBIN(2417, 1),
  223                  FREQ2FBIN(2462, 1),
  224                  0xFF},
  225 
  226                 {FREQ2FBIN(2412, 1),
  227                  FREQ2FBIN(2417, 1),
  228                  FREQ2FBIN(2462, 1),
  229                  0xFF},
  230 
  231                 {FREQ2FBIN(2422, 1),
  232                  FREQ2FBIN(2427, 1),
  233                  FREQ2FBIN(2447, 1),
  234                  FREQ2FBIN(2452, 1)},
  235 
  236                 {/*Data[4].ctlEdges[0].bChannel*/FREQ2FBIN(2412, 1),
  237                 /*Data[4].ctlEdges[1].bChannel*/FREQ2FBIN(2417, 1),
  238                 /*Data[4].ctlEdges[2].bChannel*/FREQ2FBIN(2472, 1),
  239                 /*Data[4].ctlEdges[3].bChannel*/FREQ2FBIN(2484, 1)},
  240 
  241                 {/*Data[5].ctlEdges[0].bChannel*/FREQ2FBIN(2412, 1),
  242                  /*Data[5].ctlEdges[1].bChannel*/FREQ2FBIN(2417, 1),
  243                  /*Data[5].ctlEdges[2].bChannel*/FREQ2FBIN(2472, 1),
  244                  0},
  245 
  246                 {/*Data[6].ctlEdges[0].bChannel*/FREQ2FBIN(2412, 1),
  247                  /*Data[6].ctlEdges[1].bChannel*/FREQ2FBIN(2417, 1),
  248                  FREQ2FBIN(2472, 1),
  249                  0},
  250 
  251                 {/*Data[7].ctlEdges[0].bChannel*/FREQ2FBIN(2422, 1),
  252                  /*Data[7].ctlEdges[1].bChannel*/FREQ2FBIN(2427, 1),
  253                  /*Data[7].ctlEdges[2].bChannel*/FREQ2FBIN(2447, 1),
  254                  /*Data[7].ctlEdges[3].bChannel*/FREQ2FBIN(2462, 1)},
  255 
  256                 {/*Data[8].ctlEdges[0].bChannel*/FREQ2FBIN(2412, 1),
  257                  /*Data[8].ctlEdges[1].bChannel*/FREQ2FBIN(2417, 1),
  258                  /*Data[8].ctlEdges[2].bChannel*/FREQ2FBIN(2472, 1),
  259                  0},
  260 
  261                 {/*Data[9].ctlEdges[0].bChannel*/FREQ2FBIN(2412, 1),
  262                  /*Data[9].ctlEdges[1].bChannel*/FREQ2FBIN(2417, 1),
  263                  /*Data[9].ctlEdges[2].bChannel*/FREQ2FBIN(2472, 1),
  264                  0},
  265 
  266                 {/*Data[10].ctlEdges[0].bChannel*/FREQ2FBIN(2412, 1),
  267                  /*Data[10].ctlEdges[1].bChannel*/FREQ2FBIN(2417, 1),
  268                  /*Data[10].ctlEdges[2].bChannel*/FREQ2FBIN(2472, 1),
  269                  0},
  270 
  271                 {/*Data[11].ctlEdges[0].bChannel*/FREQ2FBIN(2422, 1),
  272                  /*Data[11].ctlEdges[1].bChannel*/FREQ2FBIN(2427, 1),
  273                  /*Data[11].ctlEdges[2].bChannel*/FREQ2FBIN(2447, 1),
  274                  /*Data[11].ctlEdges[3].bChannel*/FREQ2FBIN(2462, 1)}
  275         },
  276 
  277 
  278 //OSP_CAL_CTL_DATA_2G   ctlPowerData_2G[OSPREY_NUM_CTLS_2G];
  279 
  280 #if AH_BYTE_ORDER == AH_BIG_ENDIAN
  281     {
  282 
  283             {{{0, 60}, {1, 60}, {0, 60}, {0, 60}}},
  284             {{{0, 60}, {1, 60}, {0, 60}, {0, 60}}}, 
  285             {{{1, 60}, {0, 60}, {0, 60}, {1, 60}}},
  286 
  287             {{{1, 60}, {0, 60}, {0, 60}, {0, 60}}},
  288             {{{0, 60}, {1, 60}, {0, 60}, {0, 60}}},
  289             {{{0, 60}, {1, 60}, {0, 60}, {0, 60}}},
  290 
  291             {{{0, 60}, {1, 60}, {1, 60}, {0, 60}}},
  292             {{{0, 60}, {1, 60}, {0, 60}, {0, 60}}},
  293             {{{0, 60}, {1, 60}, {0, 60}, {0, 60}}},
  294 
  295             {{{0, 60}, {1, 60}, {0, 60}, {0, 60}}},
  296             {{{0, 60}, {1, 60}, {1, 60}, {1, 60}}},
  297             {{{0, 60}, {1, 60}, {1, 60}, {1, 60}}},
  298         
  299     },
  300 #else
  301         {
  302             {{{60, 0}, {60, 1}, {60, 0}, {60, 0}}},
  303             {{{60, 0}, {60, 1}, {60, 0}, {60, 0}}}, 
  304             {{{60, 1}, {60, 0}, {60, 0}, {60, 1}}},
  305 
  306             {{{60, 1}, {60, 0}, {60, 0}, {60, 0}}},
  307             {{{60, 0}, {60, 1}, {60, 0}, {60, 0}}},
  308             {{{60, 0}, {60, 1}, {60, 0}, {60, 0}}},
  309 
  310             {{{60, 0}, {60, 1}, {60, 1}, {60, 0}}},
  311             {{{60, 0}, {60, 1}, {60, 0}, {60, 0}}},
  312             {{{60, 0}, {60, 1}, {60, 0}, {60, 0}}},
  313 
  314             {{{60, 0}, {60, 1}, {60, 0}, {60, 0}}},
  315             {{{60, 0}, {60, 1}, {60, 1}, {60, 1}}},
  316             {{{60, 0}, {60, 1}, {60, 1}, {60, 1}}},
  317         },
  318 #endif
  319 
  320 //static    OSPREY_MODAL_EEP_HEADER   modalHeader5G=
  321 
  322         {
  323 
  324                     0x220,                      //  antCtrlCommon;                         // 4   idle, t1, t2, b (4 bits per setting)
  325                     0x11111,            //  antCtrlCommon2;                        // 4    ra1l1, ra2l1, ra1l2, ra2l2, ra12
  326                     {0x150,0x150,0x150},        //  antCtrlChain[OSPREY_MAX_CHAINS];       // 6   idle, t, r, rx1, rx12, b (2 bits each)
  327                     {0,0,0},                    //   xatten1DB[OSPREY_MAX_CHAINS];           // 3  //xatten1_db for merlin (0xa20c/b20c 5:0)
  328                     {0,0,0},                    //   xatten1Margin[OSPREY_MAX_CHAINS];          // 3  //xatten1_margin for merlin (0xa20c/b20c 16:12
  329                         45,                             //    tempSlope;
  330                         0,                              //    voltSlope;
  331                     {0,0,0,0,0}, // spurChans[OSPREY_EEPROM_MODAL_SPURS];  // spur channels in usual fbin coding format
  332                     {-1,0,0},                   //    noiseFloorThreshCh[OSPREY_MAX_CHAINS]; // 3    //Check if the register is per chain
  333             {0, 0, 0, 0, 0, 0,0,0,0,0,0},               // reserved
  334             0,                                          // quick drop 
  335                     0,                          //   xpaBiasLvl;                            // 1
  336                     0x0e,                       //   txFrameToDataStart;                    // 1
  337                     0x0e,                       //   txFrameToPaOn;                         // 1
  338                     3,                          //   txClip;                                     // 4 bits tx_clip, 4 bits dac_scale_cck
  339                     0,                          //    antennaGain;                           // 1
  340                     0x2d,                       //   switchSettling;                        // 1
  341                     -30,                        //    adcDesiredSize;                        // 1
  342                     0,                          //   txEndToXpaOff;                         // 1
  343                     0x2,                        //   txEndToRxOn;                           // 1
  344                     0xe,                        //   txFrameToXpaOn;                        // 1
  345                     28,                         //   thresh62;                              // 1
  346                         0x0cf0e0e0,             //       papdRateMaskHt20                                               // 4
  347                         0x6cf0e0e0,             //       papdRateMaskHt40                                               // 4
  348                     0,                          //   switchcomspdt;                         // 2
  349                         0,                              // bit: 0,1:chain0, 2,3:chain1, 4,5:chain2
  350                         0,                              //  rf_gain_cap
  351                         0,                              //  tx_gain_cap
  352                         {0,0,0,0,0}    //futureModal[5];
  353         },
  354 
  355         {                       // base_ext2
  356                 0,
  357                 0,
  358                 {0,0,0},
  359                 {0,0,0},
  360                 {0,0,0},
  361                 {0,0,0}
  362         },                                              
  363 
  364 //static    A_UINT8            calFreqPier5G[OSPREY_NUM_5G_CAL_PIERS]=
  365         {
  366                     //pPiers[0] =
  367                     FREQ2FBIN(5160, 0),
  368                     //pPiers[1] =
  369                     FREQ2FBIN(5220, 0),
  370                     //pPiers[2] =
  371                     FREQ2FBIN(5320, 0),
  372                     //pPiers[3] =
  373                     FREQ2FBIN(5400, 0),
  374                     //pPiers[4] =
  375                     FREQ2FBIN(5500, 0),
  376                     //pPiers[5] =
  377                     FREQ2FBIN(5600, 0),
  378                     //pPiers[6] =
  379                     FREQ2FBIN(5700, 0),
  380                 //pPiers[7] =
  381                 FREQ2FBIN(5785, 0)
  382         },
  383 
  384 //static    OSP_CAL_DATA_PER_FREQ_OP_LOOP calPierData5G[OSPREY_MAX_CHAINS][OSPREY_NUM_5G_CAL_PIERS]=
  385 
  386         {
  387 {{170,0,149,0,0,0},{170,0,149,147,167,0},{170,0,149,0,0,0},{170,0,147,0,0,0}, {170,0,146,148,164,0}, {170,0,146,0,0,0}, {170,0,147,145,163,0},  {170,0,146,143,162,0}},
  388 {{170,0,149,0,0,0},{170,0,149,147,167,0},{170,0,149,0,0,0},{170,0,147,0,0,0}, {170,0,146,148,164,0}, {170,0,146,0,0,0}, {170,0,147,145,163,0},  {170,0,146,143,162,0}},
  389 {{0,0,0,0,0,0},        {0,0,0,136,167,0},{0,0,0,0,0},      {0,0,0,0,0},       {0  ,0,0  ,137,164,0}, {0,0,0,0,0},       {0  ,0,0  ,136,163,0},  {0  ,0,0  ,136,162,0}},
  390 
  391         },
  392 
  393 //static    CAL_TARGET_POWER_LEG calTarget_freqbin_5G[OSPREY_NUM_5G_20_TARGET_POWERS]=
  394 
  395         {
  396                         FREQ2FBIN(5180, 0),
  397                         FREQ2FBIN(5240, 0),
  398                         FREQ2FBIN(5320, 0),
  399                         FREQ2FBIN(5400, 0),
  400                         FREQ2FBIN(5500, 0),
  401                         FREQ2FBIN(5600, 0),
  402                         FREQ2FBIN(5700, 0),
  403                         FREQ2FBIN(5825, 0)
  404         },
  405 
  406 //static    OSP_CAL_TARGET_POWER_HT  calTargetPower5GHT20[OSPREY_NUM_5G_20_TARGET_POWERS]=
  407 
  408         {
  409                         FREQ2FBIN(5180, 0),
  410                         FREQ2FBIN(5240, 0),
  411                         FREQ2FBIN(5320, 0),
  412                         FREQ2FBIN(5400, 0),
  413                         FREQ2FBIN(5500, 0),
  414                         FREQ2FBIN(5700, 0),
  415                         FREQ2FBIN(5745, 0),
  416                         FREQ2FBIN(5825, 0)
  417         },
  418 
  419 //static    OSP_CAL_TARGET_POWER_HT  calTargetPower5GHT40[OSPREY_NUM_5G_40_TARGET_POWERS]=
  420 
  421         {
  422                         FREQ2FBIN(5180, 0),
  423                         FREQ2FBIN(5240, 0),
  424                         FREQ2FBIN(5320, 0),
  425                         FREQ2FBIN(5400, 0),
  426                         FREQ2FBIN(5500, 0),
  427                         FREQ2FBIN(5700, 0),
  428                         FREQ2FBIN(5745, 0),
  429                         FREQ2FBIN(5825, 0)
  430         },
  431 
  432 
  433 //static    CAL_TARGET_POWER_LEG calTargetPower5G[OSPREY_NUM_5G_20_TARGET_POWERS]=
  434 
  435 
  436         {
  437         //6-24,36,48,54
  438             {{30,30,28,24}},
  439             {{30,30,28,24}},
  440             {{30,30,28,24}},
  441             {{30,30,28,24}},
  442             {{30,30,28,24}},
  443             {{30,30,28,24}},
  444             {{30,30,28,24}},
  445             {{30,30,28,24}},
  446         },
  447 
  448 //static    OSP_CAL_TARGET_POWER_HT  calTargetPower5GHT20[OSPREY_NUM_5G_20_TARGET_POWERS]=
  449 
  450         {
  451         //0_8_16,1-3_9-11_17-19,
  452         //      4,5,6,7,12,13,14,15,20,21,22,23
  453             {{30,30,30,28,24,20,30,28,24,20,0,0,0,0}},
  454             {{30,30,30,28,24,20,30,28,24,20,0,0,0,0}},
  455             {{30,30,30,26,22,18,30,26,22,18,0,0,0,0}},
  456             {{30,30,30,26,22,18,30,26,22,18,0,0,0,0}},
  457             {{30,30,30,24,20,16,30,24,20,16,0,0,0,0}},
  458             {{30,30,30,24,20,16,30,24,20,16,0,0,0,0}},
  459             {{30,30,30,22,18,14,30,22,18,14,0,0,0,0}},
  460             {{30,30,30,22,18,14,30,22,18,14,0,0,0,0}},
  461         },
  462 
  463 //static    OSP_CAL_TARGET_POWER_HT  calTargetPower5GHT40[OSPREY_NUM_5G_40_TARGET_POWERS]=
  464         {
  465         //0_8_16,1-3_9-11_17-19,
  466         //      4,5,6,7,12,13,14,15,20,21,22,23
  467         {{28, 28, 28, 26, 22, 18, 28, 26, 22, 18, 0, 0, 0, 0}},
  468         {{28, 28, 28, 26, 22, 18, 28, 26, 22, 18, 0, 0, 0, 0}},
  469         {{28, 28, 28, 24, 20, 16, 28, 24, 20, 16, 0, 0, 0, 0}},
  470         {{28, 28, 28, 24, 20, 16, 28, 24, 20, 16, 0, 0, 0, 0}},
  471         {{28, 28, 28, 22, 18, 14, 28, 22, 18, 14, 0, 0, 0, 0}},
  472         {{28, 28, 28, 22, 18, 14, 28, 22, 18, 14, 0, 0, 0, 0}},
  473         {{28, 28, 28, 20, 16, 12, 28, 20, 16, 12, 0, 0, 0, 0}},
  474         {{28, 28, 28, 20, 16, 12, 28, 20, 16, 12, 0, 0, 0, 0}},
  475         },
  476 
  477 //static    A_UINT8            ctlIndex_5G[OSPREY_NUM_CTLS_5G]=
  478 
  479         {
  480                     //pCtlIndex[0] =
  481                     0x10,
  482                     //pCtlIndex[1] =
  483                     0x16,
  484                     //pCtlIndex[2] =
  485                     0x18,
  486                     //pCtlIndex[3] =
  487                     0x40,
  488                     //pCtlIndex[4] =
  489                     0x46,
  490                     //pCtlIndex[5] =
  491                     0x48,
  492                     //pCtlIndex[6] =
  493                     0x30,
  494                     //pCtlIndex[7] =
  495                     0x36,
  496                 //pCtlIndex[8] =
  497                 0x38
  498         },
  499 
  500 //    A_UINT8   ctl_freqbin_5G[OSPREY_NUM_CTLS_5G][OSPREY_NUM_BAND_EDGES_5G];
  501 
  502         {
  503             {/* Data[0].ctlEdges[0].bChannel*/FREQ2FBIN(5180, 0),
  504             /* Data[0].ctlEdges[1].bChannel*/FREQ2FBIN(5260, 0),
  505             /* Data[0].ctlEdges[2].bChannel*/FREQ2FBIN(5280, 0),
  506             /* Data[0].ctlEdges[3].bChannel*/FREQ2FBIN(5500, 0),
  507             /* Data[0].ctlEdges[4].bChannel*/FREQ2FBIN(5600, 0),
  508             /* Data[0].ctlEdges[5].bChannel*/FREQ2FBIN(5700, 0),
  509             /* Data[0].ctlEdges[6].bChannel*/FREQ2FBIN(5745, 0),
  510             /* Data[0].ctlEdges[7].bChannel*/FREQ2FBIN(5825, 0)},
  511 
  512             {/* Data[1].ctlEdges[0].bChannel*/FREQ2FBIN(5180, 0),
  513             /* Data[1].ctlEdges[1].bChannel*/FREQ2FBIN(5260, 0),
  514             /* Data[1].ctlEdges[2].bChannel*/FREQ2FBIN(5280, 0),
  515             /* Data[1].ctlEdges[3].bChannel*/FREQ2FBIN(5500, 0),
  516             /* Data[1].ctlEdges[4].bChannel*/FREQ2FBIN(5520, 0),
  517             /* Data[1].ctlEdges[5].bChannel*/FREQ2FBIN(5700, 0),
  518             /* Data[1].ctlEdges[6].bChannel*/FREQ2FBIN(5745, 0),
  519             /* Data[1].ctlEdges[7].bChannel*/FREQ2FBIN(5825, 0)},
  520 
  521             {/* Data[2].ctlEdges[0].bChannel*/FREQ2FBIN(5190, 0),
  522             /* Data[2].ctlEdges[1].bChannel*/FREQ2FBIN(5230, 0),
  523             /* Data[2].ctlEdges[2].bChannel*/FREQ2FBIN(5270, 0),
  524             /* Data[2].ctlEdges[3].bChannel*/FREQ2FBIN(5310, 0),
  525             /* Data[2].ctlEdges[4].bChannel*/FREQ2FBIN(5510, 0),
  526             /* Data[2].ctlEdges[5].bChannel*/FREQ2FBIN(5550, 0),
  527             /* Data[2].ctlEdges[6].bChannel*/FREQ2FBIN(5670, 0),
  528             /* Data[2].ctlEdges[7].bChannel*/FREQ2FBIN(5755, 0)},
  529 
  530             {/* Data[3].ctlEdges[0].bChannel*/FREQ2FBIN(5180, 0),
  531             /* Data[3].ctlEdges[1].bChannel*/FREQ2FBIN(5200, 0),
  532             /* Data[3].ctlEdges[2].bChannel*/FREQ2FBIN(5260, 0),
  533             /* Data[3].ctlEdges[3].bChannel*/FREQ2FBIN(5320, 0),
  534             /* Data[3].ctlEdges[4].bChannel*/FREQ2FBIN(5500, 0),
  535             /* Data[3].ctlEdges[5].bChannel*/FREQ2FBIN(5700, 0),
  536             /* Data[3].ctlEdges[6].bChannel*/0xFF,
  537             /* Data[3].ctlEdges[7].bChannel*/0xFF},
  538 
  539             {/* Data[4].ctlEdges[0].bChannel*/FREQ2FBIN(5180, 0),
  540             /* Data[4].ctlEdges[1].bChannel*/FREQ2FBIN(5260, 0),
  541             /* Data[4].ctlEdges[2].bChannel*/FREQ2FBIN(5500, 0),
  542             /* Data[4].ctlEdges[3].bChannel*/FREQ2FBIN(5700, 0),
  543             /* Data[4].ctlEdges[4].bChannel*/0xFF,
  544             /* Data[4].ctlEdges[5].bChannel*/0xFF,
  545             /* Data[4].ctlEdges[6].bChannel*/0xFF,
  546             /* Data[4].ctlEdges[7].bChannel*/0xFF},
  547 
  548             {/* Data[5].ctlEdges[0].bChannel*/FREQ2FBIN(5190, 0),
  549             /* Data[5].ctlEdges[1].bChannel*/FREQ2FBIN(5270, 0),
  550             /* Data[5].ctlEdges[2].bChannel*/FREQ2FBIN(5310, 0),
  551             /* Data[5].ctlEdges[3].bChannel*/FREQ2FBIN(5510, 0),
  552             /* Data[5].ctlEdges[4].bChannel*/FREQ2FBIN(5590, 0),
  553             /* Data[5].ctlEdges[5].bChannel*/FREQ2FBIN(5670, 0),
  554             /* Data[5].ctlEdges[6].bChannel*/0xFF,
  555             /* Data[5].ctlEdges[7].bChannel*/0xFF},
  556 
  557             {/* Data[6].ctlEdges[0].bChannel*/FREQ2FBIN(5180, 0),
  558             /* Data[6].ctlEdges[1].bChannel*/FREQ2FBIN(5200, 0),
  559             /* Data[6].ctlEdges[2].bChannel*/FREQ2FBIN(5220, 0),
  560             /* Data[6].ctlEdges[3].bChannel*/FREQ2FBIN(5260, 0),
  561             /* Data[6].ctlEdges[4].bChannel*/FREQ2FBIN(5500, 0),
  562             /* Data[6].ctlEdges[5].bChannel*/FREQ2FBIN(5600, 0),
  563             /* Data[6].ctlEdges[6].bChannel*/FREQ2FBIN(5700, 0),
  564             /* Data[6].ctlEdges[7].bChannel*/FREQ2FBIN(5745, 0)},
  565 
  566             {/* Data[7].ctlEdges[0].bChannel*/FREQ2FBIN(5180, 0),
  567             /* Data[7].ctlEdges[1].bChannel*/FREQ2FBIN(5260, 0),
  568             /* Data[7].ctlEdges[2].bChannel*/FREQ2FBIN(5320, 0),
  569             /* Data[7].ctlEdges[3].bChannel*/FREQ2FBIN(5500, 0),
  570             /* Data[7].ctlEdges[4].bChannel*/FREQ2FBIN(5560, 0),
  571             /* Data[7].ctlEdges[5].bChannel*/FREQ2FBIN(5700, 0),
  572             /* Data[7].ctlEdges[6].bChannel*/FREQ2FBIN(5745, 0),
  573             /* Data[7].ctlEdges[7].bChannel*/FREQ2FBIN(5825, 0)},
  574 
  575             {/* Data[8].ctlEdges[0].bChannel*/FREQ2FBIN(5190, 0),
  576             /* Data[8].ctlEdges[1].bChannel*/FREQ2FBIN(5230, 0),
  577             /* Data[8].ctlEdges[2].bChannel*/FREQ2FBIN(5270, 0),
  578             /* Data[8].ctlEdges[3].bChannel*/FREQ2FBIN(5510, 0),
  579             /* Data[8].ctlEdges[4].bChannel*/FREQ2FBIN(5550, 0),
  580             /* Data[8].ctlEdges[5].bChannel*/FREQ2FBIN(5670, 0),
  581             /* Data[8].ctlEdges[6].bChannel*/FREQ2FBIN(5755, 0),
  582             /* Data[8].ctlEdges[7].bChannel*/FREQ2FBIN(5795, 0)}
  583         },
  584 
  585 //static    OSP_CAL_CTL_DATA_5G   ctlData_5G[OSPREY_NUM_CTLS_5G]=
  586 
  587 #if AH_BYTE_ORDER == AH_BIG_ENDIAN
  588         {
  589             {{{1, 60},
  590               {1, 60},
  591               {1, 60},
  592               {1, 60},
  593               {1, 60},
  594               {1, 60},
  595               {1, 60},
  596               {0, 60}}},
  597 
  598             {{{1, 60},
  599               {1, 60},
  600               {1, 60},
  601               {1, 60},
  602               {1, 60},
  603               {1, 60},
  604               {1, 60},
  605               {0, 60}}},
  606 
  607             {{{0, 60},
  608               {1, 60},
  609               {0, 60},
  610               {1, 60},
  611               {1, 60},
  612               {1, 60},
  613               {1, 60},
  614               {1, 60}}},
  615             
  616             {{{0, 60},
  617               {1, 60},
  618               {1, 60},
  619               {0, 60},
  620               {1, 60},
  621               {0, 60},
  622               {0, 60},
  623               {0, 60}}},
  624 
  625             {{{1, 60},
  626               {1, 60},
  627               {1, 60},
  628               {0, 60},
  629               {0, 60},
  630               {0, 60},
  631               {0, 60},
  632               {0, 60}}},
  633 
  634             {{{1, 60},
  635               {1, 60},
  636               {1, 60},
  637               {1, 60},
  638               {1, 60},
  639               {0, 60},
  640               {0, 60},
  641               {0, 60}}},
  642 
  643             {{{1, 60},
  644               {1, 60},
  645               {1, 60},
  646               {1, 60},
  647               {1, 60},
  648               {1, 60},
  649               {1, 60},
  650               {1, 60}}},
  651 
  652             {{{1, 60},
  653               {1, 60},
  654               {0, 60},
  655               {1, 60},
  656               {1, 60},
  657               {1, 60},
  658               {1, 60},
  659               {0, 60}}},
  660 
  661             {{{1, 60},
  662               {0, 60},
  663               {1, 60},
  664               {1, 60},
  665               {1, 60},
  666               {1, 60},
  667               {0, 60},
  668               {1, 60}}},
  669         }
  670 #else
  671         {
  672             {{{60, 1},
  673               {60, 1},
  674               {60, 1},
  675               {60, 1},
  676               {60, 1},
  677               {60, 1},
  678               {60, 1},
  679               {60, 0}}},
  680 
  681             {{{60, 1},
  682               {60, 1},
  683               {60, 1},
  684               {60, 1},
  685               {60, 1},
  686               {60, 1},
  687               {60, 1},
  688               {60, 0}}},
  689 
  690             {{{60, 0},
  691               {60, 1},
  692               {60, 0},
  693               {60, 1},
  694               {60, 1},
  695               {60, 1},
  696               {60, 1},
  697               {60, 1}}},
  698             
  699             {{{60, 0},
  700               {60, 1},
  701               {60, 1},
  702               {60, 0},
  703               {60, 1},
  704               {60, 0},
  705               {60, 0},
  706               {60, 0}}},
  707 
  708             {{{60, 1},
  709               {60, 1},
  710               {60, 1},
  711               {60, 0},
  712               {60, 0},
  713               {60, 0},
  714               {60, 0},
  715               {60, 0}}},
  716 
  717             {{{60, 1},
  718               {60, 1},
  719               {60, 1},
  720               {60, 1},
  721               {60, 1},
  722               {60, 0},
  723               {60, 0},
  724               {60, 0}}},
  725 
  726             {{{60, 1},
  727               {60, 1},
  728               {60, 1},
  729               {60, 1},
  730               {60, 1},
  731               {60, 1},
  732               {60, 1},
  733               {60, 1}}},
  734 
  735             {{{60, 1},
  736               {60, 1},
  737               {60, 0},
  738               {60, 1},
  739               {60, 1},
  740               {60, 1},
  741               {60, 1},
  742               {60, 0}}},
  743 
  744             {{{60, 1},
  745               {60, 0},
  746               {60, 1},
  747               {60, 1},
  748               {60, 1},
  749               {60, 1},
  750               {60, 0},
  751               {60, 1}}},
  752         }
  753 #endif
  754 };
  755 
  756 #endif

Cache object: 7d016b79903f59ce5078ec8bace0a93a


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.