rtl8192c_cmd.h 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  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 __RTL8192C_CMD_H_
  21. #define __RTL8192C_CMD_H_
  22. enum cmd_msg_element_id
  23. {
  24. NONE_CMDMSG_EID,
  25. AP_OFFLOAD_EID=0,
  26. SET_PWRMODE_EID=1,
  27. JOINBSS_RPT_EID=2,
  28. RSVD_PAGE_EID=3,
  29. RSSI_4_EID = 4,
  30. RSSI_SETTING_EID=5,
  31. MACID_CONFIG_EID=6,
  32. MACID_PS_MODE_EID=7,
  33. P2P_PS_OFFLOAD_EID=8,
  34. SELECTIVE_SUSPEND_ROF_CMD=9,
  35. P2P_PS_CTW_CMD_EID=32,
  36. H2C_92C_IO_OFFLOAD=44,
  37. H2C_92C_TSF_SYNC=67,
  38. H2C_92C_DISABLE_BCN_FUNC=68,
  39. H2C_92C_RESET_TSF = 75,
  40. H2C_92C_CMD_MAX
  41. };
  42. struct cmd_msg_parm {
  43. u8 eid; //element id
  44. u8 sz; // sz
  45. u8 buf[6];
  46. };
  47. typedef struct _SETPWRMODE_PARM{
  48. u8 Mode;
  49. u8 SmartPS;
  50. u8 BcnPassTime; // unit: 100ms
  51. }SETPWRMODE_PARM, *PSETPWRMODE_PARM;
  52. struct H2C_SS_RFOFF_PARAM{
  53. u8 ROFOn; // 1: on, 0:off
  54. u16 gpio_period; // unit: 1024 us
  55. }__attribute__ ((packed));
  56. typedef struct JOINBSSRPT_PARM_92C{
  57. u8 OpMode; // RT_MEDIA_STATUS
  58. }JOINBSSRPT_PARM_92C, *PJOINBSSRPT_PARM_92C;
  59. typedef struct _RSVDPAGE_LOC_92C{
  60. u8 LocProbeRsp;
  61. u8 LocPsPoll;
  62. u8 LocNullData;
  63. }RSVDPAGE_LOC_92C, *PRSVDPAGE_LOC_92C;
  64. // host message to firmware cmd
  65. void rtl8192c_set_FwPwrMode_cmd(_adapter*padapter, u8 Mode);
  66. void rtl8192c_set_FwJoinBssReport_cmd(_adapter* padapter, u8 mstatus);
  67. u8 rtl8192c_set_rssi_cmd(_adapter*padapter, u8 *param);
  68. void rtl8192c_set_raid_cmd(_adapter*padapter, u32 mask, u8* arg);
  69. void rtl8192c_Add_RateATid(PADAPTER pAdapter, u32 bitmap, u8* arg, u8 rssi_level);
  70. u8 rtl8192c_set_FwSelectSuspend_cmd(_adapter*padapter,u8 bfwpoll, u16 period);
  71. #ifdef CONFIG_P2P
  72. void rtl8192c_set_p2p_ps_offload_cmd(_adapter* padapter, u8 p2p_ps_state);
  73. #endif //CONFIG_P2P
  74. #ifdef CONFIG_IOL
  75. int rtl8192c_IOL_exec_cmds_sync(ADAPTER *adapter, struct xmit_frame *xmit_frame, u32 max_wating_ms, u32 bndy_cnt);
  76. #endif //CONFIG_IOL
  77. #ifdef CONFIG_BEACON_DISABLE_OFFLOAD
  78. u8 rtl8192c_dis_beacon_fun_cmd(_adapter* padapter);
  79. #endif // CONFIG_BEACON_DISABLE_OFFLOAD
  80. #ifdef CONFIG_TSF_RESET_OFFLOAD
  81. int reset_tsf(PADAPTER Adapter, u8 reset_port );
  82. #endif // CONFIG_TSF_RESET_OFFLOAD
  83. #endif // __RTL8192C_CMD_H_