⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 if_ath_ahb.h

📁 Linux下wifi实现
💻 H
字号:
/* * Copyright (c) 2004 Atheros Communications, Inc. * All rights reserved. * * $Id: if_ath_ahb.h 1441 2006-02-06 16:03:21Z mrenzmann $ */#ifndef _DEV_ATH_AHB_H_#define _DEV_ATH_AHB_H_#include <asm/io.h>#include <asm/uaccess.h>#define AR531X_WLAN0_NUM       0#define AR531X_WLAN1_NUM       1#define REG_WRITE(_reg,_val)		*((volatile u_int32_t *)(_reg)) = (_val);#define REG_READ(_reg)			*((volatile u_int32_t *)(_reg))/* * 5315 specific registers  *//*  * PCI-MAC Configuration registers  */#define AR5315_PCI		0xB0100000      /* PCI MMR */#define AR5315_PCI_MAC_RC	(AR5315_PCI + 0x4000) #define AR5315_PCI_MAC_SCR	(AR5315_PCI + 0x4004)#define AR5315_PCI_MAC_INTPEND	(AR5315_PCI + 0x4008)#define AR5315_PCI_MAC_SFR	(AR5315_PCI + 0x400C)#define AR5315_PCI_MAC_PCICFG	(AR5315_PCI + 0x4010)#define AR5315_PCI_MAC_SREV	(AR5315_PCI + 0x4020)#define AR5315_PCI_MAC_RC_MAC	0x00000001#define AR5315_PCI_MAC_RC_BB	0x00000002#define AR5315_PCI_MAC_SCR_SLMODE_M	0x00030000#define AR5315_PCI_MAC_SCR_SLMODE_S	16        #define AR5315_PCI_MAC_SCR_SLM_FWAKE	0         #define AR5315_PCI_MAC_SCR_SLM_FSLEEP	1         #define AR5315_PCI_MAC_SCR_SLM_NORMAL	2         #define AR5315_PCI_MAC_SFR_SLEEP	0x00000001#define AR5315_PCI_MAC_PCICFG_SPWR_DN	0x00010000#define AR5315_IRQ_WLAN0_INTRS	3#define AR5315_WLAN0		0xb0000000#define AR5315_ENDIAN_CTL	0xb100000c#define AR5315_CONFIG_WLAN	0x00000002      /* WLAN byteswap */#define AR5315_AHB_ARB_CTL	0xb1000008#define AR5315_ARB_WLAN		0x00000002/* * Revision Register - Initial value is 0x3010 (WMAC 3.0, AR531X 1.0). */#define AR5315_SREV		0xb1000014#define AR5315_REV_MAJ		0x0080#define AR5315_REV_MAJ_M	0x00f0#define AR5315_REV_MAJ_S	4#define AR5315_REV_MIN_M	0x000f#define AR5315_REV_MIN_S	0#define AR5315_REV_CHIP		(REV_MAJ|REV_MIN)#define AR531X_IRQ_WLAN0_INTRS	2#define AR531X_IRQ_WLAN1_INTRS	5#define AR531X_WLAN0		0xb8000000#define AR531X_WLAN1		0xb8500000#define AR531X_WLANX_LEN	0x000ffffc#define AR531X_ENABLE		0xbc003080#define AR531X_ENABLE_WLAN1	0x8#define AR531X_ENABLE_WLAN0	0x1#define AR531X_RADIO_MASK_OFF	0xc8#define AR531X_RADIO0_MASK	0x0003#define AR531X_RADIO1_MASK	0x000c#define AR531X_RADIO1_S		2#define BUS_DMA_FROMDEVICE	0#define BUS_DMA_TODEVICE	1#define AR531X_APBBASE		0xbc000000#define AR531X_RESETTMR		(AR531X_APBBASE  + 0x3000)#define AR531X_REV		(AR531X_RESETTMR + 0x0090) /* revision */#define AR531X_REV_MAJ		0x00f0#define AR531X_REV_MAJ_S	4#define AR531X_REV_MIN		0x000f#define AR531X_REV_MIN_S	0#define AR531X_BD_MAGIC 0x35333131   /* "5311", for all 531x platforms *//* set bus cachesize in 4B word units */static __inline void bus_dma_sync_single(void *hwdev, dma_addr_t dma_handle,	size_t size, int direction){    unsigned long addr;        addr = (unsigned long) __va(dma_handle);    dma_cache_wback_inv(addr, size);}static __inline dma_addr_t bus_map_single(void *hwdev, void *ptr,	size_t size, int direction){    unsigned long addr = (unsigned long) ptr;        dma_cache_wback_inv(addr, size);        return __pa(ptr);}static __inline void bus_unmap_single(void *hwdev, dma_addr_t dma_addr,	size_t size, int direction){    if (direction != BUS_DMA_TODEVICE) {        unsigned long addr;                addr = (unsigned long)__va(dma_addr);        dma_cache_wback_inv(addr, size);    }}void *bus_alloc_consistent(void *, size_t, dma_addr_t *);void bus_free_consistent(void *, size_t, void *, dma_addr_t);extern const char * get_system_type(void);#define sysRegRead(phys)      (*(volatile u_int32_t *)phys)#endif    /* _DEV_ATH_AHB_H_ */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -