HalPhyRf.h 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. /******************************************************************************
  2. *
  3. * Copyright(c) 2007 - 2011 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_PHY_RF_H__
  21. #define __HAL_PHY_RF_H__
  22. typedef enum _SPUR_CAL_METHOD {
  23. PLL_RESET,
  24. AFE_PHASE_SEL
  25. } SPUR_CAL_METHOD;
  26. typedef enum _PWRTRACK_CONTROL_METHOD {
  27. BBSWING,
  28. TXAGC,
  29. MIX_MODE
  30. } PWRTRACK_METHOD;
  31. typedef VOID (*FuncSetPwr)(PDM_ODM_T, PWRTRACK_METHOD, u1Byte, u1Byte);
  32. typedef VOID (*FuncIQK)(PDM_ODM_T, u1Byte, u1Byte, u1Byte);
  33. typedef VOID (*FuncLCK)(PDM_ODM_T);
  34. typedef VOID (*FuncSwing)(PDM_ODM_T, pu1Byte*, pu1Byte*, pu1Byte*, pu1Byte*);
  35. typedef struct _TXPWRTRACK_CFG {
  36. u1Byte SwingTableSize_CCK;
  37. u1Byte SwingTableSize_OFDM;
  38. u1Byte Threshold_IQK;
  39. u1Byte AverageThermalNum;
  40. u1Byte RfPathCount;
  41. u4Byte ThermalRegAddr;
  42. FuncSetPwr ODM_TxPwrTrackSetPwr;
  43. FuncIQK DoIQK;
  44. FuncLCK PHY_LCCalibrate;
  45. FuncSwing GetDeltaSwingTable;
  46. } TXPWRTRACK_CFG, *PTXPWRTRACK_CFG;
  47. void ConfigureTxpowerTrack(
  48. IN PDM_ODM_T pDM_Odm,
  49. OUT PTXPWRTRACK_CFG pConfig
  50. );
  51. VOID
  52. ODM_ClearTxPowerTrackingState(
  53. IN PDM_ODM_T pDM_Odm
  54. );
  55. VOID
  56. ODM_TXPowerTrackingCallback_ThermalMeter(
  57. #if (DM_ODM_SUPPORT_TYPE & ODM_AP)
  58. IN PDM_ODM_T pDM_Odm
  59. #else
  60. IN PADAPTER Adapter
  61. #endif
  62. );
  63. #define ODM_TARGET_CHNL_NUM_2G_5G 59
  64. VOID
  65. ODM_ResetIQKResult(
  66. IN PDM_ODM_T pDM_Odm
  67. );
  68. u1Byte
  69. ODM_GetRightChnlPlaceforIQK(
  70. IN u1Byte chnl
  71. );
  72. #endif // #ifndef __HAL_PHY_RF_H__