linux/drivers/staging/rtl8188eu/include/rtl8188e_cmd.h
<<
>>
Prefs
   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 __RTL8188E_CMD_H__
  21#define __RTL8188E_CMD_H__
  22
  23enum RTL8188E_H2C_CMD_ID {
  24        /* Class Common */
  25        H2C_COM_RSVD_PAGE               = 0x00,
  26        H2C_COM_MEDIA_STATUS_RPT        = 0x01,
  27        H2C_COM_SCAN                    = 0x02,
  28        H2C_COM_KEEP_ALIVE              = 0x03,
  29        H2C_COM_DISCNT_DECISION         = 0x04,
  30        H2C_COM_INIT_OFFLOAD            = 0x06,
  31        H2C_COM_REMOTE_WAKE_CTL         = 0x07,
  32        H2C_COM_AP_OFFLOAD              = 0x08,
  33        H2C_COM_BCN_RSVD_PAGE           = 0x09,
  34        H2C_COM_PROB_RSP_RSVD_PAGE      = 0x0A,
  35
  36        /* Class PS */
  37        H2C_PS_PWR_MODE                 = 0x20,
  38        H2C_PS_TUNE_PARA                = 0x21,
  39        H2C_PS_TUNE_PARA_2              = 0x22,
  40        H2C_PS_LPS_PARA                 = 0x23,
  41        H2C_PS_P2P_OFFLOAD              = 0x24,
  42
  43        /* Class DM */
  44        H2C_DM_MACID_CFG                = 0x40,
  45        H2C_DM_TXBF                     = 0x41,
  46
  47        /* Class BT */
  48        H2C_BT_COEX_MASK                = 0x60,
  49        H2C_BT_COEX_GPIO_MODE           = 0x61,
  50        H2C_BT_DAC_SWING_VAL            = 0x62,
  51        H2C_BT_PSD_RST                  = 0x63,
  52
  53        /* Class */
  54         H2C_RESET_TSF                  = 0xc0,
  55};
  56
  57struct cmd_msg_parm {
  58        u8 eid; /* element id */
  59        u8 sz; /*  sz */
  60        u8 buf[6];
  61};
  62
  63enum {
  64        PWRS
  65};
  66
  67struct setpwrmode_parm {
  68        u8 Mode;/* 0:Active,1:LPS,2:WMMPS */
  69        u8 SmartPS_RLBM;/* LPS= 0:PS_Poll,1:PS_Poll,2:NullData,WMM= 0:PS_Poll,1:NullData */
  70        u8 AwakeInterval;       /*  unit: beacon interval */
  71        u8 bAllQueueUAPSD;
  72        u8 PwrState;/* AllON(0x0c),RFON(0x04),RFOFF(0x00) */
  73};
  74
  75struct H2C_SS_RFOFF_PARAM {
  76        u8 ROFOn; /*  1: on, 0:off */
  77        u16 gpio_period; /*  unit: 1024 us */
  78} __packed;
  79
  80struct joinbssrpt_parm {
  81        u8 OpMode;      /*  RT_MEDIA_STATUS */
  82};
  83
  84struct rsvdpage_loc {
  85        u8 LocProbeRsp;
  86        u8 LocPsPoll;
  87        u8 LocNullData;
  88        u8 LocQosNull;
  89        u8 LocBTQosNull;
  90};
  91
  92struct P2P_PS_Offload_t {
  93        u8 Offload_En:1;
  94        u8 role:1; /*  1: Owner, 0: Client */
  95        u8 CTWindow_En:1;
  96        u8 NoA0_En:1;
  97        u8 NoA1_En:1;
  98        u8 AllStaSleep:1; /*  Only valid in Owner */
  99        u8 discovery:1;
 100        u8 rsvd:1;
 101};
 102
 103struct P2P_PS_CTWPeriod_t {
 104        u8 CTWPeriod;   /* TU */
 105};
 106
 107/*  host message to firmware cmd */
 108void rtl8188e_set_FwPwrMode_cmd(struct adapter *padapter, u8 Mode);
 109void rtl8188e_set_FwJoinBssReport_cmd(struct adapter *padapter, u8 mstatus);
 110void rtl8188e_Add_RateATid(struct adapter *padapter, u32 bitmap, u8 arg,
 111                           u8 rssi_level);
 112
 113void rtl8188e_set_FwMediaStatus_cmd(struct adapter *adapt, __le16 mstatus_rpt);
 114
 115#endif/* __RTL8188E_CMD_H__ */
 116