⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 athdrv.h

📁 Atheros Communications AR6001 WLAN Driver for SDIO installation Read Me March 26,2007 (based on
💻 H
📖 第 1 页 / 共 2 页
字号:
 *   UINT32 cmd (AR6000_XIOCTL_FORCE_TARGET_RESET)
 */


#ifdef HTC_RAW_INTERFACE
/* HTC Raw Interface Ioctls */
#define AR6000_XIOCTL_HTC_RAW_OPEN            13
/*
 * arguments:
 *   UINT32 cmd (AR6000_XIOCTL_HTC_RAW_OPEN)
 */

#define AR6000_XIOCTL_HTC_RAW_CLOSE           14
/*
 * arguments:
 *   UINT32 cmd (AR6000_XIOCTL_HTC_RAW_CLOSE)
 */

#define AR6000_XIOCTL_HTC_RAW_READ            15
/*
 * arguments:
 *   union {
 *     struct {
 *       UINT32 cmd (AR6000_XIOCTL_HTC_RAW_READ)
 *       UINT32 mailboxID
 *       UINT32 length
 *     }
 *     results[length]
 *   } 
 */

#define AR6000_XIOCTL_HTC_RAW_WRITE           16
/*
 * arguments:
 *   UINT32 cmd (AR6000_XIOCTL_HTC_RAW_WRITE)
 *   UINT32 mailboxID
 *   UINT32 length
 *   char buffer[length]
 */
#endif /* HTC_RAW_INTERFACE */

#define AR6000_XIOCTL_CHECK_TARGET_READY      17
/*
 * arguments:
 *   UINT32 cmd (AR6000_XIOCTL_CHECK_TARGET_READY)
 */



/*                ====GPIO (General Purpose I/O) Extended Ioctls====          */

#define AR6000_XIOCTL_GPIO_OUTPUT_SET         18
/*
 * arguments:
 *   UINT32 cmd (AR6000_XIOCTL_GPIO_OUTPUT_SET)
 *   ar6000_gpio_output_set_cmd_s (see below)
 * uses: WMIX_GPIO_OUTPUT_SET_CMDID
 */

#define AR6000_XIOCTL_GPIO_INPUT_GET          19
/*
 * arguments:
 *   UINT32 cmd (AR6000_XIOCTL_GPIO_INPUT_GET)
 * uses: WMIX_GPIO_INPUT_GET_CMDID
 */

#define AR6000_XIOCTL_GPIO_REGISTER_SET       20
/*
 * arguments:
 *   UINT32 cmd (AR6000_XIOCTL_GPIO_REGISTER_SET)
 *   ar6000_gpio_register_cmd_s (see below)
 * uses: WMIX_GPIO_REGISTER_SET_CMDID
 */

#define AR6000_XIOCTL_GPIO_REGISTER_GET       21
/*
 * arguments:
 *   UINT32 cmd (AR6000_XIOCTL_GPIO_REGISTER_GET)
 *   ar6000_gpio_register_cmd_s (see below)
 * uses: WMIX_GPIO_REGISTER_GET_CMDID
 */

#define AR6000_XIOCTL_GPIO_INTR_ACK           22
/*
 * arguments:
 *   UINT32 cmd (AR6000_XIOCTL_GPIO_INTR_ACK)
 *   ar6000_cpio_intr_ack_cmd_s (see below)
 * uses: WMIX_GPIO_INTR_ACK_CMDID
 */

#define AR6000_XIOCTL_GPIO_INTR_WAIT          23
/*
 * arguments:
 *   UINT32 cmd (AR6000_XIOCTL_GPIO_INTR_WAIT)
 */



/*                    ====more wireless commands====                          */

#define AR6000_XIOCTL_SET_ADHOC_BSSID         24
/*
 * arguments:
 *   UINT32 cmd (AR6000_XIOCTL_SET_ADHOC_BSSID)
 *   WMI_SET_ADHOC_BSSID_CMD setAdHocBssidCmd (see include/wmi.h)
 */

#define AR6000_XIOCTL_SET_OPT_MODE            25
/*
 * arguments:
 *   UINT32 cmd (AR6000_XIOCTL_SET_OPT_MODE)
 *   WMI_SET_OPT_MODE_CMD setOptModeCmd (see include/wmi.h)
 * uses: WMI_SET_OPT_MODE_CMDID
 */

#define AR6000_XIOCTL_OPT_SEND_FRAME          26
/*
 * arguments:
 *   UINT32 cmd (AR6000_XIOCTL_OPT_SEND_FRAME)
 *   WMI_OPT_TX_FRAME_CMD optTxFrameCmd (see include/wmi.h)
 * uses: WMI_OPT_TX_FRAME_CMDID
 */

#define AR6000_XIOCTL_SET_ADHOC_BEACON_INTVAL 27
/*
 * arguments:
 *   UINT32 cmd (AR6000_XIOCTL_SET_ADHOC_BEACON_INTVAL)
 *   WMI_BEACON_INT_CMD beaconIntCmd (see include/wmi.h)
 * uses: WMI_SET_BEACON_INT_CMDID
 */


#define IEEE80211_IOCTL_SETAUTHALG           28





/* used by AR6000_IOCTL_WMI_GETREV */
struct ar6000_version {
    A_UINT32        host_ver;
    A_UINT32        target_ver;
};

/* used by AR6000_IOCTL_WMI_GET_QOS_QUEUE */
struct ar6000_queuereq{
    A_UINT8         trafficDirection;
    A_UINT8         trafficClass;
    A_INT8          queueNumber;
};

/* used by AR6000_IOCTL_WMI_GET_TARGET_STATS */
typedef struct targetStats_t {
    A_UINT64    tx_packets;           
    A_UINT64    tx_bytes;             
    A_UINT64    tx_unicast_pkts;      
    A_UINT64    tx_unicast_bytes;     
    A_UINT64    tx_multicast_pkts;    
    A_UINT64    tx_multicast_bytes;   
    A_UINT64    tx_broadcast_pkts;    
    A_UINT64    tx_broadcast_bytes;   
    A_UINT64    tx_rts_success_cnt;
 
    A_UINT64    tx_errors;            
    A_UINT64    tx_failed_cnt;
    A_UINT64    tx_retry_cnt;
    A_UINT64    tx_rts_fail_cnt;
    A_UINT64    rx_packets;           
    A_UINT64    rx_bytes;             
    A_UINT64    rx_unicast_pkts;      
    A_UINT64    rx_unicast_bytes;     
    A_UINT64    rx_multicast_pkts;    
    A_UINT64    rx_multicast_bytes;   
    A_UINT64    rx_broadcast_pkts;    
    A_UINT64    rx_broadcast_bytes;   
    A_UINT64    rx_fragment_pkt;
 
    A_UINT64    rx_errors;            
    A_UINT64    rx_crcerr;            
    A_UINT64    rx_key_cache_miss;    
    A_UINT64    rx_decrypt_err;       
    A_UINT64    rx_duplicate_frames;

    A_UINT64    tkip_local_mic_failure;
    A_UINT64    tkip_counter_measures_invoked;
    A_UINT64    tkip_replays;
    A_UINT64    tkip_format_errors; 
    A_UINT64    ccmp_format_errors;
    A_UINT64    ccmp_replays;

    A_UINT64    power_save_failure_cnt;
    A_INT16     noise_floor_calibation;

    A_UINT64    cs_bmiss_cnt;
    A_UINT64    cs_lowRssi_cnt;
    A_UINT64    cs_connect_cnt;
    A_UINT64    cs_disconnect_cnt;
    A_UINT8     cs_aveBeacon_rssi;
    A_UINT8     cs_lastRoam_msec;
}TARGET_STATS;

/* used by AR6000_XIOCTL_GPIO_OUTPUT_SET */
struct ar6000_gpio_output_set_cmd_s {
    A_UINT32 set_mask;
    A_UINT32 clear_mask;
    A_UINT32 enable_mask;
    A_UINT32 disable_mask;
};

/*
 * used by AR6000_XIOCTL_GPIO_REGISTER_GET and AR6000_XIOCTL_GPIO_REGISTER_SET
 */
struct ar6000_gpio_register_cmd_s {
    A_UINT32 gpioreg_id;
    A_UINT32 value;
};

/* used by AR6000_XIOCTL_GPIO_INTR_ACK */
struct ar6000_gpio_intr_ack_cmd_s {
    A_UINT32 ack_mask;
};

/* used by AR6000_XIOCTL_GPIO_INTR_WAIT */
struct ar6000_gpio_intr_wait_cmd_s {
    A_UINT32 intr_mask;
    A_UINT32 input_values;
};

#endif //__linux__

#ifdef UNDER_CE
#include <ntddndis.h>
/*                         ====WinCE OIDS for BMI====                        */
#define OID_CAR6K_BMI_DONE 0xFF000001
#define OID_CAR6K_BMI_WRITE_MEMORY 0xFF000002
#define OID_CAR6K_BMI_TEST 0xFF000003
#define OID_CAR6K_BMI_EXECUTE 0xFF000004
#define OID_CAR6K_BMI_SET_APP_START 0xFF000005
#define OID_CAR6K_BMI_WRITE_SOC_REGISTER 0xFF000006
#define OID_CAR6K_BMI_READ_MEMORY 0xFF000007
#define OID_CAR6K_BMI_READ_SOC_REGISTER 0xFF000008

/*                         ====WinCE OIDS for HTC RAW I/F====                */
#ifdef HTC_RAW_INTERFACE
#define OID_CAR6K_HTC_RAW_OPEN 0xFF000009
#define OID_CAR6K_HTC_RAW_CLOSE 0xFF000010
#define OID_CAR6K_HTC_RAW_READ 0xFF000011
#define OID_CAR6K_HTC_RAW_WRITE 0xFF000012
#endif //HTC_RAW_INTERFACE

#define OID_CAR6K_802_11_AUTH_ALG 0xFF000020
#define OID_CAR6K_GET_PNP_POWER   0xFF000021
#define OID_CAR6K_RESUME_WLAN_STATE 0xFF000022
#define OID_CAR6K_FIRMWARE_VERSION	0xFF000023


// Changes for backward compatiblilty with WinCE 5.0
#ifndef OID_802_11_PMKID


#define OID_802_11_CAPABILITY 			0x0d010122
#define OID_802_11_PMKID 			0x0d010123

enum NDIS_802_11_STATUS_TYPE_WPA2 {
	Ndis802_11StatusType_PMKID_CandidateList = 2,
	Ndis802_11StatusType_MediaStreamMode,
	Ndis802_11StatusType_RadioState,
	//Ndis802_11StatusTypeMax
};

enum NDIS_802_11_AUTHENTICATION_MODE_WPA2 {
	Ndis802_11AuthModeWPA2=6,
		Ndis802_11AuthModeWPA2PSK,
};

typedef UCHAR NDIS_802_11_PMKID_VALUE[16];

typedef struct BSSID_INFO {
	NDIS_802_11_MAC_ADDRESS BSSID;
	NDIS_802_11_PMKID_VALUE PMKID;
} BSSID_INFO;

typedef struct NDIS_802_11_PMKID {
	ULONG Length;
	ULONG BSSIDInfoCount;
	BSSID_INFO BSSIDInfo[1];
} NDIS_802_11_PMKID;

typedef struct PMKID_CANDIDATE {
	NDIS_802_11_MAC_ADDRESS BSSID;
	ULONG Flags;
} PMKID_CANDIDATE;

#define NDIS_802_11_PMKID_CANDIDATE_PREAUTH_ENABLED 0x01

typedef struct NDIS_802_11_PMKID_CANDIDATE_LIST {
	ULONG Version;
	ULONG NumCandidates;
	PMKID_CANDIDATE CandidateList[1];
} NDIS_802_11_PMKID_CANDIDATE_LIST;

typedef struct NDIS_802_11_AUTHENTICATION_ENCRYPTION {
	NDIS_802_11_AUTHENTICATION_MODE AuthModeSupported;
	NDIS_802_11_ENCRYPTION_STATUS EncryptStatusSupported;
} NDIS_802_11_AUTHENTICATION_ENCRYPTION;

typedef struct NDIS_802_11_CAPABILITY {
	ULONG Length;
	ULONG Version;
	ULONG NoOfPMKIDs;
	ULONG NoOfAuthEncryptPairsSupported;
	NDIS_802_11_AUTHENTICATION_ENCRYPTION
	AuthenticationEncryptionSupported[1];
} NDIS_802_11_CAPABILITY;

#endif //OID_802_11_PMKID


#endif //UNDER_CE

#ifdef __cplusplus
}
#endif

#endif /* _ATHDRV_H_ */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -