hal_btcoex.h 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  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 __HAL_BTCOEX_H__
  21. #define __HAL_BTCOEX_H__
  22. #include <drv_types.h>
  23. /* Some variables can't get from outsrc BT-Coex,
  24. * so we need to save here */
  25. typedef struct _BT_COEXIST {
  26. u8 bBtExist;
  27. u8 btTotalAntNum;
  28. u8 btChipType;
  29. u8 bInitlized;
  30. u8 btAntisolation;
  31. } BT_COEXIST, *PBT_COEXIST;
  32. void DBG_BT_INFO(u8 *dbgmsg);
  33. void hal_btcoex_SetBTCoexist(PADAPTER padapter, u8 bBtExist);
  34. u8 hal_btcoex_IsBtExist(PADAPTER padapter);
  35. u8 hal_btcoex_IsBtDisabled(PADAPTER);
  36. void hal_btcoex_SetChipType(PADAPTER padapter, u8 chipType);
  37. void hal_btcoex_SetPgAntNum(PADAPTER padapter, u8 antNum);
  38. u8 hal_btcoex_Initialize(PADAPTER padapter);
  39. void hal_btcoex_PowerOnSetting(PADAPTER padapter);
  40. void hal_btcoex_PowerOffSetting(PADAPTER padapter);
  41. void hal_btcoex_PreLoadFirmware(PADAPTER padapter);
  42. void hal_btcoex_InitHwConfig(PADAPTER padapter, u8 bWifiOnly);
  43. void hal_btcoex_IpsNotify(PADAPTER padapter, u8 type);
  44. void hal_btcoex_LpsNotify(PADAPTER padapter, u8 type);
  45. void hal_btcoex_ScanNotify(PADAPTER padapter, u8 type);
  46. void hal_btcoex_ConnectNotify(PADAPTER padapter, u8 action);
  47. void hal_btcoex_MediaStatusNotify(PADAPTER padapter, u8 mediaStatus);
  48. void hal_btcoex_SpecialPacketNotify(PADAPTER padapter, u8 pktType);
  49. void hal_btcoex_IQKNotify(PADAPTER padapter, u8 state);
  50. void hal_btcoex_BtInfoNotify(PADAPTER padapter, u8 length, u8 *tmpBuf);
  51. void hal_btcoex_BtMpRptNotify(PADAPTER padapter, u8 length, u8 *tmpBuf);
  52. void hal_btcoex_SuspendNotify(PADAPTER padapter, u8 state);
  53. void hal_btcoex_HaltNotify(PADAPTER padapter, u8 do_halt);
  54. void hal_btcoex_SwitchBtTRxMask(PADAPTER padapter);
  55. void hal_btcoex_Hanlder(PADAPTER padapter);
  56. s32 hal_btcoex_IsBTCoexRejectAMPDU(PADAPTER padapter);
  57. s32 hal_btcoex_IsBTCoexCtrlAMPDUSize(PADAPTER padapter);
  58. u32 hal_btcoex_GetAMPDUSize(PADAPTER padapter);
  59. void hal_btcoex_SetManualControl(PADAPTER padapter, u8 bmanual);
  60. u8 hal_btcoex_1Ant(PADAPTER padapter);
  61. u8 hal_btcoex_IsBtControlLps(PADAPTER);
  62. u8 hal_btcoex_IsLpsOn(PADAPTER);
  63. u8 hal_btcoex_RpwmVal(PADAPTER);
  64. u8 hal_btcoex_LpsVal(PADAPTER);
  65. u32 hal_btcoex_GetRaMask(PADAPTER);
  66. void hal_btcoex_RecordPwrMode(PADAPTER padapter, u8 *pCmdBuf, u8 cmdLen);
  67. void hal_btcoex_DisplayBtCoexInfo(PADAPTER, u8 *pbuf, u32 bufsize);
  68. void hal_btcoex_SetDBG(PADAPTER, u32 *pDbgModule);
  69. u32 hal_btcoex_GetDBG(PADAPTER, u8 *pStrBuf, u32 bufSize);
  70. u8 hal_btcoex_IncreaseScanDeviceNum(PADAPTER);
  71. u8 hal_btcoex_IsBtLinkExist(PADAPTER);
  72. void hal_btcoex_SetBtPatchVersion(PADAPTER, u16 btHciVer, u16 btPatchVer);
  73. void hal_btcoex_SetHciVersion(PADAPTER, u16 hciVersion);
  74. void hal_btcoex_SendScanNotify(PADAPTER, u8 type);
  75. void hal_btcoex_StackUpdateProfileInfo(void);
  76. void hal_btcoex_pta_off_on_notify(PADAPTER padapter, u8 bBTON);
  77. void hal_btcoex_SetAntIsolationType(PADAPTER padapter, u8 anttype);
  78. #ifdef CONFIG_LOAD_PHY_PARA_FROM_FILE
  79. int hal_btcoex_AntIsolationConfig_ParaFile(IN PADAPTER Adapter, IN char *pFileName);
  80. int hal_btcoex_ParseAntIsolationConfigFile(PADAPTER Adapter, char *buffer);
  81. #endif /* CONFIG_LOAD_PHY_PARA_FROM_FILE */
  82. u16 hal_btcoex_btreg_read(PADAPTER padapter, u8 type, u16 addr, u32 *data);
  83. u16 hal_btcoex_btreg_write(PADAPTER padapter, u8 type, u16 addr, u16 val);
  84. void hal_btcoex_set_rfe_type(u8 type);
  85. void hal_btcoex_switchband_notify(u8 under_scan, u8 band_type);
  86. #ifdef CONFIG_RF4CE_COEXIST
  87. void hal_btcoex_set_rf4ce_link_state(u8 state);
  88. u8 hal_btcoex_get_rf4ce_link_state(void);
  89. #endif
  90. #endif /* !__HAL_BTCOEX_H__ */