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__ */ 65