162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */
262306a36Sopenharmony_ci/* Copyright(c) 2009-2012  Realtek Corporation.*/
362306a36Sopenharmony_ci
462306a36Sopenharmony_ci#ifndef __RTL92C_DEF_H__
562306a36Sopenharmony_ci#define __RTL92C_DEF_H__
662306a36Sopenharmony_ci
762306a36Sopenharmony_ci#define	PHY_RSSI_SLID_WIN_MAX				100
862306a36Sopenharmony_ci#define	PHY_LINKQUALITY_SLID_WIN_MAX			20
962306a36Sopenharmony_ci#define	PHY_BEACON_RSSI_SLID_WIN_MAX			10
1062306a36Sopenharmony_ci
1162306a36Sopenharmony_ci#define RX_SMOOTH_FACTOR				20
1262306a36Sopenharmony_ci
1362306a36Sopenharmony_ci#define HAL_PRIME_CHNL_OFFSET_DONT_CARE			0
1462306a36Sopenharmony_ci#define HAL_PRIME_CHNL_OFFSET_LOWER			1
1562306a36Sopenharmony_ci#define HAL_PRIME_CHNL_OFFSET_UPPER			2
1662306a36Sopenharmony_ci
1762306a36Sopenharmony_ci#define RX_MPDU_QUEUE					0
1862306a36Sopenharmony_ci#define RX_CMD_QUEUE					1
1962306a36Sopenharmony_ci
2062306a36Sopenharmony_ci#define CHIP_VER_B			BIT(4)
2162306a36Sopenharmony_ci#define CHIP_BONDING_IDENTIFIER(_value) (((_value) >> 22) & 0x3)
2262306a36Sopenharmony_ci#define CHIP_BONDING_92C_1T2R		0x1
2362306a36Sopenharmony_ci#define RF_TYPE_1T2R			BIT(1)
2462306a36Sopenharmony_ci#define CHIP_92C_BITMASK		BIT(0)
2562306a36Sopenharmony_ci#define CHIP_UNKNOWN			BIT(7)
2662306a36Sopenharmony_ci#define CHIP_92C_1T2R			0x03
2762306a36Sopenharmony_ci#define CHIP_92C			0x01
2862306a36Sopenharmony_ci#define CHIP_88C			0x00
2962306a36Sopenharmony_ci
3062306a36Sopenharmony_cienum version_8192c {
3162306a36Sopenharmony_ci	VERSION_A_CHIP_92C = 0x01,
3262306a36Sopenharmony_ci	VERSION_A_CHIP_88C = 0x00,
3362306a36Sopenharmony_ci	VERSION_B_CHIP_92C = 0x11,
3462306a36Sopenharmony_ci	VERSION_B_CHIP_88C = 0x10,
3562306a36Sopenharmony_ci	VERSION_TEST_CHIP_88C = 0x00,
3662306a36Sopenharmony_ci	VERSION_TEST_CHIP_92C = 0x01,
3762306a36Sopenharmony_ci	VERSION_NORMAL_TSMC_CHIP_88C = 0x10,
3862306a36Sopenharmony_ci	VERSION_NORMAL_TSMC_CHIP_92C = 0x11,
3962306a36Sopenharmony_ci	VERSION_NORMAL_TSMC_CHIP_92C_1T2R = 0x13,
4062306a36Sopenharmony_ci	VERSION_NORMAL_UMC_CHIP_88C_A_CUT = 0x30,
4162306a36Sopenharmony_ci	VERSION_NORMAL_UMC_CHIP_92C_A_CUT = 0x31,
4262306a36Sopenharmony_ci	VERSION_NORMAL_UMC_CHIP_92C_1T2R_A_CUT = 0x33,
4362306a36Sopenharmony_ci	VERSION_NORMA_UMC_CHIP_8723_1T1R_A_CUT = 0x34,
4462306a36Sopenharmony_ci	VERSION_NORMA_UMC_CHIP_8723_1T1R_B_CUT = 0x3c,
4562306a36Sopenharmony_ci	VERSION_NORMAL_UMC_CHIP_88C_B_CUT = 0x70,
4662306a36Sopenharmony_ci	VERSION_NORMAL_UMC_CHIP_92C_B_CUT = 0x71,
4762306a36Sopenharmony_ci	VERSION_NORMAL_UMC_CHIP_92C_1T2R_B_CUT = 0x73,
4862306a36Sopenharmony_ci	VERSION_UNKNOWN = 0x88,
4962306a36Sopenharmony_ci};
5062306a36Sopenharmony_ci
5162306a36Sopenharmony_cienum rtl819x_loopback_e {
5262306a36Sopenharmony_ci	RTL819X_NO_LOOPBACK = 0,
5362306a36Sopenharmony_ci	RTL819X_MAC_LOOPBACK = 1,
5462306a36Sopenharmony_ci	RTL819X_DMA_LOOPBACK = 2,
5562306a36Sopenharmony_ci	RTL819X_CCK_LOOPBACK = 3,
5662306a36Sopenharmony_ci};
5762306a36Sopenharmony_ci
5862306a36Sopenharmony_cienum rf_optype {
5962306a36Sopenharmony_ci	RF_OP_BY_SW_3WIRE = 0,
6062306a36Sopenharmony_ci	RF_OP_BY_FW,
6162306a36Sopenharmony_ci	RF_OP_MAX
6262306a36Sopenharmony_ci};
6362306a36Sopenharmony_ci
6462306a36Sopenharmony_cienum rf_power_state {
6562306a36Sopenharmony_ci	RF_ON,
6662306a36Sopenharmony_ci	RF_OFF,
6762306a36Sopenharmony_ci	RF_SLEEP,
6862306a36Sopenharmony_ci	RF_SHUT_DOWN,
6962306a36Sopenharmony_ci};
7062306a36Sopenharmony_ci
7162306a36Sopenharmony_cienum power_save_mode {
7262306a36Sopenharmony_ci	POWER_SAVE_MODE_ACTIVE,
7362306a36Sopenharmony_ci	POWER_SAVE_MODE_SAVE,
7462306a36Sopenharmony_ci};
7562306a36Sopenharmony_ci
7662306a36Sopenharmony_cienum power_polocy_config {
7762306a36Sopenharmony_ci	POWERCFG_MAX_POWER_SAVINGS,
7862306a36Sopenharmony_ci	POWERCFG_GLOBAL_POWER_SAVINGS,
7962306a36Sopenharmony_ci	POWERCFG_LOCAL_POWER_SAVINGS,
8062306a36Sopenharmony_ci	POWERCFG_LENOVO,
8162306a36Sopenharmony_ci};
8262306a36Sopenharmony_ci
8362306a36Sopenharmony_cienum interface_select_pci {
8462306a36Sopenharmony_ci	INTF_SEL1_MINICARD = 0,
8562306a36Sopenharmony_ci	INTF_SEL0_PCIE = 1,
8662306a36Sopenharmony_ci	INTF_SEL2_RSV = 2,
8762306a36Sopenharmony_ci	INTF_SEL3_RSV = 3,
8862306a36Sopenharmony_ci};
8962306a36Sopenharmony_ci
9062306a36Sopenharmony_cienum rtl_desc_qsel {
9162306a36Sopenharmony_ci	QSLT_BK = 0x2,
9262306a36Sopenharmony_ci	QSLT_BE = 0x0,
9362306a36Sopenharmony_ci	QSLT_VI = 0x5,
9462306a36Sopenharmony_ci	QSLT_VO = 0x7,
9562306a36Sopenharmony_ci	QSLT_BEACON = 0x10,
9662306a36Sopenharmony_ci	QSLT_HIGH = 0x11,
9762306a36Sopenharmony_ci	QSLT_MGNT = 0x12,
9862306a36Sopenharmony_ci	QSLT_CMD = 0x13,
9962306a36Sopenharmony_ci};
10062306a36Sopenharmony_ci
10162306a36Sopenharmony_cistruct phy_sts_cck_8192s_t {
10262306a36Sopenharmony_ci	u8 adc_pwdb_X[4];
10362306a36Sopenharmony_ci	u8 sq_rpt;
10462306a36Sopenharmony_ci	u8 cck_agc_rpt;
10562306a36Sopenharmony_ci};
10662306a36Sopenharmony_ci
10762306a36Sopenharmony_cistruct h2c_cmd_8192c {
10862306a36Sopenharmony_ci	u8 element_id;
10962306a36Sopenharmony_ci	u32 cmd_len;
11062306a36Sopenharmony_ci	u8 *p_cmdbuffer;
11162306a36Sopenharmony_ci};
11262306a36Sopenharmony_ci
11362306a36Sopenharmony_ci#endif
114