Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Enumerations | Variables
commands.h File Reference
#include <linux/ieee80211.h>

Go to the source code of this file.

Data Structures

struct  il_cmd_header
 
struct  il3945_tx_power
 
struct  il3945_power_per_rate
 
union  il4965_tx_power_dual_stream
 
struct  tx_power_dual_stream
 
struct  il4965_tx_power_db
 
struct  il_init_alive_resp
 
struct  il_alive_resp
 
struct  il_error_resp
 
struct  il3945_rxon_cmd
 
struct  il4965_rxon_cmd
 
struct  il_rxon_cmd
 
struct  il3945_rxon_assoc_cmd
 
struct  il4965_rxon_assoc_cmd
 
struct  il_rxon_time_cmd
 
struct  il3945_channel_switch_cmd
 
struct  il4965_channel_switch_cmd
 
struct  il_csa_notification
 
struct  il_ac_qos
 
struct  il_qosparam_cmd
 
struct  il4965_keyinfo
 
struct  sta_id_modify
 
struct  il3945_addsta_cmd
 
struct  il4965_addsta_cmd
 
struct  il_addsta_cmd
 
struct  il_add_sta_resp
 
struct  il_rem_sta_resp
 
struct  il_rem_sta_cmd
 
struct  il_wep_key
 
struct  il_wep_cmd
 
struct  il3945_rx_frame_stats
 
struct  il3945_rx_frame_hdr
 
struct  il3945_rx_frame_end
 
struct  il3945_rx_frame
 
struct  il4965_rx_non_cfg_phy
 
struct  il_rx_phy_res
 
struct  il_rx_mpdu_res_start
 
struct  il3945_tx_cmd
 
struct  il3945_tx_resp
 
struct  il_dram_scratch
 
struct  il_tx_cmd
 
struct  agg_tx_status
 
struct  il4965_tx_resp
 
struct  il_compressed_ba_resp
 
struct  il3945_txpowertable_cmd
 
struct  il4965_txpowertable_cmd
 
struct  il3945_rate_scaling_info
 
struct  il3945_rate_scaling_cmd
 
struct  il_link_qual_general_params
 
struct  il_link_qual_agg_params
 
struct  il_link_quality_cmd
 
struct  il_bt_cmd
 
struct  il_measure_channel
 
struct  il_spectrum_cmd
 
struct  il_spectrum_resp
 
struct  il_measurement_histogram
 
struct  il_measurement_cca_counters
 
struct  il_spectrum_notification
 
struct  il3945_powertable_cmd
 
struct  il_powertable_cmd
 
struct  il_sleep_notification
 
struct  il_card_state_notif
 
struct  il_ct_kill_config
 
struct  il3945_scan_channel
 
struct  il_scan_channel
 
struct  il_ssid_ie
 
struct  il3945_scan_cmd
 
struct  il_scan_cmd
 
struct  il_scanreq_notification
 
struct  il_scanstart_notification
 
struct  il_scanresults_notification
 
struct  il_scancomplete_notification
 
struct  il3945_beacon_notif
 
struct  il4965_beacon_notif
 
struct  il3945_tx_beacon_cmd
 
struct  il_tx_beacon_cmd
 
struct  rate_histogram
 
struct  iwl39_stats_rx_phy
 
struct  iwl39_stats_rx_non_phy
 
struct  iwl39_stats_rx
 
struct  iwl39_stats_tx
 
struct  stats_dbg
 
struct  iwl39_stats_div
 
struct  iwl39_stats_general
 
struct  stats_rx_phy
 
struct  stats_rx_ht_phy
 
struct  stats_rx_non_phy
 
struct  stats_rx
 
struct  stats_tx_power
 
struct  stats_tx_non_phy_agg
 
struct  stats_tx
 
struct  stats_div
 
struct  stats_general_common
 
struct  stats_general
 
struct  il_stats_cmd
 
struct  il3945_notif_stats
 
struct  il_notif_stats
 
struct  il_missed_beacon_notif
 
struct  il_sensitivity_cmd
 
struct  il_calib_hdr
 
struct  il_calib_diff_gain_cmd
 
struct  il_led_cmd
 
struct  il_rx_pkt
 

Macros

#define IL_UCODE_MAJOR(ver)   (((ver) & 0xFF000000) >> 24)
 
#define IL_UCODE_MINOR(ver)   (((ver) & 0x00FF0000) >> 16)
 
#define IL_UCODE_API(ver)   (((ver) & 0x0000FF00) >> 8)
 
#define IL_UCODE_SERIAL(ver)   ((ver) & 0x000000FF)
 
#define IL_CCK_RATES   4
 
#define IL_OFDM_RATES   8
 
#define IL_MAX_RATES   (IL_CCK_RATES + IL_OFDM_RATES)
 
#define IL_CMD_FAILED_MSK   0x40
 
#define SEQ_TO_QUEUE(s)   (((s) >> 8) & 0x1f)
 
#define QUEUE_TO_SEQ(q)   (((q) & 0x1f) << 8)
 
#define SEQ_TO_IDX(s)   ((s) & 0xff)
 
#define IDX_TO_SEQ(i)   ((i) & 0xff)
 
#define SEQ_HUGE_FRAME   cpu_to_le16(0x4000)
 
#define SEQ_RX_FRAME   cpu_to_le16(0x8000)
 
#define RATE_MCS_CODE_MSK   0x7
 
#define RATE_MCS_SPATIAL_POS   3
 
#define RATE_MCS_SPATIAL_MSK   0x18
 
#define RATE_MCS_HT_DUP_POS   5
 
#define RATE_MCS_HT_DUP_MSK   0x20
 
#define RATE_MCS_FLAGS_POS   8
 
#define RATE_MCS_HT_POS   8
 
#define RATE_MCS_HT_MSK   0x100
 
#define RATE_MCS_CCK_POS   9
 
#define RATE_MCS_CCK_MSK   0x200
 
#define RATE_MCS_GF_POS   10
 
#define RATE_MCS_GF_MSK   0x400
 
#define RATE_MCS_HT40_POS   11
 
#define RATE_MCS_HT40_MSK   0x800
 
#define RATE_MCS_DUP_POS   12
 
#define RATE_MCS_DUP_MSK   0x1000
 
#define RATE_MCS_SGI_POS   13
 
#define RATE_MCS_SGI_MSK   0x2000
 
#define RATE_MCS_ANT_POS   14
 
#define RATE_MCS_ANT_A_MSK   0x04000
 
#define RATE_MCS_ANT_B_MSK   0x08000
 
#define RATE_MCS_ANT_C_MSK   0x10000
 
#define RATE_MCS_ANT_AB_MSK   (RATE_MCS_ANT_A_MSK | RATE_MCS_ANT_B_MSK)
 
#define RATE_MCS_ANT_ABC_MSK   (RATE_MCS_ANT_AB_MSK | RATE_MCS_ANT_C_MSK)
 
#define RATE_ANT_NUM   3
 
#define POWER_TBL_NUM_ENTRIES   33
 
#define POWER_TBL_NUM_HT_OFDM_ENTRIES   32
 
#define POWER_TBL_CCK_ENTRY   32
 
#define IL_PWR_NUM_HT_OFDM_ENTRIES   24
 
#define IL_PWR_CCK_ENTRIES   2
 
#define UCODE_VALID_OK   cpu_to_le32(0x1)
 
#define INITIALIZE_SUBTYPE   (9)
 
#define RXON_RX_CHAIN_DRIVER_FORCE_MSK   cpu_to_le16(0x1 << 0)
 
#define RXON_RX_CHAIN_DRIVER_FORCE_POS   (0)
 
#define RXON_RX_CHAIN_VALID_MSK   cpu_to_le16(0x7 << 1)
 
#define RXON_RX_CHAIN_VALID_POS   (1)
 
#define RXON_RX_CHAIN_FORCE_SEL_MSK   cpu_to_le16(0x7 << 4)
 
#define RXON_RX_CHAIN_FORCE_SEL_POS   (4)
 
#define RXON_RX_CHAIN_FORCE_MIMO_SEL_MSK   cpu_to_le16(0x7 << 7)
 
#define RXON_RX_CHAIN_FORCE_MIMO_SEL_POS   (7)
 
#define RXON_RX_CHAIN_CNT_MSK   cpu_to_le16(0x3 << 10)
 
#define RXON_RX_CHAIN_CNT_POS   (10)
 
#define RXON_RX_CHAIN_MIMO_CNT_MSK   cpu_to_le16(0x3 << 12)
 
#define RXON_RX_CHAIN_MIMO_CNT_POS   (12)
 
#define RXON_RX_CHAIN_MIMO_FORCE_MSK   cpu_to_le16(0x1 << 14)
 
#define RXON_RX_CHAIN_MIMO_FORCE_POS   (14)
 
#define RXON_FLG_BAND_24G_MSK   cpu_to_le32(1 << 0)
 
#define RXON_FLG_CCK_MSK   cpu_to_le32(1 << 1)
 
#define RXON_FLG_AUTO_DETECT_MSK   cpu_to_le32(1 << 2)
 
#define RXON_FLG_TGG_PROTECT_MSK   cpu_to_le32(1 << 3)
 
#define RXON_FLG_SHORT_SLOT_MSK   cpu_to_le32(1 << 4)
 
#define RXON_FLG_SHORT_PREAMBLE_MSK   cpu_to_le32(1 << 5)
 
#define RXON_FLG_DIS_DIV_MSK   cpu_to_le32(1 << 7)
 
#define RXON_FLG_ANT_SEL_MSK   cpu_to_le32(0x0f00)
 
#define RXON_FLG_ANT_A_MSK   cpu_to_le32(1 << 8)
 
#define RXON_FLG_ANT_B_MSK   cpu_to_le32(1 << 9)
 
#define RXON_FLG_RADAR_DETECT_MSK   cpu_to_le32(1 << 12)
 
#define RXON_FLG_TGJ_NARROW_BAND_MSK   cpu_to_le32(1 << 13)
 
#define RXON_FLG_TSF2HOST_MSK   cpu_to_le32(1 << 15)
 
#define RXON_FLG_CTRL_CHANNEL_LOC_POS   (22)
 
#define RXON_FLG_CTRL_CHANNEL_LOC_HI_MSK   cpu_to_le32(0x1 << 22)
 
#define RXON_FLG_HT_OPERATING_MODE_POS   (23)
 
#define RXON_FLG_HT_PROT_MSK   cpu_to_le32(0x1 << 23)
 
#define RXON_FLG_HT40_PROT_MSK   cpu_to_le32(0x2 << 23)
 
#define RXON_FLG_CHANNEL_MODE_POS   (25)
 
#define RXON_FLG_CHANNEL_MODE_MSK   cpu_to_le32(0x3 << 25)
 
#define RXON_FLG_CHANNEL_MODE_LEGACY   cpu_to_le32(CHANNEL_MODE_LEGACY << RXON_FLG_CHANNEL_MODE_POS)
 
#define RXON_FLG_CHANNEL_MODE_PURE_40   cpu_to_le32(CHANNEL_MODE_PURE_40 << RXON_FLG_CHANNEL_MODE_POS)
 
#define RXON_FLG_CHANNEL_MODE_MIXED   cpu_to_le32(CHANNEL_MODE_MIXED << RXON_FLG_CHANNEL_MODE_POS)
 
#define RXON_FLG_SELF_CTS_EN   cpu_to_le32(0x1<<30)
 
#define RXON_FILTER_PROMISC_MSK   cpu_to_le32(1 << 0)
 
#define RXON_FILTER_CTL2HOST_MSK   cpu_to_le32(1 << 1)
 
#define RXON_FILTER_ACCEPT_GRP_MSK   cpu_to_le32(1 << 2)
 
#define RXON_FILTER_DIS_DECRYPT_MSK   cpu_to_le32(1 << 3)
 
