Wifi: rtl8812au wifi support.
[firefly-linux-kernel-4.4.55.git] / drivers / net / wireless / rockchip_wlan / rtl8812au / include / rtw_btcoex.h
1 /******************************************************************************
2  *
3  * Copyright(c) 2013 Realtek Corporation. All rights reserved.
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  * You should have received a copy of the GNU General Public License along with
15  * this program; if not, write to the Free Software Foundation, Inc.,
16  * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA
17  *
18  *
19  ******************************************************************************/
20 #ifndef __RTW_BTCOEX_H__
21 #define __RTW_BTCOEX_H__
22
23 #include <drv_types.h>
24
25
26 #define PACKET_NORMAL                   0
27 #define PACKET_DHCP                             1
28 #define PACKET_ARP                              2
29 #define PACKET_EAPOL                    3
30
31 void rtw_btcoex_Initialize(PADAPTER);
32 void rtw_btcoex_PowerOnSetting(PADAPTER padapter);
33 void rtw_btcoex_PreLoadFirmware(PADAPTER padapter);
34 void rtw_btcoex_HAL_Initialize(PADAPTER padapter, u8 bWifiOnly);
35 void rtw_btcoex_IpsNotify(PADAPTER, u8 type);
36 void rtw_btcoex_LpsNotify(PADAPTER, u8 type);
37 void rtw_btcoex_ScanNotify(PADAPTER, u8 type);
38 void rtw_btcoex_ConnectNotify(PADAPTER, u8 action);
39 void rtw_btcoex_MediaStatusNotify(PADAPTER, u8 mediaStatus);
40 void rtw_btcoex_SpecialPacketNotify(PADAPTER, u8 pktType);
41 void rtw_btcoex_IQKNotify(PADAPTER padapter, u8 state);
42 void rtw_btcoex_BtInfoNotify(PADAPTER, u8 length, u8 *tmpBuf);
43 void rtw_btcoex_SuspendNotify(PADAPTER, u8 state);
44 void rtw_btcoex_HaltNotify(PADAPTER);
45 void rtw_btcoex_SwitchBtTRxMask(PADAPTER);
46 void rtw_btcoex_Switch(PADAPTER, u8 enable);
47 u8 rtw_btcoex_IsBtDisabled(PADAPTER);
48 void rtw_btcoex_Handler(PADAPTER);
49 s32 rtw_btcoex_IsBTCoexCtrlAMPDUSize(PADAPTER);
50 u32 rtw_btcoex_GetAMPDUSize(PADAPTER);
51 void rtw_btcoex_SetManualControl(PADAPTER, u8 bmanual);
52 u8 rtw_btcoex_1Ant(PADAPTER);
53 u8 rtw_btcoex_IsBtControlLps(PADAPTER);
54 u8 rtw_btcoex_IsLpsOn(PADAPTER);
55 u8 rtw_btcoex_RpwmVal(PADAPTER);
56 u8 rtw_btcoex_LpsVal(PADAPTER);
57 void rtw_btcoex_SetBTCoexist(PADAPTER, u8 bBtExist);
58 void rtw_btcoex_SetChipType(PADAPTER, u8 chipType);
59 void rtw_btcoex_SetPGAntNum(PADAPTER, u8 antNum);
60 u8 rtw_btcoex_GetPGAntNum(PADAPTER);
61 void rtw_btcoex_SetSingleAntPath(PADAPTER padapter, u8 singleAntPath);
62 u32 rtw_btcoex_GetRaMask(PADAPTER);
63 void rtw_btcoex_RecordPwrMode(PADAPTER, u8 *pCmdBuf, u8 cmdLen);
64 void rtw_btcoex_DisplayBtCoexInfo(PADAPTER, u8 *pbuf, u32 bufsize);
65 void rtw_btcoex_SetDBG(PADAPTER, u32 *pDbgModule);
66 u32 rtw_btcoex_GetDBG(PADAPTER, u8 *pStrBuf, u32 bufSize);
67 u8 rtw_btcoex_IncreaseScanDeviceNum(PADAPTER);
68 u8 rtw_btcoex_IsBtLinkExist(PADAPTER);
69
70 // ==================================================
71 // Below Functions are called by BT-Coex
72 // ==================================================
73 void rtw_btcoex_RejectApAggregatedPacket(PADAPTER, u8 enable);
74 void rtw_btcoex_LPS_Enter(PADAPTER);
75 void rtw_btcoex_LPS_Leave(PADAPTER);
76
77 #endif // __RTW_BTCOEX_H__
78