xref: /linux/drivers/staging/vt6656/wcmd.h (revision b83deaa741558babf4b8d51d34f6637ccfff1b26)
1 /* SPDX-License-Identifier: GPL-2.0+ */
2 /*
3  * Copyright (c) 1996, 2003 VIA Networking Technologies, Inc.
4  * All rights reserved.
5  *
6  * Purpose: Handles the management command interface functions
7  *
8  * Author: Lyndon Chen
9  *
10  * Date: May 8, 2002
11  *
12  */
13 
14 #ifndef __WCMD_H__
15 #define __WCMD_H__
16 
17 #include "device.h"
18 
19 /* Command code */
20 enum vnt_cmd {
21 	WLAN_CMD_INIT_MAC80211,
22 	WLAN_CMD_SETPOWER,
23 	WLAN_CMD_TBTT_WAKEUP,
24 	WLAN_CMD_BECON_SEND,
25 	WLAN_CMD_CHANGE_ANTENNA
26 };
27 
28 #define CMD_Q_SIZE              32
29 
30 /* Command state */
31 enum vnt_cmd_state {
32 	WLAN_CMD_INIT_MAC80211_START,
33 	WLAN_CMD_SETPOWER_START,
34 	WLAN_CMD_TBTT_WAKEUP_START,
35 	WLAN_CMD_BECON_SEND_START,
36 	WLAN_CMD_CHANGE_ANTENNA_START,
37 	WLAN_CMD_IDLE
38 };
39 
40 struct vnt_private;
41 
42 void vnt_reset_command_timer(struct vnt_private *priv);
43 
44 int vnt_schedule_command(struct vnt_private *priv, enum vnt_cmd);
45 
46 void vnt_run_command(struct work_struct *work);
47 
48 #endif /* __WCMD_H__ */
49