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

📄 ar5416reg.h.svn-base

📁 最新之atheros芯片driver source code, 基于linux操作系统,內含atheros芯片HAL全部代码
💻 SVN-BASE
📖 第 1 页 / 共 2 页
字号:
/* * Copyright (c) 2002-2008 Sam Leffler, Errno Consulting * Copyright (c) 2002-2008 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. * * $Id: ar5416reg.h,v 1.10 2008/11/11 00:11:30 sam Exp $ */#ifndef _DEV_ATH_AR5416REG_H#define	_DEV_ATH_AR5416REG_H#include "ar5212/ar5212reg.h"/* * Register added starting with the AR5416 */#define	AR_MIRT			0x0020	/* interrupt rate threshold */#define	AR_TIMT			0x0028	/* Tx Interrupt mitigation threshold */#define	AR_RIMT			0x002C	/* Rx Interrupt mitigation threshold */#define	AR_GTXTO		0x0064	/* global transmit timeout */#define	AR_GTTM			0x0068	/* global transmit timeout mode */#define	AR_CST			0x006C	/* carrier sense timeout */#define	AR_MAC_LED		0x1f04	/* LED control */#define	AR5416_PCIE_PM_CTRL	0x4014#define	AR_AHB_MODE		0x4024	/* AHB mode for dma */#define	AR_INTR_SYNC_CAUSE_CLR	0x4028	/* clear interrupt */#define	AR_INTR_SYNC_CAUSE	0x4028	/* check pending interrupts */#define	AR_INTR_SYNC_ENABLE	0x402c	/* enable interrupts */#define	AR_INTR_ASYNC_MASK	0x4030	/* asynchronous interrupt mask */#define	AR_INTR_SYNC_MASK	0x4034	/* synchronous interrupt mask */#define	AR_INTR_ASYNC_CAUSE	0x4038	/* check pending interrupts */#define	AR_INTR_ASYNC_ENABLE	0x403c	/* enable interrupts */#define	AR5416_PCIE_SERDES	0x4040#define	AR5416_PCIE_SERDES2	0x4044#define	AR_GPIO_IN		0x4048	/* GPIO input register */#define	AR_GPIO_INTR_OUT	0x404c	/* GPIO output register */#define	AR_EEPROM_STATUS_DATA	0x407c#define	AR_OBS			0x4080#define	AR_RTC_RC		0x7000	/* reset control */#define	AR_RTC_PLL_CONTROL	0x7014#define	AR_RTC_RESET		0x7040	/* RTC reset register */#define	AR_RTC_STATUS		0x7044	/* system sleep status */#define	AR_RTC_SLEEP_CLK	0x7048#define	AR_RTC_FORCE_WAKE	0x704c	/* control MAC force wake */#define	AR_RTC_INTR_CAUSE	0x7050	/* RTC interrupt cause/clear */#define	AR_RTC_INTR_ENABLE	0x7054	/* RTC interrupt enable */#define	AR_RTC_INTR_MASK	0x7058	/* RTC interrupt mask *//* AR9280: rf long shift registers */#define	AR_AN_RF2G1_CH0         0x7810#define	AR_AN_RF5G1_CH0         0x7818#define	AR_AN_RF2G1_CH1         0x7834#define	AR_AN_RF5G1_CH1         0x783C#define	AR_AN_TOP2		0x7894#define	AR_AN_SYNTH9            0x7868#define	AR9285_AN_RF2G3         0x7828#define	AR9285_AN_TOP3		0x786c#define	AR_RESET_TSF		0x8020#define	AR_RXFIFO_CFG		0x8114#define	AR_PHY_ERR_1		0x812c#define	AR_PHY_ERR_MASK_1	0x8130	/* mask for AR_PHY_ERR_1 */#define	AR_PHY_ERR_2		0x8134#define	AR_PHY_ERR_MASK_2	0x8138	/* mask for AR_PHY_ERR_2 */#define	AR_TSFOOR_THRESHOLD	0x813c#define	AR_PHY_ERR_3		0x8168#define	AR_PHY_ERR_MASK_3	0x816c	/* mask for AR_PHY_ERR_3 */#define	AR_TXOP_X		0x81ec	/* txop for legacy non-qos */#define	AR_TXOP_0_3		0x81f0	/* txop for various tid's */#define	AR_TXOP_4_7		0x81f4#define	AR_TXOP_8_11		0x81f8#define	AR_TXOP_12_15		0x81fc/* generic timers based on tsf - all uS */#define	AR_NEXT_TBTT		0x8200#define	AR_NEXT_DBA		0x8204#define	AR_NEXT_SWBA		0x8208#define	AR_NEXT_CFP		0x8208#define	AR_NEXT_HCF		0x820C#define	AR_NEXT_TIM		0x8210#define	AR_NEXT_DTIM		0x8214#define	AR_NEXT_QUIET		0x8218#define	AR_NEXT_NDP		0x821C#define	AR5416_BEACON_PERIOD	0x8220#define	AR_DBA_PERIOD		0x8224#define	AR_SWBA_PERIOD		0x8228#define	AR_HCF_PERIOD		0x822C#define	AR_TIM_PERIOD		0x8230#define	AR_DTIM_PERIOD		0x8234#define	AR_QUIET_PERIOD		0x8238#define	AR_NDP_PERIOD		0x823C#define	AR_TIMER_MODE		0x8240#define	AR_SLP32_MODE		0x8244#define	AR_SLP32_WAKE		0x8248#define	AR_SLP32_INC		0x824c#define	AR_SLP_CNT		0x8250	/* 32kHz cycles with mac asleep */#define	AR_SLP_CYCLE_CNT	0x8254	/* absolute number of 32kHz cycles */#define	AR_SLP_MIB_CTRL		0x8258#define	AR_2040_MODE		0x8318#define	AR_EXTRCCNT		0x8328	/* extension channel rx clear count */#define	AR_SELFGEN_MASK		0x832c	/* rx and cal chain masks */#define	AR_PCU_TXBUF_CTRL	0x8340/* DMA & PCI Registers in PCI space (usable during sleep)*/#define	AR_RC_AHB		0x00000001	/* AHB reset */#define	AR_RC_APB		0x00000002	/* APB reset */#define	AR_RC_HOSTIF		0x00000100	/* host interface reset */#define	AR_MIRT_VAL		0x0000ffff	/* in uS */#define	AR_MIRT_VAL_S		16#define	AR_TIMT_LAST		0x0000ffff	/* Last packet threshold */#define	AR_TIMT_LAST_S		0#define	AR_TIMT_FIRST		0xffff0000	/* First packet threshold */#define	AR_TIMT_FIRST_S		16#define	AR_RIMT_LAST		0x0000ffff	/* Last packet threshold */#define	AR_RIMT_LAST_S		0#define	AR_RIMT_FIRST		0xffff0000	/* First packet threshold */#define	AR_RIMT_FIRST_S		16#define	AR_GTXTO_TIMEOUT_COUNTER    0x0000FFFF  // Mask for timeout counter (in TUs)#define	AR_GTXTO_TIMEOUT_LIMIT      0xFFFF0000  // Mask for timeout limit (in  TUs)#define	AR_GTXTO_TIMEOUT_LIMIT_S    16      // Shift for timeout limit#define	AR_GTTM_USEC          0x00000001 // usec strobe#define	AR_GTTM_IGNORE_IDLE   0x00000002 // ignore channel idle#define	AR_GTTM_RESET_IDLE    0x00000004 // reset counter on channel idle low#define	AR_GTTM_CST_USEC      0x00000008 // CST usec strobe#define	AR_CST_TIMEOUT_COUNTER    0x0000FFFF  // Mask for timeout counter (in TUs)#define	AR_CST_TIMEOUT_LIMIT      0xFFFF0000  // Mask for timeout limit (in  TUs)#define	AR_CST_TIMEOUT_LIMIT_S    16      // Shift for timeout limit/* MAC tx DMA size config  */#define	AR_TXCFG_DMASZ_MASK	0x00000003#define	AR_TXCFG_DMASZ_4B	0#define	AR_TXCFG_DMASZ_8B	1#define	AR_TXCFG_DMASZ_16B	2#define	AR_TXCFG_DMASZ_32B	3#define	AR_TXCFG_DMASZ_64B	4#define	AR_TXCFG_DMASZ_128B	5#define	AR_TXCFG_DMASZ_256B	6#define	AR_TXCFG_DMASZ_512B	7#define	AR_TXCFG_ATIM_TXPOLICY	0x00000800/* MAC rx DMA size config  */#define	AR_RXCFG_DMASZ_MASK	0x00000007#define	AR_RXCFG_DMASZ_4B	0#define	AR_RXCFG_DMASZ_8B	1#define	AR_RXCFG_DMASZ_16B	2#define	AR_RXCFG_DMASZ_32B	3#define	AR_RXCFG_DMASZ_64B	4#define	AR_RXCFG_DMASZ_128B	5#define	AR_RXCFG_DMASZ_256B	6#define	AR_RXCFG_DMASZ_512B	7/* MAC Led registers */#define	AR_MAC_LED_BLINK_SLOW	0x00000008	/* LED slowest blink rate mode */#define	AR_MAC_LED_BLINK_THRESH_SEL 0x00000070	/* LED blink threshold select */#define	AR_MAC_LED_MODE		0x00000380	/* LED mode select */#define	AR_MAC_LED_MODE_S	7#define	AR_MAC_LED_MODE_PROP	0	/* Blink prop to filtered tx/rx */#define	AR_MAC_LED_MODE_RPROP	1	/* Blink prop to unfiltered tx/rx */#define	AR_MAC_LED_MODE_SPLIT	2	/* Blink power for tx/net for rx */#define	AR_MAC_LED_MODE_RAND	3	/* Blink randomly */#define	AR_MAC_LED_MODE_POWON	5	/* Power LED on (s/w control) */#define	AR_MAC_LED_MODE_NETON	6	/* Network LED on (s/w control) */#define	AR_MAC_LED_ASSOC	0x00000c00#define	AR_MAC_LED_ASSOC_NONE	0x00000000 /* STA is not associated or trying */#define	AR_MAC_LED_ASSOC_ACTIVE	0x00000400 /* STA is associated */#define	AR_MAC_LED_ASSOC_PEND	0x00000800 /* STA is trying to associate */#define	AR_MAC_LED_ASSOC_S	10#define	AR_AHB_EXACT_WR_EN	0x00000000	/* write exact bytes */#define	AR_AHB_BUF_WR_EN	0x00000001	/* buffer write upto cacheline*/#define	AR_AHB_EXACT_RD_EN	0x00000000	/* read exact bytes */#define	AR_AHB_CACHELINE_RD_EN	0x00000002	/* read upto end of cacheline */#define	AR_AHB_PREFETCH_RD_EN	0x00000004	/* prefetch upto page boundary*/#define	AR_AHB_PAGE_SIZE_1K	0x00000000	/* set page-size as 1k */#define	AR_AHB_PAGE_SIZE_2K	0x00000008	/* set page-size as 2k */#define	AR_AHB_PAGE_SIZE_4K	0x00000010	/* set page-size as 4k *//* MAC PCU Registers */#define	AR_STA_ID1_PRESERVE_SEQNUM	0x20000000 /* Don't replace seq num *//* Extended PCU DIAG_SW control fields */#define	AR_DIAG_DUAL_CHAIN_INFO	0x01000000	/* dual chain channel info */#define	AR_DIAG_RX_ABORT	0x02000000	/* abort rx */#define	AR_DIAG_SATURATE_CCNT	0x04000000	/* sat. cycle cnts (no shift) */#define	AR_DIAG_OBS_PT_SEL2	0x08000000	/* observation point sel */#define	AR_DIAG_RXCLEAR_CTL_LOW	0x10000000	/* force rx_clear(ctl) low/busy */#define	AR_DIAG_RXCLEAR_EXT_LOW	0x20000000	/* force rx_clear(ext) low/busy */#define	AR_TXOP_X_VAL	0x000000FF#define	AR_RESET_TSF_ONCE	0x01000000	/* reset tsf once; self-clears*//* Interrupts */#define	AR_ISR_TXMINTR		0x00080000	/* Maximum interrupt tx rate */#define	AR_ISR_RXMINTR		0x01000000	/* Maximum interrupt rx rate */#define	AR_ISR_TXINTM		0x40000000	/* Tx int after mitigation */#define	AR_ISR_RXINTM		0x80000000	/* Rx int after mitigation */#define	AR_ISR_S2_CST		0x00400000	/* Carrier sense timeout */#define	AR_ISR_S2_GTT		0x00800000	/* Global transmit timeout */#define	AR_ISR_S2_TSFOOR	0x40000000	/* RX TSF out of range */#define	AR_INTR_SPURIOUS	0xffffffff#define	AR_INTR_RTC_IRQ		0x00000001	/* rtc in shutdown state */#define	AR_INTR_MAC_IRQ		0x00000002	/* pending mac interrupt */#define	AR_INTR_EEP_PROT_ACCESS	0x00000004	/* eeprom protected access */#define	AR_INTR_MAC_AWAKE	0x00020000	/* mac is awake */#define	AR_INTR_MAC_ASLEEP	0x00040000	/* mac is asleep *//* Interrupt Mask Registers */#define	AR_IMR_TXMINTR		0x00080000	/* Maximum interrupt tx rate */#define	AR_IMR_RXMINTR		0x01000000	/* Maximum interrupt rx rate */#define	AR_IMR_TXINTM		0x40000000	/* Tx int after mitigation */#define	AR_IMR_RXINTM		0x80000000	/* Rx int after mitigation */#define	AR_IMR_S2_CST		0x00400000	/* Carrier sense timeout */#define	AR_IMR_S2_GTT		0x00800000	/* Global transmit timeout *//* synchronous interrupt signals */#define	AR_INTR_SYNC_RTC_IRQ		0x00000001#define	AR_INTR_SYNC_MAC_IRQ		0x00000002#define	AR_INTR_SYNC_EEPROM_ILLEGAL_ACCESS	0x00000004#define	AR_INTR_SYNC_APB_TIMEOUT	0x00000008#define	AR_INTR_SYNC_PCI_MODE_CONFLICT	0x00000010#define	AR_INTR_SYNC_HOST1_FATAL	0x00000020#define	AR_INTR_SYNC_HOST1_PERR		0x00000040#define	AR_INTR_SYNC_TRCV_FIFO_PERR	0x00000080#define	AR_INTR_SYNC_RADM_CPL_EP	0x00000100#define	AR_INTR_SYNC_RADM_CPL_DLLP_ABORT	0x00000200#define	AR_INTR_SYNC_RADM_CPL_TLP_ABORT	0x00000400#define	AR_INTR_SYNC_RADM_CPL_ECRC_ERR	0x00000800#define	AR_INTR_SYNC_RADM_CPL_TIMEOUT	0x00001000#define	AR_INTR_SYNC_LOCAL_TIMEOUT	0x00002000#define	AR_INTR_SYNC_PM_ACCESS		0x00004000#define	AR_INTR_SYNC_MAC_AWAKE		0x00008000#define	AR_INTR_SYNC_MAC_ASLEEP		0x00010000#define	AR_INTR_SYNC_MAC_SLEEP_ACCESS	0x00020000#define	AR_INTR_SYNC_ALL		0x0003FFFF/* default synchronous interrupt signals enabled */#define	AR_INTR_SYNC_DEFAULT \

⌨️ 快捷键说明

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