Main Page | Data Structures | Directories | File List | Data Fields | Globals

ar5211var.h

Go to the documentation of this file.
00001 /*      $OpenBSD: ar5211var.h,v 1.6 2005/07/30 17:13:17 reyk Exp $      */
00002 
00003 /*
00004  * Copyright (c) 2004, 2005 Reyk Floeter <reyk@vantronix.net>
00005  *
00006  * Permission to use, copy, modify, and distribute this software for any
00007  * purpose with or without fee is hereby granted, provided that the above
00008  * copyright notice and this permission notice appear in all copies.
00009  *
00010  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
00011  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
00012  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
00013  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
00014  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
00015  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
00016  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
00017  */
00018 
00019 /*
00020  * Specific definitions for the Atheros AR5001 Wireless LAN chipset
00021  * (AR5211/AR5311).
00022  */
00023 
00024 #ifndef _AR5K_AR5211_VAR_H
00025 #define _AR5K_AR5211_VAR_H
00026 
00027 #include <dev/ic/ar5xxx.h>
00028 
00029 /*
00030  * Define a "magic" code for the AR5211 (the HAL layer wants it)
00031  */
00032 
00033 #define AR5K_AR5211_MAGIC               0x0000145b /* 5211 */
00034 #define AR5K_AR5211_TX_NUM_QUEUES       10
00035 
00036 #if BYTE_ORDER == BIG_ENDIAN
00037 #define AR5K_AR5211_INIT_CFG    (                                       \
00038         AR5K_AR5211_CFG_SWTD | AR5K_AR5211_CFG_SWRD                     \
00039 )
00040 #else
00041 #define AR5K_AR5211_INIT_CFG    0x00000000
00042 #endif
00043 
00044 /*
00045  * Internal RX/TX descriptor structures
00046  * (rX: reserved fields possibily used by future versions of the ar5k chipset)
00047  */
00048 
00049 struct ar5k_ar5211_rx_desc {
00050         /*
00051          * RX control word 0
00052          */
00053         u_int32_t       rx_control_0;
00054 
00055 #define AR5K_AR5211_DESC_RX_CTL0                        0x00000000
00056 
00057         /*
00058          * RX control word 1
00059          */
00060         u_int32_t       rx_control_1;
00061 
00062 #define AR5K_AR5211_DESC_RX_CTL1_BUF_LEN                0x00000fff
00063 #define AR5K_AR5211_DESC_RX_CTL1_INTREQ                 0x00002000
00064 } __packed;
00065 
00066 struct ar5k_ar5211_rx_status {
00067         /*
00068          * RX status word 0
00069          */
00070         u_int32_t       rx_status_0;
00071 
00072 #define AR5K_AR5211_DESC_RX_STATUS0_DATA_LEN            0x00000fff
00073 #define AR5K_AR5211_DESC_RX_STATUS0_MORE                0x00001000
00074 #define AR5K_AR5211_DESC_RX_STATUS0_RECEIVE_RATE        0x00078000
00075 #define AR5K_AR5211_DESC_RX_STATUS0_RECEIVE_RATE_S      15
00076 #define AR5K_AR5211_DESC_RX_STATUS0_RECEIVE_SIGNAL      0x07f80000
00077 #define AR5K_AR5211_DESC_RX_STATUS0_RECEIVE_SIGNAL_S    19
00078 #define AR5K_AR5211_DESC_RX_STATUS0_RECEIVE_ANTENNA     0x38000000
00079 #define AR5K_AR5211_DESC_RX_STATUS0_RECEIVE_ANTENNA_S   27
00080 
00081         /*
00082          * RX status word 1
00083          */
00084         u_int32_t       rx_status_1;
00085 
00086 #define AR5K_AR5211_DESC_RX_STATUS1_DONE                0x00000001
00087 #define AR5K_AR5211_DESC_RX_STATUS1_FRAME_RECEIVE_OK    0x00000002
00088 #define AR5K_AR5211_DESC_RX_STATUS1_CRC_ERROR           0x00000004
00089 #define AR5K_AR5211_DESC_RX_STATUS1_FIFO_OVERRUN        0x00000008
00090 #define AR5K_AR5211_DESC_RX_STATUS1_DECRYPT_CRC_ERROR   0x00000010
00091 #define AR5K_AR5211_DESC_RX_STATUS1_PHY_ERROR           0x000000e0
00092 #define AR5K_AR5211_DESC_RX_STATUS1_PHY_ERROR_S         5
00093 #define AR5K_AR5211_DESC_RX_STATUS1_KEY_INDEX_VALID     0x00000100
00094 #define AR5K_AR5211_DESC_RX_STATUS1_KEY_INDEX           0x00007e00
00095 #define AR5K_AR5211_DESC_RX_STATUS1_KEY_INDEX_S         9
00096 #define AR5K_AR5211_DESC_RX_STATUS1_RECEIVE_TIMESTAMP   0x0fff8000
00097 #define AR5K_AR5211_DESC_RX_STATUS1_RECEIVE_TIMESTAMP_S 15
00098 #define AR5K_AR5211_DESC_RX_STATUS1_KEY_CACHE_MISS      0x10000000
00099 } __packed;
00100 
00101 #define AR5K_AR5211_DESC_RX_PHY_ERROR_NONE              0x00
00102 #define AR5K_AR5211_DESC_RX_PHY_ERROR_TIMING            0x20
00103 #define AR5K_AR5211_DESC_RX_PHY_ERROR_PARITY            0x40
00104 #define AR5K_AR5211_DESC_RX_PHY_ERROR_RATE              0x60
00105 #define AR5K_AR5211_DESC_RX_PHY_ERROR_LENGTH            0x80
00106 #define AR5K_AR5211_DESC_RX_PHY_ERROR_64QAM             0xa0
00107 #define AR5K_AR5211_DESC_RX_PHY_ERROR_SERVICE           0xc0
00108 #define AR5K_AR5211_DESC_RX_PHY_ERROR_TRANSMITOVR       0xe0
00109 
00110 struct ar5k_ar5211_tx_desc {
00111         /*
00112          * TX control word 0
00113          */
00114         u_int32_t       tx_control_0;
00115 
00116 #define AR5K_AR5211_DESC_TX_CTL0_FRAME_LEN              0x00000fff
00117 #define AR5K_AR5211_DESC_TX_CTL0_XMIT_RATE              0x003c0000
00118 #define AR5K_AR5211_DESC_TX_CTL0_XMIT_RATE_S            18
00119 #define AR5K_AR5211_DESC_TX_CTL0_RTSENA                 0x00400000
00120 #define AR5K_AR5211_DESC_TX_CTL0_VEOL                   0x00800000
00121 #define AR5K_AR5211_DESC_TX_CTL0_CLRDMASK               0x01000000
00122 #define AR5K_AR5211_DESC_TX_CTL0_ANT_MODE_XMIT          0x1e000000
00123 #define AR5K_AR5211_DESC_TX_CTL0_ANT_MODE_XMIT_S        25
00124 #define AR5K_AR5211_DESC_TX_CTL0_INTREQ                 0x20000000
00125 #define AR5K_AR5211_DESC_TX_CTL0_ENCRYPT_KEY_VALID      0x40000000
00126 
00127         /*
00128          * TX control word 1
00129          */
00130         u_int32_t       tx_control_1;
00131 
00132 #define AR5K_AR5211_DESC_TX_CTL1_BUF_LEN                0x00000fff
00133 #define AR5K_AR5211_DESC_TX_CTL1_MORE                   0x00001000
00134 #define AR5K_AR5211_DESC_TX_CTL1_ENCRYPT_KEY_INDEX      0x000fe000
00135 #define AR5K_AR5211_DESC_TX_CTL1_ENCRYPT_KEY_INDEX_S    13
00136 #define AR5K_AR5211_DESC_TX_CTL1_FRAME_TYPE             0x00700000
00137 #define AR5K_AR5211_DESC_TX_CTL1_FRAME_TYPE_S           20
00138 #define AR5K_AR5211_DESC_TX_CTL1_NOACK                  0x00800000
00139 } __packed;
00140 
00141 struct ar5k_ar5211_tx_status {
00142         /*
00143          * TX status word 0
00144          */
00145         u_int32_t       tx_status_0;
00146 
00147 #define AR5K_AR5211_DESC_TX_STATUS0_FRAME_XMIT_OK       0x00000001
00148 #define AR5K_AR5211_DESC_TX_STATUS0_EXCESSIVE_RETRIES   0x00000002
00149 #define AR5K_AR5211_DESC_TX_STATUS0_FIFO_UNDERRUN       0x00000004
00150 #define AR5K_AR5211_DESC_TX_STATUS0_FILTERED            0x00000008
00151 #define AR5K_AR5211_DESC_TX_STATUS0_RTS_FAIL_COUNT      0x000000f0
00152 #define AR5K_AR5211_DESC_TX_STATUS0_RTS_FAIL_COUNT_S    4
00153 #define AR5K_AR5211_DESC_TX_STATUS0_DATA_FAIL_COUNT     0x00000f00
00154 #define AR5K_AR5211_DESC_TX_STATUS0_DATA_FAIL_COUNT_S   8
00155 #define AR5K_AR5211_DESC_TX_STATUS0_VIRT_COLL_COUNT     0x0000f000
00156 #define AR5K_AR5211_DESC_TX_STATUS0_VIRT_COLL_COUNT_S   12
00157 #define AR5K_AR5211_DESC_TX_STATUS0_SEND_TIMESTAMP      0xffff0000
00158 #define AR5K_AR5211_DESC_TX_STATUS0_SEND_TIMESTAMP_S    16
00159 
00160         /*
00161          * TX status word 1
00162          */
00163         u_int32_t       tx_status_1;
00164 
00165 #define AR5K_AR5211_DESC_TX_STATUS1_DONE                0x00000001
00166 #define AR5K_AR5211_DESC_TX_STATUS1_SEQ_NUM             0x00001ffe
00167 #define AR5K_AR5211_DESC_TX_STATUS1_SEQ_NUM_S           1
00168 #define AR5K_AR5211_DESC_TX_STATUS1_ACK_SIG_STRENGTH    0x001fe000
00169 #define AR5K_AR5211_DESC_TX_STATUS1_ACK_SIG_STRENGTH_S  13
00170 } __packed;
00171 
00172 /*
00173  * Public function prototypes
00174  */
00175 extern ar5k_attach_t ar5k_ar5211_attach;
00176 
00177 /*
00178  * Initial register values which have to be loaded into the
00179  * card at boot time and after each reset.
00180  */
00181 
00182 #define AR5K_AR5211_INI {                                               \
00183         { 0x000c, 0x00000000 },                                         \
00184         { 0x0028, 0x84849c9c },                                         \
00185         { 0x002c, 0x7c7c7c7c },                                         \
00186         { 0x0034, 0x00000005 },                                         \
00187         { 0x0040, 0x00000000 },                                         \
00188         { 0x0044, 0x00000008 },                                         \
00189         { 0x0048, 0x00000008 },                                         \
00190         { 0x004c, 0x00000010 },                                         \
00191         { 0x0050, 0x00000000 },                                         \
00192         { 0x0054, 0x0000001f },                                         \
00193         { 0x0800, 0x00000000 },                                         \
00194         { 0x0804, 0x00000000 },                                         \
00195         { 0x0808, 0x00000000 },                                         \
00196         { 0x080c, 0x00000000 },                                         \
00197         { 0x0810, 0x00000000 },                                         \
00198         { 0x0814, 0x00000000 },                                         \
00199         { 0x0818, 0x00000000 },                                         \
00200         { 0x081c, 0x00000000 },                                         \
00201         { 0x0820, 0x00000000 },                                         \
00202         { 0x0824, 0x00000000 },                                         \
00203         { 0x1230, 0x00000000 },                                         \
00204         { 0x8004, 0x00000000 },                                         \
00205         { 0x8008, 0x00000000 },                                         \
00206         { 0x800c, 0x00000000 },                                         \
00207         { 0x8018, 0x00000000 },                                         \
00208         { 0x8024, 0x00000000 },                                         \
00209         { 0x8028, 0x00000030 },                                         \
00210         { 0x802c, 0x0007ffff },                                         \
00211         { 0x8030, 0x01ffffff },                                         \
00212         { 0x8034, 0x00000031 },                                         \
00213         { 0x8038, 0x00000000 },                                         \
00214         { 0x803c, 0x00000000 },                                         \
00215         { 0x8040, 0x00000000 },                                         \
00216         { 0x8044, 0x00000002 },                                         \
00217         { 0x8048, 0x00000000 },                                         \
00218         { 0x8054, 0x00000000 },                                         \
00219         { 0x8058, 0x00000000 },                                         \
00220         /* PHY registers */                                             \
00221         { 0x9808, 0x00000000 },                                         \
00222         { 0x980c, 0x2d849093 },                                         \
00223         { 0x9810, 0x7d32e000 },                                         \
00224         { 0x9814, 0x00000f6b },                                         \
00225         { 0x981c, 0x00000000 },                                         \
00226         { 0x982c, 0x00026ffe },                                         \
00227         { 0x9830, 0x00000000 },                                         \
00228         { 0x983c, 0x00020100 },                                         \
00229         { 0x9840, 0x206a017a },                                         \
00230         { 0x984c, 0x1284613c },                                         \
00231         { 0x9854, 0x00000859 },                                         \
00232         { 0x9868, 0x409a4190 },                                         \
00233         { 0x986c, 0x050cb081 },                                         \
00234         { 0x9870, 0x0000000f },                                         \
00235         { 0x9874, 0x00000080 },                                         \
00236         { 0x9878, 0x0000000c },                                         \
00237         { 0x9900, 0x00000000 },                                         \
00238         { 0x9904, 0x00000000 },                                         \
00239         { 0x9908, 0x00000000 },                                         \
00240         { 0x990c, 0x00800000 },                                         \
00241         { 0x9910, 0x00000001 },                                         \
00242         { 0x991c, 0x0000092a },                                         \
00243         { 0x9920, 0x00000000 },                                         \
00244         { 0x9924, 0x00058a05 },                                         \
00245         { 0x9928, 0x00000001 },                                         \
00246         { 0x992c, 0x00000000 },                                         \
00247         { 0x9930, 0x00000000 },                                         \
00248         { 0x9934, 0x00000000 },                                         \
00249         { 0x9938, 0x00000000 },                                         \
00250         { 0x993c, 0x0000003f },                                         \
00251         { 0x9940, 0x00000004 },                                         \
00252         { 0x9948, 0x00000000 },                                         \
00253         { 0x994c, 0x00000000 },                                         \
00254         { 0x9950, 0x00000000 },                                         \
00255         { 0x9954, 0x5d50f14c },                                         \
00256         { 0x9958, 0x00000018 },                                         \
00257         { 0x995c, 0x004b6a8e },                                         \
00258         { 0xa184, 0x06ff05ff },                                         \
00259         { 0xa188, 0x07ff07ff },                                         \
00260         { 0xa18c, 0x08ff08ff },                                         \
00261         { 0xa190, 0x09ff09ff },                                         \
00262         { 0xa194, 0x0aff0aff },                                         \
00263         { 0xa198, 0x0bff0bff },                                         \
00264         { 0xa19c, 0x0cff0cff },                                         \
00265         { 0xa1a0, 0x0dff0dff },                                         \
00266         { 0xa1a4, 0x0fff0eff },                                         \
00267         { 0xa1a8, 0x12ff12ff },                                         \
00268         { 0xa1ac, 0x14ff13ff },                                         \
00269         { 0xa1b0, 0x16ff15ff },                                         \
00270         { 0xa1b4, 0x19ff17ff },                                         \
00271         { 0xa1b8, 0x1bff1aff },                                         \
00272         { 0xa1bc, 0x1eff1dff },                                         \
00273         { 0xa1c0, 0x23ff20ff },                                         \
00274         { 0xa1c4, 0x27ff25ff },                                         \
00275         { 0xa1c8, 0x2cff29ff },                                         \
00276         { 0xa1cc, 0x31ff2fff },                                         \
00277         { 0xa1d0, 0x37ff34ff },                                         \
00278         { 0xa1d4, 0x3aff3aff },                                         \
00279         { 0xa1d8, 0x3aff3aff },                                         \
00280         { 0xa1dc, 0x3aff3aff },                                         \
00281         { 0xa1e0, 0x3aff3aff },                                         \
00282         { 0xa1e4, 0x3aff3aff },                                         \
00283         { 0xa1e8, 0x3aff3aff },                                         \
00284         { 0xa1ec, 0x3aff3aff },                                         \
00285         { 0xa1f0, 0x3aff3aff },                                         \
00286         { 0xa1f4, 0x3aff3aff },                                         \
00287         { 0xa1f8, 0x3aff3aff },                                         \
00288         { 0xa1fc, 0x3aff3aff },                                         \
00289         /* BB gain table (64bytes) */                                   \
00290         { 0x9b00, 0x00000000 },                                         \
00291         { 0x9b04, 0x00000020 },                                         \
00292         { 0x9b08, 0x00000010 },                                         \
00293         { 0x9b0c, 0x00000030 },                                         \
00294         { 0x9b10, 0x00000008 },                                         \
00295         { 0x9b14, 0x00000028 },                                         \
00296         { 0x9b18, 0x00000004 },                                         \
00297         { 0x9b1c, 0x00000024 },                                         \
00298         { 0x9b20, 0x00000014 },                                         \
00299         { 0x9b24, 0x00000034 },                                         \
00300         { 0x9b28, 0x0000000c },                                         \
00301         { 0x9b2c, 0x0000002c },                                         \
00302         { 0x9b30, 0x00000002 },                                         \
00303         { 0x9b34, 0x00000022 },                                         \
00304         { 0x9b38, 0x00000012 },                                         \
00305         { 0x9b3c, 0x00000032 },                                         \
00306         { 0x9b40, 0x0000000a },                                         \
00307         { 0x9b44, 0x0000002a },                                         \
00308         { 0x9b48, 0x00000006 },                                         \
00309         { 0x9b4c, 0x00000026 },                                         \
00310         { 0x9b50, 0x00000016 },                                         \
00311         { 0x9b54, 0x00000036 },                                         \
00312         { 0x9b58, 0x0000000e },                                         \
00313         { 0x9b5c, 0x0000002e },                                         \
00314         { 0x9b60, 0x00000001 },                                         \
00315         { 0x9b64, 0x00000021 },                                         \
00316         { 0x9b68, 0x00000011 },                                         \
00317         { 0x9b6c, 0x00000031 },                                         \
00318         { 0x9b70, 0x00000009 },                                         \
00319         { 0x9b74, 0x00000029 },                                         \
00320         { 0x9b78, 0x00000005 },                                         \
00321         { 0x9b7c, 0x00000025 },                                         \
00322         { 0x9b80, 0x00000015 },                                         \
00323         { 0x9b84, 0x00000035 },                                         \
00324         { 0x9b88, 0x0000000d },                                         \
00325         { 0x9b8c, 0x0000002d },                                         \
00326         { 0x9b90, 0x00000003 },                                         \
00327         { 0x9b94, 0x00000023 },                                         \
00328         { 0x9b98, 0x00000013 },                                         \
00329         { 0x9b9c, 0x00000033 },                                         \
00330         { 0x9ba0, 0x0000000b },                                         \
00331         { 0x9ba4, 0x0000002b },                                         \
00332         { 0x9ba8, 0x0000002b },                                         \
00333         { 0x9bac, 0x0000002b },                                         \
00334         { 0x9bb0, 0x0000002b },                                         \
00335         { 0x9bb4, 0x0000002b },                                         \
00336         { 0x9bb8, 0x0000002b },                                         \
00337         { 0x9bbc, 0x0000002b },                                         \
00338         { 0x9bc0, 0x0000002b },                                         \
00339         { 0x9bc4, 0x0000002b },                                         \
00340         { 0x9bc8, 0x0000002b },                                         \
00341         { 0x9bcc, 0x0000002b },                                         \
00342         { 0x9bd0, 0x0000002b },                                         \
00343         { 0x9bd4, 0x0000002b },                                         \
00344         { 0x9bd8, 0x0000002b },                                         \
00345         { 0x9bdc, 0x0000002b },                                         \
00346         { 0x9be0, 0x0000002b },                                         \
00347         { 0x9be4, 0x0000002b },                                         \
00348         { 0x9be8, 0x0000002b },                                         \
00349         { 0x9bec, 0x0000002b },                                         \
00350         { 0x9bf0, 0x0000002b },                                         \
00351         { 0x9bf4, 0x0000002b },                                         \
00352         { 0x9bf8, 0x00000002 },                                         \
00353         { 0x9bfc, 0x00000016 },                                         \
00354         /* PHY activation */                                            \
00355         { 0x98d4, 0x00000020 },                                         \
00356         { 0x98d8, 0x00601068 },                                         \
00357 }
00358 
00359 struct ar5k_ar5211_ini_mode {
00360         u_int16_t       mode_register;
00361         u_int32_t       mode_value[4];
00362 };
00363 
00364 #define AR5K_AR5211_INI_MODE {                                          \
00365         { 0x0030, { 0x00000017, 0x00000017, 0x00000017, 0x00000017 } }, \
00366         { 0x1040, { 0x002ffc0f, 0x002ffc0f, 0x002ffc1f, 0x002ffc0f } }, \
00367         { 0x1044, { 0x002ffc0f, 0x002ffc0f, 0x002ffc1f, 0x002ffc0f } }, \
00368         { 0x1048, { 0x002ffc0f, 0x002ffc0f, 0x002ffc1f, 0x002ffc0f } }, \
00369         { 0x104c, { 0x002ffc0f, 0x002ffc0f, 0x002ffc1f, 0x002ffc0f } }, \
00370         { 0x1050, { 0x002ffc0f, 0x002ffc0f, 0x002ffc1f, 0x002ffc0f } }, \
00371         { 0x1054, { 0x002ffc0f, 0x002ffc0f, 0x002ffc1f, 0x002ffc0f } }, \
00372         { 0x1058, { 0x002ffc0f, 0x002ffc0f, 0x002ffc1f, 0x002ffc0f } }, \
00373         { 0x105c, { 0x002ffc0f, 0x002ffc0f, 0x002ffc1f, 0x002ffc0f } }, \
00374         { 0x1060, { 0x002ffc0f, 0x002ffc0f, 0x002ffc1f, 0x002ffc0f } }, \
00375         { 0x1064, { 0x002ffc0f, 0x002ffc0f, 0x002ffc1f, 0x002ffc0f } }, \
00376         { 0x1070, { 0x00000168, 0x000001e0, 0x000001b8, 0x00000168 } }, \
00377         { 0x1030, { 0x00000230, 0x000001e0, 0x000000b0, 0x00000230 } }, \
00378         { 0x10b0, { 0x00000d98, 0x00001180, 0x00001f48, 0x00000d98 } }, \
00379         { 0x10f0, { 0x0000a0e0, 0x00014068, 0x00005880, 0x0000a0e0 } }, \
00380         { 0x8014, { 0x04000400, 0x08000800, 0x20003000, 0x04000400 } }, \
00381         { 0x801c, { 0x0e8d8fa7, 0x0e8d8fcf, 0x01608f95, 0x0e8d8fa7 } }, \
00382         { 0x9804, { 0x00000000, 0x00000003, 0x00000000, 0x00000000 } }, \
00383         { 0x9820, { 0x02020200, 0x02020200, 0x02010200, 0x02020200 } }, \
00384         { 0x9824, { 0x00000e0e, 0x00000e0e, 0x00000707, 0x00000e0e } }, \
00385         { 0x9828, { 0x0a020001, 0x0a020001, 0x05010000, 0x0a020001 } }, \
00386         { 0x9834, { 0x00000e0e, 0x00000e0e, 0x00000e0e, 0x00000e0e } }, \
00387         { 0x9838, { 0x00000007, 0x00000007, 0x0000000b, 0x0000000b } }, \
00388         { 0x9844, { 0x1372169c, 0x137216a5, 0x137216a8, 0x1372169c } }, \
00389         { 0x9848, { 0x0018ba67, 0x0018ba67, 0x0018ba69, 0x0018ba69 } }, \
00390         { 0x9850, { 0x0c28b4e0, 0x0c28b4e0, 0x0c28b4e0, 0x0c28b4e0 } }, \
00391         { 0x9858, { 0x7e800d2e, 0x7e800d2e, 0x7ec00d2e, 0x7e800d2e } }, \
00392         { 0x985c, { 0x31375d5e, 0x31375d5e, 0x313a5d5e, 0x31375d5e } }, \
00393         { 0x9860, { 0x0000bd10, 0x0000bd10, 0x0000bd38, 0x0000bd10 } }, \
00394         { 0x9864, { 0x0001ce00, 0x0001ce00, 0x0001ce00, 0x0001ce00 } }, \
00395         { 0x9914, { 0x00002710, 0x00002710, 0x0000157c, 0x00002710 } }, \
00396         { 0x9918, { 0x00000190, 0x00000190, 0x00000084, 0x00000190 } }, \
00397         { 0x9944, { 0x6fe01020, 0x6fe01020, 0x6fe00920, 0x6fe01020 } }, \
00398         { 0xa180, { 0x05ff14ff, 0x05ff14ff, 0x05ff14ff, 0x05ff19ff } }, \
00399         { 0x98d4, { 0x00000010, 0x00000014, 0x00000010, 0x00000010 } }, \
00400 }
00401 
00402 struct ar5k_ar5211_ini_rf {
00403         u_int16_t       rf_register;
00404         u_int32_t       rf_value[2];
00405 };
00406 
00407 #define AR5K_AR5211_INI_RF      {                                       \
00408         { 0x0000a204, { 0x00000000, 0x00000000 } },                     \
00409         { 0x0000a208, { 0x503e4646, 0x503e4646 } },                     \
00410         { 0x0000a20c, { 0x6480416c, 0x6480416c } },                     \
00411         { 0x0000a210, { 0x0199a003, 0x0199a003 } },                     \
00412         { 0x0000a214, { 0x044cd610, 0x044cd610 } },                     \
00413         { 0x0000a218, { 0x13800040, 0x13800040 } },                     \
00414         { 0x0000a21c, { 0x1be00060, 0x1be00060 } },                     \
00415         { 0x0000a220, { 0x0c53800a, 0x0c53800a } },                     \
00416         { 0x0000a224, { 0x0014df3b, 0x0014df3b } },                     \
00417         { 0x0000a228, { 0x000001b5, 0x000001b5 } },                     \
00418         { 0x0000a22c, { 0x00000020, 0x00000020 } },                     \
00419         { 0x0000989c, { 0x00000000, 0x00000000 } },                     \
00420         { 0x0000989c, { 0x00000000, 0x00000000 } },                     \
00421         { 0x0000989c, { 0x00000000, 0x00000000 } },                     \
00422         { 0x0000989c, { 0x00000000, 0x00000000 } },                     \
00423         { 0x0000989c, { 0x00000000, 0x00000000 } },                     \
00424         { 0x0000989c, { 0x00000000, 0x00000000 } },                     \
00425         { 0x0000989c, { 0x00000000, 0x00000000 } },                     \
00426         { 0x0000989c, { 0x00000000, 0x00000000 } },                     \
00427         { 0x0000989c, { 0x00000000, 0x00000000 } },                     \
00428         { 0x0000989c, { 0x00000000, 0x00000000 } },                     \
00429         { 0x0000989c, { 0x00000000, 0x00000000 } },                     \
00430         { 0x0000989c, { 0x00380000, 0x00380000 } },                     \
00431         { 0x0000989c, { 0x00000000, 0x00000000 } },                     \
00432         { 0x0000989c, { 0x00000000, 0x00000000 } },                     \
00433         { 0x0000989c, { 0x00000000, 0x00000000 } },                     \
00434         { 0x0000989c, { 0x000400f9, 0x000400f9 } },                     \
00435         { 0x000098d4, { 0x00000000, 0x00000004 } },                     \
00436                                                                         \
00437         { 0x0000989c, { 0x00000000, 0x00000000 } },                     \
00438         { 0x0000989c, { 0x00000000, 0x00000000 } },                     \
00439         { 0x0000989c, { 0x00000000, 0x00000000 } },                     \
00440         { 0x0000989c, { 0x00000000, 0x00000000 } },                     \
00441         { 0x0000989c, { 0x00000000, 0x00000000 } },                     \
00442         { 0x0000989c, { 0x10000000, 0x10000000 } },                     \
00443         { 0x0000989c, { 0x04000000, 0x04000000 } },                     \
00444         { 0x0000989c, { 0x00000000, 0x00000000 } },                     \
00445         { 0x0000989c, { 0x00000000, 0x00000000 } },                     \
00446         { 0x0000989c, { 0x00000000, 0x00000000 } },                     \
00447         { 0x0000989c, { 0x00000000, 0x0a000000 } },                     \
00448         { 0x0000989c, { 0x00380080, 0x02380080 } },                     \
00449         { 0x0000989c, { 0x00020006, 0x00000006 } },                     \
00450         { 0x0000989c, { 0x00000092, 0x00000092 } },                     \
00451         { 0x0000989c, { 0x000000a0, 0x000000a0 } },                     \
00452         { 0x0000989c, { 0x00040007, 0x00040007 } },                     \
00453         { 0x000098d4, { 0x0000001a, 0x0000001a } },                     \
00454         { 0x0000989c, { 0x00000048, 0x00000048 } },                     \
00455         { 0x0000989c, { 0x00000010, 0x00000010 } },                     \
00456         { 0x0000989c, { 0x00000008, 0x00000008 } },                     \
00457         { 0x0000989c, { 0x0000000f, 0x0000000f } },                     \
00458         { 0x0000989c, { 0x000000f2, 0x00000062 } },                     \
00459         { 0x0000989c, { 0x0000904f, 0x0000904c } },                     \
00460         { 0x0000989c, { 0x0000125a, 0x0000129a } },                     \
00461         { 0x000098cc, { 0x0000000e, 0x0000000f } },                     \
00462 }
00463 
00464 #endif /* _AR5K_AR5211_VAR_H */

Generated on Mon Nov 21 15:58:10 2005 for openwifi by  doxygen 1.4.1