mirror of
				https://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson
				synced 2025-10-31 09:36:25 +00:00 
			
		
		
		
	 1bba5b7329
			
		
	
	
		1bba5b7329
		
	
	
	
	
		
			
			Copied the key cache management functions from ath9k (common.c and hw.c) to ath/key.c so we can use them from ath5k, later. Minor changes have been made: - renamed ath9k_* to ath_* - replaced ah->caps.keycache_size with common->keymax - removed ATH9K_IS_MIC_ENABLED since it is always true. - the AR_PCU_MIC_NEW_LOC_ENA flag is replaced with (splitmic == 0). Signed-off-by: Bruno Randolf <br1@einfach.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
		
			
				
	
	
		
			51 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			51 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /*
 | |
|  * Copyright (c) 2008-2009 Atheros Communications Inc.
 | |
|  *
 | |
|  * Permission to use, copy, modify, and/or distribute this software for any
 | |
|  * purpose with or without fee is hereby granted, provided that the above
 | |
|  * copyright notice and this permission notice appear in all copies.
 | |
|  *
 | |
|  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
 | |
|  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
 | |
|  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
 | |
|  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
 | |
|  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
 | |
|  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 | |
|  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 | |
|  */
 | |
| 
 | |
| #ifndef ATH_REGISTERS_H
 | |
| #define ATH_REGISTERS_H
 | |
| 
 | |
| /*
 | |
|  * BSSID mask registers. See ath_hw_set_bssid_mask()
 | |
|  * for detailed documentation about these registers.
 | |
|  */
 | |
| #define AR_BSSMSKL		0x80e0
 | |
| #define AR_BSSMSKU		0x80e4
 | |
| 
 | |
| #define AR_KEYTABLE_0           0x8800
 | |
| #define AR_KEYTABLE(_n)         (AR_KEYTABLE_0 + ((_n)*32))
 | |
| #define AR_KEY_CACHE_SIZE       128
 | |
| #define AR_RSVD_KEYTABLE_ENTRIES 4
 | |
| #define AR_KEY_TYPE             0x00000007
 | |
| #define AR_KEYTABLE_TYPE_40     0x00000000
 | |
| #define AR_KEYTABLE_TYPE_104    0x00000001
 | |
| #define AR_KEYTABLE_TYPE_128    0x00000003
 | |
| #define AR_KEYTABLE_TYPE_TKIP   0x00000004
 | |
| #define AR_KEYTABLE_TYPE_AES    0x00000005
 | |
| #define AR_KEYTABLE_TYPE_CCM    0x00000006
 | |
| #define AR_KEYTABLE_TYPE_CLR    0x00000007
 | |
| #define AR_KEYTABLE_ANT         0x00000008
 | |
| #define AR_KEYTABLE_VALID       0x00008000
 | |
| #define AR_KEYTABLE_KEY0(_n)    (AR_KEYTABLE(_n) + 0)
 | |
| #define AR_KEYTABLE_KEY1(_n)    (AR_KEYTABLE(_n) + 4)
 | |
| #define AR_KEYTABLE_KEY2(_n)    (AR_KEYTABLE(_n) + 8)
 | |
| #define AR_KEYTABLE_KEY3(_n)    (AR_KEYTABLE(_n) + 12)
 | |
| #define AR_KEYTABLE_KEY4(_n)    (AR_KEYTABLE(_n) + 16)
 | |
| #define AR_KEYTABLE_TYPE(_n)    (AR_KEYTABLE(_n) + 20)
 | |
| #define AR_KEYTABLE_MAC0(_n)    (AR_KEYTABLE(_n) + 24)
 | |
| #define AR_KEYTABLE_MAC1(_n)    (AR_KEYTABLE(_n) + 28)
 | |
| 
 | |
| #endif /* ATH_REGISTERS_H */
 |