dumpregs_5416.c revision 185743
1185743Ssam/*- 2185743Ssam * Copyright (c) 2002-2008 Sam Leffler, Errno Consulting 3185743Ssam * All rights reserved. 4185743Ssam * 5185743Ssam * Redistribution and use in source and binary forms, with or without 6185743Ssam * modification, are permitted provided that the following conditions 7185743Ssam * are met: 8185743Ssam * 1. Redistributions of source code must retain the above copyright 9185743Ssam * notice, this list of conditions and the following disclaimer, 10185743Ssam * without modification. 11185743Ssam * 2. Redistributions in binary form must reproduce at minimum a disclaimer 12185743Ssam * similar to the "NO WARRANTY" disclaimer below ("Disclaimer") and any 13185743Ssam * redistribution must be conditioned upon including a substantially 14185743Ssam * similar Disclaimer requirement for further binary redistribution. 15185743Ssam * 16185743Ssam * NO WARRANTY 17185743Ssam * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 18185743Ssam * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 19185743Ssam * LIMITED TO, THE IMPLIED WARRANTIES OF NONINFRINGEMENT, MERCHANTIBILITY 20185743Ssam * AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL 21185743Ssam * THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, 22185743Ssam * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 23185743Ssam * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 24185743Ssam * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER 25185743Ssam * IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 26185743Ssam * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF 27185743Ssam * THE POSSIBILITY OF SUCH DAMAGES. 28185743Ssam * 29185743Ssam * $FreeBSD: head/tools/tools/ath/athregs/dumpregs_5416.c 185743 2008-12-07 19:17:33Z sam $ 30185743Ssam */ 31185743Ssam#include "diag.h" 32185743Ssam 33185743Ssam#include "ah.h" 34185743Ssam#include "ah_internal.h" 35185743Ssam#include "ar5416/ar5416reg.h" 36185743Ssam#include "ar5416/ar5416phy.h" 37185743Ssam 38185743Ssam#include "dumpregs.h" 39185743Ssam 40185743Ssam#define N(a) (sizeof(a) / sizeof(a[0])) 41185743Ssam 42185743Ssam#define MAC5416 SREV(13,8), SREV(0xff,0xff) /* XXX */ 43185743Ssam 44185743Ssamstatic struct dumpreg ar5416regs[] = { 45185743Ssam { AR_CR, "CR", DUMP_BASIC }, 46185743Ssam { AR_RXDP, "RXDP", DUMP_BASIC }, 47185743Ssam { AR_CFG, "CFG", DUMP_BASIC }, 48185743Ssam { AR_MIRT, "MIRT", DUMP_BASIC }, 49185743Ssam { AR_TIMT, "TIMT", DUMP_BASIC }, 50185743Ssam { AR_CST, "CST", DUMP_BASIC }, 51185743Ssam { AR_IER, "IER", DUMP_BASIC }, 52185743Ssam { AR_TXCFG, "TXCFG", DUMP_BASIC }, 53185743Ssam { AR_RXCFG, "RXCFG", DUMP_BASIC }, 54185743Ssam { AR_MIBC, "MIBC", DUMP_BASIC }, 55185743Ssam { AR_TOPS, "TOPS", DUMP_BASIC }, 56185743Ssam { AR_RXNPTO, "RXNPTO", DUMP_BASIC }, 57185743Ssam { AR_TXNPTO, "TXNPTO", DUMP_BASIC }, 58185743Ssam { AR_RPGTO, "RPGTO", DUMP_BASIC }, 59185743Ssam { AR_RPCNT, "RPCNT", DUMP_BASIC }, 60185743Ssam { AR_MACMISC, "MACMISC", DUMP_BASIC }, 61185743Ssam { AR_SPC_0, "SPC_0", DUMP_BASIC }, 62185743Ssam { AR_SPC_1, "SPC_1", DUMP_BASIC }, 63185743Ssam { AR_GTXTO, "GTXTO", DUMP_BASIC }, 64185743Ssam { AR_GTTM, "GTTM", DUMP_BASIC }, 65185743Ssam 66185743Ssam { AR_ISR, "ISR", DUMP_INTERRUPT }, 67185743Ssam { AR_ISR_S0, "ISR_S0", DUMP_INTERRUPT }, 68185743Ssam { AR_ISR_S1, "ISR_S1", DUMP_INTERRUPT }, 69185743Ssam { AR_ISR_S2, "ISR_S2", DUMP_INTERRUPT }, 70185743Ssam { AR_ISR_S3, "ISR_S3", DUMP_INTERRUPT }, 71185743Ssam { AR_ISR_S4, "ISR_S4", DUMP_INTERRUPT }, 72185743Ssam { AR_IMR, "IMR", DUMP_INTERRUPT }, 73185743Ssam { AR_IMR_S0, "IMR_S0", DUMP_INTERRUPT }, 74185743Ssam { AR_IMR_S1, "IMR_S1", DUMP_INTERRUPT }, 75185743Ssam { AR_IMR_S2, "IMR_S2", DUMP_INTERRUPT }, 76185743Ssam { AR_IMR_S3, "IMR_S3", DUMP_INTERRUPT }, 77185743Ssam { AR_IMR_S4, "IMR_S4", DUMP_INTERRUPT }, 78185743Ssam#if 0 79185743Ssam /* NB: don't read the RAC so we don't affect operation */ 80185743Ssam { AR_ISR_RAC, "ISR_RAC", DUMP_INTERRUPT }, 81185743Ssam#endif 82185743Ssam { AR_ISR_S0_S, "ISR_S0_S", DUMP_INTERRUPT }, 83185743Ssam { AR_ISR_S1_S, "ISR_S1_S", DUMP_INTERRUPT }, 84185743Ssam { AR_ISR_S2_S, "ISR_S2_S", DUMP_INTERRUPT }, 85185743Ssam { AR_ISR_S3_S, "ISR_S3_S", DUMP_INTERRUPT }, 86185743Ssam { AR_ISR_S4_S, "ISR_S4_S", DUMP_INTERRUPT }, 87185743Ssam 88185743Ssam { AR_DMADBG_0, "DMADBG0", DUMP_BASIC }, 89185743Ssam { AR_DMADBG_1, "DMADBG1", DUMP_BASIC }, 90185743Ssam { AR_DMADBG_2, "DMADBG2", DUMP_BASIC }, 91185743Ssam { AR_DMADBG_3, "DMADBG3", DUMP_BASIC }, 92185743Ssam { AR_DMADBG_4, "DMADBG4", DUMP_BASIC }, 93185743Ssam { AR_DMADBG_5, "DMADBG5", DUMP_BASIC }, 94185743Ssam { AR_DMADBG_6, "DMADBG6", DUMP_BASIC }, 95185743Ssam { AR_DMADBG_7, "DMADBG7", DUMP_BASIC }, 96185743Ssam 97185743Ssam { AR_DCM_A, "DCM_A", DUMP_BASIC }, 98185743Ssam { AR_DCM_D, "DCM_D", DUMP_BASIC }, 99185743Ssam { AR_DCCFG, "DCCFG", DUMP_BASIC }, 100185743Ssam { AR_CCFG, "CCFG", DUMP_BASIC }, 101185743Ssam { AR_CCUCFG, "CCUCFG", DUMP_BASIC }, 102185743Ssam { AR_CPC_0, "CPC0", DUMP_BASIC }, 103185743Ssam { AR_CPC_1, "CPC1", DUMP_BASIC }, 104185743Ssam { AR_CPC_2, "CPC2", DUMP_BASIC }, 105185743Ssam { AR_CPC_3, "CPC3", DUMP_BASIC }, 106185743Ssam { AR_CPCOVF, "CPCOVF", DUMP_BASIC }, 107185743Ssam 108185743Ssam { AR_Q0_TXDP, "Q0_TXDP", DUMP_QCU }, 109185743Ssam { AR_Q1_TXDP, "Q1_TXDP", DUMP_QCU }, 110185743Ssam { AR_Q2_TXDP, "Q2_TXDP", DUMP_QCU }, 111185743Ssam { AR_Q3_TXDP, "Q3_TXDP", DUMP_QCU }, 112185743Ssam { AR_Q4_TXDP, "Q4_TXDP", DUMP_QCU }, 113185743Ssam { AR_Q5_TXDP, "Q5_TXDP", DUMP_QCU }, 114185743Ssam { AR_Q6_TXDP, "Q6_TXDP", DUMP_QCU }, 115185743Ssam { AR_Q7_TXDP, "Q7_TXDP", DUMP_QCU }, 116185743Ssam { AR_Q8_TXDP, "Q8_TXDP", DUMP_QCU }, 117185743Ssam { AR_Q9_TXDP, "Q9_TXDP", DUMP_QCU }, 118185743Ssam 119185743Ssam { AR_Q_TXE, "Q_TXE", DUMP_QCU }, 120185743Ssam { AR_Q_TXD, "Q_TXD", DUMP_QCU }, 121185743Ssam 122185743Ssam { AR_Q0_CBRCFG, "Q0_CBR", DUMP_QCU }, 123185743Ssam { AR_Q1_CBRCFG, "Q1_CBR", DUMP_QCU }, 124185743Ssam { AR_Q2_CBRCFG, "Q2_CBR", DUMP_QCU }, 125185743Ssam { AR_Q3_CBRCFG, "Q3_CBR", DUMP_QCU }, 126185743Ssam { AR_Q4_CBRCFG, "Q4_CBR", DUMP_QCU }, 127185743Ssam { AR_Q5_CBRCFG, "Q5_CBR", DUMP_QCU }, 128185743Ssam { AR_Q6_CBRCFG, "Q6_CBR", DUMP_QCU }, 129185743Ssam { AR_Q7_CBRCFG, "Q7_CBR", DUMP_QCU }, 130185743Ssam { AR_Q8_CBRCFG, "Q8_CBR", DUMP_QCU }, 131185743Ssam { AR_Q9_CBRCFG, "Q9_CBR", DUMP_QCU }, 132185743Ssam 133185743Ssam { AR_Q0_RDYTIMECFG, "Q0_RDYT", DUMP_QCU }, 134185743Ssam { AR_Q1_RDYTIMECFG, "Q1_RDYT", DUMP_QCU }, 135185743Ssam { AR_Q2_RDYTIMECFG, "Q2_RDYT", DUMP_QCU }, 136185743Ssam { AR_Q3_RDYTIMECFG, "Q3_RDYT", DUMP_QCU }, 137185743Ssam { AR_Q4_RDYTIMECFG, "Q4_RDYT", DUMP_QCU }, 138185743Ssam { AR_Q5_RDYTIMECFG, "Q5_RDYT", DUMP_QCU }, 139185743Ssam { AR_Q6_RDYTIMECFG, "Q6_RDYT", DUMP_QCU }, 140185743Ssam { AR_Q7_RDYTIMECFG, "Q7_RDYT", DUMP_QCU }, 141185743Ssam { AR_Q8_RDYTIMECFG, "Q8_RDYT", DUMP_QCU }, 142185743Ssam { AR_Q9_RDYTIMECFG, "Q9_RDYT", DUMP_QCU }, 143185743Ssam 144185743Ssam { AR_Q_ONESHOTARM_SC,"Q_ONESHOTARM_SC", DUMP_QCU }, 145185743Ssam { AR_Q_ONESHOTARM_CC,"Q_ONESHOTARM_CC", DUMP_QCU }, 146185743Ssam 147185743Ssam { AR_Q0_MISC, "Q0_MISC", DUMP_QCU }, 148185743Ssam { AR_Q1_MISC, "Q1_MISC", DUMP_QCU }, 149185743Ssam { AR_Q2_MISC, "Q2_MISC", DUMP_QCU }, 150185743Ssam { AR_Q3_MISC, "Q3_MISC", DUMP_QCU }, 151185743Ssam { AR_Q4_MISC, "Q4_MISC", DUMP_QCU }, 152185743Ssam { AR_Q5_MISC, "Q5_MISC", DUMP_QCU }, 153185743Ssam { AR_Q6_MISC, "Q6_MISC", DUMP_QCU }, 154185743Ssam { AR_Q7_MISC, "Q7_MISC", DUMP_QCU }, 155185743Ssam { AR_Q8_MISC, "Q8_MISC", DUMP_QCU }, 156185743Ssam { AR_Q9_MISC, "Q9_MISC", DUMP_QCU }, 157185743Ssam 158185743Ssam { AR_Q0_STS, "Q0_STS", DUMP_QCU }, 159185743Ssam { AR_Q1_STS, "Q1_STS", DUMP_QCU }, 160185743Ssam { AR_Q2_STS, "Q2_STS", DUMP_QCU }, 161185743Ssam { AR_Q3_STS, "Q3_STS", DUMP_QCU }, 162185743Ssam { AR_Q4_STS, "Q4_STS", DUMP_QCU }, 163185743Ssam { AR_Q5_STS, "Q5_STS", DUMP_QCU }, 164185743Ssam { AR_Q6_STS, "Q6_STS", DUMP_QCU }, 165185743Ssam { AR_Q7_STS, "Q7_STS", DUMP_QCU }, 166185743Ssam { AR_Q8_STS, "Q8_STS", DUMP_QCU }, 167185743Ssam { AR_Q9_STS, "Q9_STS", DUMP_QCU }, 168185743Ssam 169185743Ssam { AR_Q_RDYTIMESHDN, "Q_RDYTIMSHD", DUMP_QCU }, 170185743Ssam 171185743Ssam { AR_Q_CBBS, "Q_CBBS", DUMP_QCU }, 172185743Ssam { AR_Q_CBBA, "Q_CBBA", DUMP_QCU }, 173185743Ssam { AR_Q_CBC, "Q_CBC", DUMP_QCU }, 174185743Ssam 175185743Ssam { AR_D0_QCUMASK, "D0_MASK", DUMP_DCU }, 176185743Ssam { AR_D1_QCUMASK, "D1_MASK", DUMP_DCU }, 177185743Ssam { AR_D2_QCUMASK, "D2_MASK", DUMP_DCU }, 178185743Ssam { AR_D3_QCUMASK, "D3_MASK", DUMP_DCU }, 179185743Ssam { AR_D4_QCUMASK, "D4_MASK", DUMP_DCU }, 180185743Ssam { AR_D5_QCUMASK, "D5_MASK", DUMP_DCU }, 181185743Ssam { AR_D6_QCUMASK, "D6_MASK", DUMP_DCU }, 182185743Ssam { AR_D7_QCUMASK, "D7_MASK", DUMP_DCU }, 183185743Ssam { AR_D8_QCUMASK, "D8_MASK", DUMP_DCU }, 184185743Ssam { AR_D9_QCUMASK, "D9_MASK", DUMP_DCU }, 185185743Ssam 186185743Ssam { AR_D0_LCL_IFS, "D0_IFS", DUMP_DCU }, 187185743Ssam { AR_D1_LCL_IFS, "D1_IFS", DUMP_DCU }, 188185743Ssam { AR_D2_LCL_IFS, "D2_IFS", DUMP_DCU }, 189185743Ssam { AR_D3_LCL_IFS, "D3_IFS", DUMP_DCU }, 190185743Ssam { AR_D4_LCL_IFS, "D4_IFS", DUMP_DCU }, 191185743Ssam { AR_D5_LCL_IFS, "D5_IFS", DUMP_DCU }, 192185743Ssam { AR_D6_LCL_IFS, "D6_IFS", DUMP_DCU }, 193185743Ssam { AR_D7_LCL_IFS, "D7_IFS", DUMP_DCU }, 194185743Ssam { AR_D8_LCL_IFS, "D8_IFS", DUMP_DCU }, 195185743Ssam { AR_D9_LCL_IFS, "D9_IFS", DUMP_DCU }, 196185743Ssam 197185743Ssam { AR_D0_RETRY_LIMIT,"D0_RTRY", DUMP_DCU }, 198185743Ssam { AR_D1_RETRY_LIMIT,"D1_RTRY", DUMP_DCU }, 199185743Ssam { AR_D2_RETRY_LIMIT,"D2_RTRY", DUMP_DCU }, 200185743Ssam { AR_D3_RETRY_LIMIT,"D3_RTRY", DUMP_DCU }, 201185743Ssam { AR_D4_RETRY_LIMIT,"D4_RTRY", DUMP_DCU }, 202185743Ssam { AR_D5_RETRY_LIMIT,"D5_RTRY", DUMP_DCU }, 203185743Ssam { AR_D6_RETRY_LIMIT,"D6_RTRY", DUMP_DCU }, 204185743Ssam { AR_D7_RETRY_LIMIT,"D7_RTRY", DUMP_DCU }, 205185743Ssam { AR_D8_RETRY_LIMIT,"D8_RTRY", DUMP_DCU }, 206185743Ssam { AR_D9_RETRY_LIMIT,"D9_RTRY", DUMP_DCU }, 207185743Ssam 208185743Ssam { AR_D0_CHNTIME, "D0_CHNT", DUMP_DCU }, 209185743Ssam { AR_D1_CHNTIME, "D1_CHNT", DUMP_DCU }, 210185743Ssam { AR_D2_CHNTIME, "D2_CHNT", DUMP_DCU }, 211185743Ssam { AR_D3_CHNTIME, "D3_CHNT", DUMP_DCU }, 212185743Ssam { AR_D4_CHNTIME, "D4_CHNT", DUMP_DCU }, 213185743Ssam { AR_D5_CHNTIME, "D5_CHNT", DUMP_DCU }, 214185743Ssam { AR_D6_CHNTIME, "D6_CHNT", DUMP_DCU }, 215185743Ssam { AR_D7_CHNTIME, "D7_CHNT", DUMP_DCU }, 216185743Ssam { AR_D8_CHNTIME, "D8_CHNT", DUMP_DCU }, 217185743Ssam { AR_D9_CHNTIME, "D9_CHNT", DUMP_DCU }, 218185743Ssam 219185743Ssam { AR_D0_MISC, "D0_MISC", DUMP_DCU }, 220185743Ssam { AR_D1_MISC, "D1_MISC", DUMP_DCU }, 221185743Ssam { AR_D2_MISC, "D2_MISC", DUMP_DCU }, 222185743Ssam { AR_D3_MISC, "D3_MISC", DUMP_DCU }, 223185743Ssam { AR_D4_MISC, "D4_MISC", DUMP_DCU }, 224185743Ssam { AR_D5_MISC, "D5_MISC", DUMP_DCU }, 225185743Ssam { AR_D6_MISC, "D6_MISC", DUMP_DCU }, 226185743Ssam { AR_D7_MISC, "D7_MISC", DUMP_DCU }, 227185743Ssam { AR_D8_MISC, "D8_MISC", DUMP_DCU }, 228185743Ssam { AR_D9_MISC, "D9_MISC", DUMP_DCU }, 229185743Ssam 230185743Ssam { AR_D_SEQNUM, "D_SEQ", DUMP_BASIC | DUMP_DCU }, 231185743Ssam { AR_D_GBL_IFS_SIFS,"D_SIFS", DUMP_BASIC }, 232185743Ssam { AR_D_GBL_IFS_SLOT,"D_SLOT", DUMP_BASIC }, 233185743Ssam { AR_D_GBL_IFS_EIFS,"D_EIFS", DUMP_BASIC }, 234185743Ssam { AR_D_GBL_IFS_MISC,"D_MISC", DUMP_BASIC }, 235185743Ssam { AR_D_FPCTL, "D_FPCTL", DUMP_BASIC }, 236185743Ssam { AR_D_TXPSE, "D_TXPSE", DUMP_BASIC }, 237185743Ssam#if 0 238185743Ssam { AR_D_TXBLK_CMD, "D_CMD", DUMP_BASIC }, 239185743Ssam { AR_D_TXBLK_DATA, "D_DATA", DUMP_BASIC }, 240185743Ssam { AR_D_TXBLK_CLR, "D_CLR", DUMP_BASIC }, 241185743Ssam { AR_D_TXBLK_SET, "D_SET", DUMP_BASIC }, 242185743Ssam#endif 243185743Ssam 244185743Ssam { AR_MAC_LED, "MAC_LED", DUMP_BASIC }, 245185743Ssam { AR_RC, "RC", DUMP_BASIC }, 246185743Ssam { AR_SCR, "SCR", DUMP_BASIC }, 247185743Ssam { AR_INTPEND, "INTPEND", DUMP_BASIC }, 248185743Ssam { AR_SFR, "SFR", DUMP_BASIC }, 249185743Ssam { AR_PCICFG, "PCICFG", DUMP_BASIC }, 250185743Ssam { AR_SREV, "SREV", DUMP_BASIC }, 251185743Ssam 252185743Ssam { AR_AHB_MODE, "AHBMODE", DUMP_BASIC }, 253185743Ssam { AR5416_PCIE_PM_CTRL,"PCIEPMC", DUMP_BASIC }, 254185743Ssam { AR5416_PCIE_SERDES,"SERDES", DUMP_BASIC }, 255185743Ssam { AR5416_PCIE_SERDES2, "SERDES2", DUMP_BASIC }, 256185743Ssam 257185743Ssam { AR_INTR_ASYNC_MASK,"IASYNCM", DUMP_BASIC }, 258185743Ssam { AR_INTR_SYNC_MASK,"ISYNCM", DUMP_BASIC }, 259185743Ssam { AR_RTC_RC, "RTC_RC", DUMP_BASIC }, 260185743Ssam { AR_RTC_PLL_CONTROL,"RTC_PLL", DUMP_BASIC }, 261185743Ssam 262185743Ssam { AR_GPIO_IN, "GPIOIN", DUMP_BASIC }, 263185743Ssam { AR_GPIO_INTR_OUT, "GPIOINO", DUMP_BASIC }, 264185743Ssam { AR_OBS, "OBS", DUMP_BASIC }, 265185743Ssam#if 0 266185743Ssam { AR_EEPROM_ADDR, "EEADDR", DUMP_BASIC }, 267185743Ssam { AR_EEPROM_DATA, "EEDATA", DUMP_BASIC }, 268185743Ssam { AR_EEPROM_CMD, "EECMD", DUMP_BASIC }, 269185743Ssam { AR_EEPROM_STS, "EESTS", DUMP_BASIC }, 270185743Ssam { AR_EEPROM_CFG, "EECFG", DUMP_BASIC }, 271185743Ssam#endif 272185743Ssam { AR_STA_ID0, "STA_ID0", DUMP_BASIC }, 273185743Ssam { AR_STA_ID1, "STA_ID1", DUMP_BASIC | DUMP_KEYCACHE }, 274185743Ssam { AR_BSS_ID0, "BSS_ID0", DUMP_BASIC }, 275185743Ssam { AR_BSS_ID1, "BSS_ID1", DUMP_BASIC }, 276185743Ssam { AR_SLOT_TIME, "SLOTTIME", DUMP_BASIC }, 277185743Ssam { AR_TIME_OUT, "TIME_OUT", DUMP_BASIC }, 278185743Ssam { AR_RSSI_THR, "RSSI_THR", DUMP_BASIC }, 279185743Ssam { AR_USEC, "USEC", DUMP_BASIC }, 280185743Ssam { AR_BEACON, "BEACON", DUMP_BASIC }, 281185743Ssam { AR_CFP_PERIOD, "CFP_PER", DUMP_BASIC }, 282185743Ssam { AR_TIMER0, "TIMER0", DUMP_BASIC }, 283185743Ssam { AR_TIMER1, "TIMER1", DUMP_BASIC }, 284185743Ssam { AR_TIMER2, "TIMER2", DUMP_BASIC }, 285185743Ssam { AR_TIMER3, "TIMER3", DUMP_BASIC }, 286185743Ssam { AR_CFP_DUR, "CFP_DUR", DUMP_BASIC }, 287185743Ssam { AR_RX_FILTER, "RXFILTER", DUMP_BASIC }, 288185743Ssam { AR_MCAST_FIL0, "MCAST_0", DUMP_BASIC }, 289185743Ssam { AR_MCAST_FIL1, "MCAST_1", DUMP_BASIC }, 290185743Ssam { AR_DIAG_SW, "DIAG_SW", DUMP_BASIC }, 291185743Ssam { AR_TSF_L32, "TSF_L32", DUMP_BASIC }, 292185743Ssam { AR_TSF_U32, "TSF_U32", DUMP_BASIC }, 293185743Ssam { AR_TST_ADDAC, "TST_ADAC", DUMP_BASIC }, 294185743Ssam { AR_DEF_ANTENNA, "DEF_ANT", DUMP_BASIC }, 295185743Ssam { AR_QOS_MASK, "QOS_MASK", DUMP_BASIC }, 296185743Ssam { AR_SEQ_MASK, "SEQ_MASK", DUMP_BASIC }, 297185743Ssam { AR_OBSERV_2, "OBSERV2", DUMP_BASIC }, 298185743Ssam { AR_OBSERV_1, "OBSERV1", DUMP_BASIC }, 299185743Ssam 300185743Ssam { AR_LAST_TSTP, "LAST_TST", DUMP_BASIC }, 301185743Ssam { AR_NAV, "NAV", DUMP_BASIC }, 302185743Ssam { AR_RTS_OK, "RTS_OK", DUMP_BASIC }, 303185743Ssam { AR_RTS_FAIL, "RTS_FAIL", DUMP_BASIC }, 304185743Ssam { AR_ACK_FAIL, "ACK_FAIL", DUMP_BASIC }, 305185743Ssam { AR_FCS_FAIL, "FCS_FAIL", DUMP_BASIC }, 306185743Ssam { AR_BEACON_CNT, "BEAC_CNT", DUMP_BASIC }, 307185743Ssam 308185743Ssam { AR_SLEEP1, "SLEEP1", DUMP_BASIC }, 309185743Ssam { AR_SLEEP2, "SLEEP2", DUMP_BASIC }, 310185743Ssam { AR_SLEEP3, "SLEEP3", DUMP_BASIC }, 311185743Ssam { AR_BSSMSKL, "BSSMSKL", DUMP_BASIC }, 312185743Ssam { AR_BSSMSKU, "BSSMSKU", DUMP_BASIC }, 313185743Ssam { AR_TPC, "TPC", DUMP_BASIC }, 314185743Ssam { AR_TFCNT, "TFCNT", DUMP_BASIC }, 315185743Ssam { AR_RFCNT, "RFCNT", DUMP_BASIC }, 316185743Ssam { AR_RCCNT, "RCCNT", DUMP_BASIC }, 317185743Ssam { AR_CCCNT, "CCCNT", DUMP_BASIC }, 318185743Ssam { AR_QUIET1, "QUIET1", DUMP_BASIC }, 319185743Ssam { AR_QUIET2, "QUIET2", DUMP_BASIC }, 320185743Ssam { AR_TSF_PARM, "TSF_PARM", DUMP_BASIC }, 321185743Ssam { AR_NOACK, "NOACK", DUMP_BASIC }, 322185743Ssam { AR_PHY_ERR, "PHY_ERR", DUMP_BASIC }, 323185743Ssam { AR_QOS_CONTROL, "QOS_CTRL", DUMP_BASIC }, 324185743Ssam { AR_QOS_SELECT, "QOS_SEL", DUMP_BASIC }, 325185743Ssam { AR_MISC_MODE, "MISCMODE", DUMP_BASIC }, 326185743Ssam { AR_FILTOFDM, "FILTOFDM", DUMP_BASIC }, 327185743Ssam { AR_FILTCCK, "FILTCCK", DUMP_BASIC }, 328185743Ssam { AR_PHYCNT1, "PHYCNT1", DUMP_BASIC }, 329185743Ssam { AR_PHYCNTMASK1, "PHYCMSK1", DUMP_BASIC }, 330185743Ssam { AR_PHYCNT2, "PHYCNT2", DUMP_BASIC }, 331185743Ssam { AR_PHYCNTMASK2, "PHYCMSK2", DUMP_BASIC }, 332185743Ssam 333185743Ssam { AR_TXOP_X, "TXOPX", DUMP_BASIC }, 334185743Ssam { AR_NEXT_TBTT, "NXTTBTT", DUMP_BASIC}, 335185743Ssam { AR_NEXT_DBA, "NXTDBA", DUMP_BASIC }, 336185743Ssam { AR_NEXT_SWBA, "NXTSWBA", DUMP_BASIC }, 337185743Ssam { AR_NEXT_CFP, "NXTCFP", DUMP_BASIC }, 338185743Ssam { AR_NEXT_HCF, "NXTHCF", DUMP_BASIC }, 339185743Ssam { AR_NEXT_DTIM, "NXTDTIM", DUMP_BASIC }, 340185743Ssam { AR_NEXT_QUIET, "NXTQUIET", DUMP_BASIC }, 341185743Ssam { AR_NEXT_NDP, "NXTNDP", DUMP_BASIC }, 342185743Ssam { AR5416_BEACON_PERIOD, "BCNPER", DUMP_BASIC }, 343185743Ssam { AR_DBA_PERIOD, "DBAPER", DUMP_BASIC }, 344185743Ssam { AR_SWBA_PERIOD, "SWBAPER", DUMP_BASIC }, 345185743Ssam { AR_TIM_PERIOD, "TIMPER", DUMP_BASIC }, 346185743Ssam { AR_DTIM_PERIOD, "DTIMPER", DUMP_BASIC }, 347185743Ssam { AR_QUIET_PERIOD, "QUIETPER", DUMP_BASIC }, 348185743Ssam { AR_NDP_PERIOD, "NDPPER", DUMP_BASIC }, 349185743Ssam { AR_TIMER_MODE, "TIMERMOD", DUMP_BASIC }, 350185743Ssam { AR_2040_MODE, "2040MODE", DUMP_BASIC }, 351185743Ssam { AR_PCU_TXBUF_CTRL,"PCUTXBUF", DUMP_BASIC }, 352185743Ssam { AR_SLP32_MODE, "SLP32MOD", DUMP_BASIC }, 353185743Ssam { AR_SLP32_WAKE, "SLP32WAK", DUMP_BASIC }, 354185743Ssam { AR_SLP32_INC, "SLP32INC", DUMP_BASIC }, 355185743Ssam { AR_SLP_CNT, "SLPCNT", DUMP_BASIC }, 356185743Ssam { AR_SLP_MIB_CTRL, "SLPMIB", DUMP_BASIC }, 357185743Ssam { AR_EXTRCCNT, "EXTRCCNT", DUMP_BASIC }, 358185743Ssam 359185743Ssam /* XXX { AR_RATE_DURATION(0), AR_RATE_DURATION(0x20) }, */ 360185743Ssam}; 361185743Ssam 362185743Ssamstatic __constructor void 363185743Ssamar5416_ctor(void) 364185743Ssam{ 365185743Ssam register_regs(ar5416regs, N(ar5416regs), MAC5416, PHYANY); 366185743Ssam register_keycache(128, MAC5416, PHYANY); 367185743Ssam 368185743Ssam register_range(0x9800, 0x987c, DUMP_BASEBAND, MAC5416, PHYANY); 369185743Ssam register_range(0x9900, 0x997c, DUMP_BASEBAND, MAC5416, PHYANY); 370185743Ssam register_range(0x99a4, 0x99a4, DUMP_BASEBAND, MAC5416, PHYANY); 371185743Ssam register_range(0x9c00, 0x9c1c, DUMP_BASEBAND, MAC5416, PHYANY); 372185743Ssam register_range(0xa180, 0xa238, DUMP_BASEBAND, MAC5416, PHYANY); 373185743Ssam register_range(0xa258, 0xa26c, DUMP_BASEBAND, MAC5416, PHYANY); 374185743Ssam register_range(0xa3c8, 0xa3d4, DUMP_BASEBAND, MAC5416, PHYANY); 375185743Ssam register_range(0xa864, 0xa864, DUMP_BASEBAND, MAC5416, PHYANY); 376185743Ssam register_range(0xa9bc, 0xa9bc, DUMP_BASEBAND, MAC5416, PHYANY); 377185743Ssam register_range(0xb864, 0xb864, DUMP_BASEBAND, MAC5416, PHYANY); 378185743Ssam register_range(0xb9bc, 0xb9bc, DUMP_BASEBAND, MAC5416, PHYANY); 379185743Ssam} 380