OSDN Git Service

staging: rtl8723bs: add source files for the new driver
[android-x86/kernel.git] / drivers / staging / rtl8723bs / 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  ******************************************************************************/
15 #ifndef __RTW_BTCOEX_H__
16 #define __RTW_BTCOEX_H__
17
18 #include <drv_types.h>
19
20
21 #define PACKET_NORMAL                   0
22 #define PACKET_DHCP                             1
23 #define PACKET_ARP                              2
24 #define PACKET_EAPOL                    3
25
26 void rtw_btcoex_Initialize(struct adapter *);
27 void rtw_btcoex_PowerOnSetting(struct adapter *padapter);
28 void rtw_btcoex_HAL_Initialize(struct adapter *padapter, u8 bWifiOnly);
29 void rtw_btcoex_IpsNotify(struct adapter *, u8 type);
30 void rtw_btcoex_LpsNotify(struct adapter *, u8 type);
31 void rtw_btcoex_ScanNotify(struct adapter *, u8 type);
32 void rtw_btcoex_ConnectNotify(struct adapter *, u8 action);
33 void rtw_btcoex_MediaStatusNotify(struct adapter *, u8 mediaStatus);
34 void rtw_btcoex_SpecialPacketNotify(struct adapter *, u8 pktType);
35 void rtw_btcoex_IQKNotify(struct adapter *padapter, u8 state);
36 void rtw_btcoex_BtInfoNotify(struct adapter *, u8 length, u8 *tmpBuf);
37 void rtw_btcoex_SuspendNotify(struct adapter *, u8 state);
38 void rtw_btcoex_HaltNotify(struct adapter *);
39 u8 rtw_btcoex_IsBtDisabled(struct adapter *);
40 void rtw_btcoex_Handler(struct adapter *);
41 s32 rtw_btcoex_IsBTCoexCtrlAMPDUSize(struct adapter *);
42 void rtw_btcoex_SetManualControl(struct adapter *, u8 bmanual);
43 u8 rtw_btcoex_IsBtControlLps(struct adapter *);
44 u8 rtw_btcoex_IsLpsOn(struct adapter *);
45 u8 rtw_btcoex_RpwmVal(struct adapter *);
46 u8 rtw_btcoex_LpsVal(struct adapter *);
47 void rtw_btcoex_SetBTCoexist(struct adapter *, u8 bBtExist);
48 void rtw_btcoex_SetChipType(struct adapter *, u8 chipType);
49 void rtw_btcoex_SetPGAntNum(struct adapter *, u8 antNum);
50 void rtw_btcoex_SetSingleAntPath(struct adapter *padapter, u8 singleAntPath);
51 u32 rtw_btcoex_GetRaMask(struct adapter *);
52 void rtw_btcoex_RecordPwrMode(struct adapter *, u8 *pCmdBuf, u8 cmdLen);
53 void rtw_btcoex_DisplayBtCoexInfo(struct adapter *, u8 *pbuf, u32 bufsize);
54 void rtw_btcoex_SetDBG(struct adapter *, u32 *pDbgModule);
55 u32 rtw_btcoex_GetDBG(struct adapter *, u8 *pStrBuf, u32 bufSize);
56
57 /*  ================================================== */
58 /*  Below Functions are called by BT-Coex */
59 /*  ================================================== */
60 void rtw_btcoex_RejectApAggregatedPacket(struct adapter *, u8 enable);
61 void rtw_btcoex_LPS_Enter(struct adapter *);
62 void rtw_btcoex_LPS_Leave(struct adapter *);
63
64 #endif /*  __RTW_BTCOEX_H__ */