aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/ath/ath9k/reg.h
diff options
context:
space:
mode:
authorVivek Natarajan <vivek.natraj@gmail.com>2009-07-14 23:21:17 -0400
committerJohn W. Linville <linville@tuxdriver.com>2009-07-24 15:05:19 -0400
commit04dc882d601ec6fae5dfcb47c43f7af343e9a135 (patch)
treeda0d4ffdfcb6268e8413eebaab9b843f0d7b658b /drivers/net/wireless/ath/ath9k/reg.h
parentae9e4b0d1a43fd66da43918491834f9e5c1b6cca (diff)
ath9k: Add AR9287 based chipsets' register information.
Signed-off-by: Vivek Natarajan <vnatarajan@atheros.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath/ath9k/reg.h')
-rw-r--r--drivers/net/wireless/ath/ath9k/reg.h93
1 files changed, 93 insertions, 0 deletions
diff --git a/drivers/net/wireless/ath/ath9k/reg.h b/drivers/net/wireless/ath/ath9k/reg.h
index 52605246679f..8302aeb62e5d 100644
--- a/drivers/net/wireless/ath/ath9k/reg.h
+++ b/drivers/net/wireless/ath/ath9k/reg.h
@@ -574,6 +574,7 @@
574 574
575#define AR_D_GBL_IFS_SIFS 0x1030 575#define AR_D_GBL_IFS_SIFS 0x1030
576#define AR_D_GBL_IFS_SIFS_M 0x0000FFFF 576#define AR_D_GBL_IFS_SIFS_M 0x0000FFFF
577#define AR_D_GBL_IFS_SIFS_ASYNC_FIFO_DUR 0x000003AB
577#define AR_D_GBL_IFS_SIFS_RESV0 0xFFFFFFFF 578#define AR_D_GBL_IFS_SIFS_RESV0 0xFFFFFFFF
578 579
579#define AR_D_TXBLK_BASE 0x1038 580#define AR_D_TXBLK_BASE 0x1038
@@ -589,10 +590,12 @@
589#define AR_D_GBL_IFS_SLOT 0x1070 590#define AR_D_GBL_IFS_SLOT 0x1070
590#define AR_D_GBL_IFS_SLOT_M 0x0000FFFF 591#define AR_D_GBL_IFS_SLOT_M 0x0000FFFF
591#define AR_D_GBL_IFS_SLOT_RESV0 0xFFFF0000 592#define AR_D_GBL_IFS_SLOT_RESV0 0xFFFF0000
593#define AR_D_GBL_IFS_SLOT_ASYNC_FIFO_DUR 0x00000420
592 594
593#define AR_D_GBL_IFS_EIFS 0x10b0 595#define AR_D_GBL_IFS_EIFS 0x10b0
594#define AR_D_GBL_IFS_EIFS_M 0x0000FFFF 596#define AR_D_GBL_IFS_EIFS_M 0x0000FFFF
595#define AR_D_GBL_IFS_EIFS_RESV0 0xFFFF0000 597#define AR_D_GBL_IFS_EIFS_RESV0 0xFFFF0000
598#define AR_D_GBL_IFS_EIFS_ASYNC_FIFO_DUR 0x0000A5EB
596 599
597#define AR_D_GBL_IFS_MISC 0x10f0 600#define AR_D_GBL_IFS_MISC 0x10f0
598#define AR_D_GBL_IFS_MISC_LFSR_SLICE_SEL 0x00000007 601#define AR_D_GBL_IFS_MISC_LFSR_SLICE_SEL 0x00000007
@@ -738,6 +741,9 @@
738#define AR_SREV_REVISION_9285_10 0 741#define AR_SREV_REVISION_9285_10 0
739#define AR_SREV_REVISION_9285_11 1 742#define AR_SREV_REVISION_9285_11 1
740#define AR_SREV_REVISION_9285_12 2 743#define AR_SREV_REVISION_9285_12 2
744#define AR_SREV_VERSION_9287 0x180
745#define AR_SREV_REVISION_9287_10 0
746#define AR_SREV_REVISION_9287_11 1
741 747
742#define AR_SREV_5416(_ah) \ 748#define AR_SREV_5416(_ah) \
743 (((_ah)->hw_version.macVersion == AR_SREV_VERSION_5416_PCI) || \ 749 (((_ah)->hw_version.macVersion == AR_SREV_VERSION_5416_PCI) || \
@@ -794,6 +800,21 @@
794 (AR_SREV_9285(ah) && ((_ah)->hw_version.macRev >= \ 800 (AR_SREV_9285(ah) && ((_ah)->hw_version.macRev >= \
795 AR_SREV_REVISION_9285_12))) 801 AR_SREV_REVISION_9285_12)))
796 802
803#define AR_SREV_9287(_ah) \
804 (((_ah)->hw_version.macVersion == AR_SREV_VERSION_9287))
805#define AR_SREV_9287_10_OR_LATER(_ah) \
806 (((_ah)->hw_version.macVersion >= AR_SREV_VERSION_9287))
807#define AR_SREV_9287_10(_ah) \
808 (((_ah)->hw_version.macVersion == AR_SREV_VERSION_9287) && \
809 ((_ah)->hw_version.macRev == AR_SREV_REVISION_9287_10))
810#define AR_SREV_9287_11(_ah) \
811 (((_ah)->hw_version.macVersion == AR_SREV_VERSION_9287) && \
812 ((_ah)->hw_version.macRev == AR_SREV_REVISION_9287_11))
813#define AR_SREV_9287_11_OR_LATER(_ah) \
814 (((_ah)->hw_version.macVersion > AR_SREV_VERSION_9287) || \
815 (((_ah)->hw_version.macVersion == AR_SREV_VERSION_9287) && \
816 ((_ah)->hw_version.macRev >= AR_SREV_REVISION_9287_11)))
817
797#define AR_RADIO_SREV_MAJOR 0xf0 818#define AR_RADIO_SREV_MAJOR 0xf0
798#define AR_RAD5133_SREV_MAJOR 0xc0 819#define AR_RAD5133_SREV_MAJOR 0xc0
799#define AR_RAD2133_SREV_MAJOR 0xd0 820#define AR_RAD2133_SREV_MAJOR 0xd0
@@ -809,6 +830,9 @@
809#define AR_AHB_PAGE_SIZE_1K 0x00000000 830#define AR_AHB_PAGE_SIZE_1K 0x00000000
810#define AR_AHB_PAGE_SIZE_2K 0x00000008 831#define AR_AHB_PAGE_SIZE_2K 0x00000008
811#define AR_AHB_PAGE_SIZE_4K 0x00000010 832#define AR_AHB_PAGE_SIZE_4K 0x00000010
833#define AR_AHB_CUSTOM_BURST_EN 0x000000C0
834#define AR_AHB_CUSTOM_BURST_EN_S 6
835#define AR_AHB_CUSTOM_BURST_ASYNC_FIFO_VAL 3
812 836
813#define AR_INTR_RTC_IRQ 0x00000001 837#define AR_INTR_RTC_IRQ 0x00000001
814#define AR_INTR_MAC_IRQ 0x00000002 838#define AR_INTR_MAC_IRQ 0x00000002
@@ -885,6 +909,7 @@ enum {
885#define AR_NUM_GPIO 14 909#define AR_NUM_GPIO 14
886#define AR928X_NUM_GPIO 10 910#define AR928X_NUM_GPIO 10
887#define AR9285_NUM_GPIO 12 911#define AR9285_NUM_GPIO 12
912#define AR9287_NUM_GPIO 11
888 913
889#define AR_GPIO_IN_OUT 0x4048 914#define AR_GPIO_IN_OUT 0x4048
890#define AR_GPIO_IN_VAL 0x0FFFC000 915#define AR_GPIO_IN_VAL 0x0FFFC000
@@ -893,6 +918,8 @@ enum {
893#define AR928X_GPIO_IN_VAL_S 10 918#define AR928X_GPIO_IN_VAL_S 10
894#define AR9285_GPIO_IN_VAL 0x00FFF000 919#define AR9285_GPIO_IN_VAL 0x00FFF000
895#define AR9285_GPIO_IN_VAL_S 12 920#define AR9285_GPIO_IN_VAL_S 12
921#define AR9287_GPIO_IN_VAL 0x003FF800
922#define AR9287_GPIO_IN_VAL_S 11
896 923
897#define AR_GPIO_OE_OUT 0x404c 924#define AR_GPIO_OE_OUT 0x404c
898#define AR_GPIO_OE_OUT_DRV 0x3 925#define AR_GPIO_OE_OUT_DRV 0x3
@@ -1154,6 +1181,33 @@ enum {
1154#define AR9285_AN_TOP4 0x7870 1181#define AR9285_AN_TOP4 0x7870
1155#define AR9285_AN_TOP4_DEFAULT 0x10142c00 1182#define AR9285_AN_TOP4_DEFAULT 0x10142c00
1156 1183
1184#define AR9287_AN_RF2G3_CH0 0x7808
1185#define AR9287_AN_RF2G3_CH1 0x785c
1186#define AR9287_AN_RF2G3_DB1 0xE0000000
1187#define AR9287_AN_RF2G3_DB1_S 29
1188#define AR9287_AN_RF2G3_DB2 0x1C000000
1189#define AR9287_AN_RF2G3_DB2_S 26
1190#define AR9287_AN_RF2G3_OB_CCK 0x03800000
1191#define AR9287_AN_RF2G3_OB_CCK_S 23
1192#define AR9287_AN_RF2G3_OB_PSK 0x00700000
1193#define AR9287_AN_RF2G3_OB_PSK_S 20
1194#define AR9287_AN_RF2G3_OB_QAM 0x000E0000
1195#define AR9287_AN_RF2G3_OB_QAM_S 17
1196#define AR9287_AN_RF2G3_OB_PAL_OFF 0x0001C000
1197#define AR9287_AN_RF2G3_OB_PAL_OFF_S 14
1198
1199#define AR9287_AN_TXPC0 0x7898
1200#define AR9287_AN_TXPC0_TXPCMODE 0x0000C000
1201#define AR9287_AN_TXPC0_TXPCMODE_S 14
1202#define AR9287_AN_TXPC0_TXPCMODE_NORMAL 0
1203#define AR9287_AN_TXPC0_TXPCMODE_TEST 1
1204#define AR9287_AN_TXPC0_TXPCMODE_TEMPSENSE 2
1205#define AR9287_AN_TXPC0_TXPCMODE_ATBTEST 3
1206
1207#define AR9287_AN_TOP2 0x78b4
1208#define AR9287_AN_TOP2_XPABIAS_LVL 0xC0000000
1209#define AR9287_AN_TOP2_XPABIAS_LVL_S 30
1210
1157#define AR_STA_ID0 0x8000 1211#define AR_STA_ID0 0x8000
1158#define AR_STA_ID1 0x8004 1212#define AR_STA_ID1 0x8004
1159#define AR_STA_ID1_SADH_MASK 0x0000FFFF 1213#define AR_STA_ID1_SADH_MASK 0x0000FFFF
@@ -1188,6 +1242,7 @@ enum {
1188#define AR_TIME_OUT_ACK_S 0 1242#define AR_TIME_OUT_ACK_S 0
1189#define AR_TIME_OUT_CTS 0x3FFF0000 1243#define AR_TIME_OUT_CTS 0x3FFF0000
1190#define AR_TIME_OUT_CTS_S 16 1244#define AR_TIME_OUT_CTS_S 16
1245#define AR_TIME_OUT_ACK_CTS_ASYNC_FIFO_DUR 0x16001D56
1191 1246
1192#define AR_RSSI_THR 0x8018 1247#define AR_RSSI_THR 0x8018
1193#define AR_RSSI_THR_MASK 0x000000FF 1248#define AR_RSSI_THR_MASK 0x000000FF
@@ -1203,6 +1258,7 @@ enum {
1203#define AR_USEC_TX_LAT_S 14 1258#define AR_USEC_TX_LAT_S 14
1204#define AR_USEC_RX_LAT 0x1F800000 1259#define AR_USEC_RX_LAT 0x1F800000
1205#define AR_USEC_RX_LAT_S 23 1260#define AR_USEC_RX_LAT_S 23
1261#define AR_USEC_ASYNC_FIFO_DUR 0x12e00074
1206 1262
1207#define AR_RESET_TSF 0x8020 1263#define AR_RESET_TSF 0x8020
1208#define AR_RESET_TSF_ONCE 0x01000000 1264#define AR_RESET_TSF_ONCE 0x01000000
@@ -1468,6 +1524,10 @@ enum {
1468#define AR_SLP_MIB_CLEAR 0x00000001 1524#define AR_SLP_MIB_CLEAR 0x00000001
1469#define AR_SLP_MIB_PENDING 0x00000002 1525#define AR_SLP_MIB_PENDING 0x00000002
1470 1526
1527#define AR_MAC_PCU_LOGIC_ANALYZER 0x8264
1528#define AR_MAC_PCU_LOGIC_ANALYZER_DISBUG20768 0x20000000
1529
1530
1471#define AR_2040_MODE 0x8318 1531#define AR_2040_MODE 0x8318
1472#define AR_2040_JOINED_RX_CLEAR 0x00000001 1532#define AR_2040_JOINED_RX_CLEAR 0x00000001
1473 1533
@@ -1485,6 +1545,39 @@ enum {
1485#define AR_PCU_MISC_MODE2_MGMT_CRYPTO_ENABLE 0x00000002 1545#define AR_PCU_MISC_MODE2_MGMT_CRYPTO_ENABLE 0x00000002
1486#define AR_PCU_MISC_MODE2_NO_CRYPTO_FOR_NON_DATA_PKT 0x00000004 1546#define AR_PCU_MISC_MODE2_NO_CRYPTO_FOR_NON_DATA_PKT 0x00000004
1487 1547
1548#define AR_PCU_MISC_MODE2_RESERVED 0x00000038
1549#define AR_PCU_MISC_MODE2_ADHOC_MCAST_KEYID_ENABLE 0x00000040
1550#define AR_PCU_MISC_MODE2_CFP_IGNORE 0x00000080
1551#define AR_PCU_MISC_MODE2_MGMT_QOS 0x0000FF00
1552#define AR_PCU_MISC_MODE2_MGMT_QOS_S 8
1553#define AR_PCU_MISC_MODE2_ENABLE_LOAD_NAV_BEACON_DURATION 0x00010000
1554#define AR_PCU_MISC_MODE2_ENABLE_AGGWEP 0x00020000
1555#define AR_PCU_MISC_MODE2_HWWAR1 0x00100000
1556#define AR_PCU_MISC_MODE2_HWWAR2 0x02000000
1557#define AR_PCU_MISC_MODE2_RESERVED2 0xFFFE0000
1558
1559#define AR_MAC_PCU_ASYNC_FIFO_REG3 0x8358
1560#define AR_MAC_PCU_ASYNC_FIFO_REG3_DATAPATH_SEL 0x00000400
1561#define AR_MAC_PCU_ASYNC_FIFO_REG3_SOFT_RESET 0x80000000
1562
1563
1564#define AR_AES_MUTE_MASK0 0x805c
1565#define AR_AES_MUTE_MASK0_FC 0x0000FFFF
1566#define AR_AES_MUTE_MASK0_QOS 0xFFFF0000
1567#define AR_AES_MUTE_MASK0_QOS_S 16
1568
1569#define AR_AES_MUTE_MASK1 0x8060
1570#define AR_AES_MUTE_MASK1_SEQ 0x0000FFFF
1571#define AR_AES_MUTE_MASK1_SEQ_S 0
1572#define AR_AES_MUTE_MASK1_FC_MGMT 0xFFFF0000
1573#define AR_AES_MUTE_MASK1_FC_MGMT_S 16
1574
1575#define AR_RATE_DURATION_0 0x8700
1576#define AR_RATE_DURATION_31 0x87CC
1577#define AR_RATE_DURATION_32 0x8780
1578#define AR_RATE_DURATION(_n) (AR_RATE_DURATION_0 + ((_n)<<2))
1579
1580
1488#define AR_KEYTABLE_0 0x8800 1581#define AR_KEYTABLE_0 0x8800
1489#define AR_KEYTABLE(_n) (AR_KEYTABLE_0 + ((_n)*32)) 1582#define AR_KEYTABLE(_n) (AR_KEYTABLE_0 + ((_n)*32))
1490#define AR_KEY_CACHE_SIZE 128 1583#define AR_KEY_CACHE_SIZE 128