xref: /openbmc/linux/drivers/staging/vt6656/wcmd.h (revision 9df8a970)
19df8a970SOjaswin Mujoo /* SPDX-License-Identifier: GPL-2.0+ */
292b96797SForest Bond /*
392b96797SForest Bond  * Copyright (c) 1996, 2003 VIA Networking Technologies, Inc.
492b96797SForest Bond  * All rights reserved.
592b96797SForest Bond  *
692b96797SForest Bond  * File: wcmd.h
792b96797SForest Bond  *
892b96797SForest Bond  * Purpose: Handles the management command interface functions
992b96797SForest Bond  *
1092b96797SForest Bond  * Author: Lyndon Chen
1192b96797SForest Bond  *
1292b96797SForest Bond  * Date: May 8, 2002
1392b96797SForest Bond  *
1492b96797SForest Bond  */
1592b96797SForest Bond 
1692b96797SForest Bond #ifndef __WCMD_H__
1792b96797SForest Bond #define __WCMD_H__
184fcf9498SAndres More 
194adc5a94SMalcolm Priestley #include "device.h"
2092b96797SForest Bond 
2180f0d092SMalcolm Priestley /* Command code */
2280f0d092SMalcolm Priestley enum vnt_cmd {
2330816f83SMalcolm Priestley 	WLAN_CMD_INIT_MAC80211,
2492b96797SForest Bond 	WLAN_CMD_SETPOWER,
2592b96797SForest Bond 	WLAN_CMD_TBTT_WAKEUP,
2692b96797SForest Bond 	WLAN_CMD_BECON_SEND,
27bab97c05SMalcolm Priestley 	WLAN_CMD_CHANGE_ANTENNA
2880f0d092SMalcolm Priestley };
2992b96797SForest Bond 
3092b96797SForest Bond #define CMD_Q_SIZE              32
3192b96797SForest Bond 
32ad74e91dSMalcolm Priestley /* Command state */
33ad74e91dSMalcolm Priestley enum vnt_cmd_state {
3430816f83SMalcolm Priestley 	WLAN_CMD_INIT_MAC80211_START,
3592b96797SForest Bond 	WLAN_CMD_SETPOWER_START,
3692b96797SForest Bond 	WLAN_CMD_TBTT_WAKEUP_START,
3792b96797SForest Bond 	WLAN_CMD_BECON_SEND_START,
3892b96797SForest Bond 	WLAN_CMD_CHANGE_ANTENNA_START,
3992b96797SForest Bond 	WLAN_CMD_IDLE
40ad74e91dSMalcolm Priestley };
4192b96797SForest Bond 
4298583c09SMalcolm Priestley struct vnt_private;
4392b96797SForest Bond 
440dad03cdSTobias Heineken void vnt_reset_command_timer(struct vnt_private *priv);
450cbd8d98SAndres More 
460dad03cdSTobias Heineken int vnt_schedule_command(struct vnt_private *priv, enum vnt_cmd);
4792b96797SForest Bond 
48592365aeSMalcolm Priestley void vnt_run_command(struct work_struct *work);
4992b96797SForest Bond 
50e7b07d1dSAndres More #endif /* __WCMD_H__ */
51