mirror of https://github.com/hak5/openwrt.git
145 lines
3.7 KiB
C
145 lines
3.7 KiB
C
/*
|
|
* Copyright (c) 2004-2005 Atheros Communications Inc.
|
|
* All rights reserved.
|
|
*
|
|
*
|
|
* $ATH_LICENSE_HOSTSDK0_C$
|
|
*
|
|
*/
|
|
|
|
#ifndef TESTCMD_H_
|
|
#define TESTCMD_H_
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
typedef enum {
|
|
ZEROES_PATTERN = 0,
|
|
ONES_PATTERN,
|
|
REPEATING_10,
|
|
PN7_PATTERN,
|
|
PN9_PATTERN,
|
|
PN15_PATTERN
|
|
}TX_DATA_PATTERN;
|
|
|
|
/* Continous tx
|
|
mode : TCMD_CONT_TX_OFF - Disabling continous tx
|
|
TCMD_CONT_TX_SINE - Enable continuous unmodulated tx
|
|
TCMD_CONT_TX_FRAME- Enable continuous modulated tx
|
|
freq : Channel freq in Mhz. (e.g 2412 for channel 1 in 11 g)
|
|
dataRate: 0 - 1 Mbps
|
|
1 - 2 Mbps
|
|
2 - 5.5 Mbps
|
|
3 - 11 Mbps
|
|
4 - 6 Mbps
|
|
5 - 9 Mbps
|
|
6 - 12 Mbps
|
|
7 - 18 Mbps
|
|
8 - 24 Mbps
|
|
9 - 36 Mbps
|
|
10 - 28 Mbps
|
|
11 - 54 Mbps
|
|
txPwr: Tx power in dBm[5 -11] for unmod Tx, [5-14] for mod Tx
|
|
antenna: 1 - one antenna
|
|
2 - two antenna
|
|
Note : Enable/disable continuous tx test cmd works only when target is awake.
|
|
*/
|
|
|
|
typedef enum {
|
|
TCMD_CONT_TX_OFF = 0,
|
|
TCMD_CONT_TX_SINE,
|
|
TCMD_CONT_TX_FRAME,
|
|
TCMD_CONT_TX_TX99,
|
|
TCMD_CONT_TX_TX100
|
|
} TCMD_CONT_TX_MODE;
|
|
|
|
typedef PREPACK struct {
|
|
A_UINT32 testCmdId;
|
|
A_UINT32 mode;
|
|
A_UINT32 freq;
|
|
A_UINT32 dataRate;
|
|
A_INT32 txPwr;
|
|
A_UINT32 antenna;
|
|
A_UINT32 enANI;
|
|
A_UINT32 scramblerOff;
|
|
A_UINT32 aifsn;
|
|
A_UINT16 pktSz;
|
|
A_UINT16 txPattern;
|
|
} POSTPACK TCMD_CONT_TX;
|
|
|
|
#define TCMD_TXPATTERN_ZERONE 0x1
|
|
#define TCMD_TXPATTERN_ZERONE_DIS_SCRAMBLE 0x2
|
|
|
|
/* Continuous Rx
|
|
act: TCMD_CONT_RX_PROMIS - promiscuous mode (accept all incoming frames)
|
|
TCMD_CONT_RX_FILTER - filter mode (accept only frames with dest
|
|
address equal specified
|
|
mac address (set via act =3)
|
|
TCMD_CONT_RX_REPORT off mode (disable cont rx mode and get the
|
|
report from the last cont
|
|
Rx test)
|
|
|
|
TCMD_CONT_RX_SETMAC - set MacAddr mode (sets the MAC address for the
|
|
target. This Overrides
|
|
the default MAC address.)
|
|
|
|
*/
|
|
typedef enum {
|
|
TCMD_CONT_RX_PROMIS =0,
|
|
TCMD_CONT_RX_FILTER,
|
|
TCMD_CONT_RX_REPORT,
|
|
TCMD_CONT_RX_SETMAC
|
|
} TCMD_CONT_RX_ACT;
|
|
|
|
typedef PREPACK struct {
|
|
A_UINT32 testCmdId;
|
|
A_UINT32 act;
|
|
A_UINT32 enANI;
|
|
PREPACK union {
|
|
struct PREPACK TCMD_CONT_RX_PARA {
|
|
A_UINT32 freq;
|
|
A_UINT32 antenna;
|
|
} POSTPACK para;
|
|
struct PREPACK TCMD_CONT_RX_REPORT {
|
|
A_UINT32 totalPkt;
|
|
A_INT32 rssiInDBm;
|
|
} POSTPACK report;
|
|
struct PREPACK TCMD_CONT_RX_MAC {
|
|
A_UCHAR addr[ATH_MAC_LEN];
|
|
} POSTPACK mac;
|
|
} POSTPACK u;
|
|
} POSTPACK TCMD_CONT_RX;
|
|
|
|
/* Force sleep/wake test cmd
|
|
mode: TCMD_PM_WAKEUP - Wakeup the target
|
|
TCMD_PM_SLEEP - Force the target to sleep.
|
|
*/
|
|
typedef enum {
|
|
TCMD_PM_WAKEUP = 1, /* be consistent with target */
|
|
TCMD_PM_SLEEP
|
|
} TCMD_PM_MODE;
|
|
|
|
typedef PREPACK struct {
|
|
A_UINT32 testCmdId;
|
|
A_UINT32 mode;
|
|
} POSTPACK TCMD_PM;
|
|
|
|
typedef enum{
|
|
TCMD_CONT_TX_ID,
|
|
TCMD_CONT_RX_ID,
|
|
TCMD_PM_ID
|
|
} TCMD_ID;
|
|
|
|
typedef PREPACK union {
|
|
TCMD_CONT_TX contTx;
|
|
TCMD_CONT_RX contRx;
|
|
TCMD_PM pm ;
|
|
} POSTPACK TEST_CMD;
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif /* TESTCMD_H_ */
|