#define RXON_FILTER_DIS_GRP_DECRYPT_MSK   cpu_to_le32(1 << 4)
 
#define RXON_FILTER_ASSOC_MSK   cpu_to_le32(1 << 5)
 
#define RXON_FILTER_BCON_AWARE_MSK   cpu_to_le32(1 << 6)
 
#define IL_CONN_MAX_LISTEN_INTERVAL   10
 
#define IL_MAX_UCODE_BEACON_INTERVAL   4 /* 4096 */
 
#define IL39_MAX_UCODE_BEACON_INTERVAL   1 /* 1024 */
 
#define QOS_PARAM_FLG_UPDATE_EDCA_MSK   cpu_to_le32(0x01)
 
#define QOS_PARAM_FLG_TGN_MSK   cpu_to_le32(0x02)
 
#define QOS_PARAM_FLG_TXOP_TYPE_MSK   cpu_to_le32(0x10)
 
#define AC_NUM   4
 
#define IL_AP_ID   0
 
#define IL_STA_ID   2
 
#define IL3945_BROADCAST_ID   24
 
#define IL3945_STATION_COUNT   25
 
#define IL4965_BROADCAST_ID   31
 
#define IL4965_STATION_COUNT   32
 
#define IL_STATION_COUNT   32 /* MAX(3945,4965) */
 
#define IL_INVALID_STATION   255
 
#define STA_FLG_TX_RATE_MSK   cpu_to_le32(1 << 2)
 
#define STA_FLG_PWR_SAVE_MSK   cpu_to_le32(1 << 8)
 
#define STA_FLG_RTS_MIMO_PROT_MSK   cpu_to_le32(1 << 17)
 
#define STA_FLG_AGG_MPDU_8US_MSK   cpu_to_le32(1 << 18)
 
#define STA_FLG_MAX_AGG_SIZE_POS   (19)
 
#define STA_FLG_MAX_AGG_SIZE_MSK   cpu_to_le32(3 << 19)
 
#define STA_FLG_HT40_EN_MSK   cpu_to_le32(1 << 21)
 
#define STA_FLG_MIMO_DIS_MSK   cpu_to_le32(1 << 22)
 
#define STA_FLG_AGG_MPDU_DENSITY_POS   (23)
 
#define STA_FLG_AGG_MPDU_DENSITY_MSK   cpu_to_le32(7 << 23)
 
#define STA_CONTROL_MODIFY_MSK   0x01
 
#define STA_KEY_FLG_ENCRYPT_MSK   cpu_to_le16(0x0007)
 
#define STA_KEY_FLG_NO_ENC   cpu_to_le16(0x0000)
 
#define STA_KEY_FLG_WEP   cpu_to_le16(0x0001)
 
#define STA_KEY_FLG_CCMP   cpu_to_le16(0x0002)
 
#define STA_KEY_FLG_TKIP   cpu_to_le16(0x0003)
 
#define STA_KEY_FLG_KEYID_POS   8
 
#define STA_KEY_FLG_INVALID   cpu_to_le16(0x0800)
 
#define STA_KEY_FLG_MAP_KEY_MSK   cpu_to_le16(0x0008)
 
#define STA_KEY_FLG_KEY_SIZE_MSK   cpu_to_le16(0x1000)
 
#define STA_KEY_MULTICAST_MSK   cpu_to_le16(0x4000)
 
#define STA_KEY_MAX_NUM   8
 
#define STA_MODIFY_KEY_MASK   0x01
 
#define STA_MODIFY_TID_DISABLE_TX   0x02
 
#define STA_MODIFY_TX_RATE_MSK   0x04
 
#define STA_MODIFY_ADDBA_TID_MSK   0x08
 
#define STA_MODIFY_DELBA_TID_MSK   0x10
 
#define STA_MODIFY_SLEEP_TX_COUNT_MSK   0x20
 
#define BUILD_RAxTID(sta_id, tid)   (((sta_id) << 4) + (tid))
 
#define ADD_STA_SUCCESS_MSK   0x1
 
#define ADD_STA_NO_ROOM_IN_TBL   0x2
 
#define ADD_STA_NO_BLOCK_ACK_RESOURCE   0x4
 
#define ADD_STA_MODIFY_NON_EXIST_STA   0x8
 
#define REM_STA_SUCCESS_MSK   0x1
 
#define IL_TX_FIFO_BK_MSK   cpu_to_le32(BIT(0))
 
#define IL_TX_FIFO_BE_MSK   cpu_to_le32(BIT(1))
 
#define IL_TX_FIFO_VI_MSK   cpu_to_le32(BIT(2))
 
#define IL_TX_FIFO_VO_MSK   cpu_to_le32(BIT(3))
 
#define IL_AGG_TX_QUEUE_MSK   cpu_to_le32(0xffc00)
 
#define IL_DROP_SINGLE   0
 
#define IL_DROP_SELECTED   1
 
#define IL_DROP_ALL   2
 
#define WEP_KEY_WEP_TYPE   1
 
#define WEP_KEYS_MAX   4
 
#define WEP_INVALID_OFFSET   0xff
 
#define WEP_KEY_LEN_64   5
 
#define WEP_KEY_LEN_128   13
 
#define RX_RES_STATUS_NO_CRC32_ERROR   cpu_to_le32(1 << 0)
 
#define RX_RES_STATUS_NO_RXE_OVERFLOW   cpu_to_le32(1 << 1)
 
#define RX_RES_PHY_FLAGS_BAND_24_MSK   cpu_to_le16(1 << 0)
 
#define RX_RES_PHY_FLAGS_MOD_CCK_MSK   cpu_to_le16(1 << 1)
 
#define RX_RES_PHY_FLAGS_SHORT_PREAMBLE_MSK   cpu_to_le16(1 << 2)
 
#define RX_RES_PHY_FLAGS_NARROW_BAND_MSK   cpu_to_le16(1 << 3)
 
#define RX_RES_PHY_FLAGS_ANTENNA_MSK   0xf0
 
#define RX_RES_PHY_FLAGS_ANTENNA_POS   4
 
#define RX_RES_STATUS_SEC_TYPE_MSK   (0x7 << 8)
 
#define RX_RES_STATUS_SEC_TYPE_NONE   (0x0 << 8)
 
#define RX_RES_STATUS_SEC_TYPE_WEP   (0x1 << 8)
 
#define RX_RES_STATUS_SEC_TYPE_CCMP   (0x2 << 8)
 
#define RX_RES_STATUS_SEC_TYPE_TKIP   (0x3 << 8)
 
#define RX_RES_STATUS_SEC_TYPE_ERR   (0x7 << 8)
 
#define RX_RES_STATUS_STATION_FOUND   (1<<6)
 
#define RX_RES_STATUS_NO_STATION_INFO_MISMATCH   (1<<7)
 
#define RX_RES_STATUS_DECRYPT_TYPE_MSK   (0x3 << 11)
 
#define RX_RES_STATUS_NOT_DECRYPT   (0x0 << 11)
 
#define RX_RES_STATUS_DECRYPT_OK   (0x3 << 11)
 
#define RX_RES_STATUS_BAD_ICV_MIC   (0x1 << 11)
 
#define RX_RES_STATUS_BAD_KEY_TTAK   (0x2 << 11)
 
#define RX_MPDU_RES_STATUS_ICV_OK   (0x20)
 
#define RX_MPDU_RES_STATUS_MIC_OK   (0x40)
 
#define RX_MPDU_RES_STATUS_TTAK_OK   (1 << 7)
 
#define RX_MPDU_RES_STATUS_DEC_DONE_MSK   (0x800)
 
#define IL39_RX_FRAME_SIZE   (4 + sizeof(struct il3945_rx_frame))
 
#define IL49_RX_RES_PHY_CNT   14
 
#define IL49_RX_PHY_FLAGS_ANTENNAE_OFFSET   (4)
 
#define IL49_RX_PHY_FLAGS_ANTENNAE_MASK   (0x70)
 
#define IL49_AGC_DB_MASK   (0x3f80) /* MASK(7,13) */
 
#define IL49_AGC_DB_POS   (7)
 
#define TX_CMD_FLG_RTS_MSK   cpu_to_le32(1 << 1)
 
#define TX_CMD_FLG_CTS_MSK   cpu_to_le32(1 << 2)
 
#define TX_CMD_FLG_ACK_MSK   cpu_to_le32(1 << 3)
 
#define TX_CMD_FLG_STA_RATE_MSK   cpu_to_le32(1 << 4)
 
#define TX_CMD_FLG_IMM_BA_RSP_MASK   cpu_to_le32(1 << 6)
 
#define TX_CMD_FLG_FULL_TXOP_PROT_MSK   cpu_to_le32(1 << 7)
 
#define TX_CMD_FLG_ANT_SEL_MSK   cpu_to_le32(0xf00)
 
#define TX_CMD_FLG_ANT_A_MSK   cpu_to_le32(1 << 8)
 
#define TX_CMD_FLG_ANT_B_MSK   cpu_to_le32(1 << 9)
 
#define TX_CMD_FLG_SEQ_CTL_MSK   cpu_to_le32(1 << 13)
 
#define TX_CMD_FLG_MORE_FRAG_MSK   cpu_to_le32(1 << 14)
 
#define TX_CMD_FLG_TSF_MSK   cpu_to_le32(1 << 16)
 
#define TX_CMD_FLG_MH_PAD_MSK   cpu_to_le32(1 << 20)
 
#define TX_CMD_FLG_AGG_CCMP_MSK   cpu_to_le32(1 << 22)
 
#define TX_CMD_FLG_DUR_MSK   cpu_to_le32(1 << 25)
 
#define TX_CMD_SEC_WEP   0x01
 
#define TX_CMD_SEC_CCM   0x02
 
#define TX_CMD_SEC_TKIP   0x03
 
#define TX_CMD_SEC_MSK   0x03
 
#define TX_CMD_SEC_SHIFT   6
 
#define TX_CMD_SEC_KEY128   0x08
 
#define WEP_IV_LEN   4
 
#define WEP_ICV_LEN   4
 
#define CCMP_MIC_LEN   8
 
#define TKIP_ICV_LEN   4
 
#define TX_PACKET_MODE_REGULAR   0x0000
 
#define TX_PACKET_MODE_BURST_SEQ   0x0100
 
#define TX_PACKET_MODE_BURST_FIRST   0x0200
 
#define AGG_TX_STATUS_MSK   0x00000fff /* bits 0:11 */
 
#define AGG_TX_TRY_MSK   0x0000f000 /* bits 12:15 */
 
#define AGG_TX_STATE_LAST_SENT_MSK
 
#define AGG_TX_STATE_TRY_CNT_POS   12
 
#define AGG_TX_STATE_TRY_CNT_MSK   0xf000
 
#define AGG_TX_STATE_SEQ_NUM_POS   16
 
#define AGG_TX_STATE_SEQ_NUM_MSK   0xffff0000
 
#define LINK_QUAL_FLAGS_SET_STA_TLC_RTS_MSK   (1 << 0)
 
#define LINK_QUAL_AC_NUM   AC_NUM
 
#define LINK_QUAL_MAX_RETRY_NUM   16
 
#define LINK_QUAL_ANT_A_MSK   (1 << 0)
 
#define LINK_QUAL_ANT_B_MSK   (1 << 1)
 
#define LINK_QUAL_ANT_MSK   (LINK_QUAL_ANT_A_MSK|LINK_QUAL_ANT_B_MSK)
 
#define LINK_QUAL_AGG_TIME_LIMIT_DEF   (4000) /* 4 milliseconds */
 
#define LINK_QUAL_AGG_TIME_LIMIT_MAX   (8000)
 
#define LINK_QUAL_AGG_TIME_LIMIT_MIN   (100)
 
#define LINK_QUAL_AGG_DISABLE_START_DEF   (3)
 
