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