phy_n.h revision 204a665ba390bca861ad7b1a061f3ccded0e7eab
1#ifndef B43_NPHY_H_ 2#define B43_NPHY_H_ 3 4#include "phy_common.h" 5 6 7/* N-PHY registers. */ 8 9#define B43_NPHY_BBCFG B43_PHY_N(0x001) /* BB config */ 10#define B43_NPHY_BBCFG_RSTCCA 0x4000 /* Reset CCA */ 11#define B43_NPHY_BBCFG_RSTRX 0x8000 /* Reset RX */ 12#define B43_NPHY_CHANNEL B43_PHY_N(0x005) /* Channel */ 13#define B43_NPHY_TXERR B43_PHY_N(0x007) /* TX error */ 14#define B43_NPHY_BANDCTL B43_PHY_N(0x009) /* Band control */ 15#define B43_NPHY_BANDCTL_5GHZ 0x0001 /* Use the 5GHz band */ 16#define B43_NPHY_4WI_ADDR B43_PHY_N(0x00B) /* Four-wire bus address */ 17#define B43_NPHY_4WI_DATAHI B43_PHY_N(0x00C) /* Four-wire bus data high */ 18#define B43_NPHY_4WI_DATALO B43_PHY_N(0x00D) /* Four-wire bus data low */ 19#define B43_NPHY_BIST_STAT0 B43_PHY_N(0x00E) /* Built-in self test status 0 */ 20#define B43_NPHY_BIST_STAT1 B43_PHY_N(0x00F) /* Built-in self test status 1 */ 21 22#define B43_NPHY_C1_DESPWR B43_PHY_N(0x018) /* Core 1 desired power */ 23#define B43_NPHY_C1_CCK_DESPWR B43_PHY_N(0x019) /* Core 1 CCK desired power */ 24#define B43_NPHY_C1_BCLIPBKOFF B43_PHY_N(0x01A) /* Core 1 barely clip backoff */ 25#define B43_NPHY_C1_CCK_BCLIPBKOFF B43_PHY_N(0x01B) /* Core 1 CCK barely clip backoff */ 26#define B43_NPHY_C1_CGAINI B43_PHY_N(0x01C) /* Core 1 compute gain info */ 27#define B43_NPHY_C1_CGAINI_GAINBKOFF 0x001F /* Gain backoff */ 28#define B43_NPHY_C1_CGAINI_GAINBKOFF_SHIFT 0 29#define B43_NPHY_C1_CGAINI_CLIPGBKOFF 0x03E0 /* Clip gain backoff */ 30#define B43_NPHY_C1_CGAINI_CLIPGBKOFF_SHIFT 5 31#define B43_NPHY_C1_CGAINI_GAINSTEP 0x1C00 /* Gain step */ 32#define B43_NPHY_C1_CGAINI_GAINSTEP_SHIFT 10 33#define B43_NPHY_C1_CGAINI_CL2DETECT 0x2000 /* Clip 2 detect mask */ 34#define B43_NPHY_C1_CCK_CGAINI B43_PHY_N(0x01D) /* Core 1 CCK compute gain info */ 35#define B43_NPHY_C1_CCK_CGAINI_GAINBKOFF 0x001F /* Gain backoff */ 36#define B43_NPHY_C1_CCK_CGAINI_CLIPGBKOFF 0x01E0 /* CCK barely clip gain backoff */ 37#define B43_NPHY_C1_MINMAX_GAIN B43_PHY_N(0x01E) /* Core 1 min/max gain */ 38#define B43_NPHY_C1_MINGAIN 0x00FF /* Minimum gain */ 39#define B43_NPHY_C1_MINGAIN_SHIFT 0 40#define B43_NPHY_C1_MAXGAIN 0xFF00 /* Maximum gain */ 41#define B43_NPHY_C1_MAXGAIN_SHIFT 8 42#define B43_NPHY_C1_CCK_MINMAX_GAIN B43_PHY_N(0x01F) /* Core 1 CCK min/max gain */ 43#define B43_NPHY_C1_CCK_MINGAIN 0x00FF /* Minimum gain */ 44#define B43_NPHY_C1_CCK_MINGAIN_SHIFT 0 45#define B43_NPHY_C1_CCK_MAXGAIN 0xFF00 /* Maximum gain */ 46#define B43_NPHY_C1_CCK_MAXGAIN_SHIFT 8 47#define B43_NPHY_C1_INITGAIN B43_PHY_N(0x020) /* Core 1 initial gain code */ 48#define B43_NPHY_C1_INITGAIN_EXTLNA 0x0001 /* External LNA index */ 49#define B43_NPHY_C1_INITGAIN_LNA 0x0006 /* LNA index */ 50#define B43_NPHY_C1_INITGAIN_LNAIDX_SHIFT 1 51#define B43_NPHY_C1_INITGAIN_HPVGA1 0x0078 /* HPVGA1 index */ 52#define B43_NPHY_C1_INITGAIN_HPVGA1_SHIFT 3 53#define B43_NPHY_C1_INITGAIN_HPVGA2 0x0F80 /* HPVGA2 index */ 54#define B43_NPHY_C1_INITGAIN_HPVGA2_SHIFT 7 55#define B43_NPHY_C1_INITGAIN_TRRX 0x1000 /* TR RX index */ 56#define B43_NPHY_C1_INITGAIN_TRTX 0x2000 /* TR TX index */ 57#define B43_NPHY_C1_CLIP1_HIGAIN B43_PHY_N(0x021) /* Core 1 clip1 high gain code */ 58#define B43_NPHY_C1_CLIP1_MEDGAIN B43_PHY_N(0x022) /* Core 1 clip1 medium gain code */ 59#define B43_NPHY_C1_CLIP1_LOGAIN B43_PHY_N(0x023) /* Core 1 clip1 low gain code */ 60#define B43_NPHY_C1_CLIP2_GAIN B43_PHY_N(0x024) /* Core 1 clip2 gain code */ 61#define B43_NPHY_C1_FILTERGAIN B43_PHY_N(0x025) /* Core 1 filter gain */ 62#define B43_NPHY_C1_LPF_QHPF_BW B43_PHY_N(0x026) /* Core 1 LPF Q HP F bandwidth */ 63#define B43_NPHY_C1_CLIPWBTHRES B43_PHY_N(0x027) /* Core 1 clip wideband threshold */ 64#define B43_NPHY_C1_CLIPWBTHRES_CLIP2 0x003F /* Clip 2 */ 65#define B43_NPHY_C1_CLIPWBTHRES_CLIP2_SHIFT 0 66#define B43_NPHY_C1_CLIPWBTHRES_CLIP1 0x0FC0 /* Clip 1 */ 67#define B43_NPHY_C1_CLIPWBTHRES_CLIP1_SHIFT 6 68#define B43_NPHY_C1_W1THRES B43_PHY_N(0x028) /* Core 1 W1 threshold */ 69#define B43_NPHY_C1_EDTHRES B43_PHY_N(0x029) /* Core 1 ED threshold */ 70#define B43_NPHY_C1_SMSIGTHRES B43_PHY_N(0x02A) /* Core 1 small sig threshold */ 71#define B43_NPHY_C1_NBCLIPTHRES B43_PHY_N(0x02B) /* Core 1 NB clip threshold */ 72#define B43_NPHY_C1_CLIP1THRES B43_PHY_N(0x02C) /* Core 1 clip1 threshold */ 73#define B43_NPHY_C1_CLIP2THRES B43_PHY_N(0x02D) /* Core 1 clip2 threshold */ 74 75#define B43_NPHY_C2_DESPWR B43_PHY_N(0x02E) /* Core 2 desired power */ 76#define B43_NPHY_C2_CCK_DESPWR B43_PHY_N(0x02F) /* Core 2 CCK desired power */ 77#define B43_NPHY_C2_BCLIPBKOFF B43_PHY_N(0x030) /* Core 2 barely clip backoff */ 78#define B43_NPHY_C2_CCK_BCLIPBKOFF B43_PHY_N(0x031) /* Core 2 CCK barely clip backoff */ 79#define B43_NPHY_C2_CGAINI B43_PHY_N(0x032) /* Core 2 compute gain info */ 80#define B43_NPHY_C2_CGAINI_GAINBKOFF 0x001F /* Gain backoff */ 81#define B43_NPHY_C2_CGAINI_GAINBKOFF_SHIFT 0 82#define B43_NPHY_C2_CGAINI_CLIPGBKOFF 0x03E0 /* Clip gain backoff */ 83#define B43_NPHY_C2_CGAINI_CLIPGBKOFF_SHIFT 5 84#define B43_NPHY_C2_CGAINI_GAINSTEP 0x1C00 /* Gain step */ 85#define B43_NPHY_C2_CGAINI_GAINSTEP_SHIFT 10 86#define B43_NPHY_C2_CGAINI_CL2DETECT 0x2000 /* Clip 2 detect mask */ 87#define B43_NPHY_C2_CCK_CGAINI B43_PHY_N(0x033) /* Core 2 CCK compute gain info */ 88#define B43_NPHY_C2_CCK_CGAINI_GAINBKOFF 0x001F /* Gain backoff */ 89#define B43_NPHY_C2_CCK_CGAINI_CLIPGBKOFF 0x01E0 /* CCK barely clip gain backoff */ 90#define B43_NPHY_C2_MINMAX_GAIN B43_PHY_N(0x034) /* Core 2 min/max gain */ 91#define B43_NPHY_C2_MINGAIN 0x00FF /* Minimum gain */ 92#define B43_NPHY_C2_MINGAIN_SHIFT 0 93#define B43_NPHY_C2_MAXGAIN 0xFF00 /* Maximum gain */ 94#define B43_NPHY_C2_MAXGAIN_SHIFT 8 95#define B43_NPHY_C2_CCK_MINMAX_GAIN B43_PHY_N(0x035) /* Core 2 CCK min/max gain */ 96#define B43_NPHY_C2_CCK_MINGAIN 0x00FF /* Minimum gain */ 97#define B43_NPHY_C2_CCK_MINGAIN_SHIFT 0 98#define B43_NPHY_C2_CCK_MAXGAIN 0xFF00 /* Maximum gain */ 99#define B43_NPHY_C2_CCK_MAXGAIN_SHIFT 8 100#define B43_NPHY_C2_INITGAIN B43_PHY_N(0x036) /* Core 2 initial gain code */ 101#define B43_NPHY_C2_INITGAIN_EXTLNA 0x0001 /* External LNA index */ 102#define B43_NPHY_C2_INITGAIN_LNA 0x0006 /* LNA index */ 103#define B43_NPHY_C2_INITGAIN_LNAIDX_SHIFT 1 104#define B43_NPHY_C2_INITGAIN_HPVGA1 0x0078 /* HPVGA1 index */ 105#define B43_NPHY_C2_INITGAIN_HPVGA1_SHIFT 3 106#define B43_NPHY_C2_INITGAIN_HPVGA2 0x0F80 /* HPVGA2 index */ 107#define B43_NPHY_C2_INITGAIN_HPVGA2_SHIFT 7 108#define B43_NPHY_C2_INITGAIN_TRRX 0x1000 /* TR RX index */ 109#define B43_NPHY_C2_INITGAIN_TRTX 0x2000 /* TR TX index */ 110#define B43_NPHY_C2_CLIP1_HIGAIN B43_PHY_N(0x037) /* Core 2 clip1 high gain code */ 111#define B43_NPHY_C2_CLIP1_MEDGAIN B43_PHY_N(0x038) /* Core 2 clip1 medium gain code */ 112#define B43_NPHY_C2_CLIP1_LOGAIN B43_PHY_N(0x039) /* Core 2 clip1 low gain code */ 113#define B43_NPHY_C2_CLIP2_GAIN B43_PHY_N(0x03A) /* Core 2 clip2 gain code */ 114#define B43_NPHY_C2_FILTERGAIN B43_PHY_N(0x03B) /* Core 2 filter gain */ 115#define B43_NPHY_C2_LPF_QHPF_BW B43_PHY_N(0x03C) /* Core 2 LPF Q HP F bandwidth */ 116#define B43_NPHY_C2_CLIPWBTHRES B43_PHY_N(0x03D) /* Core 2 clip wideband threshold */ 117#define B43_NPHY_C2_CLIPWBTHRES_CLIP2 0x003F /* Clip 2 */ 118#define B43_NPHY_C2_CLIPWBTHRES_CLIP2_SHIFT 0 119#define B43_NPHY_C2_CLIPWBTHRES_CLIP1 0x0FC0 /* Clip 1 */ 120#define B43_NPHY_C2_CLIPWBTHRES_CLIP1_SHIFT 6 121#define B43_NPHY_C2_W1THRES B43_PHY_N(0x03E) /* Core 2 W1 threshold */ 122#define B43_NPHY_C2_EDTHRES B43_PHY_N(0x03F) /* Core 2 ED threshold */ 123#define B43_NPHY_C2_SMSIGTHRES B43_PHY_N(0x040) /* Core 2 small sig threshold */ 124#define B43_NPHY_C2_NBCLIPTHRES B43_PHY_N(0x041) /* Core 2 NB clip threshold */ 125#define B43_NPHY_C2_CLIP1THRES B43_PHY_N(0x042) /* Core 2 clip1 threshold */ 126#define B43_NPHY_C2_CLIP2THRES B43_PHY_N(0x043) /* Core 2 clip2 threshold */ 127 128#define B43_NPHY_CRS_THRES1 B43_PHY_N(0x044) /* CRS threshold 1 */ 129#define B43_NPHY_CRS_THRES2 B43_PHY_N(0x045) /* CRS threshold 2 */ 130#define B43_NPHY_CRS_THRES3 B43_PHY_N(0x046) /* CRS threshold 3 */ 131#define B43_NPHY_CRSCTL B43_PHY_N(0x047) /* CRS control */ 132#define B43_NPHY_DCFADDR B43_PHY_N(0x048) /* DC filter address */ 133#define B43_NPHY_RXF20_NUM0 B43_PHY_N(0x049) /* RX filter 20 numerator 0 */ 134#define B43_NPHY_RXF20_NUM1 B43_PHY_N(0x04A) /* RX filter 20 numerator 1 */ 135#define B43_NPHY_RXF20_NUM2 B43_PHY_N(0x04B) /* RX filter 20 numerator 2 */ 136#define B43_NPHY_RXF20_DENOM0 B43_PHY_N(0x04C) /* RX filter 20 denominator 0 */ 137#define B43_NPHY_RXF20_DENOM1 B43_PHY_N(0x04D) /* RX filter 20 denominator 1 */ 138#define B43_NPHY_RXF20_NUM10 B43_PHY_N(0x04E) /* RX filter 20 numerator 10 */ 139#define B43_NPHY_RXF20_NUM11 B43_PHY_N(0x04F) /* RX filter 20 numerator 11 */ 140#define B43_NPHY_RXF20_NUM12 B43_PHY_N(0x050) /* RX filter 20 numerator 12 */ 141#define B43_NPHY_RXF20_DENOM10 B43_PHY_N(0x051) /* RX filter 20 denominator 10 */ 142#define B43_NPHY_RXF20_DENOM11 B43_PHY_N(0x052) /* RX filter 20 denominator 11 */ 143#define B43_NPHY_RXF40_NUM0 B43_PHY_N(0x053) /* RX filter 40 numerator 0 */ 144#define B43_NPHY_RXF40_NUM1 B43_PHY_N(0x054) /* RX filter 40 numerator 1 */ 145#define B43_NPHY_RXF40_NUM2 B43_PHY_N(0x055) /* RX filter 40 numerator 2 */ 146#define B43_NPHY_RXF40_DENOM0 B43_PHY_N(0x056) /* RX filter 40 denominator 0 */ 147#define B43_NPHY_RXF40_DENOM1 B43_PHY_N(0x057) /* RX filter 40 denominator 1 */ 148#define B43_NPHY_RXF40_NUM10 B43_PHY_N(0x058) /* RX filter 40 numerator 10 */ 149#define B43_NPHY_RXF40_NUM11 B43_PHY_N(0x059) /* RX filter 40 numerator 11 */ 150#define B43_NPHY_RXF40_NUM12 B43_PHY_N(0x05A) /* RX filter 40 numerator 12 */ 151#define B43_NPHY_RXF40_DENOM10 B43_PHY_N(0x05B) /* RX filter 40 denominator 10 */ 152#define B43_NPHY_RXF40_DENOM11 B43_PHY_N(0x05C) /* RX filter 40 denominator 11 */ 153#define B43_NPHY_PPROC_RSTLEN B43_PHY_N(0x060) /* Packet processing reset length */ 154#define B43_NPHY_INITCARR_DLEN B43_PHY_N(0x061) /* Initial carrier detection length */ 155#define B43_NPHY_CLIP1CARR_DLEN B43_PHY_N(0x062) /* Clip1 carrier detection length */ 156#define B43_NPHY_CLIP2CARR_DLEN B43_PHY_N(0x063) /* Clip2 carrier detection length */ 157#define B43_NPHY_INITGAIN_SLEN B43_PHY_N(0x064) /* Initial gain settle length */ 158#define B43_NPHY_CLIP1GAIN_SLEN B43_PHY_N(0x065) /* Clip1 gain settle length */ 159#define B43_NPHY_CLIP2GAIN_SLEN B43_PHY_N(0x066) /* Clip2 gain settle length */ 160#define B43_NPHY_PACKGAIN_SLEN B43_PHY_N(0x067) /* Packet gain settle length */ 161#define B43_NPHY_CARRSRC_TLEN B43_PHY_N(0x068) /* Carrier search timeout length */ 162#define B43_NPHY_TISRC_TLEN B43_PHY_N(0x069) /* Timing search timeout length */ 163#define B43_NPHY_ENDROP_TLEN B43_PHY_N(0x06A) /* Energy drop timeout length */ 164#define B43_NPHY_CLIP1_NBDWELL_LEN B43_PHY_N(0x06B) /* Clip1 NB dwell length */ 165#define B43_NPHY_CLIP2_NBDWELL_LEN B43_PHY_N(0x06C) /* Clip2 NB dwell length */ 166#define B43_NPHY_W1CLIP1_DWELL_LEN B43_PHY_N(0x06D) /* W1 clip1 dwell length */ 167#define B43_NPHY_W1CLIP2_DWELL_LEN B43_PHY_N(0x06E) /* W1 clip2 dwell length */ 168#define B43_NPHY_W2CLIP1_DWELL_LEN B43_PHY_N(0x06F) /* W2 clip1 dwell length */ 169#define B43_NPHY_PLOAD_CSENSE_EXTLEN B43_PHY_N(0x070) /* Payload carrier sense extension length */ 170#define B43_NPHY_EDROP_CSENSE_EXTLEN B43_PHY_N(0x071) /* Energy drop carrier sense extension length */ 171#define B43_NPHY_TABLE_ADDR B43_PHY_N(0x072) /* Table address */ 172#define B43_NPHY_TABLE_DATALO B43_PHY_N(0x073) /* Table data low */ 173#define B43_NPHY_TABLE_DATAHI B43_PHY_N(0x074) /* Table data high */ 174#define B43_NPHY_WWISE_LENIDX B43_PHY_N(0x075) /* WWiSE length index */ 175#define B43_NPHY_TGNSYNC_LENIDX B43_PHY_N(0x076) /* TGNsync length index */ 176#define B43_NPHY_TXMACIF_HOLDOFF B43_PHY_N(0x077) /* TX MAC IF Hold off */ 177#define B43_NPHY_RFCTL_CMD B43_PHY_N(0x078) /* RF control (command) */ 178#define B43_NPHY_RFCTL_CMD_START 0x0001 /* Start sequence */ 179#define B43_NPHY_RFCTL_CMD_RXTX 0x0002 /* RX/TX */ 180#define B43_NPHY_RFCTL_CMD_CORESEL 0x0038 /* Core select */ 181#define B43_NPHY_RFCTL_CMD_CORESEL_SHIFT 3 182#define B43_NPHY_RFCTL_CMD_PORFORCE 0x0040 /* POR force */ 183#define B43_NPHY_RFCTL_CMD_OEPORFORCE 0x0080 /* OE POR force */ 184#define B43_NPHY_RFCTL_CMD_RXEN 0x0100 /* RX enable */ 185#define B43_NPHY_RFCTL_CMD_TXEN 0x0200 /* TX enable */ 186#define B43_NPHY_RFCTL_CMD_CHIP0PU 0x0400 /* Chip0 PU */ 187#define B43_NPHY_RFCTL_CMD_EN 0x0800 /* Radio enabled */ 188#define B43_NPHY_RFCTL_CMD_SEQENCORE 0xF000 /* Seq en core */ 189#define B43_NPHY_RFCTL_CMD_SEQENCORE_SHIFT 12 190#define B43_NPHY_RFCTL_RSSIO1 B43_PHY_N(0x07A) /* RF control (RSSI others 1) */ 191#define B43_NPHY_RFCTL_RSSIO1_RXPD 0x0001 /* RX PD */ 192#define B43_NPHY_RFCTL_RSSIO1_TXPD 0x0002 /* TX PD */ 193#define B43_NPHY_RFCTL_RSSIO1_PAPD 0x0004 /* PA PD */ 194#define B43_NPHY_RFCTL_RSSIO1_RSSICTL 0x0030 /* RSSI control */ 195#define B43_NPHY_RFCTL_RSSIO1_LPFBW 0x00C0 /* LPF bandwidth */ 196#define B43_NPHY_RFCTL_RSSIO1_HPFBWHI 0x0100 /* HPF bandwidth high */ 197#define B43_NPHY_RFCTL_RSSIO1_HIQDISCO 0x0200 /* HIQ dis core */ 198#define B43_NPHY_RFCTL_RXG1 B43_PHY_N(0x07B) /* RF control (RX gain 1) */ 199#define B43_NPHY_RFCTL_TXG1 B43_PHY_N(0x07C) /* RF control (TX gain 1) */ 200#define B43_NPHY_RFCTL_RSSIO2 B43_PHY_N(0x07D) /* RF control (RSSI others 2) */ 201#define B43_NPHY_RFCTL_RSSIO2_RXPD 0x0001 /* RX PD */ 202#define B43_NPHY_RFCTL_RSSIO2_TXPD 0x0002 /* TX PD */ 203#define B43_NPHY_RFCTL_RSSIO2_PAPD 0x0004 /* PA PD */ 204#define B43_NPHY_RFCTL_RSSIO2_RSSICTL 0x0030 /* RSSI control */ 205#define B43_NPHY_RFCTL_RSSIO2_LPFBW 0x00C0 /* LPF bandwidth */ 206#define B43_NPHY_RFCTL_RSSIO2_HPFBWHI 0x0100 /* HPF bandwidth high */ 207#define B43_NPHY_RFCTL_RSSIO2_HIQDISCO 0x0200 /* HIQ dis core */ 208#define B43_NPHY_RFCTL_RXG2 B43_PHY_N(0x07E) /* RF control (RX gain 2) */ 209#define B43_NPHY_RFCTL_TXG2 B43_PHY_N(0x07F) /* RF control (TX gain 2) */ 210#define B43_NPHY_RFCTL_RSSIO3 B43_PHY_N(0x080) /* RF control (RSSI others 3) */ 211#define B43_NPHY_RFCTL_RSSIO3_RXPD 0x0001 /* RX PD */ 212#define B43_NPHY_RFCTL_RSSIO3_TXPD 0x0002 /* TX PD */ 213#define B43_NPHY_RFCTL_RSSIO3_PAPD 0x0004 /* PA PD */ 214#define B43_NPHY_RFCTL_RSSIO3_RSSICTL 0x0030 /* RSSI control */ 215#define B43_NPHY_RFCTL_RSSIO3_LPFBW 0x00C0 /* LPF bandwidth */ 216#define B43_NPHY_RFCTL_RSSIO3_HPFBWHI 0x0100 /* HPF bandwidth high */ 217#define B43_NPHY_RFCTL_RSSIO3_HIQDISCO 0x0200 /* HIQ dis core */ 218#define B43_NPHY_RFCTL_RXG3 B43_PHY_N(0x081) /* RF control (RX gain 3) */ 219#define B43_NPHY_RFCTL_TXG3 B43_PHY_N(0x082) /* RF control (TX gain 3) */ 220#define B43_NPHY_RFCTL_RSSIO4 B43_PHY_N(0x083) /* RF control (RSSI others 4) */ 221#define B43_NPHY_RFCTL_RSSIO4_RXPD 0x0001 /* RX PD */ 222#define B43_NPHY_RFCTL_RSSIO4_TXPD 0x0002 /* TX PD */ 223#define B43_NPHY_RFCTL_RSSIO4_PAPD 0x0004 /* PA PD */ 224#define B43_NPHY_RFCTL_RSSIO4_RSSICTL 0x0030 /* RSSI control */ 225#define B43_NPHY_RFCTL_RSSIO4_LPFBW 0x00C0 /* LPF bandwidth */ 226#define B43_NPHY_RFCTL_RSSIO4_HPFBWHI 0x0100 /* HPF bandwidth high */ 227#define B43_NPHY_RFCTL_RSSIO4_HIQDISCO 0x0200 /* HIQ dis core */ 228#define B43_NPHY_RFCTL_RXG4 B43_PHY_N(0x084) /* RF control (RX gain 4) */ 229#define B43_NPHY_RFCTL_TXG4 B43_PHY_N(0x085) /* RF control (TX gain 4) */ 230#define B43_NPHY_C1_TXIQ_COMP_OFF B43_PHY_N(0x087) /* Core 1 TX I/Q comp offset */ 231#define B43_NPHY_C2_TXIQ_COMP_OFF B43_PHY_N(0x088) /* Core 2 TX I/Q comp offset */ 232#define B43_NPHY_C1_TXCTL B43_PHY_N(0x08B) /* Core 1 TX control */ 233#define B43_NPHY_C2_TXCTL B43_PHY_N(0x08C) /* Core 2 TX control */ 234#define B43_NPHY_AFECTL_OVER1 B43_PHY_N(0x08F) /* AFE control override 1 */ 235#define B43_NPHY_SCRAM_SIGCTL B43_PHY_N(0x090) /* Scram signal control */ 236#define B43_NPHY_SCRAM_SIGCTL_INITST 0x007F /* Initial state value */ 237#define B43_NPHY_SCRAM_SIGCTL_INITST_SHIFT 0 238#define B43_NPHY_SCRAM_SIGCTL_SCM 0x0080 /* Scram control mode */ 239#define B43_NPHY_SCRAM_SIGCTL_SICE 0x0100 /* Scram index control enable */ 240#define B43_NPHY_SCRAM_SIGCTL_START 0xFE00 /* Scram start bit */ 241#define B43_NPHY_SCRAM_SIGCTL_START_SHIFT 9 242#define B43_NPHY_RFCTL_INTC1 B43_PHY_N(0x091) /* RF control (intc 1) */ 243#define B43_NPHY_RFCTL_INTC2 B43_PHY_N(0x092) /* RF control (intc 2) */ 244#define B43_NPHY_RFCTL_INTC3 B43_PHY_N(0x093) /* RF control (intc 3) */ 245#define B43_NPHY_RFCTL_INTC4 B43_PHY_N(0x094) /* RF control (intc 4) */ 246#define B43_NPHY_NRDTO_WWISE B43_PHY_N(0x095) /* # datatones WWiSE */ 247#define B43_NPHY_NRDTO_TGNSYNC B43_PHY_N(0x096) /* # datatones TGNsync */ 248#define B43_NPHY_SIGFMOD_WWISE B43_PHY_N(0x097) /* Signal field mod WWiSE */ 249#define B43_NPHY_LEG_SIGFMOD_11N B43_PHY_N(0x098) /* Legacy signal field mod 11n */ 250#define B43_NPHY_HT_SIGFMOD_11N B43_PHY_N(0x099) /* HT signal field mod 11n */ 251#define B43_NPHY_C1_RXIQ_COMPA0 B43_PHY_N(0x09A) /* Core 1 RX I/Q comp A0 */ 252#define B43_NPHY_C1_RXIQ_COMPB0 B43_PHY_N(0x09B) /* Core 1 RX I/Q comp B0 */ 253#define B43_NPHY_C2_RXIQ_COMPA1 B43_PHY_N(0x09C) /* Core 2 RX I/Q comp A1 */ 254#define B43_NPHY_C2_RXIQ_COMPB1 B43_PHY_N(0x09D) /* Core 2 RX I/Q comp B1 */ 255#define B43_NPHY_RXCTL B43_PHY_N(0x0A0) /* RX control */ 256#define B43_NPHY_RXCTL_BSELU20 0x0010 /* Band select upper 20 */ 257#define B43_NPHY_RXCTL_RIFSEN 0x0080 /* RIFS enable */ 258#define B43_NPHY_RFSEQMODE B43_PHY_N(0x0A1) /* RF seq mode */ 259#define B43_NPHY_RFSEQMODE_CAOVER 0x0001 /* Core active override */ 260#define B43_NPHY_RFSEQMODE_TROVER 0x0002 /* Trigger override */ 261#define B43_NPHY_RFSEQCA B43_PHY_N(0x0A2) /* RF seq core active */ 262#define B43_NPHY_RFSEQCA_TXEN 0x000F /* TX enable */ 263#define B43_NPHY_RFSEQCA_TXEN_SHIFT 0 264#define B43_NPHY_RFSEQCA_RXEN 0x00F0 /* RX enable */ 265#define B43_NPHY_RFSEQCA_RXEN_SHIFT 4 266#define B43_NPHY_RFSEQCA_TXDIS 0x0F00 /* TX disable */ 267#define B43_NPHY_RFSEQCA_TXDIS_SHIFT 8 268#define B43_NPHY_RFSEQCA_RXDIS 0xF000 /* RX disable */ 269#define B43_NPHY_RFSEQCA_RXDIS_SHIFT 12 270#define B43_NPHY_RFSEQTR B43_PHY_N(0x0A3) /* RF seq trigger */ 271#define B43_NPHY_RFSEQTR_RX2TX 0x0001 /* RX2TX */ 272#define B43_NPHY_RFSEQTR_TX2RX 0x0002 /* TX2RX */ 273#define B43_NPHY_RFSEQTR_UPGH 0x0004 /* Update gain H */ 274#define B43_NPHY_RFSEQTR_UPGL 0x0008 /* Update gain L */ 275#define B43_NPHY_RFSEQTR_UPGU 0x0010 /* Update gain U */ 276#define B43_NPHY_RFSEQTR_RST2RX 0x0020 /* Reset to RX */ 277#define B43_NPHY_RFSEQST B43_PHY_N(0x0A4) /* RF seq status. Values same as trigger. */ 278#define B43_NPHY_AFECTL_OVER B43_PHY_N(0x0A5) /* AFE control override */ 279#define B43_NPHY_AFECTL_C1 B43_PHY_N(0x0A6) /* AFE control core 1 */ 280#define B43_NPHY_AFECTL_C2 B43_PHY_N(0x0A7) /* AFE control core 2 */ 281#define B43_NPHY_AFECTL_C3 B43_PHY_N(0x0A8) /* AFE control core 3 */ 282#define B43_NPHY_AFECTL_C4 B43_PHY_N(0x0A9) /* AFE control core 4 */ 283#define B43_NPHY_AFECTL_DACGAIN1 B43_PHY_N(0x0AA) /* AFE control DAC gain 1 */ 284#define B43_NPHY_AFECTL_DACGAIN2 B43_PHY_N(0x0AB) /* AFE control DAC gain 2 */ 285#define B43_NPHY_AFECTL_DACGAIN3 B43_PHY_N(0x0AC) /* AFE control DAC gain 3 */ 286#define B43_NPHY_AFECTL_DACGAIN4 B43_PHY_N(0x0AD) /* AFE control DAC gain 4 */ 287#define B43_NPHY_STR_ADDR1 B43_PHY_N(0x0AE) /* STR address 1 */ 288#define B43_NPHY_STR_ADDR2 B43_PHY_N(0x0AF) /* STR address 2 */ 289#define B43_NPHY_CLASSCTL B43_PHY_N(0x0B0) /* Classifier control */ 290#define B43_NPHY_CLASSCTL_CCKEN 0x0001 /* CCK enable */ 291#define B43_NPHY_CLASSCTL_OFDMEN 0x0002 /* OFDM enable */ 292#define B43_NPHY_CLASSCTL_WAITEDEN 0x0004 /* Waited enable */ 293#define B43_NPHY_IQFLIP B43_PHY_N(0x0B1) /* I/Q flip */ 294#define B43_NPHY_IQFLIP_ADC1 0x0001 /* ADC1 */ 295#define B43_NPHY_IQFLIP_ADC2 0x0010 /* ADC2 */ 296#define B43_NPHY_SISO_SNR_THRES B43_PHY_N(0x0B2) /* SISO SNR threshold */ 297#define B43_NPHY_SIGMA_N_MULT B43_PHY_N(0x0B3) /* Sigma N multiplier */ 298#define B43_NPHY_TXMACDELAY B43_PHY_N(0x0B4) /* TX MAC delay */ 299#define B43_NPHY_TXFRAMEDELAY B43_PHY_N(0x0B5) /* TX frame delay */ 300#define B43_NPHY_MLPARM B43_PHY_N(0x0B6) /* ML parameters */ 301#define B43_NPHY_MLCTL B43_PHY_N(0x0B7) /* ML control */ 302#define B43_NPHY_WWISE_20NCYCDAT B43_PHY_N(0x0B8) /* WWiSE 20 N cyc data */ 303#define B43_NPHY_WWISE_40NCYCDAT B43_PHY_N(0x0B9) /* WWiSE 40 N cyc data */ 304#define B43_NPHY_TGNSYNC_20NCYCDAT B43_PHY_N(0x0BA) /* TGNsync 20 N cyc data */ 305#define B43_NPHY_TGNSYNC_40NCYCDAT B43_PHY_N(0x0BB) /* TGNsync 40 N cyc data */ 306#define B43_NPHY_INITSWIZP B43_PHY_N(0x0BC) /* Initial swizzle pattern */ 307#define B43_NPHY_TXTAILCNT B43_PHY_N(0x0BD) /* TX tail count value */ 308#define B43_NPHY_BPHY_CTL1 B43_PHY_N(0x0BE) /* B PHY control 1 */ 309#define B43_NPHY_BPHY_CTL2 B43_PHY_N(0x0BF) /* B PHY control 2 */ 310#define B43_NPHY_BPHY_CTL2_LUT 0x001F /* LUT index */ 311#define B43_NPHY_BPHY_CTL2_LUT_SHIFT 0 312#define B43_NPHY_BPHY_CTL2_MACDEL 0x7FE0 /* MAC delay */ 313#define B43_NPHY_BPHY_CTL2_MACDEL_SHIFT 5 314#define B43_NPHY_IQLOCAL_CMD B43_PHY_N(0x0C0) /* I/Q LO cal command */ 315#define B43_NPHY_IQLOCAL_CMD_EN 0x8000 316#define B43_NPHY_IQLOCAL_CMDNNUM B43_PHY_N(0x0C1) /* I/Q LO cal command N num */ 317#define B43_NPHY_IQLOCAL_CMDGCTL B43_PHY_N(0x0C2) /* I/Q LO cal command G control */ 318#define B43_NPHY_SAMP_CMD B43_PHY_N(0x0C3) /* Sample command */ 319#define B43_NPHY_SAMP_CMD_STOP 0x0002 /* Stop */ 320#define B43_NPHY_SAMP_LOOPCNT B43_PHY_N(0x0C4) /* Sample loop count */ 321#define B43_NPHY_SAMP_WAITCNT B43_PHY_N(0x0C5) /* Sample wait count */ 322#define B43_NPHY_SAMP_DEPCNT B43_PHY_N(0x0C6) /* Sample depth count */ 323#define B43_NPHY_SAMP_STAT B43_PHY_N(0x0C7) /* Sample status */ 324#define B43_NPHY_GPIO_LOOEN B43_PHY_N(0x0C8) /* GPIO low out enable */ 325#define B43_NPHY_GPIO_HIOEN B43_PHY_N(0x0C9) /* GPIO high out enable */ 326#define B43_NPHY_GPIO_SEL B43_PHY_N(0x0CA) /* GPIO select */ 327#define B43_NPHY_GPIO_CLKCTL B43_PHY_N(0x0CB) /* GPIO clock control */ 328#define B43_NPHY_TXF_20CO_AS0 B43_PHY_N(0x0CC) /* TX filter 20 coeff A stage 0 */ 329#define B43_NPHY_TXF_20CO_AS1 B43_PHY_N(0x0CD) /* TX filter 20 coeff A stage 1 */ 330#define B43_NPHY_TXF_20CO_AS2 B43_PHY_N(0x0CE) /* TX filter 20 coeff A stage 2 */ 331#define B43_NPHY_TXF_20CO_B32S0 B43_PHY_N(0x0CF) /* TX filter 20 coeff B32 stage 0 */ 332#define B43_NPHY_TXF_20CO_B1S0 B43_PHY_N(0x0D0) /* TX filter 20 coeff B1 stage 0 */ 333#define B43_NPHY_TXF_20CO_B32S1 B43_PHY_N(0x0D1) /* TX filter 20 coeff B32 stage 1 */ 334#define B43_NPHY_TXF_20CO_B1S1 B43_PHY_N(0x0D2) /* TX filter 20 coeff B1 stage 1 */ 335#define B43_NPHY_TXF_20CO_B32S2 B43_PHY_N(0x0D3) /* TX filter 20 coeff B32 stage 2 */ 336#define B43_NPHY_TXF_20CO_B1S2 B43_PHY_N(0x0D4) /* TX filter 20 coeff B1 stage 2 */ 337#define B43_NPHY_SIGFLDTOL B43_PHY_N(0x0D5) /* Signal fld tolerance */ 338#define B43_NPHY_TXSERFLD B43_PHY_N(0x0D6) /* TX service field */ 339#define B43_NPHY_AFESEQ_RX2TX_PUD B43_PHY_N(0x0D7) /* AFE seq RX2TX power up/down delay */ 340#define B43_NPHY_AFESEQ_TX2RX_PUD B43_PHY_N(0x0D8) /* AFE seq TX2RX power up/down delay */ 341#define B43_NPHY_TGNSYNC_SCRAMI0 B43_PHY_N(0x0D9) /* TGNsync scram init 0 */ 342#define B43_NPHY_TGNSYNC_SCRAMI1 B43_PHY_N(0x0DA) /* TGNsync scram init 1 */ 343#define B43_NPHY_INITSWIZPATTLEG B43_PHY_N(0x0DB) /* Initial swizzle pattern leg */ 344#define B43_NPHY_BPHY_CTL3 B43_PHY_N(0x0DC) /* B PHY control 3 */ 345#define B43_NPHY_BPHY_CTL3_SCALE 0x00FF /* Scale */ 346#define B43_NPHY_BPHY_CTL3_SCALE_SHIFT 0 347#define B43_NPHY_BPHY_CTL3_FSC 0xFF00 /* Frame start count value */ 348#define B43_NPHY_BPHY_CTL3_FSC_SHIFT 8 349#define B43_NPHY_BPHY_CTL4 B43_PHY_N(0x0DD) /* B PHY control 4 */ 350#define B43_NPHY_C1_TXBBMULT B43_PHY_N(0x0DE) /* Core 1 TX BB multiplier */ 351#define B43_NPHY_C2_TXBBMULT B43_PHY_N(0x0DF) /* Core 2 TX BB multiplier */ 352#define B43_NPHY_TXF_40CO_AS0 B43_PHY_N(0x0E1) /* TX filter 40 coeff A stage 0 */ 353#define B43_NPHY_TXF_40CO_AS1 B43_PHY_N(0x0E2) /* TX filter 40 coeff A stage 1 */ 354#define B43_NPHY_TXF_40CO_AS2 B43_PHY_N(0x0E3) /* TX filter 40 coeff A stage 2 */ 355#define B43_NPHY_TXF_40CO_B32S0 B43_PHY_N(0x0E4) /* TX filter 40 coeff B32 stage 0 */ 356#define B43_NPHY_TXF_40CO_B1S0 B43_PHY_N(0x0E5) /* TX filter 40 coeff B1 stage 0 */ 357#define B43_NPHY_TXF_40CO_B32S1 B43_PHY_N(0x0E6) /* TX filter 40 coeff B32 stage 1 */ 358#define B43_NPHY_TXF_40CO_B1S1 B43_PHY_N(0x0E7) /* TX filter 40 coeff B1 stage 1 */ 359#define B43_NPHY_TXF_40CO_B32S2 B43_PHY_N(0x0E8) /* TX filter 40 coeff B32 stage 2 */ 360#define B43_NPHY_TXF_40CO_B1S2 B43_PHY_N(0x0E9) /* TX filter 40 coeff B1 stage 2 */ 361#define B43_NPHY_BIST_STAT2 B43_PHY_N(0x0EA) /* BIST status 2 */ 362#define B43_NPHY_BIST_STAT3 B43_PHY_N(0x0EB) /* BIST status 3 */ 363#define B43_NPHY_RFCTL_OVER B43_PHY_N(0x0EC) /* RF control override */ 364#define B43_NPHY_MIMOCFG B43_PHY_N(0x0ED) /* MIMO config */ 365#define B43_NPHY_MIMOCFG_GFMIX 0x0004 /* Greenfield or mixed mode */ 366#define B43_NPHY_MIMOCFG_AUTO 0x0100 /* Greenfield/mixed mode auto */ 367#define B43_NPHY_RADAR_BLNKCTL B43_PHY_N(0x0EE) /* Radar blank control */ 368#define B43_NPHY_A0RADAR_FIFOCTL B43_PHY_N(0x0EF) /* Antenna 0 radar FIFO control */ 369#define B43_NPHY_A1RADAR_FIFOCTL B43_PHY_N(0x0F0) /* Antenna 1 radar FIFO control */ 370#define B43_NPHY_A0RADAR_FIFODAT B43_PHY_N(0x0F1) /* Antenna 0 radar FIFO data */ 371#define B43_NPHY_A1RADAR_FIFODAT B43_PHY_N(0x0F2) /* Antenna 1 radar FIFO data */ 372#define B43_NPHY_RADAR_THRES0 B43_PHY_N(0x0F3) /* Radar threshold 0 */ 373#define B43_NPHY_RADAR_THRES1 B43_PHY_N(0x0F4) /* Radar threshold 1 */ 374#define B43_NPHY_RADAR_THRES0R B43_PHY_N(0x0F5) /* Radar threshold 0R */ 375#define B43_NPHY_RADAR_THRES1R B43_PHY_N(0x0F6) /* Radar threshold 1R */ 376#define B43_NPHY_CSEN_20IN40_DLEN B43_PHY_N(0x0F7) /* Carrier sense 20 in 40 dwell length */ 377#define B43_NPHY_RFCTL_LUT_TRSW_LO1 B43_PHY_N(0x0F8) /* RF control LUT TRSW lower 1 */ 378#define B43_NPHY_RFCTL_LUT_TRSW_UP1 B43_PHY_N(0x0F9) /* RF control LUT TRSW upper 1 */ 379#define B43_NPHY_RFCTL_LUT_TRSW_LO2 B43_PHY_N(0x0FA) /* RF control LUT TRSW lower 2 */ 380#define B43_NPHY_RFCTL_LUT_TRSW_UP2 B43_PHY_N(0x0FB) /* RF control LUT TRSW upper 2 */ 381#define B43_NPHY_RFCTL_LUT_TRSW_LO3 B43_PHY_N(0x0FC) /* RF control LUT TRSW lower 3 */ 382#define B43_NPHY_RFCTL_LUT_TRSW_UP3 B43_PHY_N(0x0FD) /* RF control LUT TRSW upper 3 */ 383#define B43_NPHY_RFCTL_LUT_TRSW_LO4 B43_PHY_N(0x0FE) /* RF control LUT TRSW lower 4 */ 384#define B43_NPHY_RFCTL_LUT_TRSW_UP4 B43_PHY_N(0x0FF) /* RF control LUT TRSW upper 4 */ 385#define B43_NPHY_RFCTL_LUT_LNAPA1 B43_PHY_N(0x100) /* RF control LUT LNA PA 1 */ 386#define B43_NPHY_RFCTL_LUT_LNAPA2 B43_PHY_N(0x101) /* RF control LUT LNA PA 2 */ 387#define B43_NPHY_RFCTL_LUT_LNAPA3 B43_PHY_N(0x102) /* RF control LUT LNA PA 3 */ 388#define B43_NPHY_RFCTL_LUT_LNAPA4 B43_PHY_N(0x103) /* RF control LUT LNA PA 4 */ 389#define B43_NPHY_TGNSYNC_CRCM0 B43_PHY_N(0x104) /* TGNsync CRC mask 0 */ 390#define B43_NPHY_TGNSYNC_CRCM1 B43_PHY_N(0x105) /* TGNsync CRC mask 1 */ 391#define B43_NPHY_TGNSYNC_CRCM2 B43_PHY_N(0x106) /* TGNsync CRC mask 2 */ 392#define B43_NPHY_TGNSYNC_CRCM3 B43_PHY_N(0x107) /* TGNsync CRC mask 3 */ 393#define B43_NPHY_TGNSYNC_CRCM4 B43_PHY_N(0x108) /* TGNsync CRC mask 4 */ 394#define B43_NPHY_CRCPOLY B43_PHY_N(0x109) /* CRC polynomial */ 395#define B43_NPHY_SIGCNT B43_PHY_N(0x10A) /* # sig count */ 396#define B43_NPHY_SIGSTARTBIT_CTL B43_PHY_N(0x10B) /* Sig start bit control */ 397#define B43_NPHY_CRCPOLY_ORDER B43_PHY_N(0x10C) /* CRC polynomial order */ 398#define B43_NPHY_RFCTL_CST0 B43_PHY_N(0x10D) /* RF control core swap table 0 */ 399#define B43_NPHY_RFCTL_CST1 B43_PHY_N(0x10E) /* RF control core swap table 1 */ 400#define B43_NPHY_RFCTL_CST2O B43_PHY_N(0x10F) /* RF control core swap table 2 + others */ 401#define B43_NPHY_BPHY_CTL5 B43_PHY_N(0x111) /* B PHY control 5 */ 402#define B43_NPHY_RFSEQ_LPFBW B43_PHY_N(0x112) /* RF seq LPF bandwidth */ 403#define B43_NPHY_TSSIBIAS1 B43_PHY_N(0x114) /* TSSI bias val 1 */ 404#define B43_NPHY_TSSIBIAS2 B43_PHY_N(0x115) /* TSSI bias val 2 */ 405#define B43_NPHY_TSSIBIAS_BIAS 0x00FF /* Bias */ 406#define B43_NPHY_TSSIBIAS_BIAS_SHIFT 0 407#define B43_NPHY_TSSIBIAS_VAL 0xFF00 /* Value */ 408#define B43_NPHY_TSSIBIAS_VAL_SHIFT 8 409#define B43_NPHY_ESTPWR1 B43_PHY_N(0x118) /* Estimated power 1 */ 410#define B43_NPHY_ESTPWR2 B43_PHY_N(0x119) /* Estimated power 2 */ 411#define B43_NPHY_ESTPWR_PWR 0x00FF /* Estimated power */ 412#define B43_NPHY_ESTPWR_PWR_SHIFT 0 413#define B43_NPHY_ESTPWR_VALID 0x0100 /* Estimated power valid */ 414#define B43_NPHY_TSSI_MAXTXFDT B43_PHY_N(0x11C) /* TSSI max TX frame delay time */ 415#define B43_NPHY_TSSI_MAXTXFDT_VAL 0x00FF /* max TX frame delay time */ 416#define B43_NPHY_TSSI_MAXTXFDT_VAL_SHIFT 0 417#define B43_NPHY_TSSI_MAXTDT B43_PHY_N(0x11D) /* TSSI max TSSI delay time */ 418#define B43_NPHY_TSSI_MAXTDT_VAL 0x00FF /* max TSSI delay time */ 419#define B43_NPHY_TSSI_MAXTDT_VAL_SHIFT 0 420#define B43_NPHY_ITSSI1 B43_PHY_N(0x11E) /* TSSI idle 1 */ 421#define B43_NPHY_ITSSI2 B43_PHY_N(0x11F) /* TSSI idle 2 */ 422#define B43_NPHY_ITSSI_VAL 0x00FF /* Idle TSSI */ 423#define B43_NPHY_ITSSI_VAL_SHIFT 0 424#define B43_NPHY_TSSIMODE B43_PHY_N(0x122) /* TSSI mode */ 425#define B43_NPHY_TSSIMODE_EN 0x0001 /* TSSI enable */ 426#define B43_NPHY_TSSIMODE_PDEN 0x0002 /* Power det enable */ 427#define B43_NPHY_RXMACIFM B43_PHY_N(0x123) /* RX Macif mode */ 428#define B43_NPHY_CRSIT_COCNT_LO B43_PHY_N(0x124) /* CRS idle time CRS-on count (low) */ 429#define B43_NPHY_CRSIT_COCNT_HI B43_PHY_N(0x125) /* CRS idle time CRS-on count (high) */ 430#define B43_NPHY_CRSIT_MTCNT_LO B43_PHY_N(0x126) /* CRS idle time measure time count (low) */ 431#define B43_NPHY_CRSIT_MTCNT_HI B43_PHY_N(0x127) /* CRS idle time measure time count (high) */ 432#define B43_NPHY_SAMTWC B43_PHY_N(0x128) /* Sample tail wait count */ 433#define B43_NPHY_IQEST_CMD B43_PHY_N(0x129) /* I/Q estimate command */ 434#define B43_NPHY_IQEST_CMD_START 0x0001 /* Start */ 435#define B43_NPHY_IQEST_CMD_MODE 0x0002 /* Mode */ 436#define B43_NPHY_IQEST_WT B43_PHY_N(0x12A) /* I/Q estimate wait time */ 437#define B43_NPHY_IQEST_WT_VAL 0x00FF /* Wait time */ 438#define B43_NPHY_IQEST_WT_VAL_SHIFT 0 439#define B43_NPHY_IQEST_SAMCNT B43_PHY_N(0x12B) /* I/Q estimate sample count */ 440#define B43_NPHY_IQEST_IQACC_LO0 B43_PHY_N(0x12C) /* I/Q estimate I/Q acc lo 0 */ 441#define B43_NPHY_IQEST_IQACC_HI0 B43_PHY_N(0x12D) /* I/Q estimate I/Q acc hi 0 */ 442#define B43_NPHY_IQEST_IPACC_LO0 B43_PHY_N(0x12E) /* I/Q estimate I power acc lo 0 */ 443#define B43_NPHY_IQEST_IPACC_HI0 B43_PHY_N(0x12F) /* I/Q estimate I power acc hi 0 */ 444#define B43_NPHY_IQEST_QPACC_LO0 B43_PHY_N(0x130) /* I/Q estimate Q power acc lo 0 */ 445#define B43_NPHY_IQEST_QPACC_HI0 B43_PHY_N(0x131) /* I/Q estimate Q power acc hi 0 */ 446#define B43_NPHY_IQEST_IQACC_LO1 B43_PHY_N(0x134) /* I/Q estimate I/Q acc lo 1 */ 447#define B43_NPHY_IQEST_IQACC_HI1 B43_PHY_N(0x135) /* I/Q estimate I/Q acc hi 1 */ 448#define B43_NPHY_IQEST_IPACC_LO1 B43_PHY_N(0x136) /* I/Q estimate I power acc lo 1 */ 449#define B43_NPHY_IQEST_IPACC_HI1 B43_PHY_N(0x137) /* I/Q estimate I power acc hi 1 */ 450#define B43_NPHY_IQEST_QPACC_LO1 B43_PHY_N(0x138) /* I/Q estimate Q power acc lo 1 */ 451#define B43_NPHY_IQEST_QPACC_HI1 B43_PHY_N(0x139) /* I/Q estimate Q power acc hi 1 */ 452#define B43_NPHY_MIMO_CRSTXEXT B43_PHY_N(0x13A) /* MIMO PHY CRS TX extension */ 453#define B43_NPHY_PWRDET1 B43_PHY_N(0x13B) /* Power det 1 */ 454#define B43_NPHY_PWRDET2 B43_PHY_N(0x13C) /* Power det 2 */ 455#define B43_NPHY_MAXRSSI_DTIME B43_PHY_N(0x13F) /* RSSI max RSSI delay time */ 456#define B43_NPHY_PIL_DW0 B43_PHY_N(0x141) /* Pilot data weight 0 */ 457#define B43_NPHY_PIL_DW1 B43_PHY_N(0x142) /* Pilot data weight 1 */ 458#define B43_NPHY_PIL_DW2 B43_PHY_N(0x143) /* Pilot data weight 2 */ 459#define B43_NPHY_PIL_DW_BPSK 0x000F /* BPSK */ 460#define B43_NPHY_PIL_DW_BPSK_SHIFT 0 461#define B43_NPHY_PIL_DW_QPSK 0x00F0 /* QPSK */ 462#define B43_NPHY_PIL_DW_QPSK_SHIFT 4 463#define B43_NPHY_PIL_DW_16QAM 0x0F00 /* 16-QAM */ 464#define B43_NPHY_PIL_DW_16QAM_SHIFT 8 465#define B43_NPHY_PIL_DW_64QAM 0xF000 /* 64-QAM */ 466#define B43_NPHY_PIL_DW_64QAM_SHIFT 12 467#define B43_NPHY_FMDEM_CFG B43_PHY_N(0x144) /* FM demodulation config */ 468#define B43_NPHY_PHASETR_A0 B43_PHY_N(0x145) /* Phase track alpha 0 */ 469#define B43_NPHY_PHASETR_A1 B43_PHY_N(0x146) /* Phase track alpha 1 */ 470#define B43_NPHY_PHASETR_A2 B43_PHY_N(0x147) /* Phase track alpha 2 */ 471#define B43_NPHY_PHASETR_B0 B43_PHY_N(0x148) /* Phase track beta 0 */ 472#define B43_NPHY_PHASETR_B1 B43_PHY_N(0x149) /* Phase track beta 1 */ 473#define B43_NPHY_PHASETR_B2 B43_PHY_N(0x14A) /* Phase track beta 2 */ 474#define B43_NPHY_PHASETR_CHG0 B43_PHY_N(0x14B) /* Phase track change 0 */ 475#define B43_NPHY_PHASETR_CHG1 B43_PHY_N(0x14C) /* Phase track change 1 */ 476#define B43_NPHY_PHASETW_OFF B43_PHY_N(0x14D) /* Phase track offset */ 477#define B43_NPHY_RFCTL_DBG B43_PHY_N(0x14E) /* RF control debug */ 478#define B43_NPHY_CCK_SHIFTB_REF B43_PHY_N(0x150) /* CCK shiftbits reference var */ 479#define B43_NPHY_OVER_DGAIN0 B43_PHY_N(0x152) /* Override digital gain 0 */ 480#define B43_NPHY_OVER_DGAIN1 B43_PHY_N(0x153) /* Override digital gain 1 */ 481#define B43_NPHY_OVER_DGAIN_FDGV 0x0007 /* Force digital gain value */ 482#define B43_NPHY_OVER_DGAIN_FDGV_SHIFT 0 483#define B43_NPHY_OVER_DGAIN_FDGEN 0x0008 /* Force digital gain enable */ 484#define B43_NPHY_OVER_DGAIN_CCKDGECV 0xFF00 /* CCK digital gain enable count value */ 485#define B43_NPHY_OVER_DGAIN_CCKDGECV_SHIFT 8 486#define B43_NPHY_BIST_STAT4 B43_PHY_N(0x156) /* BIST status 4 */ 487#define B43_NPHY_RADAR_MAL B43_PHY_N(0x157) /* Radar MA length */ 488#define B43_NPHY_RADAR_SRCCTL B43_PHY_N(0x158) /* Radar search control */ 489#define B43_NPHY_VLD_DTSIG B43_PHY_N(0x159) /* VLD data tones sig */ 490#define B43_NPHY_VLD_DTDAT B43_PHY_N(0x15A) /* VLD data tones data */ 491#define B43_NPHY_C1_BPHY_RXIQCA0 B43_PHY_N(0x15B) /* Core 1 B PHY RX I/Q comp A0 */ 492#define B43_NPHY_C1_BPHY_RXIQCB0 B43_PHY_N(0x15C) /* Core 1 B PHY RX I/Q comp B0 */ 493#define B43_NPHY_C2_BPHY_RXIQCA1 B43_PHY_N(0x15D) /* Core 2 B PHY RX I/Q comp A1 */ 494#define B43_NPHY_C2_BPHY_RXIQCB1 B43_PHY_N(0x15E) /* Core 2 B PHY RX I/Q comp B1 */ 495#define B43_NPHY_FREQGAIN0 B43_PHY_N(0x160) /* Frequency gain 0 */ 496#define B43_NPHY_FREQGAIN1 B43_PHY_N(0x161) /* Frequency gain 1 */ 497#define B43_NPHY_FREQGAIN2 B43_PHY_N(0x162) /* Frequency gain 2 */ 498#define B43_NPHY_FREQGAIN3 B43_PHY_N(0x163) /* Frequency gain 3 */ 499#define B43_NPHY_FREQGAIN4 B43_PHY_N(0x164) /* Frequency gain 4 */ 500#define B43_NPHY_FREQGAIN5 B43_PHY_N(0x165) /* Frequency gain 5 */ 501#define B43_NPHY_FREQGAIN6 B43_PHY_N(0x166) /* Frequency gain 6 */ 502#define B43_NPHY_FREQGAIN7 B43_PHY_N(0x167) /* Frequency gain 7 */ 503#define B43_NPHY_FREQGAIN_BYPASS B43_PHY_N(0x168) /* Frequency gain bypass */ 504#define B43_NPHY_TRLOSS B43_PHY_N(0x169) /* TR loss value */ 505#define B43_NPHY_C1_ADCCLIP B43_PHY_N(0x16A) /* Core 1 ADC clip */ 506#define B43_NPHY_C2_ADCCLIP B43_PHY_N(0x16B) /* Core 2 ADC clip */ 507#define B43_NPHY_LTRN_OFFGAIN B43_PHY_N(0x16F) /* LTRN offset gain */ 508#define B43_NPHY_LTRN_OFF B43_PHY_N(0x170) /* LTRN offset */ 509#define B43_NPHY_NRDATAT_WWISE20SIG B43_PHY_N(0x171) /* # data tones WWiSE 20 sig */ 510#define B43_NPHY_NRDATAT_WWISE40SIG B43_PHY_N(0x172) /* # data tones WWiSE 40 sig */ 511#define B43_NPHY_NRDATAT_TGNSYNC20SIG B43_PHY_N(0x173) /* # data tones TGNsync 20 sig */ 512#define B43_NPHY_NRDATAT_TGNSYNC40SIG B43_PHY_N(0x174) /* # data tones TGNsync 40 sig */ 513#define B43_NPHY_WWISE_CRCM0 B43_PHY_N(0x175) /* WWiSE CRC mask 0 */ 514#define B43_NPHY_WWISE_CRCM1 B43_PHY_N(0x176) /* WWiSE CRC mask 1 */ 515#define B43_NPHY_WWISE_CRCM2 B43_PHY_N(0x177) /* WWiSE CRC mask 2 */ 516#define B43_NPHY_WWISE_CRCM3 B43_PHY_N(0x178) /* WWiSE CRC mask 3 */ 517#define B43_NPHY_WWISE_CRCM4 B43_PHY_N(0x179) /* WWiSE CRC mask 4 */ 518#define B43_NPHY_CHANEST_CDDSH B43_PHY_N(0x17A) /* Channel estimate CDD shift */ 519#define B43_NPHY_HTAGC_WCNT B43_PHY_N(0x17B) /* HT ADC wait counters */ 520#define B43_NPHY_SQPARM B43_PHY_N(0x17C) /* SQ params */ 521#define B43_NPHY_MCSDUP6M B43_PHY_N(0x17D) /* MCS dup 6M */ 522#define B43_NPHY_NDATAT_DUP40 B43_PHY_N(0x17E) /* # data tones dup 40 */ 523#define B43_NPHY_DUP40_TGNSYNC_CYCD B43_PHY_N(0x17F) /* Dup40 TGNsync cycle data */ 524#define B43_NPHY_DUP40_GFBL B43_PHY_N(0x180) /* Dup40 GF format BL address */ 525#define B43_NPHY_DUP40_BL B43_PHY_N(0x181) /* Dup40 format BL address */ 526#define B43_NPHY_LEGDUP_FTA B43_PHY_N(0x182) /* Legacy dup frm table address */ 527#define B43_NPHY_PACPROC_DBG B43_PHY_N(0x183) /* Packet processing debug */ 528#define B43_NPHY_PIL_CYC1 B43_PHY_N(0x184) /* Pilot cycle counter 1 */ 529#define B43_NPHY_PIL_CYC2 B43_PHY_N(0x185) /* Pilot cycle counter 2 */ 530#define B43_NPHY_TXF_20CO_S0A1 B43_PHY_N(0x186) /* TX filter 20 coeff stage 0 A1 */ 531#define B43_NPHY_TXF_20CO_S0A2 B43_PHY_N(0x187) /* TX filter 20 coeff stage 0 A2 */ 532#define B43_NPHY_TXF_20CO_S1A1 B43_PHY_N(0x188) /* TX filter 20 coeff stage 1 A1 */ 533#define B43_NPHY_TXF_20CO_S1A2 B43_PHY_N(0x189) /* TX filter 20 coeff stage 1 A2 */ 534#define B43_NPHY_TXF_20CO_S2A1 B43_PHY_N(0x18A) /* TX filter 20 coeff stage 2 A1 */ 535#define B43_NPHY_TXF_20CO_S2A2 B43_PHY_N(0x18B) /* TX filter 20 coeff stage 2 A2 */ 536#define B43_NPHY_TXF_20CO_S0B1 B43_PHY_N(0x18C) /* TX filter 20 coeff stage 0 B1 */ 537#define B43_NPHY_TXF_20CO_S0B2 B43_PHY_N(0x18D) /* TX filter 20 coeff stage 0 B2 */ 538#define B43_NPHY_TXF_20CO_S0B3 B43_PHY_N(0x18E) /* TX filter 20 coeff stage 0 B3 */ 539#define B43_NPHY_TXF_20CO_S1B1 B43_PHY_N(0x18F) /* TX filter 20 coeff stage 1 B1 */ 540#define B43_NPHY_TXF_20CO_S1B2 B43_PHY_N(0x190) /* TX filter 20 coeff stage 1 B2 */ 541#define B43_NPHY_TXF_20CO_S1B3 B43_PHY_N(0x191) /* TX filter 20 coeff stage 1 B3 */ 542#define B43_NPHY_TXF_20CO_S2B1 B43_PHY_N(0x192) /* TX filter 20 coeff stage 2 B1 */ 543#define B43_NPHY_TXF_20CO_S2B2 B43_PHY_N(0x193) /* TX filter 20 coeff stage 2 B2 */ 544#define B43_NPHY_TXF_20CO_S2B3 B43_PHY_N(0x194) /* TX filter 20 coeff stage 2 B3 */ 545#define B43_NPHY_TXF_40CO_S0A1 B43_PHY_N(0x195) /* TX filter 40 coeff stage 0 A1 */ 546#define B43_NPHY_TXF_40CO_S0A2 B43_PHY_N(0x196) /* TX filter 40 coeff stage 0 A2 */ 547#define B43_NPHY_TXF_40CO_S1A1 B43_PHY_N(0x197) /* TX filter 40 coeff stage 1 A1 */ 548#define B43_NPHY_TXF_40CO_S1A2 B43_PHY_N(0x198) /* TX filter 40 coeff stage 1 A2 */ 549#define B43_NPHY_TXF_40CO_S2A1 B43_PHY_N(0x199) /* TX filter 40 coeff stage 2 A1 */ 550#define B43_NPHY_TXF_40CO_S2A2 B43_PHY_N(0x19A) /* TX filter 40 coeff stage 2 A2 */ 551#define B43_NPHY_TXF_40CO_S0B1 B43_PHY_N(0x19B) /* TX filter 40 coeff stage 0 B1 */ 552#define B43_NPHY_TXF_40CO_S0B2 B43_PHY_N(0x19C) /* TX filter 40 coeff stage 0 B2 */ 553#define B43_NPHY_TXF_40CO_S0B3 B43_PHY_N(0x19D) /* TX filter 40 coeff stage 0 B3 */ 554#define B43_NPHY_TXF_40CO_S1B1 B43_PHY_N(0x19E) /* TX filter 40 coeff stage 1 B1 */ 555#define B43_NPHY_TXF_40CO_S1B2 B43_PHY_N(0x19F) /* TX filter 40 coeff stage 1 B2 */ 556#define B43_NPHY_TXF_40CO_S1B3 B43_PHY_N(0x1A0) /* TX filter 40 coeff stage 1 B3 */ 557#define B43_NPHY_TXF_40CO_S2B1 B43_PHY_N(0x1A1) /* TX filter 40 coeff stage 2 B1 */ 558#define B43_NPHY_TXF_40CO_S2B2 B43_PHY_N(0x1A2) /* TX filter 40 coeff stage 2 B2 */ 559#define B43_NPHY_TXF_40CO_S2B3 B43_PHY_N(0x1A3) /* TX filter 40 coeff stage 2 B3 */ 560#define B43_NPHY_RSSIMC_0I_RSSI_X B43_PHY_N(0x1A4) /* RSSI multiplication coefficient 0 I RSSI X */ 561#define B43_NPHY_RSSIMC_0I_RSSI_Y B43_PHY_N(0x1A5) /* RSSI multiplication coefficient 0 I RSSI Y */ 562#define B43_NPHY_RSSIMC_0I_RSSI_Z B43_PHY_N(0x1A6) /* RSSI multiplication coefficient 0 I RSSI Z */ 563#define B43_NPHY_RSSIMC_0I_TBD B43_PHY_N(0x1A7) /* RSSI multiplication coefficient 0 I TBD */ 564#define B43_NPHY_RSSIMC_0I_PWRDET B43_PHY_N(0x1A8) /* RSSI multiplication coefficient 0 I power det */ 565#define B43_NPHY_RSSIMC_0I_TSSI B43_PHY_N(0x1A9) /* RSSI multiplication coefficient 0 I TSSI */ 566#define B43_NPHY_RSSIMC_0Q_RSSI_X B43_PHY_N(0x1AA) /* RSSI multiplication coefficient 0 Q RSSI X */ 567#define B43_NPHY_RSSIMC_0Q_RSSI_Y B43_PHY_N(0x1AB) /* RSSI multiplication coefficient 0 Q RSSI Y */ 568#define B43_NPHY_RSSIMC_0Q_RSSI_Z B43_PHY_N(0x1AC) /* RSSI multiplication coefficient 0 Q RSSI Z */ 569#define B43_NPHY_RSSIMC_0Q_TBD B43_PHY_N(0x1AD) /* RSSI multiplication coefficient 0 Q TBD */ 570#define B43_NPHY_RSSIMC_0Q_PWRDET B43_PHY_N(0x1AE) /* RSSI multiplication coefficient 0 Q power det */ 571#define B43_NPHY_RSSIMC_0Q_TSSI B43_PHY_N(0x1AF) /* RSSI multiplication coefficient 0 Q TSSI */ 572#define B43_NPHY_RSSIMC_1I_RSSI_X B43_PHY_N(0x1B0) /* RSSI multiplication coefficient 1 I RSSI X */ 573#define B43_NPHY_RSSIMC_1I_RSSI_Y B43_PHY_N(0x1B1) /* RSSI multiplication coefficient 1 I RSSI Y */ 574#define B43_NPHY_RSSIMC_1I_RSSI_Z B43_PHY_N(0x1B2) /* RSSI multiplication coefficient 1 I RSSI Z */ 575#define B43_NPHY_RSSIMC_1I_TBD B43_PHY_N(0x1B3) /* RSSI multiplication coefficient 1 I TBD */ 576#define B43_NPHY_RSSIMC_1I_PWRDET B43_PHY_N(0x1B4) /* RSSI multiplication coefficient 1 I power det */ 577#define B43_NPHY_RSSIMC_1I_TSSI B43_PHY_N(0x1B5) /* RSSI multiplication coefficient 1 I TSSI */ 578#define B43_NPHY_RSSIMC_1Q_RSSI_X B43_PHY_N(0x1B6) /* RSSI multiplication coefficient 1 Q RSSI X */ 579#define B43_NPHY_RSSIMC_1Q_RSSI_Y B43_PHY_N(0x1B7) /* RSSI multiplication coefficient 1 Q RSSI Y */ 580#define B43_NPHY_RSSIMC_1Q_RSSI_Z B43_PHY_N(0x1B8) /* RSSI multiplication coefficient 1 Q RSSI Z */ 581#define B43_NPHY_RSSIMC_1Q_TBD B43_PHY_N(0x1B9) /* RSSI multiplication coefficient 1 Q TBD */ 582#define B43_NPHY_RSSIMC_1Q_PWRDET B43_PHY_N(0x1BA) /* RSSI multiplication coefficient 1 Q power det */ 583#define B43_NPHY_RSSIMC_1Q_TSSI B43_PHY_N(0x1BB) /* RSSI multiplication coefficient 1 Q TSSI */ 584#define B43_NPHY_SAMC_WCNT B43_PHY_N(0x1BC) /* Sample collect wait counter */ 585#define B43_NPHY_PTHROUGH_CNT B43_PHY_N(0x1BD) /* Pass-through counter */ 586#define B43_NPHY_LTRN_OFF_G20L B43_PHY_N(0x1C4) /* LTRN offset gain 20L */ 587#define B43_NPHY_LTRN_OFF_20L B43_PHY_N(0x1C5) /* LTRN offset 20L */ 588#define B43_NPHY_LTRN_OFF_G20U B43_PHY_N(0x1C6) /* LTRN offset gain 20U */ 589#define B43_NPHY_LTRN_OFF_20U B43_PHY_N(0x1C7) /* LTRN offset 20U */ 590#define B43_NPHY_DSSSCCK_GAINSL B43_PHY_N(0x1C8) /* DSSS/CCK gain settle length */ 591#define B43_NPHY_GPIO_LOOUT B43_PHY_N(0x1C9) /* GPIO low out */ 592#define B43_NPHY_GPIO_HIOUT B43_PHY_N(0x1CA) /* GPIO high out */ 593#define B43_NPHY_CRS_CHECK B43_PHY_N(0x1CB) /* CRS check */ 594#define B43_NPHY_ML_LOGSS_RAT B43_PHY_N(0x1CC) /* ML/logss ratio */ 595#define B43_NPHY_DUPSCALE B43_PHY_N(0x1CD) /* Dup scale */ 596#define B43_NPHY_BW1A B43_PHY_N(0x1CE) /* BW 1A */ 597#define B43_NPHY_BW2 B43_PHY_N(0x1CF) /* BW 2 */ 598#define B43_NPHY_BW3 B43_PHY_N(0x1D0) /* BW 3 */ 599#define B43_NPHY_BW4 B43_PHY_N(0x1D1) /* BW 4 */ 600#define B43_NPHY_BW5 B43_PHY_N(0x1D2) /* BW 5 */ 601#define B43_NPHY_BW6 B43_PHY_N(0x1D3) /* BW 6 */ 602#define B43_NPHY_COALEN0 B43_PHY_N(0x1D4) /* Coarse length 0 */ 603#define B43_NPHY_COALEN1 B43_PHY_N(0x1D5) /* Coarse length 1 */ 604#define B43_NPHY_CRSTHRES_1U B43_PHY_N(0x1D6) /* CRS threshold 1 U */ 605#define B43_NPHY_CRSTHRES_2U B43_PHY_N(0x1D7) /* CRS threshold 2 U */ 606#define B43_NPHY_CRSTHRES_3U B43_PHY_N(0x1D8) /* CRS threshold 3 U */ 607#define B43_NPHY_CRSCTL_U B43_PHY_N(0x1D9) /* CRS control U */ 608#define B43_NPHY_CRSTHRES_1L B43_PHY_N(0x1DA) /* CRS threshold 1 L */ 609#define B43_NPHY_CRSTHRES_2L B43_PHY_N(0x1DB) /* CRS threshold 2 L */ 610#define B43_NPHY_CRSTHRES_3L B43_PHY_N(0x1DC) /* CRS threshold 3 L */ 611#define B43_NPHY_CRSCTL_L B43_PHY_N(0x1DD) /* CRS control L */ 612#define B43_NPHY_STRA_1U B43_PHY_N(0x1DE) /* STR address 1 U */ 613#define B43_NPHY_STRA_2U B43_PHY_N(0x1DF) /* STR address 2 U */ 614#define B43_NPHY_STRA_1L B43_PHY_N(0x1E0) /* STR address 1 L */ 615#define B43_NPHY_STRA_2L B43_PHY_N(0x1E1) /* STR address 2 L */ 616#define B43_NPHY_CRSCHECK1 B43_PHY_N(0x1E2) /* CRS check 1 */ 617#define B43_NPHY_CRSCHECK2 B43_PHY_N(0x1E3) /* CRS check 2 */ 618#define B43_NPHY_CRSCHECK3 B43_PHY_N(0x1E4) /* CRS check 3 */ 619#define B43_NPHY_JMPSTP0 B43_PHY_N(0x1E5) /* Jump step 0 */ 620#define B43_NPHY_JMPSTP1 B43_PHY_N(0x1E6) /* Jump step 1 */ 621#define B43_NPHY_TXPCTL_CMD B43_PHY_N(0x1E7) /* TX power control command */ 622#define B43_NPHY_TXPCTL_CMD_INIT 0x007F /* Init */ 623#define B43_NPHY_TXPCTL_CMD_INIT_SHIFT 0 624#define B43_NPHY_TXPCTL_CMD_COEFF 0x2000 /* Power control coefficients */ 625#define B43_NPHY_TXPCTL_CMD_HWPCTLEN 0x4000 /* Hardware TX power control enable */ 626#define B43_NPHY_TXPCTL_CMD_PCTLEN 0x8000 /* TX power control enable */ 627#define B43_NPHY_TXPCTL_N B43_PHY_N(0x1E8) /* TX power control N num */ 628#define B43_NPHY_TXPCTL_N_TSSID 0x00FF /* N TSSI delay */ 629#define B43_NPHY_TXPCTL_N_TSSID_SHIFT 0 630#define B43_NPHY_TXPCTL_N_NPTIL2 0x0700 /* N PT integer log2 */ 631#define B43_NPHY_TXPCTL_N_NPTIL2_SHIFT 8 632#define B43_NPHY_TXPCTL_ITSSI B43_PHY_N(0x1E9) /* TX power control idle TSSI */ 633#define B43_NPHY_TXPCTL_ITSSI_0 0x003F /* Idle TSSI 0 */ 634#define B43_NPHY_TXPCTL_ITSSI_0_SHIFT 0 635#define B43_NPHY_TXPCTL_ITSSI_1 0x3F00 /* Idle TSSI 1 */ 636#define B43_NPHY_TXPCTL_ITSSI_1_SHIFT 8 637#define B43_NPHY_TXPCTL_ITSSI_BINF 0x8000 /* Raw TSSI offset bin format */ 638#define B43_NPHY_TXPCTL_TPWR B43_PHY_N(0x1EA) /* TX power control target power */ 639#define B43_NPHY_TXPCTL_TPWR_0 0x00FF /* Power 0 */ 640#define B43_NPHY_TXPCTL_TPWR_0_SHIFT 0 641#define B43_NPHY_TXPCTL_TPWR_1 0xFF00 /* Power 1 */ 642#define B43_NPHY_TXPCTL_TPWR_1_SHIFT 8 643#define B43_NPHY_TXPCTL_BIDX B43_PHY_N(0x1EB) /* TX power control base index */ 644#define B43_NPHY_TXPCTL_BIDX_0 0x007F /* uC base index 0 */ 645#define B43_NPHY_TXPCTL_BIDX_0_SHIFT 0 646#define B43_NPHY_TXPCTL_BIDX_1 0x7F00 /* uC base index 1 */ 647#define B43_NPHY_TXPCTL_BIDX_1_SHIFT 8 648#define B43_NPHY_TXPCTL_BIDX_LOAD 0x8000 /* Load base index */ 649#define B43_NPHY_TXPCTL_PIDX B43_PHY_N(0x1EC) /* TX power control power index */ 650#define B43_NPHY_TXPCTL_PIDX_0 0x007F /* uC power index 0 */ 651#define B43_NPHY_TXPCTL_PIDX_0_SHIFT 0 652#define B43_NPHY_TXPCTL_PIDX_1 0x7F00 /* uC power index 1 */ 653#define B43_NPHY_TXPCTL_PIDX_1_SHIFT 8 654#define B43_NPHY_C1_TXPCTL_STAT B43_PHY_N(0x1ED) /* Core 1 TX power control status */ 655#define B43_NPHY_C2_TXPCTL_STAT B43_PHY_N(0x1EE) /* Core 2 TX power control status */ 656#define B43_NPHY_TXPCTL_STAT_EST 0x00FF /* Estimated power */ 657#define B43_NPHY_TXPCTL_STAT_EST_SHIFT 0 658#define B43_NPHY_TXPCTL_STAT_BIDX 0x7F00 /* Base index */ 659#define B43_NPHY_TXPCTL_STAT_BIDX_SHIFT 8 660#define B43_NPHY_TXPCTL_STAT_ESTVALID 0x8000 /* Estimated power valid */ 661#define B43_NPHY_SMALLSGS_LEN B43_PHY_N(0x1EF) /* Small sig gain settle length */ 662#define B43_NPHY_PHYSTAT_GAIN0 B43_PHY_N(0x1F0) /* PHY stats gain info 0 */ 663#define B43_NPHY_PHYSTAT_GAIN1 B43_PHY_N(0x1F1) /* PHY stats gain info 1 */ 664#define B43_NPHY_PHYSTAT_FREQEST B43_PHY_N(0x1F2) /* PHY stats frequency estimate */ 665#define B43_NPHY_PHYSTAT_ADVRET B43_PHY_N(0x1F3) /* PHY stats ADV retard */ 666#define B43_NPHY_PHYLB_MODE B43_PHY_N(0x1F4) /* PHY loopback mode */ 667#define B43_NPHY_TONE_MIDX20_1 B43_PHY_N(0x1F5) /* Tone map index 20/1 */ 668#define B43_NPHY_TONE_MIDX20_2 B43_PHY_N(0x1F6) /* Tone map index 20/2 */ 669#define B43_NPHY_TONE_MIDX20_3 B43_PHY_N(0x1F7) /* Tone map index 20/3 */ 670#define B43_NPHY_TONE_MIDX40_1 B43_PHY_N(0x1F8) /* Tone map index 40/1 */ 671#define B43_NPHY_TONE_MIDX40_2 B43_PHY_N(0x1F9) /* Tone map index 40/2 */ 672#define B43_NPHY_TONE_MIDX40_3 B43_PHY_N(0x1FA) /* Tone map index 40/3 */ 673#define B43_NPHY_TONE_MIDX40_4 B43_PHY_N(0x1FB) /* Tone map index 40/4 */ 674#define B43_NPHY_PILTONE_MIDX1 B43_PHY_N(0x1FC) /* Pilot tone map index 1 */ 675#define B43_NPHY_PILTONE_MIDX2 B43_PHY_N(0x1FD) /* Pilot tone map index 2 */ 676#define B43_NPHY_PILTONE_MIDX3 B43_PHY_N(0x1FE) /* Pilot tone map index 3 */ 677#define B43_NPHY_TXRIFS_FRDEL B43_PHY_N(0x1FF) /* TX RIFS frame delay */ 678#define B43_NPHY_AFESEQ_RX2TX_PUD_40M B43_PHY_N(0x200) /* AFE seq rx2tx power up/down delay 40M */ 679#define B43_NPHY_AFESEQ_TX2RX_PUD_40M B43_PHY_N(0x201) /* AFE seq tx2rx power up/down delay 40M */ 680#define B43_NPHY_AFESEQ_RX2TX_PUD_20M B43_PHY_N(0x202) /* AFE seq rx2tx power up/down delay 20M */ 681#define B43_NPHY_AFESEQ_TX2RX_PUD_20M B43_PHY_N(0x203) /* AFE seq tx2rx power up/down delay 20M */ 682#define B43_NPHY_RX_SIGCTL B43_PHY_N(0x204) /* RX signal control */ 683#define B43_NPHY_RXPIL_CYCNT0 B43_PHY_N(0x205) /* RX pilot cycle counter 0 */ 684#define B43_NPHY_RXPIL_CYCNT1 B43_PHY_N(0x206) /* RX pilot cycle counter 1 */ 685#define B43_NPHY_RXPIL_CYCNT2 B43_PHY_N(0x207) /* RX pilot cycle counter 2 */ 686#define B43_NPHY_AFESEQ_RX2TX_PUD_10M B43_PHY_N(0x208) /* AFE seq rx2tx power up/down delay 10M */ 687#define B43_NPHY_AFESEQ_TX2RX_PUD_10M B43_PHY_N(0x209) /* AFE seq tx2rx power up/down delay 10M */ 688#define B43_NPHY_DSSSCCK_CRSEXTL B43_PHY_N(0x20A) /* DSSS/CCK CRS extension length */ 689#define B43_NPHY_ML_LOGSS_RATSLOPE B43_PHY_N(0x20B) /* ML/logss ratio slope */ 690#define B43_NPHY_RIFS_SRCTL B43_PHY_N(0x20C) /* RIFS search timeout length */ 691#define B43_NPHY_TXREALFD B43_PHY_N(0x20D) /* TX real frame delay */ 692#define B43_NPHY_HPANT_SWTHRES B43_PHY_N(0x20E) /* High power antenna switch threshold */ 693#define B43_NPHY_EDCRS_ASSTHRES0 B43_PHY_N(0x210) /* ED CRS assert threshold 0 */ 694#define B43_NPHY_EDCRS_ASSTHRES1 B43_PHY_N(0x211) /* ED CRS assert threshold 1 */ 695#define B43_NPHY_EDCRS_DEASSTHRES0 B43_PHY_N(0x212) /* ED CRS deassert threshold 0 */ 696#define B43_NPHY_EDCRS_DEASSTHRES1 B43_PHY_N(0x213) /* ED CRS deassert threshold 1 */ 697#define B43_NPHY_STR_WTIME20U B43_PHY_N(0x214) /* STR wait time 20U */ 698#define B43_NPHY_STR_WTIME20L B43_PHY_N(0x215) /* STR wait time 20L */ 699#define B43_NPHY_TONE_MIDX657M B43_PHY_N(0x216) /* Tone map index 657M */ 700#define B43_NPHY_HTSIGTONES B43_PHY_N(0x217) /* HT signal tones */ 701#define B43_NPHY_RSSI1 B43_PHY_N(0x219) /* RSSI value 1 */ 702#define B43_NPHY_RSSI2 B43_PHY_N(0x21A) /* RSSI value 2 */ 703#define B43_NPHY_CHAN_ESTHANG B43_PHY_N(0x21D) /* Channel estimate hang */ 704#define B43_NPHY_FINERX2_CGC B43_PHY_N(0x221) /* Fine RX 2 clock gate control */ 705#define B43_NPHY_FINERX2_CGC_DECGC 0x0008 /* Decode gated clocks */ 706#define B43_NPHY_TXPCTL_INIT B43_PHY_N(0x222) /* TX power controll init */ 707#define B43_NPHY_TXPCTL_INIT_PIDXI1 0x00FF /* Power index init 1 */ 708#define B43_NPHY_TXPCTL_INIT_PIDXI1_SHIFT 0 709#define B43_NPHY_PAPD_EN0 B43_PHY_N(0x297) /* PAPD Enable0 TBD */ 710#define B43_NPHY_EPS_TABLE_ADJ0 B43_PHY_N(0x298) /* EPS Table Adj0 TBD */ 711#define B43_NPHY_PAPD_EN1 B43_PHY_N(0x29B) /* PAPD Enable1 TBD */ 712#define B43_NPHY_EPS_TABLE_ADJ1 B43_PHY_N(0x29C) /* EPS Table Adj1 TBD */ 713 714#define B43_PHY_B_BBCFG B43_PHY_N_BMODE(0x001) /* BB config */ 715#define B43_PHY_B_TEST B43_PHY_N_BMODE(0x00A) 716 717 718/* Broadcom 2055 radio registers */ 719 720#define B2055_GEN_SPARE 0x00 /* GEN spare */ 721#define B2055_SP_PINPD 0x02 /* SP PIN PD */ 722#define B2055_C1_SP_RSSI 0x03 /* SP RSSI Core 1 */ 723#define B2055_C1_SP_PDMISC 0x04 /* SP PD MISC Core 1 */ 724#define B2055_C2_SP_RSSI 0x05 /* SP RSSI Core 2 */ 725#define B2055_C2_SP_PDMISC 0x06 /* SP PD MISC Core 2 */ 726#define B2055_C1_SP_RXGC1 0x07 /* SP RX GC1 Core 1 */ 727#define B2055_C1_SP_RXGC2 0x08 /* SP RX GC2 Core 1 */ 728#define B2055_C2_SP_RXGC1 0x09 /* SP RX GC1 Core 2 */ 729#define B2055_C2_SP_RXGC2 0x0A /* SP RX GC2 Core 2 */ 730#define B2055_C1_SP_LPFBWSEL 0x0B /* SP LPF BW select Core 1 */ 731#define B2055_C2_SP_LPFBWSEL 0x0C /* SP LPF BW select Core 2 */ 732#define B2055_C1_SP_TXGC1 0x0D /* SP TX GC1 Core 1 */ 733#define B2055_C1_SP_TXGC2 0x0E /* SP TX GC2 Core 1 */ 734#define B2055_C2_SP_TXGC1 0x0F /* SP TX GC1 Core 2 */ 735#define B2055_C2_SP_TXGC2 0x10 /* SP TX GC2 Core 2 */ 736#define B2055_MASTER1 0x11 /* Master control 1 */ 737#define B2055_MASTER2 0x12 /* Master control 2 */ 738#define B2055_PD_LGEN 0x13 /* PD LGEN */ 739#define B2055_PD_PLLTS 0x14 /* PD PLL TS */ 740#define B2055_C1_PD_LGBUF 0x15 /* PD Core 1 LGBUF */ 741#define B2055_C1_PD_TX 0x16 /* PD Core 1 TX */ 742#define B2055_C1_PD_RXTX 0x17 /* PD Core 1 RXTX */ 743#define B2055_C1_PD_RSSIMISC 0x18 /* PD Core 1 RSSI MISC */ 744#define B2055_C2_PD_LGBUF 0x19 /* PD Core 2 LGBUF */ 745#define B2055_C2_PD_TX 0x1A /* PD Core 2 TX */ 746#define B2055_C2_PD_RXTX 0x1B /* PD Core 2 RXTX */ 747#define B2055_C2_PD_RSSIMISC 0x1C /* PD Core 2 RSSI MISC */ 748#define B2055_PWRDET_LGEN 0x1D /* PWRDET LGEN */ 749#define B2055_C1_PWRDET_LGBUF 0x1E /* PWRDET LGBUF Core 1 */ 750#define B2055_C1_PWRDET_RXTX 0x1F /* PWRDET RXTX Core 1 */ 751#define B2055_C2_PWRDET_LGBUF 0x20 /* PWRDET LGBUF Core 2 */ 752#define B2055_C2_PWRDET_RXTX 0x21 /* PWRDET RXTX Core 2 */ 753#define B2055_RRCCAL_CS 0x22 /* RRCCAL Control spare */ 754#define B2055_RRCCAL_NOPTSEL 0x23 /* RRCCAL N OPT SEL */ 755#define B2055_CAL_MISC 0x24 /* CAL MISC */ 756#define B2055_CAL_COUT 0x25 /* CAL Counter out */ 757#define B2055_CAL_COUT2 0x26 /* CAL Counter out 2 */ 758#define B2055_CAL_CVARCTL 0x27 /* CAL CVAR Control */ 759#define B2055_CAL_RVARCTL 0x28 /* CAL RVAR Control */ 760#define B2055_CAL_LPOCTL 0x29 /* CAL LPO Control */ 761#define B2055_CAL_TS 0x2A /* CAL TS */ 762#define B2055_CAL_RCCALRTS 0x2B /* CAL RCCAL READ TS */ 763#define B2055_CAL_RCALRTS 0x2C /* CAL RCAL READ TS */ 764#define B2055_PADDRV 0x2D /* PAD driver */ 765#define B2055_XOCTL1 0x2E /* XO Control 1 */ 766#define B2055_XOCTL2 0x2F /* XO Control 2 */ 767#define B2055_XOREGUL 0x30 /* XO Regulator */ 768#define B2055_XOMISC 0x31 /* XO misc */ 769#define B2055_PLL_LFC1 0x32 /* PLL LF C1 */ 770#define B2055_PLL_CALVTH 0x33 /* PLL CAL VTH */ 771#define B2055_PLL_LFC2 0x34 /* PLL LF C2 */ 772#define B2055_PLL_REF 0x35 /* PLL reference */ 773#define B2055_PLL_LFR1 0x36 /* PLL LF R1 */ 774#define B2055_PLL_PFDCP 0x37 /* PLL PFD CP */ 775#define B2055_PLL_IDAC_CPOPAMP 0x38 /* PLL IDAC CPOPAMP */ 776#define B2055_PLL_CPREG 0x39 /* PLL CP Regulator */ 777#define B2055_PLL_RCAL 0x3A /* PLL RCAL */ 778#define B2055_RF_PLLMOD0 0x3B /* RF PLL MOD0 */ 779#define B2055_RF_PLLMOD1 0x3C /* RF PLL MOD1 */ 780#define B2055_RF_MMDIDAC1 0x3D /* RF MMD IDAC 1 */ 781#define B2055_RF_MMDIDAC0 0x3E /* RF MMD IDAC 0 */ 782#define B2055_RF_MMDSP 0x3F /* RF MMD spare */ 783#define B2055_VCO_CAL1 0x40 /* VCO cal 1 */ 784#define B2055_VCO_CAL2 0x41 /* VCO cal 2 */ 785#define B2055_VCO_CAL3 0x42 /* VCO cal 3 */ 786#define B2055_VCO_CAL4 0x43 /* VCO cal 4 */ 787#define B2055_VCO_CAL5 0x44 /* VCO cal 5 */ 788#define B2055_VCO_CAL6 0x45 /* VCO cal 6 */ 789#define B2055_VCO_CAL7 0x46 /* VCO cal 7 */ 790#define B2055_VCO_CAL8 0x47 /* VCO cal 8 */ 791#define B2055_VCO_CAL9 0x48 /* VCO cal 9 */ 792#define B2055_VCO_CAL10 0x49 /* VCO cal 10 */ 793#define B2055_VCO_CAL11 0x4A /* VCO cal 11 */ 794#define B2055_VCO_CAL12 0x4B /* VCO cal 12 */ 795#define B2055_VCO_CAL13 0x4C /* VCO cal 13 */ 796#define B2055_VCO_CAL14 0x4D /* VCO cal 14 */ 797#define B2055_VCO_CAL15 0x4E /* VCO cal 15 */ 798#define B2055_VCO_CAL16 0x4F /* VCO cal 16 */ 799#define B2055_VCO_KVCO 0x50 /* VCO KVCO */ 800#define B2055_VCO_CAPTAIL 0x51 /* VCO CAP TAIL */ 801#define B2055_VCO_IDACVCO 0x52 /* VCO IDAC VCO */ 802#define B2055_VCO_REG 0x53 /* VCO Regulator */ 803#define B2055_PLL_RFVTH 0x54 /* PLL RF VTH */ 804#define B2055_LGBUF_CENBUF 0x55 /* LGBUF CEN BUF */ 805#define B2055_LGEN_TUNE1 0x56 /* LGEN tune 1 */ 806#define B2055_LGEN_TUNE2 0x57 /* LGEN tune 2 */ 807#define B2055_LGEN_IDAC1 0x58 /* LGEN IDAC 1 */ 808#define B2055_LGEN_IDAC2 0x59 /* LGEN IDAC 2 */ 809#define B2055_LGEN_BIASC 0x5A /* LGEN BIAS counter */ 810#define B2055_LGEN_BIASIDAC 0x5B /* LGEN BIAS IDAC */ 811#define B2055_LGEN_RCAL 0x5C /* LGEN RCAL */ 812#define B2055_LGEN_DIV 0x5D /* LGEN div */ 813#define B2055_LGEN_SPARE2 0x5E /* LGEN spare 2 */ 814#define B2055_C1_LGBUF_ATUNE 0x5F /* Core 1 LGBUF A tune */ 815#define B2055_C1_LGBUF_GTUNE 0x60 /* Core 1 LGBUF G tune */ 816#define B2055_C1_LGBUF_DIV 0x61 /* Core 1 LGBUF div */ 817#define B2055_C1_LGBUF_AIDAC 0x62 /* Core 1 LGBUF A IDAC */ 818#define B2055_C1_LGBUF_GIDAC 0x63 /* Core 1 LGBUF G IDAC */ 819#define B2055_C1_LGBUF_IDACFO 0x64 /* Core 1 LGBUF IDAC filter override */ 820#define B2055_C1_LGBUF_SPARE 0x65 /* Core 1 LGBUF spare */ 821#define B2055_C1_RX_RFSPC1 0x66 /* Core 1 RX RF SPC1 */ 822#define B2055_C1_RX_RFR1 0x67 /* Core 1 RX RF reg 1 */ 823#define B2055_C1_RX_RFR2 0x68 /* Core 1 RX RF reg 2 */ 824#define B2055_C1_RX_RFRCAL 0x69 /* Core 1 RX RF RCAL */ 825#define B2055_C1_RX_BB_BLCMP 0x6A /* Core 1 RX Baseband BUFI LPF CMP */ 826#define B2055_C1_RX_BB_LPF 0x6B /* Core 1 RX Baseband LPF */ 827#define B2055_C1_RX_BB_MIDACHP 0x6C /* Core 1 RX Baseband MIDAC High-pass */ 828#define B2055_C1_RX_BB_VGA1IDAC 0x6D /* Core 1 RX Baseband VGA1 IDAC */ 829#define B2055_C1_RX_BB_VGA2IDAC 0x6E /* Core 1 RX Baseband VGA2 IDAC */ 830#define B2055_C1_RX_BB_VGA3IDAC 0x6F /* Core 1 RX Baseband VGA3 IDAC */ 831#define B2055_C1_RX_BB_BUFOCTL 0x70 /* Core 1 RX Baseband BUFO Control */ 832#define B2055_C1_RX_BB_RCCALCTL 0x71 /* Core 1 RX Baseband RCCAL Control */ 833#define B2055_C1_RX_BB_RSSICTL1 0x72 /* Core 1 RX Baseband RSSI Control 1 */ 834#define B2055_C1_RX_BB_RSSICTL2 0x73 /* Core 1 RX Baseband RSSI Control 2 */ 835#define B2055_C1_RX_BB_RSSICTL3 0x74 /* Core 1 RX Baseband RSSI Control 3 */ 836#define B2055_C1_RX_BB_RSSICTL4 0x75 /* Core 1 RX Baseband RSSI Control 4 */ 837#define B2055_C1_RX_BB_RSSICTL5 0x76 /* Core 1 RX Baseband RSSI Control 5 */ 838#define B2055_C1_RX_BB_REG 0x77 /* Core 1 RX Baseband Regulator */ 839#define B2055_C1_RX_BB_SPARE1 0x78 /* Core 1 RX Baseband spare 1 */ 840#define B2055_C1_RX_TXBBRCAL 0x79 /* Core 1 RX TX BB RCAL */ 841#define B2055_C1_TX_RF_SPGA 0x7A /* Core 1 TX RF SGM PGA */ 842#define B2055_C1_TX_RF_SPAD 0x7B /* Core 1 TX RF SGM PAD */ 843#define B2055_C1_TX_RF_CNTPGA1 0x7C /* Core 1 TX RF counter PGA 1 */ 844#define B2055_C1_TX_RF_CNTPAD1 0x7D /* Core 1 TX RF counter PAD 1 */ 845#define B2055_C1_TX_RF_PGAIDAC 0x7E /* Core 1 TX RF PGA IDAC */ 846#define B2055_C1_TX_PGAPADTN 0x7F /* Core 1 TX PGA PAD TN */ 847#define B2055_C1_TX_PADIDAC1 0x80 /* Core 1 TX PAD IDAC 1 */ 848#define B2055_C1_TX_PADIDAC2 0x81 /* Core 1 TX PAD IDAC 2 */ 849#define B2055_C1_TX_MXBGTRIM 0x82 /* Core 1 TX MX B/G TRIM */ 850#define B2055_C1_TX_RF_RCAL 0x83 /* Core 1 TX RF RCAL */ 851#define B2055_C1_TX_RF_PADTSSI1 0x84 /* Core 1 TX RF PAD TSSI1 */ 852#define B2055_C1_TX_RF_PADTSSI2 0x85 /* Core 1 TX RF PAD TSSI2 */ 853#define B2055_C1_TX_RF_SPARE 0x86 /* Core 1 TX RF spare */ 854#define B2055_C1_TX_RF_IQCAL1 0x87 /* Core 1 TX RF I/Q CAL 1 */ 855#define B2055_C1_TX_RF_IQCAL2 0x88 /* Core 1 TX RF I/Q CAL 2 */ 856#define B2055_C1_TXBB_RCCAL 0x89 /* Core 1 TXBB RC CAL Control */ 857#define B2055_C1_TXBB_LPF1 0x8A /* Core 1 TXBB LPF 1 */ 858#define B2055_C1_TX_VOSCNCL 0x8B /* Core 1 TX VOS CNCL */ 859#define B2055_C1_TX_LPF_MXGMIDAC 0x8C /* Core 1 TX LPF MXGM IDAC */ 860#define B2055_C1_TX_BB_MXGM 0x8D /* Core 1 TX BB MXGM */ 861#define B2055_C2_LGBUF_ATUNE 0x8E /* Core 2 LGBUF A tune */ 862#define B2055_C2_LGBUF_GTUNE 0x8F /* Core 2 LGBUF G tune */ 863#define B2055_C2_LGBUF_DIV 0x90 /* Core 2 LGBUF div */ 864#define B2055_C2_LGBUF_AIDAC 0x91 /* Core 2 LGBUF A IDAC */ 865#define B2055_C2_LGBUF_GIDAC 0x92 /* Core 2 LGBUF G IDAC */ 866#define B2055_C2_LGBUF_IDACFO 0x93 /* Core 2 LGBUF IDAC filter override */ 867#define B2055_C2_LGBUF_SPARE 0x94 /* Core 2 LGBUF spare */ 868#define B2055_C2_RX_RFSPC1 0x95 /* Core 2 RX RF SPC1 */ 869#define B2055_C2_RX_RFR1 0x96 /* Core 2 RX RF reg 1 */ 870#define B2055_C2_RX_RFR2 0x97 /* Core 2 RX RF reg 2 */ 871#define B2055_C2_RX_RFRCAL 0x98 /* Core 2 RX RF RCAL */ 872#define B2055_C2_RX_BB_BLCMP 0x99 /* Core 2 RX Baseband BUFI LPF CMP */ 873#define B2055_C2_RX_BB_LPF 0x9A /* Core 2 RX Baseband LPF */ 874#define B2055_C2_RX_BB_MIDACHP 0x9B /* Core 2 RX Baseband MIDAC High-pass */ 875#define B2055_C2_RX_BB_VGA1IDAC 0x9C /* Core 2 RX Baseband VGA1 IDAC */ 876#define B2055_C2_RX_BB_VGA2IDAC 0x9D /* Core 2 RX Baseband VGA2 IDAC */ 877#define B2055_C2_RX_BB_VGA3IDAC 0x9E /* Core 2 RX Baseband VGA3 IDAC */ 878#define B2055_C2_RX_BB_BUFOCTL 0x9F /* Core 2 RX Baseband BUFO Control */ 879#define B2055_C2_RX_BB_RCCALCTL 0xA0 /* Core 2 RX Baseband RCCAL Control */ 880#define B2055_C2_RX_BB_RSSICTL1 0xA1 /* Core 2 RX Baseband RSSI Control 1 */ 881#define B2055_C2_RX_BB_RSSICTL2 0xA2 /* Core 2 RX Baseband RSSI Control 2 */ 882#define B2055_C2_RX_BB_RSSICTL3 0xA3 /* Core 2 RX Baseband RSSI Control 3 */ 883#define B2055_C2_RX_BB_RSSICTL4 0xA4 /* Core 2 RX Baseband RSSI Control 4 */ 884#define B2055_C2_RX_BB_RSSICTL5 0xA5 /* Core 2 RX Baseband RSSI Control 5 */ 885#define B2055_C2_RX_BB_REG 0xA6 /* Core 2 RX Baseband Regulator */ 886#define B2055_C2_RX_BB_SPARE1 0xA7 /* Core 2 RX Baseband spare 1 */ 887#define B2055_C2_RX_TXBBRCAL 0xA8 /* Core 2 RX TX BB RCAL */ 888#define B2055_C2_TX_RF_SPGA 0xA9 /* Core 2 TX RF SGM PGA */ 889#define B2055_C2_TX_RF_SPAD 0xAA /* Core 2 TX RF SGM PAD */ 890#define B2055_C2_TX_RF_CNTPGA1 0xAB /* Core 2 TX RF counter PGA 1 */ 891#define B2055_C2_TX_RF_CNTPAD1 0xAC /* Core 2 TX RF counter PAD 1 */ 892#define B2055_C2_TX_RF_PGAIDAC 0xAD /* Core 2 TX RF PGA IDAC */ 893#define B2055_C2_TX_PGAPADTN 0xAE /* Core 2 TX PGA PAD TN */ 894#define B2055_C2_TX_PADIDAC1 0xAF /* Core 2 TX PAD IDAC 1 */ 895#define B2055_C2_TX_PADIDAC2 0xB0 /* Core 2 TX PAD IDAC 2 */ 896#define B2055_C2_TX_MXBGTRIM 0xB1 /* Core 2 TX MX B/G TRIM */ 897#define B2055_C2_TX_RF_RCAL 0xB2 /* Core 2 TX RF RCAL */ 898#define B2055_C2_TX_RF_PADTSSI1 0xB3 /* Core 2 TX RF PAD TSSI1 */ 899#define B2055_C2_TX_RF_PADTSSI2 0xB4 /* Core 2 TX RF PAD TSSI2 */ 900#define B2055_C2_TX_RF_SPARE 0xB5 /* Core 2 TX RF spare */ 901#define B2055_C2_TX_RF_IQCAL1 0xB6 /* Core 2 TX RF I/Q CAL 1 */ 902#define B2055_C2_TX_RF_IQCAL2 0xB7 /* Core 2 TX RF I/Q CAL 2 */ 903#define B2055_C2_TXBB_RCCAL 0xB8 /* Core 2 TXBB RC CAL Control */ 904#define B2055_C2_TXBB_LPF1 0xB9 /* Core 2 TXBB LPF 1 */ 905#define B2055_C2_TX_VOSCNCL 0xBA /* Core 2 TX VOS CNCL */ 906#define B2055_C2_TX_LPF_MXGMIDAC 0xBB /* Core 2 TX LPF MXGM IDAC */ 907#define B2055_C2_TX_BB_MXGM 0xBC /* Core 2 TX BB MXGM */ 908#define B2055_PRG_GCHP21 0xBD /* PRG GC HPVGA23 21 */ 909#define B2055_PRG_GCHP22 0xBE /* PRG GC HPVGA23 22 */ 910#define B2055_PRG_GCHP23 0xBF /* PRG GC HPVGA23 23 */ 911#define B2055_PRG_GCHP24 0xC0 /* PRG GC HPVGA23 24 */ 912#define B2055_PRG_GCHP25 0xC1 /* PRG GC HPVGA23 25 */ 913#define B2055_PRG_GCHP26 0xC2 /* PRG GC HPVGA23 26 */ 914#define B2055_PRG_GCHP27 0xC3 /* PRG GC HPVGA23 27 */ 915#define B2055_PRG_GCHP28 0xC4 /* PRG GC HPVGA23 28 */ 916#define B2055_PRG_GCHP29 0xC5 /* PRG GC HPVGA23 29 */ 917#define B2055_PRG_GCHP30 0xC6 /* PRG GC HPVGA23 30 */ 918#define B2055_C1_LNA_GAINBST 0xCD /* Core 1 LNA GAINBST */ 919#define B2055_C1_B0NB_RSSIVCM 0xD2 /* Core 1 B0 narrow-band RSSI VCM */ 920#define B2055_C1_GENSPARE2 0xD6 /* Core 1 GEN spare 2 */ 921#define B2055_C2_LNA_GAINBST 0xD9 /* Core 2 LNA GAINBST */ 922#define B2055_C2_B0NB_RSSIVCM 0xDE /* Core 2 B0 narrow-band RSSI VCM */ 923#define B2055_C2_GENSPARE2 0xE2 /* Core 2 GEN spare 2 */ 924 925 926 927struct b43_wldev; 928 929struct b43_chanspec { 930 u16 center_freq; 931 enum nl80211_channel_type channel_type; 932}; 933 934struct b43_phy_n_iq_comp { 935 s16 a0; 936 s16 b0; 937 s16 a1; 938 s16 b1; 939}; 940 941struct b43_phy_n_rssical_cache { 942 u16 rssical_radio_regs_2G[2]; 943 u16 rssical_phy_regs_2G[12]; 944 945 u16 rssical_radio_regs_5G[2]; 946 u16 rssical_phy_regs_5G[12]; 947}; 948 949struct b43_phy_n_cal_cache { 950 u16 txcal_radio_regs_2G[8]; 951 u16 txcal_coeffs_2G[8]; 952 struct b43_phy_n_iq_comp rxcal_coeffs_2G; 953 954 u16 txcal_radio_regs_5G[8]; 955 u16 txcal_coeffs_5G[8]; 956 struct b43_phy_n_iq_comp rxcal_coeffs_5G; 957}; 958 959struct b43_phy_n_txpwrindex { 960 s8 index; 961 s8 index_internal; 962 s8 index_internal_save; 963 u16 AfectrlOverride; 964 u16 AfeCtrlDacGain; 965 u16 rad_gain; 966 u8 bbmult; 967 u16 iqcomp_a; 968 u16 iqcomp_b; 969 u16 locomp; 970}; 971 972struct b43_phy_n { 973 u8 antsel_type; 974 u8 cal_orig_pwr_idx[2]; 975 u8 measure_hold; 976 u8 phyrxchain; 977 u8 perical; 978 u32 deaf_count; 979 u32 rxcalparams; 980 bool hang_avoid; 981 bool mute; 982 u16 papd_epsilon_offset[2]; 983 s32 preamble_override; 984 u32 bb_mult_save; 985 986 bool gain_boost; 987 bool elna_gain_config; 988 bool band5g_pwrgain; 989 990 u8 mphase_cal_phase_id; 991 u16 mphase_txcal_cmdidx; 992 u16 mphase_txcal_numcmds; 993 u16 mphase_txcal_bestcoeffs[11]; 994 995 u8 txpwrctrl; 996 u16 txcal_bbmult; 997 u16 txiqlocal_bestc[11]; 998 bool txiqlocal_coeffsvalid; 999 struct b43_phy_n_txpwrindex txpwrindex[2]; 1000 struct b43_chanspec txiqlocal_chanspec; 1001 1002 u8 txrx_chain; 1003 u16 tx_rx_cal_phy_saveregs[11]; 1004 u16 tx_rx_cal_radio_saveregs[22]; 1005 1006 u16 rfctrl_intc1_save; 1007 u16 rfctrl_intc2_save; 1008 1009 u16 classifier_state; 1010 u16 clip_state[2]; 1011 1012 bool aband_spurwar_en; 1013 bool gband_spurwar_en; 1014 1015 bool ipa2g_on; 1016 struct b43_chanspec iqcal_chanspec_2G; 1017 struct b43_chanspec rssical_chanspec_2G; 1018 1019 bool ipa5g_on; 1020 struct b43_chanspec iqcal_chanspec_5G; 1021 struct b43_chanspec rssical_chanspec_5G; 1022 1023 struct b43_phy_n_rssical_cache rssical_cache; 1024 struct b43_phy_n_cal_cache cal_cache; 1025 bool crsminpwr_adjusted; 1026 bool noisevars_adjusted; 1027}; 1028 1029 1030struct b43_phy_operations; 1031extern const struct b43_phy_operations b43_phyops_n; 1032 1033#endif /* B43_NPHY_H_ */ 1034