#define LINK_QUAL_AGG_DISABLE_START_MAX   (255)
 
#define LINK_QUAL_AGG_DISABLE_START_MIN   (0)
 
#define LINK_QUAL_AGG_FRAME_LIMIT_DEF   (31)
 
#define LINK_QUAL_AGG_FRAME_LIMIT_MAX   (63)
 
#define LINK_QUAL_AGG_FRAME_LIMIT_MIN   (0)
 
#define BT_COEX_DISABLE   (0x0)
 
#define BT_ENABLE_CHANNEL_ANNOUNCE   BIT(0)
 
#define BT_ENABLE_PRIORITY   BIT(1)
 
#define BT_COEX_ENABLE   (BT_ENABLE_CHANNEL_ANNOUNCE | BT_ENABLE_PRIORITY)
 
#define BT_LEAD_TIME_DEF   (0x1E)
 
#define BT_MAX_KILL_DEF   (0x5)
 
#define MEASUREMENT_FILTER_FLAG
 
#define NUM_ELEMENTS_IN_HISTOGRAM   8
 
#define IL_POWER_VEC_SIZE   5
 
#define IL_POWER_DRIVER_ALLOW_SLEEP_MSK   cpu_to_le16(BIT(0))
 
#define IL_POWER_PCI_PM_MSK   cpu_to_le16(BIT(3))
 
#define HW_CARD_DISABLED   0x01
 
#define SW_CARD_DISABLED   0x02
 
#define CT_CARD_DISABLED   0x04
 
#define RXON_CARD_DISABLED   0x10
 
#define SCAN_CHANNEL_TYPE_PASSIVE   cpu_to_le32(0)
 
#define SCAN_CHANNEL_TYPE_ACTIVE   cpu_to_le32(1)
 
#define IL39_SCAN_PROBE_MASK(n)   ((BIT(n) | (BIT(n) - BIT(1))))
 
#define IL_SCAN_PROBE_MASK(n)   cpu_to_le32((BIT(n) | (BIT(n) - BIT(1))))
 
#define PROBE_OPTION_MAX_3945   4
 
#define PROBE_OPTION_MAX   20
 
#define TX_CMD_LIFE_TIME_INFINITE   cpu_to_le32(0xFFFFFFFF)
 
#define IL_GOOD_CRC_TH_DISABLED   0
 
#define IL_GOOD_CRC_TH_DEFAULT   cpu_to_le16(1)
 
#define IL_GOOD_CRC_TH_NEVER   cpu_to_le16(0xffff)
 
#define IL_MAX_SCAN_SIZE   1024
 
#define IL_MAX_CMD_SIZE   4096
 
#define CAN_ABORT_STATUS   cpu_to_le32(0x1)
 
#define ABORT_STATUS   0x2
 
#define SCAN_OWNER_STATUS   0x1
 
#define MEASURE_OWNER_STATUS   0x2
 
#define IL_PROBE_STATUS_OK   0
 
#define IL_PROBE_STATUS_TX_FAILED   BIT(0)
 
#define IL_PROBE_STATUS_FAIL_TTL   BIT(1)
 
#define IL_PROBE_STATUS_FAIL_BT   BIT(2)
 
#define NUMBER_OF_STATS   1 /* first __le32 is good CRC */
 
#define IL_TEMP_CONVERT   260
 
#define SUP_RATE_11A_MAX_NUM_CHANNELS   8
 
#define SUP_RATE_11B_MAX_NUM_CHANNELS   4
 
#define SUP_RATE_11G_MAX_NUM_CHANNELS   12
 
#define INTERFERENCE_DATA_AVAILABLE   cpu_to_le32(1)
 
#define UCODE_STATS_CLEAR_MSK   (0x1 << 0)
 
#define UCODE_STATS_FREQUENCY_MSK   (0x1 << 1)
 
#define UCODE_STATS_NARROW_BAND_MSK   (0x1 << 2)
 
#define IL_STATS_CONF_CLEAR_STATS   cpu_to_le32(0x1) /* see above */
 
#define IL_STATS_CONF_DISABLE_NOTIF   cpu_to_le32(0x2) /* see above */
 
#define STATS_REPLY_FLG_BAND_24G_MSK   cpu_to_le32(0x2)
 
#define STATS_REPLY_FLG_HT40_MODE_MSK   cpu_to_le32(0x8)
 
#define IL_MISSED_BEACON_THRESHOLD_MIN   (1)
 
#define IL_MISSED_BEACON_THRESHOLD_DEF   (5)
 
#define IL_MISSED_BEACON_THRESHOLD_MAX   IL_MISSED_BEACON_THRESHOLD_DEF
 
#define HD_TBL_SIZE   (11) /* number of entries */
 
#define HD_MIN_ENERGY_CCK_DET_IDX   (0) /* table idxes */
 
#define HD_MIN_ENERGY_OFDM_DET_IDX   (1)
 
#define HD_AUTO_CORR32_X1_TH_ADD_MIN_IDX   (2)
 
#define HD_AUTO_CORR32_X1_TH_ADD_MIN_MRC_IDX   (3)
 
#define HD_AUTO_CORR40_X4_TH_ADD_MIN_MRC_IDX   (4)
 
#define HD_AUTO_CORR32_X4_TH_ADD_MIN_IDX   (5)
 
#define HD_AUTO_CORR32_X4_TH_ADD_MIN_MRC_IDX   (6)
 
#define HD_BARKER_CORR_TH_ADD_MIN_IDX   (7)
 
#define HD_BARKER_CORR_TH_ADD_MIN_MRC_IDX   (8)
 
#define HD_AUTO_CORR40_X4_TH_ADD_MIN_IDX   (9)
 
#define HD_OFDM_ENERGY_TH_IN_IDX   (10)
 
#define C_SENSITIVITY_CONTROL_DEFAULT_TBL   cpu_to_le16(0)
 
#define C_SENSITIVITY_CONTROL_WORK_TBL   cpu_to_le16(1)
 
#define IL_DEFAULT_STANDARD_PHY_CALIBRATE_TBL_SIZE   18
 
#define IL_MAX_PHY_CALIBRATE_TBL_SIZE   (253)
 
#define IL_RX_FRAME_SIZE_MSK   0x00003fff
 

Enumerations

enum  {
  N_ALIVE = 0x1, N_ERROR = 0x2, C_RXON = 0x10, C_RXON_ASSOC = 0x11,
  C_QOS_PARAM = 0x13, C_RXON_TIMING = 0x14, C_ADD_STA = 0x18, C_REM_STA = 0x19,
  C_WEPKEY = 0x20, N_3945_RX = 0x1b, C_TX = 0x1c, C_RATE_SCALE = 0x47,
  C_LEDS = 0x48, C_TX_LINK_QUALITY_CMD = 0x4e, C_CHANNEL_SWITCH = 0x72, N_CHANNEL_SWITCH = 0x73,
  C_SPECTRUM_MEASUREMENT = 0x74, N_SPECTRUM_MEASUREMENT = 0x75, C_POWER_TBL = 0x77, N_PM_SLEEP = 0x7A,
  N_PM_DEBUG_STATS = 0x7B, C_SCAN = 0x80, C_SCAN_ABORT = 0x81, N_SCAN_START = 0x82,
  N_SCAN_RESULTS = 0x83, N_SCAN_COMPLETE = 0x84, N_BEACON = 0x90, C_TX_BEACON = 0x91,
  C_TX_PWR_TBL = 0x97, C_BT_CONFIG = 0x9b, C_STATS = 0x9c, N_STATS = 0x9d,
  N_CARD_STATE = 0xa1, N_MISSED_BEACONS = 0xa2, C_CT_KILL_CONFIG = 0xa4, C_SENSITIVITY = 0xa8,
  C_PHY_CALIBRATION = 0xb0, N_RX_PHY = 0xc0, N_RX_MPDU = 0xc1, N_RX = 0xc3,
  N_COMPRESSED_BA = 0xc5, IL_CN_MAX = 0xff
}
 
enum  { RXON_DEV_TYPE_AP = 1, RXON_DEV_TYPE_ESS = 3, RXON_DEV_TYPE_IBSS = 4, RXON_DEV_TYPE_SNIFFER = 6 }
 
enum  { CHANNEL_MODE_LEGACY = 0, CHANNEL_MODE_PURE_40 = 1, CHANNEL_MODE_MIXED = 2, CHANNEL_MODE_RESERVED = 3 }
 
enum  {
  TX_3945_STATUS_SUCCESS = 0x01, TX_3945_STATUS_DIRECT_DONE = 0x02, TX_3945_STATUS_FAIL_SHORT_LIMIT = 0x82, TX_3945_STATUS_FAIL_LONG_LIMIT = 0x83,
  TX_3945_STATUS_FAIL_FIFO_UNDERRUN = 0x84, TX_3945_STATUS_FAIL_MGMNT_ABORT = 0x85, TX_3945_STATUS_FAIL_NEXT_FRAG = 0x86, TX_3945_STATUS_FAIL_LIFE_EXPIRE = 0x87,
  TX_3945_STATUS_FAIL_DEST_PS = 0x88, TX_3945_STATUS_FAIL_ABORTED = 0x89, TX_3945_STATUS_FAIL_BT_RETRY = 0x8a, TX_3945_STATUS_FAIL_STA_INVALID = 0x8b,
  TX_3945_STATUS_FAIL_FRAG_DROPPED = 0x8c, TX_3945_STATUS_FAIL_TID_DISABLE = 0x8d, TX_3945_STATUS_FAIL_FRAME_FLUSHED = 0x8e, TX_3945_STATUS_FAIL_INSUFFICIENT_CF_POLL = 0x8f,
  TX_3945_STATUS_FAIL_TX_LOCKED = 0x90, TX_3945_STATUS_FAIL_NO_BEACON_ON_RADAR = 0x91
}
 
enum  {
  TX_STATUS_SUCCESS = 0x01, TX_STATUS_DIRECT_DONE = 0x02, TX_STATUS_POSTPONE_DELAY = 0x40, TX_STATUS_POSTPONE_FEW_BYTES = 0x41,
  TX_STATUS_POSTPONE_QUIET_PERIOD = 0x43, TX_STATUS_POSTPONE_CALC_TTAK = 0x44, TX_STATUS_FAIL_INTERNAL_CROSSED_RETRY = 0x81, TX_STATUS_FAIL_SHORT_LIMIT = 0x82,
  TX_STATUS_FAIL_LONG_LIMIT = 0x83, TX_STATUS_FAIL_FIFO_UNDERRUN = 0x84, TX_STATUS_FAIL_DRAIN_FLOW = 0x85, TX_STATUS_FAIL_RFKILL_FLUSH = 0x86,
  TX_STATUS_FAIL_LIFE_EXPIRE = 0x87, TX_STATUS_FAIL_DEST_PS = 0x88, TX_STATUS_FAIL_HOST_ABORTED = 0x89, TX_STATUS_FAIL_BT_RETRY = 0x8a,
  TX_STATUS_FAIL_STA_INVALID = 0x8b, TX_STATUS_FAIL_FRAG_DROPPED = 0x8c, TX_STATUS_FAIL_TID_DISABLE = 0x8d, TX_STATUS_FAIL_FIFO_FLUSHED = 0x8e,
  TX_STATUS_FAIL_INSUFFICIENT_CF_POLL = 0x8f, TX_STATUS_FAIL_PASSIVE_NO_RX = 0x90, TX_STATUS_FAIL_NO_BEACON_ON_RADAR = 0x91
}
 
enum  { TX_POWER_PA_NOT_ACTIVE = 0x0 }
 
