linux/drivers/net/wireless/broadcom/b43/phy_n.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0 */
   2#ifndef B43_NPHY_H_
   3#define B43_NPHY_H_
   4
   5#include "phy_common.h"
   6#include "ppr.h"
   7
   8
   9/* N-PHY registers. */
  10
  11#define B43_NPHY_BBCFG                          B43_PHY_N(0x001) /* BB config */
  12#define  B43_NPHY_BBCFG_RSTCCA                  0x4000 /* Reset CCA */
  13#define  B43_NPHY_BBCFG_RSTRX                   0x8000 /* Reset RX */
  14#define B43_NPHY_CHANNEL                        B43_PHY_N(0x005) /* Channel */
  15#define B43_NPHY_TXERR                          B43_PHY_N(0x007) /* TX error */
  16#define B43_NPHY_BANDCTL                        B43_PHY_N(0x009) /* Band control */
  17#define  B43_NPHY_BANDCTL_5GHZ                  0x0001 /* Use the 5GHz band */
  18#define B43_NPHY_4WI_ADDR                       B43_PHY_N(0x00B) /* Four-wire bus address */
  19#define B43_NPHY_4WI_DATAHI                     B43_PHY_N(0x00C) /* Four-wire bus data high */
  20#define B43_NPHY_4WI_DATALO                     B43_PHY_N(0x00D) /* Four-wire bus data low */
  21#define B43_NPHY_BIST_STAT0                     B43_PHY_N(0x00E) /* Built-in self test status 0 */
  22#define B43_NPHY_BIST_STAT1                     B43_PHY_N(0x00F) /* Built-in self test status 1 */
  23
  24#define B43_NPHY_C1_DESPWR                      B43_PHY_N(0x018) /* Core 1 desired power */
  25#define B43_NPHY_C1_CCK_DESPWR                  B43_PHY_N(0x019) /* Core 1 CCK desired power */
  26#define B43_NPHY_C1_BCLIPBKOFF                  B43_PHY_N(0x01A) /* Core 1 barely clip backoff */
  27#define B43_NPHY_C1_CCK_BCLIPBKOFF              B43_PHY_N(0x01B) /* Core 1 CCK barely clip backoff */
  28#define B43_NPHY_C1_CGAINI                      B43_PHY_N(0x01C) /* Core 1 compute gain info */
  29#define  B43_NPHY_C1_CGAINI_GAINBKOFF           0x001F /* Gain backoff */
  30#define  B43_NPHY_C1_CGAINI_GAINBKOFF_SHIFT     0
  31#define  B43_NPHY_C1_CGAINI_CLIPGBKOFF          0x03E0 /* Clip gain backoff */
  32#define  B43_NPHY_C1_CGAINI_CLIPGBKOFF_SHIFT    5
  33#define  B43_NPHY_C1_CGAINI_GAINSTEP            0x1C00 /* Gain step */
  34#define  B43_NPHY_C1_CGAINI_GAINSTEP_SHIFT      10
  35#define  B43_NPHY_C1_CGAINI_CL2DETECT           0x2000 /* Clip 2 detect mask */
  36#define B43_NPHY_C1_CCK_CGAINI                  B43_PHY_N(0x01D) /* Core 1 CCK compute gain info */
  37#define  B43_NPHY_C1_CCK_CGAINI_GAINBKOFF       0x001F /* Gain backoff */
  38#define  B43_NPHY_C1_CCK_CGAINI_CLIPGBKOFF      0x01E0 /* CCK barely clip gain backoff */
  39#define B43_NPHY_C1_MINMAX_GAIN                 B43_PHY_N(0x01E) /* Core 1 min/max gain */
  40#define  B43_NPHY_C1_MINGAIN                    0x00FF /* Minimum gain */
  41#define  B43_NPHY_C1_MINGAIN_SHIFT              0
  42#define  B43_NPHY_C1_MAXGAIN                    0xFF00 /* Maximum gain */
  43#define  B43_NPHY_C1_MAXGAIN_SHIFT              8
  44#define B43_NPHY_C1_CCK_MINMAX_GAIN             B43_PHY_N(0x01F) /* Core 1 CCK min/max gain */
  45#define  B43_NPHY_C1_CCK_MINGAIN                0x00FF /* Minimum gain */
  46#define  B43_NPHY_C1_CCK_MINGAIN_SHIFT          0
  47#define  B43_NPHY_C1_CCK_MAXGAIN                0xFF00 /* Maximum gain */
  48#define  B43_NPHY_C1_CCK_MAXGAIN_SHIFT          8
  49#define B43_NPHY_C1_INITGAIN                    B43_PHY_N(0x020) /* Core 1 initial gain code */
  50#define  B43_NPHY_C1_INITGAIN_EXTLNA            0x0001 /* External LNA index */
  51#define  B43_NPHY_C1_INITGAIN_LNA               0x0006 /* LNA index */
  52#define  B43_NPHY_C1_INITGAIN_LNAIDX_SHIFT      1
  53#define  B43_NPHY_C1_INITGAIN_HPVGA1            0x0078 /* HPVGA1 index */
  54#define  B43_NPHY_C1_INITGAIN_HPVGA1_SHIFT      3
  55#define  B43_NPHY_C1_INITGAIN_HPVGA2            0x0F80 /* HPVGA2 index */
  56#define  B43_NPHY_C1_INITGAIN_HPVGA2_SHIFT      7
  57#define  B43_NPHY_C1_INITGAIN_TRRX              0x1000 /* TR RX index */
  58#define  B43_NPHY_C1_INITGAIN_TRTX              0x2000 /* TR TX index */
  59#define B43_NPHY_REV3_C1_INITGAIN_A             B43_PHY_N(0x020)
  60#define B43_NPHY_C1_CLIP1_HIGAIN                B43_PHY_N(0x021) /* Core 1 clip1 high gain code */
  61#define B43_NPHY_REV3_C1_INITGAIN_B             B43_PHY_N(0x021)
  62#define B43_NPHY_C1_CLIP1_MEDGAIN               B43_PHY_N(0x022) /* Core 1 clip1 medium gain code */
  63#define B43_NPHY_REV3_C1_CLIP_HIGAIN_A          B43_PHY_N(0x022)
  64#define B43_NPHY_C1_CLIP1_LOGAIN                B43_PHY_N(0x023) /* Core 1 clip1 low gain code */
  65#define B43_NPHY_REV3_C1_CLIP_HIGAIN_B          B43_PHY_N(0x023)
  66#define B43_NPHY_C1_CLIP2_GAIN                  B43_PHY_N(0x024) /* Core 1 clip2 gain code */
  67#define B43_NPHY_REV3_C1_CLIP_MEDGAIN_A         B43_PHY_N(0x024)
  68#define B43_NPHY_C1_FILTERGAIN                  B43_PHY_N(0x025) /* Core 1 filter gain */
  69#define B43_NPHY_C1_LPF_QHPF_BW                 B43_PHY_N(0x026) /* Core 1 LPF Q HP F bandwidth */
  70#define B43_NPHY_C1_CLIPWBTHRES                 B43_PHY_N(0x027) /* Core 1 clip wideband threshold */
  71#define  B43_NPHY_C1_CLIPWBTHRES_CLIP2          0x003F /* Clip 2 */
  72#define  B43_NPHY_C1_CLIPWBTHRES_CLIP2_SHIFT    0
  73#define  B43_NPHY_C1_CLIPWBTHRES_CLIP1          0x0FC0 /* Clip 1 */
  74#define  B43_NPHY_C1_CLIPWBTHRES_CLIP1_SHIFT    6
  75#define B43_NPHY_C1_W1THRES                     B43_PHY_N(0x028) /* Core 1 W1 threshold */
  76#define B43_NPHY_C1_EDTHRES                     B43_PHY_N(0x029) /* Core 1 ED threshold */
  77#define B43_NPHY_C1_SMSIGTHRES                  B43_PHY_N(0x02A) /* Core 1 small sig threshold */
  78#define B43_NPHY_C1_NBCLIPTHRES                 B43_PHY_N(0x02B) /* Core 1 NB clip threshold */
  79#define B43_NPHY_C1_CLIP1THRES                  B43_PHY_N(0x02C) /* Core 1 clip1 threshold */
  80#define B43_NPHY_C1_CLIP2THRES                  B43_PHY_N(0x02D) /* Core 1 clip2 threshold */
  81
  82#define B43_NPHY_C2_DESPWR                      B43_PHY_N(0x02E) /* Core 2 desired power */
  83#define B43_NPHY_C2_CCK_DESPWR                  B43_PHY_N(0x02F) /* Core 2 CCK desired power */
  84#define B43_NPHY_C2_BCLIPBKOFF                  B43_PHY_N(0x030) /* Core 2 barely clip backoff */
  85#define B43_NPHY_C2_CCK_BCLIPBKOFF              B43_PHY_N(0x031) /* Core 2 CCK barely clip backoff */
  86#define B43_NPHY_C2_CGAINI                      B43_PHY_N(0x032) /* Core 2 compute gain info */
  87#define  B43_NPHY_C2_CGAINI_GAINBKOFF           0x001F /* Gain backoff */
  88#define  B43_NPHY_C2_CGAINI_GAINBKOFF_SHIFT     0
  89#define  B43_NPHY_C2_CGAINI_CLIPGBKOFF          0x03E0 /* Clip gain backoff */
  90#define  B43_NPHY_C2_CGAINI_CLIPGBKOFF_SHIFT    5
  91#define  B43_NPHY_C2_CGAINI_GAINSTEP            0x1C00 /* Gain step */
  92#define  B43_NPHY_C2_CGAINI_GAINSTEP_SHIFT      10
  93#define  B43_NPHY_C2_CGAINI_CL2DETECT           0x2000 /* Clip 2 detect mask */
  94#define B43_NPHY_C2_CCK_CGAINI                  B43_PHY_N(0x033) /* Core 2 CCK compute gain info */
  95#define  B43_NPHY_C2_CCK_CGAINI_GAINBKOFF       0x001F /* Gain backoff */
  96#define  B43_NPHY_C2_CCK_CGAINI_CLIPGBKOFF      0x01E0 /* CCK barely clip gain backoff */
  97#define B43_NPHY_C2_MINMAX_GAIN                 B43_PHY_N(0x034) /* Core 2 min/max gain */
  98#define  B43_NPHY_C2_MINGAIN                    0x00FF /* Minimum gain */
  99#define  B43_NPHY_C2_MINGAIN_SHIFT              0
 100#define  B43_NPHY_C2_MAXGAIN                    0xFF00 /* Maximum gain */
 101#define  B43_NPHY_C2_MAXGAIN_SHIFT              8
 102#define B43_NPHY_C2_CCK_MINMAX_GAIN             B43_PHY_N(0x035) /* Core 2 CCK min/max gain */
 103#define  B43_NPHY_C2_CCK_MINGAIN                0x00FF /* Minimum gain */
 104#define  B43_NPHY_C2_CCK_MINGAIN_SHIFT          0
 105#define  B43_NPHY_C2_CCK_MAXGAIN                0xFF00 /* Maximum gain */
 106#define  B43_NPHY_C2_CCK_MAXGAIN_SHIFT          8
 107#define B43_NPHY_C2_INITGAIN                    B43_PHY_N(0x036) /* Core 2 initial gain code */
 108#define  B43_NPHY_C2_INITGAIN_EXTLNA            0x0001 /* External LNA index */
 109#define  B43_NPHY_C2_INITGAIN_LNA               0x0006 /* LNA index */
 110#define  B43_NPHY_C2_INITGAIN_LNAIDX_SHIFT      1
 111#define  B43_NPHY_C2_INITGAIN_HPVGA1            0x0078 /* HPVGA1 index */
 112#define  B43_NPHY_C2_INITGAIN_HPVGA1_SHIFT      3
 113#define  B43_NPHY_C2_INITGAIN_HPVGA2            0x0F80 /* HPVGA2 index */
 114#define  B43_NPHY_C2_INITGAIN_HPVGA2_SHIFT      7
 115#define  B43_NPHY_C2_INITGAIN_TRRX              0x1000 /* TR RX index */
 116#define  B43_NPHY_C2_INITGAIN_TRTX              0x2000 /* TR TX index */
 117#define B43_NPHY_REV3_C1_CLIP_MEDGAIN_B         B43_PHY_N(0x036)
 118#define B43_NPHY_C2_CLIP1_HIGAIN                B43_PHY_N(0x037) /* Core 2 clip1 high gain code */
 119#define B43_NPHY_REV3_C1_CLIP_LOGAIN_A          B43_PHY_N(0x037)
 120#define B43_NPHY_C2_CLIP1_MEDGAIN               B43_PHY_N(0x038) /* Core 2 clip1 medium gain code */
 121#define B43_NPHY_REV3_C1_CLIP_LOGAIN_B          B43_PHY_N(0x038)
 122#define B43_NPHY_C2_CLIP1_LOGAIN                B43_PHY_N(0x039) /* Core 2 clip1 low gain code */
 123#define B43_NPHY_REV3_C1_CLIP2_GAIN_A           B43_PHY_N(0x039)
 124#define B43_NPHY_C2_CLIP2_GAIN                  B43_PHY_N(0x03A) /* Core 2 clip2 gain code */
 125#define B43_NPHY_REV3_C1_CLIP2_GAIN_B           B43_PHY_N(0x03A)
 126#define B43_NPHY_C2_FILTERGAIN                  B43_PHY_N(0x03B) /* Core 2 filter gain */
 127#define B43_NPHY_C2_LPF_QHPF_BW                 B43_PHY_N(0x03C) /* Core 2 LPF Q HP F bandwidth */
 128#define B43_NPHY_C2_CLIPWBTHRES                 B43_PHY_N(0x03D) /* Core 2 clip wideband threshold */
 129#define  B43_NPHY_C2_CLIPWBTHRES_CLIP2          0x003F /* Clip 2 */
 130#define  B43_NPHY_C2_CLIPWBTHRES_CLIP2_SHIFT    0
 131#define  B43_NPHY_C2_CLIPWBTHRES_CLIP1          0x0FC0 /* Clip 1 */
 132#define  B43_NPHY_C2_CLIPWBTHRES_CLIP1_SHIFT    6
 133#define B43_NPHY_C2_W1THRES                     B43_PHY_N(0x03E) /* Core 2 W1 threshold */
 134#define B43_NPHY_C2_EDTHRES                     B43_PHY_N(0x03F) /* Core 2 ED threshold */
 135#define B43_NPHY_C2_SMSIGTHRES                  B43_PHY_N(0x040) /* Core 2 small sig threshold */
 136#define B43_NPHY_C2_NBCLIPTHRES                 B43_PHY_N(0x041) /* Core 2 NB clip threshold */
 137#define B43_NPHY_C2_CLIP1THRES                  B43_PHY_N(0x042) /* Core 2 clip1 threshold */
 138#define B43_NPHY_C2_CLIP2THRES                  B43_PHY_N(0x043) /* Core 2 clip2 threshold */
 139
 140#define B43_NPHY_CRS_THRES1                     B43_PHY_N(0x044) /* CRS threshold 1 */
 141#define B43_NPHY_CRS_THRES2                     B43_PHY_N(0x045) /* CRS threshold 2 */
 142#define B43_NPHY_CRS_THRES3                     B43_PHY_N(0x046) /* CRS threshold 3 */
 143#define B43_NPHY_CRSCTL                         B43_PHY_N(0x047) /* CRS control */
 144#define B43_NPHY_DCFADDR                        B43_PHY_N(0x048) /* DC filter address */
 145#define B43_NPHY_RXF20_NUM0                     B43_PHY_N(0x049) /* RX filter 20 numerator 0 */
 146#define B43_NPHY_RXF20_NUM1                     B43_PHY_N(0x04A) /* RX filter 20 numerator 1 */
 147#define B43_NPHY_RXF20_NUM2                     B43_PHY_N(0x04B) /* RX filter 20 numerator 2 */
 148#define B43_NPHY_RXF20_DENOM0                   B43_PHY_N(0x04C) /* RX filter 20 denominator 0 */
 149#define B43_NPHY_RXF20_DENOM1                   B43_PHY_N(0x04D) /* RX filter 20 denominator 1 */
 150#define B43_NPHY_RXF20_NUM10                    B43_PHY_N(0x04E) /* RX filter 20 numerator 10 */
 151#define B43_NPHY_RXF20_NUM11                    B43_PHY_N(0x04F) /* RX filter 20 numerator 11 */
 152#define B43_NPHY_RXF20_NUM12                    B43_PHY_N(0x050) /* RX filter 20 numerator 12 */
 153#define B43_NPHY_RXF20_DENOM10                  B43_PHY_N(0x051) /* RX filter 20 denominator 10 */
 154#define B43_NPHY_RXF20_DENOM11                  B43_PHY_N(0x052) /* RX filter 20 denominator 11 */
 155#define B43_NPHY_RXF40_NUM0                     B43_PHY_N(0x053) /* RX filter 40 numerator 0 */
 156#define B43_NPHY_RXF40_NUM1                     B43_PHY_N(0x054) /* RX filter 40 numerator 1 */
 157#define B43_NPHY_RXF40_NUM2                     B43_PHY_N(0x055) /* RX filter 40 numerator 2 */
 158#define B43_NPHY_RXF40_DENOM0                   B43_PHY_N(0x056) /* RX filter 40 denominator 0 */
 159#define B43_NPHY_RXF40_DENOM1                   B43_PHY_N(0x057) /* RX filter 40 denominator 1 */
 160#define B43_NPHY_RXF40_NUM10                    B43_PHY_N(0x058) /* RX filter 40 numerator 10 */
 161#define B43_NPHY_RXF40_NUM11                    B43_PHY_N(0x059) /* RX filter 40 numerator 11 */
 162#define B43_NPHY_RXF40_NUM12                    B43_PHY_N(0x05A) /* RX filter 40 numerator 12 */
 163#define B43_NPHY_RXF40_DENOM10                  B43_PHY_N(0x05B) /* RX filter 40 denominator 10 */
 164#define B43_NPHY_RXF40_DENOM11                  B43_PHY_N(0x05C) /* RX filter 40 denominator 11 */
 165#define B43_NPHY_PPROC_RSTLEN                   B43_PHY_N(0x060) /* Packet processing reset length */
 166#define B43_NPHY_INITCARR_DLEN                  B43_PHY_N(0x061) /* Initial carrier detection length */
 167#define B43_NPHY_CLIP1CARR_DLEN                 B43_PHY_N(0x062) /* Clip1 carrier detection length */
 168#define B43_NPHY_CLIP2CARR_DLEN                 B43_PHY_N(0x063) /* Clip2 carrier detection length */
 169#define B43_NPHY_INITGAIN_SLEN                  B43_PHY_N(0x064) /* Initial gain settle length */
 170#define B43_NPHY_CLIP1GAIN_SLEN                 B43_PHY_N(0x065) /* Clip1 gain settle length */
 171#define B43_NPHY_CLIP2GAIN_SLEN                 B43_PHY_N(0x066) /* Clip2 gain settle length */
 172#define B43_NPHY_PACKGAIN_SLEN                  B43_PHY_N(0x067) /* Packet gain settle length */
 173#define B43_NPHY_CARRSRC_TLEN                   B43_PHY_N(0x068) /* Carrier search timeout length */
 174#define B43_NPHY_TISRC_TLEN                     B43_PHY_N(0x069) /* Timing search timeout length */
 175#define B43_NPHY_ENDROP_TLEN                    B43_PHY_N(0x06A) /* Energy drop timeout length */
 176#define B43_NPHY_CLIP1_NBDWELL_LEN              B43_PHY_N(0x06B) /* Clip1 NB dwell length */
 177#define B43_NPHY_CLIP2_NBDWELL_LEN              B43_PHY_N(0x06C) /* Clip2 NB dwell length */
 178#define B43_NPHY_W1CLIP1_DWELL_LEN              B43_PHY_N(0x06D) /* W1 clip1 dwell length */
 179#define B43_NPHY_W1CLIP2_DWELL_LEN              B43_PHY_N(0x06E) /* W1 clip2 dwell length */
 180#define B43_NPHY_W2CLIP1_DWELL_LEN              B43_PHY_N(0x06F) /* W2 clip1 dwell length */
 181#define B43_NPHY_PLOAD_CSENSE_EXTLEN            B43_PHY_N(0x070) /* Payload carrier sense extension length */
 182#define B43_NPHY_EDROP_CSENSE_EXTLEN            B43_PHY_N(0x071) /* Energy drop carrier sense extension length */
 183#define B43_NPHY_TABLE_ADDR                     B43_PHY_N(0x072) /* Table address */
 184#define B43_NPHY_TABLE_DATALO                   B43_PHY_N(0x073) /* Table data low */
 185#define B43_NPHY_TABLE_DATAHI                   B43_PHY_N(0x074) /* Table data high */
 186#define B43_NPHY_WWISE_LENIDX                   B43_PHY_N(0x075) /* WWiSE length index */
 187#define B43_NPHY_TGNSYNC_LENIDX                 B43_PHY_N(0x076) /* TGNsync length index */
 188#define B43_NPHY_TXMACIF_HOLDOFF                B43_PHY_N(0x077) /* TX MAC IF Hold off */
 189#define B43_NPHY_RFCTL_CMD                      B43_PHY_N(0x078) /* RF control (command) */
 190#define  B43_NPHY_RFCTL_CMD_START               0x0001 /* Start sequence */
 191#define  B43_NPHY_RFCTL_CMD_RXTX                0x0002 /* RX/TX */
 192#define  B43_NPHY_RFCTL_CMD_CORESEL             0x0038 /* Core select */
 193#define  B43_NPHY_RFCTL_CMD_CORESEL_SHIFT       3
 194#define  B43_NPHY_RFCTL_CMD_PORFORCE            0x0040 /* POR force */
 195#define  B43_NPHY_RFCTL_CMD_OEPORFORCE          0x0080 /* OE POR force */
 196#define  B43_NPHY_RFCTL_CMD_RXEN                0x0100 /* RX enable */
 197#define  B43_NPHY_RFCTL_CMD_TXEN                0x0200 /* TX enable */
 198#define  B43_NPHY_RFCTL_CMD_CHIP0PU             0x0400 /* Chip0 PU */
 199#define  B43_NPHY_RFCTL_CMD_EN                  0x0800 /* Radio enabled */
 200#define  B43_NPHY_RFCTL_CMD_SEQENCORE           0xF000 /* Seq en core */
 201#define  B43_NPHY_RFCTL_CMD_SEQENCORE_SHIFT     12
 202#define B43_NPHY_RFCTL_RSSIO1                   B43_PHY_N(0x07A) /* RF control (RSSI others 1) */
 203#define  B43_NPHY_RFCTL_RSSIO1_RXPD             0x0001 /* RX PD */
 204#define  B43_NPHY_RFCTL_RSSIO1_TXPD             0x0002 /* TX PD */
 205#define  B43_NPHY_RFCTL_RSSIO1_PAPD             0x0004 /* PA PD */
 206#define  B43_NPHY_RFCTL_RSSIO1_RSSICTL          0x0030 /* RSSI control */
 207#define  B43_NPHY_RFCTL_RSSIO1_LPFBW            0x00C0 /* LPF bandwidth */
 208#define  B43_NPHY_RFCTL_RSSIO1_HPFBWHI          0x0100 /* HPF bandwidth high */
 209#define  B43_NPHY_RFCTL_RSSIO1_HIQDISCO         0x0200 /* HIQ dis core */
 210#define B43_NPHY_RFCTL_RXG1                     B43_PHY_N(0x07B) /* RF control (RX gain 1) */
 211#define B43_NPHY_RFCTL_TXG1                     B43_PHY_N(0x07C) /* RF control (TX gain 1) */
 212#define B43_NPHY_RFCTL_RSSIO2                   B43_PHY_N(0x07D) /* RF control (RSSI others 2) */
 213#define  B43_NPHY_RFCTL_RSSIO2_RXPD             0x0001 /* RX PD */
 214#define  B43_NPHY_RFCTL_RSSIO2_TXPD             0x0002 /* TX PD */
 215#define  B43_NPHY_RFCTL_RSSIO2_PAPD             0x0004 /* PA PD */
 216#define  B43_NPHY_RFCTL_RSSIO2_RSSICTL          0x0030 /* RSSI control */
 217#define  B43_NPHY_RFCTL_RSSIO2_LPFBW            0x00C0 /* LPF bandwidth */
 218#define  B43_NPHY_RFCTL_RSSIO2_HPFBWHI          0x0100 /* HPF bandwidth high */
 219#define  B43_NPHY_RFCTL_RSSIO2_HIQDISCO         0x0200 /* HIQ dis core */
 220#define B43_NPHY_RFCTL_RXG2                     B43_PHY_N(0x07E) /* RF control (RX gain 2) */
 221#define B43_NPHY_RFCTL_TXG2                     B43_PHY_N(0x07F) /* RF control (TX gain 2) */
 222#define B43_NPHY_RFCTL_RSSIO3                   B43_PHY_N(0x080) /* RF control (RSSI others 3) */
 223#define  B43_NPHY_RFCTL_RSSIO3_RXPD             0x0001 /* RX PD */
 224#define  B43_NPHY_RFCTL_RSSIO3_TXPD             0x0002 /* TX PD */
 225#define  B43_NPHY_RFCTL_RSSIO3_PAPD             0x0004 /* PA PD */
 226#define  B43_NPHY_RFCTL_RSSIO3_RSSICTL          0x0030 /* RSSI control */
 227#define  B43_NPHY_RFCTL_RSSIO3_LPFBW            0x00C0 /* LPF bandwidth */
 228#define  B43_NPHY_RFCTL_RSSIO3_HPFBWHI          0x0100 /* HPF bandwidth high */
 229#define  B43_NPHY_RFCTL_RSSIO3_HIQDISCO         0x0200 /* HIQ dis core */
 230#define B43_NPHY_RFCTL_RXG3                     B43_PHY_N(0x081) /* RF control (RX gain 3) */
 231#define B43_NPHY_RFCTL_TXG3                     B43_PHY_N(0x082) /* RF control (TX gain 3) */
 232#define B43_NPHY_RFCTL_RSSIO4                   B43_PHY_N(0x083) /* RF control (RSSI others 4) */
 233#define  B43_NPHY_RFCTL_RSSIO4_RXPD             0x0001 /* RX PD */
 234#define  B43_NPHY_RFCTL_RSSIO4_TXPD             0x0002 /* TX PD */
 235#define  B43_NPHY_RFCTL_RSSIO4_PAPD             0x0004 /* PA PD */
 236#define  B43_NPHY_RFCTL_RSSIO4_RSSICTL          0x0030 /* RSSI control */
 237#define  B43_NPHY_RFCTL_RSSIO4_LPFBW            0x00C0 /* LPF bandwidth */
 238#define  B43_NPHY_RFCTL_RSSIO4_HPFBWHI          0x0100 /* HPF bandwidth high */
 239#define  B43_NPHY_RFCTL_RSSIO4_HIQDISCO         0x0200 /* HIQ dis core */
 240#define B43_NPHY_RFCTL_RXG4                     B43_PHY_N(0x084) /* RF control (RX gain 4) */
 241#define B43_NPHY_RFCTL_TXG4                     B43_PHY_N(0x085) /* RF control (TX gain 4) */
 242#define B43_NPHY_C1_TXIQ_COMP_OFF               B43_PHY_N(0x087) /* Core 1 TX I/Q comp offset */
 243#define B43_NPHY_C2_TXIQ_COMP_OFF               B43_PHY_N(0x088) /* Core 2 TX I/Q comp offset */
 244#define B43_NPHY_C1_TXCTL                       B43_PHY_N(0x08B) /* Core 1 TX control */
 245#define B43_NPHY_C2_TXCTL                       B43_PHY_N(0x08C) /* Core 2 TX control */
 246#define B43_NPHY_AFECTL_OVER1                   B43_PHY_N(0x08F) /* AFE control override 1 */
 247#define B43_NPHY_SCRAM_SIGCTL                   B43_PHY_N(0x090) /* Scram signal control */
 248#define  B43_NPHY_SCRAM_SIGCTL_INITST           0x007F /* Initial state value */
 249#define  B43_NPHY_SCRAM_SIGCTL_INITST_SHIFT     0
 250#define  B43_NPHY_SCRAM_SIGCTL_SCM              0x0080 /* Scram control mode */
 251#define  B43_NPHY_SCRAM_SIGCTL_SICE             0x0100 /* Scram index control enable */
 252#define  B43_NPHY_SCRAM_SIGCTL_START            0xFE00 /* Scram start bit */
 253#define  B43_NPHY_SCRAM_SIGCTL_START_SHIFT      9
 254#define B43_NPHY_RFCTL_INTC1                    B43_PHY_N(0x091) /* RF control (intc 1) */
 255#define B43_NPHY_RFCTL_INTC2                    B43_PHY_N(0x092) /* RF control (intc 2) */
 256#define B43_NPHY_RFCTL_INTC3                    B43_PHY_N(0x093) /* RF control (intc 3) */
 257#define B43_NPHY_RFCTL_INTC4                    B43_PHY_N(0x094) /* RF control (intc 4) */
 258#define B43_NPHY_NRDTO_WWISE                    B43_PHY_N(0x095) /* # datatones WWiSE */
 259#define B43_NPHY_NRDTO_TGNSYNC                  B43_PHY_N(0x096) /* # datatones TGNsync */
 260#define B43_NPHY_SIGFMOD_WWISE                  B43_PHY_N(0x097) /* Signal field mod WWiSE */
 261#define B43_NPHY_LEG_SIGFMOD_11N                B43_PHY_N(0x098) /* Legacy signal field mod 11n */
 262#define B43_NPHY_HT_SIGFMOD_11N                 B43_PHY_N(0x099) /* HT signal field mod 11n */
 263#define B43_NPHY_C1_RXIQ_COMPA0                 B43_PHY_N(0x09A) /* Core 1 RX I/Q comp A0 */
 264#define B43_NPHY_C1_RXIQ_COMPB0                 B43_PHY_N(0x09B) /* Core 1 RX I/Q comp B0 */
 265#define B43_NPHY_C2_RXIQ_COMPA1                 B43_PHY_N(0x09C) /* Core 2 RX I/Q comp A1 */
 266#define B43_NPHY_C2_RXIQ_COMPB1                 B43_PHY_N(0x09D) /* Core 2 RX I/Q comp B1 */
 267#define B43_NPHY_RXCTL                          B43_PHY_N(0x0A0) /* RX control */
 268#define  B43_NPHY_RXCTL_BSELU20                 0x0010 /* Band select upper 20 */
 269#define  B43_NPHY_RXCTL_RIFSEN                  0x0080 /* RIFS enable */
 270#define B43_NPHY_RFSEQMODE                      B43_PHY_N(0x0A1) /* RF seq mode */
 271#define  B43_NPHY_RFSEQMODE_CAOVER              0x0001 /* Core active override */
 272#define  B43_NPHY_RFSEQMODE_TROVER              0x0002 /* Trigger override */
 273#define B43_NPHY_RFSEQCA                        B43_PHY_N(0x0A2) /* RF seq core active */
 274#define  B43_NPHY_RFSEQCA_TXEN                  0x000F /* TX enable */
 275#define  B43_NPHY_RFSEQCA_TXEN_SHIFT            0
 276#define  B43_NPHY_RFSEQCA_RXEN                  0x00F0 /* RX enable */
 277#define  B43_NPHY_RFSEQCA_RXEN_SHIFT            4
 278#define  B43_NPHY_RFSEQCA_TXDIS                 0x0F00 /* TX disable */
 279#define  B43_NPHY_RFSEQCA_TXDIS_SHIFT           8
 280#define  B43_NPHY_RFSEQCA_RXDIS                 0xF000 /* RX disable */
 281#define  B43_NPHY_RFSEQCA_RXDIS_SHIFT           12
 282#define B43_NPHY_RFSEQTR                        B43_PHY_N(0x0A3) /* RF seq trigger */
 283#define  B43_NPHY_RFSEQTR_RX2TX                 0x0001 /* RX2TX */
 284#define  B43_NPHY_RFSEQTR_TX2RX                 0x0002 /* TX2RX */
 285#define  B43_NPHY_RFSEQTR_UPGH                  0x0004 /* Update gain H */
 286#define  B43_NPHY_RFSEQTR_UPGL                  0x0008 /* Update gain L */
 287#define  B43_NPHY_RFSEQTR_UPGU                  0x0010 /* Update gain U */
 288#define  B43_NPHY_RFSEQTR_RST2RX                0x0020 /* Reset to RX */
 289#define B43_NPHY_RFSEQST                        B43_PHY_N(0x0A4) /* RF seq status. Values same as trigger. */
 290#define B43_NPHY_AFECTL_OVER                    B43_PHY_N(0x0A5) /* AFE control override */
 291#define B43_NPHY_AFECTL_C1                      B43_PHY_N(0x0A6) /* AFE control core 1 */
 292#define B43_NPHY_AFECTL_C2                      B43_PHY_N(0x0A7) /* AFE control core 2 */
 293#define B43_NPHY_AFECTL_C3                      B43_PHY_N(0x0A8) /* AFE control core 3 */
 294#define B43_NPHY_AFECTL_C4                      B43_PHY_N(0x0A9) /* AFE control core 4 */
 295#define B43_NPHY_AFECTL_DACGAIN1                B43_PHY_N(0x0AA) /* AFE control DAC gain 1 */
 296#define B43_NPHY_AFECTL_DACGAIN2                B43_PHY_N(0x0AB) /* AFE control DAC gain 2 */
 297#define B43_NPHY_AFECTL_DACGAIN3                B43_PHY_N(0x0AC) /* AFE control DAC gain 3 */
 298#define B43_NPHY_AFECTL_DACGAIN4                B43_PHY_N(0x0AD) /* AFE control DAC gain 4 */
 299#define B43_NPHY_STR_ADDR1                      B43_PHY_N(0x0AE) /* STR address 1 */
 300#define B43_NPHY_STR_ADDR2                      B43_PHY_N(0x0AF) /* STR address 2 */
 301#define B43_NPHY_CLASSCTL                       B43_PHY_N(0x0B0) /* Classifier control */
 302#define  B43_NPHY_CLASSCTL_CCKEN                0x0001 /* CCK enable */
 303#define  B43_NPHY_CLASSCTL_OFDMEN               0x0002 /* OFDM enable */
 304#define  B43_NPHY_CLASSCTL_WAITEDEN             0x0004 /* Waited enable */
 305#define B43_NPHY_IQFLIP                         B43_PHY_N(0x0B1) /* I/Q flip */
 306#define  B43_NPHY_IQFLIP_ADC1                   0x0001 /* ADC1 */
 307#define  B43_NPHY_IQFLIP_ADC2                   0x0010 /* ADC2 */
 308#define B43_NPHY_SISO_SNR_THRES                 B43_PHY_N(0x0B2) /* SISO SNR threshold */
 309#define B43_NPHY_SIGMA_N_MULT                   B43_PHY_N(0x0B3) /* Sigma N multiplier */
 310#define B43_NPHY_TXMACDELAY                     B43_PHY_N(0x0B4) /* TX MAC delay */
 311#define B43_NPHY_TXFRAMEDELAY                   B43_PHY_N(0x0B5) /* TX frame delay */
 312#define B43_NPHY_MLPARM                         B43_PHY_N(0x0B6) /* ML parameters */
 313#define B43_NPHY_MLCTL                          B43_PHY_N(0x0B7) /* ML control */
 314#define B43_NPHY_WWISE_20NCYCDAT                B43_PHY_N(0x0B8) /* WWiSE 20 N cyc data */
 315#define B43_NPHY_WWISE_40NCYCDAT                B43_PHY_N(0x0B9) /* WWiSE 40 N cyc data */
 316#define B43_NPHY_TGNSYNC_20NCYCDAT              B43_PHY_N(0x0BA) /* TGNsync 20 N cyc data */
 317#define B43_NPHY_TGNSYNC_40NCYCDAT              B43_PHY_N(0x0BB) /* TGNsync 40 N cyc data */
 318#define B43_NPHY_INITSWIZP                      B43_PHY_N(0x0BC) /* Initial swizzle pattern */
 319#define B43_NPHY_TXTAILCNT                      B43_PHY_N(0x0BD) /* TX tail count value */
 320#define B43_NPHY_BPHY_CTL1                      B43_PHY_N(0x0BE) /* B PHY control 1 */
 321#define B43_NPHY_BPHY_CTL2                      B43_PHY_N(0x0BF) /* B PHY control 2 */
 322#define  B43_NPHY_BPHY_CTL2_LUT                 0x001F /* LUT index */
 323#define  B43_NPHY_BPHY_CTL2_LUT_SHIFT           0
 324#define  B43_NPHY_BPHY_CTL2_MACDEL              0x7FE0 /* MAC delay */
 325#define  B43_NPHY_BPHY_CTL2_MACDEL_SHIFT        5
 326#define B43_NPHY_IQLOCAL_CMD                    B43_PHY_N(0x0C0) /* I/Q LO cal command */
 327#define  B43_NPHY_IQLOCAL_CMD_EN                0x8000
 328#define B43_NPHY_IQLOCAL_CMDNNUM                B43_PHY_N(0x0C1) /* I/Q LO cal command N num */
 329#define B43_NPHY_IQLOCAL_CMDGCTL                B43_PHY_N(0x0C2) /* I/Q LO cal command G control */
 330#define B43_NPHY_SAMP_CMD                       B43_PHY_N(0x0C3) /* Sample command */
 331#define  B43_NPHY_SAMP_CMD_STOP                 0x0002 /* Stop */
 332#define B43_NPHY_SAMP_LOOPCNT                   B43_PHY_N(0x0C4) /* Sample loop count */
 333#define B43_NPHY_SAMP_WAITCNT                   B43_PHY_N(0x0C5) /* Sample wait count */
 334#define B43_NPHY_SAMP_DEPCNT                    B43_PHY_N(0x0C6) /* Sample depth count */
 335#define B43_NPHY_SAMP_STAT                      B43_PHY_N(0x0C7) /* Sample status */
 336#define B43_NPHY_GPIO_LOOEN                     B43_PHY_N(0x0C8) /* GPIO low out enable */
 337#define B43_NPHY_GPIO_HIOEN                     B43_PHY_N(0x0C9) /* GPIO high out enable */
 338#define B43_NPHY_GPIO_SEL                       B43_PHY_N(0x0CA) /* GPIO select */
 339#define B43_NPHY_GPIO_CLKCTL                    B43_PHY_N(0x0CB) /* GPIO clock control */
 340#define B43_NPHY_TXF_20CO_AS0                   B43_PHY_N(0x0CC) /* TX filter 20 coeff A stage 0 */
 341#define B43_NPHY_TXF_20CO_AS1                   B43_PHY_N(0x0CD) /* TX filter 20 coeff A stage 1 */
 342#define B43_NPHY_TXF_20CO_AS2                   B43_PHY_N(0x0CE) /* TX filter 20 coeff A stage 2 */
 343#define B43_NPHY_TXF_20CO_B32S0                 B43_PHY_N(0x0CF) /* TX filter 20 coeff B32 stage 0 */
 344#define B43_NPHY_TXF_20CO_B1S0                  B43_PHY_N(0x0D0) /* TX filter 20 coeff B1 stage 0 */
 345#define B43_NPHY_TXF_20CO_B32S1                 B43_PHY_N(0x0D1) /* TX filter 20 coeff B32 stage 1 */
 346#define B43_NPHY_TXF_20CO_B1S1                  B43_PHY_N(0x0D2) /* TX filter 20 coeff B1 stage 1 */
 347#define B43_NPHY_TXF_20CO_B32S2                 B43_PHY_N(0x0D3) /* TX filter 20 coeff B32 stage 2 */
 348#define B43_NPHY_TXF_20CO_B1S2                  B43_PHY_N(0x0D4) /* TX filter 20 coeff B1 stage 2 */
 349#define B43_NPHY_SIGFLDTOL                      B43_PHY_N(0x0D5) /* Signal fld tolerance */
 350#define B43_NPHY_TXSERFLD                       B43_PHY_N(0x0D6) /* TX service field */
 351#define B43_NPHY_AFESEQ_RX2TX_PUD               B43_PHY_N(0x0D7) /* AFE seq RX2TX power up/down delay */
 352#define B43_NPHY_AFESEQ_TX2RX_PUD               B43_PHY_N(0x0D8) /* AFE seq TX2RX power up/down delay */
 353#define B43_NPHY_TGNSYNC_SCRAMI0                B43_PHY_N(0x0D9) /* TGNsync scram init 0 */
 354#define B43_NPHY_TGNSYNC_SCRAMI1                B43_PHY_N(0x0DA) /* TGNsync scram init 1 */
 355#define B43_NPHY_INITSWIZPATTLEG                B43_PHY_N(0x0DB) /* Initial swizzle pattern leg */
 356#define B43_NPHY_BPHY_CTL3                      B43_PHY_N(0x0DC) /* B PHY control 3 */
 357#define  B43_NPHY_BPHY_CTL3_SCALE               0x00FF /* Scale */
 358#define  B43_NPHY_BPHY_CTL3_SCALE_SHIFT         0
 359#define  B43_NPHY_BPHY_CTL3_FSC                 0xFF00 /* Frame start count value */
 360#define  B43_NPHY_BPHY_CTL3_FSC_SHIFT           8
 361#define B43_NPHY_BPHY_CTL4                      B43_PHY_N(0x0DD) /* B PHY control 4 */
 362#define B43_NPHY_C1_TXBBMULT                    B43_PHY_N(0x0DE) /* Core 1 TX BB multiplier */
 363#define B43_NPHY_C2_TXBBMULT                    B43_PHY_N(0x0DF) /* Core 2 TX BB multiplier */
 364#define B43_NPHY_TXF_40CO_AS0                   B43_PHY_N(0x0E1) /* TX filter 40 coeff A stage 0 */
 365#define B43_NPHY_TXF_40CO_AS1                   B43_PHY_N(0x0E2) /* TX filter 40 coeff A stage 1 */
 366#define B43_NPHY_TXF_40CO_AS2                   B43_PHY_N(0x0E3) /* TX filter 40 coeff A stage 2 */
 367#define B43_NPHY_TXF_40CO_B32S0                 B43_PHY_N(0x0E4) /* TX filter 40 coeff B32 stage 0 */
 368#define B43_NPHY_TXF_40CO_B1S0                  B43_PHY_N(0x0E5) /* TX filter 40 coeff B1 stage 0 */
 369#define B43_NPHY_TXF_40CO_B32S1                 B43_PHY_N(0x0E6) /* TX filter 40 coeff B32 stage 1 */
 370#define B43_NPHY_TXF_40CO_B1S1                  B43_PHY_N(0x0E7) /* TX filter 40 coeff B1 stage 1 */
 371#define B43_NPHY_REV3_RFCTL_OVER0               B43_PHY_N(0x0E7)
 372#define B43_NPHY_TXF_40CO_B32S2                 B43_PHY_N(0x0E8) /* TX filter 40 coeff B32 stage 2 */
 373#define B43_NPHY_TXF_40CO_B1S2                  B43_PHY_N(0x0E9) /* TX filter 40 coeff B1 stage 2 */
 374#define B43_NPHY_BIST_STAT2                     B43_PHY_N(0x0EA) /* BIST status 2 */
 375#define B43_NPHY_BIST_STAT3                     B43_PHY_N(0x0EB) /* BIST status 3 */
 376#define B43_NPHY_RFCTL_OVER                     B43_PHY_N(0x0EC) /* RF control override */
 377#define B43_NPHY_REV3_RFCTL_OVER1               B43_PHY_N(0x0EC)
 378#define B43_NPHY_MIMOCFG                        B43_PHY_N(0x0ED) /* MIMO config */
 379#define  B43_NPHY_MIMOCFG_GFMIX                 0x0004 /* Greenfield or mixed mode */
 380#define  B43_NPHY_MIMOCFG_AUTO                  0x0100 /* Greenfield/mixed mode auto */
 381#define B43_NPHY_RADAR_BLNKCTL                  B43_PHY_N(0x0EE) /* Radar blank control */
 382#define B43_NPHY_A0RADAR_FIFOCTL                B43_PHY_N(0x0EF) /* Antenna 0 radar FIFO control */
 383#define B43_NPHY_A1RADAR_FIFOCTL                B43_PHY_N(0x0F0) /* Antenna 1 radar FIFO control */
 384#define B43_NPHY_A0RADAR_FIFODAT                B43_PHY_N(0x0F1) /* Antenna 0 radar FIFO data */
 385#define B43_NPHY_A1RADAR_FIFODAT                B43_PHY_N(0x0F2) /* Antenna 1 radar FIFO data */
 386#define B43_NPHY_RADAR_THRES0                   B43_PHY_N(0x0F3) /* Radar threshold 0 */
 387#define B43_NPHY_RADAR_THRES1                   B43_PHY_N(0x0F4) /* Radar threshold 1 */
 388#define B43_NPHY_RADAR_THRES0R                  B43_PHY_N(0x0F5) /* Radar threshold 0R */
 389#define B43_NPHY_RADAR_THRES1R                  B43_PHY_N(0x0F6) /* Radar threshold 1R */
 390#define B43_NPHY_CSEN_20IN40_DLEN               B43_PHY_N(0x0F7) /* Carrier sense 20 in 40 dwell length */
 391#define B43_NPHY_RFCTL_LUT_TRSW_LO1             B43_PHY_N(0x0F8) /* RF control LUT TRSW lower 1 */
 392#define B43_NPHY_RFCTL_LUT_TRSW_UP1             B43_PHY_N(0x0F9) /* RF control LUT TRSW upper 1 */
 393#define B43_NPHY_RFCTL_LUT_TRSW_LO2             B43_PHY_N(0x0FA) /* RF control LUT TRSW lower 2 */
 394#define B43_NPHY_RFCTL_LUT_TRSW_UP2             B43_PHY_N(0x0FB) /* RF control LUT TRSW upper 2 */
 395#define B43_NPHY_RFCTL_LUT_TRSW_LO3             B43_PHY_N(0x0FC) /* RF control LUT TRSW lower 3 */
 396#define B43_NPHY_RFCTL_LUT_TRSW_UP3             B43_PHY_N(0x0FD) /* RF control LUT TRSW upper 3 */
 397#define B43_NPHY_RFCTL_LUT_TRSW_LO4             B43_PHY_N(0x0FE) /* RF control LUT TRSW lower 4 */
 398#define B43_NPHY_RFCTL_LUT_TRSW_UP4             B43_PHY_N(0x0FF) /* RF control LUT TRSW upper 4 */
 399#define B43_NPHY_RFCTL_LUT_LNAPA1               B43_PHY_N(0x100) /* RF control LUT LNA PA 1 */
 400#define B43_NPHY_RFCTL_LUT_LNAPA2               B43_PHY_N(0x101) /* RF control LUT LNA PA 2 */
 401#define B43_NPHY_RFCTL_LUT_LNAPA3               B43_PHY_N(0x102) /* RF control LUT LNA PA 3 */
 402#define B43_NPHY_RFCTL_LUT_LNAPA4               B43_PHY_N(0x103) /* RF control LUT LNA PA 4 */
 403#define B43_NPHY_TGNSYNC_CRCM0                  B43_PHY_N(0x104) /* TGNsync CRC mask 0 */
 404#define B43_NPHY_TGNSYNC_CRCM1                  B43_PHY_N(0x105) /* TGNsync CRC mask 1 */
 405#define B43_NPHY_TGNSYNC_CRCM2                  B43_PHY_N(0x106) /* TGNsync CRC mask 2 */
 406#define B43_NPHY_TGNSYNC_CRCM3                  B43_PHY_N(0x107) /* TGNsync CRC mask 3 */
 407#define B43_NPHY_TGNSYNC_CRCM4                  B43_PHY_N(0x108) /* TGNsync CRC mask 4 */
 408#define B43_NPHY_CRCPOLY                        B43_PHY_N(0x109) /* CRC polynomial */
 409#define B43_NPHY_SIGCNT                         B43_PHY_N(0x10A) /* # sig count */
 410#define B43_NPHY_SIGSTARTBIT_CTL                B43_PHY_N(0x10B) /* Sig start bit control */
 411#define B43_NPHY_CRCPOLY_ORDER                  B43_PHY_N(0x10C) /* CRC polynomial order */
 412#define B43_NPHY_RFCTL_CST0                     B43_PHY_N(0x10D) /* RF control core swap table 0 */
 413#define B43_NPHY_RFCTL_CST1                     B43_PHY_N(0x10E) /* RF control core swap table 1 */
 414#define B43_NPHY_RFCTL_CST2O                    B43_PHY_N(0x10F) /* RF control core swap table 2 + others */
 415#define B43_NPHY_BPHY_CTL5                      B43_PHY_N(0x111) /* B PHY control 5 */
 416#define B43_NPHY_RFSEQ_LPFBW                    B43_PHY_N(0x112) /* RF seq LPF bandwidth */
 417#define B43_NPHY_TSSIBIAS1                      B43_PHY_N(0x114) /* TSSI bias val 1 */
 418#define B43_NPHY_TSSIBIAS2                      B43_PHY_N(0x115) /* TSSI bias val 2 */
 419#define  B43_NPHY_TSSIBIAS_BIAS                 0x00FF /* Bias */
 420#define  B43_NPHY_TSSIBIAS_BIAS_SHIFT           0
 421#define  B43_NPHY_TSSIBIAS_VAL                  0xFF00 /* Value */
 422#define  B43_NPHY_TSSIBIAS_VAL_SHIFT            8
 423#define B43_NPHY_ESTPWR1                        B43_PHY_N(0x118) /* Estimated power 1 */
 424#define B43_NPHY_ESTPWR2                        B43_PHY_N(0x119) /* Estimated power 2 */
 425#define  B43_NPHY_ESTPWR_PWR                    0x00FF /* Estimated power */
 426#define  B43_NPHY_ESTPWR_PWR_SHIFT              0
 427#define  B43_NPHY_ESTPWR_VALID                  0x0100 /* Estimated power valid */
 428#define B43_NPHY_TSSI_MAXTXFDT                  B43_PHY_N(0x11C) /* TSSI max TX frame delay time */
 429#define  B43_NPHY_TSSI_MAXTXFDT_VAL             0x00FF /* max TX frame delay time */
 430#define  B43_NPHY_TSSI_MAXTXFDT_VAL_SHIFT       0
 431#define B43_NPHY_TSSI_MAXTDT                    B43_PHY_N(0x11D) /* TSSI max TSSI delay time */
 432#define  B43_NPHY_TSSI_MAXTDT_VAL               0x00FF /* max TSSI delay time */
 433#define  B43_NPHY_TSSI_MAXTDT_VAL_SHIFT         0
 434#define B43_NPHY_ITSSI1                         B43_PHY_N(0x11E) /* TSSI idle 1 */
 435#define B43_NPHY_ITSSI2                         B43_PHY_N(0x11F) /* TSSI idle 2 */
 436#define  B43_NPHY_ITSSI_VAL                     0x00FF /* Idle TSSI */
 437#define  B43_NPHY_ITSSI_VAL_SHIFT               0
 438#define B43_NPHY_TSSIMODE                       B43_PHY_N(0x122) /* TSSI mode */
 439#define  B43_NPHY_TSSIMODE_EN                   0x0001 /* TSSI enable */
 440#define  B43_NPHY_TSSIMODE_PDEN                 0x0002 /* Power det enable */
 441#define B43_NPHY_RXMACIFM                       B43_PHY_N(0x123) /* RX Macif mode */
 442#define B43_NPHY_CRSIT_COCNT_LO                 B43_PHY_N(0x124) /* CRS idle time CRS-on count (low) */
 443#define B43_NPHY_CRSIT_COCNT_HI                 B43_PHY_N(0x125) /* CRS idle time CRS-on count (high) */
 444#define B43_NPHY_CRSIT_MTCNT_LO                 B43_PHY_N(0x126) /* CRS idle time measure time count (low) */
 445#define B43_NPHY_CRSIT_MTCNT_HI                 B43_PHY_N(0x127) /* CRS idle time measure time count (high) */
 446#define B43_NPHY_SAMTWC                         B43_PHY_N(0x128) /* Sample tail wait count */
 447#define B43_NPHY_IQEST_CMD                      B43_PHY_N(0x129) /* I/Q estimate command */
 448#define  B43_NPHY_IQEST_CMD_START               0x0001 /* Start */
 449#define  B43_NPHY_IQEST_CMD_MODE                0x0002 /* Mode */
 450#define B43_NPHY_IQEST_WT                       B43_PHY_N(0x12A) /* I/Q estimate wait time */
 451#define  B43_NPHY_IQEST_WT_VAL                  0x00FF /* Wait time */
 452#define  B43_NPHY_IQEST_WT_VAL_SHIFT            0
 453#define B43_NPHY_IQEST_SAMCNT                   B43_PHY_N(0x12B) /* I/Q estimate sample count */
 454#define B43_NPHY_IQEST_IQACC_LO0                B43_PHY_N(0x12C) /* I/Q estimate I/Q acc lo 0 */
 455#define B43_NPHY_IQEST_IQACC_HI0                B43_PHY_N(0x12D) /* I/Q estimate I/Q acc hi 0 */
 456#define B43_NPHY_IQEST_IPACC_LO0                B43_PHY_N(0x12E) /* I/Q estimate I power acc lo 0 */
 457#define B43_NPHY_IQEST_IPACC_HI0                B43_PHY_N(0x12F) /* I/Q estimate I power acc hi 0 */
 458#define B43_NPHY_IQEST_QPACC_LO0                B43_PHY_N(0x130) /* I/Q estimate Q power acc lo 0 */
 459#define B43_NPHY_IQEST_QPACC_HI0                B43_PHY_N(0x131) /* I/Q estimate Q power acc hi 0 */
 460#define B43_NPHY_IQEST_IQACC_LO1                B43_PHY_N(0x134) /* I/Q estimate I/Q acc lo 1 */
 461#define B43_NPHY_IQEST_IQACC_HI1                B43_PHY_N(0x135) /* I/Q estimate I/Q acc hi 1 */
 462#define B43_NPHY_IQEST_IPACC_LO1                B43_PHY_N(0x136) /* I/Q estimate I power acc lo 1 */
 463#define B43_NPHY_IQEST_IPACC_HI1                B43_PHY_N(0x137) /* I/Q estimate I power acc hi 1 */
 464#define B43_NPHY_IQEST_QPACC_LO1                B43_PHY_N(0x138) /* I/Q estimate Q power acc lo 1 */
 465#define B43_NPHY_IQEST_QPACC_HI1                B43_PHY_N(0x139) /* I/Q estimate Q power acc hi 1 */
 466#define B43_NPHY_MIMO_CRSTXEXT                  B43_PHY_N(0x13A) /* MIMO PHY CRS TX extension */
 467#define B43_NPHY_PWRDET1                        B43_PHY_N(0x13B) /* Power det 1 */
 468#define B43_NPHY_PWRDET2                        B43_PHY_N(0x13C) /* Power det 2 */
 469#define B43_NPHY_MAXRSSI_DTIME                  B43_PHY_N(0x13F) /* RSSI max RSSI delay time */
 470#define B43_NPHY_PIL_DW0                        B43_PHY_N(0x141) /* Pilot data weight 0 */
 471#define B43_NPHY_PIL_DW1                        B43_PHY_N(0x142) /* Pilot data weight 1 */
 472#define B43_NPHY_PIL_DW2                        B43_PHY_N(0x143) /* Pilot data weight 2 */
 473#define  B43_NPHY_PIL_DW_BPSK                   0x000F /* BPSK */
 474#define  B43_NPHY_PIL_DW_BPSK_SHIFT             0
 475#define  B43_NPHY_PIL_DW_QPSK                   0x00F0 /* QPSK */
 476#define  B43_NPHY_PIL_DW_QPSK_SHIFT             4
 477#define  B43_NPHY_PIL_DW_16QAM                  0x0F00 /* 16-QAM */
 478#define  B43_NPHY_PIL_DW_16QAM_SHIFT            8
 479#define  B43_NPHY_PIL_DW_64QAM                  0xF000 /* 64-QAM */
 480#define  B43_NPHY_PIL_DW_64QAM_SHIFT            12
 481#define B43_NPHY_FMDEM_CFG                      B43_PHY_N(0x144) /* FM demodulation config */
 482#define B43_NPHY_PHASETR_A0                     B43_PHY_N(0x145) /* Phase track alpha 0 */
 483#define B43_NPHY_PHASETR_A1                     B43_PHY_N(0x146) /* Phase track alpha 1 */
 484#define B43_NPHY_PHASETR_A2                     B43_PHY_N(0x147) /* Phase track alpha 2 */
 485#define B43_NPHY_PHASETR_B0                     B43_PHY_N(0x148) /* Phase track beta 0 */
 486#define B43_NPHY_PHASETR_B1                     B43_PHY_N(0x149) /* Phase track beta 1 */
 487#define B43_NPHY_PHASETR_B2                     B43_PHY_N(0x14A) /* Phase track beta 2 */
 488#define B43_NPHY_PHASETR_CHG0                   B43_PHY_N(0x14B) /* Phase track change 0 */
 489#define B43_NPHY_PHASETR_CHG1                   B43_PHY_N(0x14C) /* Phase track change 1 */
 490#define B43_NPHY_PHASETW_OFF                    B43_PHY_N(0x14D) /* Phase track offset */
 491#define B43_NPHY_RFCTL_DBG                      B43_PHY_N(0x14E) /* RF control debug */
 492#define B43_NPHY_CCK_SHIFTB_REF                 B43_PHY_N(0x150) /* CCK shiftbits reference var */
 493#define B43_NPHY_OVER_DGAIN0                    B43_PHY_N(0x152) /* Override digital gain 0 */
 494#define B43_NPHY_OVER_DGAIN1                    B43_PHY_N(0x153) /* Override digital gain 1 */
 495#define  B43_NPHY_OVER_DGAIN_FDGV               0x0007 /* Force digital gain value */
 496#define  B43_NPHY_OVER_DGAIN_FDGV_SHIFT         0
 497#define  B43_NPHY_OVER_DGAIN_FDGEN              0x0008 /* Force digital gain enable */
 498#define  B43_NPHY_OVER_DGAIN_CCKDGECV           0xFF00 /* CCK digital gain enable count value */
 499#define  B43_NPHY_OVER_DGAIN_CCKDGECV_SHIFT     8
 500#define B43_NPHY_BIST_STAT4                     B43_PHY_N(0x156) /* BIST status 4 */
 501#define B43_NPHY_RADAR_MAL                      B43_PHY_N(0x157) /* Radar MA length */
 502#define B43_NPHY_RADAR_SRCCTL                   B43_PHY_N(0x158) /* Radar search control */
 503#define B43_NPHY_VLD_DTSIG                      B43_PHY_N(0x159) /* VLD data tones sig */
 504#define B43_NPHY_VLD_DTDAT                      B43_PHY_N(0x15A) /* VLD data tones data */
 505#define B43_NPHY_C1_BPHY_RXIQCA0                B43_PHY_N(0x15B) /* Core 1 B PHY RX I/Q comp A0 */
 506#define B43_NPHY_C1_BPHY_RXIQCB0                B43_PHY_N(0x15C) /* Core 1 B PHY RX I/Q comp B0 */
 507#define B43_NPHY_C2_BPHY_RXIQCA1                B43_PHY_N(0x15D) /* Core 2 B PHY RX I/Q comp A1 */
 508#define B43_NPHY_C2_BPHY_RXIQCB1                B43_PHY_N(0x15E) /* Core 2 B PHY RX I/Q comp B1 */
 509#define B43_NPHY_FREQGAIN0                      B43_PHY_N(0x160) /* Frequency gain 0 */
 510#define B43_NPHY_FREQGAIN1                      B43_PHY_N(0x161) /* Frequency gain 1 */
 511#define B43_NPHY_FREQGAIN2                      B43_PHY_N(0x162) /* Frequency gain 2 */
 512#define B43_NPHY_FREQGAIN3                      B43_PHY_N(0x163) /* Frequency gain 3 */
 513#define B43_NPHY_FREQGAIN4                      B43_PHY_N(0x164) /* Frequency gain 4 */
 514#define B43_NPHY_FREQGAIN5                      B43_PHY_N(0x165) /* Frequency gain 5 */
 515#define B43_NPHY_FREQGAIN6                      B43_PHY_N(0x166) /* Frequency gain 6 */
 516#define B43_NPHY_FREQGAIN7                      B43_PHY_N(0x167) /* Frequency gain 7 */
 517#define B43_NPHY_FREQGAIN_BYPASS                B43_PHY_N(0x168) /* Frequency gain bypass */
 518#define B43_NPHY_TRLOSS                         B43_PHY_N(0x169) /* TR loss value */
 519#define B43_NPHY_C1_ADCCLIP                     B43_PHY_N(0x16A) /* Core 1 ADC clip */
 520#define B43_NPHY_C2_ADCCLIP                     B43_PHY_N(0x16B) /* Core 2 ADC clip */
 521#define B43_NPHY_LTRN_OFFGAIN                   B43_PHY_N(0x16F) /* LTRN offset gain */
 522#define B43_NPHY_LTRN_OFF                       B43_PHY_N(0x170) /* LTRN offset */
 523#define B43_NPHY_NRDATAT_WWISE20SIG             B43_PHY_N(0x171) /* # data tones WWiSE 20 sig */
 524#define B43_NPHY_NRDATAT_WWISE40SIG             B43_PHY_N(0x172) /* # data tones WWiSE 40 sig */
 525#define B43_NPHY_NRDATAT_TGNSYNC20SIG           B43_PHY_N(0x173) /* # data tones TGNsync 20 sig */
 526#define B43_NPHY_NRDATAT_TGNSYNC40SIG           B43_PHY_N(0x174) /* # data tones TGNsync 40 sig */
 527#define B43_NPHY_WWISE_CRCM0                    B43_PHY_N(0x175) /* WWiSE CRC mask 0 */
 528#define B43_NPHY_WWISE_CRCM1                    B43_PHY_N(0x176) /* WWiSE CRC mask 1 */
 529#define B43_NPHY_WWISE_CRCM2                    B43_PHY_N(0x177) /* WWiSE CRC mask 2 */
 530#define B43_NPHY_WWISE_CRCM3                    B43_PHY_N(0x178) /* WWiSE CRC mask 3 */
 531#define B43_NPHY_WWISE_CRCM4                    B43_PHY_N(0x179) /* WWiSE CRC mask 4 */
 532#define B43_NPHY_CHANEST_CDDSH                  B43_PHY_N(0x17A) /* Channel estimate CDD shift */
 533#define B43_NPHY_HTAGC_WCNT                     B43_PHY_N(0x17B) /* HT ADC wait counters */
 534#define B43_NPHY_SQPARM                         B43_PHY_N(0x17C) /* SQ params */
 535#define B43_NPHY_MCSDUP6M                       B43_PHY_N(0x17D) /* MCS dup 6M */
 536#define B43_NPHY_NDATAT_DUP40                   B43_PHY_N(0x17E) /* # data tones dup 40 */
 537#define B43_NPHY_DUP40_TGNSYNC_CYCD             B43_PHY_N(0x17F) /* Dup40 TGNsync cycle data */
 538#define B43_NPHY_DUP40_GFBL                     B43_PHY_N(0x180) /* Dup40 GF format BL address */
 539#define B43_NPHY_DUP40_BL                       B43_PHY_N(0x181) /* Dup40 format BL address */
 540#define B43_NPHY_LEGDUP_FTA                     B43_PHY_N(0x182) /* Legacy dup frm table address */
 541#define B43_NPHY_PACPROC_DBG                    B43_PHY_N(0x183) /* Packet processing debug */
 542#define B43_NPHY_PIL_CYC1                       B43_PHY_N(0x184) /* Pilot cycle counter 1 */
 543#define B43_NPHY_PIL_CYC2                       B43_PHY_N(0x185) /* Pilot cycle counter 2 */
 544#define B43_NPHY_TXF_20CO_S0A1                  B43_PHY_N(0x186) /* TX filter 20 coeff stage 0 A1 */
 545#define B43_NPHY_TXF_20CO_S0A2                  B43_PHY_N(0x187) /* TX filter 20 coeff stage 0 A2 */
 546#define B43_NPHY_TXF_20CO_S1A1                  B43_PHY_N(0x188) /* TX filter 20 coeff stage 1 A1 */
 547#define B43_NPHY_TXF_20CO_S1A2                  B43_PHY_N(0x189) /* TX filter 20 coeff stage 1 A2 */
 548#define B43_NPHY_TXF_20CO_S2A1                  B43_PHY_N(0x18A) /* TX filter 20 coeff stage 2 A1 */
 549#define B43_NPHY_TXF_20CO_S2A2                  B43_PHY_N(0x18B) /* TX filter 20 coeff stage 2 A2 */
 550#define B43_NPHY_TXF_20CO_S0B1                  B43_PHY_N(0x18C) /* TX filter 20 coeff stage 0 B1 */
 551#define B43_NPHY_TXF_20CO_S0B2                  B43_PHY_N(0x18D) /* TX filter 20 coeff stage 0 B2 */
 552#define B43_NPHY_TXF_20CO_S0B3                  B43_PHY_N(0x18E) /* TX filter 20 coeff stage 0 B3 */
 553#define B43_NPHY_TXF_20CO_S1B1                  B43_PHY_N(0x18F) /* TX filter 20 coeff stage 1 B1 */
 554#define B43_NPHY_TXF_20CO_S1B2                  B43_PHY_N(0x190) /* TX filter 20 coeff stage 1 B2 */
 555#define B43_NPHY_TXF_20CO_S1B3                  B43_PHY_N(0x191) /* TX filter 20 coeff stage 1 B3 */
 556#define B43_NPHY_TXF_20CO_S2B1                  B43_PHY_N(0x192) /* TX filter 20 coeff stage 2 B1 */
 557#define B43_NPHY_TXF_20CO_S2B2                  B43_PHY_N(0x193) /* TX filter 20 coeff stage 2 B2 */
 558#define B43_NPHY_TXF_20CO_S2B3                  B43_PHY_N(0x194) /* TX filter 20 coeff stage 2 B3 */
 559#define B43_NPHY_TXF_40CO_S0A1                  B43_PHY_N(0x195) /* TX filter 40 coeff stage 0 A1 */
 560#define B43_NPHY_TXF_40CO_S0A2                  B43_PHY_N(0x196) /* TX filter 40 coeff stage 0 A2 */
 561#define B43_NPHY_TXF_40CO_S1A1                  B43_PHY_N(0x197) /* TX filter 40 coeff stage 1 A1 */
 562#define B43_NPHY_TXF_40CO_S1A2                  B43_PHY_N(0x198) /* TX filter 40 coeff stage 1 A2 */
 563#define B43_NPHY_TXF_40CO_S2A1                  B43_PHY_N(0x199) /* TX filter 40 coeff stage 2 A1 */
 564#define B43_NPHY_TXF_40CO_S2A2                  B43_PHY_N(0x19A) /* TX filter 40 coeff stage 2 A2 */
 565#define B43_NPHY_TXF_40CO_S0B1                  B43_PHY_N(0x19B) /* TX filter 40 coeff stage 0 B1 */
 566#define B43_NPHY_TXF_40CO_S0B2                  B43_PHY_N(0x19C) /* TX filter 40 coeff stage 0 B2 */
 567#define B43_NPHY_TXF_40CO_S0B3                  B43_PHY_N(0x19D) /* TX filter 40 coeff stage 0 B3 */
 568#define B43_NPHY_TXF_40CO_S1B1                  B43_PHY_N(0x19E) /* TX filter 40 coeff stage 1 B1 */
 569#define B43_NPHY_TXF_40CO_S1B2                  B43_PHY_N(0x19F) /* TX filter 40 coeff stage 1 B2 */
 570#define B43_NPHY_TXF_40CO_S1B3                  B43_PHY_N(0x1A0) /* TX filter 40 coeff stage 1 B3 */
 571#define B43_NPHY_TXF_40CO_S2B1                  B43_PHY_N(0x1A1) /* TX filter 40 coeff stage 2 B1 */
 572#define B43_NPHY_TXF_40CO_S2B2                  B43_PHY_N(0x1A2) /* TX filter 40 coeff stage 2 B2 */
 573#define B43_NPHY_TXF_40CO_S2B3                  B43_PHY_N(0x1A3) /* TX filter 40 coeff stage 2 B3 */
 574#define B43_NPHY_RSSIMC_0I_RSSI_X               B43_PHY_N(0x1A4) /* RSSI multiplication coefficient 0 I RSSI X */
 575#define B43_NPHY_RSSIMC_0I_RSSI_Y               B43_PHY_N(0x1A5) /* RSSI multiplication coefficient 0 I RSSI Y */
 576#define B43_NPHY_RSSIMC_0I_RSSI_Z               B43_PHY_N(0x1A6) /* RSSI multiplication coefficient 0 I RSSI Z */
 577#define B43_NPHY_RSSIMC_0I_TBD                  B43_PHY_N(0x1A7) /* RSSI multiplication coefficient 0 I TBD */
 578#define B43_NPHY_RSSIMC_0I_PWRDET               B43_PHY_N(0x1A8) /* RSSI multiplication coefficient 0 I power det */
 579#define B43_NPHY_RSSIMC_0I_TSSI                 B43_PHY_N(0x1A9) /* RSSI multiplication coefficient 0 I TSSI */
 580#define B43_NPHY_RSSIMC_0Q_RSSI_X               B43_PHY_N(0x1AA) /* RSSI multiplication coefficient 0 Q RSSI X */
 581#define B43_NPHY_RSSIMC_0Q_RSSI_Y               B43_PHY_N(0x1AB) /* RSSI multiplication coefficient 0 Q RSSI Y */
 582#define B43_NPHY_RSSIMC_0Q_RSSI_Z               B43_PHY_N(0x1AC) /* RSSI multiplication coefficient 0 Q RSSI Z */
 583#define B43_NPHY_RSSIMC_0Q_TBD                  B43_PHY_N(0x1AD) /* RSSI multiplication coefficient 0 Q TBD */
 584#define B43_NPHY_RSSIMC_0Q_PWRDET               B43_PHY_N(0x1AE) /* RSSI multiplication coefficient 0 Q power det */
 585#define B43_NPHY_RSSIMC_0Q_TSSI                 B43_PHY_N(0x1AF) /* RSSI multiplication coefficient 0 Q TSSI */
 586#define B43_NPHY_RSSIMC_1I_RSSI_X               B43_PHY_N(0x1B0) /* RSSI multiplication coefficient 1 I RSSI X */
 587#define B43_NPHY_RSSIMC_1I_RSSI_Y               B43_PHY_N(0x1B1) /* RSSI multiplication coefficient 1 I RSSI Y */
 588#define B43_NPHY_RSSIMC_1I_RSSI_Z               B43_PHY_N(0x1B2) /* RSSI multiplication coefficient 1 I RSSI Z */
 589#define B43_NPHY_RSSIMC_1I_TBD                  B43_PHY_N(0x1B3) /* RSSI multiplication coefficient 1 I TBD */
 590#define B43_NPHY_RSSIMC_1I_PWRDET               B43_PHY_N(0x1B4) /* RSSI multiplication coefficient 1 I power det */
 591#define B43_NPHY_RSSIMC_1I_TSSI                 B43_PHY_N(0x1B5) /* RSSI multiplication coefficient 1 I TSSI */
 592#define B43_NPHY_RSSIMC_1Q_RSSI_X               B43_PHY_N(0x1B6) /* RSSI multiplication coefficient 1 Q RSSI X */
 593#define B43_NPHY_RSSIMC_1Q_RSSI_Y               B43_PHY_N(0x1B7) /* RSSI multiplication coefficient 1 Q RSSI Y */
 594#define B43_NPHY_RSSIMC_1Q_RSSI_Z               B43_PHY_N(0x1B8) /* RSSI multiplication coefficient 1 Q RSSI Z */
 595#define B43_NPHY_RSSIMC_1Q_TBD                  B43_PHY_N(0x1B9) /* RSSI multiplication coefficient 1 Q TBD */
 596#define B43_NPHY_RSSIMC_1Q_PWRDET               B43_PHY_N(0x1BA) /* RSSI multiplication coefficient 1 Q power det */
 597#define B43_NPHY_RSSIMC_1Q_TSSI                 B43_PHY_N(0x1BB) /* RSSI multiplication coefficient 1 Q TSSI */
 598#define B43_NPHY_SAMC_WCNT                      B43_PHY_N(0x1BC) /* Sample collect wait counter */
 599#define B43_NPHY_PTHROUGH_CNT                   B43_PHY_N(0x1BD) /* Pass-through counter */
 600#define B43_NPHY_LTRN_OFF_G20L                  B43_PHY_N(0x1C4) /* LTRN offset gain 20L */
 601#define B43_NPHY_LTRN_OFF_20L                   B43_PHY_N(0x1C5) /* LTRN offset 20L */
 602#define B43_NPHY_LTRN_OFF_G20U                  B43_PHY_N(0x1C6) /* LTRN offset gain 20U */
 603#define B43_NPHY_LTRN_OFF_20U                   B43_PHY_N(0x1C7) /* LTRN offset 20U */
 604#define B43_NPHY_DSSSCCK_GAINSL                 B43_PHY_N(0x1C8) /* DSSS/CCK gain settle length */
 605#define B43_NPHY_GPIO_LOOUT                     B43_PHY_N(0x1C9) /* GPIO low out */
 606#define B43_NPHY_GPIO_HIOUT                     B43_PHY_N(0x1CA) /* GPIO high out */
 607#define B43_NPHY_CRS_CHECK                      B43_PHY_N(0x1CB) /* CRS check */
 608#define B43_NPHY_ML_LOGSS_RAT                   B43_PHY_N(0x1CC) /* ML/logss ratio */
 609#define B43_NPHY_DUPSCALE                       B43_PHY_N(0x1CD) /* Dup scale */
 610#define B43_NPHY_BW1A                           B43_PHY_N(0x1CE) /* BW 1A */
 611#define B43_NPHY_BW2                            B43_PHY_N(0x1CF) /* BW 2 */
 612#define B43_NPHY_BW3                            B43_PHY_N(0x1D0) /* BW 3 */
 613#define B43_NPHY_BW4                            B43_PHY_N(0x1D1) /* BW 4 */
 614#define B43_NPHY_BW5                            B43_PHY_N(0x1D2) /* BW 5 */
 615#define B43_NPHY_BW6                            B43_PHY_N(0x1D3) /* BW 6 */
 616#define B43_NPHY_COALEN0                        B43_PHY_N(0x1D4) /* Coarse length 0 */
 617#define B43_NPHY_COALEN1                        B43_PHY_N(0x1D5) /* Coarse length 1 */
 618#define B43_NPHY_CRSTHRES_1U                    B43_PHY_N(0x1D6) /* CRS threshold 1 U */
 619#define B43_NPHY_CRSTHRES_2U                    B43_PHY_N(0x1D7) /* CRS threshold 2 U */
 620#define B43_NPHY_CRSTHRES_3U                    B43_PHY_N(0x1D8) /* CRS threshold 3 U */
 621#define B43_NPHY_CRSCTL_U                       B43_PHY_N(0x1D9) /* CRS control U */
 622#define B43_NPHY_CRSTHRES_1L                    B43_PHY_N(0x1DA) /* CRS threshold 1 L */
 623#define B43_NPHY_CRSTHRES_2L                    B43_PHY_N(0x1DB) /* CRS threshold 2 L */
 624#define B43_NPHY_CRSTHRES_3L                    B43_PHY_N(0x1DC) /* CRS threshold 3 L */
 625#define B43_NPHY_CRSCTL_L                       B43_PHY_N(0x1DD) /* CRS control L */
 626#define B43_NPHY_STRA_1U                        B43_PHY_N(0x1DE) /* STR address 1 U */
 627#define B43_NPHY_STRA_2U                        B43_PHY_N(0x1DF) /* STR address 2 U */
 628#define B43_NPHY_STRA_1L                        B43_PHY_N(0x1E0) /* STR address 1 L */
 629#define B43_NPHY_STRA_2L                        B43_PHY_N(0x1E1) /* STR address 2 L */
 630#define B43_NPHY_CRSCHECK1                      B43_PHY_N(0x1E2) /* CRS check 1 */
 631#define B43_NPHY_CRSCHECK2                      B43_PHY_N(0x1E3) /* CRS check 2 */
 632#define B43_NPHY_CRSCHECK3                      B43_PHY_N(0x1E4) /* CRS check 3 */
 633#define B43_NPHY_JMPSTP0                        B43_PHY_N(0x1E5) /* Jump step 0 */
 634#define B43_NPHY_JMPSTP1                        B43_PHY_N(0x1E6) /* Jump step 1 */
 635#define B43_NPHY_TXPCTL_CMD                     B43_PHY_N(0x1E7) /* TX power control command */
 636#define  B43_NPHY_TXPCTL_CMD_INIT               0x007F /* Init */
 637#define  B43_NPHY_TXPCTL_CMD_INIT_SHIFT         0
 638#define  B43_NPHY_TXPCTL_CMD_COEFF              0x2000 /* Power control coefficients */
 639#define  B43_NPHY_TXPCTL_CMD_HWPCTLEN           0x4000 /* Hardware TX power control enable */
 640#define  B43_NPHY_TXPCTL_CMD_PCTLEN             0x8000 /* TX power control enable */
 641#define B43_NPHY_TXPCTL_N                       B43_PHY_N(0x1E8) /* TX power control N num */
 642#define  B43_NPHY_TXPCTL_N_TSSID                0x00FF /* N TSSI delay */
 643#define  B43_NPHY_TXPCTL_N_TSSID_SHIFT          0
 644#define  B43_NPHY_TXPCTL_N_NPTIL2               0x0700 /* N PT integer log2 */
 645#define  B43_NPHY_TXPCTL_N_NPTIL2_SHIFT         8
 646#define B43_NPHY_TXPCTL_ITSSI                   B43_PHY_N(0x1E9) /* TX power control idle TSSI */
 647#define  B43_NPHY_TXPCTL_ITSSI_0                0x003F /* Idle TSSI 0 */
 648#define  B43_NPHY_TXPCTL_ITSSI_0_SHIFT          0
 649#define  B43_NPHY_TXPCTL_ITSSI_1                0x3F00 /* Idle TSSI 1 */
 650#define  B43_NPHY_TXPCTL_ITSSI_1_SHIFT          8
 651#define  B43_NPHY_TXPCTL_ITSSI_BINF             0x8000 /* Raw TSSI offset bin format */
 652#define B43_NPHY_TXPCTL_TPWR                    B43_PHY_N(0x1EA) /* TX power control target power */
 653#define  B43_NPHY_TXPCTL_TPWR_0                 0x00FF /* Power 0 */
 654#define  B43_NPHY_TXPCTL_TPWR_0_SHIFT           0
 655#define  B43_NPHY_TXPCTL_TPWR_1                 0xFF00 /* Power 1 */
 656#define  B43_NPHY_TXPCTL_TPWR_1_SHIFT           8
 657#define B43_NPHY_TXPCTL_BIDX                    B43_PHY_N(0x1EB) /* TX power control base index */
 658#define  B43_NPHY_TXPCTL_BIDX_0                 0x007F /* uC base index 0 */
 659#define  B43_NPHY_TXPCTL_BIDX_0_SHIFT           0
 660#define  B43_NPHY_TXPCTL_BIDX_1                 0x7F00 /* uC base index 1 */
 661#define  B43_NPHY_TXPCTL_BIDX_1_SHIFT           8
 662#define  B43_NPHY_TXPCTL_BIDX_LOAD              0x8000 /* Load base index */
 663#define B43_NPHY_TXPCTL_PIDX                    B43_PHY_N(0x1EC) /* TX power control power index */
 664#define  B43_NPHY_TXPCTL_PIDX_0                 0x007F /* uC power index 0 */
 665#define  B43_NPHY_TXPCTL_PIDX_0_SHIFT           0
 666#define  B43_NPHY_TXPCTL_PIDX_1                 0x7F00 /* uC power index 1 */
 667#define  B43_NPHY_TXPCTL_PIDX_1_SHIFT           8
 668#define B43_NPHY_C1_TXPCTL_STAT                 B43_PHY_N(0x1ED) /* Core 1 TX power control status */
 669#define B43_NPHY_C2_TXPCTL_STAT                 B43_PHY_N(0x1EE) /* Core 2 TX power control status */
 670#define  B43_NPHY_TXPCTL_STAT_EST               0x00FF /* Estimated power */
 671#define  B43_NPHY_TXPCTL_STAT_EST_SHIFT         0
 672#define  B43_NPHY_TXPCTL_STAT_BIDX              0x7F00 /* Base index */
 673#define  B43_NPHY_TXPCTL_STAT_BIDX_SHIFT        8
 674#define  B43_NPHY_TXPCTL_STAT_ESTVALID          0x8000 /* Estimated power valid */
 675#define B43_NPHY_SMALLSGS_LEN                   B43_PHY_N(0x1EF) /* Small sig gain settle length */
 676#define B43_NPHY_PHYSTAT_GAIN0                  B43_PHY_N(0x1F0) /* PHY stats gain info 0 */
 677#define B43_NPHY_PHYSTAT_GAIN1                  B43_PHY_N(0x1F1) /* PHY stats gain info 1 */
 678#define B43_NPHY_PHYSTAT_FREQEST                B43_PHY_N(0x1F2) /* PHY stats frequency estimate */
 679#define B43_NPHY_PHYSTAT_ADVRET                 B43_PHY_N(0x1F3) /* PHY stats ADV retard */
 680#define B43_NPHY_PHYLB_MODE                     B43_PHY_N(0x1F4) /* PHY loopback mode */
 681#define B43_NPHY_TONE_MIDX20_1                  B43_PHY_N(0x1F5) /* Tone map index 20/1 */
 682#define B43_NPHY_TONE_MIDX20_2                  B43_PHY_N(0x1F6) /* Tone map index 20/2 */
 683#define B43_NPHY_TONE_MIDX20_3                  B43_PHY_N(0x1F7) /* Tone map index 20/3 */
 684#define B43_NPHY_TONE_MIDX40_1                  B43_PHY_N(0x1F8) /* Tone map index 40/1 */
 685#define B43_NPHY_TONE_MIDX40_2                  B43_PHY_N(0x1F9) /* Tone map index 40/2 */
 686#define B43_NPHY_TONE_MIDX40_3                  B43_PHY_N(0x1FA) /* Tone map index 40/3 */
 687#define B43_NPHY_TONE_MIDX40_4                  B43_PHY_N(0x1FB) /* Tone map index 40/4 */
 688#define B43_NPHY_PILTONE_MIDX1                  B43_PHY_N(0x1FC) /* Pilot tone map index 1 */
 689#define B43_NPHY_PILTONE_MIDX2                  B43_PHY_N(0x1FD) /* Pilot tone map index 2 */
 690#define B43_NPHY_PILTONE_MIDX3                  B43_PHY_N(0x1FE) /* Pilot tone map index 3 */
 691#define B43_NPHY_TXRIFS_FRDEL                   B43_PHY_N(0x1FF) /* TX RIFS frame delay */
 692#define B43_NPHY_AFESEQ_RX2TX_PUD_40M           B43_PHY_N(0x200) /* AFE seq rx2tx power up/down delay 40M */
 693#define B43_NPHY_AFESEQ_TX2RX_PUD_40M           B43_PHY_N(0x201) /* AFE seq tx2rx power up/down delay 40M */
 694#define B43_NPHY_AFESEQ_RX2TX_PUD_20M           B43_PHY_N(0x202) /* AFE seq rx2tx power up/down delay 20M */
 695#define B43_NPHY_AFESEQ_TX2RX_PUD_20M           B43_PHY_N(0x203) /* AFE seq tx2rx power up/down delay 20M */
 696#define B43_NPHY_RX_SIGCTL                      B43_PHY_N(0x204) /* RX signal control */
 697#define B43_NPHY_RXPIL_CYCNT0                   B43_PHY_N(0x205) /* RX pilot cycle counter 0 */
 698#define B43_NPHY_RXPIL_CYCNT1                   B43_PHY_N(0x206) /* RX pilot cycle counter 1 */
 699#define B43_NPHY_RXPIL_CYCNT2                   B43_PHY_N(0x207) /* RX pilot cycle counter 2 */
 700#define B43_NPHY_AFESEQ_RX2TX_PUD_10M           B43_PHY_N(0x208) /* AFE seq rx2tx power up/down delay 10M */
 701#define B43_NPHY_AFESEQ_TX2RX_PUD_10M           B43_PHY_N(0x209) /* AFE seq tx2rx power up/down delay 10M */
 702#define B43_NPHY_DSSSCCK_CRSEXTL                B43_PHY_N(0x20A) /* DSSS/CCK CRS extension length */
 703#define B43_NPHY_ML_LOGSS_RATSLOPE              B43_PHY_N(0x20B) /* ML/logss ratio slope */
 704#define B43_NPHY_RIFS_SRCTL                     B43_PHY_N(0x20C) /* RIFS search timeout length */
 705#define B43_NPHY_TXREALFD                       B43_PHY_N(0x20D) /* TX real frame delay */
 706#define B43_NPHY_HPANT_SWTHRES                  B43_PHY_N(0x20E) /* High power antenna switch threshold */
 707#define B43_NPHY_EDCRS_ASSTHRES0                B43_PHY_N(0x210) /* ED CRS assert threshold 0 */
 708#define B43_NPHY_EDCRS_ASSTHRES1                B43_PHY_N(0x211) /* ED CRS assert threshold 1 */
 709#define B43_NPHY_EDCRS_DEASSTHRES0              B43_PHY_N(0x212) /* ED CRS deassert threshold 0 */
 710#define B43_NPHY_EDCRS_DEASSTHRES1              B43_PHY_N(0x213) /* ED CRS deassert threshold 1 */
 711#define B43_NPHY_STR_WTIME20U                   B43_PHY_N(0x214) /* STR wait time 20U */
 712#define B43_NPHY_STR_WTIME20L                   B43_PHY_N(0x215) /* STR wait time 20L */
 713#define B43_NPHY_TONE_MIDX657M                  B43_PHY_N(0x216) /* Tone map index 657M */
 714#define B43_NPHY_HTSIGTONES                     B43_PHY_N(0x217) /* HT signal tones */
 715#define B43_NPHY_RSSI1                          B43_PHY_N(0x219) /* RSSI value 1 */
 716#define B43_NPHY_RSSI2                          B43_PHY_N(0x21A) /* RSSI value 2 */
 717#define B43_NPHY_CHAN_ESTHANG                   B43_PHY_N(0x21D) /* Channel estimate hang */
 718#define B43_NPHY_FINERX2_CGC                    B43_PHY_N(0x221) /* Fine RX 2 clock gate control */
 719#define  B43_NPHY_FINERX2_CGC_DECGC             0x0008 /* Decode gated clocks */
 720#define B43_NPHY_TXPCTL_INIT                    B43_PHY_N(0x222) /* TX power control init */
 721#define  B43_NPHY_TXPCTL_INIT_PIDXI1            0x00FF /* Power index init 1 */
 722#define  B43_NPHY_TXPCTL_INIT_PIDXI1_SHIFT      0
 723#define B43_NPHY_ED_CRSEN                       B43_PHY_N(0x223)
 724#define B43_NPHY_ED_CRS40ASSERTTHRESH0          B43_PHY_N(0x224)
 725#define B43_NPHY_ED_CRS40ASSERTTHRESH1          B43_PHY_N(0x225)
 726#define B43_NPHY_ED_CRS40DEASSERTTHRESH0        B43_PHY_N(0x226)
 727#define B43_NPHY_ED_CRS40DEASSERTTHRESH1        B43_PHY_N(0x227)
 728#define B43_NPHY_ED_CRS20LASSERTTHRESH0         B43_PHY_N(0x228)
 729#define B43_NPHY_ED_CRS20LASSERTTHRESH1         B43_PHY_N(0x229)
 730#define B43_NPHY_ED_CRS20LDEASSERTTHRESH0       B43_PHY_N(0x22A)
 731#define B43_NPHY_ED_CRS20LDEASSERTTHRESH1       B43_PHY_N(0x22B)
 732#define B43_NPHY_ED_CRS20UASSERTTHRESH0         B43_PHY_N(0x22C)
 733#define B43_NPHY_ED_CRS20UASSERTTHRESH1         B43_PHY_N(0x22D)
 734#define B43_NPHY_ED_CRS20UDEASSERTTHRESH0       B43_PHY_N(0x22E)
 735#define B43_NPHY_ED_CRS20UDEASSERTTHRESH1       B43_PHY_N(0x22F)
 736#define B43_NPHY_ED_CRS                         B43_PHY_N(0x230)
 737#define B43_NPHY_TIMEOUTEN                      B43_PHY_N(0x231)
 738#define B43_NPHY_OFDMPAYDECODETIMEOUTLEN        B43_PHY_N(0x232)
 739#define B43_NPHY_CCKPAYDECODETIMEOUTLEN         B43_PHY_N(0x233)
 740#define B43_NPHY_NONPAYDECODETIMEOUTLEN         B43_PHY_N(0x234)
 741#define B43_NPHY_TIMEOUTSTATUS                  B43_PHY_N(0x235)
 742#define B43_NPHY_RFCTRLCORE0GPIO0               B43_PHY_N(0x236)
 743#define B43_NPHY_RFCTRLCORE0GPIO1               B43_PHY_N(0x237)
 744#define B43_NPHY_RFCTRLCORE0GPIO2               B43_PHY_N(0x238)
 745#define B43_NPHY_RFCTRLCORE0GPIO3               B43_PHY_N(0x239)
 746#define B43_NPHY_RFCTRLCORE1GPIO0               B43_PHY_N(0x23A)
 747#define B43_NPHY_RFCTRLCORE1GPIO1               B43_PHY_N(0x23B)
 748#define B43_NPHY_RFCTRLCORE1GPIO2               B43_PHY_N(0x23C)
 749#define B43_NPHY_RFCTRLCORE1GPIO3               B43_PHY_N(0x23D)
 750#define B43_NPHY_BPHYTESTCONTROL                B43_PHY_N(0x23E)
 751/* REV3+ */
 752#define B43_NPHY_FORCEFRONT0                    B43_PHY_N(0x23F)
 753#define B43_NPHY_FORCEFRONT1                    B43_PHY_N(0x240)
 754#define B43_NPHY_NORMVARHYSTTH                  B43_PHY_N(0x241)
 755#define B43_NPHY_TXCCKERROR                     B43_PHY_N(0x242)
 756#define B43_NPHY_AFESEQINITDACGAIN              B43_PHY_N(0x243)
 757#define B43_NPHY_TXANTSWLUT                     B43_PHY_N(0x244)
 758#define B43_NPHY_CORECONFIG                     B43_PHY_N(0x245)
 759#define B43_NPHY_ANTENNADIVDWELLTIME            B43_PHY_N(0x246)
 760#define B43_NPHY_ANTENNACCKDIVDWELLTIME         B43_PHY_N(0x247)
 761#define B43_NPHY_ANTENNADIVBACKOFFGAIN          B43_PHY_N(0x248)
 762#define B43_NPHY_ANTENNADIVMINGAIN              B43_PHY_N(0x249)
 763#define B43_NPHY_BRDSEL_NORMVARHYSTTH           B43_PHY_N(0x24A)
 764#define B43_NPHY_RXANTSWITCHCTRL                B43_PHY_N(0x24B)
 765#define B43_NPHY_ENERGYDROPTIMEOUTLEN2          B43_PHY_N(0x24C)
 766#define B43_NPHY_ML_LOG_TXEVM0                  B43_PHY_N(0x250)
 767#define B43_NPHY_ML_LOG_TXEVM1                  B43_PHY_N(0x251)
 768#define B43_NPHY_ML_LOG_TXEVM2                  B43_PHY_N(0x252)
 769#define B43_NPHY_ML_LOG_TXEVM3                  B43_PHY_N(0x253)
 770#define B43_NPHY_ML_LOG_TXEVM4                  B43_PHY_N(0x254)
 771#define B43_NPHY_ML_LOG_TXEVM5                  B43_PHY_N(0x255)
 772#define B43_NPHY_ML_LOG_TXEVM6                  B43_PHY_N(0x256)
 773#define B43_NPHY_ML_LOG_TXEVM7                  B43_PHY_N(0x257)
 774#define B43_NPHY_ML_SCALE_TWEAK                 B43_PHY_N(0x258)
 775#define B43_NPHY_MLUA                           B43_PHY_N(0x259)
 776#define B43_NPHY_ZFUA                           B43_PHY_N(0x25A)
 777#define B43_NPHY_CHANUPSYM01                    B43_PHY_N(0x25B)
 778#define B43_NPHY_CHANUPSYM2                     B43_PHY_N(0x25C)
 779#define B43_NPHY_RXSTRNFILT20NUM00              B43_PHY_N(0x25D)
 780#define B43_NPHY_RXSTRNFILT20NUM01              B43_PHY_N(0x25E)
 781#define B43_NPHY_RXSTRNFILT20NUM02              B43_PHY_N(0x25F)
 782#define B43_NPHY_RXSTRNFILT20DEN00              B43_PHY_N(0x260)
 783#define B43_NPHY_RXSTRNFILT20DEN01              B43_PHY_N(0x261)
 784#define B43_NPHY_RXSTRNFILT20NUM10              B43_PHY_N(0x262)
 785#define B43_NPHY_RXSTRNFILT20NUM11              B43_PHY_N(0x263)
 786#define B43_NPHY_RXSTRNFILT20NUM12              B43_PHY_N(0x264)
 787#define B43_NPHY_RXSTRNFILT20DEN10              B43_PHY_N(0x265)
 788#define B43_NPHY_RXSTRNFILT20DEN11              B43_PHY_N(0x266)
 789#define B43_NPHY_RXSTRNFILT40NUM00              B43_PHY_N(0x267)
 790#define B43_NPHY_RXSTRNFILT40NUM01              B43_PHY_N(0x268)
 791#define B43_NPHY_RXSTRNFILT40NUM02              B43_PHY_N(0x269)
 792#define B43_NPHY_RXSTRNFILT40DEN00              B43_PHY_N(0x26A)
 793#define B43_NPHY_RXSTRNFILT40DEN01              B43_PHY_N(0x26B)
 794#define B43_NPHY_RXSTRNFILT40NUM10              B43_PHY_N(0x26C)
 795#define B43_NPHY_RXSTRNFILT40NUM11              B43_PHY_N(0x26D)
 796#define B43_NPHY_RXSTRNFILT40NUM12              B43_PHY_N(0x26E)
 797#define B43_NPHY_RXSTRNFILT40DEN10              B43_PHY_N(0x26F)
 798#define B43_NPHY_RXSTRNFILT40DEN11              B43_PHY_N(0x270)
 799#define B43_NPHY_CRSHIGHPOWTHRESHOLD1           B43_PHY_N(0x271)
 800#define B43_NPHY_CRSHIGHPOWTHRESHOLD2           B43_PHY_N(0x272)
 801#define B43_NPHY_CRSHIGHLOWPOWTHRESHOLD         B43_PHY_N(0x273)
 802#define B43_NPHY_CRSHIGHPOWTHRESHOLD1L          B43_PHY_N(0x274)
 803#define B43_NPHY_CRSHIGHPOWTHRESHOLD2L          B43_PHY_N(0x275)
 804#define B43_NPHY_CRSHIGHLOWPOWTHRESHOLDL        B43_PHY_N(0x276)
 805#define B43_NPHY_CRSHIGHPOWTHRESHOLD1U          B43_PHY_N(0x277)
 806#define B43_NPHY_CRSHIGHPOWTHRESHOLD2U          B43_PHY_N(0x278)
 807#define B43_NPHY_CRSHIGHLOWPOWTHRESHOLDU        B43_PHY_N(0x279)
 808#define B43_NPHY_CRSACIDETECTTHRESH             B43_PHY_N(0x27A)
 809#define B43_NPHY_CRSACIDETECTTHRESHL            B43_PHY_N(0x27B)
 810#define B43_NPHY_CRSACIDETECTTHRESHU            B43_PHY_N(0x27C)
 811#define B43_NPHY_CRSMINPOWER0                   B43_PHY_N(0x27D)
 812#define B43_NPHY_CRSMINPOWER1                   B43_PHY_N(0x27E)
 813#define B43_NPHY_CRSMINPOWER2                   B43_PHY_N(0x27F)
 814#define B43_NPHY_CRSMINPOWERL0                  B43_PHY_N(0x280)
 815#define B43_NPHY_CRSMINPOWERL1                  B43_PHY_N(0x281)
 816#define B43_NPHY_CRSMINPOWERL2                  B43_PHY_N(0x282)
 817#define B43_NPHY_CRSMINPOWERU0                  B43_PHY_N(0x283)
 818#define B43_NPHY_CRSMINPOWERU1                  B43_PHY_N(0x284)
 819#define B43_NPHY_CRSMINPOWERU2                  B43_PHY_N(0x285)
 820#define B43_NPHY_STRPARAM                       B43_PHY_N(0x286)
 821#define B43_NPHY_STRPARAML                      B43_PHY_N(0x287)
 822#define B43_NPHY_STRPARAMU                      B43_PHY_N(0x288)
 823#define B43_NPHY_BPHYCRSMINPOWER0               B43_PHY_N(0x289)
 824#define B43_NPHY_BPHYCRSMINPOWER1               B43_PHY_N(0x28A)
 825#define B43_NPHY_BPHYCRSMINPOWER2               B43_PHY_N(0x28B)
 826#define B43_NPHY_BPHYFILTDEN0COEF               B43_PHY_N(0x28C)
 827#define B43_NPHY_BPHYFILTDEN1COEF               B43_PHY_N(0x28D)
 828#define B43_NPHY_BPHYFILTDEN2COEF               B43_PHY_N(0x28E)
 829#define B43_NPHY_BPHYFILTNUM0COEF               B43_PHY_N(0x28F)
 830#define B43_NPHY_BPHYFILTNUM1COEF               B43_PHY_N(0x290)
 831#define B43_NPHY_BPHYFILTNUM2COEF               B43_PHY_N(0x291)
 832#define B43_NPHY_BPHYFILTNUM01COEF2             B43_PHY_N(0x292)
 833#define B43_NPHY_BPHYFILTBYPASS                 B43_PHY_N(0x293)
 834#define B43_NPHY_SGILTRNOFFSET                  B43_PHY_N(0x294)
 835#define B43_NPHY_RADAR_T2_MIN                   B43_PHY_N(0x295)
 836#define B43_NPHY_TXPWRCTRLDAMPING               B43_PHY_N(0x296)
 837#define B43_NPHY_PAPD_EN0                       B43_PHY_N(0x297) /* PAPD Enable0 TBD */
 838#define B43_NPHY_EPS_TABLE_ADJ0                 B43_PHY_N(0x298) /* EPS Table Adj0 TBD */
 839#define B43_NPHY_EPS_OVERRIDEI_0                B43_PHY_N(0x299)
 840#define B43_NPHY_EPS_OVERRIDEQ_0                B43_PHY_N(0x29A)
 841#define B43_NPHY_PAPD_EN1                       B43_PHY_N(0x29B) /* PAPD Enable1 TBD */
 842#define B43_NPHY_EPS_TABLE_ADJ1                 B43_PHY_N(0x29C) /* EPS Table Adj1 TBD */
 843#define B43_NPHY_EPS_OVERRIDEI_1                B43_PHY_N(0x29D)
 844#define B43_NPHY_EPS_OVERRIDEQ_1                B43_PHY_N(0x29E)
 845#define B43_NPHY_PAPD_CAL_ADDRESS               B43_PHY_N(0x29F)
 846#define B43_NPHY_PAPD_CAL_YREFEPSILON           B43_PHY_N(0x2A0)
 847#define B43_NPHY_PAPD_CAL_SETTLE                B43_PHY_N(0x2A1)
 848#define B43_NPHY_PAPD_CAL_CORRELATE             B43_PHY_N(0x2A2)
 849#define B43_NPHY_PAPD_CAL_SHIFTS0               B43_PHY_N(0x2A3)
 850#define B43_NPHY_PAPD_CAL_SHIFTS1               B43_PHY_N(0x2A4)
 851#define B43_NPHY_SAMPLE_START_ADDR              B43_PHY_N(0x2A5)
 852#define B43_NPHY_RADAR_ADC_TO_DBM               B43_PHY_N(0x2A6)
 853#define B43_NPHY_REV3_C2_INITGAIN_A             B43_PHY_N(0x2A7)
 854#define B43_NPHY_REV3_C2_INITGAIN_B             B43_PHY_N(0x2A8)
 855#define B43_NPHY_REV3_C2_CLIP_HIGAIN_A          B43_PHY_N(0x2A9)
 856#define B43_NPHY_REV3_C2_CLIP_HIGAIN_B          B43_PHY_N(0x2AA)
 857#define B43_NPHY_REV3_C2_CLIP_MEDGAIN_A         B43_PHY_N(0x2AB)
 858#define B43_NPHY_REV3_C2_CLIP_MEDGAIN_B         B43_PHY_N(0x2AC)
 859#define B43_NPHY_REV3_C2_CLIP_LOGAIN_A          B43_PHY_N(0x2AD)
 860#define B43_NPHY_REV3_C2_CLIP_LOGAIN_B          B43_PHY_N(0x2AE)
 861#define B43_NPHY_REV3_C2_CLIP2_GAIN_A           B43_PHY_N(0x2AF)
 862#define B43_NPHY_REV3_C2_CLIP2_GAIN_B           B43_PHY_N(0x2B0)
 863
 864#define B43_NPHY_REV7_RF_CTL_MISC_REG3          B43_PHY_N(0x340)
 865#define B43_NPHY_REV7_RF_CTL_MISC_REG4          B43_PHY_N(0x341)
 866#define B43_NPHY_REV7_RF_CTL_OVER3              B43_PHY_N(0x342)
 867#define B43_NPHY_REV7_RF_CTL_OVER4              B43_PHY_N(0x343)
 868#define B43_NPHY_REV7_RF_CTL_MISC_REG5          B43_PHY_N(0x344)
 869#define B43_NPHY_REV7_RF_CTL_MISC_REG6          B43_PHY_N(0x345)
 870#define B43_NPHY_REV7_RF_CTL_OVER5              B43_PHY_N(0x346)
 871#define B43_NPHY_REV7_RF_CTL_OVER6              B43_PHY_N(0x347)
 872
 873#define B43_PHY_B_BBCFG                         B43_PHY_N_BMODE(0x001) /* BB config */
 874#define  B43_PHY_B_BBCFG_RSTCCA                 0x4000 /* Reset CCA */
 875#define  B43_PHY_B_BBCFG_RSTRX                  0x8000 /* Reset RX */
 876#define B43_PHY_B_TEST                          B43_PHY_N_BMODE(0x00A)
 877
 878struct b43_wldev;
 879
 880enum b43_nphy_spur_avoid {
 881        B43_SPUR_AVOID_DISABLE,
 882        B43_SPUR_AVOID_AUTO,
 883        B43_SPUR_AVOID_FORCE,
 884};
 885
 886struct b43_chanspec {
 887        u16 center_freq;
 888        enum nl80211_channel_type channel_type;
 889};
 890
 891struct b43_phy_n_iq_comp {
 892        s16 a0;
 893        s16 b0;
 894        s16 a1;
 895        s16 b1;
 896};
 897
 898struct b43_phy_n_rssical_cache {
 899        u16 rssical_radio_regs_2G[2];
 900        u16 rssical_phy_regs_2G[12];
 901
 902        u16 rssical_radio_regs_5G[2];
 903        u16 rssical_phy_regs_5G[12];
 904};
 905
 906struct b43_phy_n_cal_cache {
 907        u16 txcal_radio_regs_2G[8];
 908        u16 txcal_coeffs_2G[8];
 909        struct b43_phy_n_iq_comp rxcal_coeffs_2G;
 910
 911        u16 txcal_radio_regs_5G[8];
 912        u16 txcal_coeffs_5G[8];
 913        struct b43_phy_n_iq_comp rxcal_coeffs_5G;
 914};
 915
 916struct b43_phy_n_txpwrindex {
 917        s8 index;
 918        s8 index_internal;
 919        s8 index_internal_save;
 920        u16 AfectrlOverride;
 921        u16 AfeCtrlDacGain;
 922        u16 rad_gain;
 923        u8 bbmult;
 924        u16 iqcomp_a;
 925        u16 iqcomp_b;
 926        u16 locomp;
 927};
 928
 929struct b43_phy_n_pwr_ctl_info {
 930        u8 idle_tssi_2g;
 931        u8 idle_tssi_5g;
 932};
 933
 934struct b43_phy_n {
 935        u8 antsel_type;
 936        u8 cal_orig_pwr_idx[2];
 937        u8 measure_hold;
 938        u8 phyrxchain;
 939        u8 hw_phyrxchain;
 940        u8 hw_phytxchain;
 941        u8 perical;
 942        u32 deaf_count;
 943        u32 rxcalparams;
 944        bool hang_avoid;
 945        bool mute;
 946        u16 papd_epsilon_offset[2];
 947        s32 preamble_override;
 948        u32 bb_mult_save;
 949
 950        bool gain_boost;
 951        bool elna_gain_config;
 952        bool band5g_pwrgain;
 953        bool use_int_tx_iq_lo_cal;
 954        bool lpf_bw_overrode_for_sample_play;
 955
 956        u8 mphase_cal_phase_id;
 957        u16 mphase_txcal_cmdidx;
 958        u16 mphase_txcal_numcmds;
 959        u16 mphase_txcal_bestcoeffs[11];
 960
 961        bool txpwrctrl;
 962        bool pwg_gain_5ghz;
 963        u8 tx_pwr_idx[2];
 964        s8 tx_power_offset[101];
 965        u16 adj_pwr_tbl[84];
 966        u16 txcal_bbmult;
 967        u16 txiqlocal_bestc[11];
 968        bool txiqlocal_coeffsvalid;
 969        struct b43_phy_n_txpwrindex txpwrindex[2];
 970        struct b43_phy_n_pwr_ctl_info pwr_ctl_info[2];
 971        struct b43_chanspec txiqlocal_chanspec;
 972        struct b43_ppr tx_pwr_max_ppr;
 973        u16 tx_pwr_last_recalc_freq;
 974        int tx_pwr_last_recalc_limit;
 975
 976        u8 txrx_chain;
 977        u16 tx_rx_cal_phy_saveregs[11];
 978        u16 tx_rx_cal_radio_saveregs[22];
 979
 980        u16 rfctrl_intc1_save;
 981        u16 rfctrl_intc2_save;
 982
 983        u16 classifier_state;
 984        u16 clip_state[2];
 985
 986        enum b43_nphy_spur_avoid spur_avoid;
 987        bool aband_spurwar_en;
 988        bool gband_spurwar_en;
 989
 990        bool ipa2g_on;
 991        struct b43_chanspec iqcal_chanspec_2G;
 992        struct b43_chanspec rssical_chanspec_2G;
 993
 994        bool ipa5g_on;
 995        struct b43_chanspec iqcal_chanspec_5G;
 996        struct b43_chanspec rssical_chanspec_5G;
 997
 998        struct b43_phy_n_rssical_cache rssical_cache;
 999        struct b43_phy_n_cal_cache cal_cache;
1000        bool crsminpwr_adjusted;
1001        bool noisevars_adjusted;
1002};
1003
1004
1005struct b43_phy_operations;
1006extern const struct b43_phy_operations b43_phyops_n;
1007
1008#endif /* B43_NPHY_H_ */
1009