]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blame - drivers/staging/ath6kl/include/common/testcmd.h
Fix common misspellings
[mirror_ubuntu-bionic-kernel.git] / drivers / staging / ath6kl / include / common / testcmd.h
CommitLineData
30295c89
VM
1//------------------------------------------------------------------------------
2// <copyright file="testcmd.h" company="Atheros">
3// Copyright (c) 2004-2010 Atheros Corporation. All rights reserved.
4//
5//
6// Permission to use, copy, modify, and/or distribute this software for any
7// purpose with or without fee is hereby granted, provided that the above
8// copyright notice and this permission notice appear in all copies.
9//
10// THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
11// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
12// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
13// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
14// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
15// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
16// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
17//
18//
19//------------------------------------------------------------------------------
20//==============================================================================
21// Author(s): ="Atheros"
22//==============================================================================
23
24#ifndef TESTCMD_H_
25#define TESTCMD_H_
26
27#ifdef __cplusplus
28extern "C" {
29#endif
30
31#ifdef AR6002_REV2
32#define TCMD_MAX_RATES 12
33#else
34#define TCMD_MAX_RATES 28
35#endif
36
37typedef enum {
38 ZEROES_PATTERN = 0,
39 ONES_PATTERN,
40 REPEATING_10,
41 PN7_PATTERN,
42 PN9_PATTERN,
43 PN15_PATTERN
44}TX_DATA_PATTERN;
45
25985edc
LDM
46/* Continuous tx
47 mode : TCMD_CONT_TX_OFF - Disabling continuous tx
30295c89
VM
48 TCMD_CONT_TX_SINE - Enable continuous unmodulated tx
49 TCMD_CONT_TX_FRAME- Enable continuous modulated tx
50 freq : Channel freq in Mhz. (e.g 2412 for channel 1 in 11 g)
51dataRate: 0 - 1 Mbps
52 1 - 2 Mbps
53 2 - 5.5 Mbps
54 3 - 11 Mbps
55 4 - 6 Mbps
56 5 - 9 Mbps
57 6 - 12 Mbps
58 7 - 18 Mbps
59 8 - 24 Mbps
60 9 - 36 Mbps
61 10 - 28 Mbps
62 11 - 54 Mbps
63 txPwr: Tx power in dBm[5 -11] for unmod Tx, [5-14] for mod Tx
64antenna: 1 - one antenna
65 2 - two antenna
66Note : Enable/disable continuous tx test cmd works only when target is awake.
67*/
68
69typedef enum {
70 TCMD_CONT_TX_OFF = 0,
71 TCMD_CONT_TX_SINE,
72 TCMD_CONT_TX_FRAME,
73 TCMD_CONT_TX_TX99,
74 TCMD_CONT_TX_TX100
75} TCMD_CONT_TX_MODE;
76
77typedef enum {
78 TCMD_WLAN_MODE_NOHT = 0,
79 TCMD_WLAN_MODE_HT20 = 1,
80 TCMD_WLAN_MODE_HT40PLUS = 2,
81 TCMD_WLAN_MODE_HT40MINUS = 3,
82} TCMD_WLAN_MODE;
83
84typedef PREPACK struct {
e1ce2a3a
JP
85 u32 testCmdId;
86 u32 mode;
87 u32 freq;
88 u32 dataRate;
f68057e6 89 s32 txPwr;
e1ce2a3a
JP
90 u32 antenna;
91 u32 enANI;
92 u32 scramblerOff;
93 u32 aifsn;
4853ac05
JP
94 u16 pktSz;
95 u16 txPattern;
e1ce2a3a
JP
96 u32 shortGuard;
97 u32 numPackets;
98 u32 wlanMode;
30295c89
VM
99} POSTPACK TCMD_CONT_TX;
100
101#define TCMD_TXPATTERN_ZERONE 0x1
102#define TCMD_TXPATTERN_ZERONE_DIS_SCRAMBLE 0x2
103
104/* Continuous Rx
105 act: TCMD_CONT_RX_PROMIS - promiscuous mode (accept all incoming frames)
106 TCMD_CONT_RX_FILTER - filter mode (accept only frames with dest
107 address equal specified
108 mac address (set via act =3)
109 TCMD_CONT_RX_REPORT off mode (disable cont rx mode and get the
110 report from the last cont
111 Rx test)
112
113 TCMD_CONT_RX_SETMAC - set MacAddr mode (sets the MAC address for the
114 target. This Overrides
115 the default MAC address.)
116
117*/
118typedef enum {
119 TCMD_CONT_RX_PROMIS =0,
120 TCMD_CONT_RX_FILTER,
121 TCMD_CONT_RX_REPORT,
122 TCMD_CONT_RX_SETMAC,
123 TCMD_CONT_RX_SET_ANT_SWITCH_TABLE
124} TCMD_CONT_RX_ACT;
125
126typedef PREPACK struct {
e1ce2a3a
JP
127 u32 testCmdId;
128 u32 act;
129 u32 enANI;
30295c89
VM
130 PREPACK union {
131 struct PREPACK TCMD_CONT_RX_PARA {
e1ce2a3a
JP
132 u32 freq;
133 u32 antenna;
134 u32 wlanMode;
30295c89
VM
135 } POSTPACK para;
136 struct PREPACK TCMD_CONT_RX_REPORT {
e1ce2a3a 137 u32 totalPkt;
f68057e6 138 s32 rssiInDBm;
e1ce2a3a
JP
139 u32 crcErrPkt;
140 u32 secErrPkt;
4853ac05
JP
141 u16 rateCnt[TCMD_MAX_RATES];
142 u16 rateCntShortGuard[TCMD_MAX_RATES];
30295c89
VM
143 } POSTPACK report;
144 struct PREPACK TCMD_CONT_RX_MAC {
d8cb316f 145 u8 addr[ATH_MAC_LEN];
30295c89
VM
146 } POSTPACK mac;
147 struct PREPACK TCMD_CONT_RX_ANT_SWITCH_TABLE {
e1ce2a3a
JP
148 u32 antswitch1;
149 u32 antswitch2;
30295c89
VM
150 }POSTPACK antswitchtable;
151 } POSTPACK u;
152} POSTPACK TCMD_CONT_RX;
153
154/* Force sleep/wake test cmd
155 mode: TCMD_PM_WAKEUP - Wakeup the target
156 TCMD_PM_SLEEP - Force the target to sleep.
157 */
158typedef enum {
159 TCMD_PM_WAKEUP = 1, /* be consistent with target */
160 TCMD_PM_SLEEP,
161 TCMD_PM_DEEPSLEEP
162} TCMD_PM_MODE;
163
164typedef PREPACK struct {
e1ce2a3a
JP
165 u32 testCmdId;
166 u32 mode;
30295c89
VM
167} POSTPACK TCMD_PM;
168
169typedef enum {
170 TCMD_CONT_TX_ID,
171 TCMD_CONT_RX_ID,
172 TCMD_PM_ID
173} TCMD_ID;
174
175typedef PREPACK union {
176 TCMD_CONT_TX contTx;
177 TCMD_CONT_RX contRx;
178 TCMD_PM pm;
179} POSTPACK TEST_CMD;
180
181#ifdef __cplusplus
182}
183#endif
184
185#endif /* TESTCMD_H_ */