enum  {
  TX_STATUS_MSK = 0x000000ff, TX_STATUS_DELAY_MSK = 0x00000040, TX_STATUS_ABORT_MSK = 0x00000080, TX_PACKET_MODE_MSK = 0x0000ff00,
  TX_FIFO_NUMBER_MSK = 0x00070000, TX_RESERVED = 0x00780000, TX_POWER_PA_DETECT_MSK = 0x7f800000, TX_ABORT_REQUIRED_MSK = 0x80000000
}
 
enum  {
  AGG_TX_STATE_TRANSMITTED = 0x00, AGG_TX_STATE_UNDERRUN_MSK = 0x01, AGG_TX_STATE_FEW_BYTES_MSK = 0x04, AGG_TX_STATE_ABORT_MSK = 0x08,
  AGG_TX_STATE_LAST_SENT_TTL_MSK = 0x10, AGG_TX_STATE_LAST_SENT_TRY_CNT_MSK = 0x20, AGG_TX_STATE_SCD_QUERY_MSK = 0x80, AGG_TX_STATE_TEST_BAD_CRC32_MSK = 0x100,
  AGG_TX_STATE_RESPONSE_MSK = 0x1ff, AGG_TX_STATE_DUMP_TX_MSK = 0x200, AGG_TX_STATE_DELAY_TX_MSK = 0x400
}
 
enum  il_measurement_state { IL_MEASUREMENT_START = 0, IL_MEASUREMENT_STOP = 1 }
 
enum  il_measurement_status {
  IL_MEASUREMENT_OK = 0, IL_MEASUREMENT_CONCURRENT = 1, IL_MEASUREMENT_CSA_CONFLICT = 2, IL_MEASUREMENT_TGH_CONFLICT = 3,
  IL_MEASUREMENT_STOPPED = 6, IL_MEASUREMENT_TIMEOUT = 7, IL_MEASUREMENT_PERIODIC_FAILED = 8
}
 
enum  il_measure_type {
  IL_MEASURE_BASIC = (1 << 0), IL_MEASURE_CHANNEL_LOAD = (1 << 1), IL_MEASURE_HISTOGRAM_RPI = (1 << 2), IL_MEASURE_HISTOGRAM_NOISE = (1 << 3),
  IL_MEASURE_FRAME = (1 << 4), IL_MEASURE_IDLE = (1 << 7)
}
 
enum  {
  IL_PM_NO_SLEEP = 0, IL_PM_SLP_MAC = 1, IL_PM_SLP_FULL_MAC_UNASSOCIATE = 2, IL_PM_SLP_FULL_MAC_CARD_STATE = 3,
  IL_PM_SLP_PHY = 4, IL_PM_SLP_REPENT = 5, IL_PM_WAKEUP_BY_TIMER = 6, IL_PM_WAKEUP_BY_DRIVER = 7,
  IL_PM_WAKEUP_BY_RFKILL = 8, IL_PM_NUM_OF_MODES = 12
}
 
enum  il_ibss_manager { IL_NOT_IBSS_MANAGER = 0, IL_IBSS_MANAGER = 1 }
 
enum  { IL_PHY_CALIBRATE_DIFF_GAIN_CMD = 7, IL_MAX_STANDARD_PHY_CALIBRATE_TBL_SIZE = 19 }
 

Variables

struct il_cmd_header __packed
 

Macro Definition Documentation

#define ABORT_STATUS   0x2

Definition at line 2579 of file commands.h.

#define AC_NUM   4

Definition at line 823 of file commands.h.

#define ADD_STA_MODIFY_NON_EXIST_STA   0x8

Definition at line 1062 of file commands.h.

#define ADD_STA_NO_BLOCK_ACK_RESOURCE   0x4

Definition at line 1061 of file commands.h.

#define ADD_STA_NO_ROOM_IN_TBL   0x2

Definition at line 1060 of file commands.h.

#define ADD_STA_SUCCESS_MSK   0x1

Definition at line 1059 of file commands.h.

#define AGG_TX_STATE_LAST_SENT_MSK
Value:
AGG_TX_STATE_LAST_SENT_TRY_CNT_MSK)

Definition at line 1647 of file commands.h.

#define AGG_TX_STATE_SEQ_NUM_MSK   0xffff0000

Definition at line 1656 of file commands.h.

#define AGG_TX_STATE_SEQ_NUM_POS   16

Definition at line 1655 of file commands.h.

#define AGG_TX_STATE_TRY_CNT_MSK   0xf000

Definition at line 1652 of file commands.h.

#define AGG_TX_STATE_TRY_CNT_POS   12

Definition at line 1651 of file commands.h.

#define AGG_TX_STATUS_MSK   0x00000fff /* bits 0:11 */

Definition at line 1644 of file commands.h.

#define AGG_TX_TRY_MSK   0x0000f000 /* bits 12:15 */

Definition at line 1645 of file commands.h.

#define BT_COEX_DISABLE   (0x0)

Definition at line 2091 of file commands.h.

#define BT_COEX_ENABLE   (BT_ENABLE_CHANNEL_ANNOUNCE | BT_ENABLE_PRIORITY)

Definition at line 2095 of file commands.h.

#define BT_ENABLE_CHANNEL_ANNOUNCE   BIT(0)

Definition at line 2092 of file commands.h.

#define BT_ENABLE_PRIORITY   BIT(1)

Definition at line 2093 of file commands.h.

#define BT_LEAD_TIME_DEF   (0x1E)

Definition at line 2097 of file commands.h.

#define BT_MAX_KILL_DEF   (0x5)

Definition at line 2099 of file commands.h.

#define BUILD_RAxTID (   sta_id,
  tid 
)    (((sta_id) << 4) + (tid))

Definition at line 897 of file commands.h.

#define C_SENSITIVITY_CONTROL_DEFAULT_TBL   cpu_to_le16(0)

Definition at line 3214 of file commands.h.

#define C_SENSITIVITY_CONTROL_WORK_TBL   cpu_to_le16(1)

Definition at line 3215 of file commands.h.

#define CAN_ABORT_STATUS   cpu_to_le32(0x1)

Definition at line 2577 of file commands.h.

#define CCMP_MIC_LEN   8

Definition at line 1354 of file commands.h.

#define CT_CARD_DISABLED   0x04

Definition at line 2338 of file commands.h.

#define HD_AUTO_CORR32_X1_TH_ADD_MIN_IDX   (2)

Definition at line 3203 of file commands.h.

#define HD_AUTO_CORR32_X1_TH_ADD_MIN_MRC_IDX   (3)

Definition at line 3204 of file commands.h.

#define HD_AUTO_CORR32_X4_TH_ADD_MIN_IDX   (5)

Definition at line 3206 of file commands.h.

#define HD_AUTO_CORR32_X4_TH_ADD_MIN_MRC_IDX   (6)

Definition at line 3207 of file commands.h.

#define HD_AUTO_CORR40_X4_TH_ADD_MIN_IDX   (9)

Definition at line 3210 of file commands.h.

#define HD_AUTO_CORR40_X4_TH_ADD_MIN_MRC_IDX   (4)

Definition at line 3205 of file commands.h.

#define HD_BARKER_CORR_TH_ADD_MIN_IDX   (7)

Definition at line 3208 of file commands.h.

#define HD_BARKER_CORR_TH_ADD_MIN_MRC_IDX   (8)

Definition at line 3209 of file commands.h.

#define HD_MIN_ENERGY_CCK_DET_IDX   (0) /* table idxes */

Definition at line 3201 of file commands.h.

#define HD_MIN_ENERGY_OFDM_DET_IDX   (1)

Definition at line 3202 of file commands.h.

#define HD_OFDM_ENERGY_TH_IN_IDX   (10)

Definition at line 3211 of file commands.h.

#define HD_TBL_SIZE   (11) /* number of entries */

C_SENSITIVITY = 0xa8 (command, has simple generic response)

This command sets up the Rx signal detector for a sensitivity level that is high enough to lock onto all signals within the associated network, but low enough to ignore signals that are below a certain threshold, so as not to have too many "false alarms". False alarms are signals that the Rx DSP tries to lock onto, but then discards after determining that they are noise.

The optimum number of false alarms is between 5 and 50 per 200 TUs (200 * 1024 uSecs, i.e. 204.8 milliseconds) of actual Rx time (i.e. time listening, not transmitting). Driver must adjust sensitivity so that the ratio of actual false alarms to actual Rx time falls within this range.

While associated, uCode delivers N_STATSs after each received beacon. These provide information to the driver to analyze the sensitivity. Don't analyze stats that come in from scanning, or any other non-associated-network source. Pertinent stats include:

From "general" stats (struct stats_rx_non_phy):

(beacon_energy_[abc] & 0x0FF00) >> 8 (unsigned, higher value is lower level) Measure of energy of desired signal. Used for establishing a level below which the device does not detect signals.

(beacon_silence_rssi_[abc] & 0x0FF00) >> 8 (unsigned, units in dB) Measure of background noise in silent period after beacon.

channel_load uSecs of actual Rx time during beacon period (varies according to how much time was spent transmitting).

From "cck" and "ofdm" stats (struct stats_rx_phy), separately:

false_alarm_cnt Signal locks abandoned early (before phy-level header).

plcp_err Signal locks abandoned late (during phy-level header).

NOTE: Both false_alarm_cnt and plcp_err increment monotonically from beacon to beacon, i.e. each value is an accumulation of all errors before and including the latest beacon. Values will wrap around to 0 after counting up to 2^32 - 1. Driver must differentiate vs. previous beacon's values to determine # false alarms in the current beacon period.

Total number of false alarms = false_alarms + plcp_errs

For OFDM, adjust the following table entries in struct il_sensitivity_cmd (notice that the start points for OFDM are at or close to settings for maximum sensitivity):

                                        START  /  MIN  /  MAX

HD_AUTO_CORR32_X1_TH_ADD_MIN_IDX 90 / 85 / 120 HD_AUTO_CORR32_X1_TH_ADD_MIN_MRC_IDX 170 / 170 / 210 HD_AUTO_CORR32_X4_TH_ADD_MIN_IDX 105 / 105 / 140 HD_AUTO_CORR32_X4_TH_ADD_MIN_MRC_IDX 220 / 220 / 270

If actual rate of OFDM false alarms (+ plcp_errors) is too high (greater than 50 for each 204.8 msecs listening), reduce sensitivity by adding 1 to all 4 of the table entries above, up to the max for each entry. Conversely, if false alarm rate is too low (less than 5 for each 204.8 msecs listening), subtract 1 from each entry to increase sensitivity.

For CCK sensitivity, keep track of the following:

1). 20-beacon history of maximum background noise, indicated by (beacon_silence_rssi_[abc] & 0x0FF00), units in dB, across the 3 receivers. For any given beacon, the "silence reference" is the maximum of last 60 samples (20 beacons * 3 receivers).

2). 10-beacon history of strongest signal level, as indicated by (beacon_energy_[abc] & 0x0FF00) >> 8, across the 3 receivers, i.e. the strength of the signal through the best receiver at the moment. These measurements are "upside down", with lower values for stronger signals, so max energy will be minimum value.

Then for any given beacon, the driver must determine the weakest of the strongest signals; this is the minimum level that needs to be successfully detected, when using the best receiver at the moment. "Max cck energy" is the maximum (higher value means lower energy!) of the last 10 minima. Once this is determined, driver must add a little margin by adding "6" to it.

3). Number of consecutive beacon periods with too few false alarms. Reset this to 0 at the first beacon period that falls within the "good" range (5 to 50 false alarms per 204.8 milliseconds rx).

Then, adjust the following CCK table entries in struct il_sensitivity_cmd (notice that the start points for CCK are at maximum sensitivity):

                                        START  /  MIN  /  MAX

HD_AUTO_CORR40_X4_TH_ADD_MIN_IDX 125 / 125 / 200 HD_AUTO_CORR40_X4_TH_ADD_MIN_MRC_IDX 200 / 200 / 400 HD_MIN_ENERGY_CCK_DET_IDX 100 / 0 / 100

