Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
nu11secur1ty
GitHub Repository: nu11secur1ty/Kali-Linux
Path: blob/master/ALFA-W1F1/RTL8814AU/hal/phydm/halrf/halrf_dpk.h
1308 views
1
/******************************************************************************
2
*
3
* Copyright(c) 2007 - 2017 Realtek Corporation.
4
*
5
* This program is free software; you can redistribute it and/or modify it
6
* under the terms of version 2 of the GNU General Public License as
7
* published by the Free Software Foundation.
8
*
9
* This program is distributed in the hope that it will be useful, but WITHOUT
10
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
12
* more details.
13
*
14
* The full GNU General Public License is included in this distribution in the
15
* file called LICENSE.
16
*
17
* Contact Information:
18
* wlanfae <[email protected]>
19
* Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park,
20
* Hsinchu 300, Taiwan.
21
*
22
* Larry Finger <[email protected]>
23
*
24
*****************************************************************************/
25
26
#ifndef __HALRF_DPK_H__
27
#define __HALRF_DPK_H__
28
29
/*@--------------------------Define Parameters-------------------------------*/
30
#define GAIN_LOSS 1
31
#define DO_DPK 2
32
#define DPK_ON 3
33
#define GAIN_LOSS_PULSE 4
34
#define DPK_PAS 5
35
#define DPK_LMS 6
36
#define DPK_LOK 4
37
#define DPK_TXK 5
38
#define DAGC 4
39
#define LOSS_CHK 0
40
#define GAIN_CHK 1
41
#define PAS_READ 2
42
#define AVG_THERMAL_NUM 8
43
#define AVG_THERMAL_NUM_DPK 8
44
#define THERMAL_DPK_AVG_NUM 4
45
46
/*@---------------------------End Define Parameters---------------------------*/
47
48
struct dm_dpk_info {
49
50
boolean is_dpk_enable;
51
boolean is_dpk_pwr_on;
52
boolean is_dpk_by_channel;
53
boolean is_tssi_mode;
54
boolean is_reload;
55
u16 dpk_path_ok;
56
/*@BIT(15)~BIT(12) : 5G reserved, BIT(11)~BIT(8) 5G_S3~5G_S0*/
57
/*@BIT(7)~BIT(4) : 2G reserved, BIT(3)~BIT(0) 2G_S3~2G_S0*/
58
u8 thermal_dpk[4]; /*path*/
59
u8 thermal_dpk_avg[4][AVG_THERMAL_NUM_DPK]; /*path*/
60
u8 pre_pwsf[4];
61
u8 thermal_dpk_avg_index;
62
u32 gnt_control;
63
u32 gnt_value;
64
u8 dpk_ch;
65
u8 dpk_band;
66
u8 dpk_bw;
67
68
#if (RTL8822C_SUPPORT == 1 || RTL8812F_SUPPORT == 1)
69
u8 result[2]; /*path*/
70
u8 dpk_txagc[2]; /*path*/
71
u32 coef[2][20]; /*path/MDPD coefficient*/
72
u16 dpk_gs[2]; /*MDPD coef gs*/
73
u8 thermal_dpk_delta[2]; /*path*/
74
#endif
75
76
#if (RTL8198F_SUPPORT == 1 || RTL8192F_SUPPORT == 1 || RTL8197F_SUPPORT == 1 ||\
77
RTL8814B_SUPPORT == 1 || RTL8197G_SUPPORT == 1)
78
/*2G DPK data*/
79
u8 dpk_result[4][3]; /*path/group*/
80
u8 pwsf_2g[4][3]; /*path/group*/
81
u32 lut_2g_even[4][3][64]; /*path/group/LUT data*/
82
u32 lut_2g_odd[4][3][64]; /*path/group/LUT data*/
83
s16 tmp_pas_i[32]; /*PAScan I data*/
84
s16 tmp_pas_q[32]; /*PAScan Q data*/
85
/*5G DPK data*/
86
u8 dpk_5g_result[4][6]; /*path/group*/
87
u8 pwsf_5g[4][6]; /*path/group*/
88
u32 lut_5g[4][6][64]; /*path/group/LUT data*/
89
u32 lut_2g[4][3][64]; /*path/group/LUT data*/
90
/*8814B*/
91
u8 rxbb[4]; /*path/group*/
92
u8 txbb[4]; /*path/group*/
93
u8 tx_gain;
94
#endif
95
96
#if (RTL8195B_SUPPORT == 1)
97
/*2G DPK data*/
98
u8 dpk_2g_result[1][3]; /*path/group*/
99
u8 pwsf_2g[1][3]; /*path/group*/
100
u32 lut_2g_even[1][3][16]; /*path/group/LUT data*/
101
u32 lut_2g_odd[1][3][16]; /*path/group/LUT data*/
102
/*5G DPK data*/
103
u8 dpk_5g_result[1][13]; /*path/group*/
104
u8 pwsf_5g[1][13]; /*path/group*/
105
u32 lut_5g_even[1][13][16]; /*path/group/LUT data*/
106
u32 lut_5g_odd[1][13][16]; /*path/group/LUT data*/
107
#endif
108
109
#if (RTL8721D_SUPPORT == 1)
110
u8 dpk_txagc;
111
/*2G DPK data*/
112
u8 dpk_2g_result[1][3]; /*path/group*/
113
u8 pwsf_2g[1][3]; /*path/group*/
114
u32 lut_2g_even[1][3][16]; /*path/group/LUT data*/
115
u32 lut_2g_odd[1][3][16]; /*path/group/LUT data*/
116
/*5G DPK data*/
117
u8 dpk_5g_result[1][6]; /*path/group*/
118
u8 pwsf_5g[1][6]; /*path/group*/
119
u32 lut_5g_even[1][6][16]; /*path/group/LUT data*/
120
u32 lut_5g_odd[1][6][16]; /*path/group/LUT data*/
121
#endif
122
123
};
124
125
#endif /*__HALRF_DPK_H__*/
126
127