18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */
28c2ecf20Sopenharmony_ci#ifndef B43_NPHY_H_
38c2ecf20Sopenharmony_ci#define B43_NPHY_H_
48c2ecf20Sopenharmony_ci
58c2ecf20Sopenharmony_ci#include "phy_common.h"
68c2ecf20Sopenharmony_ci#include "ppr.h"
78c2ecf20Sopenharmony_ci
88c2ecf20Sopenharmony_ci
98c2ecf20Sopenharmony_ci/* N-PHY registers. */
108c2ecf20Sopenharmony_ci
118c2ecf20Sopenharmony_ci#define B43_NPHY_BBCFG				B43_PHY_N(0x001) /* BB config */
128c2ecf20Sopenharmony_ci#define  B43_NPHY_BBCFG_RSTCCA			0x4000 /* Reset CCA */
138c2ecf20Sopenharmony_ci#define  B43_NPHY_BBCFG_RSTRX			0x8000 /* Reset RX */
148c2ecf20Sopenharmony_ci#define B43_NPHY_CHANNEL			B43_PHY_N(0x005) /* Channel */
158c2ecf20Sopenharmony_ci#define B43_NPHY_TXERR				B43_PHY_N(0x007) /* TX error */
168c2ecf20Sopenharmony_ci#define B43_NPHY_BANDCTL			B43_PHY_N(0x009) /* Band control */
178c2ecf20Sopenharmony_ci#define  B43_NPHY_BANDCTL_5GHZ			0x0001 /* Use the 5GHz band */
188c2ecf20Sopenharmony_ci#define B43_NPHY_4WI_ADDR			B43_PHY_N(0x00B) /* Four-wire bus address */
198c2ecf20Sopenharmony_ci#define B43_NPHY_4WI_DATAHI			B43_PHY_N(0x00C) /* Four-wire bus data high */
208c2ecf20Sopenharmony_ci#define B43_NPHY_4WI_DATALO			B43_PHY_N(0x00D) /* Four-wire bus data low */
218c2ecf20Sopenharmony_ci#define B43_NPHY_BIST_STAT0			B43_PHY_N(0x00E) /* Built-in self test status 0 */
228c2ecf20Sopenharmony_ci#define B43_NPHY_BIST_STAT1			B43_PHY_N(0x00F) /* Built-in self test status 1 */
238c2ecf20Sopenharmony_ci
248c2ecf20Sopenharmony_ci#define B43_NPHY_C1_DESPWR			B43_PHY_N(0x018) /* Core 1 desired power */
258c2ecf20Sopenharmony_ci#define B43_NPHY_C1_CCK_DESPWR			B43_PHY_N(0x019) /* Core 1 CCK desired power */
268c2ecf20Sopenharmony_ci#define B43_NPHY_C1_BCLIPBKOFF			B43_PHY_N(0x01A) /* Core 1 barely clip backoff */
278c2ecf20Sopenharmony_ci#define B43_NPHY_C1_CCK_BCLIPBKOFF		B43_PHY_N(0x01B) /* Core 1 CCK barely clip backoff */
288c2ecf20Sopenharmony_ci#define B43_NPHY_C1_CGAINI			B43_PHY_N(0x01C) /* Core 1 compute gain info */
298c2ecf20Sopenharmony_ci#define  B43_NPHY_C1_CGAINI_GAINBKOFF		0x001F /* Gain backoff */
308c2ecf20Sopenharmony_ci#define  B43_NPHY_C1_CGAINI_GAINBKOFF_SHIFT	0
318c2ecf20Sopenharmony_ci#define  B43_NPHY_C1_CGAINI_CLIPGBKOFF		0x03E0 /* Clip gain backoff */
328c2ecf20Sopenharmony_ci#define  B43_NPHY_C1_CGAINI_CLIPGBKOFF_SHIFT	5
338c2ecf20Sopenharmony_ci#define  B43_NPHY_C1_CGAINI_GAINSTEP		0x1C00 /* Gain step */
348c2ecf20Sopenharmony_ci#define  B43_NPHY_C1_CGAINI_GAINSTEP_SHIFT	10
358c2ecf20Sopenharmony_ci#define  B43_NPHY_C1_CGAINI_CL2DETECT		0x2000 /* Clip 2 detect mask */
368c2ecf20Sopenharmony_ci#define B43_NPHY_C1_CCK_CGAINI			B43_PHY_N(0x01D) /* Core 1 CCK compute gain info */
378c2ecf20Sopenharmony_ci#define  B43_NPHY_C1_CCK_CGAINI_GAINBKOFF	0x001F /* Gain backoff */
388c2ecf20Sopenharmony_ci#define  B43_NPHY_C1_CCK_CGAINI_CLIPGBKOFF	0x01E0 /* CCK barely clip gain backoff */
398c2ecf20Sopenharmony_ci#define B43_NPHY_C1_MINMAX_GAIN			B43_PHY_N(0x01E) /* Core 1 min/max gain */
408c2ecf20Sopenharmony_ci#define  B43_NPHY_C1_MINGAIN			0x00FF /* Minimum gain */
418c2ecf20Sopenharmony_ci#define  B43_NPHY_C1_MINGAIN_SHIFT		0
428c2ecf20Sopenharmony_ci#define  B43_NPHY_C1_MAXGAIN			0xFF00 /* Maximum gain */
438c2ecf20Sopenharmony_ci#define  B43_NPHY_C1_MAXGAIN_SHIFT		8
448c2ecf20Sopenharmony_ci#define B43_NPHY_C1_CCK_MINMAX_GAIN		B43_PHY_N(0x01F) /* Core 1 CCK min/max gain */
458c2ecf20Sopenharmony_ci#define  B43_NPHY_C1_CCK_MINGAIN		0x00FF /* Minimum gain */
468c2ecf20Sopenharmony_ci#define  B43_NPHY_C1_CCK_MINGAIN_SHIFT		0
478c2ecf20Sopenharmony_ci#define  B43_NPHY_C1_CCK_MAXGAIN		0xFF00 /* Maximum gain */
488c2ecf20Sopenharmony_ci#define  B43_NPHY_C1_CCK_MAXGAIN_SHIFT		8
498c2ecf20Sopenharmony_ci#define B43_NPHY_C1_INITGAIN			B43_PHY_N(0x020) /* Core 1 initial gain code */
508c2ecf20Sopenharmony_ci#define  B43_NPHY_C1_INITGAIN_EXTLNA		0x0001 /* External LNA index */
518c2ecf20Sopenharmony_ci#define  B43_NPHY_C1_INITGAIN_LNA		0x0006 /* LNA index */
528c2ecf20Sopenharmony_ci#define  B43_NPHY_C1_INITGAIN_LNAIDX_SHIFT	1
538c2ecf20Sopenharmony_ci#define  B43_NPHY_C1_INITGAIN_HPVGA1		0x0078 /* HPVGA1 index */
548c2ecf20Sopenharmony_ci#define  B43_NPHY_C1_INITGAIN_HPVGA1_SHIFT	3
558c2ecf20Sopenharmony_ci#define  B43_NPHY_C1_INITGAIN_HPVGA2		0x0F80 /* HPVGA2 index */
568c2ecf20Sopenharmony_ci#define  B43_NPHY_C1_INITGAIN_HPVGA2_SHIFT	7
578c2ecf20Sopenharmony_ci#define  B43_NPHY_C1_INITGAIN_TRRX		0x1000 /* TR RX index */
588c2ecf20Sopenharmony_ci#define  B43_NPHY_C1_INITGAIN_TRTX		0x2000 /* TR TX index */
598c2ecf20Sopenharmony_ci#define B43_NPHY_REV3_C1_INITGAIN_A		B43_PHY_N(0x020)
608c2ecf20Sopenharmony_ci#define B43_NPHY_C1_CLIP1_HIGAIN		B43_PHY_N(0x021) /* Core 1 clip1 high gain code */
618c2ecf20Sopenharmony_ci#define B43_NPHY_REV3_C1_INITGAIN_B		B43_PHY_N(0x021)
628c2ecf20Sopenharmony_ci#define B43_NPHY_C1_CLIP1_MEDGAIN		B43_PHY_N(0x022) /* Core 1 clip1 medium gain code */
638c2ecf20Sopenharmony_ci#define B43_NPHY_REV3_C1_CLIP_HIGAIN_A		B43_PHY_N(0x022)
648c2ecf20Sopenharmony_ci#define B43_NPHY_C1_CLIP1_LOGAIN		B43_PHY_N(0x023) /* Core 1 clip1 low gain code */
658c2ecf20Sopenharmony_ci#define B43_NPHY_REV3_C1_CLIP_HIGAIN_B		B43_PHY_N(0x023)
668c2ecf20Sopenharmony_ci#define B43_NPHY_C1_CLIP2_GAIN			B43_PHY_N(0x024) /* Core 1 clip2 gain code */
678c2ecf20Sopenharmony_ci#define B43_NPHY_REV3_C1_CLIP_MEDGAIN_A		B43_PHY_N(0x024)
688c2ecf20Sopenharmony_ci#define B43_NPHY_C1_FILTERGAIN			B43_PHY_N(0x025) /* Core 1 filter gain */
698c2ecf20Sopenharmony_ci#define B43_NPHY_C1_LPF_QHPF_BW			B43_PHY_N(0x026) /* Core 1 LPF Q HP F bandwidth */
708c2ecf20Sopenharmony_ci#define B43_NPHY_C1_CLIPWBTHRES			B43_PHY_N(0x027) /* Core 1 clip wideband threshold */
718c2ecf20Sopenharmony_ci#define  B43_NPHY_C1_CLIPWBTHRES_CLIP2		0x003F /* Clip 2 */
728c2ecf20Sopenharmony_ci#define  B43_NPHY_C1_CLIPWBTHRES_CLIP2_SHIFT	0
738c2ecf20Sopenharmony_ci#define  B43_NPHY_C1_CLIPWBTHRES_CLIP1		0x0FC0 /* Clip 1 */
748c2ecf20Sopenharmony_ci#define  B43_NPHY_C1_CLIPWBTHRES_CLIP1_SHIFT	6
758c2ecf20Sopenharmony_ci#define B43_NPHY_C1_W1THRES			B43_PHY_N(0x028) /* Core 1 W1 threshold */
768c2ecf20Sopenharmony_ci#define B43_NPHY_C1_EDTHRES			B43_PHY_N(0x029) /* Core 1 ED threshold */
778c2ecf20Sopenharmony_ci#define B43_NPHY_C1_SMSIGTHRES			B43_PHY_N(0x02A) /* Core 1 small sig threshold */
788c2ecf20Sopenharmony_ci#define B43_NPHY_C1_NBCLIPTHRES			B43_PHY_N(0x02B) /* Core 1 NB clip threshold */
798c2ecf20Sopenharmony_ci#define B43_NPHY_C1_CLIP1THRES			B43_PHY_N(0x02C) /* Core 1 clip1 threshold */
808c2ecf20Sopenharmony_ci#define B43_NPHY_C1_CLIP2THRES			B43_PHY_N(0x02D) /* Core 1 clip2 threshold */
818c2ecf20Sopenharmony_ci
828c2ecf20Sopenharmony_ci#define B43_NPHY_C2_DESPWR			B43_PHY_N(0x02E) /* Core 2 desired power */
838c2ecf20Sopenharmony_ci#define B43_NPHY_C2_CCK_DESPWR			B43_PHY_N(0x02F) /* Core 2 CCK desired power */
848c2ecf20Sopenharmony_ci#define B43_NPHY_C2_BCLIPBKOFF			B43_PHY_N(0x030) /* Core 2 barely clip backoff */
858c2ecf20Sopenharmony_ci#define B43_NPHY_C2_CCK_BCLIPBKOFF		B43_PHY_N(0x031) /* Core 2 CCK barely clip backoff */
868c2ecf20Sopenharmony_ci#define B43_NPHY_C2_CGAINI			B43_PHY_N(0x032) /* Core 2 compute gain info */
878c2ecf20Sopenharmony_ci#define  B43_NPHY_C2_CGAINI_GAINBKOFF		0x001F /* Gain backoff */
888c2ecf20Sopenharmony_ci#define  B43_NPHY_C2_CGAINI_GAINBKOFF_SHIFT	0
898c2ecf20Sopenharmony_ci#define  B43_NPHY_C2_CGAINI_CLIPGBKOFF		0x03E0 /* Clip gain backoff */
908c2ecf20Sopenharmony_ci#define  B43_NPHY_C2_CGAINI_CLIPGBKOFF_SHIFT	5
918c2ecf20Sopenharmony_ci#define  B43_NPHY_C2_CGAINI_GAINSTEP		0x1C00 /* Gain step */
928c2ecf20Sopenharmony_ci#define  B43_NPHY_C2_CGAINI_GAINSTEP_SHIFT	10
938c2ecf20Sopenharmony_ci#define  B43_NPHY_C2_CGAINI_CL2DETECT		0x2000 /* Clip 2 detect mask */
948c2ecf20Sopenharmony_ci#define B43_NPHY_C2_CCK_CGAINI			B43_PHY_N(0x033) /* Core 2 CCK compute gain info */
958c2ecf20Sopenharmony_ci#define  B43_NPHY_C2_CCK_CGAINI_GAINBKOFF	0x001F /* Gain backoff */
968c2ecf20Sopenharmony_ci#define  B43_NPHY_C2_CCK_CGAINI_CLIPGBKOFF	0x01E0 /* CCK barely clip gain backoff */
978c2ecf20Sopenharmony_ci#define B43_NPHY_C2_MINMAX_GAIN			B43_PHY_N(0x034) /* Core 2 min/max gain */
988c2ecf20Sopenharmony_ci#define  B43_NPHY_C2_MINGAIN			0x00FF /* Minimum gain */
998c2ecf20Sopenharmony_ci#define  B43_NPHY_C2_MINGAIN_SHIFT		0
1008c2ecf20Sopenharmony_ci#define  B43_NPHY_C2_MAXGAIN			0xFF00 /* Maximum gain */
1018c2ecf20Sopenharmony_ci#define  B43_NPHY_C2_MAXGAIN_SHIFT		8
1028c2ecf20Sopenharmony_ci#define B43_NPHY_C2_CCK_MINMAX_GAIN		B43_PHY_N(0x035) /* Core 2 CCK min/max gain */
1038c2ecf20Sopenharmony_ci#define  B43_NPHY_C2_CCK_MINGAIN		0x00FF /* Minimum gain */
1048c2ecf20Sopenharmony_ci#define  B43_NPHY_C2_CCK_MINGAIN_SHIFT		0
1058c2ecf20Sopenharmony_ci#define  B43_NPHY_C2_CCK_MAXGAIN		0xFF00 /* Maximum gain */
1068c2ecf20Sopenharmony_ci#define  B43_NPHY_C2_CCK_MAXGAIN_SHIFT		8
1078c2ecf20Sopenharmony_ci#define B43_NPHY_C2_INITGAIN			B43_PHY_N(0x036) /* Core 2 initial gain code */
1088c2ecf20Sopenharmony_ci#define  B43_NPHY_C2_INITGAIN_EXTLNA		0x0001 /* External LNA index */
1098c2ecf20Sopenharmony_ci#define  B43_NPHY_C2_INITGAIN_LNA		0x0006 /* LNA index */
1108c2ecf20Sopenharmony_ci#define  B43_NPHY_C2_INITGAIN_LNAIDX_SHIFT	1
1118c2ecf20Sopenharmony_ci#define  B43_NPHY_C2_INITGAIN_HPVGA1		0x0078 /* HPVGA1 index */
1128c2ecf20Sopenharmony_ci#define  B43_NPHY_C2_INITGAIN_HPVGA1_SHIFT	3
1138c2ecf20Sopenharmony_ci#define  B43_NPHY_C2_INITGAIN_HPVGA2		0x0F80 /* HPVGA2 index */
1148c2ecf20Sopenharmony_ci#define  B43_NPHY_C2_INITGAIN_HPVGA2_SHIFT	7
1158c2ecf20Sopenharmony_ci#define  B43_NPHY_C2_INITGAIN_TRRX		0x1000 /* TR RX index */
1168c2ecf20Sopenharmony_ci#define  B43_NPHY_C2_INITGAIN_TRTX		0x2000 /* TR TX index */
1178c2ecf20Sopenharmony_ci#define B43_NPHY_REV3_C1_CLIP_MEDGAIN_B		B43_PHY_N(0x036)
1188c2ecf20Sopenharmony_ci#define B43_NPHY_C2_CLIP1_HIGAIN		B43_PHY_N(0x037) /* Core 2 clip1 high gain code */
1198c2ecf20Sopenharmony_ci#define B43_NPHY_REV3_C1_CLIP_LOGAIN_A		B43_PHY_N(0x037)
1208c2ecf20Sopenharmony_ci#define B43_NPHY_C2_CLIP1_MEDGAIN		B43_PHY_N(0x038) /* Core 2 clip1 medium gain code */
1218c2ecf20Sopenharmony_ci#define B43_NPHY_REV3_C1_CLIP_LOGAIN_B		B43_PHY_N(0x038)
1228c2ecf20Sopenharmony_ci#define B43_NPHY_C2_CLIP1_LOGAIN		B43_PHY_N(0x039) /* Core 2 clip1 low gain code */
1238c2ecf20Sopenharmony_ci#define B43_NPHY_REV3_C1_CLIP2_GAIN_A		B43_PHY_N(0x039)
1248c2ecf20Sopenharmony_ci#define B43_NPHY_C2_CLIP2_GAIN			B43_PHY_N(0x03A) /* Core 2 clip2 gain code */
1258c2ecf20Sopenharmony_ci#define B43_NPHY_REV3_C1_CLIP2_GAIN_B		B43_PHY_N(0x03A)
1268c2ecf20Sopenharmony_ci#define B43_NPHY_C2_FILTERGAIN			B43_PHY_N(0x03B) /* Core 2 filter gain */
1278c2ecf20Sopenharmony_ci#define B43_NPHY_C2_LPF_QHPF_BW			B43_PHY_N(0x03C) /* Core 2 LPF Q HP F bandwidth */
1288c2ecf20Sopenharmony_ci#define B43_NPHY_C2_CLIPWBTHRES			B43_PHY_N(0x03D) /* Core 2 clip wideband threshold */
1298c2ecf20Sopenharmony_ci#define  B43_NPHY_C2_CLIPWBTHRES_CLIP2		0x003F /* Clip 2 */
1308c2ecf20Sopenharmony_ci#define  B43_NPHY_C2_CLIPWBTHRES_CLIP2_SHIFT	0
1318c2ecf20Sopenharmony_ci#define  B43_NPHY_C2_CLIPWBTHRES_CLIP1		0x0FC0 /* Clip 1 */
1328c2ecf20Sopenharmony_ci#define  B43_NPHY_C2_CLIPWBTHRES_CLIP1_SHIFT	6
1338c2ecf20Sopenharmony_ci#define B43_NPHY_C2_W1THRES			B43_PHY_N(0x03E) /* Core 2 W1 threshold */
1348c2ecf20Sopenharmony_ci#define B43_NPHY_C2_EDTHRES			B43_PHY_N(0x03F) /* Core 2 ED threshold */
1358c2ecf20Sopenharmony_ci#define B43_NPHY_C2_SMSIGTHRES			B43_PHY_N(0x040) /* Core 2 small sig threshold */
1368c2ecf20Sopenharmony_ci#define B43_NPHY_C2_NBCLIPTHRES			B43_PHY_N(0x041) /* Core 2 NB clip threshold */
1378c2ecf20Sopenharmony_ci#define B43_NPHY_C2_CLIP1THRES			B43_PHY_N(0x042) /* Core 2 clip1 threshold */
1388c2ecf20Sopenharmony_ci#define B43_NPHY_C2_CLIP2THRES			B43_PHY_N(0x043) /* Core 2 clip2 threshold */
1398c2ecf20Sopenharmony_ci
1408c2ecf20Sopenharmony_ci#define B43_NPHY_CRS_THRES1			B43_PHY_N(0x044) /* CRS threshold 1 */
1418c2ecf20Sopenharmony_ci#define B43_NPHY_CRS_THRES2			B43_PHY_N(0x045) /* CRS threshold 2 */
1428c2ecf20Sopenharmony_ci#define B43_NPHY_CRS_THRES3			B43_PHY_N(0x046) /* CRS threshold 3 */
1438c2ecf20Sopenharmony_ci#define B43_NPHY_CRSCTL				B43_PHY_N(0x047) /* CRS control */
1448c2ecf20Sopenharmony_ci#define B43_NPHY_DCFADDR			B43_PHY_N(0x048) /* DC filter address */
1458c2ecf20Sopenharmony_ci#define B43_NPHY_RXF20_NUM0			B43_PHY_N(0x049) /* RX filter 20 numerator 0 */
1468c2ecf20Sopenharmony_ci#define B43_NPHY_RXF20_NUM1			B43_PHY_N(0x04A) /* RX filter 20 numerator 1 */
1478c2ecf20Sopenharmony_ci#define B43_NPHY_RXF20_NUM2			B43_PHY_N(0x04B) /* RX filter 20 numerator 2 */
1488c2ecf20Sopenharmony_ci#define B43_NPHY_RXF20_DENOM0			B43_PHY_N(0x04C) /* RX filter 20 denominator 0 */
1498c2ecf20Sopenharmony_ci#define B43_NPHY_RXF20_DENOM1			B43_PHY_N(0x04D) /* RX filter 20 denominator 1 */
1508c2ecf20Sopenharmony_ci#define B43_NPHY_RXF20_NUM10			B43_PHY_N(0x04E) /* RX filter 20 numerator 10 */
1518c2ecf20Sopenharmony_ci#define B43_NPHY_RXF20_NUM11			B43_PHY_N(0x04F) /* RX filter 20 numerator 11 */
1528c2ecf20Sopenharmony_ci#define B43_NPHY_RXF20_NUM12			B43_PHY_N(0x050) /* RX filter 20 numerator 12 */
1538c2ecf20Sopenharmony_ci#define B43_NPHY_RXF20_DENOM10			B43_PHY_N(0x051) /* RX filter 20 denominator 10 */
1548c2ecf20Sopenharmony_ci#define B43_NPHY_RXF20_DENOM11			B43_PHY_N(0x052) /* RX filter 20 denominator 11 */
1558c2ecf20Sopenharmony_ci#define B43_NPHY_RXF40_NUM0			B43_PHY_N(0x053) /* RX filter 40 numerator 0 */
1568c2ecf20Sopenharmony_ci#define B43_NPHY_RXF40_NUM1			B43_PHY_N(0x054) /* RX filter 40 numerator 1 */
1578c2ecf20Sopenharmony_ci#define B43_NPHY_RXF40_NUM2			B43_PHY_N(0x055) /* RX filter 40 numerator 2 */
1588c2ecf20Sopenharmony_ci#define B43_NPHY_RXF40_DENOM0			B43_PHY_N(0x056) /* RX filter 40 denominator 0 */
1598c2ecf20Sopenharmony_ci#define B43_NPHY_RXF40_DENOM1			B43_PHY_N(0x057) /* RX filter 40 denominator 1 */
1608c2ecf20Sopenharmony_ci#define B43_NPHY_RXF40_NUM10			B43_PHY_N(0x058) /* RX filter 40 numerator 10 */
1618c2ecf20Sopenharmony_ci#define B43_NPHY_RXF40_NUM11			B43_PHY_N(0x059) /* RX filter 40 numerator 11 */
1628c2ecf20Sopenharmony_ci#define B43_NPHY_RXF40_NUM12			B43_PHY_N(0x05A) /* RX filter 40 numerator 12 */
1638c2ecf20Sopenharmony_ci#define B43_NPHY_RXF40_DENOM10			B43_PHY_N(0x05B) /* RX filter 40 denominator 10 */
1648c2ecf20Sopenharmony_ci#define B43_NPHY_RXF40_DENOM11			B43_PHY_N(0x05C) /* RX filter 40 denominator 11 */
1658c2ecf20Sopenharmony_ci#define B43_NPHY_PPROC_RSTLEN			B43_PHY_N(0x060) /* Packet processing reset length */
1668c2ecf20Sopenharmony_ci#define B43_NPHY_INITCARR_DLEN			B43_PHY_N(0x061) /* Initial carrier detection length */
1678c2ecf20Sopenharmony_ci#define B43_NPHY_CLIP1CARR_DLEN			B43_PHY_N(0x062) /* Clip1 carrier detection length */
1688c2ecf20Sopenharmony_ci#define B43_NPHY_CLIP2CARR_DLEN			B43_PHY_N(0x063) /* Clip2 carrier detection length */
1698c2ecf20Sopenharmony_ci#define B43_NPHY_INITGAIN_SLEN			B43_PHY_N(0x064) /* Initial gain settle length */
1708c2ecf20Sopenharmony_ci#define B43_NPHY_CLIP1GAIN_SLEN			B43_PHY_N(0x065) /* Clip1 gain settle length */
1718c2ecf20Sopenharmony_ci#define B43_NPHY_CLIP2GAIN_SLEN			B43_PHY_N(0x066) /* Clip2 gain settle length */
1728c2ecf20Sopenharmony_ci#define B43_NPHY_PACKGAIN_SLEN			B43_PHY_N(0x067) /* Packet gain settle length */
1738c2ecf20Sopenharmony_ci#define B43_NPHY_CARRSRC_TLEN			B43_PHY_N(0x068) /* Carrier search timeout length */
1748c2ecf20Sopenharmony_ci#define B43_NPHY_TISRC_TLEN			B43_PHY_N(0x069) /* Timing search timeout length */
1758c2ecf20Sopenharmony_ci#define B43_NPHY_ENDROP_TLEN			B43_PHY_N(0x06A) /* Energy drop timeout length */
1768c2ecf20Sopenharmony_ci#define B43_NPHY_CLIP1_NBDWELL_LEN		B43_PHY_N(0x06B) /* Clip1 NB dwell length */
1778c2ecf20Sopenharmony_ci#define B43_NPHY_CLIP2_NBDWELL_LEN		B43_PHY_N(0x06C) /* Clip2 NB dwell length */
1788c2ecf20Sopenharmony_ci#define B43_NPHY_W1CLIP1_DWELL_LEN		B43_PHY_N(0x06D) /* W1 clip1 dwell length */
1798c2ecf20Sopenharmony_ci#define B43_NPHY_W1CLIP2_DWELL_LEN		B43_PHY_N(0x06E) /* W1 clip2 dwell length */
1808c2ecf20Sopenharmony_ci#define B43_NPHY_W2CLIP1_DWELL_LEN		B43_PHY_N(0x06F) /* W2 clip1 dwell length */
1818c2ecf20Sopenharmony_ci#define B43_NPHY_PLOAD_CSENSE_EXTLEN		B43_PHY_N(0x070) /* Payload carrier sense extension length */
1828c2ecf20Sopenharmony_ci#define B43_NPHY_EDROP_CSENSE_EXTLEN		B43_PHY_N(0x071) /* Energy drop carrier sense extension length */
1838c2ecf20Sopenharmony_ci#define B43_NPHY_TABLE_ADDR			B43_PHY_N(0x072) /* Table address */
1848c2ecf20Sopenharmony_ci#define B43_NPHY_TABLE_DATALO			B43_PHY_N(0x073) /* Table data low */
1858c2ecf20Sopenharmony_ci#define B43_NPHY_TABLE_DATAHI			B43_PHY_N(0x074) /* Table data high */
1868c2ecf20Sopenharmony_ci#define B43_NPHY_WWISE_LENIDX			B43_PHY_N(0x075) /* WWiSE length index */
1878c2ecf20Sopenharmony_ci#define B43_NPHY_TGNSYNC_LENIDX			B43_PHY_N(0x076) /* TGNsync length index */
1888c2ecf20Sopenharmony_ci#define B43_NPHY_TXMACIF_HOLDOFF		B43_PHY_N(0x077) /* TX MAC IF Hold off */
1898c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTL_CMD			B43_PHY_N(0x078) /* RF control (command) */
1908c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_CMD_START		0x0001 /* Start sequence */
1918c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_CMD_RXTX		0x0002 /* RX/TX */
1928c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_CMD_CORESEL		0x0038 /* Core select */
1938c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_CMD_CORESEL_SHIFT	3
1948c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_CMD_PORFORCE		0x0040 /* POR force */
1958c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_CMD_OEPORFORCE		0x0080 /* OE POR force */
1968c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_CMD_RXEN		0x0100 /* RX enable */
1978c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_CMD_TXEN		0x0200 /* TX enable */
1988c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_CMD_CHIP0PU		0x0400 /* Chip0 PU */
1998c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_CMD_EN			0x0800 /* Radio enabled */
2008c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_CMD_SEQENCORE		0xF000 /* Seq en core */
2018c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_CMD_SEQENCORE_SHIFT	12
2028c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTL_RSSIO1			B43_PHY_N(0x07A) /* RF control (RSSI others 1) */
2038c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_RSSIO1_RXPD		0x0001 /* RX PD */
2048c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_RSSIO1_TXPD		0x0002 /* TX PD */
2058c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_RSSIO1_PAPD		0x0004 /* PA PD */
2068c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_RSSIO1_RSSICTL		0x0030 /* RSSI control */
2078c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_RSSIO1_LPFBW		0x00C0 /* LPF bandwidth */
2088c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_RSSIO1_HPFBWHI		0x0100 /* HPF bandwidth high */
2098c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_RSSIO1_HIQDISCO		0x0200 /* HIQ dis core */
2108c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTL_RXG1			B43_PHY_N(0x07B) /* RF control (RX gain 1) */
2118c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTL_TXG1			B43_PHY_N(0x07C) /* RF control (TX gain 1) */
2128c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTL_RSSIO2			B43_PHY_N(0x07D) /* RF control (RSSI others 2) */
2138c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_RSSIO2_RXPD		0x0001 /* RX PD */
2148c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_RSSIO2_TXPD		0x0002 /* TX PD */
2158c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_RSSIO2_PAPD		0x0004 /* PA PD */
2168c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_RSSIO2_RSSICTL		0x0030 /* RSSI control */
2178c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_RSSIO2_LPFBW		0x00C0 /* LPF bandwidth */
2188c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_RSSIO2_HPFBWHI		0x0100 /* HPF bandwidth high */
2198c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_RSSIO2_HIQDISCO		0x0200 /* HIQ dis core */
2208c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTL_RXG2			B43_PHY_N(0x07E) /* RF control (RX gain 2) */
2218c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTL_TXG2			B43_PHY_N(0x07F) /* RF control (TX gain 2) */
2228c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTL_RSSIO3			B43_PHY_N(0x080) /* RF control (RSSI others 3) */
2238c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_RSSIO3_RXPD		0x0001 /* RX PD */
2248c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_RSSIO3_TXPD		0x0002 /* TX PD */
2258c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_RSSIO3_PAPD		0x0004 /* PA PD */
2268c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_RSSIO3_RSSICTL		0x0030 /* RSSI control */
2278c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_RSSIO3_LPFBW		0x00C0 /* LPF bandwidth */
2288c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_RSSIO3_HPFBWHI		0x0100 /* HPF bandwidth high */
2298c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_RSSIO3_HIQDISCO		0x0200 /* HIQ dis core */
2308c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTL_RXG3			B43_PHY_N(0x081) /* RF control (RX gain 3) */
2318c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTL_TXG3			B43_PHY_N(0x082) /* RF control (TX gain 3) */
2328c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTL_RSSIO4			B43_PHY_N(0x083) /* RF control (RSSI others 4) */
2338c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_RSSIO4_RXPD		0x0001 /* RX PD */
2348c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_RSSIO4_TXPD		0x0002 /* TX PD */
2358c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_RSSIO4_PAPD		0x0004 /* PA PD */
2368c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_RSSIO4_RSSICTL		0x0030 /* RSSI control */
2378c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_RSSIO4_LPFBW		0x00C0 /* LPF bandwidth */
2388c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_RSSIO4_HPFBWHI		0x0100 /* HPF bandwidth high */
2398c2ecf20Sopenharmony_ci#define  B43_NPHY_RFCTL_RSSIO4_HIQDISCO		0x0200 /* HIQ dis core */
2408c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTL_RXG4			B43_PHY_N(0x084) /* RF control (RX gain 4) */
2418c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTL_TXG4			B43_PHY_N(0x085) /* RF control (TX gain 4) */
2428c2ecf20Sopenharmony_ci#define B43_NPHY_C1_TXIQ_COMP_OFF		B43_PHY_N(0x087) /* Core 1 TX I/Q comp offset */
2438c2ecf20Sopenharmony_ci#define B43_NPHY_C2_TXIQ_COMP_OFF		B43_PHY_N(0x088) /* Core 2 TX I/Q comp offset */
2448c2ecf20Sopenharmony_ci#define B43_NPHY_C1_TXCTL			B43_PHY_N(0x08B) /* Core 1 TX control */
2458c2ecf20Sopenharmony_ci#define B43_NPHY_C2_TXCTL			B43_PHY_N(0x08C) /* Core 2 TX control */
2468c2ecf20Sopenharmony_ci#define B43_NPHY_AFECTL_OVER1			B43_PHY_N(0x08F) /* AFE control override 1 */
2478c2ecf20Sopenharmony_ci#define B43_NPHY_SCRAM_SIGCTL			B43_PHY_N(0x090) /* Scram signal control */
2488c2ecf20Sopenharmony_ci#define  B43_NPHY_SCRAM_SIGCTL_INITST		0x007F /* Initial state value */
2498c2ecf20Sopenharmony_ci#define  B43_NPHY_SCRAM_SIGCTL_INITST_SHIFT	0
2508c2ecf20Sopenharmony_ci#define  B43_NPHY_SCRAM_SIGCTL_SCM		0x0080 /* Scram control mode */
2518c2ecf20Sopenharmony_ci#define  B43_NPHY_SCRAM_SIGCTL_SICE		0x0100 /* Scram index control enable */
2528c2ecf20Sopenharmony_ci#define  B43_NPHY_SCRAM_SIGCTL_START		0xFE00 /* Scram start bit */
2538c2ecf20Sopenharmony_ci#define  B43_NPHY_SCRAM_SIGCTL_START_SHIFT	9
2548c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTL_INTC1			B43_PHY_N(0x091) /* RF control (intc 1) */
2558c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTL_INTC2			B43_PHY_N(0x092) /* RF control (intc 2) */
2568c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTL_INTC3			B43_PHY_N(0x093) /* RF control (intc 3) */
2578c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTL_INTC4			B43_PHY_N(0x094) /* RF control (intc 4) */
2588c2ecf20Sopenharmony_ci#define B43_NPHY_NRDTO_WWISE			B43_PHY_N(0x095) /* # datatones WWiSE */
2598c2ecf20Sopenharmony_ci#define B43_NPHY_NRDTO_TGNSYNC			B43_PHY_N(0x096) /* # datatones TGNsync */
2608c2ecf20Sopenharmony_ci#define B43_NPHY_SIGFMOD_WWISE			B43_PHY_N(0x097) /* Signal field mod WWiSE */
2618c2ecf20Sopenharmony_ci#define B43_NPHY_LEG_SIGFMOD_11N		B43_PHY_N(0x098) /* Legacy signal field mod 11n */
2628c2ecf20Sopenharmony_ci#define B43_NPHY_HT_SIGFMOD_11N			B43_PHY_N(0x099) /* HT signal field mod 11n */
2638c2ecf20Sopenharmony_ci#define B43_NPHY_C1_RXIQ_COMPA0			B43_PHY_N(0x09A) /* Core 1 RX I/Q comp A0 */
2648c2ecf20Sopenharmony_ci#define B43_NPHY_C1_RXIQ_COMPB0			B43_PHY_N(0x09B) /* Core 1 RX I/Q comp B0 */
2658c2ecf20Sopenharmony_ci#define B43_NPHY_C2_RXIQ_COMPA1			B43_PHY_N(0x09C) /* Core 2 RX I/Q comp A1 */
2668c2ecf20Sopenharmony_ci#define B43_NPHY_C2_RXIQ_COMPB1			B43_PHY_N(0x09D) /* Core 2 RX I/Q comp B1 */
2678c2ecf20Sopenharmony_ci#define B43_NPHY_RXCTL				B43_PHY_N(0x0A0) /* RX control */
2688c2ecf20Sopenharmony_ci#define  B43_NPHY_RXCTL_BSELU20			0x0010 /* Band select upper 20 */
2698c2ecf20Sopenharmony_ci#define  B43_NPHY_RXCTL_RIFSEN			0x0080 /* RIFS enable */
2708c2ecf20Sopenharmony_ci#define B43_NPHY_RFSEQMODE			B43_PHY_N(0x0A1) /* RF seq mode */
2718c2ecf20Sopenharmony_ci#define  B43_NPHY_RFSEQMODE_CAOVER		0x0001 /* Core active override */
2728c2ecf20Sopenharmony_ci#define  B43_NPHY_RFSEQMODE_TROVER		0x0002 /* Trigger override */
2738c2ecf20Sopenharmony_ci#define B43_NPHY_RFSEQCA			B43_PHY_N(0x0A2) /* RF seq core active */
2748c2ecf20Sopenharmony_ci#define  B43_NPHY_RFSEQCA_TXEN			0x000F /* TX enable */
2758c2ecf20Sopenharmony_ci#define  B43_NPHY_RFSEQCA_TXEN_SHIFT		0
2768c2ecf20Sopenharmony_ci#define  B43_NPHY_RFSEQCA_RXEN			0x00F0 /* RX enable */
2778c2ecf20Sopenharmony_ci#define  B43_NPHY_RFSEQCA_RXEN_SHIFT		4
2788c2ecf20Sopenharmony_ci#define  B43_NPHY_RFSEQCA_TXDIS			0x0F00 /* TX disable */
2798c2ecf20Sopenharmony_ci#define  B43_NPHY_RFSEQCA_TXDIS_SHIFT		8
2808c2ecf20Sopenharmony_ci#define  B43_NPHY_RFSEQCA_RXDIS			0xF000 /* RX disable */
2818c2ecf20Sopenharmony_ci#define  B43_NPHY_RFSEQCA_RXDIS_SHIFT		12
2828c2ecf20Sopenharmony_ci#define B43_NPHY_RFSEQTR			B43_PHY_N(0x0A3) /* RF seq trigger */
2838c2ecf20Sopenharmony_ci#define  B43_NPHY_RFSEQTR_RX2TX			0x0001 /* RX2TX */
2848c2ecf20Sopenharmony_ci#define  B43_NPHY_RFSEQTR_TX2RX			0x0002 /* TX2RX */
2858c2ecf20Sopenharmony_ci#define  B43_NPHY_RFSEQTR_UPGH			0x0004 /* Update gain H */
2868c2ecf20Sopenharmony_ci#define  B43_NPHY_RFSEQTR_UPGL			0x0008 /* Update gain L */
2878c2ecf20Sopenharmony_ci#define  B43_NPHY_RFSEQTR_UPGU			0x0010 /* Update gain U */
2888c2ecf20Sopenharmony_ci#define  B43_NPHY_RFSEQTR_RST2RX		0x0020 /* Reset to RX */
2898c2ecf20Sopenharmony_ci#define B43_NPHY_RFSEQST			B43_PHY_N(0x0A4) /* RF seq status. Values same as trigger. */
2908c2ecf20Sopenharmony_ci#define B43_NPHY_AFECTL_OVER			B43_PHY_N(0x0A5) /* AFE control override */
2918c2ecf20Sopenharmony_ci#define B43_NPHY_AFECTL_C1			B43_PHY_N(0x0A6) /* AFE control core 1 */
2928c2ecf20Sopenharmony_ci#define B43_NPHY_AFECTL_C2			B43_PHY_N(0x0A7) /* AFE control core 2 */
2938c2ecf20Sopenharmony_ci#define B43_NPHY_AFECTL_C3			B43_PHY_N(0x0A8) /* AFE control core 3 */
2948c2ecf20Sopenharmony_ci#define B43_NPHY_AFECTL_C4			B43_PHY_N(0x0A9) /* AFE control core 4 */
2958c2ecf20Sopenharmony_ci#define B43_NPHY_AFECTL_DACGAIN1		B43_PHY_N(0x0AA) /* AFE control DAC gain 1 */
2968c2ecf20Sopenharmony_ci#define B43_NPHY_AFECTL_DACGAIN2		B43_PHY_N(0x0AB) /* AFE control DAC gain 2 */
2978c2ecf20Sopenharmony_ci#define B43_NPHY_AFECTL_DACGAIN3		B43_PHY_N(0x0AC) /* AFE control DAC gain 3 */
2988c2ecf20Sopenharmony_ci#define B43_NPHY_AFECTL_DACGAIN4		B43_PHY_N(0x0AD) /* AFE control DAC gain 4 */
2998c2ecf20Sopenharmony_ci#define B43_NPHY_STR_ADDR1			B43_PHY_N(0x0AE) /* STR address 1 */
3008c2ecf20Sopenharmony_ci#define B43_NPHY_STR_ADDR2			B43_PHY_N(0x0AF) /* STR address 2 */
3018c2ecf20Sopenharmony_ci#define B43_NPHY_CLASSCTL			B43_PHY_N(0x0B0) /* Classifier control */
3028c2ecf20Sopenharmony_ci#define  B43_NPHY_CLASSCTL_CCKEN		0x0001 /* CCK enable */
3038c2ecf20Sopenharmony_ci#define  B43_NPHY_CLASSCTL_OFDMEN		0x0002 /* OFDM enable */
3048c2ecf20Sopenharmony_ci#define  B43_NPHY_CLASSCTL_WAITEDEN		0x0004 /* Waited enable */
3058c2ecf20Sopenharmony_ci#define B43_NPHY_IQFLIP				B43_PHY_N(0x0B1) /* I/Q flip */
3068c2ecf20Sopenharmony_ci#define  B43_NPHY_IQFLIP_ADC1			0x0001 /* ADC1 */
3078c2ecf20Sopenharmony_ci#define  B43_NPHY_IQFLIP_ADC2			0x0010 /* ADC2 */
3088c2ecf20Sopenharmony_ci#define B43_NPHY_SISO_SNR_THRES			B43_PHY_N(0x0B2) /* SISO SNR threshold */
3098c2ecf20Sopenharmony_ci#define B43_NPHY_SIGMA_N_MULT			B43_PHY_N(0x0B3) /* Sigma N multiplier */
3108c2ecf20Sopenharmony_ci#define B43_NPHY_TXMACDELAY			B43_PHY_N(0x0B4) /* TX MAC delay */
3118c2ecf20Sopenharmony_ci#define B43_NPHY_TXFRAMEDELAY			B43_PHY_N(0x0B5) /* TX frame delay */
3128c2ecf20Sopenharmony_ci#define B43_NPHY_MLPARM				B43_PHY_N(0x0B6) /* ML parameters */
3138c2ecf20Sopenharmony_ci#define B43_NPHY_MLCTL				B43_PHY_N(0x0B7) /* ML control */
3148c2ecf20Sopenharmony_ci#define B43_NPHY_WWISE_20NCYCDAT		B43_PHY_N(0x0B8) /* WWiSE 20 N cyc data */
3158c2ecf20Sopenharmony_ci#define B43_NPHY_WWISE_40NCYCDAT		B43_PHY_N(0x0B9) /* WWiSE 40 N cyc data */
3168c2ecf20Sopenharmony_ci#define B43_NPHY_TGNSYNC_20NCYCDAT		B43_PHY_N(0x0BA) /* TGNsync 20 N cyc data */
3178c2ecf20Sopenharmony_ci#define B43_NPHY_TGNSYNC_40NCYCDAT		B43_PHY_N(0x0BB) /* TGNsync 40 N cyc data */
3188c2ecf20Sopenharmony_ci#define B43_NPHY_INITSWIZP			B43_PHY_N(0x0BC) /* Initial swizzle pattern */
3198c2ecf20Sopenharmony_ci#define B43_NPHY_TXTAILCNT			B43_PHY_N(0x0BD) /* TX tail count value */
3208c2ecf20Sopenharmony_ci#define B43_NPHY_BPHY_CTL1			B43_PHY_N(0x0BE) /* B PHY control 1 */
3218c2ecf20Sopenharmony_ci#define B43_NPHY_BPHY_CTL2			B43_PHY_N(0x0BF) /* B PHY control 2 */
3228c2ecf20Sopenharmony_ci#define  B43_NPHY_BPHY_CTL2_LUT			0x001F /* LUT index */
3238c2ecf20Sopenharmony_ci#define  B43_NPHY_BPHY_CTL2_LUT_SHIFT		0
3248c2ecf20Sopenharmony_ci#define  B43_NPHY_BPHY_CTL2_MACDEL		0x7FE0 /* MAC delay */
3258c2ecf20Sopenharmony_ci#define  B43_NPHY_BPHY_CTL2_MACDEL_SHIFT	5
3268c2ecf20Sopenharmony_ci#define B43_NPHY_IQLOCAL_CMD			B43_PHY_N(0x0C0) /* I/Q LO cal command */
3278c2ecf20Sopenharmony_ci#define  B43_NPHY_IQLOCAL_CMD_EN		0x8000
3288c2ecf20Sopenharmony_ci#define B43_NPHY_IQLOCAL_CMDNNUM		B43_PHY_N(0x0C1) /* I/Q LO cal command N num */
3298c2ecf20Sopenharmony_ci#define B43_NPHY_IQLOCAL_CMDGCTL		B43_PHY_N(0x0C2) /* I/Q LO cal command G control */
3308c2ecf20Sopenharmony_ci#define B43_NPHY_SAMP_CMD			B43_PHY_N(0x0C3) /* Sample command */
3318c2ecf20Sopenharmony_ci#define  B43_NPHY_SAMP_CMD_STOP			0x0002 /* Stop */
3328c2ecf20Sopenharmony_ci#define B43_NPHY_SAMP_LOOPCNT			B43_PHY_N(0x0C4) /* Sample loop count */
3338c2ecf20Sopenharmony_ci#define B43_NPHY_SAMP_WAITCNT			B43_PHY_N(0x0C5) /* Sample wait count */
3348c2ecf20Sopenharmony_ci#define B43_NPHY_SAMP_DEPCNT			B43_PHY_N(0x0C6) /* Sample depth count */
3358c2ecf20Sopenharmony_ci#define B43_NPHY_SAMP_STAT			B43_PHY_N(0x0C7) /* Sample status */
3368c2ecf20Sopenharmony_ci#define B43_NPHY_GPIO_LOOEN			B43_PHY_N(0x0C8) /* GPIO low out enable */
3378c2ecf20Sopenharmony_ci#define B43_NPHY_GPIO_HIOEN			B43_PHY_N(0x0C9) /* GPIO high out enable */
3388c2ecf20Sopenharmony_ci#define B43_NPHY_GPIO_SEL			B43_PHY_N(0x0CA) /* GPIO select */
3398c2ecf20Sopenharmony_ci#define B43_NPHY_GPIO_CLKCTL			B43_PHY_N(0x0CB) /* GPIO clock control */
3408c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_20CO_AS0			B43_PHY_N(0x0CC) /* TX filter 20 coeff A stage 0 */
3418c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_20CO_AS1			B43_PHY_N(0x0CD) /* TX filter 20 coeff A stage 1 */
3428c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_20CO_AS2			B43_PHY_N(0x0CE) /* TX filter 20 coeff A stage 2 */
3438c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_20CO_B32S0			B43_PHY_N(0x0CF) /* TX filter 20 coeff B32 stage 0 */
3448c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_20CO_B1S0			B43_PHY_N(0x0D0) /* TX filter 20 coeff B1 stage 0 */
3458c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_20CO_B32S1			B43_PHY_N(0x0D1) /* TX filter 20 coeff B32 stage 1 */
3468c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_20CO_B1S1			B43_PHY_N(0x0D2) /* TX filter 20 coeff B1 stage 1 */
3478c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_20CO_B32S2			B43_PHY_N(0x0D3) /* TX filter 20 coeff B32 stage 2 */
3488c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_20CO_B1S2			B43_PHY_N(0x0D4) /* TX filter 20 coeff B1 stage 2 */
3498c2ecf20Sopenharmony_ci#define B43_NPHY_SIGFLDTOL			B43_PHY_N(0x0D5) /* Signal fld tolerance */
3508c2ecf20Sopenharmony_ci#define B43_NPHY_TXSERFLD			B43_PHY_N(0x0D6) /* TX service field */
3518c2ecf20Sopenharmony_ci#define B43_NPHY_AFESEQ_RX2TX_PUD		B43_PHY_N(0x0D7) /* AFE seq RX2TX power up/down delay */
3528c2ecf20Sopenharmony_ci#define B43_NPHY_AFESEQ_TX2RX_PUD		B43_PHY_N(0x0D8) /* AFE seq TX2RX power up/down delay */
3538c2ecf20Sopenharmony_ci#define B43_NPHY_TGNSYNC_SCRAMI0		B43_PHY_N(0x0D9) /* TGNsync scram init 0 */
3548c2ecf20Sopenharmony_ci#define B43_NPHY_TGNSYNC_SCRAMI1		B43_PHY_N(0x0DA) /* TGNsync scram init 1 */
3558c2ecf20Sopenharmony_ci#define B43_NPHY_INITSWIZPATTLEG		B43_PHY_N(0x0DB) /* Initial swizzle pattern leg */
3568c2ecf20Sopenharmony_ci#define B43_NPHY_BPHY_CTL3			B43_PHY_N(0x0DC) /* B PHY control 3 */
3578c2ecf20Sopenharmony_ci#define  B43_NPHY_BPHY_CTL3_SCALE		0x00FF /* Scale */
3588c2ecf20Sopenharmony_ci#define  B43_NPHY_BPHY_CTL3_SCALE_SHIFT		0
3598c2ecf20Sopenharmony_ci#define  B43_NPHY_BPHY_CTL3_FSC			0xFF00 /* Frame start count value */
3608c2ecf20Sopenharmony_ci#define  B43_NPHY_BPHY_CTL3_FSC_SHIFT		8
3618c2ecf20Sopenharmony_ci#define B43_NPHY_BPHY_CTL4			B43_PHY_N(0x0DD) /* B PHY control 4 */
3628c2ecf20Sopenharmony_ci#define B43_NPHY_C1_TXBBMULT			B43_PHY_N(0x0DE) /* Core 1 TX BB multiplier */
3638c2ecf20Sopenharmony_ci#define B43_NPHY_C2_TXBBMULT			B43_PHY_N(0x0DF) /* Core 2 TX BB multiplier */
3648c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_40CO_AS0			B43_PHY_N(0x0E1) /* TX filter 40 coeff A stage 0 */
3658c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_40CO_AS1			B43_PHY_N(0x0E2) /* TX filter 40 coeff A stage 1 */
3668c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_40CO_AS2			B43_PHY_N(0x0E3) /* TX filter 40 coeff A stage 2 */
3678c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_40CO_B32S0			B43_PHY_N(0x0E4) /* TX filter 40 coeff B32 stage 0 */
3688c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_40CO_B1S0			B43_PHY_N(0x0E5) /* TX filter 40 coeff B1 stage 0 */
3698c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_40CO_B32S1			B43_PHY_N(0x0E6) /* TX filter 40 coeff B32 stage 1 */
3708c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_40CO_B1S1			B43_PHY_N(0x0E7) /* TX filter 40 coeff B1 stage 1 */
3718c2ecf20Sopenharmony_ci#define B43_NPHY_REV3_RFCTL_OVER0		B43_PHY_N(0x0E7)
3728c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_40CO_B32S2			B43_PHY_N(0x0E8) /* TX filter 40 coeff B32 stage 2 */
3738c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_40CO_B1S2			B43_PHY_N(0x0E9) /* TX filter 40 coeff B1 stage 2 */
3748c2ecf20Sopenharmony_ci#define B43_NPHY_BIST_STAT2			B43_PHY_N(0x0EA) /* BIST status 2 */
3758c2ecf20Sopenharmony_ci#define B43_NPHY_BIST_STAT3			B43_PHY_N(0x0EB) /* BIST status 3 */
3768c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTL_OVER			B43_PHY_N(0x0EC) /* RF control override */
3778c2ecf20Sopenharmony_ci#define B43_NPHY_REV3_RFCTL_OVER1		B43_PHY_N(0x0EC)
3788c2ecf20Sopenharmony_ci#define B43_NPHY_MIMOCFG			B43_PHY_N(0x0ED) /* MIMO config */
3798c2ecf20Sopenharmony_ci#define  B43_NPHY_MIMOCFG_GFMIX			0x0004 /* Greenfield or mixed mode */
3808c2ecf20Sopenharmony_ci#define  B43_NPHY_MIMOCFG_AUTO			0x0100 /* Greenfield/mixed mode auto */
3818c2ecf20Sopenharmony_ci#define B43_NPHY_RADAR_BLNKCTL			B43_PHY_N(0x0EE) /* Radar blank control */
3828c2ecf20Sopenharmony_ci#define B43_NPHY_A0RADAR_FIFOCTL		B43_PHY_N(0x0EF) /* Antenna 0 radar FIFO control */
3838c2ecf20Sopenharmony_ci#define B43_NPHY_A1RADAR_FIFOCTL		B43_PHY_N(0x0F0) /* Antenna 1 radar FIFO control */
3848c2ecf20Sopenharmony_ci#define B43_NPHY_A0RADAR_FIFODAT		B43_PHY_N(0x0F1) /* Antenna 0 radar FIFO data */
3858c2ecf20Sopenharmony_ci#define B43_NPHY_A1RADAR_FIFODAT		B43_PHY_N(0x0F2) /* Antenna 1 radar FIFO data */
3868c2ecf20Sopenharmony_ci#define B43_NPHY_RADAR_THRES0			B43_PHY_N(0x0F3) /* Radar threshold 0 */
3878c2ecf20Sopenharmony_ci#define B43_NPHY_RADAR_THRES1			B43_PHY_N(0x0F4) /* Radar threshold 1 */
3888c2ecf20Sopenharmony_ci#define B43_NPHY_RADAR_THRES0R			B43_PHY_N(0x0F5) /* Radar threshold 0R */
3898c2ecf20Sopenharmony_ci#define B43_NPHY_RADAR_THRES1R			B43_PHY_N(0x0F6) /* Radar threshold 1R */
3908c2ecf20Sopenharmony_ci#define B43_NPHY_CSEN_20IN40_DLEN		B43_PHY_N(0x0F7) /* Carrier sense 20 in 40 dwell length */
3918c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTL_LUT_TRSW_LO1		B43_PHY_N(0x0F8) /* RF control LUT TRSW lower 1 */
3928c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTL_LUT_TRSW_UP1		B43_PHY_N(0x0F9) /* RF control LUT TRSW upper 1 */
3938c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTL_LUT_TRSW_LO2		B43_PHY_N(0x0FA) /* RF control LUT TRSW lower 2 */
3948c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTL_LUT_TRSW_UP2		B43_PHY_N(0x0FB) /* RF control LUT TRSW upper 2 */
3958c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTL_LUT_TRSW_LO3		B43_PHY_N(0x0FC) /* RF control LUT TRSW lower 3 */
3968c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTL_LUT_TRSW_UP3		B43_PHY_N(0x0FD) /* RF control LUT TRSW upper 3 */
3978c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTL_LUT_TRSW_LO4		B43_PHY_N(0x0FE) /* RF control LUT TRSW lower 4 */
3988c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTL_LUT_TRSW_UP4		B43_PHY_N(0x0FF) /* RF control LUT TRSW upper 4 */
3998c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTL_LUT_LNAPA1		B43_PHY_N(0x100) /* RF control LUT LNA PA 1 */
4008c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTL_LUT_LNAPA2		B43_PHY_N(0x101) /* RF control LUT LNA PA 2 */
4018c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTL_LUT_LNAPA3		B43_PHY_N(0x102) /* RF control LUT LNA PA 3 */
4028c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTL_LUT_LNAPA4		B43_PHY_N(0x103) /* RF control LUT LNA PA 4 */
4038c2ecf20Sopenharmony_ci#define B43_NPHY_TGNSYNC_CRCM0			B43_PHY_N(0x104) /* TGNsync CRC mask 0 */
4048c2ecf20Sopenharmony_ci#define B43_NPHY_TGNSYNC_CRCM1			B43_PHY_N(0x105) /* TGNsync CRC mask 1 */
4058c2ecf20Sopenharmony_ci#define B43_NPHY_TGNSYNC_CRCM2			B43_PHY_N(0x106) /* TGNsync CRC mask 2 */
4068c2ecf20Sopenharmony_ci#define B43_NPHY_TGNSYNC_CRCM3			B43_PHY_N(0x107) /* TGNsync CRC mask 3 */
4078c2ecf20Sopenharmony_ci#define B43_NPHY_TGNSYNC_CRCM4			B43_PHY_N(0x108) /* TGNsync CRC mask 4 */
4088c2ecf20Sopenharmony_ci#define B43_NPHY_CRCPOLY			B43_PHY_N(0x109) /* CRC polynomial */
4098c2ecf20Sopenharmony_ci#define B43_NPHY_SIGCNT				B43_PHY_N(0x10A) /* # sig count */
4108c2ecf20Sopenharmony_ci#define B43_NPHY_SIGSTARTBIT_CTL		B43_PHY_N(0x10B) /* Sig start bit control */
4118c2ecf20Sopenharmony_ci#define B43_NPHY_CRCPOLY_ORDER			B43_PHY_N(0x10C) /* CRC polynomial order */
4128c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTL_CST0			B43_PHY_N(0x10D) /* RF control core swap table 0 */
4138c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTL_CST1			B43_PHY_N(0x10E) /* RF control core swap table 1 */
4148c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTL_CST2O			B43_PHY_N(0x10F) /* RF control core swap table 2 + others */
4158c2ecf20Sopenharmony_ci#define B43_NPHY_BPHY_CTL5			B43_PHY_N(0x111) /* B PHY control 5 */
4168c2ecf20Sopenharmony_ci#define B43_NPHY_RFSEQ_LPFBW			B43_PHY_N(0x112) /* RF seq LPF bandwidth */
4178c2ecf20Sopenharmony_ci#define B43_NPHY_TSSIBIAS1			B43_PHY_N(0x114) /* TSSI bias val 1 */
4188c2ecf20Sopenharmony_ci#define B43_NPHY_TSSIBIAS2			B43_PHY_N(0x115) /* TSSI bias val 2 */
4198c2ecf20Sopenharmony_ci#define  B43_NPHY_TSSIBIAS_BIAS			0x00FF /* Bias */
4208c2ecf20Sopenharmony_ci#define  B43_NPHY_TSSIBIAS_BIAS_SHIFT		0
4218c2ecf20Sopenharmony_ci#define  B43_NPHY_TSSIBIAS_VAL			0xFF00 /* Value */
4228c2ecf20Sopenharmony_ci#define  B43_NPHY_TSSIBIAS_VAL_SHIFT		8
4238c2ecf20Sopenharmony_ci#define B43_NPHY_ESTPWR1			B43_PHY_N(0x118) /* Estimated power 1 */
4248c2ecf20Sopenharmony_ci#define B43_NPHY_ESTPWR2			B43_PHY_N(0x119) /* Estimated power 2 */
4258c2ecf20Sopenharmony_ci#define  B43_NPHY_ESTPWR_PWR			0x00FF /* Estimated power */
4268c2ecf20Sopenharmony_ci#define  B43_NPHY_ESTPWR_PWR_SHIFT		0
4278c2ecf20Sopenharmony_ci#define  B43_NPHY_ESTPWR_VALID			0x0100 /* Estimated power valid */
4288c2ecf20Sopenharmony_ci#define B43_NPHY_TSSI_MAXTXFDT			B43_PHY_N(0x11C) /* TSSI max TX frame delay time */
4298c2ecf20Sopenharmony_ci#define  B43_NPHY_TSSI_MAXTXFDT_VAL		0x00FF /* max TX frame delay time */
4308c2ecf20Sopenharmony_ci#define  B43_NPHY_TSSI_MAXTXFDT_VAL_SHIFT	0
4318c2ecf20Sopenharmony_ci#define B43_NPHY_TSSI_MAXTDT			B43_PHY_N(0x11D) /* TSSI max TSSI delay time */
4328c2ecf20Sopenharmony_ci#define  B43_NPHY_TSSI_MAXTDT_VAL		0x00FF /* max TSSI delay time */
4338c2ecf20Sopenharmony_ci#define  B43_NPHY_TSSI_MAXTDT_VAL_SHIFT		0
4348c2ecf20Sopenharmony_ci#define B43_NPHY_ITSSI1				B43_PHY_N(0x11E) /* TSSI idle 1 */
4358c2ecf20Sopenharmony_ci#define B43_NPHY_ITSSI2				B43_PHY_N(0x11F) /* TSSI idle 2 */
4368c2ecf20Sopenharmony_ci#define  B43_NPHY_ITSSI_VAL			0x00FF /* Idle TSSI */
4378c2ecf20Sopenharmony_ci#define  B43_NPHY_ITSSI_VAL_SHIFT		0
4388c2ecf20Sopenharmony_ci#define B43_NPHY_TSSIMODE			B43_PHY_N(0x122) /* TSSI mode */
4398c2ecf20Sopenharmony_ci#define  B43_NPHY_TSSIMODE_EN			0x0001 /* TSSI enable */
4408c2ecf20Sopenharmony_ci#define  B43_NPHY_TSSIMODE_PDEN			0x0002 /* Power det enable */
4418c2ecf20Sopenharmony_ci#define B43_NPHY_RXMACIFM			B43_PHY_N(0x123) /* RX Macif mode */
4428c2ecf20Sopenharmony_ci#define B43_NPHY_CRSIT_COCNT_LO			B43_PHY_N(0x124) /* CRS idle time CRS-on count (low) */
4438c2ecf20Sopenharmony_ci#define B43_NPHY_CRSIT_COCNT_HI			B43_PHY_N(0x125) /* CRS idle time CRS-on count (high) */
4448c2ecf20Sopenharmony_ci#define B43_NPHY_CRSIT_MTCNT_LO			B43_PHY_N(0x126) /* CRS idle time measure time count (low) */
4458c2ecf20Sopenharmony_ci#define B43_NPHY_CRSIT_MTCNT_HI			B43_PHY_N(0x127) /* CRS idle time measure time count (high) */
4468c2ecf20Sopenharmony_ci#define B43_NPHY_SAMTWC				B43_PHY_N(0x128) /* Sample tail wait count */
4478c2ecf20Sopenharmony_ci#define B43_NPHY_IQEST_CMD			B43_PHY_N(0x129) /* I/Q estimate command */
4488c2ecf20Sopenharmony_ci#define  B43_NPHY_IQEST_CMD_START		0x0001 /* Start */
4498c2ecf20Sopenharmony_ci#define  B43_NPHY_IQEST_CMD_MODE		0x0002 /* Mode */
4508c2ecf20Sopenharmony_ci#define B43_NPHY_IQEST_WT			B43_PHY_N(0x12A) /* I/Q estimate wait time */
4518c2ecf20Sopenharmony_ci#define  B43_NPHY_IQEST_WT_VAL			0x00FF /* Wait time */
4528c2ecf20Sopenharmony_ci#define  B43_NPHY_IQEST_WT_VAL_SHIFT		0
4538c2ecf20Sopenharmony_ci#define B43_NPHY_IQEST_SAMCNT			B43_PHY_N(0x12B) /* I/Q estimate sample count */
4548c2ecf20Sopenharmony_ci#define B43_NPHY_IQEST_IQACC_LO0		B43_PHY_N(0x12C) /* I/Q estimate I/Q acc lo 0 */
4558c2ecf20Sopenharmony_ci#define B43_NPHY_IQEST_IQACC_HI0		B43_PHY_N(0x12D) /* I/Q estimate I/Q acc hi 0 */
4568c2ecf20Sopenharmony_ci#define B43_NPHY_IQEST_IPACC_LO0		B43_PHY_N(0x12E) /* I/Q estimate I power acc lo 0 */
4578c2ecf20Sopenharmony_ci#define B43_NPHY_IQEST_IPACC_HI0		B43_PHY_N(0x12F) /* I/Q estimate I power acc hi 0 */
4588c2ecf20Sopenharmony_ci#define B43_NPHY_IQEST_QPACC_LO0		B43_PHY_N(0x130) /* I/Q estimate Q power acc lo 0 */
4598c2ecf20Sopenharmony_ci#define B43_NPHY_IQEST_QPACC_HI0		B43_PHY_N(0x131) /* I/Q estimate Q power acc hi 0 */
4608c2ecf20Sopenharmony_ci#define B43_NPHY_IQEST_IQACC_LO1		B43_PHY_N(0x134) /* I/Q estimate I/Q acc lo 1 */
4618c2ecf20Sopenharmony_ci#define B43_NPHY_IQEST_IQACC_HI1		B43_PHY_N(0x135) /* I/Q estimate I/Q acc hi 1 */
4628c2ecf20Sopenharmony_ci#define B43_NPHY_IQEST_IPACC_LO1		B43_PHY_N(0x136) /* I/Q estimate I power acc lo 1 */
4638c2ecf20Sopenharmony_ci#define B43_NPHY_IQEST_IPACC_HI1		B43_PHY_N(0x137) /* I/Q estimate I power acc hi 1 */
4648c2ecf20Sopenharmony_ci#define B43_NPHY_IQEST_QPACC_LO1		B43_PHY_N(0x138) /* I/Q estimate Q power acc lo 1 */
4658c2ecf20Sopenharmony_ci#define B43_NPHY_IQEST_QPACC_HI1		B43_PHY_N(0x139) /* I/Q estimate Q power acc hi 1 */
4668c2ecf20Sopenharmony_ci#define B43_NPHY_MIMO_CRSTXEXT			B43_PHY_N(0x13A) /* MIMO PHY CRS TX extension */
4678c2ecf20Sopenharmony_ci#define B43_NPHY_PWRDET1			B43_PHY_N(0x13B) /* Power det 1 */
4688c2ecf20Sopenharmony_ci#define B43_NPHY_PWRDET2			B43_PHY_N(0x13C) /* Power det 2 */
4698c2ecf20Sopenharmony_ci#define B43_NPHY_MAXRSSI_DTIME			B43_PHY_N(0x13F) /* RSSI max RSSI delay time */
4708c2ecf20Sopenharmony_ci#define B43_NPHY_PIL_DW0			B43_PHY_N(0x141) /* Pilot data weight 0 */
4718c2ecf20Sopenharmony_ci#define B43_NPHY_PIL_DW1			B43_PHY_N(0x142) /* Pilot data weight 1 */
4728c2ecf20Sopenharmony_ci#define B43_NPHY_PIL_DW2			B43_PHY_N(0x143) /* Pilot data weight 2 */
4738c2ecf20Sopenharmony_ci#define  B43_NPHY_PIL_DW_BPSK			0x000F /* BPSK */
4748c2ecf20Sopenharmony_ci#define  B43_NPHY_PIL_DW_BPSK_SHIFT		0
4758c2ecf20Sopenharmony_ci#define  B43_NPHY_PIL_DW_QPSK			0x00F0 /* QPSK */
4768c2ecf20Sopenharmony_ci#define  B43_NPHY_PIL_DW_QPSK_SHIFT		4
4778c2ecf20Sopenharmony_ci#define  B43_NPHY_PIL_DW_16QAM			0x0F00 /* 16-QAM */
4788c2ecf20Sopenharmony_ci#define  B43_NPHY_PIL_DW_16QAM_SHIFT		8
4798c2ecf20Sopenharmony_ci#define  B43_NPHY_PIL_DW_64QAM			0xF000 /* 64-QAM */
4808c2ecf20Sopenharmony_ci#define  B43_NPHY_PIL_DW_64QAM_SHIFT		12
4818c2ecf20Sopenharmony_ci#define B43_NPHY_FMDEM_CFG			B43_PHY_N(0x144) /* FM demodulation config */
4828c2ecf20Sopenharmony_ci#define B43_NPHY_PHASETR_A0			B43_PHY_N(0x145) /* Phase track alpha 0 */
4838c2ecf20Sopenharmony_ci#define B43_NPHY_PHASETR_A1			B43_PHY_N(0x146) /* Phase track alpha 1 */
4848c2ecf20Sopenharmony_ci#define B43_NPHY_PHASETR_A2			B43_PHY_N(0x147) /* Phase track alpha 2 */
4858c2ecf20Sopenharmony_ci#define B43_NPHY_PHASETR_B0			B43_PHY_N(0x148) /* Phase track beta 0 */
4868c2ecf20Sopenharmony_ci#define B43_NPHY_PHASETR_B1			B43_PHY_N(0x149) /* Phase track beta 1 */
4878c2ecf20Sopenharmony_ci#define B43_NPHY_PHASETR_B2			B43_PHY_N(0x14A) /* Phase track beta 2 */
4888c2ecf20Sopenharmony_ci#define B43_NPHY_PHASETR_CHG0			B43_PHY_N(0x14B) /* Phase track change 0 */
4898c2ecf20Sopenharmony_ci#define B43_NPHY_PHASETR_CHG1			B43_PHY_N(0x14C) /* Phase track change 1 */
4908c2ecf20Sopenharmony_ci#define B43_NPHY_PHASETW_OFF			B43_PHY_N(0x14D) /* Phase track offset */
4918c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTL_DBG			B43_PHY_N(0x14E) /* RF control debug */
4928c2ecf20Sopenharmony_ci#define B43_NPHY_CCK_SHIFTB_REF			B43_PHY_N(0x150) /* CCK shiftbits reference var */
4938c2ecf20Sopenharmony_ci#define B43_NPHY_OVER_DGAIN0			B43_PHY_N(0x152) /* Override digital gain 0 */
4948c2ecf20Sopenharmony_ci#define B43_NPHY_OVER_DGAIN1			B43_PHY_N(0x153) /* Override digital gain 1 */
4958c2ecf20Sopenharmony_ci#define  B43_NPHY_OVER_DGAIN_FDGV		0x0007 /* Force digital gain value */
4968c2ecf20Sopenharmony_ci#define  B43_NPHY_OVER_DGAIN_FDGV_SHIFT		0
4978c2ecf20Sopenharmony_ci#define  B43_NPHY_OVER_DGAIN_FDGEN		0x0008 /* Force digital gain enable */
4988c2ecf20Sopenharmony_ci#define  B43_NPHY_OVER_DGAIN_CCKDGECV		0xFF00 /* CCK digital gain enable count value */
4998c2ecf20Sopenharmony_ci#define  B43_NPHY_OVER_DGAIN_CCKDGECV_SHIFT	8
5008c2ecf20Sopenharmony_ci#define B43_NPHY_BIST_STAT4			B43_PHY_N(0x156) /* BIST status 4 */
5018c2ecf20Sopenharmony_ci#define B43_NPHY_RADAR_MAL			B43_PHY_N(0x157) /* Radar MA length */
5028c2ecf20Sopenharmony_ci#define B43_NPHY_RADAR_SRCCTL			B43_PHY_N(0x158) /* Radar search control */
5038c2ecf20Sopenharmony_ci#define B43_NPHY_VLD_DTSIG			B43_PHY_N(0x159) /* VLD data tones sig */
5048c2ecf20Sopenharmony_ci#define B43_NPHY_VLD_DTDAT			B43_PHY_N(0x15A) /* VLD data tones data */
5058c2ecf20Sopenharmony_ci#define B43_NPHY_C1_BPHY_RXIQCA0		B43_PHY_N(0x15B) /* Core 1 B PHY RX I/Q comp A0 */
5068c2ecf20Sopenharmony_ci#define B43_NPHY_C1_BPHY_RXIQCB0		B43_PHY_N(0x15C) /* Core 1 B PHY RX I/Q comp B0 */
5078c2ecf20Sopenharmony_ci#define B43_NPHY_C2_BPHY_RXIQCA1		B43_PHY_N(0x15D) /* Core 2 B PHY RX I/Q comp A1 */
5088c2ecf20Sopenharmony_ci#define B43_NPHY_C2_BPHY_RXIQCB1		B43_PHY_N(0x15E) /* Core 2 B PHY RX I/Q comp B1 */
5098c2ecf20Sopenharmony_ci#define B43_NPHY_FREQGAIN0			B43_PHY_N(0x160) /* Frequency gain 0 */
5108c2ecf20Sopenharmony_ci#define B43_NPHY_FREQGAIN1			B43_PHY_N(0x161) /* Frequency gain 1 */
5118c2ecf20Sopenharmony_ci#define B43_NPHY_FREQGAIN2			B43_PHY_N(0x162) /* Frequency gain 2 */
5128c2ecf20Sopenharmony_ci#define B43_NPHY_FREQGAIN3			B43_PHY_N(0x163) /* Frequency gain 3 */
5138c2ecf20Sopenharmony_ci#define B43_NPHY_FREQGAIN4			B43_PHY_N(0x164) /* Frequency gain 4 */
5148c2ecf20Sopenharmony_ci#define B43_NPHY_FREQGAIN5			B43_PHY_N(0x165) /* Frequency gain 5 */
5158c2ecf20Sopenharmony_ci#define B43_NPHY_FREQGAIN6			B43_PHY_N(0x166) /* Frequency gain 6 */
5168c2ecf20Sopenharmony_ci#define B43_NPHY_FREQGAIN7			B43_PHY_N(0x167) /* Frequency gain 7 */
5178c2ecf20Sopenharmony_ci#define B43_NPHY_FREQGAIN_BYPASS		B43_PHY_N(0x168) /* Frequency gain bypass */
5188c2ecf20Sopenharmony_ci#define B43_NPHY_TRLOSS				B43_PHY_N(0x169) /* TR loss value */
5198c2ecf20Sopenharmony_ci#define B43_NPHY_C1_ADCCLIP			B43_PHY_N(0x16A) /* Core 1 ADC clip */
5208c2ecf20Sopenharmony_ci#define B43_NPHY_C2_ADCCLIP			B43_PHY_N(0x16B) /* Core 2 ADC clip */
5218c2ecf20Sopenharmony_ci#define B43_NPHY_LTRN_OFFGAIN			B43_PHY_N(0x16F) /* LTRN offset gain */
5228c2ecf20Sopenharmony_ci#define B43_NPHY_LTRN_OFF			B43_PHY_N(0x170) /* LTRN offset */
5238c2ecf20Sopenharmony_ci#define B43_NPHY_NRDATAT_WWISE20SIG		B43_PHY_N(0x171) /* # data tones WWiSE 20 sig */
5248c2ecf20Sopenharmony_ci#define B43_NPHY_NRDATAT_WWISE40SIG		B43_PHY_N(0x172) /* # data tones WWiSE 40 sig */
5258c2ecf20Sopenharmony_ci#define B43_NPHY_NRDATAT_TGNSYNC20SIG		B43_PHY_N(0x173) /* # data tones TGNsync 20 sig */
5268c2ecf20Sopenharmony_ci#define B43_NPHY_NRDATAT_TGNSYNC40SIG		B43_PHY_N(0x174) /* # data tones TGNsync 40 sig */
5278c2ecf20Sopenharmony_ci#define B43_NPHY_WWISE_CRCM0			B43_PHY_N(0x175) /* WWiSE CRC mask 0 */
5288c2ecf20Sopenharmony_ci#define B43_NPHY_WWISE_CRCM1			B43_PHY_N(0x176) /* WWiSE CRC mask 1 */
5298c2ecf20Sopenharmony_ci#define B43_NPHY_WWISE_CRCM2			B43_PHY_N(0x177) /* WWiSE CRC mask 2 */
5308c2ecf20Sopenharmony_ci#define B43_NPHY_WWISE_CRCM3			B43_PHY_N(0x178) /* WWiSE CRC mask 3 */
5318c2ecf20Sopenharmony_ci#define B43_NPHY_WWISE_CRCM4			B43_PHY_N(0x179) /* WWiSE CRC mask 4 */
5328c2ecf20Sopenharmony_ci#define B43_NPHY_CHANEST_CDDSH			B43_PHY_N(0x17A) /* Channel estimate CDD shift */
5338c2ecf20Sopenharmony_ci#define B43_NPHY_HTAGC_WCNT			B43_PHY_N(0x17B) /* HT ADC wait counters */
5348c2ecf20Sopenharmony_ci#define B43_NPHY_SQPARM				B43_PHY_N(0x17C) /* SQ params */
5358c2ecf20Sopenharmony_ci#define B43_NPHY_MCSDUP6M			B43_PHY_N(0x17D) /* MCS dup 6M */
5368c2ecf20Sopenharmony_ci#define B43_NPHY_NDATAT_DUP40			B43_PHY_N(0x17E) /* # data tones dup 40 */
5378c2ecf20Sopenharmony_ci#define B43_NPHY_DUP40_TGNSYNC_CYCD		B43_PHY_N(0x17F) /* Dup40 TGNsync cycle data */
5388c2ecf20Sopenharmony_ci#define B43_NPHY_DUP40_GFBL			B43_PHY_N(0x180) /* Dup40 GF format BL address */
5398c2ecf20Sopenharmony_ci#define B43_NPHY_DUP40_BL			B43_PHY_N(0x181) /* Dup40 format BL address */
5408c2ecf20Sopenharmony_ci#define B43_NPHY_LEGDUP_FTA			B43_PHY_N(0x182) /* Legacy dup frm table address */
5418c2ecf20Sopenharmony_ci#define B43_NPHY_PACPROC_DBG			B43_PHY_N(0x183) /* Packet processing debug */
5428c2ecf20Sopenharmony_ci#define B43_NPHY_PIL_CYC1			B43_PHY_N(0x184) /* Pilot cycle counter 1 */
5438c2ecf20Sopenharmony_ci#define B43_NPHY_PIL_CYC2			B43_PHY_N(0x185) /* Pilot cycle counter 2 */
5448c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_20CO_S0A1			B43_PHY_N(0x186) /* TX filter 20 coeff stage 0 A1 */
5458c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_20CO_S0A2			B43_PHY_N(0x187) /* TX filter 20 coeff stage 0 A2 */
5468c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_20CO_S1A1			B43_PHY_N(0x188) /* TX filter 20 coeff stage 1 A1 */
5478c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_20CO_S1A2			B43_PHY_N(0x189) /* TX filter 20 coeff stage 1 A2 */
5488c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_20CO_S2A1			B43_PHY_N(0x18A) /* TX filter 20 coeff stage 2 A1 */
5498c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_20CO_S2A2			B43_PHY_N(0x18B) /* TX filter 20 coeff stage 2 A2 */
5508c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_20CO_S0B1			B43_PHY_N(0x18C) /* TX filter 20 coeff stage 0 B1 */
5518c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_20CO_S0B2			B43_PHY_N(0x18D) /* TX filter 20 coeff stage 0 B2 */
5528c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_20CO_S0B3			B43_PHY_N(0x18E) /* TX filter 20 coeff stage 0 B3 */
5538c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_20CO_S1B1			B43_PHY_N(0x18F) /* TX filter 20 coeff stage 1 B1 */
5548c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_20CO_S1B2			B43_PHY_N(0x190) /* TX filter 20 coeff stage 1 B2 */
5558c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_20CO_S1B3			B43_PHY_N(0x191) /* TX filter 20 coeff stage 1 B3 */
5568c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_20CO_S2B1			B43_PHY_N(0x192) /* TX filter 20 coeff stage 2 B1 */
5578c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_20CO_S2B2			B43_PHY_N(0x193) /* TX filter 20 coeff stage 2 B2 */
5588c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_20CO_S2B3			B43_PHY_N(0x194) /* TX filter 20 coeff stage 2 B3 */
5598c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_40CO_S0A1			B43_PHY_N(0x195) /* TX filter 40 coeff stage 0 A1 */
5608c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_40CO_S0A2			B43_PHY_N(0x196) /* TX filter 40 coeff stage 0 A2 */
5618c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_40CO_S1A1			B43_PHY_N(0x197) /* TX filter 40 coeff stage 1 A1 */
5628c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_40CO_S1A2			B43_PHY_N(0x198) /* TX filter 40 coeff stage 1 A2 */
5638c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_40CO_S2A1			B43_PHY_N(0x199) /* TX filter 40 coeff stage 2 A1 */
5648c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_40CO_S2A2			B43_PHY_N(0x19A) /* TX filter 40 coeff stage 2 A2 */
5658c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_40CO_S0B1			B43_PHY_N(0x19B) /* TX filter 40 coeff stage 0 B1 */
5668c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_40CO_S0B2			B43_PHY_N(0x19C) /* TX filter 40 coeff stage 0 B2 */
5678c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_40CO_S0B3			B43_PHY_N(0x19D) /* TX filter 40 coeff stage 0 B3 */
5688c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_40CO_S1B1			B43_PHY_N(0x19E) /* TX filter 40 coeff stage 1 B1 */
5698c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_40CO_S1B2			B43_PHY_N(0x19F) /* TX filter 40 coeff stage 1 B2 */
5708c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_40CO_S1B3			B43_PHY_N(0x1A0) /* TX filter 40 coeff stage 1 B3 */
5718c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_40CO_S2B1			B43_PHY_N(0x1A1) /* TX filter 40 coeff stage 2 B1 */
5728c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_40CO_S2B2			B43_PHY_N(0x1A2) /* TX filter 40 coeff stage 2 B2 */
5738c2ecf20Sopenharmony_ci#define B43_NPHY_TXF_40CO_S2B3			B43_PHY_N(0x1A3) /* TX filter 40 coeff stage 2 B3 */
5748c2ecf20Sopenharmony_ci#define B43_NPHY_RSSIMC_0I_RSSI_X		B43_PHY_N(0x1A4) /* RSSI multiplication coefficient 0 I RSSI X */
5758c2ecf20Sopenharmony_ci#define B43_NPHY_RSSIMC_0I_RSSI_Y		B43_PHY_N(0x1A5) /* RSSI multiplication coefficient 0 I RSSI Y */
5768c2ecf20Sopenharmony_ci#define B43_NPHY_RSSIMC_0I_RSSI_Z		B43_PHY_N(0x1A6) /* RSSI multiplication coefficient 0 I RSSI Z */
5778c2ecf20Sopenharmony_ci#define B43_NPHY_RSSIMC_0I_TBD			B43_PHY_N(0x1A7) /* RSSI multiplication coefficient 0 I TBD */
5788c2ecf20Sopenharmony_ci#define B43_NPHY_RSSIMC_0I_PWRDET		B43_PHY_N(0x1A8) /* RSSI multiplication coefficient 0 I power det */
5798c2ecf20Sopenharmony_ci#define B43_NPHY_RSSIMC_0I_TSSI			B43_PHY_N(0x1A9) /* RSSI multiplication coefficient 0 I TSSI */
5808c2ecf20Sopenharmony_ci#define B43_NPHY_RSSIMC_0Q_RSSI_X		B43_PHY_N(0x1AA) /* RSSI multiplication coefficient 0 Q RSSI X */
5818c2ecf20Sopenharmony_ci#define B43_NPHY_RSSIMC_0Q_RSSI_Y		B43_PHY_N(0x1AB) /* RSSI multiplication coefficient 0 Q RSSI Y */
5828c2ecf20Sopenharmony_ci#define B43_NPHY_RSSIMC_0Q_RSSI_Z		B43_PHY_N(0x1AC) /* RSSI multiplication coefficient 0 Q RSSI Z */
5838c2ecf20Sopenharmony_ci#define B43_NPHY_RSSIMC_0Q_TBD			B43_PHY_N(0x1AD) /* RSSI multiplication coefficient 0 Q TBD */
5848c2ecf20Sopenharmony_ci#define B43_NPHY_RSSIMC_0Q_PWRDET		B43_PHY_N(0x1AE) /* RSSI multiplication coefficient 0 Q power det */
5858c2ecf20Sopenharmony_ci#define B43_NPHY_RSSIMC_0Q_TSSI			B43_PHY_N(0x1AF) /* RSSI multiplication coefficient 0 Q TSSI */
5868c2ecf20Sopenharmony_ci#define B43_NPHY_RSSIMC_1I_RSSI_X		B43_PHY_N(0x1B0) /* RSSI multiplication coefficient 1 I RSSI X */
5878c2ecf20Sopenharmony_ci#define B43_NPHY_RSSIMC_1I_RSSI_Y		B43_PHY_N(0x1B1) /* RSSI multiplication coefficient 1 I RSSI Y */
5888c2ecf20Sopenharmony_ci#define B43_NPHY_RSSIMC_1I_RSSI_Z		B43_PHY_N(0x1B2) /* RSSI multiplication coefficient 1 I RSSI Z */
5898c2ecf20Sopenharmony_ci#define B43_NPHY_RSSIMC_1I_TBD			B43_PHY_N(0x1B3) /* RSSI multiplication coefficient 1 I TBD */
5908c2ecf20Sopenharmony_ci#define B43_NPHY_RSSIMC_1I_PWRDET		B43_PHY_N(0x1B4) /* RSSI multiplication coefficient 1 I power det */
5918c2ecf20Sopenharmony_ci#define B43_NPHY_RSSIMC_1I_TSSI			B43_PHY_N(0x1B5) /* RSSI multiplication coefficient 1 I TSSI */
5928c2ecf20Sopenharmony_ci#define B43_NPHY_RSSIMC_1Q_RSSI_X		B43_PHY_N(0x1B6) /* RSSI multiplication coefficient 1 Q RSSI X */
5938c2ecf20Sopenharmony_ci#define B43_NPHY_RSSIMC_1Q_RSSI_Y		B43_PHY_N(0x1B7) /* RSSI multiplication coefficient 1 Q RSSI Y */
5948c2ecf20Sopenharmony_ci#define B43_NPHY_RSSIMC_1Q_RSSI_Z		B43_PHY_N(0x1B8) /* RSSI multiplication coefficient 1 Q RSSI Z */
5958c2ecf20Sopenharmony_ci#define B43_NPHY_RSSIMC_1Q_TBD			B43_PHY_N(0x1B9) /* RSSI multiplication coefficient 1 Q TBD */
5968c2ecf20Sopenharmony_ci#define B43_NPHY_RSSIMC_1Q_PWRDET		B43_PHY_N(0x1BA) /* RSSI multiplication coefficient 1 Q power det */
5978c2ecf20Sopenharmony_ci#define B43_NPHY_RSSIMC_1Q_TSSI			B43_PHY_N(0x1BB) /* RSSI multiplication coefficient 1 Q TSSI */
5988c2ecf20Sopenharmony_ci#define B43_NPHY_SAMC_WCNT			B43_PHY_N(0x1BC) /* Sample collect wait counter */
5998c2ecf20Sopenharmony_ci#define B43_NPHY_PTHROUGH_CNT			B43_PHY_N(0x1BD) /* Pass-through counter */
6008c2ecf20Sopenharmony_ci#define B43_NPHY_LTRN_OFF_G20L			B43_PHY_N(0x1C4) /* LTRN offset gain 20L */
6018c2ecf20Sopenharmony_ci#define B43_NPHY_LTRN_OFF_20L			B43_PHY_N(0x1C5) /* LTRN offset 20L */
6028c2ecf20Sopenharmony_ci#define B43_NPHY_LTRN_OFF_G20U			B43_PHY_N(0x1C6) /* LTRN offset gain 20U */
6038c2ecf20Sopenharmony_ci#define B43_NPHY_LTRN_OFF_20U			B43_PHY_N(0x1C7) /* LTRN offset 20U */
6048c2ecf20Sopenharmony_ci#define B43_NPHY_DSSSCCK_GAINSL			B43_PHY_N(0x1C8) /* DSSS/CCK gain settle length */
6058c2ecf20Sopenharmony_ci#define B43_NPHY_GPIO_LOOUT			B43_PHY_N(0x1C9) /* GPIO low out */
6068c2ecf20Sopenharmony_ci#define B43_NPHY_GPIO_HIOUT			B43_PHY_N(0x1CA) /* GPIO high out */
6078c2ecf20Sopenharmony_ci#define B43_NPHY_CRS_CHECK			B43_PHY_N(0x1CB) /* CRS check */
6088c2ecf20Sopenharmony_ci#define B43_NPHY_ML_LOGSS_RAT			B43_PHY_N(0x1CC) /* ML/logss ratio */
6098c2ecf20Sopenharmony_ci#define B43_NPHY_DUPSCALE			B43_PHY_N(0x1CD) /* Dup scale */
6108c2ecf20Sopenharmony_ci#define B43_NPHY_BW1A				B43_PHY_N(0x1CE) /* BW 1A */
6118c2ecf20Sopenharmony_ci#define B43_NPHY_BW2				B43_PHY_N(0x1CF) /* BW 2 */
6128c2ecf20Sopenharmony_ci#define B43_NPHY_BW3				B43_PHY_N(0x1D0) /* BW 3 */
6138c2ecf20Sopenharmony_ci#define B43_NPHY_BW4				B43_PHY_N(0x1D1) /* BW 4 */
6148c2ecf20Sopenharmony_ci#define B43_NPHY_BW5				B43_PHY_N(0x1D2) /* BW 5 */
6158c2ecf20Sopenharmony_ci#define B43_NPHY_BW6				B43_PHY_N(0x1D3) /* BW 6 */
6168c2ecf20Sopenharmony_ci#define B43_NPHY_COALEN0			B43_PHY_N(0x1D4) /* Coarse length 0 */
6178c2ecf20Sopenharmony_ci#define B43_NPHY_COALEN1			B43_PHY_N(0x1D5) /* Coarse length 1 */
6188c2ecf20Sopenharmony_ci#define B43_NPHY_CRSTHRES_1U			B43_PHY_N(0x1D6) /* CRS threshold 1 U */
6198c2ecf20Sopenharmony_ci#define B43_NPHY_CRSTHRES_2U			B43_PHY_N(0x1D7) /* CRS threshold 2 U */
6208c2ecf20Sopenharmony_ci#define B43_NPHY_CRSTHRES_3U			B43_PHY_N(0x1D8) /* CRS threshold 3 U */
6218c2ecf20Sopenharmony_ci#define B43_NPHY_CRSCTL_U			B43_PHY_N(0x1D9) /* CRS control U */
6228c2ecf20Sopenharmony_ci#define B43_NPHY_CRSTHRES_1L			B43_PHY_N(0x1DA) /* CRS threshold 1 L */
6238c2ecf20Sopenharmony_ci#define B43_NPHY_CRSTHRES_2L			B43_PHY_N(0x1DB) /* CRS threshold 2 L */
6248c2ecf20Sopenharmony_ci#define B43_NPHY_CRSTHRES_3L			B43_PHY_N(0x1DC) /* CRS threshold 3 L */
6258c2ecf20Sopenharmony_ci#define B43_NPHY_CRSCTL_L			B43_PHY_N(0x1DD) /* CRS control L */
6268c2ecf20Sopenharmony_ci#define B43_NPHY_STRA_1U			B43_PHY_N(0x1DE) /* STR address 1 U */
6278c2ecf20Sopenharmony_ci#define B43_NPHY_STRA_2U			B43_PHY_N(0x1DF) /* STR address 2 U */
6288c2ecf20Sopenharmony_ci#define B43_NPHY_STRA_1L			B43_PHY_N(0x1E0) /* STR address 1 L */
6298c2ecf20Sopenharmony_ci#define B43_NPHY_STRA_2L			B43_PHY_N(0x1E1) /* STR address 2 L */
6308c2ecf20Sopenharmony_ci#define B43_NPHY_CRSCHECK1			B43_PHY_N(0x1E2) /* CRS check 1 */
6318c2ecf20Sopenharmony_ci#define B43_NPHY_CRSCHECK2			B43_PHY_N(0x1E3) /* CRS check 2 */
6328c2ecf20Sopenharmony_ci#define B43_NPHY_CRSCHECK3			B43_PHY_N(0x1E4) /* CRS check 3 */
6338c2ecf20Sopenharmony_ci#define B43_NPHY_JMPSTP0			B43_PHY_N(0x1E5) /* Jump step 0 */
6348c2ecf20Sopenharmony_ci#define B43_NPHY_JMPSTP1			B43_PHY_N(0x1E6) /* Jump step 1 */
6358c2ecf20Sopenharmony_ci#define B43_NPHY_TXPCTL_CMD			B43_PHY_N(0x1E7) /* TX power control command */
6368c2ecf20Sopenharmony_ci#define  B43_NPHY_TXPCTL_CMD_INIT		0x007F /* Init */
6378c2ecf20Sopenharmony_ci#define  B43_NPHY_TXPCTL_CMD_INIT_SHIFT		0
6388c2ecf20Sopenharmony_ci#define  B43_NPHY_TXPCTL_CMD_COEFF		0x2000 /* Power control coefficients */
6398c2ecf20Sopenharmony_ci#define  B43_NPHY_TXPCTL_CMD_HWPCTLEN		0x4000 /* Hardware TX power control enable */
6408c2ecf20Sopenharmony_ci#define  B43_NPHY_TXPCTL_CMD_PCTLEN		0x8000 /* TX power control enable */
6418c2ecf20Sopenharmony_ci#define B43_NPHY_TXPCTL_N			B43_PHY_N(0x1E8) /* TX power control N num */
6428c2ecf20Sopenharmony_ci#define  B43_NPHY_TXPCTL_N_TSSID		0x00FF /* N TSSI delay */
6438c2ecf20Sopenharmony_ci#define  B43_NPHY_TXPCTL_N_TSSID_SHIFT		0
6448c2ecf20Sopenharmony_ci#define  B43_NPHY_TXPCTL_N_NPTIL2		0x0700 /* N PT integer log2 */
6458c2ecf20Sopenharmony_ci#define  B43_NPHY_TXPCTL_N_NPTIL2_SHIFT		8
6468c2ecf20Sopenharmony_ci#define B43_NPHY_TXPCTL_ITSSI			B43_PHY_N(0x1E9) /* TX power control idle TSSI */
6478c2ecf20Sopenharmony_ci#define  B43_NPHY_TXPCTL_ITSSI_0		0x003F /* Idle TSSI 0 */
6488c2ecf20Sopenharmony_ci#define  B43_NPHY_TXPCTL_ITSSI_0_SHIFT		0
6498c2ecf20Sopenharmony_ci#define  B43_NPHY_TXPCTL_ITSSI_1		0x3F00 /* Idle TSSI 1 */
6508c2ecf20Sopenharmony_ci#define  B43_NPHY_TXPCTL_ITSSI_1_SHIFT		8
6518c2ecf20Sopenharmony_ci#define  B43_NPHY_TXPCTL_ITSSI_BINF		0x8000 /* Raw TSSI offset bin format */
6528c2ecf20Sopenharmony_ci#define B43_NPHY_TXPCTL_TPWR			B43_PHY_N(0x1EA) /* TX power control target power */
6538c2ecf20Sopenharmony_ci#define  B43_NPHY_TXPCTL_TPWR_0			0x00FF /* Power 0 */
6548c2ecf20Sopenharmony_ci#define  B43_NPHY_TXPCTL_TPWR_0_SHIFT		0
6558c2ecf20Sopenharmony_ci#define  B43_NPHY_TXPCTL_TPWR_1			0xFF00 /* Power 1 */
6568c2ecf20Sopenharmony_ci#define  B43_NPHY_TXPCTL_TPWR_1_SHIFT		8
6578c2ecf20Sopenharmony_ci#define B43_NPHY_TXPCTL_BIDX			B43_PHY_N(0x1EB) /* TX power control base index */
6588c2ecf20Sopenharmony_ci#define  B43_NPHY_TXPCTL_BIDX_0			0x007F /* uC base index 0 */
6598c2ecf20Sopenharmony_ci#define  B43_NPHY_TXPCTL_BIDX_0_SHIFT		0
6608c2ecf20Sopenharmony_ci#define  B43_NPHY_TXPCTL_BIDX_1			0x7F00 /* uC base index 1 */
6618c2ecf20Sopenharmony_ci#define  B43_NPHY_TXPCTL_BIDX_1_SHIFT		8
6628c2ecf20Sopenharmony_ci#define  B43_NPHY_TXPCTL_BIDX_LOAD		0x8000 /* Load base index */
6638c2ecf20Sopenharmony_ci#define B43_NPHY_TXPCTL_PIDX			B43_PHY_N(0x1EC) /* TX power control power index */
6648c2ecf20Sopenharmony_ci#define  B43_NPHY_TXPCTL_PIDX_0			0x007F /* uC power index 0 */
6658c2ecf20Sopenharmony_ci#define  B43_NPHY_TXPCTL_PIDX_0_SHIFT		0
6668c2ecf20Sopenharmony_ci#define  B43_NPHY_TXPCTL_PIDX_1			0x7F00 /* uC power index 1 */
6678c2ecf20Sopenharmony_ci#define  B43_NPHY_TXPCTL_PIDX_1_SHIFT		8
6688c2ecf20Sopenharmony_ci#define B43_NPHY_C1_TXPCTL_STAT			B43_PHY_N(0x1ED) /* Core 1 TX power control status */
6698c2ecf20Sopenharmony_ci#define B43_NPHY_C2_TXPCTL_STAT			B43_PHY_N(0x1EE) /* Core 2 TX power control status */
6708c2ecf20Sopenharmony_ci#define  B43_NPHY_TXPCTL_STAT_EST		0x00FF /* Estimated power */
6718c2ecf20Sopenharmony_ci#define  B43_NPHY_TXPCTL_STAT_EST_SHIFT		0
6728c2ecf20Sopenharmony_ci#define  B43_NPHY_TXPCTL_STAT_BIDX		0x7F00 /* Base index */
6738c2ecf20Sopenharmony_ci#define  B43_NPHY_TXPCTL_STAT_BIDX_SHIFT	8
6748c2ecf20Sopenharmony_ci#define  B43_NPHY_TXPCTL_STAT_ESTVALID		0x8000 /* Estimated power valid */
6758c2ecf20Sopenharmony_ci#define B43_NPHY_SMALLSGS_LEN			B43_PHY_N(0x1EF) /* Small sig gain settle length */
6768c2ecf20Sopenharmony_ci#define B43_NPHY_PHYSTAT_GAIN0			B43_PHY_N(0x1F0) /* PHY stats gain info 0 */
6778c2ecf20Sopenharmony_ci#define B43_NPHY_PHYSTAT_GAIN1			B43_PHY_N(0x1F1) /* PHY stats gain info 1 */
6788c2ecf20Sopenharmony_ci#define B43_NPHY_PHYSTAT_FREQEST		B43_PHY_N(0x1F2) /* PHY stats frequency estimate */
6798c2ecf20Sopenharmony_ci#define B43_NPHY_PHYSTAT_ADVRET			B43_PHY_N(0x1F3) /* PHY stats ADV retard */
6808c2ecf20Sopenharmony_ci#define B43_NPHY_PHYLB_MODE			B43_PHY_N(0x1F4) /* PHY loopback mode */
6818c2ecf20Sopenharmony_ci#define B43_NPHY_TONE_MIDX20_1			B43_PHY_N(0x1F5) /* Tone map index 20/1 */
6828c2ecf20Sopenharmony_ci#define B43_NPHY_TONE_MIDX20_2			B43_PHY_N(0x1F6) /* Tone map index 20/2 */
6838c2ecf20Sopenharmony_ci#define B43_NPHY_TONE_MIDX20_3			B43_PHY_N(0x1F7) /* Tone map index 20/3 */
6848c2ecf20Sopenharmony_ci#define B43_NPHY_TONE_MIDX40_1			B43_PHY_N(0x1F8) /* Tone map index 40/1 */
6858c2ecf20Sopenharmony_ci#define B43_NPHY_TONE_MIDX40_2			B43_PHY_N(0x1F9) /* Tone map index 40/2 */
6868c2ecf20Sopenharmony_ci#define B43_NPHY_TONE_MIDX40_3			B43_PHY_N(0x1FA) /* Tone map index 40/3 */
6878c2ecf20Sopenharmony_ci#define B43_NPHY_TONE_MIDX40_4			B43_PHY_N(0x1FB) /* Tone map index 40/4 */
6888c2ecf20Sopenharmony_ci#define B43_NPHY_PILTONE_MIDX1			B43_PHY_N(0x1FC) /* Pilot tone map index 1 */
6898c2ecf20Sopenharmony_ci#define B43_NPHY_PILTONE_MIDX2			B43_PHY_N(0x1FD) /* Pilot tone map index 2 */
6908c2ecf20Sopenharmony_ci#define B43_NPHY_PILTONE_MIDX3			B43_PHY_N(0x1FE) /* Pilot tone map index 3 */
6918c2ecf20Sopenharmony_ci#define B43_NPHY_TXRIFS_FRDEL			B43_PHY_N(0x1FF) /* TX RIFS frame delay */
6928c2ecf20Sopenharmony_ci#define B43_NPHY_AFESEQ_RX2TX_PUD_40M		B43_PHY_N(0x200) /* AFE seq rx2tx power up/down delay 40M */
6938c2ecf20Sopenharmony_ci#define B43_NPHY_AFESEQ_TX2RX_PUD_40M		B43_PHY_N(0x201) /* AFE seq tx2rx power up/down delay 40M */
6948c2ecf20Sopenharmony_ci#define B43_NPHY_AFESEQ_RX2TX_PUD_20M		B43_PHY_N(0x202) /* AFE seq rx2tx power up/down delay 20M */
6958c2ecf20Sopenharmony_ci#define B43_NPHY_AFESEQ_TX2RX_PUD_20M		B43_PHY_N(0x203) /* AFE seq tx2rx power up/down delay 20M */
6968c2ecf20Sopenharmony_ci#define B43_NPHY_RX_SIGCTL			B43_PHY_N(0x204) /* RX signal control */
6978c2ecf20Sopenharmony_ci#define B43_NPHY_RXPIL_CYCNT0			B43_PHY_N(0x205) /* RX pilot cycle counter 0 */
6988c2ecf20Sopenharmony_ci#define B43_NPHY_RXPIL_CYCNT1			B43_PHY_N(0x206) /* RX pilot cycle counter 1 */
6998c2ecf20Sopenharmony_ci#define B43_NPHY_RXPIL_CYCNT2			B43_PHY_N(0x207) /* RX pilot cycle counter 2 */
7008c2ecf20Sopenharmony_ci#define B43_NPHY_AFESEQ_RX2TX_PUD_10M		B43_PHY_N(0x208) /* AFE seq rx2tx power up/down delay 10M */
7018c2ecf20Sopenharmony_ci#define B43_NPHY_AFESEQ_TX2RX_PUD_10M		B43_PHY_N(0x209) /* AFE seq tx2rx power up/down delay 10M */
7028c2ecf20Sopenharmony_ci#define B43_NPHY_DSSSCCK_CRSEXTL		B43_PHY_N(0x20A) /* DSSS/CCK CRS extension length */
7038c2ecf20Sopenharmony_ci#define B43_NPHY_ML_LOGSS_RATSLOPE		B43_PHY_N(0x20B) /* ML/logss ratio slope */
7048c2ecf20Sopenharmony_ci#define B43_NPHY_RIFS_SRCTL			B43_PHY_N(0x20C) /* RIFS search timeout length */
7058c2ecf20Sopenharmony_ci#define B43_NPHY_TXREALFD			B43_PHY_N(0x20D) /* TX real frame delay */
7068c2ecf20Sopenharmony_ci#define B43_NPHY_HPANT_SWTHRES			B43_PHY_N(0x20E) /* High power antenna switch threshold */
7078c2ecf20Sopenharmony_ci#define B43_NPHY_EDCRS_ASSTHRES0		B43_PHY_N(0x210) /* ED CRS assert threshold 0 */
7088c2ecf20Sopenharmony_ci#define B43_NPHY_EDCRS_ASSTHRES1		B43_PHY_N(0x211) /* ED CRS assert threshold 1 */
7098c2ecf20Sopenharmony_ci#define B43_NPHY_EDCRS_DEASSTHRES0		B43_PHY_N(0x212) /* ED CRS deassert threshold 0 */
7108c2ecf20Sopenharmony_ci#define B43_NPHY_EDCRS_DEASSTHRES1		B43_PHY_N(0x213) /* ED CRS deassert threshold 1 */
7118c2ecf20Sopenharmony_ci#define B43_NPHY_STR_WTIME20U			B43_PHY_N(0x214) /* STR wait time 20U */
7128c2ecf20Sopenharmony_ci#define B43_NPHY_STR_WTIME20L			B43_PHY_N(0x215) /* STR wait time 20L */
7138c2ecf20Sopenharmony_ci#define B43_NPHY_TONE_MIDX657M			B43_PHY_N(0x216) /* Tone map index 657M */
7148c2ecf20Sopenharmony_ci#define B43_NPHY_HTSIGTONES			B43_PHY_N(0x217) /* HT signal tones */
7158c2ecf20Sopenharmony_ci#define B43_NPHY_RSSI1				B43_PHY_N(0x219) /* RSSI value 1 */
7168c2ecf20Sopenharmony_ci#define B43_NPHY_RSSI2				B43_PHY_N(0x21A) /* RSSI value 2 */
7178c2ecf20Sopenharmony_ci#define B43_NPHY_CHAN_ESTHANG			B43_PHY_N(0x21D) /* Channel estimate hang */
7188c2ecf20Sopenharmony_ci#define B43_NPHY_FINERX2_CGC			B43_PHY_N(0x221) /* Fine RX 2 clock gate control */
7198c2ecf20Sopenharmony_ci#define  B43_NPHY_FINERX2_CGC_DECGC		0x0008 /* Decode gated clocks */
7208c2ecf20Sopenharmony_ci#define B43_NPHY_TXPCTL_INIT			B43_PHY_N(0x222) /* TX power control init */
7218c2ecf20Sopenharmony_ci#define  B43_NPHY_TXPCTL_INIT_PIDXI1		0x00FF /* Power index init 1 */
7228c2ecf20Sopenharmony_ci#define  B43_NPHY_TXPCTL_INIT_PIDXI1_SHIFT	0
7238c2ecf20Sopenharmony_ci#define B43_NPHY_ED_CRSEN			B43_PHY_N(0x223)
7248c2ecf20Sopenharmony_ci#define B43_NPHY_ED_CRS40ASSERTTHRESH0		B43_PHY_N(0x224)
7258c2ecf20Sopenharmony_ci#define B43_NPHY_ED_CRS40ASSERTTHRESH1		B43_PHY_N(0x225)
7268c2ecf20Sopenharmony_ci#define B43_NPHY_ED_CRS40DEASSERTTHRESH0	B43_PHY_N(0x226)
7278c2ecf20Sopenharmony_ci#define B43_NPHY_ED_CRS40DEASSERTTHRESH1	B43_PHY_N(0x227)
7288c2ecf20Sopenharmony_ci#define B43_NPHY_ED_CRS20LASSERTTHRESH0		B43_PHY_N(0x228)
7298c2ecf20Sopenharmony_ci#define B43_NPHY_ED_CRS20LASSERTTHRESH1		B43_PHY_N(0x229)
7308c2ecf20Sopenharmony_ci#define B43_NPHY_ED_CRS20LDEASSERTTHRESH0	B43_PHY_N(0x22A)
7318c2ecf20Sopenharmony_ci#define B43_NPHY_ED_CRS20LDEASSERTTHRESH1	B43_PHY_N(0x22B)
7328c2ecf20Sopenharmony_ci#define B43_NPHY_ED_CRS20UASSERTTHRESH0		B43_PHY_N(0x22C)
7338c2ecf20Sopenharmony_ci#define B43_NPHY_ED_CRS20UASSERTTHRESH1		B43_PHY_N(0x22D)
7348c2ecf20Sopenharmony_ci#define B43_NPHY_ED_CRS20UDEASSERTTHRESH0	B43_PHY_N(0x22E)
7358c2ecf20Sopenharmony_ci#define B43_NPHY_ED_CRS20UDEASSERTTHRESH1	B43_PHY_N(0x22F)
7368c2ecf20Sopenharmony_ci#define B43_NPHY_ED_CRS				B43_PHY_N(0x230)
7378c2ecf20Sopenharmony_ci#define B43_NPHY_TIMEOUTEN			B43_PHY_N(0x231)
7388c2ecf20Sopenharmony_ci#define B43_NPHY_OFDMPAYDECODETIMEOUTLEN	B43_PHY_N(0x232)
7398c2ecf20Sopenharmony_ci#define B43_NPHY_CCKPAYDECODETIMEOUTLEN		B43_PHY_N(0x233)
7408c2ecf20Sopenharmony_ci#define B43_NPHY_NONPAYDECODETIMEOUTLEN		B43_PHY_N(0x234)
7418c2ecf20Sopenharmony_ci#define B43_NPHY_TIMEOUTSTATUS			B43_PHY_N(0x235)
7428c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTRLCORE0GPIO0		B43_PHY_N(0x236)
7438c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTRLCORE0GPIO1		B43_PHY_N(0x237)
7448c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTRLCORE0GPIO2		B43_PHY_N(0x238)
7458c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTRLCORE0GPIO3		B43_PHY_N(0x239)
7468c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTRLCORE1GPIO0		B43_PHY_N(0x23A)
7478c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTRLCORE1GPIO1		B43_PHY_N(0x23B)
7488c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTRLCORE1GPIO2		B43_PHY_N(0x23C)
7498c2ecf20Sopenharmony_ci#define B43_NPHY_RFCTRLCORE1GPIO3		B43_PHY_N(0x23D)
7508c2ecf20Sopenharmony_ci#define B43_NPHY_BPHYTESTCONTROL		B43_PHY_N(0x23E)
7518c2ecf20Sopenharmony_ci/* REV3+ */
7528c2ecf20Sopenharmony_ci#define B43_NPHY_FORCEFRONT0			B43_PHY_N(0x23F)
7538c2ecf20Sopenharmony_ci#define B43_NPHY_FORCEFRONT1			B43_PHY_N(0x240)
7548c2ecf20Sopenharmony_ci#define B43_NPHY_NORMVARHYSTTH			B43_PHY_N(0x241)
7558c2ecf20Sopenharmony_ci#define B43_NPHY_TXCCKERROR			B43_PHY_N(0x242)
7568c2ecf20Sopenharmony_ci#define B43_NPHY_AFESEQINITDACGAIN		B43_PHY_N(0x243)
7578c2ecf20Sopenharmony_ci#define B43_NPHY_TXANTSWLUT			B43_PHY_N(0x244)
7588c2ecf20Sopenharmony_ci#define B43_NPHY_CORECONFIG			B43_PHY_N(0x245)
7598c2ecf20Sopenharmony_ci#define B43_NPHY_ANTENNADIVDWELLTIME		B43_PHY_N(0x246)
7608c2ecf20Sopenharmony_ci#define B43_NPHY_ANTENNACCKDIVDWELLTIME		B43_PHY_N(0x247)
7618c2ecf20Sopenharmony_ci#define B43_NPHY_ANTENNADIVBACKOFFGAIN		B43_PHY_N(0x248)
7628c2ecf20Sopenharmony_ci#define B43_NPHY_ANTENNADIVMINGAIN		B43_PHY_N(0x249)
7638c2ecf20Sopenharmony_ci#define B43_NPHY_BRDSEL_NORMVARHYSTTH		B43_PHY_N(0x24A)
7648c2ecf20Sopenharmony_ci#define B43_NPHY_RXANTSWITCHCTRL		B43_PHY_N(0x24B)
7658c2ecf20Sopenharmony_ci#define B43_NPHY_ENERGYDROPTIMEOUTLEN2		B43_PHY_N(0x24C)
7668c2ecf20Sopenharmony_ci#define B43_NPHY_ML_LOG_TXEVM0			B43_PHY_N(0x250)
7678c2ecf20Sopenharmony_ci#define B43_NPHY_ML_LOG_TXEVM1			B43_PHY_N(0x251)
7688c2ecf20Sopenharmony_ci#define B43_NPHY_ML_LOG_TXEVM2			B43_PHY_N(0x252)
7698c2ecf20Sopenharmony_ci#define B43_NPHY_ML_LOG_TXEVM3			B43_PHY_N(0x253)
7708c2ecf20Sopenharmony_ci#define B43_NPHY_ML_LOG_TXEVM4			B43_PHY_N(0x254)
7718c2ecf20Sopenharmony_ci#define B43_NPHY_ML_LOG_TXEVM5			B43_PHY_N(0x255)
7728c2ecf20Sopenharmony_ci#define B43_NPHY_ML_LOG_TXEVM6			B43_PHY_N(0x256)
7738c2ecf20Sopenharmony_ci#define B43_NPHY_ML_LOG_TXEVM7			B43_PHY_N(0x257)
7748c2ecf20Sopenharmony_ci#define B43_NPHY_ML_SCALE_TWEAK			B43_PHY_N(0x258)
7758c2ecf20Sopenharmony_ci#define B43_NPHY_MLUA				B43_PHY_N(0x259)
7768c2ecf20Sopenharmony_ci#define B43_NPHY_ZFUA				B43_PHY_N(0x25A)
7778c2ecf20Sopenharmony_ci#define B43_NPHY_CHANUPSYM01			B43_PHY_N(0x25B)
7788c2ecf20Sopenharmony_ci#define B43_NPHY_CHANUPSYM2			B43_PHY_N(0x25C)
7798c2ecf20Sopenharmony_ci#define B43_NPHY_RXSTRNFILT20NUM00		B43_PHY_N(0x25D)
7808c2ecf20Sopenharmony_ci#define B43_NPHY_RXSTRNFILT20NUM01		B43_PHY_N(0x25E)
7818c2ecf20Sopenharmony_ci#define B43_NPHY_RXSTRNFILT20NUM02		B43_PHY_N(0x25F)
7828c2ecf20Sopenharmony_ci#define B43_NPHY_RXSTRNFILT20DEN00		B43_PHY_N(0x260)
7838c2ecf20Sopenharmony_ci#define B43_NPHY_RXSTRNFILT20DEN01		B43_PHY_N(0x261)
7848c2ecf20Sopenharmony_ci#define B43_NPHY_RXSTRNFILT20NUM10		B43_PHY_N(0x262)
7858c2ecf20Sopenharmony_ci#define B43_NPHY_RXSTRNFILT20NUM11		B43_PHY_N(0x263)
7868c2ecf20Sopenharmony_ci#define B43_NPHY_RXSTRNFILT20NUM12		B43_PHY_N(0x264)
7878c2ecf20Sopenharmony_ci#define B43_NPHY_RXSTRNFILT20DEN10		B43_PHY_N(0x265)
7888c2ecf20Sopenharmony_ci#define B43_NPHY_RXSTRNFILT20DEN11		B43_PHY_N(0x266)
7898c2ecf20Sopenharmony_ci#define B43_NPHY_RXSTRNFILT40NUM00		B43_PHY_N(0x267)
7908c2ecf20Sopenharmony_ci#define B43_NPHY_RXSTRNFILT40NUM01		B43_PHY_N(0x268)
7918c2ecf20Sopenharmony_ci#define B43_NPHY_RXSTRNFILT40NUM02		B43_PHY_N(0x269)
7928c2ecf20Sopenharmony_ci#define B43_NPHY_RXSTRNFILT40DEN00		B43_PHY_N(0x26A)
7938c2ecf20Sopenharmony_ci#define B43_NPHY_RXSTRNFILT40DEN01		B43_PHY_N(0x26B)
7948c2ecf20Sopenharmony_ci#define B43_NPHY_RXSTRNFILT40NUM10		B43_PHY_N(0x26C)
7958c2ecf20Sopenharmony_ci#define B43_NPHY_RXSTRNFILT40NUM11		B43_PHY_N(0x26D)
7968c2ecf20Sopenharmony_ci#define B43_NPHY_RXSTRNFILT40NUM12		B43_PHY_N(0x26E)
7978c2ecf20Sopenharmony_ci#define B43_NPHY_RXSTRNFILT40DEN10		B43_PHY_N(0x26F)
7988c2ecf20Sopenharmony_ci#define B43_NPHY_RXSTRNFILT40DEN11		B43_PHY_N(0x270)
7998c2ecf20Sopenharmony_ci#define B43_NPHY_CRSHIGHPOWTHRESHOLD1		B43_PHY_N(0x271)
8008c2ecf20Sopenharmony_ci#define B43_NPHY_CRSHIGHPOWTHRESHOLD2		B43_PHY_N(0x272)
8018c2ecf20Sopenharmony_ci#define B43_NPHY_CRSHIGHLOWPOWTHRESHOLD		B43_PHY_N(0x273)
8028c2ecf20Sopenharmony_ci#define B43_NPHY_CRSHIGHPOWTHRESHOLD1L		B43_PHY_N(0x274)
8038c2ecf20Sopenharmony_ci#define B43_NPHY_CRSHIGHPOWTHRESHOLD2L		B43_PHY_N(0x275)
8048c2ecf20Sopenharmony_ci#define B43_NPHY_CRSHIGHLOWPOWTHRESHOLDL	B43_PHY_N(0x276)
8058c2ecf20Sopenharmony_ci#define B43_NPHY_CRSHIGHPOWTHRESHOLD1U		B43_PHY_N(0x277)
8068c2ecf20Sopenharmony_ci#define B43_NPHY_CRSHIGHPOWTHRESHOLD2U		B43_PHY_N(0x278)
8078c2ecf20Sopenharmony_ci#define B43_NPHY_CRSHIGHLOWPOWTHRESHOLDU	B43_PHY_N(0x279)
8088c2ecf20Sopenharmony_ci#define B43_NPHY_CRSACIDETECTTHRESH		B43_PHY_N(0x27A)
8098c2ecf20Sopenharmony_ci#define B43_NPHY_CRSACIDETECTTHRESHL		B43_PHY_N(0x27B)
8108c2ecf20Sopenharmony_ci#define B43_NPHY_CRSACIDETECTTHRESHU		B43_PHY_N(0x27C)
8118c2ecf20Sopenharmony_ci#define B43_NPHY_CRSMINPOWER0			B43_PHY_N(0x27D)
8128c2ecf20Sopenharmony_ci#define B43_NPHY_CRSMINPOWER1			B43_PHY_N(0x27E)
8138c2ecf20Sopenharmony_ci#define B43_NPHY_CRSMINPOWER2			B43_PHY_N(0x27F)
8148c2ecf20Sopenharmony_ci#define B43_NPHY_CRSMINPOWERL0			B43_PHY_N(0x280)
8158c2ecf20Sopenharmony_ci#define B43_NPHY_CRSMINPOWERL1			B43_PHY_N(0x281)
8168c2ecf20Sopenharmony_ci#define B43_NPHY_CRSMINPOWERL2			B43_PHY_N(0x282)
8178c2ecf20Sopenharmony_ci#define B43_NPHY_CRSMINPOWERU0			B43_PHY_N(0x283)
8188c2ecf20Sopenharmony_ci#define B43_NPHY_CRSMINPOWERU1			B43_PHY_N(0x284)
8198c2ecf20Sopenharmony_ci#define B43_NPHY_CRSMINPOWERU2			B43_PHY_N(0x285)
8208c2ecf20Sopenharmony_ci#define B43_NPHY_STRPARAM			B43_PHY_N(0x286)
8218c2ecf20Sopenharmony_ci#define B43_NPHY_STRPARAML			B43_PHY_N(0x287)
8228c2ecf20Sopenharmony_ci#define B43_NPHY_STRPARAMU			B43_PHY_N(0x288)
8238c2ecf20Sopenharmony_ci#define B43_NPHY_BPHYCRSMINPOWER0		B43_PHY_N(0x289)
8248c2ecf20Sopenharmony_ci#define B43_NPHY_BPHYCRSMINPOWER1		B43_PHY_N(0x28A)
8258c2ecf20Sopenharmony_ci#define B43_NPHY_BPHYCRSMINPOWER2		B43_PHY_N(0x28B)
8268c2ecf20Sopenharmony_ci#define B43_NPHY_BPHYFILTDEN0COEF		B43_PHY_N(0x28C)
8278c2ecf20Sopenharmony_ci#define B43_NPHY_BPHYFILTDEN1COEF		B43_PHY_N(0x28D)
8288c2ecf20Sopenharmony_ci#define B43_NPHY_BPHYFILTDEN2COEF		B43_PHY_N(0x28E)
8298c2ecf20Sopenharmony_ci#define B43_NPHY_BPHYFILTNUM0COEF		B43_PHY_N(0x28F)
8308c2ecf20Sopenharmony_ci#define B43_NPHY_BPHYFILTNUM1COEF		B43_PHY_N(0x290)
8318c2ecf20Sopenharmony_ci#define B43_NPHY_BPHYFILTNUM2COEF		B43_PHY_N(0x291)
8328c2ecf20Sopenharmony_ci#define B43_NPHY_BPHYFILTNUM01COEF2		B43_PHY_N(0x292)
8338c2ecf20Sopenharmony_ci#define B43_NPHY_BPHYFILTBYPASS			B43_PHY_N(0x293)
8348c2ecf20Sopenharmony_ci#define B43_NPHY_SGILTRNOFFSET			B43_PHY_N(0x294)
8358c2ecf20Sopenharmony_ci#define B43_NPHY_RADAR_T2_MIN			B43_PHY_N(0x295)
8368c2ecf20Sopenharmony_ci#define B43_NPHY_TXPWRCTRLDAMPING		B43_PHY_N(0x296)
8378c2ecf20Sopenharmony_ci#define B43_NPHY_PAPD_EN0			B43_PHY_N(0x297) /* PAPD Enable0 TBD */
8388c2ecf20Sopenharmony_ci#define B43_NPHY_EPS_TABLE_ADJ0			B43_PHY_N(0x298) /* EPS Table Adj0 TBD */
8398c2ecf20Sopenharmony_ci#define B43_NPHY_EPS_OVERRIDEI_0		B43_PHY_N(0x299)
8408c2ecf20Sopenharmony_ci#define B43_NPHY_EPS_OVERRIDEQ_0		B43_PHY_N(0x29A)
8418c2ecf20Sopenharmony_ci#define B43_NPHY_PAPD_EN1			B43_PHY_N(0x29B) /* PAPD Enable1 TBD */
8428c2ecf20Sopenharmony_ci#define B43_NPHY_EPS_TABLE_ADJ1			B43_PHY_N(0x29C) /* EPS Table Adj1 TBD */
8438c2ecf20Sopenharmony_ci#define B43_NPHY_EPS_OVERRIDEI_1		B43_PHY_N(0x29D)
8448c2ecf20Sopenharmony_ci#define B43_NPHY_EPS_OVERRIDEQ_1		B43_PHY_N(0x29E)
8458c2ecf20Sopenharmony_ci#define B43_NPHY_PAPD_CAL_ADDRESS		B43_PHY_N(0x29F)
8468c2ecf20Sopenharmony_ci#define B43_NPHY_PAPD_CAL_YREFEPSILON		B43_PHY_N(0x2A0)
8478c2ecf20Sopenharmony_ci#define B43_NPHY_PAPD_CAL_SETTLE		B43_PHY_N(0x2A1)
8488c2ecf20Sopenharmony_ci#define B43_NPHY_PAPD_CAL_CORRELATE		B43_PHY_N(0x2A2)
8498c2ecf20Sopenharmony_ci#define B43_NPHY_PAPD_CAL_SHIFTS0		B43_PHY_N(0x2A3)
8508c2ecf20Sopenharmony_ci#define B43_NPHY_PAPD_CAL_SHIFTS1		B43_PHY_N(0x2A4)
8518c2ecf20Sopenharmony_ci#define B43_NPHY_SAMPLE_START_ADDR		B43_PHY_N(0x2A5)
8528c2ecf20Sopenharmony_ci#define B43_NPHY_RADAR_ADC_TO_DBM		B43_PHY_N(0x2A6)
8538c2ecf20Sopenharmony_ci#define B43_NPHY_REV3_C2_INITGAIN_A		B43_PHY_N(0x2A7)
8548c2ecf20Sopenharmony_ci#define B43_NPHY_REV3_C2_INITGAIN_B		B43_PHY_N(0x2A8)
8558c2ecf20Sopenharmony_ci#define B43_NPHY_REV3_C2_CLIP_HIGAIN_A		B43_PHY_N(0x2A9)
8568c2ecf20Sopenharmony_ci#define B43_NPHY_REV3_C2_CLIP_HIGAIN_B		B43_PHY_N(0x2AA)
8578c2ecf20Sopenharmony_ci#define B43_NPHY_REV3_C2_CLIP_MEDGAIN_A		B43_PHY_N(0x2AB)
8588c2ecf20Sopenharmony_ci#define B43_NPHY_REV3_C2_CLIP_MEDGAIN_B		B43_PHY_N(0x2AC)
8598c2ecf20Sopenharmony_ci#define B43_NPHY_REV3_C2_CLIP_LOGAIN_A		B43_PHY_N(0x2AD)
8608c2ecf20Sopenharmony_ci#define B43_NPHY_REV3_C2_CLIP_LOGAIN_B		B43_PHY_N(0x2AE)
8618c2ecf20Sopenharmony_ci#define B43_NPHY_REV3_C2_CLIP2_GAIN_A		B43_PHY_N(0x2AF)
8628c2ecf20Sopenharmony_ci#define B43_NPHY_REV3_C2_CLIP2_GAIN_B		B43_PHY_N(0x2B0)
8638c2ecf20Sopenharmony_ci
8648c2ecf20Sopenharmony_ci#define B43_NPHY_REV7_RF_CTL_MISC_REG3		B43_PHY_N(0x340)
8658c2ecf20Sopenharmony_ci#define B43_NPHY_REV7_RF_CTL_MISC_REG4		B43_PHY_N(0x341)
8668c2ecf20Sopenharmony_ci#define B43_NPHY_REV7_RF_CTL_OVER3		B43_PHY_N(0x342)
8678c2ecf20Sopenharmony_ci#define B43_NPHY_REV7_RF_CTL_OVER4		B43_PHY_N(0x343)
8688c2ecf20Sopenharmony_ci#define B43_NPHY_REV7_RF_CTL_MISC_REG5		B43_PHY_N(0x344)
8698c2ecf20Sopenharmony_ci#define B43_NPHY_REV7_RF_CTL_MISC_REG6		B43_PHY_N(0x345)
8708c2ecf20Sopenharmony_ci#define B43_NPHY_REV7_RF_CTL_OVER5		B43_PHY_N(0x346)
8718c2ecf20Sopenharmony_ci#define B43_NPHY_REV7_RF_CTL_OVER6		B43_PHY_N(0x347)
8728c2ecf20Sopenharmony_ci
8738c2ecf20Sopenharmony_ci#define B43_PHY_B_BBCFG				B43_PHY_N_BMODE(0x001) /* BB config */
8748c2ecf20Sopenharmony_ci#define  B43_PHY_B_BBCFG_RSTCCA			0x4000 /* Reset CCA */
8758c2ecf20Sopenharmony_ci#define  B43_PHY_B_BBCFG_RSTRX			0x8000 /* Reset RX */
8768c2ecf20Sopenharmony_ci#define B43_PHY_B_TEST				B43_PHY_N_BMODE(0x00A)
8778c2ecf20Sopenharmony_ci
8788c2ecf20Sopenharmony_cistruct b43_wldev;
8798c2ecf20Sopenharmony_ci
8808c2ecf20Sopenharmony_cienum b43_nphy_spur_avoid {
8818c2ecf20Sopenharmony_ci	B43_SPUR_AVOID_DISABLE,
8828c2ecf20Sopenharmony_ci	B43_SPUR_AVOID_AUTO,
8838c2ecf20Sopenharmony_ci	B43_SPUR_AVOID_FORCE,
8848c2ecf20Sopenharmony_ci};
8858c2ecf20Sopenharmony_ci
8868c2ecf20Sopenharmony_cistruct b43_chanspec {
8878c2ecf20Sopenharmony_ci	u16 center_freq;
8888c2ecf20Sopenharmony_ci	enum nl80211_channel_type channel_type;
8898c2ecf20Sopenharmony_ci};
8908c2ecf20Sopenharmony_ci
8918c2ecf20Sopenharmony_cistruct b43_phy_n_iq_comp {
8928c2ecf20Sopenharmony_ci	s16 a0;
8938c2ecf20Sopenharmony_ci	s16 b0;
8948c2ecf20Sopenharmony_ci	s16 a1;
8958c2ecf20Sopenharmony_ci	s16 b1;
8968c2ecf20Sopenharmony_ci};
8978c2ecf20Sopenharmony_ci
8988c2ecf20Sopenharmony_cistruct b43_phy_n_rssical_cache {
8998c2ecf20Sopenharmony_ci	u16 rssical_radio_regs_2G[2];
9008c2ecf20Sopenharmony_ci	u16 rssical_phy_regs_2G[12];
9018c2ecf20Sopenharmony_ci
9028c2ecf20Sopenharmony_ci	u16 rssical_radio_regs_5G[2];
9038c2ecf20Sopenharmony_ci	u16 rssical_phy_regs_5G[12];
9048c2ecf20Sopenharmony_ci};
9058c2ecf20Sopenharmony_ci
9068c2ecf20Sopenharmony_cistruct b43_phy_n_cal_cache {
9078c2ecf20Sopenharmony_ci	u16 txcal_radio_regs_2G[8];
9088c2ecf20Sopenharmony_ci	u16 txcal_coeffs_2G[8];
9098c2ecf20Sopenharmony_ci	struct b43_phy_n_iq_comp rxcal_coeffs_2G;
9108c2ecf20Sopenharmony_ci
9118c2ecf20Sopenharmony_ci	u16 txcal_radio_regs_5G[8];
9128c2ecf20Sopenharmony_ci	u16 txcal_coeffs_5G[8];
9138c2ecf20Sopenharmony_ci	struct b43_phy_n_iq_comp rxcal_coeffs_5G;
9148c2ecf20Sopenharmony_ci};
9158c2ecf20Sopenharmony_ci
9168c2ecf20Sopenharmony_cistruct b43_phy_n_txpwrindex {
9178c2ecf20Sopenharmony_ci	s8 index;
9188c2ecf20Sopenharmony_ci	s8 index_internal;
9198c2ecf20Sopenharmony_ci	s8 index_internal_save;
9208c2ecf20Sopenharmony_ci	u16 AfectrlOverride;
9218c2ecf20Sopenharmony_ci	u16 AfeCtrlDacGain;
9228c2ecf20Sopenharmony_ci	u16 rad_gain;
9238c2ecf20Sopenharmony_ci	u8 bbmult;
9248c2ecf20Sopenharmony_ci	u16 iqcomp_a;
9258c2ecf20Sopenharmony_ci	u16 iqcomp_b;
9268c2ecf20Sopenharmony_ci	u16 locomp;
9278c2ecf20Sopenharmony_ci};
9288c2ecf20Sopenharmony_ci
9298c2ecf20Sopenharmony_cistruct b43_phy_n_pwr_ctl_info {
9308c2ecf20Sopenharmony_ci	u8 idle_tssi_2g;
9318c2ecf20Sopenharmony_ci	u8 idle_tssi_5g;
9328c2ecf20Sopenharmony_ci};
9338c2ecf20Sopenharmony_ci
9348c2ecf20Sopenharmony_cistruct b43_phy_n {
9358c2ecf20Sopenharmony_ci	u8 antsel_type;
9368c2ecf20Sopenharmony_ci	u8 cal_orig_pwr_idx[2];
9378c2ecf20Sopenharmony_ci	u8 measure_hold;
9388c2ecf20Sopenharmony_ci	u8 phyrxchain;
9398c2ecf20Sopenharmony_ci	u8 hw_phyrxchain;
9408c2ecf20Sopenharmony_ci	u8 hw_phytxchain;
9418c2ecf20Sopenharmony_ci	u8 perical;
9428c2ecf20Sopenharmony_ci	u32 deaf_count;
9438c2ecf20Sopenharmony_ci	u32 rxcalparams;
9448c2ecf20Sopenharmony_ci	bool hang_avoid;
9458c2ecf20Sopenharmony_ci	bool mute;
9468c2ecf20Sopenharmony_ci	u16 papd_epsilon_offset[2];
9478c2ecf20Sopenharmony_ci	s32 preamble_override;
9488c2ecf20Sopenharmony_ci	u32 bb_mult_save;
9498c2ecf20Sopenharmony_ci
9508c2ecf20Sopenharmony_ci	bool gain_boost;
9518c2ecf20Sopenharmony_ci	bool elna_gain_config;
9528c2ecf20Sopenharmony_ci	bool band5g_pwrgain;
9538c2ecf20Sopenharmony_ci	bool use_int_tx_iq_lo_cal;
9548c2ecf20Sopenharmony_ci	bool lpf_bw_overrode_for_sample_play;
9558c2ecf20Sopenharmony_ci
9568c2ecf20Sopenharmony_ci	u8 mphase_cal_phase_id;
9578c2ecf20Sopenharmony_ci	u16 mphase_txcal_cmdidx;
9588c2ecf20Sopenharmony_ci	u16 mphase_txcal_numcmds;
9598c2ecf20Sopenharmony_ci	u16 mphase_txcal_bestcoeffs[11];
9608c2ecf20Sopenharmony_ci
9618c2ecf20Sopenharmony_ci	bool txpwrctrl;
9628c2ecf20Sopenharmony_ci	bool pwg_gain_5ghz;
9638c2ecf20Sopenharmony_ci	u8 tx_pwr_idx[2];
9648c2ecf20Sopenharmony_ci	s8 tx_power_offset[101];
9658c2ecf20Sopenharmony_ci	u16 adj_pwr_tbl[84];
9668c2ecf20Sopenharmony_ci	u16 txcal_bbmult;
9678c2ecf20Sopenharmony_ci	u16 txiqlocal_bestc[11];
9688c2ecf20Sopenharmony_ci	bool txiqlocal_coeffsvalid;
9698c2ecf20Sopenharmony_ci	struct b43_phy_n_txpwrindex txpwrindex[2];
9708c2ecf20Sopenharmony_ci	struct b43_phy_n_pwr_ctl_info pwr_ctl_info[2];
9718c2ecf20Sopenharmony_ci	struct b43_chanspec txiqlocal_chanspec;
9728c2ecf20Sopenharmony_ci	struct b43_ppr tx_pwr_max_ppr;
9738c2ecf20Sopenharmony_ci	u16 tx_pwr_last_recalc_freq;
9748c2ecf20Sopenharmony_ci	int tx_pwr_last_recalc_limit;
9758c2ecf20Sopenharmony_ci
9768c2ecf20Sopenharmony_ci	u8 txrx_chain;
9778c2ecf20Sopenharmony_ci	u16 tx_rx_cal_phy_saveregs[11];
9788c2ecf20Sopenharmony_ci	u16 tx_rx_cal_radio_saveregs[22];
9798c2ecf20Sopenharmony_ci
9808c2ecf20Sopenharmony_ci	u16 rfctrl_intc1_save;
9818c2ecf20Sopenharmony_ci	u16 rfctrl_intc2_save;
9828c2ecf20Sopenharmony_ci
9838c2ecf20Sopenharmony_ci	u16 classifier_state;
9848c2ecf20Sopenharmony_ci	u16 clip_state[2];
9858c2ecf20Sopenharmony_ci
9868c2ecf20Sopenharmony_ci	enum b43_nphy_spur_avoid spur_avoid;
9878c2ecf20Sopenharmony_ci	bool aband_spurwar_en;
9888c2ecf20Sopenharmony_ci	bool gband_spurwar_en;
9898c2ecf20Sopenharmony_ci
9908c2ecf20Sopenharmony_ci	bool ipa2g_on;
9918c2ecf20Sopenharmony_ci	struct b43_chanspec iqcal_chanspec_2G;
9928c2ecf20Sopenharmony_ci	struct b43_chanspec rssical_chanspec_2G;
9938c2ecf20Sopenharmony_ci
9948c2ecf20Sopenharmony_ci	bool ipa5g_on;
9958c2ecf20Sopenharmony_ci	struct b43_chanspec iqcal_chanspec_5G;
9968c2ecf20Sopenharmony_ci	struct b43_chanspec rssical_chanspec_5G;
9978c2ecf20Sopenharmony_ci
9988c2ecf20Sopenharmony_ci	struct b43_phy_n_rssical_cache rssical_cache;
9998c2ecf20Sopenharmony_ci	struct b43_phy_n_cal_cache cal_cache;
10008c2ecf20Sopenharmony_ci	bool crsminpwr_adjusted;
10018c2ecf20Sopenharmony_ci	bool noisevars_adjusted;
10028c2ecf20Sopenharmony_ci};
10038c2ecf20Sopenharmony_ci
10048c2ecf20Sopenharmony_ci
10058c2ecf20Sopenharmony_cistruct b43_phy_operations;
10068c2ecf20Sopenharmony_ciextern const struct b43_phy_operations b43_phyops_n;
10078c2ecf20Sopenharmony_ci
10088c2ecf20Sopenharmony_ci#endif /* B43_NPHY_H_ */
1009