If actual rate of CCK false alarms (+ plcp_errors) is too high (greater than 50 for each 204.8 msecs listening), method for reducing sensitivity is:

1) Add 3 to value in HD_AUTO_CORR40_X4_TH_ADD_MIN_MRC_IDX, up to max 400.

2) If current value in HD_AUTO_CORR40_X4_TH_ADD_MIN_IDX is < 160, sensitivity has been reduced a significant amount; bring it up to a moderate 161. Otherwise, add 3, up to max 200.

3) a) If current value in HD_AUTO_CORR40_X4_TH_ADD_MIN_IDX is > 160, sensitivity has been reduced only a moderate or small amount; subtract 2 from value in HD_MIN_ENERGY_CCK_DET_IDX, down to min 0. Otherwise (if gain has been significantly reduced), don't change the HD_MIN_ENERGY_CCK_DET_IDX value.

b) Save a snapshot of the "silence reference".

If actual rate of CCK false alarms (+ plcp_errors) is too low (less than 5 for each 204.8 msecs listening), method for increasing sensitivity is used only if:

1a) Previous beacon did not have too many false alarms 1b) AND difference between previous "silence reference" and current "silence reference" (prev - current) is 2 or more, OR 2) 100 or more consecutive beacon periods have had rate of less than 5 false alarms per 204.8 milliseconds rx time.

Method for increasing sensitivity:

1) Subtract 3 from value in HD_AUTO_CORR40_X4_TH_ADD_MIN_IDX, down to min 125.

2) Subtract 3 from value in HD_AUTO_CORR40_X4_TH_ADD_MIN_MRC_IDX, down to min 200.

3) Add 2 to value in HD_MIN_ENERGY_CCK_DET_IDX, up to max 100.

If actual rate of CCK false alarms (+ plcp_errors) is within good range (between 5 and 50 for each 204.8 msecs listening):

1) Save a snapshot of the silence reference.

2) If previous beacon had too many CCK false alarms (+ plcp_errors), give some extra margin to energy threshold by subtracting 8 from value in HD_MIN_ENERGY_CCK_DET_IDX.

For all cases (too few, too many, good range), make sure that the CCK detection threshold (energy) is below the energy level for robust detection over the past 10 beacon periods, the "Max cck energy". Lower values mean higher energy; this means making sure that the value in HD_MIN_ENERGY_CCK_DET_IDX is at or above "Max cck energy".

Definition at line 3200 of file commands.h.

#define HW_CARD_DISABLED   0x01

Definition at line 2336 of file commands.h.

#define IDX_TO_SEQ (   i)    ((i) & 0xff)

Definition at line 168 of file commands.h.

#define IL3945_BROADCAST_ID   24

Definition at line 848 of file commands.h.

#define IL3945_STATION_COUNT   25

Definition at line 849 of file commands.h.

#define IL39_MAX_UCODE_BEACON_INTERVAL   1 /* 1024 */

Definition at line 740 of file commands.h.

#define IL39_RX_FRAME_SIZE   (4 + sizeof(struct il3945_rx_frame))

Definition at line 1200 of file commands.h.

#define IL39_SCAN_PROBE_MASK (   n)    ((BIT(n) | (BIT(n) - BIT(1))))

Definition at line 2391 of file commands.h.

#define IL4965_BROADCAST_ID   31

Definition at line 850 of file commands.h.

#define IL4965_STATION_COUNT   32

Definition at line 851 of file commands.h.

#define IL49_AGC_DB_MASK   (0x3f80) /* MASK(7,13) */

Definition at line 1207 of file commands.h.

#define IL49_AGC_DB_POS   (7)

Definition at line 1208 of file commands.h.

#define IL49_RX_PHY_FLAGS_ANTENNAE_MASK   (0x70)

Definition at line 1206 of file commands.h.

#define IL49_RX_PHY_FLAGS_ANTENNAE_OFFSET   (4)

Definition at line 1205 of file commands.h.

#define IL49_RX_RES_PHY_CNT   14

Definition at line 1204 of file commands.h.

#define IL_AGG_TX_QUEUE_MSK   cpu_to_le32(0xffc00)

Definition at line 1092 of file commands.h.

#define IL_AP_ID   0

Definition at line 846 of file commands.h.

#define IL_CCK_RATES   4

Definition at line 78 of file commands.h.

#define IL_CMD_FAILED_MSK   0x40

Definition at line 163 of file commands.h.

#define IL_CONN_MAX_LISTEN_INTERVAL   10

Definition at line 738 of file commands.h.

#define IL_DEFAULT_STANDARD_PHY_CALIBRATE_TBL_SIZE   18

C_PHY_CALIBRATION = 0xb0 (command, has simple generic response)

This command sets the relative gains of 4965 device's 3 radio receiver chains.

After the first association, driver should accumulate signal and noise stats from the N_STATSs that follow the first 20 beacons from the associated network (don't collect stats that come in from scanning, or any other non-network source).

DISCONNECTED ANTENNA:

Driver should determine which antennas are actually connected, by comparing average beacon signal levels for the 3 Rx chains. Accumulate (add) the following values over 20 beacons, one accumulator for each of the chains a/b/c, from struct stats_rx_non_phy:

beacon_rssi_[abc] & 0x0FF (unsigned, units in dB)

Find the strongest signal from among a/b/c. Compare the other two to the strongest. If any signal is more than 15 dB (times 20, unless you divide the accumulated values by 20) below the strongest, the driver considers that antenna to be disconnected, and should not try to use that antenna/chain for Rx or Tx. If both A and B seem to be disconnected, driver should declare the stronger one as connected, and attempt to use it (A and B are the only 2 Tx chains!).

RX BALANCE:

Driver should balance the 3 receivers (but just the ones that are connected to antennas, see above) for gain, by comparing the average signal levels detected during the silence after each beacon (background noise). Accumulate (add) the following values over 20 beacons, one accumulator for each of the chains a/b/c, from struct stats_rx_non_phy:

beacon_silence_rssi_[abc] & 0x0FF (unsigned, units in dB)

Find the weakest background noise level from among a/b/c. This Rx chain will be the reference, with 0 gain adjustment. Attenuate other channels by finding noise difference:

(accum_noise[i] - accum_noise[reference]) / 30

The "30" adjusts the dB in the 20 accumulated samples to units of 1.5 dB. For use in diff_gain_[abc] fields of struct il_calibration_cmd, the driver should limit the difference results to a range of 0-3 (0-4.5 dB), and set bit 2 to indicate "reduce gain". The value for the reference (weakest) chain should be "0".

diff_gain_[abc] bit fields: 2: (1) reduce gain, (0) increase gain 1-0: amount of gain, units of 1.5 dB

Definition at line 3286 of file commands.h.

#define IL_DROP_ALL   2

Definition at line 1096 of file commands.h.

#define IL_DROP_SELECTED   1

Definition at line 1095 of file commands.h.

#define IL_DROP_SINGLE   0

Definition at line 1094 of file commands.h.

#define IL_GOOD_CRC_TH_DEFAULT   cpu_to_le16(1)

Definition at line 2430 of file commands.h.

#define IL_GOOD_CRC_TH_DISABLED   0

Definition at line 2429 of file commands.h.

#define IL_GOOD_CRC_TH_NEVER   cpu_to_le16(0xffff)

Definition at line 2431 of file commands.h.

#define IL_INVALID_STATION   255

Definition at line 854 of file commands.h.

#define IL_MAX_CMD_SIZE   4096

Definition at line 2433 of file commands.h.

#define IL_MAX_PHY_CALIBRATE_TBL_SIZE   (253)

Definition at line 3292 of file commands.h.

#define IL_MAX_RATES   (IL_CCK_RATES + IL_OFDM_RATES)

Definition at line 80 of file commands.h.

#define IL_MAX_SCAN_SIZE   1024

Definition at line 2432 of file commands.h.

#define IL_MAX_UCODE_BEACON_INTERVAL   4 /* 4096 */

Definition at line 739 of file commands.h.

#define IL_MISSED_BEACON_THRESHOLD_DEF   (5)

Definition at line 3018 of file commands.h.

#define IL_MISSED_BEACON_THRESHOLD_MAX   IL_MISSED_BEACON_THRESHOLD_DEF

Definition at line 3019 of file commands.h.

#define IL_MISSED_BEACON_THRESHOLD_MIN   (1)

Definition at line 3017 of file commands.h.

#define IL_OFDM_RATES   8

Definition at line 79 of file commands.h.

#define IL_POWER_DRIVER_ALLOW_SLEEP_MSK   cpu_to_le16(BIT(0))

Definition at line 2280 of file commands.h.

#define IL_POWER_PCI_PM_MSK   cpu_to_le16(BIT(3))

Definition at line 2281 of file commands.h.

#define IL_POWER_VEC_SIZE   5

struct il_powertable_cmd - Power Table Command : See below:

C_POWER_TBL = 0x77 (command, has simple generic response)

PM allow: bit 0 - '0' Driver not allow power management '1' Driver allow PM (use rest of parameters)

uCode send sleep notifications: bit 1 - '0' Don't send sleep notification '1' send sleep notification (SEND_PM_NOTIFICATION)

Sleep over DTIM bit 2 - '0' PM have to walk up every DTIM '1' PM could sleep over DTIM till listen Interval.

PCI power managed bit 3 - '0' (PCI_CFG_LINK_CTRL & 0x1) '1' !(PCI_CFG_LINK_CTRL & 0x1)

Fast PD bit 4 - '1' Put radio to sleep when receiving frame for others

Force sleep Modes bit 31/30- '00' use both mac/xtal sleeps '01' force Mac sleep '10' force xtal sleep '11' Illegal set

NOTE: if sleep_interval[SLEEP_INTRVL_TBL_SIZE-1] > DTIM period then ucode assume sleep over DTIM is allowed and we don't need to wake up for every DTIM.

Definition at line 2278 of file commands.h.

#define IL_PROBE_STATUS_FAIL_BT   BIT(2)

Definition at line 2608 of file commands.h.

#define IL_PROBE_STATUS_FAIL_TTL   BIT(1)

Definition at line 2607 of file commands.h.

#define IL_PROBE_STATUS_OK   0

Definition at line 2604 of file commands.h.

#define IL_PROBE_STATUS_TX_FAILED   BIT(0)

Definition at line 2605 of file commands.h.

#define IL_PWR_CCK_ENTRIES   2

Definition at line 329 of file commands.h.

#define IL_PWR_NUM_HT_OFDM_ENTRIES   24

Definition at line 328 of file commands.h.

#define IL_RX_FRAME_SIZE_MSK   0x00003fff

Definition at line 3339 of file commands.h.

#define IL_SCAN_PROBE_MASK (   n)    cpu_to_le32((BIT(n) | (BIT(n) - BIT(1))))

Definition at line 2410 of file commands.h.

#define IL_STA_ID   2

Definition at line 847 of file commands.h.

#define IL_STATION_COUNT   32 /* MAX(3945,4965) */

Definition at line 853 of file commands.h.

#define IL_STATS_CONF_CLEAR_STATS   cpu_to_le32(0x1) /* see above */

Definition at line 2959 of file commands.h.

#define IL_STATS_CONF_DISABLE_NOTIF   cpu_to_le32(0x2) /* see above */

Definition at line 2960 of file commands.h.

#define IL_TEMP_CONVERT   260

Definition at line 2690 of file commands.h.

#define IL_TX_FIFO_BE_MSK   cpu_to_le32(BIT(1))

Definition at line 1089 of file commands.h.

#define IL_TX_FIFO_BK_MSK   cpu_to_le32(BIT(0))

Definition at line 1088 of file commands.h.

#define IL_TX_FIFO_VI_MSK   cpu_to_le32(BIT(2))

Definition at line 1090 of file commands.h.

#define IL_TX_FIFO_VO_MSK   cpu_to_le32(BIT(3))

Definition at line 1091 of file commands.h.

#define IL_UCODE_API (   ver)    (((ver) & 0x0000FF00) >> 8)

Definition at line 74 of file commands.h.

#define IL_UCODE_MAJOR (   ver)    (((ver) & 0xFF000000) >> 24)

Definition at line 72 of file commands.h.

#define IL_UCODE_MINOR (   ver)    (((ver) & 0x00FF0000) >> 16)

Definition at line 73 of file commands.h.

#define IL_UCODE_SERIAL (   ver)    ((ver) & 0x000000FF)

Definition at line 75 of file commands.h.

#define INITIALIZE_SUBTYPE   (9)

Definition at line 382 of file commands.h.

#define INTERFERENCE_DATA_AVAILABLE   cpu_to_le32(1)

Definition at line 2819 of file commands.h.

#define LINK_QUAL_AC_NUM   AC_NUM

Definition at line 1792 of file commands.h.

#define LINK_QUAL_AGG_DISABLE_START_DEF   (3)

Definition at line 1837 of file commands.h.

#define LINK_QUAL_AGG_DISABLE_START_MAX   (255)

Definition at line 1838 of file commands.h.

#define LINK_QUAL_AGG_DISABLE_START_MIN   (0)

Definition at line 1839 of file commands.h.

#define LINK_QUAL_AGG_FRAME_LIMIT_DEF   (31)

Definition at line 1841 of file commands.h.

#define LINK_QUAL_AGG_FRAME_LIMIT_MAX   (63)

Definition at line 1842 of file commands.h.

#define LINK_QUAL_AGG_FRAME_LIMIT_MIN   (0)

Definition at line 1843 of file commands.h.

#define LINK_QUAL_AGG_TIME_LIMIT_DEF   (4000) /* 4 milliseconds */

Definition at line 1833 of file commands.h.

#define LINK_QUAL_AGG_TIME_LIMIT_MAX   (8000)

Definition at line 1834 of file commands.h.

#define LINK_QUAL_AGG_TIME_LIMIT_MIN   (100)

Definition at line 1835 of file commands.h.

#define LINK_QUAL_ANT_A_MSK   (1 << 0)

Definition at line 1798 of file commands.h.

#define LINK_QUAL_ANT_B_MSK   (1 << 1)

Definition at line 1799 of file commands.h.

#define LINK_QUAL_ANT_MSK   (LINK_QUAL_ANT_A_MSK|LINK_QUAL_ANT_B_MSK)

Definition at line 1800 of file commands.h.

#define LINK_QUAL_FLAGS_SET_STA_TLC_RTS_MSK   (1 << 0)

Definition at line 1789 of file commands.h.

#define LINK_QUAL_MAX_RETRY_NUM   16

Definition at line 1795 of file commands.h.

#define MEASURE_OWNER_STATUS   0x2

Definition at line 2602 of file commands.h.

#define MEASUREMENT_FILTER_FLAG
Value:
RXON_FILTER_CTL2HOST_MSK | \
RXON_FILTER_ACCEPT_GRP_MSK | \
RXON_FILTER_DIS_DECRYPT_MSK | \
RXON_FILTER_DIS_GRP_DECRYPT_MSK | \
RXON_FILTER_ASSOC_MSK | \
RXON_FILTER_BCON_AWARE_MSK)

