#ifndef _KS_HOSTIF_H_
#define _KS_HOSTIF_H_
#include <linux/compiler.h>
#include <linux/ieee80211.h>
#define HIF_DATA_REQ …
#define HIF_DATA_IND …
#define HIF_MIB_GET_REQ …
#define HIF_MIB_GET_CONF …
#define HIF_MIB_SET_REQ …
#define HIF_MIB_SET_CONF …
#define HIF_POWER_MGMT_REQ …
#define HIF_POWER_MGMT_CONF …
#define HIF_START_REQ …
#define HIF_START_CONF …
#define HIF_CONNECT_IND …
#define HIF_STOP_REQ …
#define HIF_STOP_CONF …
#define HIF_PS_ADH_SET_REQ …
#define HIF_PS_ADH_SET_CONF …
#define HIF_INFRA_SET_REQ …
#define HIF_INFRA_SET_CONF …
#define HIF_ADH_SET_REQ …
#define HIF_ADH_SET_CONF …
#define HIF_AP_SET_REQ …
#define HIF_AP_SET_CONF …
#define HIF_ASSOC_INFO_IND …
#define HIF_MIC_FAILURE_REQ …
#define HIF_MIC_FAILURE_CONF …
#define HIF_SCAN_REQ …
#define HIF_SCAN_CONF …
#define HIF_PHY_INFO_REQ …
#define HIF_PHY_INFO_CONF …
#define HIF_SLEEP_REQ …
#define HIF_SLEEP_CONF …
#define HIF_PHY_INFO_IND …
#define HIF_SCAN_IND …
#define HIF_INFRA_SET2_REQ …
#define HIF_INFRA_SET2_CONF …
#define HIF_ADH_SET2_REQ …
#define HIF_ADH_SET2_CONF …
#define HIF_REQ_MAX …
struct hostif_hdr { … } __packed;
struct hostif_data_request { … } __packed;
#define TYPE_PMK1 …
#define TYPE_GMK1 …
#define TYPE_GMK2 …
#define CHANNEL_LIST_MAX_SIZE …
struct channel_list { … } __packed;
enum mib_attribute { … };
struct hostif_mib_get_request { … } __packed;
enum mib_data_type { … };
struct hostif_mib_value { … } __packed;
struct hostif_mib_get_confirm_t { … } __packed;
struct hostif_mib_set_request_t { … } __packed;
struct hostif_power_mgmt_request { … } __packed;
enum power_mgmt_mode_type { … };
#define RESULT_SUCCESS …
#define RESULT_INVALID_PARAMETERS …
#define RESULT_NOT_SUPPORTED …
#define RESULT_ALREADY_RUNNING …
struct hostif_start_request { … } __packed;
struct ssid { … } __packed;
#define RATE_SET_MAX_SIZE …
struct rate_set8 { … } __packed;
struct fh_parms { … } __packed;
struct ds_parms { … } __packed;
struct cf_parms { … } __packed;
struct ibss_parms { … } __packed;
struct rsn_t { … } __packed;
struct erp_params_t { … } __packed;
struct rate_set16 { … } __packed;
struct ap_info { … } __packed;
struct link_ap_info { … } __packed;
#define RESULT_CONNECT …
#define RESULT_DISCONNECT …
struct hostif_stop_request { … } __packed;
#define D_11B_ONLY_MODE …
#define D_11G_ONLY_MODE …
#define D_11BG_COMPATIBLE_MODE …
#define D_11A_ONLY_MODE …
#define CTS_MODE_FALSE …
#define CTS_MODE_TRUE …
struct hostif_request { … } __packed;
struct hostif_ps_adhoc_set_request { … } __packed;
#define AUTH_TYPE_OPEN_SYSTEM …
#define AUTH_TYPE_SHARED_KEY …
struct hostif_infrastructure_set_request { … } __packed;
struct hostif_adhoc_set_request { … } __packed;
struct hostif_adhoc_set2_request { … } __packed;
struct association_request { … } __packed;
struct association_response { … } __packed;
struct hostif_bss_scan_request { … } __packed;
struct hostif_phy_information_request { … } __packed;
enum sleep_mode_type { … };
struct hostif_sleep_request { … } __packed;
struct hostif_mic_failure_request { … } __packed;
#define BASIC_RATE …
#define RATE_MASK …
#define TX_RATE_AUTO …
#define TX_RATE_1M_FIXED …
#define TX_RATE_2M_FIXED …
#define TX_RATE_1_2M_AUTO …
#define TX_RATE_5M_FIXED …
#define TX_RATE_11M_FIXED …
#define TX_RATE_FULL_AUTO …
#define TX_RATE_11_AUTO …
#define TX_RATE_11B_AUTO …
#define TX_RATE_11BG_AUTO …
#define TX_RATE_MANUAL_AUTO …
#define TX_RATE_FIXED …
#define TX_RATE_1M …
#define TX_RATE_2M …
#define TX_RATE_5M …
#define TX_RATE_11M …
#define TX_RATE_6M …
#define TX_RATE_12M …
#define TX_RATE_24M …
#define TX_RATE_9M …
#define TX_RATE_18M …
#define TX_RATE_36M …
#define TX_RATE_48M …
#define TX_RATE_54M …
static inline bool is_11b_rate(u8 rate)
{ … }
static inline bool is_ofdm_rate(u8 rate)
{ … }
static inline bool is_11bg_rate(u8 rate)
{ … }
static inline bool is_ofdm_ext_rate(u8 rate)
{ … }
enum connect_status_type { … };
enum preamble_type { … };
enum multicast_filter_type { … };
#define NIC_MAX_MCAST_LIST …
#define HIF_EVENT_MASK …
static inline bool is_hif_ind(unsigned short event)
{ … }
static inline bool is_hif_conf(unsigned short event)
{ … }
#ifdef __KERNEL__
#include "ks_wlan.h"
int hostif_data_request(struct ks_wlan_private *priv, struct sk_buff *skb);
void hostif_receive(struct ks_wlan_private *priv, unsigned char *p,
unsigned int size);
void hostif_sme_enqueue(struct ks_wlan_private *priv, u16 event);
int hostif_init(struct ks_wlan_private *priv);
void hostif_exit(struct ks_wlan_private *priv);
int ks_wlan_hw_tx(struct ks_wlan_private *priv, void *p, unsigned long size,
void (*complete_handler)(struct ks_wlan_private *priv,
struct sk_buff *skb),
struct sk_buff *skb);
void send_packet_complete(struct ks_wlan_private *priv, struct sk_buff *skb);
void ks_wlan_hw_wakeup_request(struct ks_wlan_private *priv);
int ks_wlan_hw_power_save(struct ks_wlan_private *priv);
#define KS7010_SIZE_ALIGNMENT …
static inline size_t hif_align_size(size_t size)
{ … }
#endif
#endif