hc
2023-12-09 b22da3d8526a935aa31e086e63f60ff3246cb61c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
/* SPDX-License-Identifier: GPL-2.0 */
#ifndef __HAL_TXBF_INTERFACE_H__
#define __HAL_TXBF_INTERFACE_H__
 
#if (BEAMFORMING_SUPPORT == 1)
#if (DM_ODM_SUPPORT_TYPE == ODM_WIN)
VOID
Beamforming_GidPAid(
   PADAPTER    Adapter,
   PRT_TCB        pTcb
   );
 
RT_STATUS
Beamforming_GetReportFrame(
   IN    PADAPTER        Adapter,
   IN    PRT_RFD            pRfd,
   IN    POCTET_STRING    pPduOS
   );
 
VOID
Beamforming_GetNDPAFrame(
   IN    PVOID            pDM_VOID,
   IN    OCTET_STRING    pduOS
   );
 
BOOLEAN
SendFWHTNDPAPacket(
   IN    PVOID            pDM_VOID,
   IN    pu1Byte            RA,
   IN    CHANNEL_WIDTH    BW
   );
 
BOOLEAN
SendFWVHTNDPAPacket(
   IN    PVOID            pDM_VOID,
   IN    pu1Byte            RA,
   IN    u2Byte            AID,
   IN    CHANNEL_WIDTH    BW
   );
 
BOOLEAN
SendSWVHTNDPAPacket(
   IN    PVOID            pDM_VOID,
   IN    pu1Byte            RA,
   IN    u2Byte            AID,
   IN    CHANNEL_WIDTH    BW
   );
 
BOOLEAN
SendSWHTNDPAPacket(
   IN    PVOID            pDM_VOID,
   IN    pu1Byte            RA,
   IN    CHANNEL_WIDTH    BW
   );
 
#ifdef SUPPORT_MU_BF
#if (SUPPORT_MU_BF == 1)
RT_STATUS
Beamforming_GetVHTGIDMgntFrame(
   IN    PADAPTER        Adapter,
   IN    PRT_RFD            pRfd,
   IN    POCTET_STRING    pPduOS
   );
 
BOOLEAN
SendSWVHTGIDMgntFrame(
   IN    PVOID            pDM_VOID,
   IN    pu1Byte            RA,
   IN    u1Byte            Idx
   );
 
BOOLEAN
SendSWVHTBFReportPoll(
   IN    PVOID            pDM_VOID,
   IN    pu1Byte            RA,
   IN    BOOLEAN            bFinalPoll
   );
 
BOOLEAN
SendSWVHTMUNDPAPacket(
   IN    PVOID            pDM_VOID,
   IN    CHANNEL_WIDTH    BW
   );
#else
#define Beamforming_GetVHTGIDMgntFrame(Adapter, pRfd, pPduOS) RT_STATUS_FAILURE
#define SendSWVHTGIDMgntFrame(pDM_VOID, RA)
#define SendSWVHTBFReportPoll(pDM_VOID, RA, bFinalPoll)
#define SendSWVHTMUNDPAPacket(pDM_VOID, BW)
#endif
#endif
 
 
#elif (DM_ODM_SUPPORT_TYPE == ODM_CE)
 
u4Byte
Beamforming_GetReportFrame(
   IN    PVOID            pDM_VOID,
   union recv_frame *precv_frame
   );
 
BOOLEAN
SendFWHTNDPAPacket(
   IN    PVOID            pDM_VOID,
   IN    pu1Byte            RA,
   IN    CHANNEL_WIDTH    BW
   );
 
BOOLEAN
SendSWHTNDPAPacket(
   IN    PVOID            pDM_VOID,
   IN    pu1Byte            RA,
   IN    CHANNEL_WIDTH    BW
   );
 
BOOLEAN
SendFWVHTNDPAPacket(
   IN    PVOID            pDM_VOID,
   IN    pu1Byte            RA,
   IN    u2Byte            AID,
   IN    CHANNEL_WIDTH    BW
   );
 
BOOLEAN
SendSWVHTNDPAPacket(
   IN    PVOID            pDM_VOID,
   IN    pu1Byte            RA,
   IN    u2Byte            AID,
   IN    CHANNEL_WIDTH    BW
   );
#endif
 
VOID
Beamforming_GetNDPAFrame(
   IN    PVOID            pDM_VOID,
#if (DM_ODM_SUPPORT_TYPE == ODM_WIN)
   IN    OCTET_STRING    pduOS
#elif (DM_ODM_SUPPORT_TYPE == ODM_CE)
   union recv_frame *precv_frame
#endif
);
 
#else
#define Beamforming_GetNDPAFrame(pDM_Odm, _PduOS)
#if (DM_ODM_SUPPORT_TYPE == ODM_CE)
#define Beamforming_GetReportFrame(Adapter, precv_frame)        RT_STATUS_FAILURE
#elif (DM_ODM_SUPPORT_TYPE == ODM_WIN)
#define Beamforming_GetReportFrame(Adapter, pRfd, pPduOS)        RT_STATUS_FAILURE
#define Beamforming_GetVHTGIDMgntFrame(Adapter, pRfd, pPduOS) RT_STATUS_FAILURE
#endif
#define SendFWHTNDPAPacket(pDM_VOID, RA, BW)
#define SendSWHTNDPAPacket(pDM_VOID, RA, BW)
#define SendFWVHTNDPAPacket(pDM_VOID, RA, AID, BW)
#define SendSWVHTNDPAPacket(pDM_VOID, RA,    AID, BW)
#define SendSWVHTGIDMgntFrame(pDM_VOID, RA, idx)
#define SendSWVHTBFReportPoll(pDM_VOID, RA, bFinalPoll)
#define SendSWVHTMUNDPAPacket(pDM_VOID, BW)
#endif
 
#endif