Definition at line 2126 of file commands.h.

#define NUM_ELEMENTS_IN_HISTOGRAM   8

Definition at line 2188 of file commands.h.

#define NUMBER_OF_STATS   1 /* first __le32 is good CRC */

Definition at line 2610 of file commands.h.

#define POWER_TBL_CCK_ENTRY   32

Definition at line 326 of file commands.h.

#define POWER_TBL_NUM_ENTRIES   33

Definition at line 324 of file commands.h.

#define POWER_TBL_NUM_HT_OFDM_ENTRIES   32

Definition at line 325 of file commands.h.

#define PROBE_OPTION_MAX   20

Definition at line 2427 of file commands.h.

#define PROBE_OPTION_MAX_3945   4

Definition at line 2426 of file commands.h.

#define QOS_PARAM_FLG_TGN_MSK   cpu_to_le32(0x02)

Definition at line 819 of file commands.h.

#define QOS_PARAM_FLG_TXOP_TYPE_MSK   cpu_to_le32(0x10)

Definition at line 820 of file commands.h.

#define QOS_PARAM_FLG_UPDATE_EDCA_MSK   cpu_to_le32(0x01)

Definition at line 818 of file commands.h.

#define QUEUE_TO_SEQ (   q)    (((q) & 0x1f) << 8)

Definition at line 166 of file commands.h.

#define RATE_ANT_NUM   3

Definition at line 322 of file commands.h.

#define RATE_MCS_ANT_A_MSK   0x04000

Definition at line 317 of file commands.h.

#define RATE_MCS_ANT_AB_MSK   (RATE_MCS_ANT_A_MSK | RATE_MCS_ANT_B_MSK)

Definition at line 320 of file commands.h.

#define RATE_MCS_ANT_ABC_MSK   (RATE_MCS_ANT_AB_MSK | RATE_MCS_ANT_C_MSK)

Definition at line 321 of file commands.h.

#define RATE_MCS_ANT_B_MSK   0x08000

Definition at line 318 of file commands.h.

#define RATE_MCS_ANT_C_MSK   0x10000

Definition at line 319 of file commands.h.

#define RATE_MCS_ANT_POS   14

rate_n_flags Tx antenna masks 4965 has 2 transmitters bit14:16

Definition at line 316 of file commands.h.

#define RATE_MCS_CCK_MSK   0x200

Definition at line 293 of file commands.h.

#define RATE_MCS_CCK_POS   9

Definition at line 292 of file commands.h.

#define RATE_MCS_CODE_MSK   0x7

iwl4965 rate_n_flags bit fields

rate_n_flags format is used in following iwl4965 commands: N_RX (response only) N_RX_MPDU (response only) C_TX (both command and response) C_TX_LINK_QUALITY_CMD

High-throughput (HT) rate format for bits 7:0 (bit 8 must be "1"): 2-0: 0) 6 Mbps 1) 12 Mbps 2) 18 Mbps 3) 24 Mbps 4) 36 Mbps 5) 48 Mbps 6) 54 Mbps 7) 60 Mbps

4-3: 0) Single stream (SISO) 1) Dual stream (MIMO) 2) Triple stream (MIMO)

5: Value of 0x20 in bits 7:0 indicates 6 Mbps HT40 duplicate data

Legacy OFDM rate format for bits 7:0 (bit 8 must be "0", bit 9 "0"): 3-0: 0xD) 6 Mbps 0xF) 9 Mbps 0x5) 12 Mbps 0x7) 18 Mbps 0x9) 24 Mbps 0xB) 36 Mbps 0x1) 48 Mbps 0x3) 54 Mbps

Legacy CCK rate format for bits 7:0 (bit 8 must be "0", bit 9 "1"): 6-0: 10) 1 Mbps 20) 2 Mbps 55) 5.5 Mbps 110) 11 Mbps

Definition at line 280 of file commands.h.

#define RATE_MCS_DUP_MSK   0x1000

Definition at line 305 of file commands.h.

#define RATE_MCS_DUP_POS   12

Definition at line 304 of file commands.h.

#define RATE_MCS_FLAGS_POS   8

Definition at line 287 of file commands.h.

#define RATE_MCS_GF_MSK   0x400

Definition at line 297 of file commands.h.

#define RATE_MCS_GF_POS   10

Definition at line 296 of file commands.h.

#define RATE_MCS_HT40_MSK   0x800

Definition at line 301 of file commands.h.

#define RATE_MCS_HT40_POS   11

Definition at line 300 of file commands.h.

#define RATE_MCS_HT_DUP_MSK   0x20

Definition at line 284 of file commands.h.

#define RATE_MCS_HT_DUP_POS   5

Definition at line 283 of file commands.h.

#define RATE_MCS_HT_MSK   0x100

Definition at line 289 of file commands.h.

#define RATE_MCS_HT_POS   8

Definition at line 288 of file commands.h.

#define RATE_MCS_SGI_MSK   0x2000

Definition at line 309 of file commands.h.

#define RATE_MCS_SGI_POS   13

Definition at line 308 of file commands.h.

#define RATE_MCS_SPATIAL_MSK   0x18

Definition at line 282 of file commands.h.

#define RATE_MCS_SPATIAL_POS   3

Definition at line 281 of file commands.h.

#define REM_STA_SUCCESS_MSK   0x1

Definition at line 1070 of file commands.h.

#define RX_MPDU_RES_STATUS_DEC_DONE_MSK   (0x800)

Definition at line 1159 of file commands.h.

#define RX_MPDU_RES_STATUS_ICV_OK   (0x20)

Definition at line 1156 of file commands.h.

#define RX_MPDU_RES_STATUS_MIC_OK   (0x40)

Definition at line 1157 of file commands.h.

#define RX_MPDU_RES_STATUS_TTAK_OK   (1 << 7)

Definition at line 1158 of file commands.h.

#define RX_RES_PHY_FLAGS_ANTENNA_MSK   0xf0

Definition at line 1137 of file commands.h.

#define RX_RES_PHY_FLAGS_ANTENNA_POS   4

Definition at line 1138 of file commands.h.

#define RX_RES_PHY_FLAGS_BAND_24_MSK   cpu_to_le16(1 << 0)

Definition at line 1133 of file commands.h.

#define RX_RES_PHY_FLAGS_MOD_CCK_MSK   cpu_to_le16(1 << 1)

Definition at line 1134 of file commands.h.

#define RX_RES_PHY_FLAGS_NARROW_BAND_MSK   cpu_to_le16(1 << 3)

Definition at line 1136 of file commands.h.

#define RX_RES_PHY_FLAGS_SHORT_PREAMBLE_MSK   cpu_to_le16(1 << 2)

Definition at line 1135 of file commands.h.

#define RX_RES_STATUS_BAD_ICV_MIC   (0x1 << 11)

Definition at line 1153 of file commands.h.

#define RX_RES_STATUS_BAD_KEY_TTAK   (0x2 << 11)

Definition at line 1154 of file commands.h.

#define RX_RES_STATUS_DECRYPT_OK   (0x3 << 11)

Definition at line 1152 of file commands.h.

#define RX_RES_STATUS_DECRYPT_TYPE_MSK   (0x3 << 11)

Definition at line 1150 of file commands.h.

#define RX_RES_STATUS_NO_CRC32_ERROR   cpu_to_le32(1 << 0)

Definition at line 1130 of file commands.h.

#define RX_RES_STATUS_NO_RXE_OVERFLOW   cpu_to_le32(1 << 1)

Definition at line 1131 of file commands.h.

#define RX_RES_STATUS_NO_STATION_INFO_MISMATCH   (1<<7)

Definition at line 1148 of file commands.h.

#define RX_RES_STATUS_NOT_DECRYPT   (0x0 << 11)

Definition at line 1151 of file commands.h.

#define RX_RES_STATUS_SEC_TYPE_CCMP   (0x2 << 8)

Definition at line 1143 of file commands.h.

#define RX_RES_STATUS_SEC_TYPE_ERR   (0x7 << 8)

Definition at line 1145 of file commands.h.

#define RX_RES_STATUS_SEC_TYPE_MSK   (0x7 << 8)

Definition at line 1140 of file commands.h.

#define RX_RES_STATUS_SEC_TYPE_NONE   (0x0 << 8)

Definition at line 1141 of file commands.h.

#define RX_RES_STATUS_SEC_TYPE_TKIP   (0x3 << 8)

Definition at line 1144 of file commands.h.

#define RX_RES_STATUS_SEC_TYPE_WEP   (0x1 << 8)

Definition at line 1142 of file commands.h.

