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

📄 ar5212reg.h

📁 Atheros wifi driver source code
💻 H
📖 第 1 页 / 共 4 页
字号:
#define	AR_IMR_S0_QCU_TXOK	0x000003FF /* TXOK (QCU 0-9) */#define	AR_IMR_S0_QCU_TXOK_S	0#define	AR_IMR_S0_QCU_TXDESC	0x03FF0000 /* TXDESC (QCU 0-9) */#define	AR_IMR_S0_QCU_TXDESC_S	16#define	AR_IMR_S1_QCU_TXERR	0x000003FF /* TXERR (QCU 0-9) */#define	AR_IMR_S1_QCU_TXERR_S	0#define	AR_IMR_S1_QCU_TXEOL	0x03FF0000 /* TXEOL (QCU 0-9) */#define	AR_IMR_S1_QCU_TXEOL_S	16#define	AR_IMR_S2_QCU_TXURN	0x000003FF /* Mask for TXURN (QCU 0-9) */#define	AR_IMR_S2_QCU_TXURN_S	0#define	AR_IMR_S2_MCABT		0x00010000 /* Master cycle abort interrupt */#define	AR_IMR_S2_SSERR		0x00020000 /* SERR interrupt */#define	AR_IMR_S2_DPERR		0x00040000 /* PCI bus parity error */#define	AR_IMR_S2_TIM		0x01000000 /* TIM */#define	AR_IMR_S2_CABEND	0x02000000 /* CABEND */#define	AR_IMR_S2_DTIMSYNC	0x04000000 /* DTIMSYNC */#define	AR_IMR_S2_BCNTO		0x08000000 /* BCNTO */#define	AR_IMR_S2_CABTO		0x10000000 /* CABTO */#define	AR_IMR_S2_DTIM		0x20000000 /* DTIM */#define	AR_IMR_S2_RESV0		0xE0F8FC00 /* Reserved */#define	AR_IMR_S3_QCU_QCBROVF	0x000003FF /* Mask for QCBROVF (QCU 0-9) */#define	AR_IMR_S3_QCU_QCBRURN	0x03FF0000 /* Mask for QCBRURN (QCU 0-9) */#define	AR_IMR_S3_QCU_QCBRURN_S	16         /* Shift for QCBRURN (QCU 0-9) */#define	AR_IMR_S4_QCU_QTRIG	0x000003FF /* Mask for QTRIG (QCU 0-9) */#define	AR_IMR_S4_RESV0		0xFFFFFC00 /* Reserved *//* QCU registers */#define	AR_NUM_QCU	10     /* Only use QCU 0-9 for forward QCU compatibility */#define	AR_QCU_0	0x0001#define	AR_QCU_1	0x0002#define	AR_QCU_2	0x0004#define	AR_QCU_3	0x0008#define	AR_QCU_4	0x0010#define	AR_QCU_5	0x0020#define	AR_QCU_6	0x0040#define	AR_QCU_7	0x0080#define	AR_QCU_8	0x0100#define	AR_QCU_9	0x0200#define	AR_Q_CBRCFG_CBR_INTERVAL	0x00FFFFFF /* Mask for CBR interval (us) */#define AR_Q_CBRCFG_CBR_INTERVAL_S      0   /* Shift for CBR interval */#define	AR_Q_CBRCFG_CBR_OVF_THRESH	0xFF000000 /* Mask for CBR overflow threshold */#define AR_Q_CBRCFG_CBR_OVF_THRESH_S    24  /* Shift for CBR overflow thresh */#define	AR_Q_RDYTIMECFG_INT	0x00FFFFFF /* CBR interval (us) */#define AR_Q_RDYTIMECFG_INT_S   0  // Shift for ReadyTime Interval (us) */#define	AR_Q_RDYTIMECFG_ENA	0x01000000 /* CBR enable *//* bits 25-31 are reserved */#define	AR_Q_MISC_FSP		0x0000000F /* Frame Scheduling Policy mask */#define	AR_Q_MISC_FSP_ASAP		0	/* ASAP */#define	AR_Q_MISC_FSP_CBR		1	/* CBR */#define	AR_Q_MISC_FSP_DBA_GATED		2	/* DMA Beacon Alert gated */#define	AR_Q_MISC_FSP_TIM_GATED		3	/* TIM gated */#define	AR_Q_MISC_FSP_BEACON_SENT_GATED	4	/* Beacon-sent-gated */#define	AR_Q_MISC_ONE_SHOT_EN	0x00000010 /* OneShot enable */#define	AR_Q_MISC_CBR_INCR_DIS1	0x00000020 /* Disable CBR expired counter incr					      (empty q) */#define	AR_Q_MISC_CBR_INCR_DIS0	0x00000040 /* Disable CBR expired counter incr					      (empty beacon q) */#define	AR_Q_MISC_BEACON_USE	0x00000080 /* Beacon use indication */#define	AR_Q_MISC_CBR_EXP_CNTR_LIMIT	0x00000100 /* CBR expired counter limit enable */#define	AR_Q_MISC_RDYTIME_EXP_POLICY	0x00000200 /* Enable TXE cleared on ReadyTime expired or VEOL */#define	AR_Q_MISC_RESET_CBR_EXP_CTR	0x00000400 /* Reset CBR expired counter */#define	AR_Q_MISC_DCU_EARLY_TERM_REQ	0x00000800 /* DCU frame early termination request control */#define	AR_Q_MISC_QCU_COMP_EN	0x00001000 /* QCU frame compression enable */#define	AR_Q_MISC_RESV0		0xFFFFF000 /* Reserved */#define	AR_Q_STS_PEND_FR_CNT	0x00000003 /* Mask for Pending Frame Count */#define	AR_Q_STS_RESV0		0x000000FC /* Reserved */#define	AR_Q_STS_CBR_EXP_CNT	0x0000FF00 /* Mask for CBR expired counter */#define	AR_Q_STS_RESV1		0xFFFF0000 /* Reserved *//* DCU registers */#define	AR_NUM_DCU	10     /* Only use 10 DCU's for forward QCU/DCU compatibility */#define	AR_DCU_0	0x0001#define	AR_DCU_1	0x0002#define	AR_DCU_2	0x0004#define	AR_DCU_3	0x0008#define	AR_DCU_4	0x0010#define	AR_DCU_5	0x0020#define	AR_DCU_6	0x0040#define	AR_DCU_7	0x0080#define	AR_DCU_8	0x0100#define	AR_DCU_9	0x0200#define	AR_D_QCUMASK		0x000003FF /* Mask for QCU Mask (QCU 0-9) */#define	AR_D_QCUMASK_RESV0	0xFFFFFC00 /* Reserved */#define	AR_D_LCL_IFS_CWMIN	0x000003FF /* Mask for CW_MIN */#define	AR_D_LCL_IFS_CWMIN_S	0#define	AR_D_LCL_IFS_CWMAX	0x000FFC00 /* Mask for CW_MAX */#define	AR_D_LCL_IFS_CWMAX_S	10#define	AR_D_LCL_IFS_AIFS	0x0FF00000 /* Mask for AIFS */#define	AR_D_LCL_IFS_AIFS_S	20/* *  Note:  even though this field is 8 bits wide the *  maximum supported AIFS value is 0xfc.  Setting the AIFS value *  to 0xfd 0xfe, or 0xff will not work correctly and will cause *  the DCU to hang. */#define	AR_D_LCL_IFS_RESV0	0xF0000000 /* Reserved */#define	AR_D_RETRY_LIMIT_FR_SH	0x0000000F /* frame short retry limit */#define	AR_D_RETRY_LIMIT_FR_SH_S	0#define	AR_D_RETRY_LIMIT_FR_LG	0x000000F0 /* frame long retry limit */#define	AR_D_RETRY_LIMIT_FR_LG_S	4#define	AR_D_RETRY_LIMIT_STA_SH	0x00003F00 /* station short retry limit */#define	AR_D_RETRY_LIMIT_STA_SH_S	8#define	AR_D_RETRY_LIMIT_STA_LG	0x000FC000 /* station short retry limit */#define	AR_D_RETRY_LIMIT_STA_LG_S	14#define	AR_D_RETRY_LIMIT_RESV0		0xFFF00000 /* Reserved */#define	AR_D_CHNTIME_DUR		0x000FFFFF /* ChannelTime duration (us) */#define AR_D_CHNTIME_DUR_S              0 /* Shift for ChannelTime duration */#define	AR_D_CHNTIME_EN			0x00100000 /* ChannelTime enable */#define	AR_D_CHNTIME_RESV0		0xFFE00000 /* Reserved */#define	AR_D_MISC_BKOFF_THRESH	0x0000003F /* Backoff threshold */#define	AR_D_MISC_ETS_RTS		0x00000040 /* End of transmission series						      station RTS/data failure						      count reset policy */#define	AR_D_MISC_ETS_CW		0x00000080 /* End of transmission series						      CW reset policy */#define AR_D_MISC_FRAG_WAIT_EN          0x00000100 /* Wait for next fragment */#define AR_D_MISC_FRAG_BKOFF_EN         0x00000200 /* Backoff during a frag burst */#define	AR_D_MISC_HCF_POLL_EN		0x00000800 /* HFC poll enable */#define	AR_D_MISC_BKOFF_PERSISTENCE	0x00001000 /* Backoff persistence factor						      setting */#define	AR_D_MISC_FR_PREFETCH_EN	0x00002000 /* Frame prefetch enable */#define	AR_D_MISC_VIR_COL_HANDLING	0x0000C000 /* Mask for Virtual collision						      handling policy *//* FOO redefined for venice CW increment policy */#define	AR_D_MISC_VIR_COL_HANDLING_DEFAULT	0	/* Normal */#define	AR_D_MISC_VIR_COL_HANDLING_IGNORE	1	/* Ignore */#define	AR_D_MISC_BEACON_USE		0x00010000 /* Beacon use indication */#define	AR_D_MISC_ARB_LOCKOUT_CNTRL	0x00060000 /* DCU arbiter lockout ctl */#define	AR_D_MISC_ARB_LOCKOUT_CNTRL_S	17         /* DCU arbiter lockout ctl */#define	AR_D_MISC_ARB_LOCKOUT_CNTRL_NONE	0	/* No lockout */#define	AR_D_MISC_ARB_LOCKOUT_CNTRL_INTRA_FR	1	/* Intra-frame */#define	AR_D_MISC_ARB_LOCKOUT_CNTRL_GLOBAL	2	/* Global */#define	AR_D_MISC_ARB_LOCKOUT_IGNORE	0x00080000 /* DCU arbiter lockout ignore control */#define	AR_D_MISC_SEQ_NUM_INCR_DIS	0x00100000 /* Sequence number increment disable */#define	AR_D_MISC_POST_FR_BKOFF_DIS	0x00200000 /* Post-frame backoff disable */#define	AR_D_MISC_VIRT_COLL_POLICY	0x00400000 /* Virtual coll. handling policy */#define	AR_D_MISC_BLOWN_IFS_POLICY	0x00800000 /* Blown IFS handling policy */#define	AR_D_MISC_RESV0			0xFE000000 /* Reserved */#define	AR_D_SEQNUM_RESV0	0xFFFFF000 /* Reserved */#define	AR_D_GBL_IFS_MISC_LFSR_SLICE_SEL	0x00000007 /* LFSR slice select */#define	AR_D_GBL_IFS_MISC_TURBO_MODE	0x00000008 /* Turbo mode indication */#define	AR_D_GBL_IFS_MISC_SIFS_DURATION_USEC	0x000003F0 /* SIFS duration (us) */#define	AR_D_GBL_IFS_MISC_USEC_DURATION	0x000FFC00 /* microsecond duration */#define	AR_D_GBL_IFS_MISC_USEC_DURATION_S 10#define	AR_D_GBL_IFS_MISC_DCU_ARBITER_DLY	0x00300000 /* DCU arbiter delay */#define	AR_D_GBL_IFS_MISC_RESV0	0xFFC00000 /* Reserved *//* DMA & PCI Registers in PCI space (usable during sleep) */#define	AR_RC_MAC		0x00000001 /* MAC reset */#define	AR_RC_BB		0x00000002 /* Baseband reset */#define	AR_RC_RESV0		0x00000004 /* Reserved */#define	AR_RC_RESV1		0x00000008 /* Reserved */#define	AR_RC_PCI		0x00000010 /* PCI-core reset */#define	AR_SCR_SLDUR		0x0000ffff /* sleep duration, units of 128us */#define	AR_SCR_SLDUR_S		0#define	AR_SCR_SLE		0x00030000 /* sleep enable */#define	AR_SCR_SLE_S		16#define	AR_SCR_SLE_WAKE		0 	/* force wake */#define	AR_SCR_SLE_SLP		1	/* force sleep */#define	AR_SCR_SLE_NORM		2	/* sleep logic normal operation */#define	AR_SCR_SLDTP		0x00040000 /* sleep duration timing policy */#define	AR_SCR_SLDWP		0x00080000 /* sleep duration write policy */#define	AR_SCR_SLEPOL		0x00100000 /* sleep policy mode */#define	AR_INTPEND_TRUE		0x00000001 /* interrupt pending */#define	AR_SFR_SLEEP		0x00000001 /* force sleep */#define	AR_PCICFG_SCLK_SEL	0x00000002 /* sleep clock select */#define	AR_PCICFG_SCLK_SEL_S	1#define	AR_PCICFG_CLKRUNEN	0x00000004 /* enable PCI CLKRUN function */#define	AR_PCICFG_EEPROM_SIZE	0x00000018 /* Mask for EEPROM size */#define	AR_PCICFG_EEPROM_SIZE_S		3	/* Mask for EEPROM size */#define	AR_PCICFG_EEPROM_SIZE_4		0	/* EEPROM size 4 Kbit */#define	AR_PCICFG_EEPROM_SIZE_8K	1	/* EEPROM size 8 Kbit */#define	AR_PCICFG_EEPROM_SIZE_16K	2	/* EEPROM size 16 Kbit */#define	AR_PCICFG_EEPROM_SIZE_FAILED	3	/* Failure */#define	AR_PCICFG_LEDCTL	0x00000060 /* LED control Status */#define	AR_PCICFG_LEDCTL_NONE	0x00000000 /* STA is not associated or trying */#define	AR_PCICFG_LEDCTL_PEND	0x00000020 /* STA is trying to associate */#define	AR_PCICFG_LEDCTL_ASSOC	0x00000040 /* STA is associated */#define	AR_PCICFG_PCI_BUS_SEL	0x00000380 /* PCI observation bus mux select */#define	AR_PCICFG_DIS_CBE_FIX	0x00000400 /* Disable fix for bad PCI CBE# generation */#define	AR_PCICFG_SL_INTEN	0x00000800 /* enable interrupt line assertion when asleep */#define	AR_PCICFG_RESV0		0x00001000 /* Reserved */#define	AR_PCICFG_SL_INPEN	0x00002000 /* Force asleep when an interrupt is pending */#define	AR_PCICFG_RESV1		0x0000C000 /* Reserved */#define	AR_PCICFG_SPWR_DN	0x00010000 /* mask for sleep/awake indication */#define	AR_PCICFG_LEDMODE	0x000E0000 /* LED mode */#define	AR_PCICFG_LEDMODE_PROP	0x00000000 /* Blink prop to filtered tx/rx */#define	AR_PCICFG_LEDMODE_RPROP	0x00020000 /* Blink prop to unfiltered tx/rx */#define	AR_PCICFG_LEDMODE_SPLIT	0x00040000 /* Blink power for tx/net for rx */#define	AR_PCICFG_LEDMODE_RAND	0x00060000 /* Blink randomly */#define	AR_PCICFG_LEDBLINK	0x00700000 /* LED blink threshold select */#define	AR_PCICFG_LEDSLOW	0x00800000 /* LED slowest blink rate mode */#define	AR_PCICFG_SCLK_RATE_IND 0x03000000 /* Sleep clock rate */#define	AR_PCICFG_SCLK_RATE_IND_S 24#define	AR_PCICFG_RESV2		0xFC000000 /* Reserved */#define	AR_GPIOCR_CR_SHIFT	2          /* Each CR is 2 bits */#define	AR_GPIOCR_CR_N(_g)	(0 << (AR_GPIOCR_CR_SHIFT * (_g)))#define	AR_GPIOCR_CR_0(_g)	(1 << (AR_GPIOCR_CR_SHIFT * (_g)))#define	AR_GPIOCR_CR_1(_g)	(2 << (AR_GPIOCR_CR_SHIFT * (_g)))#define	AR_GPIOCR_CR_A(_g)	(3 << (AR_GPIOCR_CR_SHIFT * (_g)))#define	AR_GPIOCR_INT_SHIFT	12         /* Interrupt select field shifter */#define	AR_GPIOCR_INT(_g)	((_g) << AR_GPIOCR_INT_SHIFT)#define	AR_GPIOCR_INT_MASK	0x00007000 /* Interrupt select field mask */#define	AR_GPIOCR_INT_ENA	0x00008000 /* Enable GPIO Interrupt */#define	AR_GPIOCR_INT_SELL	0x00000000 /* Generate int if pin is low */#define	AR_GPIOCR_INT_SELH	0x00010000 /* Generate int if pin is high */#define	AR_GPIOCR_INT_SEL	AR_GPIOCR_INT_SELH#define	AR_SREV_ID		0x000000FF /* Mask to read SREV info */#define	AR_SREV_ID_S		4          /* Mask to shift Major Rev Info */#define	AR_SREV_REVISION	0x0000000F /* Mask for Chip revision level */#define	AR_SREV_FPGA		1#define	AR_SREV_D2PLUS		2#define	AR_SREV_D2PLUS_MS	3	/* metal spin */#define	AR_SREV_CRETE		4#define	AR_SREV_CRETE_MS	5	/* FCS metal spin */#define	AR_SREV_CRETE_MS23	7	/* 2.3 metal spin (6 skipped) */#define	AR_SREV_CRETE_23	8	/* 2.3 full tape out */#define AR_SREV_GRIFFIN_LITE    8#define	AR_SREV_HAINAN  	9#define AR_SREV_CONDOR		11#define	AR_SREV_VERSION	0x000000F0 /* Mask for Chip version */#define	AR_SREV_VERSION_CRETE	0#define	AR_SREV_VERSION_MAUI_1	1#define	AR_SREV_VERSION_MAUI_2	2#define	AR_SREV_VERSION_SPIRIT	3

⌨️ 快捷键说明

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