1/*
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 *
15 * You should have received a copy of the GNU General Public License along
16 * with this program; if not, write to the Free Software Foundation, Inc.,
17 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
18 *
19 * File: card.h
20 *
21 * Purpose: Provide functions to setup NIC operation mode
22 *
23 * Author: Tevin Chen
24 *
25 * Date: May 21, 1996
26 *
27 */
28
29#ifndef __CARD_H__
30#define __CARD_H__
31#include "device.h"
32
33/* init card type */
34
35#define CB_MAX_CHANNEL_24G	14
36#define CB_MAX_CHANNEL_5G	42 /* add channel9(5045MHz), 41==>42 */
37#define CB_MAX_CHANNEL		(CB_MAX_CHANNEL_24G + CB_MAX_CHANNEL_5G)
38
39struct vnt_private;
40
41void vnt_set_channel(struct vnt_private *, u32);
42void vnt_set_rspinf(struct vnt_private *, u8);
43void vnt_update_ifs(struct vnt_private *);
44void vnt_update_top_rates(struct vnt_private *);
45int vnt_ofdm_min_rate(struct vnt_private *);
46void vnt_adjust_tsf(struct vnt_private *, u8, u64, u64);
47bool vnt_get_current_tsf(struct vnt_private *, u64 *);
48bool vnt_clear_current_tsf(struct vnt_private *);
49void vnt_reset_next_tbtt(struct vnt_private *, u16);
50void vnt_update_next_tbtt(struct vnt_private *, u64, u16);
51u64 vnt_get_next_tbtt(u64, u16);
52u64 vnt_get_tsf_offset(u8 byRxRate, u64 qwTSF1, u64 qwTSF2);
53int vnt_radio_power_off(struct vnt_private *);
54int vnt_radio_power_on(struct vnt_private *);
55u8 vnt_get_pkt_type(struct vnt_private *);
56void vnt_set_bss_mode(struct vnt_private *);
57
58#endif /* __CARD_H__ */
59