qcacld-3.0: Initial snapshot of ihelium wlan driver to match code-scanned SU Release 5.0.0.139. This is open-source version of wlan for next Android release. Change-Id: Icf598ca97da74f84bea607e4e902d1889806f507
121 lines
3.4 KiB
C
121 lines
3.4 KiB
C
/*
|
|
* Copyright (c) 2012-2015 The Linux Foundation. All rights reserved.
|
|
*
|
|
* Previously licensed under the ISC license by Qualcomm Atheros, Inc.
|
|
*
|
|
*
|
|
* Permission to use, copy, modify, and/or distribute this software for
|
|
* any purpose with or without fee is hereby granted, provided that the
|
|
* above copyright notice and this permission notice appear in all
|
|
* copies.
|
|
*
|
|
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
|
|
* WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
|
|
* WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
|
|
* AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
|
|
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
|
|
* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
|
|
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
* PERFORMANCE OF THIS SOFTWARE.
|
|
*/
|
|
|
|
/*
|
|
* This file was originally distributed by Qualcomm Atheros, Inc.
|
|
* under proprietary terms before Copyright ownership was assigned
|
|
* to the Linux Foundation.
|
|
*/
|
|
|
|
/**
|
|
* @file htt_common.h
|
|
*
|
|
* @details the public header file of HTT layer shared between host and firmware
|
|
*/
|
|
|
|
#ifndef _HTT_COMMON_H_
|
|
#define _HTT_COMMON_H_
|
|
|
|
enum htt_sec_type {
|
|
htt_sec_type_none,
|
|
htt_sec_type_wep128,
|
|
htt_sec_type_wep104,
|
|
htt_sec_type_wep40,
|
|
htt_sec_type_tkip,
|
|
htt_sec_type_tkip_nomic,
|
|
htt_sec_type_aes_ccmp,
|
|
htt_sec_type_wapi,
|
|
htt_sec_type_aes_ccmp_256,
|
|
htt_sec_type_aes_gcmp,
|
|
htt_sec_type_aes_gcmp_256,
|
|
|
|
/* keep this last! */
|
|
htt_num_sec_types
|
|
};
|
|
|
|
enum htt_rx_ind_mpdu_status {
|
|
HTT_RX_IND_MPDU_STATUS_UNKNOWN = 0x0,
|
|
HTT_RX_IND_MPDU_STATUS_OK,
|
|
HTT_RX_IND_MPDU_STATUS_ERR_FCS,
|
|
HTT_RX_IND_MPDU_STATUS_ERR_DUP,
|
|
HTT_RX_IND_MPDU_STATUS_ERR_REPLAY,
|
|
HTT_RX_IND_MPDU_STATUS_ERR_INV_PEER,
|
|
HTT_RX_IND_MPDU_STATUS_UNAUTH_PEER, /* only accept EAPOL frames */
|
|
HTT_RX_IND_MPDU_STATUS_OUT_OF_SYNC,
|
|
HTT_RX_IND_MPDU_STATUS_MGMT_CTRL, /* Non-data in promiscous mode */
|
|
HTT_RX_IND_MPDU_STATUS_TKIP_MIC_ERR,
|
|
HTT_RX_IND_MPDU_STATUS_DECRYPT_ERR,
|
|
HTT_RX_IND_MPDU_STATUS_MPDU_LENGTH_ERR,
|
|
HTT_RX_IND_MPDU_STATUS_ENCRYPT_REQUIRED_ERR,
|
|
HTT_RX_IND_MPDU_STATUS_PRIVACY_ERR,
|
|
|
|
/*
|
|
* MISC: discard for unspecified reasons.
|
|
* Leave this enum value last.
|
|
*/
|
|
HTT_RX_IND_MPDU_STATUS_ERR_MISC = 0xFF
|
|
};
|
|
|
|
#define HTT_INVALID_PEER 0xffff
|
|
#define HTT_INVALID_VDEV 0xff
|
|
|
|
#define HTT_NON_QOS_TID 16
|
|
#define HTT_INVALID_TID 31
|
|
|
|
#define HTT_TX_EXT_TID_DEFAULT 0
|
|
#define HTT_TX_EXT_TID_NON_QOS_MCAST_BCAST HTT_NON_QOS_TID
|
|
#define HTT_TX_EXT_TID_MGMT 17
|
|
#define HTT_TX_EXT_TID_INVALID HTT_INVALID_TID
|
|
#define HTT_TX_EXT_TID_NONPAUSE 19
|
|
|
|
|
|
|
|
#define HTT_TX_L3_CKSUM_OFFLOAD 1
|
|
#define HTT_TX_L4_CKSUM_OFFLOAD 2
|
|
|
|
|
|
/**
|
|
* @brief General specification of the tx frame contents
|
|
*
|
|
* @details
|
|
* For efficiency, the HTT packet type values correspond
|
|
* to the bit positions of the WAL packet type values, so the
|
|
* translation is a simple shift operation.
|
|
* The exception is the "mgmt" type, which specifies frame payload
|
|
* type rather than L2 header type.
|
|
*/
|
|
enum htt_pkt_type {
|
|
htt_pkt_type_raw = 0,
|
|
htt_pkt_type_native_wifi = 1,
|
|
htt_pkt_type_ethernet = 2,
|
|
htt_pkt_type_mgmt = 3,
|
|
htt_pkt_type_eth2 = 4,
|
|
|
|
/* keep this last */
|
|
htt_pkt_num_types
|
|
};
|
|
|
|
#define HTT_TX_HOST_MSDU_ID_SPACE_BEGIN 0
|
|
#define HTT_TX_IPA_MSDU_ID_SPACE_BEGIN 3000
|
|
#define TGT_RX2TX_MSDU_ID_SPACE_BEGIN 6000
|
|
|
|
#endif /* _HTT_COMMON_H_ */
|