xref: /linux/drivers/net/wireless/realtek/rtlwifi/rtl8192ce/def.h (revision 976e3645923bdd2fe7893aae33fd7a21098bfb28)
1*0770f718SLarry Finger /* SPDX-License-Identifier: GPL-2.0 */
2*0770f718SLarry Finger /* Copyright(c) 2009-2012  Realtek Corporation.*/
3f1d2b4d3SLarry Finger 
4f1d2b4d3SLarry Finger #ifndef __RTL92C_DEF_H__
5f1d2b4d3SLarry Finger #define __RTL92C_DEF_H__
6f1d2b4d3SLarry Finger 
7f1d2b4d3SLarry Finger #define	PHY_RSSI_SLID_WIN_MAX				100
8f1d2b4d3SLarry Finger #define	PHY_LINKQUALITY_SLID_WIN_MAX			20
9f1d2b4d3SLarry Finger #define	PHY_BEACON_RSSI_SLID_WIN_MAX			10
10f1d2b4d3SLarry Finger 
11f1d2b4d3SLarry Finger #define RX_SMOOTH_FACTOR				20
12f1d2b4d3SLarry Finger 
13f1d2b4d3SLarry Finger #define HAL_PRIME_CHNL_OFFSET_DONT_CARE			0
14f1d2b4d3SLarry Finger #define HAL_PRIME_CHNL_OFFSET_LOWER			1
15f1d2b4d3SLarry Finger #define HAL_PRIME_CHNL_OFFSET_UPPER			2
16f1d2b4d3SLarry Finger 
17f1d2b4d3SLarry Finger #define RX_MPDU_QUEUE					0
18f1d2b4d3SLarry Finger #define RX_CMD_QUEUE					1
19f1d2b4d3SLarry Finger 
20f1d2b4d3SLarry Finger #define CHIP_VER_B			BIT(4)
21f1d2b4d3SLarry Finger #define CHIP_BONDING_IDENTIFIER(_value) (((_value) >> 22) & 0x3)
22f1d2b4d3SLarry Finger #define CHIP_BONDING_92C_1T2R		0x1
23f1d2b4d3SLarry Finger #define RF_TYPE_1T2R			BIT(1)
24f1d2b4d3SLarry Finger #define CHIP_92C_BITMASK		BIT(0)
25f1d2b4d3SLarry Finger #define CHIP_UNKNOWN			BIT(7)
26f1d2b4d3SLarry Finger #define CHIP_92C_1T2R			0x03
27f1d2b4d3SLarry Finger #define CHIP_92C			0x01
28f1d2b4d3SLarry Finger #define CHIP_88C			0x00
29f1d2b4d3SLarry Finger 
30f1d2b4d3SLarry Finger enum version_8192c {
31f1d2b4d3SLarry Finger 	VERSION_A_CHIP_92C = 0x01,
32f1d2b4d3SLarry Finger 	VERSION_A_CHIP_88C = 0x00,
33f1d2b4d3SLarry Finger 	VERSION_B_CHIP_92C = 0x11,
34f1d2b4d3SLarry Finger 	VERSION_B_CHIP_88C = 0x10,
35f1d2b4d3SLarry Finger 	VERSION_TEST_CHIP_88C = 0x00,
36f1d2b4d3SLarry Finger 	VERSION_TEST_CHIP_92C = 0x01,
37f1d2b4d3SLarry Finger 	VERSION_NORMAL_TSMC_CHIP_88C = 0x10,
38f1d2b4d3SLarry Finger 	VERSION_NORMAL_TSMC_CHIP_92C = 0x11,
39f1d2b4d3SLarry Finger 	VERSION_NORMAL_TSMC_CHIP_92C_1T2R = 0x13,
40f1d2b4d3SLarry Finger 	VERSION_NORMAL_UMC_CHIP_88C_A_CUT = 0x30,
41f1d2b4d3SLarry Finger 	VERSION_NORMAL_UMC_CHIP_92C_A_CUT = 0x31,
42f1d2b4d3SLarry Finger 	VERSION_NORMAL_UMC_CHIP_92C_1T2R_A_CUT = 0x33,
43f1d2b4d3SLarry Finger 	VERSION_NORMA_UMC_CHIP_8723_1T1R_A_CUT = 0x34,
44f1d2b4d3SLarry Finger 	VERSION_NORMA_UMC_CHIP_8723_1T1R_B_CUT = 0x3c,
45f1d2b4d3SLarry Finger 	VERSION_NORMAL_UMC_CHIP_88C_B_CUT = 0x70,
46f1d2b4d3SLarry Finger 	VERSION_NORMAL_UMC_CHIP_92C_B_CUT = 0x71,
47f1d2b4d3SLarry Finger 	VERSION_NORMAL_UMC_CHIP_92C_1T2R_B_CUT = 0x73,
48f1d2b4d3SLarry Finger 	VERSION_UNKNOWN = 0x88,
49f1d2b4d3SLarry Finger };
50f1d2b4d3SLarry Finger 
51f1d2b4d3SLarry Finger enum rtl819x_loopback_e {
52f1d2b4d3SLarry Finger 	RTL819X_NO_LOOPBACK = 0,
53f1d2b4d3SLarry Finger 	RTL819X_MAC_LOOPBACK = 1,
54f1d2b4d3SLarry Finger 	RTL819X_DMA_LOOPBACK = 2,
55f1d2b4d3SLarry Finger 	RTL819X_CCK_LOOPBACK = 3,
56f1d2b4d3SLarry Finger };
57f1d2b4d3SLarry Finger 
58f1d2b4d3SLarry Finger enum rf_optype {
59f1d2b4d3SLarry Finger 	RF_OP_BY_SW_3WIRE = 0,
60f1d2b4d3SLarry Finger 	RF_OP_BY_FW,
61f1d2b4d3SLarry Finger 	RF_OP_MAX
62f1d2b4d3SLarry Finger };
63f1d2b4d3SLarry Finger 
64f1d2b4d3SLarry Finger enum rf_power_state {
65f1d2b4d3SLarry Finger 	RF_ON,
66f1d2b4d3SLarry Finger 	RF_OFF,
67f1d2b4d3SLarry Finger 	RF_SLEEP,
68f1d2b4d3SLarry Finger 	RF_SHUT_DOWN,
69f1d2b4d3SLarry Finger };
70f1d2b4d3SLarry Finger 
71f1d2b4d3SLarry Finger enum power_save_mode {
72f1d2b4d3SLarry Finger 	POWER_SAVE_MODE_ACTIVE,
73f1d2b4d3SLarry Finger 	POWER_SAVE_MODE_SAVE,
74f1d2b4d3SLarry Finger };
75f1d2b4d3SLarry Finger 
76f1d2b4d3SLarry Finger enum power_polocy_config {
77f1d2b4d3SLarry Finger 	POWERCFG_MAX_POWER_SAVINGS,
78f1d2b4d3SLarry Finger 	POWERCFG_GLOBAL_POWER_SAVINGS,
79f1d2b4d3SLarry Finger 	POWERCFG_LOCAL_POWER_SAVINGS,
80f1d2b4d3SLarry Finger 	POWERCFG_LENOVO,
81f1d2b4d3SLarry Finger };
82f1d2b4d3SLarry Finger 
83f1d2b4d3SLarry Finger enum interface_select_pci {
84f1d2b4d3SLarry Finger 	INTF_SEL1_MINICARD = 0,
85f1d2b4d3SLarry Finger 	INTF_SEL0_PCIE = 1,
86f1d2b4d3SLarry Finger 	INTF_SEL2_RSV = 2,
87f1d2b4d3SLarry Finger 	INTF_SEL3_RSV = 3,
88f1d2b4d3SLarry Finger };
89f1d2b4d3SLarry Finger 
90f1d2b4d3SLarry Finger enum rtl_desc_qsel {
91f1d2b4d3SLarry Finger 	QSLT_BK = 0x2,
92f1d2b4d3SLarry Finger 	QSLT_BE = 0x0,
93f1d2b4d3SLarry Finger 	QSLT_VI = 0x5,
94f1d2b4d3SLarry Finger 	QSLT_VO = 0x7,
95f1d2b4d3SLarry Finger 	QSLT_BEACON = 0x10,
96f1d2b4d3SLarry Finger 	QSLT_HIGH = 0x11,
97f1d2b4d3SLarry Finger 	QSLT_MGNT = 0x12,
98f1d2b4d3SLarry Finger 	QSLT_CMD = 0x13,
99f1d2b4d3SLarry Finger };
100f1d2b4d3SLarry Finger 
101f1d2b4d3SLarry Finger struct phy_sts_cck_8192s_t {
102f1d2b4d3SLarry Finger 	u8 adc_pwdb_X[4];
103f1d2b4d3SLarry Finger 	u8 sq_rpt;
104f1d2b4d3SLarry Finger 	u8 cck_agc_rpt;
105f1d2b4d3SLarry Finger };
106f1d2b4d3SLarry Finger 
107f1d2b4d3SLarry Finger struct h2c_cmd_8192c {
108f1d2b4d3SLarry Finger 	u8 element_id;
109f1d2b4d3SLarry Finger 	u32 cmd_len;
110f1d2b4d3SLarry Finger 	u8 *p_cmdbuffer;
111f1d2b4d3SLarry Finger };
112f1d2b4d3SLarry Finger 
113f1d2b4d3SLarry Finger #endif
114