#define RX_RES_STATUS_STATION_FOUND   (1<<6)

Definition at line 1147 of file commands.h.

#define RXON_CARD_DISABLED   0x10

Definition at line 2339 of file commands.h.

#define RXON_FILTER_ACCEPT_GRP_MSK   cpu_to_le32(1 << 2)

Definition at line 624 of file commands.h.

#define RXON_FILTER_ASSOC_MSK   cpu_to_le32(1 << 5)

Definition at line 630 of file commands.h.

#define RXON_FILTER_BCON_AWARE_MSK   cpu_to_le32(1 << 6)

Definition at line 632 of file commands.h.

#define RXON_FILTER_CTL2HOST_MSK   cpu_to_le32(1 << 1)

Definition at line 622 of file commands.h.

#define RXON_FILTER_DIS_DECRYPT_MSK   cpu_to_le32(1 << 3)

Definition at line 626 of file commands.h.

#define RXON_FILTER_DIS_GRP_DECRYPT_MSK   cpu_to_le32(1 << 4)

Definition at line 628 of file commands.h.

#define RXON_FILTER_PROMISC_MSK   cpu_to_le32(1 << 0)

Definition at line 620 of file commands.h.

#define RXON_FLG_ANT_A_MSK   cpu_to_le32(1 << 8)

Definition at line 580 of file commands.h.

#define RXON_FLG_ANT_B_MSK   cpu_to_le32(1 << 9)

Definition at line 581 of file commands.h.

#define RXON_FLG_ANT_SEL_MSK   cpu_to_le32(0x0f00)

Definition at line 579 of file commands.h.

#define RXON_FLG_AUTO_DETECT_MSK   cpu_to_le32(1 << 2)

Definition at line 571 of file commands.h.

#define RXON_FLG_BAND_24G_MSK   cpu_to_le32(1 << 0)

Definition at line 568 of file commands.h.

#define RXON_FLG_CCK_MSK   cpu_to_le32(1 << 1)

Definition at line 569 of file commands.h.

#define RXON_FLG_CHANNEL_MODE_LEGACY   cpu_to_le32(CHANNEL_MODE_LEGACY << RXON_FLG_CHANNEL_MODE_POS)

Definition at line 608 of file commands.h.

#define RXON_FLG_CHANNEL_MODE_MIXED   cpu_to_le32(CHANNEL_MODE_MIXED << RXON_FLG_CHANNEL_MODE_POS)

Definition at line 612 of file commands.h.

#define RXON_FLG_CHANNEL_MODE_MSK   cpu_to_le32(0x3 << 25)

Definition at line 599 of file commands.h.

#define RXON_FLG_CHANNEL_MODE_POS   (25)

Definition at line 598 of file commands.h.

#define RXON_FLG_CHANNEL_MODE_PURE_40   cpu_to_le32(CHANNEL_MODE_PURE_40 << RXON_FLG_CHANNEL_MODE_POS)

Definition at line 610 of file commands.h.

#define RXON_FLG_CTRL_CHANNEL_LOC_HI_MSK   cpu_to_le32(0x1 << 22)

Definition at line 591 of file commands.h.

#define RXON_FLG_CTRL_CHANNEL_LOC_POS   (22)

Definition at line 590 of file commands.h.

#define RXON_FLG_DIS_DIV_MSK   cpu_to_le32(1 << 7)

Definition at line 578 of file commands.h.

#define RXON_FLG_HT40_PROT_MSK   cpu_to_le32(0x2 << 23)

Definition at line 596 of file commands.h.

#define RXON_FLG_HT_OPERATING_MODE_POS   (23)

Definition at line 593 of file commands.h.

#define RXON_FLG_HT_PROT_MSK   cpu_to_le32(0x1 << 23)

Definition at line 595 of file commands.h.

#define RXON_FLG_RADAR_DETECT_MSK   cpu_to_le32(1 << 12)

Definition at line 583 of file commands.h.

#define RXON_FLG_SELF_CTS_EN   cpu_to_le32(0x1<<30)

Definition at line 616 of file commands.h.

#define RXON_FLG_SHORT_PREAMBLE_MSK   cpu_to_le32(1 << 5)

Definition at line 576 of file commands.h.

#define RXON_FLG_SHORT_SLOT_MSK   cpu_to_le32(1 << 4)

Definition at line 575 of file commands.h.

#define RXON_FLG_TGG_PROTECT_MSK   cpu_to_le32(1 << 3)

Definition at line 573 of file commands.h.

#define RXON_FLG_TGJ_NARROW_BAND_MSK   cpu_to_le32(1 << 13)

Definition at line 584 of file commands.h.

#define RXON_FLG_TSF2HOST_MSK   cpu_to_le32(1 << 15)

Definition at line 587 of file commands.h.

#define RXON_RX_CHAIN_CNT_MSK   cpu_to_le16(0x3 << 10)

Definition at line 559 of file commands.h.

#define RXON_RX_CHAIN_CNT_POS   (10)

Definition at line 560 of file commands.h.

#define RXON_RX_CHAIN_DRIVER_FORCE_MSK   cpu_to_le16(0x1 << 0)

Definition at line 551 of file commands.h.

#define RXON_RX_CHAIN_DRIVER_FORCE_POS   (0)

Definition at line 552 of file commands.h.

#define RXON_RX_CHAIN_FORCE_MIMO_SEL_MSK   cpu_to_le16(0x7 << 7)

Definition at line 557 of file commands.h.

#define RXON_RX_CHAIN_FORCE_MIMO_SEL_POS   (7)

Definition at line 558 of file commands.h.

#define RXON_RX_CHAIN_FORCE_SEL_MSK   cpu_to_le16(0x7 << 4)

Definition at line 555 of file commands.h.

#define RXON_RX_CHAIN_FORCE_SEL_POS   (4)

Definition at line 556 of file commands.h.

#define RXON_RX_CHAIN_MIMO_CNT_MSK   cpu_to_le16(0x3 << 12)

Definition at line 561 of file commands.h.

#define RXON_RX_CHAIN_MIMO_CNT_POS   (12)

Definition at line 562 of file commands.h.

#define RXON_RX_CHAIN_MIMO_FORCE_MSK   cpu_to_le16(0x1 << 14)

Definition at line 563 of file commands.h.

#define RXON_RX_CHAIN_MIMO_FORCE_POS   (14)

Definition at line 564 of file commands.h.

#define RXON_RX_CHAIN_VALID_MSK   cpu_to_le16(0x7 << 1)

Definition at line 553 of file commands.h.

#define RXON_RX_CHAIN_VALID_POS   (1)

Definition at line 554 of file commands.h.

#define SCAN_CHANNEL_TYPE_ACTIVE   cpu_to_le32(1)

Definition at line 2354 of file commands.h.

#define SCAN_CHANNEL_TYPE_PASSIVE   cpu_to_le32(0)

Definition at line 2353 of file commands.h.

#define SCAN_OWNER_STATUS   0x1

Definition at line 2601 of file commands.h.

#define SEQ_HUGE_FRAME   cpu_to_le16(0x4000)

Definition at line 169 of file commands.h.

#define SEQ_RX_FRAME   cpu_to_le16(0x8000)

Definition at line 170 of file commands.h.

#define SEQ_TO_IDX (   s)    ((s) & 0xff)

Definition at line 167 of file commands.h.

#define SEQ_TO_QUEUE (   s)    (((s) >> 8) & 0x1f)

Definition at line 165 of file commands.h.

#define STA_CONTROL_MODIFY_MSK   0x01

Definition at line 868 of file commands.h.

#define STA_FLG_AGG_MPDU_8US_MSK   cpu_to_le32(1 << 18)

Definition at line 859 of file commands.h.

#define STA_FLG_AGG_MPDU_DENSITY_MSK   cpu_to_le32(7 << 23)

Definition at line 865 of file commands.h.

#define STA_FLG_AGG_MPDU_DENSITY_POS   (23)

Definition at line 864 of file commands.h.

#define STA_FLG_HT40_EN_MSK   cpu_to_le32(1 << 21)

Definition at line 862 of file commands.h.

#define STA_FLG_MAX_AGG_SIZE_MSK   cpu_to_le32(3 << 19)

Definition at line 861 of file commands.h.

#define STA_FLG_MAX_AGG_SIZE_POS   (19)

Definition at line 860 of file commands.h.

#define STA_FLG_MIMO_DIS_MSK   cpu_to_le32(1 << 22)

Definition at line 863 of file commands.h.

#define STA_FLG_PWR_SAVE_MSK   cpu_to_le32(1 << 8)

Definition at line 857 of file commands.h.

#define STA_FLG_RTS_MIMO_PROT_MSK   cpu_to_le32(1 << 17)

Definition at line 858 of file commands.h.

#define STA_FLG_TX_RATE_MSK   cpu_to_le32(1 << 2)

Definition at line 856 of file commands.h.

#define STA_KEY_FLG_CCMP   cpu_to_le16(0x0002)

Definition at line 874 of file commands.h.

#define STA_KEY_FLG_ENCRYPT_MSK   cpu_to_le16(0x0007)

Definition at line 871 of file commands.h.

#define STA_KEY_FLG_INVALID   cpu_to_le16(0x0800)

Definition at line 878 of file commands.h.

#define STA_KEY_FLG_KEY_SIZE_MSK   cpu_to_le16(0x1000)

Definition at line 883 of file commands.h.

#define STA_KEY_FLG_KEYID_POS   8

Definition at line 877 of file commands.h.

#define STA_KEY_FLG_MAP_KEY_MSK   cpu_to_le16(0x0008)

Definition at line 880 of file commands.h.

#define STA_KEY_FLG_NO_ENC   cpu_to_le16(0x0000)

Definition at line 872 of file commands.h.

#define STA_KEY_FLG_TKIP   cpu_to_le16(0x0003)

Definition at line 875 of file commands.h.

#define STA_KEY_FLG_WEP   cpu_to_le16(0x0001)

Definition at line 873 of file commands.h.

#define STA_KEY_MAX_NUM   8

Definition at line 885 of file commands.h.

#define STA_KEY_MULTICAST_MSK   cpu_to_le16(0x4000)

Definition at line 884 of file commands.h.

#define STA_MODIFY_ADDBA_TID_MSK   0x08

Definition at line 891 of file commands.h.

#define STA_MODIFY_DELBA_TID_MSK   0x10

Definition at line 892 of file commands.h.

#define STA_MODIFY_KEY_MASK   0x01

Definition at line 888 of file commands.h.

#define STA_MODIFY_SLEEP_TX_COUNT_MSK   0x20

Definition at line 893 of file commands.h.

#define STA_MODIFY_TID_DISABLE_TX   0x02

Definition at line 889 of file commands.h.

#define STA_MODIFY_TX_RATE_MSK   0x04

Definition at line 890 of file commands.h.

#define STATS_REPLY_FLG_BAND_24G_MSK   cpu_to_le32(0x2)

Definition at line 2980 of file commands.h.

#define STATS_REPLY_FLG_HT40_MODE_MSK   cpu_to_le32(0x8)

Definition at line 2981 of file commands.h.

#define SUP_RATE_11A_MAX_NUM_CHANNELS   8

Definition at line 2692 of file commands.h.

#define SUP_RATE_11B_MAX_NUM_CHANNELS   4

Definition at line 2693 of file commands.h.

#define SUP_RATE_11G_MAX_NUM_CHANNELS   12

Definition at line 2694 of file commands.h.

#define SW_CARD_DISABLED   0x02

Definition at line 2337 of file commands.h.

#define TKIP_ICV_LEN   4

Definition at line 1355 of file commands.h.

#define TX_CMD_FLG_ACK_MSK   cpu_to_le32(1 << 3)

Definition at line 1283 of file commands.h.

#define TX_CMD_FLG_AGG_CCMP_MSK   cpu_to_le32(1 << 22)

