1 /******************************************************************************
3 * Copyright(c) 2013 Realtek Corporation. All rights reserved.
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.
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
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
19 ******************************************************************************/
20 #ifndef __HAL_BTCOEX_H__
21 #define __HAL_BTCOEX_H__
23 #include <drv_types.h>
25 // Some variables can't get from outsrc BT-Coex,
26 // so we need to save here
27 typedef struct _BT_COEXIST
34 } BT_COEXIST, *PBT_COEXIST;
36 void DBG_BT_INFO(u8 *dbgmsg);
38 void hal_btcoex_SetBTCoexist(PADAPTER padapter, u8 bBtExist);
39 u8 hal_btcoex_IsBtExist(PADAPTER padapter);
40 u8 hal_btcoex_IsBtDisabled(PADAPTER);
41 void hal_btcoex_SetChipType(PADAPTER padapter, u8 chipType);
42 u8 hal_btcoex_GetChipType(PADAPTER padapter);
43 void hal_btcoex_SetPgAntNum(PADAPTER padapter, u8 antNum);
44 u8 hal_btcoex_GetPgAntNum(PADAPTER padapter);
45 void hal_btcoex_SetSingleAntPath(PADAPTER padapter, u8 singleAntPath);
47 u8 hal_btcoex_Initialize(PADAPTER padapter);
48 void hal_btcoex_PowerOnSetting(PADAPTER padapter);
49 void hal_btcoex_PreLoadFirmware(PADAPTER padapter);
50 void hal_btcoex_InitHwConfig(PADAPTER padapter, u8 bWifiOnly);
52 void hal_btcoex_IpsNotify(PADAPTER padapter, u8 type);
53 void hal_btcoex_LpsNotify(PADAPTER padapter, u8 type);
54 void hal_btcoex_ScanNotify(PADAPTER padapter, u8 type);
55 void hal_btcoex_ConnectNotify(PADAPTER padapter, u8 action);
56 void hal_btcoex_MediaStatusNotify(PADAPTER padapter, u8 mediaStatus);
57 void hal_btcoex_SpecialPacketNotify(PADAPTER padapter, u8 pktType);
58 void hal_btcoex_IQKNotify(PADAPTER padapter, u8 state);
59 void hal_btcoex_BtInfoNotify(PADAPTER padapter, u8 length, u8 *tmpBuf);
60 void hal_btcoex_SuspendNotify(PADAPTER padapter, u8 state);
61 void hal_btcoex_HaltNotify(PADAPTER padapter);
62 void hal_btcoex_SwitchBtTRxMask(PADAPTER padapter);
64 void hal_btcoex_Hanlder(PADAPTER padapter);
66 s32 hal_btcoex_IsBTCoexCtrlAMPDUSize(PADAPTER padapter);
67 u32 hal_btcoex_GetAMPDUSize(PADAPTER padapter);
68 void hal_btcoex_SetManualControl(PADAPTER padapter, u8 bmanual);
69 u8 hal_btcoex_1Ant(PADAPTER padapter);
70 u8 hal_btcoex_IsBtControlLps(PADAPTER);
71 u8 hal_btcoex_IsLpsOn(PADAPTER);
72 u8 hal_btcoex_RpwmVal(PADAPTER);
73 u8 hal_btcoex_LpsVal(PADAPTER);
74 u32 hal_btcoex_GetRaMask(PADAPTER);
75 void hal_btcoex_RecordPwrMode(PADAPTER padapter, u8 *pCmdBuf, u8 cmdLen);
76 void hal_btcoex_DisplayBtCoexInfo(PADAPTER, u8 *pbuf, u32 bufsize);
77 void hal_btcoex_SetDBG(PADAPTER, u32 *pDbgModule);
78 u32 hal_btcoex_GetDBG(PADAPTER, u8 *pStrBuf, u32 bufSize);
79 u8 hal_btcoex_IncreaseScanDeviceNum(PADAPTER);
80 u8 hal_btcoex_IsBtLinkExist(PADAPTER);
81 void hal_btcoex_SetAntIsolationType(PADAPTER padapter, u8 anttype);
82 #ifdef CONFIG_LOAD_PHY_PARA_FROM_FILE
83 int hal_btcoex_AntIsolationConfig_ParaFile(IN PADAPTER Adapter,IN char* pFileName);
84 int hal_btcoex_ParseAntIsolationConfigFile(PADAPTER Adapter, char* buffer);
85 #endif // CONFIG_LOAD_PHY_PARA_FROM_FILE
86 #endif // !__HAL_BTCOEX_H__