iPXE
reg.h
Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2008-2009 Atheros Communications Inc.
00003  *
00004  * Modified for iPXE by Scott K Logan <logans@cottsay.net> July 2011
00005  * Original from Linux kernel 3.0.1
00006  *
00007  * Permission to use, copy, modify, and/or distribute this software for any
00008  * purpose with or without fee is hereby granted, provided that the above
00009  * copyright notice and this permission notice appear in all copies.
00010  *
00011  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
00012  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
00013  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
00014  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
00015  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
00016  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
00017  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
00018  */
00019 
00020 #ifndef ATH_REGISTERS_H
00021 #define ATH_REGISTERS_H
00022 
00023 FILE_LICENCE ( BSD2 );
00024 
00025 #define AR_MIBC                 0x0040
00026 #define AR_MIBC_COW             0x00000001
00027 #define AR_MIBC_FMC             0x00000002
00028 #define AR_MIBC_CMC             0x00000004
00029 #define AR_MIBC_MCS             0x00000008
00030 
00031 /*
00032  * BSSID mask registers. See ath_hw_set_bssid_mask()
00033  * for detailed documentation about these registers.
00034  */
00035 #define AR_BSSMSKL              0x80e0
00036 #define AR_BSSMSKU              0x80e4
00037 
00038 #define AR_TFCNT                0x80ec
00039 #define AR_RFCNT                0x80f0
00040 #define AR_RCCNT                0x80f4
00041 #define AR_CCCNT                0x80f8
00042 
00043 #define AR_KEYTABLE_0           0x8800
00044 #define AR_KEYTABLE(_n)         (AR_KEYTABLE_0 + ((_n)*32))
00045 #define AR_KEY_CACHE_SIZE       128
00046 #define AR_RSVD_KEYTABLE_ENTRIES 4
00047 #define AR_KEY_TYPE             0x00000007
00048 #define AR_KEYTABLE_TYPE_40     0x00000000
00049 #define AR_KEYTABLE_TYPE_104    0x00000001
00050 #define AR_KEYTABLE_TYPE_128    0x00000003
00051 #define AR_KEYTABLE_TYPE_TKIP   0x00000004
00052 #define AR_KEYTABLE_TYPE_AES    0x00000005
00053 #define AR_KEYTABLE_TYPE_CCM    0x00000006
00054 #define AR_KEYTABLE_TYPE_CLR    0x00000007
00055 #define AR_KEYTABLE_ANT         0x00000008
00056 #define AR_KEYTABLE_VALID       0x00008000
00057 #define AR_KEYTABLE_KEY0(_n)    (AR_KEYTABLE(_n) + 0)
00058 #define AR_KEYTABLE_KEY1(_n)    (AR_KEYTABLE(_n) + 4)
00059 #define AR_KEYTABLE_KEY2(_n)    (AR_KEYTABLE(_n) + 8)
00060 #define AR_KEYTABLE_KEY3(_n)    (AR_KEYTABLE(_n) + 12)
00061 #define AR_KEYTABLE_KEY4(_n)    (AR_KEYTABLE(_n) + 16)
00062 #define AR_KEYTABLE_TYPE(_n)    (AR_KEYTABLE(_n) + 20)
00063 #define AR_KEYTABLE_MAC0(_n)    (AR_KEYTABLE(_n) + 24)
00064 #define AR_KEYTABLE_MAC1(_n)    (AR_KEYTABLE(_n) + 28)
00065 
00066 #endif /* ATH_REGISTERS_H */