Definition at line 1334 of file commands.h.

#define TX_CMD_FLG_ANT_A_MSK   cpu_to_le32(1 << 8)

Definition at line 1306 of file commands.h.

#define TX_CMD_FLG_ANT_B_MSK   cpu_to_le32(1 << 9)

Definition at line 1307 of file commands.h.

#define TX_CMD_FLG_ANT_SEL_MSK   cpu_to_le32(0xf00)

Definition at line 1305 of file commands.h.

#define TX_CMD_FLG_CTS_MSK   cpu_to_le32(1 << 2)

Definition at line 1278 of file commands.h.

#define TX_CMD_FLG_DUR_MSK   cpu_to_le32(1 << 25)

Definition at line 1337 of file commands.h.

#define TX_CMD_FLG_FULL_TXOP_PROT_MSK   cpu_to_le32(1 << 7)

Definition at line 1301 of file commands.h.

#define TX_CMD_FLG_IMM_BA_RSP_MASK   cpu_to_le32(1 << 6)

Definition at line 1295 of file commands.h.

#define TX_CMD_FLG_MH_PAD_MSK   cpu_to_le32(1 << 20)

Definition at line 1330 of file commands.h.

#define TX_CMD_FLG_MORE_FRAG_MSK   cpu_to_le32(1 << 14)

Definition at line 1317 of file commands.h.

#define TX_CMD_FLG_RTS_MSK   cpu_to_le32(1 << 1)

Definition at line 1271 of file commands.h.

#define TX_CMD_FLG_SEQ_CTL_MSK   cpu_to_le32(1 << 13)

Definition at line 1313 of file commands.h.

#define TX_CMD_FLG_STA_RATE_MSK   cpu_to_le32(1 << 4)

Definition at line 1291 of file commands.h.

#define TX_CMD_FLG_TSF_MSK   cpu_to_le32(1 << 16)

Definition at line 1322 of file commands.h.

#define TX_CMD_LIFE_TIME_INFINITE   cpu_to_le32(0xFFFFFFFF)

Definition at line 2428 of file commands.h.

#define TX_CMD_SEC_CCM   0x02

Definition at line 1343 of file commands.h.

#define TX_CMD_SEC_KEY128   0x08

Definition at line 1347 of file commands.h.

#define TX_CMD_SEC_MSK   0x03

Definition at line 1345 of file commands.h.

#define TX_CMD_SEC_SHIFT   6

Definition at line 1346 of file commands.h.

#define TX_CMD_SEC_TKIP   0x03

Definition at line 1344 of file commands.h.

#define TX_CMD_SEC_WEP   0x01

Definition at line 1342 of file commands.h.

#define TX_PACKET_MODE_BURST_FIRST   0x0200

Definition at line 1609 of file commands.h.

#define TX_PACKET_MODE_BURST_SEQ   0x0100

Definition at line 1608 of file commands.h.

#define TX_PACKET_MODE_REGULAR   0x0000

Definition at line 1607 of file commands.h.

#define UCODE_STATS_CLEAR_MSK   (0x1 << 0)

Definition at line 2940 of file commands.h.

#define UCODE_STATS_FREQUENCY_MSK   (0x1 << 1)

Definition at line 2941 of file commands.h.

#define UCODE_STATS_NARROW_BAND_MSK   (0x1 << 2)

Definition at line 2942 of file commands.h.

#define UCODE_VALID_OK   cpu_to_le32(0x1)

Definition at line 381 of file commands.h.

#define WEP_ICV_LEN   4

Definition at line 1353 of file commands.h.

#define WEP_INVALID_OFFSET   0xff

Definition at line 1120 of file commands.h.

#define WEP_IV_LEN   4

Definition at line 1352 of file commands.h.

#define WEP_KEY_LEN_128   13

Definition at line 1122 of file commands.h.

#define WEP_KEY_LEN_64   5

Definition at line 1121 of file commands.h.

#define WEP_KEY_WEP_TYPE   1

Definition at line 1118 of file commands.h.

#define WEP_KEYS_MAX   4

Definition at line 1119 of file commands.h.

Enumeration Type Documentation

anonymous enum
Enumerator:
N_ALIVE 
N_ERROR 
C_RXON 
C_RXON_ASSOC 
C_QOS_PARAM 
C_RXON_TIMING 
C_ADD_STA 
C_REM_STA 
C_WEPKEY 
N_3945_RX 
C_TX 
C_RATE_SCALE 
C_LEDS 
C_TX_LINK_QUALITY_CMD 
C_CHANNEL_SWITCH 
N_CHANNEL_SWITCH 
C_SPECTRUM_MEASUREMENT 
N_SPECTRUM_MEASUREMENT 
C_POWER_TBL 
N_PM_SLEEP 
N_PM_DEBUG_STATS 
C_SCAN 
C_SCAN_ABORT 
N_SCAN_START 
N_SCAN_RESULTS 
N_SCAN_COMPLETE 
N_BEACON 
C_TX_BEACON 
C_TX_PWR_TBL 
C_BT_CONFIG 
C_STATS 
N_STATS 
N_CARD_STATE 
N_MISSED_BEACONS 
C_CT_KILL_CONFIG 
C_SENSITIVITY 
C_PHY_CALIBRATION 
N_RX_PHY 
N_RX_MPDU 
N_RX 
N_COMPRESSED_BA 
IL_CN_MAX 

Definition at line 82 of file commands.h.

anonymous enum
Enumerator:
RXON_DEV_TYPE_AP 
RXON_DEV_TYPE_ESS 
RXON_DEV_TYPE_IBSS 
RXON_DEV_TYPE_SNIFFER 

Definition at line 544 of file commands.h.

anonymous enum
Enumerator:
CHANNEL_MODE_LEGACY 
CHANNEL_MODE_PURE_40 
CHANNEL_MODE_MIXED 
CHANNEL_MODE_RESERVED 

Definition at line 602 of file commands.h.

anonymous enum
Enumerator:
TX_3945_STATUS_SUCCESS 
TX_3945_STATUS_DIRECT_DONE 
TX_3945_STATUS_FAIL_SHORT_LIMIT 
TX_3945_STATUS_FAIL_LONG_LIMIT 
TX_3945_STATUS_FAIL_FIFO_UNDERRUN 
TX_3945_STATUS_FAIL_MGMNT_ABORT 
TX_3945_STATUS_FAIL_NEXT_FRAG 
TX_3945_STATUS_FAIL_LIFE_EXPIRE 
TX_3945_STATUS_FAIL_DEST_PS 
TX_3945_STATUS_FAIL_ABORTED 
TX_3945_STATUS_FAIL_BT_RETRY 
TX_3945_STATUS_FAIL_STA_INVALID 
TX_3945_STATUS_FAIL_FRAG_DROPPED 
TX_3945_STATUS_FAIL_TID_DISABLE 
TX_3945_STATUS_FAIL_FRAME_FLUSHED 
TX_3945_STATUS_FAIL_INSUFFICIENT_CF_POLL 
TX_3945_STATUS_FAIL_TX_LOCKED 
TX_3945_STATUS_FAIL_NO_BEACON_ON_RADAR 

Definition at line 1551 of file commands.h.

anonymous enum
Enumerator:
TX_STATUS_SUCCESS 
TX_STATUS_DIRECT_DONE 
TX_STATUS_POSTPONE_DELAY 
TX_STATUS_POSTPONE_FEW_BYTES 
TX_STATUS_POSTPONE_QUIET_PERIOD 
TX_STATUS_POSTPONE_CALC_TTAK 
TX_STATUS_FAIL_INTERNAL_CROSSED_RETRY 
TX_STATUS_FAIL_SHORT_LIMIT 
TX_STATUS_FAIL_LONG_LIMIT 
TX_STATUS_FAIL_FIFO_UNDERRUN 
TX_STATUS_FAIL_DRAIN_FLOW 
TX_STATUS_FAIL_RFKILL_FLUSH 
TX_STATUS_FAIL_LIFE_EXPIRE 
TX_STATUS_FAIL_DEST_PS 
TX_STATUS_FAIL_HOST_ABORTED 
TX_STATUS_FAIL_BT_RETRY 
TX_STATUS_FAIL_STA_INVALID 
TX_STATUS_FAIL_FRAG_DROPPED 
TX_STATUS_FAIL_TID_DISABLE 
TX_STATUS_FAIL_FIFO_FLUSHED 
TX_STATUS_FAIL_INSUFFICIENT_CF_POLL 
TX_STATUS_FAIL_PASSIVE_NO_RX 
TX_STATUS_FAIL_NO_BEACON_ON_RADAR 

Definition at line 1579 of file commands.h.

anonymous enum
Enumerator:
TX_POWER_PA_NOT_ACTIVE 

Definition at line 1611 of file commands.h.

anonymous enum
Enumerator:
TX_STATUS_MSK 
TX_STATUS_DELAY_MSK 
TX_STATUS_ABORT_MSK 
TX_PACKET_MODE_MSK 
TX_FIFO_NUMBER_MSK 
TX_RESERVED 
TX_POWER_PA_DETECT_MSK 
TX_ABORT_REQUIRED_MSK 

Definition at line 1615 of file commands.h.

anonymous enum
Enumerator:
AGG_TX_STATE_TRANSMITTED 
AGG_TX_STATE_UNDERRUN_MSK 
AGG_TX_STATE_FEW_BYTES_MSK 
AGG_TX_STATE_ABORT_MSK 
AGG_TX_STATE_LAST_SENT_TTL_MSK 
AGG_TX_STATE_LAST_SENT_TRY_CNT_MSK 
AGG_TX_STATE_SCD_QUERY_MSK 
AGG_TX_STATE_TEST_BAD_CRC32_MSK 
AGG_TX_STATE_RESPONSE_MSK 
AGG_TX_STATE_DUMP_TX_MSK 
AGG_TX_STATE_DELAY_TX_MSK 

Definition at line 1630 of file commands.h.

anonymous enum
Enumerator:
IL_PM_NO_SLEEP 
IL_PM_SLP_MAC 
IL_PM_SLP_FULL_MAC_UNASSOCIATE 
IL_PM_SLP_FULL_MAC_CARD_STATE 
IL_PM_SLP_PHY 
IL_PM_SLP_REPENT 
IL_PM_WAKEUP_BY_TIMER 
IL_PM_WAKEUP_BY_DRIVER 
IL_PM_WAKEUP_BY_RFKILL 
IL_PM_NUM_OF_MODES 

Definition at line 2315 of file commands.h.

anonymous enum
Enumerator:
IL_PHY_CALIBRATE_DIFF_GAIN_CMD 
IL_MAX_STANDARD_PHY_CALIBRATE_TBL_SIZE 

Definition at line 3287 of file commands.h.

Enumerator:
IL_NOT_IBSS_MANAGER 
IL_IBSS_MANAGER 

Definition at line 2641 of file commands.h.

Enumerator:
IL_MEASURE_BASIC 
IL_MEASURE_CHANNEL_LOAD 
IL_MEASURE_HISTOGRAM_RPI 
IL_MEASURE_HISTOGRAM_NOISE 
IL_MEASURE_FRAME 
IL_MEASURE_IDLE 

Definition at line 2201 of file commands.h.

Enumerator:
IL_MEASUREMENT_START 
IL_MEASUREMENT_STOP 

Definition at line 2172 of file commands.h.

Enumerator:
IL_MEASUREMENT_OK 
IL_MEASUREMENT_CONCURRENT 
IL_MEASUREMENT_CSA_CONFLICT 
IL_MEASUREMENT_TGH_CONFLICT 
IL_MEASUREMENT_STOPPED 
IL_MEASUREMENT_TIMEOUT 
IL_MEASUREMENT_PERIODIC_FAILED 

Definition at line 2177 of file commands.h.

Variable Documentation