blob: 764c09ccd42dffe574d7bb66ef860d6496b68293 [file] [log] [blame]
Forest Bond92b96792009-06-13 07:38:31 -04001/*
2 * Copyright (c) 1996, 2003 VIA Networking Technologies, Inc.
3 * All rights reserved.
4 *
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation; either version 2 of the License, or
8 * (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
Forest Bond92b96792009-06-13 07:38:31 -040015 *
16 * File: wcmd.h
17 *
18 * Purpose: Handles the management command interface functions
19 *
20 * Author: Lyndon Chen
21 *
22 * Date: May 8, 2002
23 *
24 */
25
26#ifndef __WCMD_H__
27#define __WCMD_H__
Andres More4fcf9492013-02-25 20:32:55 -050028
Malcolm Priestley4adc5a92014-06-25 21:19:57 +010029#include "device.h"
Forest Bond92b96792009-06-13 07:38:31 -040030
Malcolm Priestley80f0d092014-07-13 10:42:41 +010031/* Command code */
32enum vnt_cmd {
33 WLAN_CMD_INIT_MAC80211,
34 WLAN_CMD_SETPOWER,
35 WLAN_CMD_TBTT_WAKEUP,
36 WLAN_CMD_BECON_SEND,
Malcolm Priestleybab97c02014-07-20 15:33:29 +010037 WLAN_CMD_CHANGE_ANTENNA
Malcolm Priestley80f0d092014-07-13 10:42:41 +010038};
Forest Bond92b96792009-06-13 07:38:31 -040039
40#define CMD_Q_SIZE 32
41
Malcolm Priestleyad74e912014-07-13 10:42:42 +010042/* Command state */
43enum vnt_cmd_state {
44 WLAN_CMD_INIT_MAC80211_START,
45 WLAN_CMD_SETPOWER_START,
46 WLAN_CMD_TBTT_WAKEUP_START,
47 WLAN_CMD_BECON_SEND_START,
48 WLAN_CMD_CHANGE_ANTENNA_START,
Malcolm Priestleyad74e912014-07-13 10:42:42 +010049 WLAN_CMD_IDLE
50};
Forest Bond92b96792009-06-13 07:38:31 -040051
Malcolm Priestley98583c02012-12-10 22:01:23 +000052struct vnt_private;
Forest Bond92b96792009-06-13 07:38:31 -040053
Malcolm Priestley68cc1612014-07-13 10:42:51 +010054void vnt_reset_command_timer(struct vnt_private *);
Forest Bond92b96792009-06-13 07:38:31 -040055
Malcolm Priestley57981a62014-07-13 10:42:50 +010056int vnt_schedule_command(struct vnt_private *, enum vnt_cmd);
Andres More0cbd8d92010-05-06 20:34:29 -030057
Malcolm Priestley592365ae4a2014-07-13 10:42:49 +010058void vnt_run_command(struct work_struct *work);
Forest Bond92b96792009-06-13 07:38:31 -040059
Andres Moree7b07d12010-05-01 19:12:26 -030060#endif /* __WCMD_H__ */