GNU Linux-libre 4.19.207-gnu1
[releases.git] / drivers / staging / rtl8723bs / include / rtw_btcoex.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /******************************************************************************
3  *
4  * Copyright(c) 2013 Realtek Corporation. All rights reserved.
5  *
6  ******************************************************************************/
7 #ifndef __RTW_BTCOEX_H__
8 #define __RTW_BTCOEX_H__
9
10 #include <drv_types.h>
11
12
13 #define PACKET_NORMAL                   0
14 #define PACKET_DHCP                             1
15 #define PACKET_ARP                              2
16 #define PACKET_EAPOL                    3
17
18 void rtw_btcoex_Initialize(struct adapter *);
19 void rtw_btcoex_PowerOnSetting(struct adapter *padapter);
20 void rtw_btcoex_HAL_Initialize(struct adapter *padapter, u8 bWifiOnly);
21 void rtw_btcoex_IpsNotify(struct adapter *, u8 type);
22 void rtw_btcoex_LpsNotify(struct adapter *, u8 type);
23 void rtw_btcoex_ScanNotify(struct adapter *, u8 type);
24 void rtw_btcoex_ConnectNotify(struct adapter *, u8 action);
25 void rtw_btcoex_MediaStatusNotify(struct adapter *, u8 mediaStatus);
26 void rtw_btcoex_SpecialPacketNotify(struct adapter *, u8 pktType);
27 void rtw_btcoex_IQKNotify(struct adapter *padapter, u8 state);
28 void rtw_btcoex_BtInfoNotify(struct adapter *, u8 length, u8 *tmpBuf);
29 void rtw_btcoex_SuspendNotify(struct adapter *, u8 state);
30 void rtw_btcoex_HaltNotify(struct adapter *);
31 u8 rtw_btcoex_IsBtDisabled(struct adapter *);
32 void rtw_btcoex_Handler(struct adapter *);
33 s32 rtw_btcoex_IsBTCoexCtrlAMPDUSize(struct adapter *);
34 void rtw_btcoex_SetManualControl(struct adapter *, u8 bmanual);
35 u8 rtw_btcoex_IsBtControlLps(struct adapter *);
36 u8 rtw_btcoex_IsLpsOn(struct adapter *);
37 u8 rtw_btcoex_RpwmVal(struct adapter *);
38 u8 rtw_btcoex_LpsVal(struct adapter *);
39 void rtw_btcoex_SetBTCoexist(struct adapter *, u8 bBtExist);
40 void rtw_btcoex_SetChipType(struct adapter *, u8 chipType);
41 void rtw_btcoex_SetPGAntNum(struct adapter *, u8 antNum);
42 void rtw_btcoex_SetSingleAntPath(struct adapter *padapter, u8 singleAntPath);
43 u32 rtw_btcoex_GetRaMask(struct adapter *);
44 void rtw_btcoex_RecordPwrMode(struct adapter *, u8 *pCmdBuf, u8 cmdLen);
45 void rtw_btcoex_DisplayBtCoexInfo(struct adapter *, u8 *pbuf, u32 bufsize);
46 void rtw_btcoex_SetDBG(struct adapter *, u32 *pDbgModule);
47 u32 rtw_btcoex_GetDBG(struct adapter *, u8 *pStrBuf, u32 bufSize);
48
49 /*  ================================================== */
50 /*  Below Functions are called by BT-Coex */
51 /*  ================================================== */
52 void rtw_btcoex_RejectApAggregatedPacket(struct adapter *, u8 enable);
53 void rtw_btcoex_LPS_Enter(struct adapter *);
54 void rtw_btcoex_LPS_Leave(struct adapter *);
55
56 #endif /*  __RTW_BTCOEX_H__ */